Subheader.vue 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. <!--
  2. Second header de l'application
  3. Contient entre autres le breadcrumb, les commandes de changement d'année et les listes personnalisées
  4. -->
  5. <template>
  6. <main>
  7. <v-card
  8. id="subheader"
  9. class="d-md-flex theme-neutral text-body-2 px-2"
  10. flat
  11. rounded="0"
  12. >
  13. <LayoutSubHeaderBreadcrumbs v-if="mdAndUp" class="mr-auto d-flex" />
  14. <v-card
  15. class="d-md-flex pt-2 mr-6 align-baseline"
  16. flat
  17. tile
  18. >
  19. <LayoutSubHeaderActivityYear v-if="!showDateTimeRange" class="activity-year" />
  20. <div v-if="hasMenuOrIsTeacher" class="d-sm-none d-md-flex d-none d-sm-flex">
  21. <LayoutSubHeaderDataTiming v-if="!showDateTimeRange" class="data-timing ml-2" />
  22. <LayoutSubHeaderDataTimingRange class="data-timing-range ml-n1" @showDateTimeRange="showDateTimeRange=$event" />
  23. <LayoutSubHeaderPersonnalizedList class="personalized-list ml-2" />
  24. </div>
  25. </v-card>
  26. </v-card>
  27. </main>
  28. </template>
  29. <script setup lang="ts">
  30. import {useAccessProfileStore} from "~/stores/accessProfile";
  31. import {computed, ComputedRef, ref, Ref} from "@vue/reactivity";
  32. import {useMenu} from "~/composables/layout/useMenu";
  33. import {useDisplay} from "vuetify";
  34. const { mdAndUp } = useDisplay()
  35. const accessProfile = useAccessProfileStore()
  36. const { hasMenu } = useMenu()
  37. const hasMenuOrIsTeacher: ComputedRef<boolean> = computed(
  38. () => hasMenu('Main') || (accessProfile.isTeacher ?? false)
  39. )
  40. const showDateTimeRange: Ref<boolean> = ref(false)
  41. </script>
  42. <style scoped lang="scss">
  43. main {
  44. font-size: 12px;
  45. }
  46. #subheader {
  47. max-height: 36px;
  48. }
  49. :deep(#subheader .v-card) {
  50. max-height: 36px;
  51. background-color: transparent !important;
  52. }
  53. </style>