@burh/nuxt-core 1.0.402 → 1.0.404

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 (453) hide show
  1. package/.ebignore +25 -25
  2. package/.elasticbeanstalk/config.yml +18 -18
  3. package/.eslintrc.json +39 -39
  4. package/.gitlab-ci.yml +16 -16
  5. package/.vscode/settings.json +10 -10
  6. package/CHANGELOG.md +2 -2
  7. package/README.md +22 -22
  8. package/app.html +8 -8
  9. package/assets/css/font-awesome/css/font-awesome.css +2337 -2337
  10. package/assets/css/font-awesome/css/font-awesome.min.css +4 -4
  11. package/assets/css/font-awesome/fonts/fontawesome-webfont.svg +2671 -2671
  12. package/assets/css/nucleo/css/nucleo-svg.css +134 -134
  13. package/assets/css/nucleo/css/nucleo.css +572 -572
  14. package/assets/css/nucleo/fonts/nucleo-icons.svg +312 -312
  15. package/assets/css/variables.css +2 -2
  16. package/assets/images/burhCv.svg +6 -6
  17. package/assets/images/facebookCv.svg +3 -3
  18. package/assets/images/icons/facebook.svg +14 -14
  19. package/assets/images/icons/historicCv.svg +3 -3
  20. package/assets/images/icons/icon3.svg +3 -3
  21. package/assets/images/icons/icon4.svg +3 -3
  22. package/assets/images/icons/linkedin.svg +14 -14
  23. package/assets/images/icons/notesCv.svg +3 -3
  24. package/assets/images/icons/twitter.svg +14 -14
  25. package/assets/images/icons/whatsapp.svg +14 -14
  26. package/assets/images/linkedinCv.svg +3 -3
  27. package/assets/images/webCv.svg +4 -4
  28. package/assets/sass/argon.scss +104 -104
  29. package/assets/sass/burh-ds/_components.scss +142 -142
  30. package/assets/sass/burh-ds/_functions.scss +29 -29
  31. package/assets/sass/burh-ds/_helpers.scss +18 -18
  32. package/assets/sass/burh-ds/_mixins.scss +17 -17
  33. package/assets/sass/burh-ds/_transitions.scss +12 -12
  34. package/assets/sass/burh-ds/_utilities.scss +31 -31
  35. package/assets/sass/burh-ds/_variables.scss +963 -963
  36. package/assets/sass/burh-ds/_vendors.scss +38 -38
  37. package/assets/sass/burh-ds/atoms/_badge.scss +5 -5
  38. package/assets/sass/burh-ds/atoms/_buttons.scss +222 -222
  39. package/assets/sass/burh-ds/atoms/_forms.scss +416 -416
  40. package/assets/sass/burh-ds/atoms/_tables.scss +31 -31
  41. package/assets/sass/burh-ds/atoms/_type.scss +147 -147
  42. package/assets/sass/burh-ds/mixins/_badge.scss +37 -37
  43. package/assets/sass/burh-ds/mixins/_breakpoints.scss +39 -39
  44. package/assets/sass/burh-ds/mixins/_grid-framework.scss +66 -66
  45. package/assets/sass/burh-ds/mixins/_grid.scss +51 -51
  46. package/assets/sass/burh-ds/molecules/_box.scss +282 -282
  47. package/assets/sass/burh-ds/molecules/_breadcrumb.scss +8 -8
  48. package/assets/sass/burh-ds/molecules/_modal.scss +175 -175
  49. package/assets/sass/burh-ds/molecules/_navbar.scss +262 -262
  50. package/assets/sass/burh-ds/molecules/_notifications.scss +1 -1
  51. package/assets/sass/burh-ds/molecules/_steps-profile.scss +67 -67
  52. package/assets/sass/burh-ds/molecules/_testimonial.scss +53 -53
  53. package/assets/sass/burh-ds/organisms/_banner.scss +51 -51
  54. package/assets/sass/burh-ds/organisms/_cards.scss +228 -228
  55. package/assets/sass/burh-ds/organisms/_carousel.scss +113 -113
  56. package/assets/sass/burh-ds/organisms/_footer.scss +115 -115
  57. package/assets/sass/burh-ds/organisms/_profile-bar.scss +130 -130
  58. package/assets/sass/burh-ds/organisms/_search.scss +17 -17
  59. package/assets/sass/burh-ds/organisms/_subheader.scss +773 -773
  60. package/assets/sass/burh-ds/organisms/_tabs-setting.scss +123 -123
  61. package/assets/sass/burh-ds/organisms/banners/_banner.scss +62 -62
  62. package/assets/sass/burh-ds/organisms/cards/_featured-company.scss +17 -17
  63. package/assets/sass/burh-ds/organisms/cards/_opportunity.scss +16 -16
  64. package/assets/sass/burh-ds/pages/_error.scss +124 -124
  65. package/assets/sass/burh-ds/pages/_jobs.scss +424 -424
  66. package/assets/sass/burh-ds/pages/_testes.scss +350 -350
  67. package/assets/sass/burh-ds/variables/_colors.scss +350 -350
  68. package/assets/sass/burh-ds/variables/_global_settings.scss +39 -39
  69. package/assets/sass/core/alerts/_alert-dismissible.scss +48 -48
  70. package/assets/sass/core/alerts/_alert-notify.scss +47 -47
  71. package/assets/sass/core/alerts/_alert.scss +49 -49
  72. package/assets/sass/core/avatars/_avatar-group.scss +22 -22
  73. package/assets/sass/core/avatars/_avatar.scss +59 -59
  74. package/assets/sass/core/badges/_badge-circle.scss +29 -29
  75. package/assets/sass/core/badges/_badge-dot.scss +42 -42
  76. package/assets/sass/core/badges/_badge-floating.scss +18 -18
  77. package/assets/sass/core/badges/_badge.scss +67 -67
  78. package/assets/sass/core/breadcrumbs/_breadcrumb.scss +42 -42
  79. package/assets/sass/core/buttons/_button-brand.scss +12 -12
  80. package/assets/sass/core/buttons/_button-group.scss +79 -79
  81. package/assets/sass/core/buttons/_button-icon.scss +92 -92
  82. package/assets/sass/core/buttons/_button.scss +90 -90
  83. package/assets/sass/core/cards/_card-animations.scss +10 -10
  84. package/assets/sass/core/cards/_card-blockquote.scss +17 -17
  85. package/assets/sass/core/cards/_card-money.scss +27 -27
  86. package/assets/sass/core/cards/_card-pricing.scss +26 -26
  87. package/assets/sass/core/cards/_card-profile.scss +49 -49
  88. package/assets/sass/core/cards/_card-stats.scss +16 -16
  89. package/assets/sass/core/cards/_card.scss +70 -70
  90. package/assets/sass/core/charts/_chart.scss +69 -69
  91. package/assets/sass/core/close/_close.scss +47 -47
  92. package/assets/sass/core/collapse/_accordion.scss +38 -38
  93. package/assets/sass/core/content/_main-content.scss +17 -17
  94. package/assets/sass/core/custom-forms/_custom-checkbox.scss +47 -47
  95. package/assets/sass/core/custom-forms/_custom-control.scss +58 -58
  96. package/assets/sass/core/custom-forms/_custom-form.scss +45 -45
  97. package/assets/sass/core/custom-forms/_custom-radio.scss +38 -38
  98. package/assets/sass/core/custom-forms/_custom-toggle.scss +122 -122
  99. package/assets/sass/core/dropdowns/_dropdown.scss +89 -89
  100. package/assets/sass/core/footers/_footer.scss +159 -159
  101. package/assets/sass/core/forms/_form-extend.scss +38 -38
  102. package/assets/sass/core/forms/_form-validation.scss +78 -78
  103. package/assets/sass/core/forms/_form.scss +125 -125
  104. package/assets/sass/core/forms/_input-group.scss +136 -136
  105. package/assets/sass/core/grid/_grid.scss +31 -31
  106. package/assets/sass/core/headers/_header.scss +7 -7
  107. package/assets/sass/core/icons/_icon-actions.scss +57 -57
  108. package/assets/sass/core/icons/_icon-shape.scss +48 -48
  109. package/assets/sass/core/icons/_icon.scss +88 -88
  110. package/assets/sass/core/list-groups/_list-check.scss +52 -52
  111. package/assets/sass/core/list-groups/_list-group.scss +46 -46
  112. package/assets/sass/core/maps/_map.scss +10 -10
  113. package/assets/sass/core/masks/_mask.scss +33 -33
  114. package/assets/sass/core/medias/_media-comment.scss +33 -33
  115. package/assets/sass/core/medias/_media.scss +3 -3
  116. package/assets/sass/core/mixins/_alert.scss +22 -22
  117. package/assets/sass/core/mixins/_background-variant.scss +30 -30
  118. package/assets/sass/core/mixins/_badge.scss +12 -12
  119. package/assets/sass/core/mixins/_buttons.scss +105 -105
  120. package/assets/sass/core/mixins/_custom-forms.scss +47 -47
  121. package/assets/sass/core/mixins/_forms.scss +127 -127
  122. package/assets/sass/core/mixins/_icon.scss +10 -10
  123. package/assets/sass/core/mixins/_modals.scss +25 -25
  124. package/assets/sass/core/mixins/_popover.scss +35 -35
  125. package/assets/sass/core/modals/_modal.scss +31 -31
  126. package/assets/sass/core/navbars/_navbar-collapse.scss +37 -37
  127. package/assets/sass/core/navbars/_navbar-dropdown.scss +121 -121
  128. package/assets/sass/core/navbars/_navbar-floating.scss +17 -17
  129. package/assets/sass/core/navbars/_navbar-search.scss +216 -216
  130. package/assets/sass/core/navbars/_navbar-top.scss +58 -58
  131. package/assets/sass/core/navbars/_navbar-vertical.scss +507 -507
  132. package/assets/sass/core/navbars/_navbar.scss +368 -368
  133. package/assets/sass/core/navs/_nav-pills.scss +66 -66
  134. package/assets/sass/core/navs/_nav.scss +33 -33
  135. package/assets/sass/core/paginations/_pagination.scss +49 -49
  136. package/assets/sass/core/popovers/_popover.scss +21 -21
  137. package/assets/sass/core/progresses/_progress.scss +89 -89
  138. package/assets/sass/core/reboot/_reboot.scss +13 -13
  139. package/assets/sass/core/sections/_nucleo-icons.scss +117 -117
  140. package/assets/sass/core/separators/_separator.scss +54 -54
  141. package/assets/sass/core/shortcuts/_shortcut.scss +30 -30
  142. package/assets/sass/core/tables/_table-actions.scss +25 -25
  143. package/assets/sass/core/tables/_table-sortable.scss +28 -28
  144. package/assets/sass/core/tables/_table.scss +153 -153
  145. package/assets/sass/core/timeline/_timeline.scss +182 -182
  146. package/assets/sass/core/type/_article.scss +22 -22
  147. package/assets/sass/core/type/_display.scss +14 -14
  148. package/assets/sass/core/type/_heading.scss +65 -65
  149. package/assets/sass/core/type/_type.scss +27 -27
  150. package/assets/sass/core/utilities/_backgrounds.scss +51 -51
  151. package/assets/sass/core/utilities/_blurable.scss +37 -37
  152. package/assets/sass/core/utilities/_floating.scss +64 -64
  153. package/assets/sass/core/utilities/_helper.scss +18 -18
  154. package/assets/sass/core/utilities/_image.scss +9 -9
  155. package/assets/sass/core/utilities/_opacity.scss +35 -35
  156. package/assets/sass/core/utilities/_overflow.scss +11 -11
  157. package/assets/sass/core/utilities/_position.scss +25 -25
  158. package/assets/sass/core/utilities/_shadows.scss +28 -28
  159. package/assets/sass/core/utilities/_sizing.scss +7 -7
  160. package/assets/sass/core/utilities/_spacing.scss +107 -107
  161. package/assets/sass/core/utilities/_text.scss +49 -49
  162. package/assets/sass/core/utilities/_transform.scss +13 -13
  163. package/assets/sass/core/vendors/_bootstrap-datepicker.scss +279 -279
  164. package/assets/sass/core/vendors/_bootstrap-tagsinput.scss +67 -67
  165. package/assets/sass/core/vendors/_chartjs.scss +22 -22
  166. package/assets/sass/core/vendors/_dropzone.scss +74 -74
  167. package/assets/sass/core/vendors/_element-checkbox.scss +26 -26
  168. package/assets/sass/core/vendors/_element-tables.scss +61 -61
  169. package/assets/sass/core/vendors/_flatpickr.scss +72 -72
  170. package/assets/sass/core/vendors/_fullcalendar.scss +256 -256
  171. package/assets/sass/core/vendors/_headroom.scss +25 -25
  172. package/assets/sass/core/vendors/_lavalamp.scss +157 -157
  173. package/assets/sass/core/vendors/_nouislider.scss +413 -413
  174. package/assets/sass/core/vendors/_quill.scss +280 -280
  175. package/assets/sass/core/vendors/_scrollbar.scss +949 -949
  176. package/assets/sass/core/vendors/_select.scss +70 -70
  177. package/assets/sass/core/vendors/_sweet-alert-2.scss +22 -22
  178. package/assets/sass/core/vendors/_tags.scss +32 -32
  179. package/assets/sass/core/vendors/_vectormap.scss +16 -16
  180. package/assets/sass/custom/_components.scss +142 -142
  181. package/assets/sass/custom/_functions.scss +29 -29
  182. package/assets/sass/custom/_mixins.scss +15 -15
  183. package/assets/sass/custom/_transitions.scss +12 -12
  184. package/assets/sass/custom/_utilities.scss +31 -31
  185. package/assets/sass/custom/_variables.scss +1077 -1077
  186. package/assets/sass/custom/_vendors.scss +38 -38
  187. package/components/argon-core/Badge.vue +56 -56
  188. package/components/argon-core/Banners/Banner.vue +28 -28
  189. package/components/argon-core/Banners/BannerItem.vue +13 -13
  190. package/components/argon-core/BaseAlert.vue +74 -74
  191. package/components/argon-core/BaseButton.vue +81 -81
  192. package/components/argon-core/BaseHeader.vue +21 -21
  193. package/components/argon-core/BasePagination.vue +172 -172
  194. package/components/argon-core/BaseProgress.vue +121 -121
  195. package/components/argon-core/BaseSlider.vue +96 -96
  196. package/components/argon-core/BaseSwitch.vue +46 -46
  197. package/components/argon-core/BaseTable.vue +70 -70
  198. package/components/argon-core/Breadcrumb/Breadcrumb.vue +26 -26
  199. package/components/argon-core/Breadcrumb/BreadcrumbItem.vue +16 -16
  200. package/components/argon-core/Breadcrumb/RouteBreadcrumb.vue +45 -45
  201. package/components/argon-core/ButtonCheckbox.vue +39 -39
  202. package/components/argon-core/ButtonRadioGroup.vue +47 -47
  203. package/components/argon-core/Cards/Card.vue +71 -71
  204. package/components/argon-core/Cards/OpportunityCard.vue +39 -39
  205. package/components/argon-core/Cards/StatsCard.vue +49 -49
  206. package/components/argon-core/Charts/BarChart.js +30 -30
  207. package/components/argon-core/Charts/DoughnutChart.js +30 -30
  208. package/components/argon-core/Charts/LineChart.js +30 -30
  209. package/components/argon-core/Charts/PieChart.js +30 -30
  210. package/components/argon-core/Charts/config.js +491 -491
  211. package/components/argon-core/Charts/globalOptionsMixin.js +7 -7
  212. package/components/argon-core/Charts/optionHelpers.js +10 -10
  213. package/components/argon-core/CloseButton.vue +35 -35
  214. package/components/argon-core/Collapse/Collapse.vue +84 -84
  215. package/components/argon-core/Collapse/CollapseItem.vue +91 -91
  216. package/components/argon-core/Feed/Comment.vue +50 -50
  217. package/components/argon-core/Inputs/BaseCheckbox.vue +79 -79
  218. package/components/argon-core/Inputs/BaseInput.vue +242 -242
  219. package/components/argon-core/Inputs/BaseRadio.vue +68 -68
  220. package/components/argon-core/Inputs/DropzoneFileUpload.vue +138 -138
  221. package/components/argon-core/Inputs/DropzoneVideoUpload.vue +138 -138
  222. package/components/argon-core/Inputs/FileInput.vue +54 -54
  223. package/components/argon-core/Inputs/HtmlEditor.vue +105 -105
  224. package/components/argon-core/Inputs/IconCheckbox.vue +45 -45
  225. package/components/argon-core/Inputs/TagsInput.vue +100 -100
  226. package/components/argon-core/Navbar/BaseNav.vue +122 -122
  227. package/components/argon-core/Navbar/NavbarProgress.vue +19 -19
  228. package/components/argon-core/Navbar/NavbarProgressItem.vue +17 -17
  229. package/components/argon-core/Navbar/NavbarToggleButton.vue +21 -21
  230. package/components/argon-core/NavbarToggleButton.vue +29 -29
  231. package/components/argon-core/NotificationPlugin/Notification.vue +207 -207
  232. package/components/argon-core/NotificationPlugin/Notifications.vue +55 -55
  233. package/components/argon-core/NotificationPlugin/index.js +66 -66
  234. package/components/argon-core/SidebarPlugin/SideBar.vue +119 -119
  235. package/components/argon-core/SidebarPlugin/SidebarItem.vue +184 -184
  236. package/components/argon-core/SidebarPlugin/index.js +79 -79
  237. package/components/argon-core/Tabs/Tab.vue +33 -33
  238. package/components/argon-core/Tabs/Tabs.vue +170 -170
  239. package/components/argon-core/Timeline/TimeLine.vue +17 -17
  240. package/components/argon-core/Timeline/TimeLineItem.vue +30 -30
  241. package/components/argon-core/WorldMap/AsyncWorldMap.vue +28 -28
  242. package/components/argon-core/WorldMap/WorldMap.vue +127 -127
  243. package/components/argon-core/index.js +82 -82
  244. package/components/burh-ds/Avatar/AvatarLink.vue +40 -40
  245. package/components/burh-ds/Avatar/BusinessAvatar.vue +38 -38
  246. package/components/burh-ds/Banners/BannerHero.vue +23 -23
  247. package/components/burh-ds/Banners/BannerItem.vue +14 -14
  248. package/components/burh-ds/Button/ExportButton.vue +20 -20
  249. package/components/burh-ds/Button/SwitchStateButton.vue +165 -165
  250. package/components/burh-ds/Capsules/SearchSlug.vue +860 -860
  251. package/components/burh-ds/Capsules/UserProfile.vue +1938 -1938
  252. package/components/burh-ds/Cards/CampaignCard.vue +40 -40
  253. package/components/burh-ds/Cards/CompanyCard.vue +39 -39
  254. package/components/burh-ds/Cards/CourseInfoCard.vue +72 -72
  255. package/components/burh-ds/Cards/FunctionalityItem.vue +35 -35
  256. package/components/burh-ds/Cards/OpportunityCard.vue +115 -115
  257. package/components/burh-ds/Cards/PerformanceItem.vue +65 -65
  258. package/components/burh-ds/Cards/PlanCard.vue +192 -192
  259. package/components/burh-ds/Cards/ProductCard.vue +142 -142
  260. package/components/burh-ds/Cards/PurchaseCard.vue +58 -58
  261. package/components/burh-ds/Cards/PurchaseCardSimple.vue +58 -58
  262. package/components/burh-ds/Cards/TestCard.vue +192 -189
  263. package/components/burh-ds/Cards/TrainingCard.vue +151 -151
  264. package/components/burh-ds/Cards/WelcomeCard.vue +106 -106
  265. package/components/burh-ds/Carousel/FeedCarousel.vue +47 -47
  266. package/components/burh-ds/Carousel/ImageCarousel.vue +111 -111
  267. package/components/burh-ds/Collapse/DefaultCollapse.vue +70 -70
  268. package/components/burh-ds/Crop/Crop.vue +121 -121
  269. package/components/burh-ds/Curriculum/UserCurriculum/UpgradePlan.vue +74 -74
  270. package/components/burh-ds/Curriculum/UserCurriculum/UserCvLeftSide.vue +516 -516
  271. package/components/burh-ds/Curriculum/UserCurriculum/UserCvMiddle.vue +512 -512
  272. package/components/burh-ds/Curriculum/UserCurriculum/UserCvRightSide.vue +819 -819
  273. package/components/burh-ds/Curriculum/UserCurriculum/index.vue +249 -249
  274. package/components/burh-ds/Dropdown/AppLinkArea.vue +132 -132
  275. package/components/burh-ds/Dropdown/DropdownItem.vue +26 -26
  276. package/components/burh-ds/Dropdown/DropdownSection.vue +38 -38
  277. package/components/burh-ds/Dropdown/FaqVideoArea.vue +88 -88
  278. package/components/burh-ds/Dropdown/SignOutItem.vue +11 -11
  279. package/components/burh-ds/Dropdown/UserMenuDropdown.vue +63 -63
  280. package/components/burh-ds/FeaturedCompanies/FeaturedCompanies.vue +11 -11
  281. package/components/burh-ds/FeaturedCompanies/FeaturedCompanyCard.vue +16 -16
  282. package/components/burh-ds/Filters/FilterWithDropdown.vue +248 -248
  283. package/components/burh-ds/Groups/ProductItem.vue +62 -62
  284. package/components/burh-ds/Groups/SimpleProductItem.vue +129 -129
  285. package/components/burh-ds/Headings/BaseHeader.vue +24 -24
  286. package/components/burh-ds/Headings/Profile.vue +66 -66
  287. package/components/burh-ds/Headings/ProfileHeader.vue +105 -105
  288. package/components/burh-ds/Headings/SettingsHeader.vue +48 -48
  289. package/components/burh-ds/Headings/StepHeader.vue +122 -122
  290. package/components/burh-ds/Input/AutoComplete.vue +136 -136
  291. package/components/burh-ds/Inputs/BaseCheckbox.vue +73 -73
  292. package/components/burh-ds/Inputs/BaseSwitch.vue +43 -43
  293. package/components/burh-ds/Inputs/BaseSwitchSecondary.vue +84 -84
  294. package/components/burh-ds/Inputs/DoubleInputWithIcon.vue +100 -100
  295. package/components/burh-ds/Inputs/HtmlEditor.vue +64 -64
  296. package/components/burh-ds/InterfaceSpa/InterfaceSpa.vue +83 -83
  297. package/components/burh-ds/Jobs/JobDetail.vue +432 -432
  298. package/components/burh-ds/Jobs/JobDetailDesign.vue +151 -151
  299. package/components/burh-ds/Jobs/JobDetailEmpty.vue +27 -27
  300. package/components/burh-ds/Labels/LabelContextIcon.vue +58 -58
  301. package/components/burh-ds/Link/DefaultLink.vue +30 -30
  302. package/components/burh-ds/Lists/ListAvatarCheckbox.vue +157 -157
  303. package/components/burh-ds/Lists/ListNavLinks.vue +54 -54
  304. package/components/burh-ds/Lists/VagasSimple.vue +404 -404
  305. package/components/burh-ds/Loadings/Basics.vue +80 -80
  306. package/components/burh-ds/Loadings/InfiniteLoading.vue +21 -21
  307. package/components/burh-ds/Loadings/LoadingFullPage.vue +68 -68
  308. package/components/burh-ds/Loadings/NewLoading.vue +119 -119
  309. package/components/burh-ds/Loads/LoadingBar.vue +83 -83
  310. package/components/burh-ds/Modals/AddCustomerModal.vue +527 -527
  311. package/components/burh-ds/Modals/AddMember.vue +301 -301
  312. package/components/burh-ds/Modals/AddRoleModal.vue +185 -185
  313. package/components/burh-ds/Modals/AppConfigModal.vue +390 -390
  314. package/components/burh-ds/Modals/CourseMessageModal.vue +66 -66
  315. package/components/burh-ds/Modals/DocsModal.vue +111 -111
  316. package/components/burh-ds/Modals/DropzoneModal.vue +123 -123
  317. package/components/burh-ds/Modals/InviteToRole.vue +272 -271
  318. package/components/burh-ds/Modals/MobileModal.vue +65 -65
  319. package/components/burh-ds/Modals/ModalTests.vue +167 -167
  320. package/components/burh-ds/Modals/PlanModal.vue +286 -286
  321. package/components/burh-ds/Modals/RequestModal.vue +281 -281
  322. package/components/burh-ds/Modals/SendCourse.vue +369 -369
  323. package/components/burh-ds/Modals/SendDisc.vue +230 -230
  324. package/components/burh-ds/Modals/SendTest.vue +349 -349
  325. package/components/burh-ds/Modals/ShareModal.vue +228 -228
  326. package/components/burh-ds/Modals/SmsModal.vue +327 -327
  327. package/components/burh-ds/Modals/SubModal.vue +41 -41
  328. package/components/burh-ds/Modals/UniversityAccessModal.vue +133 -133
  329. package/components/burh-ds/Modals/VideoModal.vue +80 -80
  330. package/components/burh-ds/Modals/WhatsappModal.vue +143 -143
  331. package/components/burh-ds/Navbar/BaseNav.vue +132 -132
  332. package/components/burh-ds/Notifications/Notification.vue +215 -215
  333. package/components/burh-ds/Notifications/Notifications.vue +55 -55
  334. package/components/burh-ds/Notifications/index.js +66 -66
  335. package/components/burh-ds/Pagination/NamedPagination.vue +176 -176
  336. package/components/burh-ds/Questions/Question.vue +183 -183
  337. package/components/burh-ds/Questions/QuestionAttach.vue +13 -13
  338. package/components/burh-ds/Questions/QuestionRadio.vue +122 -122
  339. package/components/burh-ds/Questions/QuestionRadioItem.vue +83 -83
  340. package/components/burh-ds/Questions/QuestionText.vue +66 -66
  341. package/components/burh-ds/Questions/index.js +13 -13
  342. package/components/burh-ds/Skeleton/BaseCardTest.vue +51 -51
  343. package/components/burh-ds/Skeleton/BaseTraining.vue +29 -29
  344. package/components/burh-ds/Skeleton/BufferFolderSkeleton.vue +41 -41
  345. package/components/burh-ds/Skeleton/BufferUserSkeleton.vue +142 -142
  346. package/components/burh-ds/Skeleton/Home.vue +100 -100
  347. package/components/burh-ds/Tabs/Tab.vue +56 -56
  348. package/components/burh-ds/Tabs/Tabs.vue +188 -188
  349. package/components/burh-ds/Video/MuxVideo.vue +39 -39
  350. package/components/burh-ds/index.js +20 -20
  351. package/components/layouts/argon/Content.vue +17 -17
  352. package/components/layouts/argon/navbar/BlankLayout.vue +61 -61
  353. package/components/layouts/argon/navbar/DashboardNavbar.vue +307 -307
  354. package/components/layouts/burh-ds/ContentFooter.vue +45 -45
  355. package/components/layouts/burh-ds/footer/FooterSimple.vue +20 -20
  356. package/components/layouts/burh-ds/footer/ProductsFooter.vue +330 -330
  357. package/components/layouts/burh-ds/footer/StatusFooter.vue +105 -105
  358. package/components/layouts/burh-ds/footer/StoreFooter.vue +54 -54
  359. package/components/layouts/burh-ds/navbar/AppNavbar.vue +97 -97
  360. package/components/layouts/burh-ds/navbar/BusinessGlobalNavbar.vue +435 -435
  361. package/components/layouts/burh-ds/navbar/CarreirasNavbar.vue +363 -363
  362. package/components/layouts/burh-ds/navbar/CompanyGlobalNavbar.vue +244 -244
  363. package/components/layouts/burh-ds/navbar/EmpresasNavbar.vue +374 -374
  364. package/components/layouts/burh-ds/navbar/EmpresasNavbarLogado.vue +388 -388
  365. package/components/layouts/burh-ds/navbar/GlobalNavbar.vue +535 -535
  366. package/components/layouts/burh-ds/navbar/MobileNavbar.vue +431 -431
  367. package/components/layouts/burh-ds/navbar/SimpleNavbar.vue +129 -129
  368. package/components/layouts/burh-ds/navbar/UserNavbar.vue +346 -346
  369. package/components/layouts/burh-ds/navbar/UserNavbarLogin.vue +253 -253
  370. package/components/pages/UserProfile/EditProfileForm.vue +142 -142
  371. package/components/pages/UserProfile/UserCard.vue +61 -61
  372. package/components/pages/dashboard/ActivityFeed.vue +102 -102
  373. package/components/pages/dashboard/LightTable.vue +194 -194
  374. package/components/pages/dashboard/PageVisitsTable.vue +107 -107
  375. package/components/pages/dashboard/ProgressTrackList.vue +82 -82
  376. package/components/pages/dashboard/SocialTrafficTable.vue +101 -101
  377. package/components/pages/dashboard/TaskList.vue +56 -56
  378. package/components/pages/dashboard/UserList.vue +72 -72
  379. package/components/pages/forms/BrowserDefaultsValidation.vue +106 -106
  380. package/components/pages/forms/CustomStylesValidation.vue +130 -130
  381. package/components/pages/forms/ServerSideValidation.vue +128 -128
  382. package/components/pages/register/FailedRegistration.vue +29 -29
  383. package/components/pages/register/SuccessfulRegistration.vue +29 -29
  384. package/components/tables/PaginatedTables/clientPaginationMixin.js +86 -86
  385. package/components/tables/RegularTables/CheckboxColoredTable.vue +112 -112
  386. package/components/tables/RegularTables/CheckboxTable.vue +101 -101
  387. package/components/tables/RegularTables/DarkTable.vue +114 -114
  388. package/components/tables/RegularTables/InlineActionsTable.vue +94 -94
  389. package/components/tables/RegularTables/LightTable.vue +117 -117
  390. package/components/tables/RegularTables/StripedTable.vue +94 -94
  391. package/components/tables/RegularTables/TranslucentTable.vue +114 -114
  392. package/components/tables/projects.js +75 -75
  393. package/components/tables/users.js +42 -42
  394. package/components/tables/users2.js +474 -474
  395. package/components/widgets/CalendarWidget.vue +119 -119
  396. package/components/widgets/CreditCard.vue +66 -66
  397. package/components/widgets/MembersCard.vue +99 -99
  398. package/components/widgets/PaypalCard.vue +45 -45
  399. package/components/widgets/ProgressTrackList.vue +76 -76
  400. package/components/widgets/StatsCards.vue +70 -70
  401. package/components/widgets/TaskList.vue +67 -67
  402. package/components/widgets/TimelineCard.vue +66 -66
  403. package/components/widgets/VectorMapCard.vue +139 -139
  404. package/components/widgets/VisaCard.vue +51 -51
  405. package/data/ListVideoLinksMock.json +21 -21
  406. package/dictionary.js +38 -38
  407. package/environment.env.md +34 -34
  408. package/eslint.config.json +12 -12
  409. package/layouts/AuthLayout.vue +191 -191
  410. package/layouts/BurhCarreirasLayout.vue +63 -63
  411. package/layouts/BurhEmpresasLayout.vue +64 -64
  412. package/layouts/BurhNoHeader.vue +63 -63
  413. package/layouts/BurhPublicLayout.vue +67 -67
  414. package/layouts/BurhUserLayout.vue +231 -231
  415. package/layouts/DashboardLayout.vue +226 -226
  416. package/layouts/error.vue +119 -119
  417. package/metadata.json +30 -30
  418. package/middleware/README.md +8 -8
  419. package/middleware/decodeUrl.js +8 -8
  420. package/middleware/maintenance.js +9 -9
  421. package/middleware/new-account.js +6 -6
  422. package/middleware/redirect.js +13 -13
  423. package/middleware/user-agent-error.js +28 -28
  424. package/package.json +114 -114
  425. package/plugins/README.md +7 -7
  426. package/plugins/analytics/ga.js +28 -28
  427. package/plugins/auth/auth.js +210 -210
  428. package/plugins/axios.js +32 -32
  429. package/plugins/carousel/owl-carousel.js +3 -3
  430. package/plugins/crop/crop.js +4 -4
  431. package/plugins/dashboard/dashboard-plugin.js +29 -29
  432. package/plugins/dashboard/directives/click-outside.js +15 -15
  433. package/plugins/dashboard/eventBus.js +1 -1
  434. package/plugins/dashboard/globalComponents.js +41 -41
  435. package/plugins/dashboard/globalDirectives.js +7 -7
  436. package/plugins/dom/loader.js +76 -76
  437. package/plugins/localstorage.js +20 -20
  438. package/plugins/location/location.js +41 -41
  439. package/plugins/pagination/pagination.js +3 -3
  440. package/plugins/qrcode/qrcode.js +4 -4
  441. package/plugins/router.js +8 -8
  442. package/plugins/social-media/fb-sdk.js +44 -44
  443. package/plugins/social-media/share-link-facebook.js +32 -32
  444. package/plugins/social-media/share-link-linkedin.js +30 -30
  445. package/plugins/social-media/share-link-twitter.js +30 -30
  446. package/plugins/social-media/share-link-whatsapp.js +31 -31
  447. package/polyfills.js +96 -96
  448. package/util/common.js +189 -189
  449. package/util/cookie.js +28 -28
  450. package/util/dom.js +63 -63
  451. package/util/getPrefixes.js +12 -12
  452. package/util/request.js +46 -46
  453. package/util/throttle.js +15 -15
@@ -1,512 +1,512 @@
1
- <template>
2
- <div class="bg-white content-middle">
3
- <!-- FERRAMENTAS -->
4
- <div class="tools mt-3">
5
- <button
6
- @click="
7
- isLocked && tool.event !== 'share'
8
- ? $emit('open-contact')
9
- : $emit(tool.event)
10
- "
11
- class="ml-3 burh-color"
12
- :class="{
13
- 'disabled-button': isLocked && tool.event !== 'share'
14
- }"
15
- v-for="(tool, index) in tools"
16
- :key="index"
17
- >
18
- <i
19
- v-show="isLocked && tool.event !== 'share'"
20
- class="fas fa-lock mr-1"
21
- ></i>
22
- {{ tool.name }}
23
- </button>
24
- </div>
25
- <!-- SOBRE -->
26
- <div class="about content-block mt-5 ml-3 mr-3">
27
- <h5 class="font-weight-bold">Sobre</h5>
28
- <p
29
- v-if="userData && userData.user_complementary_information && userData.user_complementary_information.about || false"
30
- id="USER_ABOUT"
31
- class="mb-0"
32
- :class="
33
- !wordIsLesserThan(
34
- userData.user_complementary_information.about
35
- ) && 'readmore'
36
- "
37
- v-html="
38
- highlightText(
39
- search,
40
- userData.user_complementary_information.about
41
- )
42
- "
43
- ></p>
44
- <a
45
- href="#"
46
- aria-label="expandir conteudo"
47
- v-if="
48
- userData && userData.user_complementary_information && userData.user_complementary_information.about &&
49
- !wordIsLesserThan(
50
- userData.user_complementary_information.about
51
- ) || false
52
- "
53
- @click.prevent.stop="toggleReadMore($event, 'USER_ABOUT')"
54
- >Ler mais</a
55
- >
56
-
57
- <p v-if="userData && userData.user_complementary_information && userData.user_complementary_information.about || false" class="">
58
- Nenhuma informação adicionada
59
- </p>
60
- </div>
61
- <!-- CONTATO -->
62
- <h5 class="font-weight-bold mt-4 ml-3">Contatos</h5>
63
- <div class="ml-3 info-text">
64
- <span v-if="userData.email != null">Email: {{userData.email}}</span><br>
65
- <span v-if="userData.user_contact && userData.user_contact.cellphone != null && userData.user_contact.cellphone.length > 1 ">Celular: {{phoneMask(userData.user_contact.cellphone)}}</span><br>
66
- <span v-if="userData.user_contact && userData.user_contact.phone != null && userData.user_contact.phone.length > 1">Telefone: {{phoneMask(userData.user_contact.phone)}}</span>
67
- </div>
68
-
69
- <!-- EDUCAÇÃO -->
70
- <h5 class="font-weight-bold mt-4 ml-3">Educação</h5>
71
- <div
72
- class=" ml-3"
73
- v-show="userData.user_education.length > 0"
74
- v-for="(edu, index) in userData.user_education"
75
- :key="index"
76
- >
77
- <p
78
- class="sub-title"
79
- v-html="highlightText(search, edu.formation)"
80
- ></p>
81
- <p class="info-text">{{ edu.institution }}</p>
82
- <span class="info-text">
83
- {{ edu.start_month }}/{{ edu.start_year }} -
84
- {{ treatEndDate(edu.end_month, edu.end_year) }}
85
- {{ getTime(false, edu) }}
86
- {{
87
- edu.user_education_period
88
- ? '-' + edu.user_education_period.name
89
- : ''
90
- }} </span
91
- ><br />
92
- <span
93
- class="info-text"
94
- >
95
- {{edu.formation_level_id | formationLevel}}
96
- </span>
97
- </div>
98
-
99
- <!-- EXPERIÊNCIAS -->
100
- <h5 class="font-weight-bold mt-4 ml-3">Experiência</h5>
101
- <div
102
- class="no-info ml-3"
103
- v-show="userData.user_experience.length === 0"
104
- >
105
- <p>
106
- Nenhuma informação adicionada
107
- </p>
108
- </div>
109
- <div
110
- v-show="userData.user_experience.length > 0"
111
- class="experience ml-3 mr-3"
112
- v-for="(exp, index) in userData.user_experience"
113
- :key="`experience-${index}`"
114
- >
115
- <p
116
- class="sub-title"
117
- v-html="highlightText(search, exp.job_title)"
118
- ></p>
119
- <p
120
- class="info-text"
121
- v-html="
122
- highlightText(search, `${exp.company}, ${exp.location}`)
123
- "
124
- ></p>
125
- <span class="info-text">
126
- {{ exp.start_month }}/{{ exp.start_year }} -
127
- {{ treatEndDate(exp.end_month, exp.end_year) }}
128
- {{ getTime(true, exp) }}
129
- </span>
130
-
131
- <p
132
- :id="`USER_EXPERIENCE-${index}`"
133
- class="description mt-4 mb-0"
134
- :class="!wordIsLesserThan(exp.description) && 'readmore'"
135
- v-html="highlightText(search, exp.description)"
136
- ></p>
137
-
138
- <a
139
- href="#"
140
- aria-label="expandir conteudo"
141
- v-show="!wordIsLesserThan(exp.description)"
142
- @click.prevent.stop="
143
- toggleReadMore($event, `USER_EXPERIENCE-${index}`)
144
- "
145
- >Ler mais</a
146
- ><br /><br />
147
- </div>
148
-
149
- <!-- CURSOS -->
150
- <h5 class="font-weight-bold mt-1 ml-3">Cursos Complementares</h5>
151
- <div class="no-info ml-3" v-show="userData.user_course.length === 0">
152
- <p>
153
- Nenhuma informação adicionada
154
- </p>
155
- </div>
156
- <div
157
- v-show="userData.user_course.length > 0"
158
- class="courses ml-3"
159
- v-for="(cou, index) in userData.user_course"
160
- :key="`course-${index}`"
161
- >
162
- <p
163
- class="sub-title"
164
- v-html="highlightText(search, cou.institution)"
165
- ></p>
166
- <p
167
- class="info-text mb-3"
168
- v-html="
169
- highlightText(
170
- search,
171
- `${cou.name} - ${cou.end_year || ''} ${getTime(
172
- false,
173
- cou
174
- )}`
175
- )
176
- "
177
- >
178
- {{ cou.name }} - {{ cou.end_year }}
179
- {{ getTime(false, cou) }}
180
- </p>
181
- </div>
182
- </div>
183
- </template>
184
-
185
- <script>
186
- import getPrefixes from '~/util/getPrefixes.js';
187
- import { mask } from 'vue-the-mask';
188
-
189
- export default {
190
- name: 'user-cv-middle',
191
- directives: { mask },
192
- props: {
193
- userData: Object,
194
- tools: {
195
- type: Array,
196
- default: () => []
197
- },
198
- search: {
199
- type: String,
200
- default: ''
201
- }
202
- },
203
- filters: {
204
- formationLevel(id) {
205
- const typeFormation = {
206
- 1: 'Ensino Médio',
207
- 2: 'Ensino Técnico',
208
- 3: 'Graduação',
209
- 4: 'Pós-Graduação',
210
- 5: 'Mestrado',
211
- 6: 'Doutorado'
212
- };
213
-
214
- return typeFormation[id] || '-';
215
- }
216
- },
217
- data() {
218
- return {
219
- isLocked: !this.companyHasProduct(
220
- this.$store.state.loja && this.$store.state.loja.showableProducts && this.$store.state.loja.showableProducts['INTERACAO_USUARIO'] || false
221
- )
222
- };
223
- },
224
- mounted() {
225
- this.userData.user_experience = this.filterByDate(
226
- this.userData.user_experience,
227
- 'old'
228
- );
229
- this.userData.user_education = this.filterByDate(
230
- this.userData.user_education,
231
- 'old'
232
- );
233
- this.userData.user_course = this.filterByDate(
234
- this.userData.user_course,
235
- 'old'
236
- );
237
- },
238
- watch: {
239
- userData() {
240
- this.userData.user_experience = this.filterByDate(
241
- this.userData.user_experience,
242
- 'old'
243
- );
244
- this.userData.user_education = this.filterByDate(
245
- this.userData.user_education,
246
- 'old'
247
- );
248
- this.userData.user_course = this.filterByDate(
249
- this.userData.user_course,
250
- 'old'
251
- );
252
- }
253
- },
254
- methods: {
255
- phoneMask(v) {
256
-
257
- let r = v.replace(/\D/g, '');
258
- r = r.replace(/^0/, '');
259
-
260
- if (r.length > 11) {
261
- r = r.replace(/^(\d\d)(\d{5})(\d{4}).*/, '($1) $2-$3');
262
- } else if (r.length > 7) {
263
- r = r.replace(/^(\d\d)(\d{5})(\d{0,4}).*/, '($1) $2-$3');
264
- } else if (r.length > 2) {
265
- r = r.replace(/^(\d\d)(\d{0,5})/, '($1) $2');
266
- } else if (v.trim() !== '') {
267
- r = r.replace(/^(\d*)/, '($1');
268
- }
269
- return r;
270
- },
271
- highlightText(search, text) {
272
- if (search.length < 2) return text;
273
-
274
- const regex = new RegExp(search.toLowerCase(), 'gmi');
275
- return String(text || '').replace(
276
- regex,
277
- `<span class="search-highlight">${search}</span>`
278
- );
279
- },
280
- filterByDate(data, by = 'new') {
281
- let sortedArray = data.sort((a, b) => {
282
- a = [
283
- a.start_month,
284
- a.start_year,
285
- a.end_month || 12,
286
- a.end_year || 9999
287
- ];
288
-
289
- b = [
290
- b.start_month,
291
- b.start_year,
292
- b.end_month || 12,
293
- b.end_year || 9999
294
- ];
295
-
296
- // Primeiro filtro -> chaves: 0 e 1 -> Filtro por data de inicio
297
- // Segundo filtro -> chaves: 2 e 3 -> Filtro por data de termino (subir não concluídos para primeiros)
298
-
299
- let byStart;
300
- let byEnd;
301
-
302
- switch (by) {
303
- case 'old':
304
- byStart =
305
- new Date(a[1], a[0], 1).getTime() -
306
- new Date(b[1], b[0], 1).getTime();
307
- byEnd =
308
- new Date(b[3], b[2], 1).getTime() -
309
- new Date(a[3], a[2], 1).getTime();
310
- break;
311
-
312
- default:
313
- byStart =
314
- new Date(b[1], b[0], 1).getTime() -
315
- new Date(a[1], a[0], 1).getTime();
316
- byEnd =
317
- new Date(b[3], b[2], 1).getTime() -
318
- new Date(a[3], a[2], 1).getTime();
319
- break;
320
- }
321
-
322
- return byEnd - byStart;
323
- });
324
-
325
- return sortedArray;
326
- },
327
- toggleReadMore(event, id) {
328
- const element = document.getElementById(id);
329
- element.classList.toggle('readmore');
330
- event.target.innerText == 'Ler mais'
331
- ? (event.target.innerText = 'Esconder')
332
- : (event.target.innerText = 'Ler mais');
333
- },
334
- getTime(
335
- isExperience,
336
- { start_year = null, end_year = null, start_month, end_month },
337
- textHappening = 'Cursando'
338
- ) {
339
- const isHappening = !end_month && !end_year;
340
-
341
- if (isHappening) {
342
- return isExperience === true ? 'Atualmente' : textHappening;
343
- }
344
-
345
- const dateInitial = this.$moment(
346
- ['1', start_month.toString(), start_year.toString()],
347
- 'DD/MM/YYYY'
348
- );
349
- const dateDone = this.$moment(
350
- ['1', end_month.toString(), end_year.toString()],
351
- 'DD/MM/YYYY'
352
- );
353
- const diffDuration = this.$moment.duration(
354
- dateDone.diff(dateInitial)
355
- );
356
- const years = diffDuration.years();
357
- const months = diffDuration.months();
358
-
359
- if (years) {
360
- return years > 1 ? `(${years} anos)` : `(${years} ano)`;
361
- }
362
-
363
- return months > 1
364
- ? `(${months} meses)`
365
- : months == 1
366
- ? `(${months} mês)`
367
- : '';
368
- },
369
- languageLevel(level) {
370
- switch (parseInt(level)) {
371
- case 1:
372
- return 'Iniciante';
373
- case 2:
374
- return 'Elementar';
375
- case 3:
376
- return 'Pré-intermediário';
377
- case 4:
378
- return 'Intermediário';
379
- case 5:
380
- return 'Intermediário Superior';
381
- case 6:
382
- return 'Avançado';
383
- case 7:
384
- return 'Fluente';
385
- default:
386
- return '';
387
- }
388
- },
389
- treatPhone(phone) {
390
- if (phone) {
391
- if (phone == '0' || phone.length < 9 || !phone) {
392
- return 'não cadastrado';
393
- }
394
- }
395
-
396
- return phone;
397
- },
398
- treatCellphone(cellphone) {
399
- if (cellphone) {
400
- if (cellphone == '0' || cellphone.length < 11 || !cellphone) {
401
- return 'não cadastrado';
402
- }
403
- }
404
-
405
- return cellphone;
406
- },
407
- handleGetPrefixes(name = '') {
408
- return getPrefixes(name);
409
- },
410
- treatEndDate(end_month, end_year) {
411
- if (end_month && end_year) {
412
- return `${end_month}/${end_year}`;
413
- }
414
- return '';
415
- },
416
- wordIsLesserThan(word, value = 300) {
417
- return word && word.length < value;
418
- }
419
- }
420
- };
421
- </script>
422
-
423
- <style lang="scss" scoped>
424
- @import '@burh/nuxt-core/assets/sass/burh-ds/variables/_colors.scss';
425
-
426
- /deep/ .search-highlight {
427
- background: rgb(255, 252, 61);
428
- color: #000;
429
- }
430
-
431
- .content-middle {
432
- width: 50%;
433
- border-right: 1px solid #ececec5c;
434
- word-break: break-word !important;
435
- }
436
-
437
- .readmore {
438
- overflow: hidden;
439
- text-overflow: ellipsis;
440
- display: -webkit-box;
441
- -webkit-line-clamp: 3;
442
- -webkit-box-orient: vertical;
443
- }
444
-
445
- .tools {
446
- flex-wrap: wrap;
447
- button {
448
- width: 117px;
449
- height: 29px;
450
- border: none;
451
- margin-top: 15px;
452
-
453
- background: #5865F2;
454
- border-radius: 16px;
455
- color: #fff;
456
-
457
- font-size: 12px;
458
- font-weight: 600;
459
- outline: 0;
460
- }
461
- }
462
-
463
- .education {
464
- margin-top: 15px;
465
- }
466
-
467
- .experience {
468
- .description {
469
- font-size: 14px;
470
- color: #62778c;
471
- }
472
-
473
- a {
474
- margin-bottom: 1px;
475
- }
476
- }
477
-
478
- .sub-title {
479
- margin-bottom: 1px;
480
-
481
- font-weight: 600;
482
- font-size: 14px;
483
- line-height: 21px;
484
- color: #62778c;
485
- text-transform: uppercase;
486
- }
487
-
488
- .info-text {
489
- margin-bottom: 1px;
490
-
491
- font-size: 14px;
492
- color: #8da2b5;
493
- }
494
-
495
- .content-block {
496
- p {
497
- font-size: 14px;
498
- color: #62778c;
499
- }
500
- }
501
-
502
- .no-info {
503
- p {
504
- font-size: 0.875rem;
505
- color: #62778c;
506
- }
507
- }
508
-
509
- .disabled-button {
510
- opacity: 0.5;
511
- }
512
- </style>
1
+ <template>
2
+ <div class="bg-white content-middle">
3
+ <!-- FERRAMENTAS -->
4
+ <div class="tools mt-3">
5
+ <button
6
+ @click="
7
+ isLocked && tool.event !== 'share'
8
+ ? $emit('open-contact')
9
+ : $emit(tool.event)
10
+ "
11
+ class="ml-3 burh-color"
12
+ :class="{
13
+ 'disabled-button': isLocked && tool.event !== 'share'
14
+ }"
15
+ v-for="(tool, index) in tools"
16
+ :key="index"
17
+ >
18
+ <i
19
+ v-show="isLocked && tool.event !== 'share'"
20
+ class="fas fa-lock mr-1"
21
+ ></i>
22
+ {{ tool.name }}
23
+ </button>
24
+ </div>
25
+ <!-- SOBRE -->
26
+ <div class="about content-block mt-5 ml-3 mr-3">
27
+ <h5 class="font-weight-bold">Sobre</h5>
28
+ <p
29
+ v-if="userData && userData.user_complementary_information && userData.user_complementary_information.about || false"
30
+ id="USER_ABOUT"
31
+ class="mb-0"
32
+ :class="
33
+ !wordIsLesserThan(
34
+ userData.user_complementary_information.about
35
+ ) && 'readmore'
36
+ "
37
+ v-html="
38
+ highlightText(
39
+ search,
40
+ userData.user_complementary_information.about
41
+ )
42
+ "
43
+ ></p>
44
+ <a
45
+ href="#"
46
+ aria-label="expandir conteudo"
47
+ v-if="
48
+ userData && userData.user_complementary_information && userData.user_complementary_information.about &&
49
+ !wordIsLesserThan(
50
+ userData.user_complementary_information.about
51
+ ) || false
52
+ "
53
+ @click.prevent.stop="toggleReadMore($event, 'USER_ABOUT')"
54
+ >Ler mais</a
55
+ >
56
+
57
+ <p v-if="userData && userData.user_complementary_information && userData.user_complementary_information.about || false" class="">
58
+ Nenhuma informação adicionada
59
+ </p>
60
+ </div>
61
+ <!-- CONTATO -->
62
+ <h5 class="font-weight-bold mt-4 ml-3">Contatos</h5>
63
+ <div class="ml-3 info-text">
64
+ <span v-if="userData.email != null">Email: {{userData.email}}</span><br>
65
+ <span v-if="userData.user_contact && userData.user_contact.cellphone != null && userData.user_contact.cellphone.length > 1 ">Celular: {{phoneMask(userData.user_contact.cellphone)}}</span><br>
66
+ <span v-if="userData.user_contact && userData.user_contact.phone != null && userData.user_contact.phone.length > 1">Telefone: {{phoneMask(userData.user_contact.phone)}}</span>
67
+ </div>
68
+
69
+ <!-- EDUCAÇÃO -->
70
+ <h5 class="font-weight-bold mt-4 ml-3">Educação</h5>
71
+ <div
72
+ class=" ml-3"
73
+ v-show="userData.user_education.length > 0"
74
+ v-for="(edu, index) in userData.user_education"
75
+ :key="index"
76
+ >
77
+ <p
78
+ class="sub-title"
79
+ v-html="highlightText(search, edu.formation)"
80
+ ></p>
81
+ <p class="info-text">{{ edu.institution }}</p>
82
+ <span class="info-text">
83
+ {{ edu.start_month }}/{{ edu.start_year }} -
84
+ {{ treatEndDate(edu.end_month, edu.end_year) }}
85
+ {{ getTime(false, edu) }}
86
+ {{
87
+ edu.user_education_period
88
+ ? '-' + edu.user_education_period.name
89
+ : ''
90
+ }} </span
91
+ ><br />
92
+ <span
93
+ class="info-text"
94
+ >
95
+ {{edu.formation_level_id | formationLevel}}
96
+ </span>
97
+ </div>
98
+
99
+ <!-- EXPERIÊNCIAS -->
100
+ <h5 class="font-weight-bold mt-4 ml-3">Experiência</h5>
101
+ <div
102
+ class="no-info ml-3"
103
+ v-show="userData.user_experience.length === 0"
104
+ >
105
+ <p>
106
+ Nenhuma informação adicionada
107
+ </p>
108
+ </div>
109
+ <div
110
+ v-show="userData.user_experience.length > 0"
111
+ class="experience ml-3 mr-3"
112
+ v-for="(exp, index) in userData.user_experience"
113
+ :key="`experience-${index}`"
114
+ >
115
+ <p
116
+ class="sub-title"
117
+ v-html="highlightText(search, exp.job_title)"
118
+ ></p>
119
+ <p
120
+ class="info-text"
121
+ v-html="
122
+ highlightText(search, `${exp.company}, ${exp.location}`)
123
+ "
124
+ ></p>
125
+ <span class="info-text">
126
+ {{ exp.start_month }}/{{ exp.start_year }} -
127
+ {{ treatEndDate(exp.end_month, exp.end_year) }}
128
+ {{ getTime(true, exp) }}
129
+ </span>
130
+
131
+ <p
132
+ :id="`USER_EXPERIENCE-${index}`"
133
+ class="description mt-4 mb-0"
134
+ :class="!wordIsLesserThan(exp.description) && 'readmore'"
135
+ v-html="highlightText(search, exp.description)"
136
+ ></p>
137
+
138
+ <a
139
+ href="#"
140
+ aria-label="expandir conteudo"
141
+ v-show="!wordIsLesserThan(exp.description)"
142
+ @click.prevent.stop="
143
+ toggleReadMore($event, `USER_EXPERIENCE-${index}`)
144
+ "
145
+ >Ler mais</a
146
+ ><br /><br />
147
+ </div>
148
+
149
+ <!-- CURSOS -->
150
+ <h5 class="font-weight-bold mt-1 ml-3">Cursos Complementares</h5>
151
+ <div class="no-info ml-3" v-show="userData.user_course.length === 0">
152
+ <p>
153
+ Nenhuma informação adicionada
154
+ </p>
155
+ </div>
156
+ <div
157
+ v-show="userData.user_course.length > 0"
158
+ class="courses ml-3"
159
+ v-for="(cou, index) in userData.user_course"
160
+ :key="`course-${index}`"
161
+ >
162
+ <p
163
+ class="sub-title"
164
+ v-html="highlightText(search, cou.institution)"
165
+ ></p>
166
+ <p
167
+ class="info-text mb-3"
168
+ v-html="
169
+ highlightText(
170
+ search,
171
+ `${cou.name} - ${cou.end_year || ''} ${getTime(
172
+ false,
173
+ cou
174
+ )}`
175
+ )
176
+ "
177
+ >
178
+ {{ cou.name }} - {{ cou.end_year }}
179
+ {{ getTime(false, cou) }}
180
+ </p>
181
+ </div>
182
+ </div>
183
+ </template>
184
+
185
+ <script>
186
+ import getPrefixes from '~/util/getPrefixes.js';
187
+ import { mask } from 'vue-the-mask';
188
+
189
+ export default {
190
+ name: 'user-cv-middle',
191
+ directives: { mask },
192
+ props: {
193
+ userData: Object,
194
+ tools: {
195
+ type: Array,
196
+ default: () => []
197
+ },
198
+ search: {
199
+ type: String,
200
+ default: ''
201
+ }
202
+ },
203
+ filters: {
204
+ formationLevel(id) {
205
+ const typeFormation = {
206
+ 1: 'Ensino Médio',
207
+ 2: 'Ensino Técnico',
208
+ 3: 'Graduação',
209
+ 4: 'Pós-Graduação',
210
+ 5: 'Mestrado',
211
+ 6: 'Doutorado'
212
+ };
213
+
214
+ return typeFormation[id] || '-';
215
+ }
216
+ },
217
+ data() {
218
+ return {
219
+ isLocked: !this.companyHasProduct(
220
+ this.$store.state.loja && this.$store.state.loja.showableProducts && this.$store.state.loja.showableProducts['INTERACAO_USUARIO'] || false
221
+ )
222
+ };
223
+ },
224
+ mounted() {
225
+ this.userData.user_experience = this.filterByDate(
226
+ this.userData.user_experience,
227
+ 'old'
228
+ );
229
+ this.userData.user_education = this.filterByDate(
230
+ this.userData.user_education,
231
+ 'old'
232
+ );
233
+ this.userData.user_course = this.filterByDate(
234
+ this.userData.user_course,
235
+ 'old'
236
+ );
237
+ },
238
+ watch: {
239
+ userData() {
240
+ this.userData.user_experience = this.filterByDate(
241
+ this.userData.user_experience,
242
+ 'old'
243
+ );
244
+ this.userData.user_education = this.filterByDate(
245
+ this.userData.user_education,
246
+ 'old'
247
+ );
248
+ this.userData.user_course = this.filterByDate(
249
+ this.userData.user_course,
250
+ 'old'
251
+ );
252
+ }
253
+ },
254
+ methods: {
255
+ phoneMask(v) {
256
+
257
+ let r = v.replace(/\D/g, '');
258
+ r = r.replace(/^0/, '');
259
+
260
+ if (r.length > 11) {
261
+ r = r.replace(/^(\d\d)(\d{5})(\d{4}).*/, '($1) $2-$3');
262
+ } else if (r.length > 7) {
263
+ r = r.replace(/^(\d\d)(\d{5})(\d{0,4}).*/, '($1) $2-$3');
264
+ } else if (r.length > 2) {
265
+ r = r.replace(/^(\d\d)(\d{0,5})/, '($1) $2');
266
+ } else if (v.trim() !== '') {
267
+ r = r.replace(/^(\d*)/, '($1');
268
+ }
269
+ return r;
270
+ },
271
+ highlightText(search, text) {
272
+ if (search.length < 2) return text;
273
+
274
+ const regex = new RegExp(search.toLowerCase(), 'gmi');
275
+ return String(text || '').replace(
276
+ regex,
277
+ `<span class="search-highlight">${search}</span>`
278
+ );
279
+ },
280
+ filterByDate(data, by = 'new') {
281
+ let sortedArray = data.sort((a, b) => {
282
+ a = [
283
+ a.start_month,
284
+ a.start_year,
285
+ a.end_month || 12,
286
+ a.end_year || 9999
287
+ ];
288
+
289
+ b = [
290
+ b.start_month,
291
+ b.start_year,
292
+ b.end_month || 12,
293
+ b.end_year || 9999
294
+ ];
295
+
296
+ // Primeiro filtro -> chaves: 0 e 1 -> Filtro por data de inicio
297
+ // Segundo filtro -> chaves: 2 e 3 -> Filtro por data de termino (subir não concluídos para primeiros)
298
+
299
+ let byStart;
300
+ let byEnd;
301
+
302
+ switch (by) {
303
+ case 'old':
304
+ byStart =
305
+ new Date(a[1], a[0], 1).getTime() -
306
+ new Date(b[1], b[0], 1).getTime();
307
+ byEnd =
308
+ new Date(b[3], b[2], 1).getTime() -
309
+ new Date(a[3], a[2], 1).getTime();
310
+ break;
311
+
312
+ default:
313
+ byStart =
314
+ new Date(b[1], b[0], 1).getTime() -
315
+ new Date(a[1], a[0], 1).getTime();
316
+ byEnd =
317
+ new Date(b[3], b[2], 1).getTime() -
318
+ new Date(a[3], a[2], 1).getTime();
319
+ break;
320
+ }
321
+
322
+ return byEnd - byStart;
323
+ });
324
+
325
+ return sortedArray;
326
+ },
327
+ toggleReadMore(event, id) {
328
+ const element = document.getElementById(id);
329
+ element.classList.toggle('readmore');
330
+ event.target.innerText == 'Ler mais'
331
+ ? (event.target.innerText = 'Esconder')
332
+ : (event.target.innerText = 'Ler mais');
333
+ },
334
+ getTime(
335
+ isExperience,
336
+ { start_year = null, end_year = null, start_month, end_month },
337
+ textHappening = 'Cursando'
338
+ ) {
339
+ const isHappening = !end_month && !end_year;
340
+
341
+ if (isHappening) {
342
+ return isExperience === true ? 'Atualmente' : textHappening;
343
+ }
344
+
345
+ const dateInitial = this.$moment(
346
+ ['1', start_month.toString(), start_year.toString()],
347
+ 'DD/MM/YYYY'
348
+ );
349
+ const dateDone = this.$moment(
350
+ ['1', end_month.toString(), end_year.toString()],
351
+ 'DD/MM/YYYY'
352
+ );
353
+ const diffDuration = this.$moment.duration(
354
+ dateDone.diff(dateInitial)
355
+ );
356
+ const years = diffDuration.years();
357
+ const months = diffDuration.months();
358
+
359
+ if (years) {
360
+ return years > 1 ? `(${years} anos)` : `(${years} ano)`;
361
+ }
362
+
363
+ return months > 1
364
+ ? `(${months} meses)`
365
+ : months == 1
366
+ ? `(${months} mês)`
367
+ : '';
368
+ },
369
+ languageLevel(level) {
370
+ switch (parseInt(level)) {
371
+ case 1:
372
+ return 'Iniciante';
373
+ case 2:
374
+ return 'Elementar';
375
+ case 3:
376
+ return 'Pré-intermediário';
377
+ case 4:
378
+ return 'Intermediário';
379
+ case 5:
380
+ return 'Intermediário Superior';
381
+ case 6:
382
+ return 'Avançado';
383
+ case 7:
384
+ return 'Fluente';
385
+ default:
386
+ return '';
387
+ }
388
+ },
389
+ treatPhone(phone) {
390
+ if (phone) {
391
+ if (phone == '0' || phone.length < 9 || !phone) {
392
+ return 'não cadastrado';
393
+ }
394
+ }
395
+
396
+ return phone;
397
+ },
398
+ treatCellphone(cellphone) {
399
+ if (cellphone) {
400
+ if (cellphone == '0' || cellphone.length < 11 || !cellphone) {
401
+ return 'não cadastrado';
402
+ }
403
+ }
404
+
405
+ return cellphone;
406
+ },
407
+ handleGetPrefixes(name = '') {
408
+ return getPrefixes(name);
409
+ },
410
+ treatEndDate(end_month, end_year) {
411
+ if (end_month && end_year) {
412
+ return `${end_month}/${end_year}`;
413
+ }
414
+ return '';
415
+ },
416
+ wordIsLesserThan(word, value = 300) {
417
+ return word && word.length < value;
418
+ }
419
+ }
420
+ };
421
+ </script>
422
+
423
+ <style lang="scss" scoped>
424
+ @import '@burh/nuxt-core/assets/sass/burh-ds/variables/_colors.scss';
425
+
426
+ /deep/ .search-highlight {
427
+ background: rgb(255, 252, 61);
428
+ color: #000;
429
+ }
430
+
431
+ .content-middle {
432
+ width: 50%;
433
+ border-right: 1px solid #ececec5c;
434
+ word-break: break-word !important;
435
+ }
436
+
437
+ .readmore {
438
+ overflow: hidden;
439
+ text-overflow: ellipsis;
440
+ display: -webkit-box;
441
+ -webkit-line-clamp: 3;
442
+ -webkit-box-orient: vertical;
443
+ }
444
+
445
+ .tools {
446
+ flex-wrap: wrap;
447
+ button {
448
+ width: 117px;
449
+ height: 29px;
450
+ border: none;
451
+ margin-top: 15px;
452
+
453
+ background: #5865F2;
454
+ border-radius: 16px;
455
+ color: #fff;
456
+
457
+ font-size: 12px;
458
+ font-weight: 600;
459
+ outline: 0;
460
+ }
461
+ }
462
+
463
+ .education {
464
+ margin-top: 15px;
465
+ }
466
+
467
+ .experience {
468
+ .description {
469
+ font-size: 14px;
470
+ color: #62778c;
471
+ }
472
+
473
+ a {
474
+ margin-bottom: 1px;
475
+ }
476
+ }
477
+
478
+ .sub-title {
479
+ margin-bottom: 1px;
480
+
481
+ font-weight: 600;
482
+ font-size: 14px;
483
+ line-height: 21px;
484
+ color: #62778c;
485
+ text-transform: uppercase;
486
+ }
487
+
488
+ .info-text {
489
+ margin-bottom: 1px;
490
+
491
+ font-size: 14px;
492
+ color: #8da2b5;
493
+ }
494
+
495
+ .content-block {
496
+ p {
497
+ font-size: 14px;
498
+ color: #62778c;
499
+ }
500
+ }
501
+
502
+ .no-info {
503
+ p {
504
+ font-size: 0.875rem;
505
+ color: #62778c;
506
+ }
507
+ }
508
+
509
+ .disabled-button {
510
+ opacity: 0.5;
511
+ }
512
+ </style>