Sidebar.vue 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <template>
  2. <aside class="sidebar">
  3. <NavLinks/>
  4. <slot name="top"/>
  5. <SidebarLinks :depth="0" :items="items"/>
  6. <slot name="bottom"/>
  7. </aside>
  8. </template>
  9. <script>
  10. import SidebarLinks from '@theme/components/SidebarLinks.vue'
  11. import NavLinks from '@theme/components/NavLinks.vue'
  12. export default {
  13. name: 'Sidebar',
  14. components: { SidebarLinks, NavLinks },
  15. props: ['items']
  16. }
  17. </script>
  18. <style lang="stylus">
  19. .sidebar
  20. ul
  21. padding 0
  22. margin 0
  23. list-style-type none
  24. a
  25. display inline-block
  26. .nav-links
  27. display none
  28. border-bottom 1px solid $borderColor
  29. padding 0.5rem 0 0.75rem 0
  30. a
  31. font-weight 600
  32. .nav-item, .repo-link
  33. display block
  34. line-height 1.25rem
  35. font-size 1.1em
  36. padding 0.5rem 0 0.5rem 1.5rem
  37. & > .sidebar-links
  38. padding 1.5rem 0
  39. & > li > a.sidebar-link
  40. font-size 1.1em
  41. line-height 1.7
  42. font-weight bold
  43. & > li:not(:first-child)
  44. margin-top .75rem
  45. @media (max-width: $MQMobile)
  46. .sidebar
  47. .nav-links
  48. display block
  49. .dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active::after
  50. top calc(1rem - 2px)
  51. & > .sidebar-links
  52. padding 1rem 0
  53. </style>