@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.
Files changed (40) hide show
  1. package/assets/sass/burh-ds/atoms/_forms.scss +19 -0
  2. package/assets/sass/burh-ds/content/_main-content.scss +8 -0
  3. package/assets/sass/burh-ds/variables/_colors.scss +3 -1
  4. package/assets/sass/custom/_variables.scss +1 -0
  5. package/components/burh-ds/Avatar/AvatarLink.vue +23 -0
  6. package/components/burh-ds/Avatar/BusinessAvatar.vue +38 -0
  7. package/components/burh-ds/Button/ExportButton.vue +26 -0
  8. package/components/burh-ds/Button/SwitchStateButton.vue +165 -0
  9. package/components/burh-ds/Cards/PlanCard.vue +149 -109
  10. package/components/burh-ds/Cards/PurchaseCard.vue +0 -3
  11. package/components/burh-ds/Cards/PurchaseCardSimple.vue +0 -3
  12. package/components/burh-ds/Cards/RecentTestCard.vue +51 -0
  13. package/components/burh-ds/Cards/WelcomeCard.vue +53 -20
  14. package/components/burh-ds/Dropdown/AppLinkArea.vue +38 -25
  15. package/components/burh-ds/Dropdown/DropdownItem.vue +21 -0
  16. package/components/burh-ds/Dropdown/DropdownSection.vue +38 -0
  17. package/components/burh-ds/Dropdown/FaqVideoArea.vue +9 -4
  18. package/components/burh-ds/Dropdown/SignOutItem.vue +11 -0
  19. package/components/burh-ds/Dropdown/UserMenuDropdown.vue +58 -0
  20. package/components/burh-ds/Groups/ProductItem.vue +62 -0
  21. package/components/burh-ds/Groups/SimpleProductItem.vue +34 -30
  22. package/components/burh-ds/Headings/AppHeader.vue +63 -0
  23. package/components/burh-ds/Headings/StepHeader.vue +67 -0
  24. package/components/burh-ds/Inputs/BaseSwitch.vue +43 -0
  25. package/components/burh-ds/Inputs/BaseSwitchSecondary.vue +84 -0
  26. package/components/burh-ds/Lists/ListNavLinks.vue +36 -21
  27. package/components/burh-ds/Loadings/LoadingFullPage.vue +54 -0
  28. package/components/burh-ds/Modals/AppConfigModal.vue +171 -0
  29. package/components/burh-ds/Questions/Question.vue +110 -0
  30. package/components/burh-ds/Questions/QuestionAttach.vue +14 -0
  31. package/components/burh-ds/Questions/QuestionRadio.vue +97 -0
  32. package/components/burh-ds/Questions/QuestionRadioItem.vue +75 -0
  33. package/components/burh-ds/Questions/QuestionText.vue +36 -0
  34. package/components/burh-ds/Questions/index.js +14 -0
  35. package/components/layouts/burh-ds/footer/StoreFooter.vue +25 -25
  36. package/components/layouts/burh-ds/navbar/AppNavbar.vue +60 -0
  37. package/components/layouts/burh-ds/navbar/BusinessGlobalNavbar.vue +102 -125
  38. package/components/layouts/burh-ds/navbar/SimpleNavbar.vue +1 -2
  39. package/dictionary.js +5 -1
  40. package/package.json +2 -1
@@ -395,4 +395,23 @@ div {
395
395
  .el-popover {
396
396
  word-break: initial;
397
397
  text-align: left;
398
+ }
399
+
400
+ span.el-radio {
401
+ &__inner {
402
+ border: 1px solid $color-primary;
403
+ }
404
+
405
+ &__input.is-checked {
406
+ .el-radio__inner {
407
+ border-color: $color-primary;
408
+ background: $white;
409
+
410
+ &::after{
411
+ background-color: $color-primary;
412
+ width: 8px;
413
+ height: 8px;
414
+ }
415
+ }
416
+ }
398
417
  }
@@ -6,6 +6,14 @@
6
6
  padding-left: 0 !important;
7
7
  }
8
8
  }
9
+
10
+ @for $value-container from 1 through 20 {
11
+ &--#{$value-container * 5} {
12
+ @media (min-width: map-get($grid-breakpoints, "lg")) {
13
+ max-width: calc(100% - #{$value-container * 5vw});
14
+ }
15
+ }
16
+ }
9
17
  }
10
18
  .navbar-top {
11
19
  padding-right: 1rem !important;
@@ -165,7 +165,8 @@ $theme-colors: map-merge((
165
165
  "white": $white,
166
166
  "neutral": $white,
167
167
  "dark": $dark,
168
- "darker": $darker
168
+ "darker": $darker,
169
+ "test-online": $purple
169
170
  ), $theme-colors);
170
171
 
171
172
  $brand-colors: () !default;
@@ -189,6 +190,7 @@ $shape-colors: map-merge((
189
190
  "secondary": #24b47e,
190
191
  "neutral": #e9ecef,
191
192
  "blue-gray": #b2cbe1,
193
+ "purple-primary": #555abf,
192
194
 
193
195
  ), $shape-colors);
194
196
 
@@ -59,6 +59,7 @@ $yellow: #ffd600 !default;
59
59
  $green: #2dce89 !default;
60
60
  $teal: #11cdef !default;
61
61
  $cyan: #2bffc6 !default;
62
+ $violet: #7f00bb !default;
62
63
 
63
64
  $colors: () !default;
64
65
  $colors: map-merge((
@@ -0,0 +1,23 @@
1
+ <template>
2
+ <a href="#" class="">
3
+ <div class="media align-items-center">
4
+ <span class="avatar avatar-sm rounded-circle">
5
+ <img :src="logo">
6
+ </span>
7
+ <div class="media-body ml-2 d-none d-lg-block">
8
+ <span class="mb-0 text-sm font-weight-bold">
9
+ {{name}}
10
+ </span>
11
+ </div>
12
+ </div>
13
+ </a>
14
+ </template>
15
+ <script>
16
+ export default {
17
+ name: "avatar-link",
18
+ props: {
19
+ logo: String,
20
+ name: String
21
+ }
22
+ }
23
+ </script>
@@ -0,0 +1,38 @@
1
+ <template>
2
+ <a href="#" class="no-padding">
3
+ <div class="media align-items-center">
4
+ <span class="avatar avatar-sm rounded-circle">
5
+ <img :src="logo">
6
+ </span>
7
+ <div class="media-body ml-4 d-none d-lg-block br">
8
+ <span class="mb-0 text-sm font-weight-bold">
9
+ {{userName}}
10
+ </span>
11
+ <br>
12
+ <span class="mb-0 text-sm">
13
+ {{companyName}}
14
+ </span>
15
+ <i class="fa fa-angle-down ml-3" aria-hidden="true"></i>
16
+ </div>
17
+ </div>
18
+ </a>
19
+ </template>
20
+ <script>
21
+ export default {
22
+ name: "business-avatar",
23
+ props: {
24
+ logo: String,
25
+ userName: String,
26
+ companyName: String
27
+ }
28
+ }
29
+ </script>
30
+ <style lang="scss" scoped>
31
+ .br {
32
+ line-height: .8rem;
33
+ }
34
+
35
+ .no-padding {
36
+ padding: 0 !important;
37
+ }
38
+ </style>
@@ -0,0 +1,26 @@
1
+ <template>
2
+ <base-dropdown :hasToggle="false">
3
+ <base-button slot="title-container" outline type="primary" class="dropdown-toggle">
4
+ {{buttonName}}
5
+ </base-button>
6
+ <a v-for="(options, index) in exportOptions" :key="index" @click="$emit('exportar')" class="dropdown-item" href="#">
7
+ <i class="pr-2" :class="options.icon"></i>
8
+ {{options.option}}
9
+ </a>
10
+ </base-dropdown>
11
+ </template>
12
+ <script>
13
+ export default {
14
+ props:{
15
+ exportOptions:{
16
+ type: Array,
17
+ default: () =>
18
+ [{option: 'Exportar Excel', icon: 'fas fa-file-excel text-success'}, {option: 'Exportar PDF', icon: 'fas fa-file-pdf text-danger'}]
19
+ },
20
+ buttonName:{
21
+ type: String,
22
+ default: 'Exportar'
23
+ }
24
+ }
25
+ }
26
+ </script>
@@ -0,0 +1,165 @@
1
+ <template>
2
+ <!-- <div role="group" class="btn-group mx-auto">
3
+ <base-button type="primary" role="button" class="border-right" @click="$emit('anual')">Anual</base-button>
4
+ <base-button type="primary" role="button" class="border-left" @click="$emit('mensal')">Mensal</base-button>
5
+ </div> -->
6
+ <div class="toggle-button-cover">
7
+ <div class="button-cover">
8
+ <div class="button r" id="button-1">
9
+ <input type="checkbox" class="checkbox" @change="$emit('changeRecurrence')" :checked="monthRecurrence == 1">
10
+ <div class="knobs"></div>
11
+ <div class="layer"></div>
12
+ </div>
13
+ </div>
14
+ </div>
15
+ </template>
16
+ <script>
17
+ export default {
18
+ props: {
19
+ monthRecurrence: {
20
+ type: Number,
21
+ default: 1
22
+ }
23
+ },
24
+ return:{
25
+ default: ''
26
+ }
27
+ };
28
+ </script>
29
+ <style lang="scss">
30
+ // .btn-primary{
31
+ // &:hover{
32
+ // /* background-color: transparent; */
33
+ // border-color: transparent;
34
+ // }
35
+ // &:focus{
36
+ // background-color: #0d85ce;
37
+ // }
38
+ // }
39
+
40
+ *:focus
41
+ {
42
+ outline: none;
43
+ }
44
+ .toggle-button-cover
45
+ {
46
+ display: table-cell;
47
+ position: relative;
48
+ width: 200px;
49
+ height: 140px;
50
+ box-sizing: border-box;
51
+ }
52
+
53
+ .button-cover
54
+ {
55
+ height: 100px;
56
+ margin: 20px;
57
+ background-color: #fff;
58
+ box-shadow: 0 10px 20px -8px #c5d6d6;
59
+ border-radius: 4px;
60
+ }
61
+
62
+ .button-cover:before
63
+ {
64
+ counter-increment: button-counter;
65
+ content: counter(button-counter);
66
+ position: absolute;
67
+ right: 0;
68
+ bottom: 0;
69
+ color: #d7e3e3;
70
+ font-size: 12px;
71
+ line-height: 1;
72
+ padding: 5px;
73
+ }
74
+
75
+ .button-cover, .knobs, .layer
76
+ {
77
+ position: absolute;
78
+ top: 0;
79
+ right: 0;
80
+ bottom: 0;
81
+ left: 0;
82
+ }
83
+
84
+ .button
85
+ {
86
+ position: relative;
87
+ top: 50%;
88
+ width: 74px;
89
+ height: 36px;
90
+ margin: -20px auto 0 auto;
91
+ overflow: hidden;
92
+ }
93
+
94
+ .button.r, .button.r .layer
95
+ {
96
+ border-radius: 100px;
97
+ }
98
+
99
+ .button.b2
100
+ {
101
+ border-radius: 2px;
102
+ }
103
+
104
+ .checkbox
105
+ {
106
+ position: relative;
107
+ width: 100%;
108
+ height: 100%;
109
+ padding: 0;
110
+ margin: 0;
111
+ opacity: 0;
112
+ cursor: pointer;
113
+ z-index: 3;
114
+ }
115
+
116
+ .knobs
117
+ {
118
+ z-index: 2;
119
+ }
120
+
121
+ .layer
122
+ {
123
+ width: 100%;
124
+ background-color: #ebf7fc;
125
+ transition: 0.3s ease all;
126
+ z-index: 1;
127
+ }
128
+
129
+ /* Button 1 */
130
+ #button-1 .knobs:before
131
+ {
132
+ content: 'Anual';
133
+ position: absolute;
134
+ top: 4px;
135
+ left: 4px;
136
+ width: 20px;
137
+ height: 10px;
138
+ color: #fff;
139
+ font-size: 10px;
140
+ font-weight: bold;
141
+ text-align: center;
142
+ line-height: 1;
143
+ padding: 9px 4px;
144
+ background-color: #03A9F4;
145
+ border-radius: 50%;
146
+ transition: 0.3s cubic-bezier(0.18, 0.89, 0.35, 1.15) all;
147
+ }
148
+
149
+ #button-1 .checkbox:checked + .knobs:before
150
+ {
151
+ content: 'Mensal';
152
+ left: 42px;
153
+ background-color: #f44336;
154
+ }
155
+
156
+ #button-1 .checkbox:checked ~ .layer
157
+ {
158
+ background-color: #fcebeb;
159
+ }
160
+
161
+ #button-1 .knobs, #button-1 .knobs:before, #button-1 .layer
162
+ {
163
+ transition: 0.3s ease all;
164
+ }
165
+ </style>
@@ -1,99 +1,110 @@
1
1
  <template>
2
- <div class="card card--store mb-4" tabindex="0" @click="$emit('card-selected')">
3
- <div class="card-header bg-transparent text-center card-header--store">
4
- <h3 class="text-header">{{ name }}</h3>
5
- <div class="value-header display-2">{{ price | convertToReal }}</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" @click="$emit('card-benefits')">Beneficios</button>
11
- <div>
12
- <ul class="list-unstyled">
13
- <li v-for="(items, index) in features" :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.name }} </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 text-sm">{{ description }}</h6>
34
- <div class="h6 font-weight-bold text-sm">{{ subtitle }}</div>
35
- <div>
36
- <ul class="list-unstyled">
37
- <li v-for="(items, index) in features" :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.name }} </span>
44
- </div>
45
- </div>
46
- </li>
47
- </ul>
48
- </div>
49
- </div>
50
- </div>
51
- </div>
2
+ <div :class="'card card--store mb-4 ' + (isSelectedPlan ? 'selected' : '') " tabindex="0" v-on=" { click: () => $emit('card-selected', (isCurrentPlan && isSelectedPlan)) }">
3
+ <div class="card-header bg-transparent text-center card-header--store">
4
+ <span class="current-flag" v-if="isCurrentPlan">Atual</span>
5
+ <h3 class="text-header display-3">{{ name }}</h3>
6
+ <h3 v-if="!isCurrentPlan" class="display-3">{{ price | convertToReal }}</h3>
7
+
8
+ <div class="d-block d-sm-none text-center">
9
+ <collapse :animation-duration="200">
10
+ <collapse-item class="card--shadowless" name="1">
11
+ <button slot="title" class="btn btn-link" @click="$emit('card-benefits')">Beneficios</button>
12
+ <div>
13
+ <ul class="list-unstyled">
14
+ <li v-for="(item, index) in features" :key="index">
15
+ <div class="d-flex align-items-center">
16
+ <span>
17
+ <i class="fas fa-check"></i>
18
+ </span>
19
+ <div class="ml-4 small text-left">
20
+ <span> {{ item.item.name }} </span>
21
+ </div>
22
+ </div>
23
+ </li>
24
+ </ul>
25
+ </div>
26
+ </collapse-item>
27
+ </collapse>
28
+
29
+ </div>
30
+ </div>
31
+
32
+ <div class="card-body p-4 px-lg-4 d-none d-md-block">
33
+ <div>
34
+ <h6 class="card-text text-sm">{{ description }}</h6>
35
+ <div class="h6 font-weight-bold text-sm">{{ subtitle }}</div>
36
+ <div>
37
+ <ul class="list-unstyled">
38
+ <li v-for="(item, index) in features" :key="index">
39
+ <div class="d-flex align-items-center">
40
+ <span>
41
+ <i class="fas fa-check"></i>
42
+ </span>
43
+ <div class="ml-4 small">
44
+ <span> {{ item.item.name }} </span>
45
+ </div>
46
+ </div>
47
+ </li>
48
+ </ul>
49
+ </div>
50
+ </div>
51
+ </div>
52
+ </div>
52
53
  </template>
53
54
  <script>
54
55
  import Collapse from '@burh/nuxt-core/components/argon-core/Collapse/Collapse.vue';
55
56
  import CollapseItem from '@burh/nuxt-core/components/argon-core/Collapse/CollapseItem.vue';
56
57
  export default {
57
- name: 'store-card',
58
- components: {
59
- Collapse,
60
- CollapseItem
61
- },
62
- props:{
63
- name: {
64
- type: String,
65
- default: 'Premium'
66
- },
67
- price: {
68
- type: Number,
69
- default: 397
70
- },
71
- description: {
72
- type: String,
73
- default: 'Recursos inteligentes para não perder mais tempo no processo seletivo'
74
- },
75
- subtitle: {
76
- type: String,
77
- default: 'Tudo no gratuito e mais:'
78
- },
79
- features: {
80
- type: Array,
81
- default:()=>{
82
- return [ {id: 1, name:'Vagas Confidenciais'}, {id: 2, name:'Vagas Urgentes'}, {id: 3, name:'Filtros Avançados'}, {id: 4, name:'Processos Customizados'}, {id: 5, name:'Anotações nas vagas e nos candidatos'}];
83
- }
84
- }
85
- },
86
- filters: {
87
- convertToReal(value) {
88
- return 'R$ ' + value.toFixed(2).replace('.',',');
89
- }
90
- },
91
- data(){
92
- return{
93
- default: ''
94
- };
95
- }
96
- }
58
+ name: 'plan-card',
59
+ components: {
60
+ Collapse,
61
+ CollapseItem
62
+ },
63
+ props:{
64
+ isSelectedPlan:{
65
+ type: Boolean,
66
+ default: true
67
+ },
68
+ planid:{
69
+ type: Number,
70
+ },
71
+ name: {
72
+ type: String,
73
+ default: 'Premium'
74
+ },
75
+ price: {
76
+ type: Number,
77
+ default: 397
78
+ },
79
+ description: {
80
+ type: String,
81
+ default: 'Recursos inteligentes para não perder mais tempo no processo seletivo'
82
+ },
83
+ subtitle: {
84
+ type: String,
85
+ default: 'Tudo no gratuito e mais:'
86
+ },
87
+ features: {
88
+ type: Array,
89
+ default:()=>{
90
+ return [ { id: 1, name:'Vagas Confidenciais' }, { id: 2, name:'Vagas Urgentes' }, { id: 3, name:'Filtros Avançados' }, { id: 4, name:'Processos Customizados' }, { id: 5, name:'Anotações nas vagas e nos candidatos' }];
91
+ }
92
+ },
93
+ isCurrentPlan: {
94
+ type: Boolean | Number,
95
+ default: false
96
+ }
97
+ },
98
+ filters: {
99
+ convertToReal(value) {
100
+ return 'R$ ' + value.toFixed(2).replace('.', ',');
101
+ }
102
+ },
103
+ data(){
104
+ return{
105
+ };
106
+ },
107
+ };
97
108
  </script>
98
109
  <style lang="scss">
99
110
  @import "@burh/nuxt-core/assets/sass/burh-ds/variables/_colors.scss";
@@ -107,43 +118,72 @@ export default {
107
118
  }
108
119
 
109
120
  .card--store {
110
- border: 1px solid #e5e5e5;
121
+ min-height: 100%;
122
+
123
+ .current-flag {
124
+ color: $color-light--darken
125
+ }
126
+
127
+ &:hover {
128
+ cursor: pointer;
129
+ background-color: $color-mono-dark-10;
130
+ border-style: solid !important;
131
+ border-width: 2px !important;
132
+ border-color: $color-mono-dark-10 !important;
111
133
 
112
- &:focus{
113
- background-color: $color-info--ligthen;
134
+ .card-header {
135
+ border-bottom-color: $color-mono-dark-10;
136
+ }
137
+ .card--shadowless {
138
+ background-color: $color-mono-dark-10;
139
+
140
+ .card-header {
141
+ background-color: $color-mono-dark-10;
142
+ }
143
+ }
144
+
145
+ .fa-check::before {
146
+ color: $color-primary
147
+ }
148
+ }
149
+
150
+ &.selected {
151
+ outline: none;
152
+ background-color: $white;
114
153
  border-style: solid !important;
115
154
  border-width: 2px !important;
116
- border-color: $color-info--mid-dark !important;
117
-
118
- .card-header{
119
- border-bottom-color: $color-info--mid-dark;
155
+ border-color: $color-primary !important;
156
+
157
+ .card-header {
158
+ border-bottom-color: $color-primary;
120
159
  }
121
- .card--shadowless{
122
- background-color: $color-info--ligthen;
123
-
124
- .card-header{
125
- background-color: $color-info--ligthen;
160
+ .card--shadowless {
161
+ background-color: $white;
162
+
163
+ .card-header {
164
+ background-color: $white;
126
165
  }
127
166
  }
128
167
 
129
- .fa-check::before{
130
- color: #32A0D5;
131
- }
168
+ .fa-check::before {
169
+ color: $color-primary;
170
+ }
132
171
  }
133
172
 
134
173
  .card-header--store {
174
+ border: 0;
135
175
  @media screen and (min-width: 576px) {
136
176
  border: 0;
137
177
  &::after {
138
178
  content: '';
139
- width: 75%;
179
+ width: 85%;
140
180
  height: 1px;
141
- background-color: #679DBF;
181
+ background-color: $color-light;
142
182
  position: absolute;
143
183
  transform: translatex(-50%);
144
184
  }
145
185
  }
146
186
  }
147
- }
148
187
 
149
- </style>
188
+ }
189
+ </style>
@@ -56,7 +56,4 @@ export default {
56
56
  </script>
57
57
 
58
58
  <style lang="scss">
59
- .card--purchase-resume {
60
- border: 1px solid #e5e5e5;
61
- }
62
59
  </style>
@@ -56,7 +56,4 @@ export default {
56
56
  </script>
57
57
 
58
58
  <style lang="scss">
59
- .card--purchase-resume {
60
- border: 1px solid #e5e5e5;
61
- }
62
59
  </style>