@burh/nuxt-core 1.0.503 → 1.0.504

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 (493) 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/icon5.svg +3 -3
  23. package/assets/images/icons/icon6.svg +3 -3
  24. package/assets/images/icons/icon7.svg +3 -3
  25. package/assets/images/icons/icon8.svg +7 -7
  26. package/assets/images/icons/linkedin.svg +14 -14
  27. package/assets/images/icons/notesCv.svg +3 -3
  28. package/assets/images/icons/twitter.svg +14 -14
  29. package/assets/images/icons/whatsapp.svg +14 -14
  30. package/assets/images/linkedinCv.svg +3 -3
  31. package/assets/images/webCv.svg +4 -4
  32. package/assets/sass/argon.scss +104 -104
  33. package/assets/sass/burh-ds/_components.scss +142 -142
  34. package/assets/sass/burh-ds/_functions.scss +29 -29
  35. package/assets/sass/burh-ds/_global.scss +327 -327
  36. package/assets/sass/burh-ds/_helpers.scss +18 -18
  37. package/assets/sass/burh-ds/_mixins.scss +17 -17
  38. package/assets/sass/burh-ds/_transitions.scss +12 -12
  39. package/assets/sass/burh-ds/_utilities.scss +31 -31
  40. package/assets/sass/burh-ds/_variables.scss +963 -963
  41. package/assets/sass/burh-ds/_vendors.scss +38 -38
  42. package/assets/sass/burh-ds/atoms/_badge.scss +5 -5
  43. package/assets/sass/burh-ds/atoms/_buttons.scss +222 -222
  44. package/assets/sass/burh-ds/atoms/_forms.scss +419 -419
  45. package/assets/sass/burh-ds/atoms/_tables.scss +31 -31
  46. package/assets/sass/burh-ds/atoms/_type.scss +147 -147
  47. package/assets/sass/burh-ds/content/_interface-spa.scss +306 -306
  48. package/assets/sass/burh-ds/content/_main-content.scss +25 -25
  49. package/assets/sass/burh-ds/mixins/_badge.scss +37 -37
  50. package/assets/sass/burh-ds/mixins/_breakpoints.scss +39 -39
  51. package/assets/sass/burh-ds/mixins/_grid-framework.scss +66 -66
  52. package/assets/sass/burh-ds/mixins/_grid.scss +51 -51
  53. package/assets/sass/burh-ds/molecules/_box.scss +282 -282
  54. package/assets/sass/burh-ds/molecules/_breadcrumb.scss +8 -8
  55. package/assets/sass/burh-ds/molecules/_modal.scss +176 -176
  56. package/assets/sass/burh-ds/molecules/_navbar.scss +262 -262
  57. package/assets/sass/burh-ds/molecules/_notifications.scss +1 -1
  58. package/assets/sass/burh-ds/molecules/_steps-profile.scss +67 -67
  59. package/assets/sass/burh-ds/molecules/_testimonial.scss +53 -53
  60. package/assets/sass/burh-ds/organisms/_banner.scss +51 -51
  61. package/assets/sass/burh-ds/organisms/_cards.scss +228 -228
  62. package/assets/sass/burh-ds/organisms/_carousel.scss +113 -113
  63. package/assets/sass/burh-ds/organisms/_footer.scss +115 -115
  64. package/assets/sass/burh-ds/organisms/_profile-bar.scss +130 -130
  65. package/assets/sass/burh-ds/organisms/_search.scss +17 -17
  66. package/assets/sass/burh-ds/organisms/_subheader.scss +773 -773
  67. package/assets/sass/burh-ds/organisms/_tabs-setting.scss +123 -123
  68. package/assets/sass/burh-ds/organisms/banners/_banner.scss +62 -62
  69. package/assets/sass/burh-ds/organisms/cards/_featured-company.scss +17 -17
  70. package/assets/sass/burh-ds/organisms/cards/_opportunity.scss +16 -16
  71. package/assets/sass/burh-ds/pages/_error.scss +124 -124
  72. package/assets/sass/burh-ds/pages/_jobs.scss +424 -424
  73. package/assets/sass/burh-ds/pages/_testes.scss +350 -350
  74. package/assets/sass/burh-ds/variables/_colors.scss +358 -358
  75. package/assets/sass/burh-ds/variables/_global_settings.scss +39 -39
  76. package/assets/sass/core/alerts/_alert-dismissible.scss +48 -48
  77. package/assets/sass/core/alerts/_alert-notify.scss +47 -47
  78. package/assets/sass/core/alerts/_alert.scss +49 -49
  79. package/assets/sass/core/avatars/_avatar-group.scss +22 -22
  80. package/assets/sass/core/avatars/_avatar.scss +59 -59
  81. package/assets/sass/core/badges/_badge-circle.scss +29 -29
  82. package/assets/sass/core/badges/_badge-dot.scss +42 -42
  83. package/assets/sass/core/badges/_badge-floating.scss +18 -18
  84. package/assets/sass/core/badges/_badge.scss +67 -67
  85. package/assets/sass/core/breadcrumbs/_breadcrumb.scss +42 -42
  86. package/assets/sass/core/buttons/_button-brand.scss +12 -12
  87. package/assets/sass/core/buttons/_button-group.scss +79 -79
  88. package/assets/sass/core/buttons/_button-icon.scss +92 -92
  89. package/assets/sass/core/buttons/_button.scss +90 -90
  90. package/assets/sass/core/cards/_card-animations.scss +10 -10
  91. package/assets/sass/core/cards/_card-blockquote.scss +17 -17
  92. package/assets/sass/core/cards/_card-money.scss +27 -27
  93. package/assets/sass/core/cards/_card-pricing.scss +26 -26
  94. package/assets/sass/core/cards/_card-profile.scss +49 -49
  95. package/assets/sass/core/cards/_card-stats.scss +16 -16
  96. package/assets/sass/core/cards/_card.scss +70 -70
  97. package/assets/sass/core/charts/_chart.scss +69 -69
  98. package/assets/sass/core/close/_close.scss +47 -47
  99. package/assets/sass/core/collapse/_accordion.scss +38 -38
  100. package/assets/sass/core/content/_main-content.scss +17 -17
  101. package/assets/sass/core/custom-forms/_custom-checkbox.scss +47 -47
  102. package/assets/sass/core/custom-forms/_custom-control.scss +58 -58
  103. package/assets/sass/core/custom-forms/_custom-form.scss +45 -45
  104. package/assets/sass/core/custom-forms/_custom-radio.scss +38 -38
  105. package/assets/sass/core/custom-forms/_custom-toggle.scss +122 -122
  106. package/assets/sass/core/dropdowns/_dropdown.scss +89 -89
  107. package/assets/sass/core/footers/_footer.scss +159 -159
  108. package/assets/sass/core/forms/_form-extend.scss +38 -38
  109. package/assets/sass/core/forms/_form-validation.scss +78 -78
  110. package/assets/sass/core/forms/_form.scss +125 -125
  111. package/assets/sass/core/forms/_input-group.scss +136 -136
  112. package/assets/sass/core/grid/_grid.scss +31 -31
  113. package/assets/sass/core/headers/_header.scss +7 -7
  114. package/assets/sass/core/icons/_icon-actions.scss +57 -57
  115. package/assets/sass/core/icons/_icon-shape.scss +48 -48
  116. package/assets/sass/core/icons/_icon.scss +88 -88
  117. package/assets/sass/core/list-groups/_list-check.scss +52 -52
  118. package/assets/sass/core/list-groups/_list-group.scss +46 -46
  119. package/assets/sass/core/maps/_map.scss +10 -10
  120. package/assets/sass/core/masks/_mask.scss +33 -33
  121. package/assets/sass/core/medias/_media-comment.scss +33 -33
  122. package/assets/sass/core/medias/_media.scss +3 -3
  123. package/assets/sass/core/mixins/_alert.scss +22 -22
  124. package/assets/sass/core/mixins/_background-variant.scss +30 -30
  125. package/assets/sass/core/mixins/_badge.scss +12 -12
  126. package/assets/sass/core/mixins/_buttons.scss +105 -105
  127. package/assets/sass/core/mixins/_custom-forms.scss +47 -47
  128. package/assets/sass/core/mixins/_forms.scss +127 -127
  129. package/assets/sass/core/mixins/_icon.scss +10 -10
  130. package/assets/sass/core/mixins/_modals.scss +25 -25
  131. package/assets/sass/core/mixins/_popover.scss +35 -35
  132. package/assets/sass/core/modals/_modal.scss +31 -31
  133. package/assets/sass/core/navbars/_navbar-collapse.scss +37 -37
  134. package/assets/sass/core/navbars/_navbar-dropdown.scss +121 -121
  135. package/assets/sass/core/navbars/_navbar-floating.scss +17 -17
  136. package/assets/sass/core/navbars/_navbar-search.scss +216 -216
  137. package/assets/sass/core/navbars/_navbar-top.scss +58 -58
  138. package/assets/sass/core/navbars/_navbar-vertical.scss +507 -507
  139. package/assets/sass/core/navbars/_navbar.scss +368 -368
  140. package/assets/sass/core/navs/_nav-pills.scss +66 -66
  141. package/assets/sass/core/navs/_nav.scss +33 -33
  142. package/assets/sass/core/paginations/_pagination.scss +49 -49
  143. package/assets/sass/core/popovers/_popover.scss +21 -21
  144. package/assets/sass/core/progresses/_progress.scss +89 -89
  145. package/assets/sass/core/reboot/_reboot.scss +13 -13
  146. package/assets/sass/core/sections/_nucleo-icons.scss +117 -117
  147. package/assets/sass/core/separators/_separator.scss +54 -54
  148. package/assets/sass/core/shortcuts/_shortcut.scss +30 -30
  149. package/assets/sass/core/tables/_table-actions.scss +25 -25
  150. package/assets/sass/core/tables/_table-sortable.scss +28 -28
  151. package/assets/sass/core/tables/_table.scss +153 -153
  152. package/assets/sass/core/timeline/_timeline.scss +182 -182
  153. package/assets/sass/core/type/_article.scss +22 -22
  154. package/assets/sass/core/type/_display.scss +14 -14
  155. package/assets/sass/core/type/_heading.scss +65 -65
  156. package/assets/sass/core/type/_type.scss +27 -27
  157. package/assets/sass/core/utilities/_backgrounds.scss +51 -51
  158. package/assets/sass/core/utilities/_blurable.scss +37 -37
  159. package/assets/sass/core/utilities/_floating.scss +64 -64
  160. package/assets/sass/core/utilities/_helper.scss +18 -18
  161. package/assets/sass/core/utilities/_image.scss +9 -9
  162. package/assets/sass/core/utilities/_opacity.scss +35 -35
  163. package/assets/sass/core/utilities/_overflow.scss +11 -11
  164. package/assets/sass/core/utilities/_position.scss +25 -25
  165. package/assets/sass/core/utilities/_shadows.scss +28 -28
  166. package/assets/sass/core/utilities/_sizing.scss +7 -7
  167. package/assets/sass/core/utilities/_spacing.scss +107 -107
  168. package/assets/sass/core/utilities/_text.scss +49 -49
  169. package/assets/sass/core/utilities/_transform.scss +13 -13
  170. package/assets/sass/core/vendors/_bootstrap-datepicker.scss +279 -279
  171. package/assets/sass/core/vendors/_bootstrap-tagsinput.scss +67 -67
  172. package/assets/sass/core/vendors/_chartjs.scss +22 -22
  173. package/assets/sass/core/vendors/_dropzone.scss +74 -74
  174. package/assets/sass/core/vendors/_element-checkbox.scss +26 -26
  175. package/assets/sass/core/vendors/_element-tables.scss +61 -61
  176. package/assets/sass/core/vendors/_flatpickr.scss +72 -72
  177. package/assets/sass/core/vendors/_fullcalendar.scss +256 -256
  178. package/assets/sass/core/vendors/_headroom.scss +25 -25
  179. package/assets/sass/core/vendors/_lavalamp.scss +157 -157
  180. package/assets/sass/core/vendors/_nouislider.scss +413 -413
  181. package/assets/sass/core/vendors/_quill.scss +280 -280
  182. package/assets/sass/core/vendors/_scrollbar.scss +949 -949
  183. package/assets/sass/core/vendors/_select.scss +70 -70
  184. package/assets/sass/core/vendors/_sweet-alert-2.scss +22 -22
  185. package/assets/sass/core/vendors/_tags.scss +32 -32
  186. package/assets/sass/core/vendors/_vectormap.scss +16 -16
  187. package/assets/sass/custom/_components.scss +142 -142
  188. package/assets/sass/custom/_functions.scss +29 -29
  189. package/assets/sass/custom/_mixins.scss +15 -15
  190. package/assets/sass/custom/_transitions.scss +12 -12
  191. package/assets/sass/custom/_utilities.scss +31 -31
  192. package/assets/sass/custom/_variables.scss +1077 -1077
  193. package/assets/sass/custom/_vendors.scss +38 -38
  194. package/components/argon-core/Badge.vue +56 -56
  195. package/components/argon-core/Banners/Banner.vue +28 -28
  196. package/components/argon-core/Banners/BannerItem.vue +13 -13
  197. package/components/argon-core/BaseAlert.vue +74 -74
  198. package/components/argon-core/BaseButton.vue +81 -81
  199. package/components/argon-core/BaseDropdown.vue +114 -114
  200. package/components/argon-core/BaseHeader.vue +21 -21
  201. package/components/argon-core/BasePagination.vue +172 -172
  202. package/components/argon-core/BaseProgress.vue +121 -121
  203. package/components/argon-core/BaseSlider.vue +96 -96
  204. package/components/argon-core/BaseSwitch.vue +46 -46
  205. package/components/argon-core/BaseTable.vue +70 -70
  206. package/components/argon-core/Breadcrumb/Breadcrumb.vue +26 -26
  207. package/components/argon-core/Breadcrumb/BreadcrumbItem.vue +16 -16
  208. package/components/argon-core/Breadcrumb/RouteBreadcrumb.vue +45 -45
  209. package/components/argon-core/ButtonCheckbox.vue +39 -39
  210. package/components/argon-core/ButtonRadioGroup.vue +47 -47
  211. package/components/argon-core/Cards/Card.vue +71 -71
  212. package/components/argon-core/Cards/OpportunityCard.vue +39 -39
  213. package/components/argon-core/Cards/StatsCard.vue +49 -49
  214. package/components/argon-core/Charts/BarChart.js +30 -30
  215. package/components/argon-core/Charts/DoughnutChart.js +30 -30
  216. package/components/argon-core/Charts/LineChart.js +30 -30
  217. package/components/argon-core/Charts/PieChart.js +30 -30
  218. package/components/argon-core/Charts/config.js +491 -491
  219. package/components/argon-core/Charts/globalOptionsMixin.js +7 -7
  220. package/components/argon-core/Charts/optionHelpers.js +10 -10
  221. package/components/argon-core/CloseButton.vue +35 -35
  222. package/components/argon-core/Collapse/Collapse.vue +84 -84
  223. package/components/argon-core/Collapse/CollapseItem.vue +91 -91
  224. package/components/argon-core/Feed/Comment.vue +50 -50
  225. package/components/argon-core/Inputs/BaseCheckbox.vue +79 -79
  226. package/components/argon-core/Inputs/BaseInput.vue +270 -270
  227. package/components/argon-core/Inputs/BaseRadio.vue +68 -68
  228. package/components/argon-core/Inputs/DropzoneFileUpload.vue +138 -138
  229. package/components/argon-core/Inputs/DropzoneVideoUpload.vue +138 -138
  230. package/components/argon-core/Inputs/FileInput.vue +54 -54
  231. package/components/argon-core/Inputs/HtmlEditor.vue +105 -105
  232. package/components/argon-core/Inputs/IconCheckbox.vue +45 -45
  233. package/components/argon-core/Inputs/TagsInput.vue +100 -100
  234. package/components/argon-core/LoadingPanel.vue +26 -26
  235. package/components/argon-core/Modal.vue +180 -180
  236. package/components/argon-core/Navbar/BaseNav.vue +122 -122
  237. package/components/argon-core/Navbar/NavbarProgress.vue +19 -19
  238. package/components/argon-core/Navbar/NavbarProgressItem.vue +17 -17
  239. package/components/argon-core/Navbar/NavbarToggleButton.vue +21 -21
  240. package/components/argon-core/NavbarToggleButton.vue +29 -29
  241. package/components/argon-core/NotificationPlugin/Notification.vue +207 -207
  242. package/components/argon-core/NotificationPlugin/Notifications.vue +55 -55
  243. package/components/argon-core/NotificationPlugin/index.js +66 -66
  244. package/components/argon-core/SidebarPlugin/SideBar.vue +119 -119
  245. package/components/argon-core/SidebarPlugin/SidebarItem.vue +184 -184
  246. package/components/argon-core/SidebarPlugin/index.js +79 -79
  247. package/components/argon-core/Tabs/Tab.vue +33 -33
  248. package/components/argon-core/Tabs/Tabs.vue +170 -170
  249. package/components/argon-core/Timeline/TimeLine.vue +17 -17
  250. package/components/argon-core/Timeline/TimeLineItem.vue +30 -30
  251. package/components/argon-core/WorldMap/AsyncWorldMap.vue +28 -28
  252. package/components/argon-core/WorldMap/WorldMap.vue +127 -127
  253. package/components/argon-core/index.js +82 -82
  254. package/components/burh-ds/Aboutme/Profile.vue +110 -110
  255. package/components/burh-ds/Avatar/AvatarLink.vue +44 -44
  256. package/components/burh-ds/Avatar/BusinessAvatar.vue +38 -38
  257. package/components/burh-ds/Banners/BannerHero.vue +23 -23
  258. package/components/burh-ds/Banners/BannerItem.vue +14 -14
  259. package/components/burh-ds/Button/ExportButton.vue +20 -20
  260. package/components/burh-ds/Button/SwitchStateButton.vue +165 -165
  261. package/components/burh-ds/Capsules/SearchSlug.vue +860 -860
  262. package/components/burh-ds/Capsules/UserProfile.vue +1938 -1938
  263. package/components/burh-ds/Cards/BaseCard.vue +195 -195
  264. package/components/burh-ds/Cards/CampaignCard.vue +40 -40
  265. package/components/burh-ds/Cards/CompanyCard.vue +39 -39
  266. package/components/burh-ds/Cards/CourseInfoCard.vue +267 -267
  267. package/components/burh-ds/Cards/FeatureBusinessCard.vue +74 -74
  268. package/components/burh-ds/Cards/FunctionalityItem.vue +35 -35
  269. package/components/burh-ds/Cards/OpportunityCard.vue +115 -115
  270. package/components/burh-ds/Cards/PerformanceCard.vue +81 -81
  271. package/components/burh-ds/Cards/PerformanceItem.vue +65 -65
  272. package/components/burh-ds/Cards/PlanCard.vue +192 -192
  273. package/components/burh-ds/Cards/ProductCard.vue +142 -142
  274. package/components/burh-ds/Cards/PurchaseCard.vue +58 -58
  275. package/components/burh-ds/Cards/PurchaseCardSimple.vue +58 -58
  276. package/components/burh-ds/Cards/TestCard.vue +192 -192
  277. package/components/burh-ds/Cards/TrainingCard.vue +151 -151
  278. package/components/burh-ds/Cards/WelcomeCard.vue +106 -106
  279. package/components/burh-ds/Carousel/FeedCarousel.vue +47 -47
  280. package/components/burh-ds/Carousel/ImageCarousel.vue +111 -111
  281. package/components/burh-ds/Chart/DoughnutChart.vue +20 -20
  282. package/components/burh-ds/Collapse/DefaultCollapse.vue +70 -70
  283. package/components/burh-ds/Crop/Crop.vue +121 -121
  284. package/components/burh-ds/Curriculum/UserCurriculum/UpgradePlan.vue +71 -71
  285. package/components/burh-ds/Curriculum/UserCurriculum/UserCvLeftSide.vue +542 -542
  286. package/components/burh-ds/Curriculum/UserCurriculum/UserCvMiddle.vue +590 -590
  287. package/components/burh-ds/Curriculum/UserCurriculum/UserCvRightSide.vue +1270 -1266
  288. package/components/burh-ds/Curriculum/UserCurriculum/UserCvRightSideNotAuth.vue +496 -496
  289. package/components/burh-ds/Curriculum/UserCurriculum/index.vue +258 -258
  290. package/components/burh-ds/Dropdown/AppLinkArea.vue +132 -132
  291. package/components/burh-ds/Dropdown/DropdownItem.vue +26 -26
  292. package/components/burh-ds/Dropdown/DropdownSection.vue +38 -38
  293. package/components/burh-ds/Dropdown/FaqVideoArea.vue +88 -88
  294. package/components/burh-ds/Dropdown/SignOutItem.vue +11 -11
  295. package/components/burh-ds/Dropdown/UserMenuDropdown.vue +63 -63
  296. package/components/burh-ds/FeaturedCompanies/FeaturedCompanies.vue +11 -11
  297. package/components/burh-ds/FeaturedCompanies/FeaturedCompanyCard.vue +16 -16
  298. package/components/burh-ds/Filters/BaseFilterContainer.vue +138 -138
  299. package/components/burh-ds/Filters/FilterWithDropdown.vue +289 -289
  300. package/components/burh-ds/Groups/ProductItem.vue +62 -62
  301. package/components/burh-ds/Groups/SimpleProductItem.vue +164 -164
  302. package/components/burh-ds/Headings/AppHeader.vue +373 -373
  303. package/components/burh-ds/Headings/BaseHeader.vue +24 -24
  304. package/components/burh-ds/Headings/Profile.vue +66 -66
  305. package/components/burh-ds/Headings/ProfileHeader.vue +105 -105
  306. package/components/burh-ds/Headings/SettingsHeader.vue +48 -48
  307. package/components/burh-ds/Headings/StepHeader.vue +122 -122
  308. package/components/burh-ds/Img/ImageWithFallback.vue +67 -67
  309. package/components/burh-ds/Input/AutoComplete.vue +136 -136
  310. package/components/burh-ds/Inputs/BaseCheckbox.vue +73 -73
  311. package/components/burh-ds/Inputs/BaseSwitch.vue +43 -43
  312. package/components/burh-ds/Inputs/BaseSwitchSecondary.vue +84 -84
  313. package/components/burh-ds/Inputs/DoubleInputWithIcon.vue +100 -100
  314. package/components/burh-ds/Inputs/HtmlEditor.vue +60 -60
  315. package/components/burh-ds/Inputs/SearchInput.vue +88 -88
  316. package/components/burh-ds/InterfaceSpa/InterfaceSpa.vue +83 -83
  317. package/components/burh-ds/Jobs/JobDetail.vue +432 -432
  318. package/components/burh-ds/Jobs/JobDetailDesign.vue +151 -151
  319. package/components/burh-ds/Jobs/JobDetailEmpty.vue +27 -27
  320. package/components/burh-ds/Labels/LabelContextIcon.vue +58 -58
  321. package/components/burh-ds/Link/DefaultLink.vue +30 -30
  322. package/components/burh-ds/Lists/ListAvatarCheckbox.vue +157 -157
  323. package/components/burh-ds/Lists/ListNavLinks.vue +54 -54
  324. package/components/burh-ds/Lists/VagasSimple.vue +404 -404
  325. package/components/burh-ds/Loadings/Basics.vue +80 -80
  326. package/components/burh-ds/Loadings/InfiniteLoading.vue +21 -21
  327. package/components/burh-ds/Loadings/LoadingFullPage.vue +68 -68
  328. package/components/burh-ds/Loadings/NewLoading.vue +119 -119
  329. package/components/burh-ds/Loads/LoadingBar.vue +83 -83
  330. package/components/burh-ds/Modals/AddCustomerModal.vue +484 -484
  331. package/components/burh-ds/Modals/AddMember.vue +255 -255
  332. package/components/burh-ds/Modals/AddRoleModal.vue +139 -139
  333. package/components/burh-ds/Modals/AppConfigModal.vue +643 -643
  334. package/components/burh-ds/Modals/CourseMessageModal.vue +66 -66
  335. package/components/burh-ds/Modals/DocsModal.vue +111 -111
  336. package/components/burh-ds/Modals/DropzoneModal.vue +125 -125
  337. package/components/burh-ds/Modals/InviteToRole.vue +287 -287
  338. package/components/burh-ds/Modals/MobileModal.vue +65 -65
  339. package/components/burh-ds/Modals/ModalTests.vue +167 -167
  340. package/components/burh-ds/Modals/NewUserModal.vue +87 -87
  341. package/components/burh-ds/Modals/PlanModal.vue +327 -327
  342. package/components/burh-ds/Modals/RequestModal.vue +237 -237
  343. package/components/burh-ds/Modals/SendCourse.vue +448 -448
  344. package/components/burh-ds/Modals/SendDisc.vue +230 -230
  345. package/components/burh-ds/Modals/SendTest.vue +362 -362
  346. package/components/burh-ds/Modals/ShareModal.vue +228 -228
  347. package/components/burh-ds/Modals/SharedModal.vue +230 -230
  348. package/components/burh-ds/Modals/SmsModal.vue +329 -329
  349. package/components/burh-ds/Modals/SubModal.vue +41 -41
  350. package/components/burh-ds/Modals/UniversalShareModal.vue +216 -216
  351. package/components/burh-ds/Modals/UniversalWhatsappModal.vue +93 -93
  352. package/components/burh-ds/Modals/UniversityAccessModal.vue +135 -135
  353. package/components/burh-ds/Modals/VideoModal.vue +80 -80
  354. package/components/burh-ds/Modals/WhatsappModal.vue +92 -92
  355. package/components/burh-ds/Navbar/BaseNav.vue +119 -119
  356. package/components/burh-ds/Notifications/Notification.vue +215 -215
  357. package/components/burh-ds/Notifications/Notifications.vue +55 -55
  358. package/components/burh-ds/Notifications/index.js +66 -66
  359. package/components/burh-ds/Pagination/NamedPagination.vue +187 -187
  360. package/components/burh-ds/Questions/Question.vue +243 -243
  361. package/components/burh-ds/Questions/QuestionAttach.vue +13 -13
  362. package/components/burh-ds/Questions/QuestionRadio.vue +122 -122
  363. package/components/burh-ds/Questions/QuestionRadioItem.vue +83 -83
  364. package/components/burh-ds/Questions/QuestionText.vue +66 -66
  365. package/components/burh-ds/Questions/index.js +13 -13
  366. package/components/burh-ds/Skeleton/AppHeader.vue +173 -173
  367. package/components/burh-ds/Skeleton/BaseCardTest.vue +51 -51
  368. package/components/burh-ds/Skeleton/BaseCardUniversity.vue +79 -79
  369. package/components/burh-ds/Skeleton/BaseCardUser.vue +84 -84
  370. package/components/burh-ds/Skeleton/BaseCourseInfo.vue +116 -116
  371. package/components/burh-ds/Skeleton/BaseTraining.vue +29 -29
  372. package/components/burh-ds/Skeleton/BufferFolderSkeleton.vue +45 -45
  373. package/components/burh-ds/Skeleton/BufferUserSkeleton.vue +142 -142
  374. package/components/burh-ds/Skeleton/Cards.vue +86 -86
  375. package/components/burh-ds/Skeleton/ChartCard.vue +114 -114
  376. package/components/burh-ds/Skeleton/Home.vue +100 -100
  377. package/components/burh-ds/Skeleton/RecruitmentCard.vue +203 -203
  378. package/components/burh-ds/Skeleton/SkeletonAnimate.vue +146 -146
  379. package/components/burh-ds/Tabs/Tab.vue +56 -56
  380. package/components/burh-ds/Tabs/Tabs.vue +188 -188
  381. package/components/burh-ds/Tabs/TesteTab.vue +132 -132
  382. package/components/burh-ds/Video/MuxVideo.vue +39 -39
  383. package/components/burh-ds/index.js +20 -20
  384. package/components/layouts/argon/Content.vue +17 -17
  385. package/components/layouts/argon/navbar/BlankLayout.vue +61 -61
  386. package/components/layouts/argon/navbar/DashboardNavbar.vue +307 -307
  387. package/components/layouts/burh-ds/ContentFooter.vue +45 -45
  388. package/components/layouts/burh-ds/footer/FooterSimple.vue +20 -20
  389. package/components/layouts/burh-ds/footer/ProductsFooter.vue +330 -330
  390. package/components/layouts/burh-ds/footer/StatusFooter.vue +105 -105
  391. package/components/layouts/burh-ds/footer/StoreFooter.vue +54 -54
  392. package/components/layouts/burh-ds/navbar/AppNavbar.vue +97 -97
  393. package/components/layouts/burh-ds/navbar/BusinessGlobalNavbar.vue +435 -435
  394. package/components/layouts/burh-ds/navbar/CarreirasNavbar.vue +363 -363
  395. package/components/layouts/burh-ds/navbar/CompanyGlobalNavbar.vue +244 -244
  396. package/components/layouts/burh-ds/navbar/EmpresasNavbar.vue +374 -374
  397. package/components/layouts/burh-ds/navbar/EmpresasNavbarLogado.vue +388 -388
  398. package/components/layouts/burh-ds/navbar/GlobalNavbar.vue +535 -535
  399. package/components/layouts/burh-ds/navbar/MobileNavbar.vue +431 -431
  400. package/components/layouts/burh-ds/navbar/PublicNavbar.vue +168 -168
  401. package/components/layouts/burh-ds/navbar/SimpleNavbar.vue +129 -129
  402. package/components/layouts/burh-ds/navbar/UserNavbar.vue +346 -346
  403. package/components/layouts/burh-ds/navbar/UserNavbarLogin.vue +253 -253
  404. package/components/organismos/atomos/Deslike.vue +26 -26
  405. package/components/organismos/atomos/Like.vue +26 -26
  406. package/components/organismos/emptyChart/index.vue +39 -39
  407. package/components/pages/UserProfile/EditProfileForm.vue +142 -142
  408. package/components/pages/UserProfile/UserCard.vue +61 -61
  409. package/components/pages/dashboard/ActivityFeed.vue +102 -102
  410. package/components/pages/dashboard/LightTable.vue +194 -194
  411. package/components/pages/dashboard/PageVisitsTable.vue +107 -107
  412. package/components/pages/dashboard/ProgressTrackList.vue +82 -82
  413. package/components/pages/dashboard/SocialTrafficTable.vue +101 -101
  414. package/components/pages/dashboard/TaskList.vue +56 -56
  415. package/components/pages/dashboard/UserList.vue +72 -72
  416. package/components/pages/forms/BrowserDefaultsValidation.vue +106 -106
  417. package/components/pages/forms/CustomStylesValidation.vue +130 -130
  418. package/components/pages/forms/ServerSideValidation.vue +128 -128
  419. package/components/pages/register/FailedRegistration.vue +29 -29
  420. package/components/pages/register/SuccessfulRegistration.vue +29 -29
  421. package/components/tables/PaginatedTables/clientPaginationMixin.js +86 -86
  422. package/components/tables/RegularTables/CheckboxColoredTable.vue +112 -112
  423. package/components/tables/RegularTables/CheckboxTable.vue +101 -101
  424. package/components/tables/RegularTables/DarkTable.vue +114 -114
  425. package/components/tables/RegularTables/InlineActionsTable.vue +94 -94
  426. package/components/tables/RegularTables/LightTable.vue +117 -117
  427. package/components/tables/RegularTables/StripedTable.vue +94 -94
  428. package/components/tables/RegularTables/TranslucentTable.vue +114 -114
  429. package/components/tables/projects.js +75 -75
  430. package/components/tables/users.js +42 -42
  431. package/components/tables/users2.js +474 -474
  432. package/components/widgets/CalendarWidget.vue +119 -119
  433. package/components/widgets/CreditCard.vue +66 -66
  434. package/components/widgets/MembersCard.vue +99 -99
  435. package/components/widgets/PaypalCard.vue +45 -45
  436. package/components/widgets/ProgressTrackList.vue +76 -76
  437. package/components/widgets/StatsCards.vue +70 -70
  438. package/components/widgets/TaskList.vue +67 -67
  439. package/components/widgets/TimelineCard.vue +66 -66
  440. package/components/widgets/VectorMapCard.vue +139 -139
  441. package/components/widgets/VisaCard.vue +51 -51
  442. package/data/ListVideoLinksMock.json +21 -21
  443. package/dictionary.js +38 -38
  444. package/environment.env.md +34 -34
  445. package/environment.js +221 -221
  446. package/eslint.config.json +12 -12
  447. package/layouts/AuthLayout.vue +191 -191
  448. package/layouts/BurhCarreirasLayout.vue +63 -63
  449. package/layouts/BurhEmpresasLayout.vue +64 -64
  450. package/layouts/BurhNoHeader.vue +63 -63
  451. package/layouts/BurhPublicLayout.vue +67 -67
  452. package/layouts/BurhUserLayout.vue +231 -231
  453. package/layouts/DashboardLayout.vue +226 -226
  454. package/layouts/error.vue +119 -119
  455. package/metadata.json +30 -30
  456. package/middleware/README.md +8 -8
  457. package/middleware/decodeUrl.js +8 -8
  458. package/middleware/maintenance.js +9 -9
  459. package/middleware/new-account.js +6 -6
  460. package/middleware/redirect.js +13 -13
  461. package/middleware/user-agent-error.js +28 -28
  462. package/nuxt.config.js +207 -207
  463. package/package.json +119 -119
  464. package/plugins/README.md +7 -7
  465. package/plugins/analytics/ga.js +28 -28
  466. package/plugins/auth/auth.js +210 -210
  467. package/plugins/axios.js +32 -32
  468. package/plugins/carousel/owl-carousel.js +3 -3
  469. package/plugins/crop/crop.js +4 -4
  470. package/plugins/dashboard/dashboard-plugin.js +31 -31
  471. package/plugins/dashboard/directives/click-outside.js +15 -15
  472. package/plugins/dashboard/eventBus.js +1 -1
  473. package/plugins/dashboard/globalComponents.js +44 -44
  474. package/plugins/dashboard/globalDirectives.js +7 -7
  475. package/plugins/dom/loader.js +76 -76
  476. package/plugins/localstorage.js +20 -20
  477. package/plugins/location/location.js +41 -41
  478. package/plugins/pagination/pagination.js +3 -3
  479. package/plugins/qrcode/qrcode.js +4 -4
  480. package/plugins/router.js +8 -8
  481. package/plugins/social-media/fb-sdk.js +44 -44
  482. package/plugins/social-media/share-link-facebook.js +32 -32
  483. package/plugins/social-media/share-link-linkedin.js +30 -30
  484. package/plugins/social-media/share-link-twitter.js +30 -30
  485. package/plugins/social-media/share-link-whatsapp.js +31 -31
  486. package/plugins/vClickOutside.js +4 -4
  487. package/polyfills.js +96 -96
  488. package/util/common.js +189 -189
  489. package/util/cookie.js +28 -28
  490. package/util/dom.js +63 -63
  491. package/util/getPrefixes.js +12 -12
  492. package/util/request.js +46 -46
  493. package/util/throttle.js +15 -15
@@ -1,484 +1,484 @@
1
- <template>
2
- <modal
3
- :show.sync="isActive"
4
- :size="'lg'"
5
- @close="$emit('close')"
6
- >
7
- <template v-if="isActive">
8
- <div class="role">
9
- <h3>{{ isEditing ? 'Editando Cliente' : 'Cadastrar Cliente' }}</h3>
10
-
11
- <section>
12
- <validation-observer ref="sendRole">
13
- <validation-provider
14
- tag="div"
15
- name="Nome"
16
- rules="required"
17
- v-slot="{ errors }"
18
- >
19
- <label for="name">Nome da Empresa</label>
20
- <base-input
21
- type="text"
22
- id="name"
23
- v-model="name"
24
- placeholder="Nome da Empresa"
25
- :error="errors[0]"
26
- :valid="errors.length ? true : false"
27
- />
28
- </validation-provider>
29
- <validation-provider
30
- tag="div"
31
- name="Descrição"
32
- rules="required"
33
- v-slot="{ errors }"
34
- >
35
- <label for="description">Descrição</label>
36
- <base-input
37
- type="text"
38
- id="description"
39
- v-model="description"
40
- placeholder="Descrição"
41
- :error="errors[0]"
42
- :valid="errors.length ? true : false"
43
- />
44
- </validation-provider>
45
- <validation-provider
46
- tag="div"
47
- name="Razão Social"
48
- rules="required"
49
- v-slot="{ errors }"
50
- >
51
- <label for="social">Razão Social</label>
52
- <base-input
53
- type="text"
54
- id="social"
55
- v-model="social"
56
- placeholder="Razão Social"
57
- :error="errors[0]"
58
- :valid="errors.length ? true : false"
59
- />
60
- </validation-provider>
61
- <validation-provider
62
- tag="div"
63
- name="CNPJ"
64
- rules="required|min:14"
65
- v-slot="{ errors }"
66
- v-if="!isEditing"
67
- >
68
- <label for="cnpj">CNPJ</label>
69
- <base-input
70
- type="text"
71
- id="cnpj"
72
- v-model="cnpj"
73
- placeholder="CNPJ"
74
- :mask="['##.###.###/####-##']"
75
- :error="errors[0]"
76
- :valid="errors.length ? true : false"
77
- />
78
- </validation-provider>
79
-
80
- <validation-provider
81
- tag="div"
82
- name="CEP"
83
- rules="required|min:9"
84
- v-slot="{ errors }"
85
- >
86
- <label for="cep">CEP</label>
87
- <base-input
88
- type="text"
89
- id="cep"
90
- v-model="cep"
91
- placeholder="CEP"
92
- v-mask="['#####-###']"
93
- :error="errors[0]"
94
- :valid="errors.length ? true : false"
95
- />
96
- </validation-provider>
97
-
98
- <validation-provider
99
- tag="div"
100
- name="Cidade"
101
- rules="required"
102
- v-slot="{ errors }"
103
- >
104
- <label for="city" class="form-control-label">Cidade</label>
105
- <div class="form-group">
106
- <el-select
107
- id="city"
108
- v-model="city"
109
- placeholder="Cidade"
110
- filterable
111
- remote
112
- required
113
- auto-complete="off"
114
- :class="{'is-invalid': errors[0]}"
115
- :remote-method="getCityListFiltered"
116
- :loading="isSelectLoading"
117
-
118
- >
119
- <div class="text-center" slot="empty">
120
- <p class="small mb-2 mt-3">Nenhuma cidade encontrada</p>
121
- </div>
122
-
123
- <el-option
124
- v-for="city in cityListFiltered"
125
- :key="city.value"
126
- :value="city.value"
127
- :label="city.value"
128
- />
129
- </el-select>
130
- <div
131
- class="invalid-feedback"
132
- style="display: block;">
133
- {{ errors[0] }}
134
- </div>
135
- </div>
136
- </validation-provider>
137
-
138
- <validation-provider
139
- tag="div"
140
- name="Endereço"
141
- rules="required"
142
- v-slot="{ errors }"
143
- >
144
- <label for="address">Endereço</label>
145
- <base-input
146
- type="text"
147
- id="address"
148
- v-model="address"
149
- placeholder="Endereço"
150
- :error="errors[0]"
151
- :valid="errors.length ? true : false"
152
- />
153
- </validation-provider>
154
-
155
- <h2>Contato</h2>
156
-
157
- <div v-for="(contact, idx) in contacts" :key="idx">
158
- <div class="border p-3 rounded">
159
- <validation-provider
160
- tag="div"
161
- name="Responsável"
162
- :vid="`send-responsible-${idx}`"
163
- rules="required"
164
- v-slot="{ errors }"
165
- >
166
- <label for="name">Responsável</label>
167
- <base-input
168
- type="text"
169
- v-model="contact.name"
170
- placeholder="Responsável"
171
- :error="errors[0]"
172
- :valid="errors.length ? true : false"
173
- />
174
- </validation-provider>
175
-
176
- <validation-provider
177
- tag="div"
178
- name="E-mail"
179
- :vid="`send-email-${idx}`"
180
- rules="required|email"
181
- v-slot="{ errors }"
182
- >
183
- <label for="email">Email</label>
184
- <base-input
185
- type="email"
186
- v-model="contact.email"
187
- placeholder="Email"
188
- :error="errors[0]"
189
- :valid="errors.length ? true : false"
190
- />
191
- </validation-provider>
192
-
193
- <label for="phone">Telefone</label>
194
- <base-input
195
- type="text"
196
- v-model="contact.phone_number"
197
- :mask="['(##) ####-####']"
198
- placeholder="Telefone com DDD"
199
- />
200
-
201
- <label for="cellphone">Celular</label>
202
- <base-input
203
- type="text"
204
- v-model="contact.cellphone_number"
205
- :mask="['(##) ####-####', '(##) #####-####']"
206
- placeholder="Celular com DDD"
207
- />
208
-
209
- <label for="note">Observações</label>
210
- <base-input
211
- type="text"
212
- v-model="contact.note"
213
- placeholder="Observações"
214
- />
215
-
216
- <div class="col-1 pt-2">
217
- <i
218
- v-if="idx !== contacts.length - 1"
219
- class="fa fa-trash pointer"
220
- @click="removeSlot(idx)"
221
- ></i>
222
- </div>
223
- </div>
224
- <div class="col-1 pt-2">
225
- <i v-if="idx === contacts.length - 1" class="fa fa-plus pointer" @click="addSlot"></i>
226
- </div>
227
- </div>
228
- </validation-observer>
229
- <button
230
- type="button"
231
- :class="{'invalid-form': !permissions}"
232
- :disabled="!permissions"
233
- @click="sendRequest"
234
- class="btn ml-auto d-block btn-primary btn-md"
235
- >
236
- {{ isEditing ? 'Salvar' : 'Enviar' }}
237
- </button>
238
- </section>
239
- </div>
240
-
241
- <span class="tool tool-close" @click="$emit('close')">
242
- Fechar
243
- <i class="fas fa-times text-white ml-1"/>
244
- </span>
245
- </template>
246
- </modal>
247
- </template>
248
-
249
- <script>
250
- import { Select, Option } from 'element-ui';
251
- import { mask } from 'vue-the-mask';
252
- import swal from 'sweetalert2';
253
- import removeAccents from 'remove-accents';
254
-
255
- export default {
256
- name: 'add-customer-modal',
257
- directives:{
258
- mask
259
- },
260
- components: {
261
- [Select.name]: Select,
262
- [Option.name]: Option,
263
-
264
- },
265
- props: {
266
- isActive: {
267
- type: Boolean,
268
- default: false,
269
- description: 'Modal open verification'
270
- },
271
- userData: {
272
- type: Object,
273
- default: null
274
- }
275
- },
276
- watch: {
277
- name(to) {
278
- if (to.length > 3) {
279
- this.permissions = true;
280
- }
281
- },
282
- isActive(to) {
283
- if (!to) {
284
- this.resetFields();
285
- this.cityList = [];
286
- }
287
- if(!this.cityList.length && to){
288
- this.getCityList();
289
- }
290
- },
291
- userData(to) {
292
- if (to !== null) {
293
- this.id = to.id;
294
- this.name = to.name;
295
- this.social = to.razao_social;
296
- this.description = to.description;
297
-
298
- to.contact.length > 0 && (this.contacts = to.contact);
299
-
300
- this.cnpj = to.cnpj;
301
- this.cep = to.cep;
302
- this.address = to.address;
303
- this.city = to.city;
304
- this.isEditing = true;
305
- } else {
306
- this.isEditing = false;
307
- }
308
- }
309
- },
310
- data() {
311
- return {
312
- name: '',
313
- social: '',
314
- description: '',
315
- cnpj: '',
316
- contacts: [],
317
- cep: '',
318
- address: '',
319
- city: '',
320
- isEditing: false,
321
- isSelectLoading: false,
322
- cityList: [],
323
- cityListFiltered: [],
324
- permissions: false,
325
- permessionsData: [
326
- {
327
- id: 22845207,
328
- name: 'Administrador'
329
- },
330
- {
331
- id: 22890835,
332
- name: 'Usuário Empresas'
333
- },
334
- {
335
- id: 22913699,
336
- name: 'Portal do RH'
337
- },
338
- {
339
- id: 22959227,
340
- name: 'Universidade Corporativa'
341
- },
342
- ]
343
- };
344
- },
345
- methods: {
346
- resetFields() {
347
- this.name = '';
348
- this.social = '';
349
- this.description = '';
350
- this.cnpj = '';
351
- this.contacts = [],
352
- this.cep = '';
353
- this.address = '';
354
- this.city = '';
355
-
356
- this.addSlot();
357
-
358
- this.$refs.sendRole && this.$refs.sendRole.reset();
359
- },
360
- addSlot(){
361
- const newContacts = {
362
- name:'',
363
- email:'',
364
- phone_number:'',
365
- cellphone_number:'',
366
- note:'',
367
- };
368
-
369
- this.contacts = [...this.contacts, newContacts];
370
- },
371
- removeSlot(idx){
372
- this.contacts.splice(idx, 1);
373
- },
374
- async showMessage(message, type = 'success') {
375
- const Toast = swal.mixin({
376
- toast: true,
377
- position: 'top-end',
378
- showConfirmButton: false,
379
- timer: 3000,
380
- });
381
-
382
- Toast.fire({
383
- type: type,
384
- title: message,
385
- });
386
- },
387
- async getCityList() {
388
- await fetch(`${process.env.baseApiUrlUtils}/cities`)
389
- .then(res => res.json())
390
- .then(res => this.cityList = res.data)
391
- .catch(() => {});
392
- },
393
- getCityListFiltered(query) {
394
- if (query && query.length >= 2) {
395
- this.cityListFiltered = this.cityList.filter(city => removeAccents(String(city.city)).toLowerCase().startsWith(removeAccents(query.toLowerCase())));
396
- this.cityListFiltered = this.cityListFiltered.map(city => {
397
- return {
398
- value: `${city.city} / ${city.uf}`
399
- };
400
- });
401
- } else {
402
- this.cityListFiltered = [];
403
- }
404
- },
405
- async checkZipcode() {
406
- await this.$services.company
407
- .checkZipCode(this.cep)
408
- .then((response) => {
409
- if (response.error || response.data.length == 0) {
410
- response.error = true;
411
- } else {
412
- if (response.data) {
413
- if (response.data.city_name && response.data.region_code) {
414
- this.city = `${response.data.city_name} / ${response.data.region_code}`;
415
- }
416
- }
417
- }
418
- })
419
- .catch(() => {});
420
- },
421
- async sendRequest() {
422
- this.permissions = true;
423
-
424
- const pass = await this.$refs.sendRole.validate();
425
-
426
- if (!pass) {
427
- return this.showMessage('Preencha todos os campos obrigatórios!', 'error');
428
- }
429
-
430
- await this.checkZipcode();
431
-
432
- let payload = {
433
- name: this.name,
434
- razao_social: this.social,
435
- description: this.description,
436
- contact: this.contacts,
437
- cnpj: this.cnpj,
438
- cep: this.cep,
439
- address: this.address,
440
- city: this.city
441
- };
442
-
443
- const mode = this.isEditing ? 'update' : 'create';
444
-
445
- this.$emit('customer-submit', payload, mode, this.id);
446
- this.$emit('close');
447
- }
448
- },
449
- mounted() {
450
- this.getCityList();
451
-
452
- !this.isEditing && this.addSlot();
453
- }
454
- };
455
- </script>
456
-
457
- <style lang="scss">
458
- body.swal2-toast-shown .swal2-container.swal2-top-end, body.swal2-toast-shown .swal2-container.swal2-top-right {
459
- z-index: 10000!important;
460
- }
461
- </style>
462
-
463
- <style lang="scss" scoped>
464
- @import '@burh/nuxt-core/assets/sass/burh-ds/variables/_colors.scss';
465
-
466
- .role {
467
- padding: 2rem 3rem;
468
-
469
- section {
470
- margin-top: 2rem;
471
-
472
- .invalid-form {
473
- opacity: 0.3;
474
- }
475
- }
476
- }
477
-
478
- .is-invalid {
479
- /deep/ input {
480
- border-color: #de214b!important;
481
- }
482
- }
483
-
484
- </style>
1
+ <template>
2
+ <modal
3
+ :show.sync="isActive"
4
+ :size="'lg'"
5
+ @close="$emit('close')"
6
+ >
7
+ <template v-if="isActive">
8
+ <div class="role">
9
+ <h3>{{ isEditing ? 'Editando Cliente' : 'Cadastrar Cliente' }}</h3>
10
+
11
+ <section>
12
+ <validation-observer ref="sendRole">
13
+ <validation-provider
14
+ tag="div"
15
+ name="Nome"
16
+ rules="required"
17
+ v-slot="{ errors }"
18
+ >
19
+ <label for="name">Nome da Empresa</label>
20
+ <base-input
21
+ type="text"
22
+ id="name"
23
+ v-model="name"
24
+ placeholder="Nome da Empresa"
25
+ :error="errors[0]"
26
+ :valid="errors.length ? true : false"
27
+ />
28
+ </validation-provider>
29
+ <validation-provider
30
+ tag="div"
31
+ name="Descrição"
32
+ rules="required"
33
+ v-slot="{ errors }"
34
+ >
35
+ <label for="description">Descrição</label>
36
+ <base-input
37
+ type="text"
38
+ id="description"
39
+ v-model="description"
40
+ placeholder="Descrição"
41
+ :error="errors[0]"
42
+ :valid="errors.length ? true : false"
43
+ />
44
+ </validation-provider>
45
+ <validation-provider
46
+ tag="div"
47
+ name="Razão Social"
48
+ rules="required"
49
+ v-slot="{ errors }"
50
+ >
51
+ <label for="social">Razão Social</label>
52
+ <base-input
53
+ type="text"
54
+ id="social"
55
+ v-model="social"
56
+ placeholder="Razão Social"
57
+ :error="errors[0]"
58
+ :valid="errors.length ? true : false"
59
+ />
60
+ </validation-provider>
61
+ <validation-provider
62
+ tag="div"
63
+ name="CNPJ"
64
+ rules="required|min:14"
65
+ v-slot="{ errors }"
66
+ v-if="!isEditing"
67
+ >
68
+ <label for="cnpj">CNPJ</label>
69
+ <base-input
70
+ type="text"
71
+ id="cnpj"
72
+ v-model="cnpj"
73
+ placeholder="CNPJ"
74
+ :mask="['##.###.###/####-##']"
75
+ :error="errors[0]"
76
+ :valid="errors.length ? true : false"
77
+ />
78
+ </validation-provider>
79
+
80
+ <validation-provider
81
+ tag="div"
82
+ name="CEP"
83
+ rules="required|min:9"
84
+ v-slot="{ errors }"
85
+ >
86
+ <label for="cep">CEP</label>
87
+ <base-input
88
+ type="text"
89
+ id="cep"
90
+ v-model="cep"
91
+ placeholder="CEP"
92
+ v-mask="['#####-###']"
93
+ :error="errors[0]"
94
+ :valid="errors.length ? true : false"
95
+ />
96
+ </validation-provider>
97
+
98
+ <validation-provider
99
+ tag="div"
100
+ name="Cidade"
101
+ rules="required"
102
+ v-slot="{ errors }"
103
+ >
104
+ <label for="city" class="form-control-label">Cidade</label>
105
+ <div class="form-group">
106
+ <el-select
107
+ id="city"
108
+ v-model="city"
109
+ placeholder="Cidade"
110
+ filterable
111
+ remote
112
+ required
113
+ auto-complete="off"
114
+ :class="{'is-invalid': errors[0]}"
115
+ :remote-method="getCityListFiltered"
116
+ :loading="isSelectLoading"
117
+
118
+ >
119
+ <div class="text-center" slot="empty">
120
+ <p class="small mb-2 mt-3">Nenhuma cidade encontrada</p>
121
+ </div>
122
+
123
+ <el-option
124
+ v-for="city in cityListFiltered"
125
+ :key="city.value"
126
+ :value="city.value"
127
+ :label="city.value"
128
+ />
129
+ </el-select>
130
+ <div
131
+ class="invalid-feedback"
132
+ style="display: block;">
133
+ {{ errors[0] }}
134
+ </div>
135
+ </div>
136
+ </validation-provider>
137
+
138
+ <validation-provider
139
+ tag="div"
140
+ name="Endereço"
141
+ rules="required"
142
+ v-slot="{ errors }"
143
+ >
144
+ <label for="address">Endereço</label>
145
+ <base-input
146
+ type="text"
147
+ id="address"
148
+ v-model="address"
149
+ placeholder="Endereço"
150
+ :error="errors[0]"
151
+ :valid="errors.length ? true : false"
152
+ />
153
+ </validation-provider>
154
+
155
+ <h2>Contato</h2>
156
+
157
+ <div v-for="(contact, idx) in contacts" :key="idx">
158
+ <div class="border p-3 rounded">
159
+ <validation-provider
160
+ tag="div"
161
+ name="Responsável"
162
+ :vid="`send-responsible-${idx}`"
163
+ rules="required"
164
+ v-slot="{ errors }"
165
+ >
166
+ <label for="name">Responsável</label>
167
+ <base-input
168
+ type="text"
169
+ v-model="contact.name"
170
+ placeholder="Responsável"
171
+ :error="errors[0]"
172
+ :valid="errors.length ? true : false"
173
+ />
174
+ </validation-provider>
175
+
176
+ <validation-provider
177
+ tag="div"
178
+ name="E-mail"
179
+ :vid="`send-email-${idx}`"
180
+ rules="required|email"
181
+ v-slot="{ errors }"
182
+ >
183
+ <label for="email">Email</label>
184
+ <base-input
185
+ type="email"
186
+ v-model="contact.email"
187
+ placeholder="Email"
188
+ :error="errors[0]"
189
+ :valid="errors.length ? true : false"
190
+ />
191
+ </validation-provider>
192
+
193
+ <label for="phone">Telefone</label>
194
+ <base-input
195
+ type="text"
196
+ v-model="contact.phone_number"
197
+ :mask="['(##) ####-####']"
198
+ placeholder="Telefone com DDD"
199
+ />
200
+
201
+ <label for="cellphone">Celular</label>
202
+ <base-input
203
+ type="text"
204
+ v-model="contact.cellphone_number"
205
+ :mask="['(##) ####-####', '(##) #####-####']"
206
+ placeholder="Celular com DDD"
207
+ />
208
+
209
+ <label for="note">Observações</label>
210
+ <base-input
211
+ type="text"
212
+ v-model="contact.note"
213
+ placeholder="Observações"
214
+ />
215
+
216
+ <div class="col-1 pt-2">
217
+ <i
218
+ v-if="idx !== contacts.length - 1"
219
+ class="fa fa-trash pointer"
220
+ @click="removeSlot(idx)"
221
+ ></i>
222
+ </div>
223
+ </div>
224
+ <div class="col-1 pt-2">
225
+ <i v-if="idx === contacts.length - 1" class="fa fa-plus pointer" @click="addSlot"></i>
226
+ </div>
227
+ </div>
228
+ </validation-observer>
229
+ <button
230
+ type="button"
231
+ :class="{'invalid-form': !permissions}"
232
+ :disabled="!permissions"
233
+ @click="sendRequest"
234
+ class="btn ml-auto d-block btn-primary btn-md"
235
+ >
236
+ {{ isEditing ? 'Salvar' : 'Enviar' }}
237
+ </button>
238
+ </section>
239
+ </div>
240
+
241
+ <span class="tool tool-close" @click="$emit('close')">
242
+ Fechar
243
+ <i class="fas fa-times text-white ml-1"/>
244
+ </span>
245
+ </template>
246
+ </modal>
247
+ </template>
248
+
249
+ <script>
250
+ import { Select, Option } from 'element-ui';
251
+ import { mask } from 'vue-the-mask';
252
+ import swal from 'sweetalert2';
253
+ import removeAccents from 'remove-accents';
254
+
255
+ export default {
256
+ name: 'add-customer-modal',
257
+ directives:{
258
+ mask
259
+ },
260
+ components: {
261
+ [Select.name]: Select,
262
+ [Option.name]: Option,
263
+
264
+ },
265
+ props: {
266
+ isActive: {
267
+ type: Boolean,
268
+ default: false,
269
+ description: 'Modal open verification'
270
+ },
271
+ userData: {
272
+ type: Object,
273
+ default: null
274
+ }
275
+ },
276
+ watch: {
277
+ name(to) {
278
+ if (to.length > 3) {
279
+ this.permissions = true;
280
+ }
281
+ },
282
+ isActive(to) {
283
+ if (!to) {
284
+ this.resetFields();
285
+ this.cityList = [];
286
+ }
287
+ if(!this.cityList.length && to){
288
+ this.getCityList();
289
+ }
290
+ },
291
+ userData(to) {
292
+ if (to !== null) {
293
+ this.id = to.id;
294
+ this.name = to.name;
295
+ this.social = to.razao_social;
296
+ this.description = to.description;
297
+
298
+ to.contact.length > 0 && (this.contacts = to.contact);
299
+
300
+ this.cnpj = to.cnpj;
301
+ this.cep = to.cep;
302
+ this.address = to.address;
303
+ this.city = to.city;
304
+ this.isEditing = true;
305
+ } else {
306
+ this.isEditing = false;
307
+ }
308
+ }
309
+ },
310
+ data() {
311
+ return {
312
+ name: '',
313
+ social: '',
314
+ description: '',
315
+ cnpj: '',
316
+ contacts: [],
317
+ cep: '',
318
+ address: '',
319
+ city: '',
320
+ isEditing: false,
321
+ isSelectLoading: false,
322
+ cityList: [],
323
+ cityListFiltered: [],
324
+ permissions: false,
325
+ permessionsData: [
326
+ {
327
+ id: 22845207,
328
+ name: 'Administrador'
329
+ },
330
+ {
331
+ id: 22890835,
332
+ name: 'Usuário Empresas'
333
+ },
334
+ {
335
+ id: 22913699,
336
+ name: 'Portal do RH'
337
+ },
338
+ {
339
+ id: 22959227,
340
+ name: 'Universidade Corporativa'
341
+ },
342
+ ]
343
+ };
344
+ },
345
+ methods: {
346
+ resetFields() {
347
+ this.name = '';
348
+ this.social = '';
349
+ this.description = '';
350
+ this.cnpj = '';
351
+ this.contacts = [],
352
+ this.cep = '';
353
+ this.address = '';
354
+ this.city = '';
355
+
356
+ this.addSlot();
357
+
358
+ this.$refs.sendRole && this.$refs.sendRole.reset();
359
+ },
360
+ addSlot(){
361
+ const newContacts = {
362
+ name:'',
363
+ email:'',
364
+ phone_number:'',
365
+ cellphone_number:'',
366
+ note:'',
367
+ };
368
+
369
+ this.contacts = [...this.contacts, newContacts];
370
+ },
371
+ removeSlot(idx){
372
+ this.contacts.splice(idx, 1);
373
+ },
374
+ async showMessage(message, type = 'success') {
375
+ const Toast = swal.mixin({
376
+ toast: true,
377
+ position: 'top-end',
378
+ showConfirmButton: false,
379
+ timer: 3000,
380
+ });
381
+
382
+ Toast.fire({
383
+ type: type,
384
+ title: message,
385
+ });
386
+ },
387
+ async getCityList() {
388
+ await fetch(`${process.env.baseApiUrlUtils}/cities`)
389
+ .then(res => res.json())
390
+ .then(res => this.cityList = res.data)
391
+ .catch(() => {});
392
+ },
393
+ getCityListFiltered(query) {
394
+ if (query && query.length >= 2) {
395
+ this.cityListFiltered = this.cityList.filter(city => removeAccents(String(city.city)).toLowerCase().startsWith(removeAccents(query.toLowerCase())));
396
+ this.cityListFiltered = this.cityListFiltered.map(city => {
397
+ return {
398
+ value: `${city.city} / ${city.uf}`
399
+ };
400
+ });
401
+ } else {
402
+ this.cityListFiltered = [];
403
+ }
404
+ },
405
+ async checkZipcode() {
406
+ await this.$services.company
407
+ .checkZipCode(this.cep)
408
+ .then((response) => {
409
+ if (response.error || response.data.length == 0) {
410
+ response.error = true;
411
+ } else {
412
+ if (response.data) {
413
+ if (response.data.city_name && response.data.region_code) {
414
+ this.city = `${response.data.city_name} / ${response.data.region_code}`;
415
+ }
416
+ }
417
+ }
418
+ })
419
+ .catch(() => {});
420
+ },
421
+ async sendRequest() {
422
+ this.permissions = true;
423
+
424
+ const pass = await this.$refs.sendRole.validate();
425
+
426
+ if (!pass) {
427
+ return this.showMessage('Preencha todos os campos obrigatórios!', 'error');
428
+ }
429
+
430
+ await this.checkZipcode();
431
+
432
+ let payload = {
433
+ name: this.name,
434
+ razao_social: this.social,
435
+ description: this.description,
436
+ contact: this.contacts,
437
+ cnpj: this.cnpj,
438
+ cep: this.cep,
439
+ address: this.address,
440
+ city: this.city
441
+ };
442
+
443
+ const mode = this.isEditing ? 'update' : 'create';
444
+
445
+ this.$emit('customer-submit', payload, mode, this.id);
446
+ this.$emit('close');
447
+ }
448
+ },
449
+ mounted() {
450
+ this.getCityList();
451
+
452
+ !this.isEditing && this.addSlot();
453
+ }
454
+ };
455
+ </script>
456
+
457
+ <style lang="scss">
458
+ body.swal2-toast-shown .swal2-container.swal2-top-end, body.swal2-toast-shown .swal2-container.swal2-top-right {
459
+ z-index: 10000!important;
460
+ }
461
+ </style>
462
+
463
+ <style lang="scss" scoped>
464
+ @import '@burh/nuxt-core/assets/sass/burh-ds/variables/_colors.scss';
465
+
466
+ .role {
467
+ padding: 2rem 3rem;
468
+
469
+ section {
470
+ margin-top: 2rem;
471
+
472
+ .invalid-form {
473
+ opacity: 0.3;
474
+ }
475
+ }
476
+ }
477
+
478
+ .is-invalid {
479
+ /deep/ input {
480
+ border-color: #de214b!important;
481
+ }
482
+ }
483
+
484
+ </style>