You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

SummaryBar.vue 2.0KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <template lang="pug">
  2. section.w-flex.column.pb5
  3. nav.fill-width.w-flex.column.justify-space-between
  4. // Tabbed Layout
  5. w-tabs(v-if="isTab" :items="Object.keys(tabContent)" center fill-bar)
  6. template(#item-title="{ item }")
  7. .w-flex.column.justify-start
  8. p(v-if="tabContent[item].matchPerc") {{ tabContent[item].matchPerc }}%
  9. p(v-else) &nbsp;
  10. p {{ item }}
  11. // About Tab
  12. template(#item-content.1="{ item }")
  13. .tab--about
  14. p {{ tabContent[item].tab }}
  15. br
  16. p {{ tabContent[item].tab }}
  17. br
  18. hr
  19. // Passion Tab
  20. template(#item-content.2="{ item }")
  21. .tab--passion
  22. p {{ tabContent[item].tab }}
  23. // Aspirations Tab
  24. template(#item-content.3="{ item }")
  25. .tab--aspirations
  26. p {{ tabContent[item].tab }}
  27. // Skills Tab
  28. template(#item-content.4="{ item }")
  29. .tab--skills
  30. p {{ tabContent[item].tab }}
  31. // Untabbed Layout
  32. ul.w-flex.row.justify-space-between(v-else)
  33. template(v-for="(item, index) in Object.keys(tabContent)" :key="index")
  34. li.w-flex.row(v-if="item !== 'about'")
  35. w-icon(xl).mr1 mdi mdi-heart
  36. .w-flex.column.justify-start
  37. p {{ tabContent[item].matchPerc }}%
  38. p {{ item }}
  39. </template>
  40. <script>
  41. export default {
  42. props: {
  43. tabContent: {
  44. required: true,
  45. type: Object,
  46. },
  47. isTab: {
  48. required: false,
  49. type: Boolean,
  50. default: false,
  51. },
  52. showIcon: {
  53. required: false,
  54. type: Boolean,
  55. default: true,
  56. },
  57. },
  58. }
  59. </script>