Sidebar.vue 760 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <script setup lang="ts">
  2. defineProps({
  3. title: { type: String, default: "Sidebar" }
  4. });
  5. </script>
  6. <template>
  7. <div class="sidebar" transition="slide">
  8. <div class="inner-wrapper">
  9. <div class="sidebar-title">{{ title }}</div>
  10. <slot name="content" />
  11. </div>
  12. </div>
  13. </template>
  14. <style lang="less" scoped>
  15. .inner-wrapper {
  16. overflow: auto;
  17. height: 100%;
  18. }
  19. .night-mode {
  20. .sidebar {
  21. background-color: var(--dark-grey-3);
  22. .sidebar-title {
  23. color: var(--white);
  24. }
  25. * {
  26. color: var(--light-grey-2);
  27. }
  28. }
  29. }
  30. .sidebar-title {
  31. font-family: "Inter", Helvetica, Arial, sans-serif; // Like h1-h6
  32. background-color: var(--primary-color);
  33. text-align: center;
  34. padding: 10px;
  35. color: var(--white);
  36. font-weight: 600;
  37. font-size: 20px;
  38. }
  39. </style>