@burh/nuxt-core 1.0.409 → 1.0.411

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 (38) hide show
  1. package/assets/images/icons/icon5.svg +3 -3
  2. package/assets/images/icons/icon6.svg +3 -3
  3. package/assets/sass/burh-ds/_global.scss +324 -324
  4. package/assets/sass/burh-ds/atoms/_forms.scss +21 -19
  5. package/assets/sass/burh-ds/content/_interface-spa.scss +306 -306
  6. package/assets/sass/burh-ds/content/_main-content.scss +25 -25
  7. package/components/argon-core/BaseDropdown.vue +114 -114
  8. package/components/argon-core/LoadingPanel.vue +26 -26
  9. package/components/burh-ds/Cards/BaseCard.vue +194 -194
  10. package/components/burh-ds/Cards/FeatureBusinessCard.vue +74 -74
  11. package/components/burh-ds/Cards/PerformanceCard.vue +81 -81
  12. package/components/burh-ds/Curriculum/UserCurriculum/UserCvRightSide.vue +18 -2
  13. package/components/burh-ds/Curriculum/UserCurriculum/UserCvRightSideNotAuth.vue +379 -379
  14. package/components/burh-ds/Filters/BaseFilterContainer.vue +91 -91
  15. package/components/burh-ds/Headings/AppHeader.vue +222 -222
  16. package/components/burh-ds/Modals/AddCustomerModal.vue +5 -46
  17. package/components/burh-ds/Modals/AddMember.vue +5 -48
  18. package/components/burh-ds/Modals/AddRoleModal.vue +4 -47
  19. package/components/burh-ds/Modals/AppConfigModal.vue +326 -326
  20. package/components/burh-ds/Modals/NewUserModal.vue +87 -87
  21. package/components/burh-ds/Modals/PlanModal.vue +133 -172
  22. package/components/burh-ds/Modals/RequestModal.vue +206 -247
  23. package/components/burh-ds/Modals/SendTest.vue +7 -43
  24. package/components/burh-ds/Modals/SharedModal.vue +7 -50
  25. package/components/burh-ds/Modals/UniversalShareModal.vue +7 -50
  26. package/components/burh-ds/Modals/UniversalWhatsappModal.vue +5 -53
  27. package/components/burh-ds/Modals/WhatsappModal.vue +79 -127
  28. package/components/burh-ds/Skeleton/BaseCardUniversity.vue +79 -79
  29. package/components/burh-ds/Skeleton/BaseCardUser.vue +84 -84
  30. package/components/burh-ds/Skeleton/BaseCourseInfo.vue +71 -71
  31. package/components/burh-ds/Skeleton/Cards.vue +86 -86
  32. package/components/burh-ds/Skeleton/SkeletonAnimate.vue +96 -96
  33. package/components/burh-ds/Tabs/TesteTab.vue +108 -108
  34. package/components/layouts/burh-ds/navbar/PublicNavbar.vue +168 -168
  35. package/environment.js +221 -221
  36. package/nuxt.config.js +207 -207
  37. package/package.json +1 -1
  38. package/plugins/vClickOutside.js +4 -4
@@ -1,114 +1,114 @@
1
- <template>
2
- <component
3
- :is="tag"
4
- :class="[{ show: isOpen }, `drop${direction}`]"
5
- @click="toggleDropDown"
6
- v-click-outside="closeDropDown"
7
- >
8
- <slot name="title-container" :is-open="isOpen">
9
- <component
10
- :is="titleTag"
11
- class="btn-rotate"
12
- :class="[{'dropdown-toggle': hasToggle}, titleClasses]"
13
- :aria-expanded="isOpen"
14
- data-toggle="dropdown"
15
- >
16
- <slot name="title" :is-open="isOpen">
17
- <i :class="icon"></i> {{ title }}
18
- </slot>
19
- </component>
20
- </slot>
21
- <ul
22
- class="dropdown-menu"
23
- :class="[
24
- { show: isOpen },
25
- { 'dropdown-menu-right': menuOnRight },
26
- menuClasses
27
- ]"
28
- >
29
- <slot></slot>
30
- </ul>
31
- </component>
32
- </template>
33
- <script>
34
- export default {
35
- name: 'base-dropdown',
36
- props: {
37
- tag: {
38
- type: String,
39
- default: 'div',
40
- description: 'Dropdown html tag (e.g div, ul etc)'
41
- },
42
- titleTag: {
43
- type: String,
44
- default: 'button',
45
- description: 'Dropdown title (toggle) html tag'
46
- },
47
- title: {
48
- type: String,
49
- description: 'Dropdown title'
50
- },
51
- direction: {
52
- type: String,
53
- default: 'down', // up | down
54
- description: 'Dropdown menu direction (up|down)'
55
- },
56
- icon: {
57
- type: String,
58
- description: 'Dropdown icon'
59
- },
60
- titleClasses: {
61
- type: [String, Object, Array],
62
- description: 'Title css classes'
63
- },
64
- menuClasses: {
65
- type: [String, Object],
66
- description: 'Menu css classes'
67
- },
68
- menuOnRight: {
69
- type: Boolean,
70
- description: 'Whether menu should appear on the right'
71
- },
72
- hasToggle: {
73
- type: Boolean,
74
- description: 'Whether dropdown has arrow icon shown',
75
- default: true
76
- },
77
- isDropdownOpen: {
78
- type: Boolean,
79
- default: false
80
- }
81
- },
82
- data() {
83
- return {
84
- isOpen: false
85
- };
86
- },
87
- watch: {
88
- isOpen() {
89
- if (this.isOpen === false) {
90
- this.$emit('close');
91
- }
92
- },
93
- isDropdownOpen() {
94
- this.isOpen = this.isDropdownOpen;
95
- }
96
- },
97
- methods: {
98
- toggleDropDown() {
99
- this.isOpen = !this.isOpen;
100
- this.$emit('change', this.isOpen);
101
- },
102
- closeDropDown() {
103
- this.isOpen = false;
104
- this.$emit('change', false);
105
- }
106
- }
107
- };
108
- </script>
109
- <style lang="scss" scoped>
110
- .dropdown {
111
- cursor: pointer;
112
- user-select: none;
113
- }
114
- </style>
1
+ <template>
2
+ <component
3
+ :is="tag"
4
+ :class="[{ show: isOpen }, `drop${direction}`]"
5
+ @click="toggleDropDown"
6
+ v-click-outside="closeDropDown"
7
+ >
8
+ <slot name="title-container" :is-open="isOpen">
9
+ <component
10
+ :is="titleTag"
11
+ class="btn-rotate"
12
+ :class="[{'dropdown-toggle': hasToggle}, titleClasses]"
13
+ :aria-expanded="isOpen"
14
+ data-toggle="dropdown"
15
+ >
16
+ <slot name="title" :is-open="isOpen">
17
+ <i :class="icon"></i> {{ title }}
18
+ </slot>
19
+ </component>
20
+ </slot>
21
+ <ul
22
+ class="dropdown-menu"
23
+ :class="[
24
+ { show: isOpen },
25
+ { 'dropdown-menu-right': menuOnRight },
26
+ menuClasses
27
+ ]"
28
+ >
29
+ <slot></slot>
30
+ </ul>
31
+ </component>
32
+ </template>
33
+ <script>
34
+ export default {
35
+ name: 'base-dropdown',
36
+ props: {
37
+ tag: {
38
+ type: String,
39
+ default: 'div',
40
+ description: 'Dropdown html tag (e.g div, ul etc)'
41
+ },
42
+ titleTag: {
43
+ type: String,
44
+ default: 'button',
45
+ description: 'Dropdown title (toggle) html tag'
46
+ },
47
+ title: {
48
+ type: String,
49
+ description: 'Dropdown title'
50
+ },
51
+ direction: {
52
+ type: String,
53
+ default: 'down', // up | down
54
+ description: 'Dropdown menu direction (up|down)'
55
+ },
56
+ icon: {
57
+ type: String,
58
+ description: 'Dropdown icon'
59
+ },
60
+ titleClasses: {
61
+ type: [String, Object, Array],
62
+ description: 'Title css classes'
63
+ },
64
+ menuClasses: {
65
+ type: [String, Object],
66
+ description: 'Menu css classes'
67
+ },
68
+ menuOnRight: {
69
+ type: Boolean,
70
+ description: 'Whether menu should appear on the right'
71
+ },
72
+ hasToggle: {
73
+ type: Boolean,
74
+ description: 'Whether dropdown has arrow icon shown',
75
+ default: true
76
+ },
77
+ isDropdownOpen: {
78
+ type: Boolean,
79
+ default: false
80
+ }
81
+ },
82
+ data() {
83
+ return {
84
+ isOpen: false
85
+ };
86
+ },
87
+ watch: {
88
+ isOpen() {
89
+ if (this.isOpen === false) {
90
+ this.$emit('close');
91
+ }
92
+ },
93
+ isDropdownOpen() {
94
+ this.isOpen = this.isDropdownOpen;
95
+ }
96
+ },
97
+ methods: {
98
+ toggleDropDown() {
99
+ this.isOpen = !this.isOpen;
100
+ this.$emit('change', this.isOpen);
101
+ },
102
+ closeDropDown() {
103
+ this.isOpen = false;
104
+ this.$emit('change', false);
105
+ }
106
+ }
107
+ };
108
+ </script>
109
+ <style lang="scss" scoped>
110
+ .dropdown {
111
+ cursor: pointer;
112
+ user-select: none;
113
+ }
114
+ </style>
@@ -1,26 +1,26 @@
1
- <template>
2
- <div class="row" v-loading="true" id="loading"></div>
3
- </template>
4
- <script>
5
- import Vue from 'vue';
6
- import { Loading } from 'element-ui';
7
-
8
- Vue.use(Loading.directive);
9
- export default {};
10
- </script>
11
- <style>
12
- #loading {
13
- min-height: 200px;
14
- display: flex;
15
- align-items: center;
16
- }
17
-
18
- .el-loading-spinner .path {
19
- stroke: #66615b !important;
20
- }
21
-
22
- .el-loading-mask {
23
- z-index: 100!important;
24
- background: transparent !important;
25
- }
26
- </style>
1
+ <template>
2
+ <div class="row" v-loading="true" id="loading"></div>
3
+ </template>
4
+ <script>
5
+ import Vue from 'vue';
6
+ import { Loading } from 'element-ui';
7
+
8
+ Vue.use(Loading.directive);
9
+ export default {};
10
+ </script>
11
+ <style>
12
+ #loading {
13
+ min-height: 200px;
14
+ display: flex;
15
+ align-items: center;
16
+ }
17
+
18
+ .el-loading-spinner .path {
19
+ stroke: #66615b !important;
20
+ }
21
+
22
+ .el-loading-mask {
23
+ z-index: 100!important;
24
+ background: transparent !important;
25
+ }
26
+ </style>
@@ -1,194 +1,194 @@
1
- <template>
2
- <div class="recruitment__user__card">
3
- <div
4
- class="recruitment__user__card__header"
5
- :class="[
6
- { 'header__cover--shadow': cover },
7
- { 'header__cover--glass': glass }
8
- ]"
9
- >
10
- <div class="recruitment__user__card__header__actions">
11
- <div class="left">
12
- <slot name="header-left" />
13
- </div>
14
- <div class="right">
15
- <slot name="header-right" />
16
- </div>
17
- </div>
18
- <img
19
- v-if="cover !== null"
20
- :src="cover"
21
- class="user__cover"
22
- @error="cover = null"
23
- >
24
- </div>
25
-
26
- <div class="recruitment__user__card__content">
27
- <img :src="(avatar) ? avatar : getNameInitials(name, last_name)" :alt="name">
28
-
29
- <slot name="card-content" />
30
- </div>
31
-
32
- <div class="recruitment__user__card__footer">
33
- <slot name="card-footer" />
34
- </div>
35
- </div>
36
- </template>
37
-
38
- <script>
39
- export default {
40
- name: 'recruitment-user-card',
41
- props: {
42
- cover: {
43
- type: String,
44
- default: null
45
- },
46
- avatar: {
47
- type: String,
48
- default: null
49
- },
50
- name: {
51
- type: String,
52
- default: null
53
- },
54
- last_name: {
55
- type: String,
56
- default: null
57
- },
58
- glass: {
59
- type: Boolean,
60
- default: false
61
- }
62
- },
63
- methods: {
64
- getNameInitials(name, last_name) {
65
- const avatarUrl = process.env.routes.avatar;
66
-
67
- let userAvatarName;
68
-
69
- if (name && last_name) {
70
- userAvatarName = `${name.toUpperCase().charAt(0)}${last_name.toUpperCase().charAt(0)}`;
71
- } else if (name && last_name === null) {
72
- userAvatarName = name;
73
- } else {
74
- userAvatarName = 'BURH';
75
- }
76
-
77
- return avatarUrl.replace(':size', '124x124').replace(':initials', userAvatarName);
78
- },
79
- }
80
- };
81
- </script>
82
-
83
- <style lang="scss" scoped>
84
-
85
- .recruitment__user__card {
86
- background: #fff;
87
- box-shadow: 0 3px 20px rgba(0, 0, 0, 0.08);
88
- border-radius: 4px;
89
- overflow: hidden;
90
- cursor: pointer;
91
- transition: transform 0.25s;
92
- &:focus {
93
- outline: none;
94
- transform: translateY(-5px);
95
- }
96
- &:hover {
97
- transform: translateY(-5px);
98
- }
99
-
100
- img {
101
- user-select: none;
102
- }
103
-
104
- &__header {
105
- width: 100%;
106
- height: 70px;
107
- overflow: hidden;
108
- position: relative;
109
- background: #1F8CEB;
110
- &.header__cover--shadow::before {
111
- content: '';
112
- position: absolute;
113
- top: 0;
114
- left: 0;
115
- width: 100%;
116
- height: 100%;
117
- background: linear-gradient(180deg, rgba(0, 0, 0, 0.6), 80%, transparent);
118
- z-index: 1;
119
- }
120
- &.header__cover--glass {
121
- &::before {
122
- backdrop-filter: blur( 4px );
123
- -webkit-backdrop-filter: blur( 4px );
124
- background: rgba(0,0,0,0.2)!important;
125
- }
126
- }
127
- .user__cover {
128
- width: 100%;
129
- height: 100%;
130
- object-fit: cover;
131
- }
132
- &__actions {
133
- position: absolute;
134
- top: 0;
135
- left: 0;
136
- width: 100%;
137
- display: flex;
138
- align-items: center;
139
- justify-content: space-between;
140
- padding: 10px 15px;
141
- z-index: 2;
142
- .right {
143
- display: flex;
144
- align-items: center;
145
- flex-direction: row;
146
- button {
147
- color: #fff;
148
- border: 0;
149
- background: transparent;
150
- width: 32px;
151
- height: 32px;
152
- display: flex;
153
- align-items: center;
154
- justify-content: center;
155
- }
156
- }
157
- }
158
- }
159
- &__content {
160
- display: flex;
161
- flex-direction: column;
162
- align-items: center;
163
- justify-content: center;
164
- padding: 0 15px;
165
- img {
166
- width: 120px;
167
- height: 120px;
168
- border-radius: 100px;
169
- object-fit: contain;
170
- margin-top: -20px;
171
- z-index: 10;
172
- box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
173
- background: #fff;
174
- border: 4px solid #fff;
175
- }
176
- }
177
- &__footer {
178
- display: flex;
179
- align-items: center;
180
- justify-content: center;
181
- padding-bottom: 20px;
182
- span {
183
- font-size: 0.875rem;
184
- font-weight: 500;
185
- margin: 0 10px;
186
- color: #AEB6BE;
187
- &.new {
188
- color: #1F8CEB;
189
- }
190
- }
191
- }
192
- }
193
-
194
- </style>
1
+ <template>
2
+ <div class="recruitment__user__card">
3
+ <div
4
+ class="recruitment__user__card__header"
5
+ :class="[
6
+ { 'header__cover--shadow': cover },
7
+ { 'header__cover--glass': glass }
8
+ ]"
9
+ >
10
+ <div class="recruitment__user__card__header__actions">
11
+ <div class="left">
12
+ <slot name="header-left" />
13
+ </div>
14
+ <div class="right">
15
+ <slot name="header-right" />
16
+ </div>
17
+ </div>
18
+ <img
19
+ v-if="cover !== null"
20
+ :src="cover"
21
+ class="user__cover"
22
+ @error="cover = null"
23
+ >
24
+ </div>
25
+
26
+ <div class="recruitment__user__card__content">
27
+ <img :src="(avatar) ? avatar : getNameInitials(name, last_name)" :alt="name">
28
+
29
+ <slot name="card-content" />
30
+ </div>
31
+
32
+ <div class="recruitment__user__card__footer">
33
+ <slot name="card-footer" />
34
+ </div>
35
+ </div>
36
+ </template>
37
+
38
+ <script>
39
+ export default {
40
+ name: 'recruitment-user-card',
41
+ props: {
42
+ cover: {
43
+ type: String,
44
+ default: null
45
+ },
46
+ avatar: {
47
+ type: String,
48
+ default: null
49
+ },
50
+ name: {
51
+ type: String,
52
+ default: null
53
+ },
54
+ last_name: {
55
+ type: String,
56
+ default: null
57
+ },
58
+ glass: {
59
+ type: Boolean,
60
+ default: false
61
+ }
62
+ },
63
+ methods: {
64
+ getNameInitials(name, last_name) {
65
+ const avatarUrl = process.env.routes.avatar;
66
+
67
+ let userAvatarName;
68
+
69
+ if (name && last_name) {
70
+ userAvatarName = `${name.toUpperCase().charAt(0)}${last_name.toUpperCase().charAt(0)}`;
71
+ } else if (name && last_name === null) {
72
+ userAvatarName = name;
73
+ } else {
74
+ userAvatarName = 'BURH';
75
+ }
76
+
77
+ return avatarUrl.replace(':size', '124x124').replace(':initials', userAvatarName);
78
+ },
79
+ }
80
+ };
81
+ </script>
82
+
83
+ <style lang="scss" scoped>
84
+
85
+ .recruitment__user__card {
86
+ background: #fff;
87
+ box-shadow: 0 3px 20px rgba(0, 0, 0, 0.08);
88
+ border-radius: 4px;
89
+ overflow: hidden;
90
+ cursor: pointer;
91
+ transition: transform 0.25s;
92
+ &:focus {
93
+ outline: none;
94
+ transform: translateY(-5px);
95
+ }
96
+ &:hover {
97
+ transform: translateY(-5px);
98
+ }
99
+
100
+ img {
101
+ user-select: none;
102
+ }
103
+
104
+ &__header {
105
+ width: 100%;
106
+ height: 70px;
107
+ overflow: hidden;
108
+ position: relative;
109
+ background: #1F8CEB;
110
+ &.header__cover--shadow::before {
111
+ content: '';
112
+ position: absolute;
113
+ top: 0;
114
+ left: 0;
115
+ width: 100%;
116
+ height: 100%;
117
+ background: linear-gradient(180deg, rgba(0, 0, 0, 0.6), 80%, transparent);
118
+ z-index: 1;
119
+ }
120
+ &.header__cover--glass {
121
+ &::before {
122
+ backdrop-filter: blur( 4px );
123
+ -webkit-backdrop-filter: blur( 4px );
124
+ background: rgba(0,0,0,0.2)!important;
125
+ }
126
+ }
127
+ .user__cover {
128
+ width: 100%;
129
+ height: 100%;
130
+ object-fit: cover;
131
+ }
132
+ &__actions {
133
+ position: absolute;
134
+ top: 0;
135
+ left: 0;
136
+ width: 100%;
137
+ display: flex;
138
+ align-items: center;
139
+ justify-content: space-between;
140
+ padding: 10px 15px;
141
+ z-index: 2;
142
+ .right {
143
+ display: flex;
144
+ align-items: center;
145
+ flex-direction: row;
146
+ button {
147
+ color: #fff;
148
+ border: 0;
149
+ background: transparent;
150
+ width: 32px;
151
+ height: 32px;
152
+ display: flex;
153
+ align-items: center;
154
+ justify-content: center;
155
+ }
156
+ }
157
+ }
158
+ }
159
+ &__content {
160
+ display: flex;
161
+ flex-direction: column;
162
+ align-items: center;
163
+ justify-content: center;
164
+ padding: 0 15px;
165
+ img {
166
+ width: 120px;
167
+ height: 120px;
168
+ border-radius: 100px;
169
+ object-fit: contain;
170
+ margin-top: -20px;
171
+ z-index: 10;
172
+ box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
173
+ background: #fff;
174
+ border: 4px solid #fff;
175
+ }
176
+ }
177
+ &__footer {
178
+ display: flex;
179
+ align-items: center;
180
+ justify-content: center;
181
+ padding-bottom: 20px;
182
+ span {
183
+ font-size: 0.875rem;
184
+ font-weight: 500;
185
+ margin: 0 10px;
186
+ color: #AEB6BE;
187
+ &.new {
188
+ color: #1F8CEB;
189
+ }
190
+ }
191
+ }
192
+ }
193
+
194
+ </style>