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.

55 lines
1004 B

  1. <template>
  2. <v-app>
  3. <the-header>
  4. <template #leftDrawerIcon>
  5. <v-app-bar-nav-icon @click="drawerLeft = !drawerLeft" />
  6. </template>
  7. </the-header>
  8. <v-navigation-drawer
  9. v-model="drawerLeft"
  10. app
  11. clipped
  12. >
  13. <the-side-bar
  14. :link="getLink"
  15. :role="getCurrentUserRole"
  16. />
  17. </v-navigation-drawer>
  18. <v-main class="pb-0">
  19. <nuxt />
  20. </v-main>
  21. </v-app>
  22. </template>
  23. <script>
  24. import { mapGetters } from 'vuex'
  25. import TheHeader from '~/components/layout/TheHeader'
  26. import TheSideBar from '~/components/layout/TheSideBar'
  27. export default {
  28. middleware: ['check-auth', 'auth', 'set-project'],
  29. components: {
  30. TheSideBar,
  31. TheHeader
  32. },
  33. data() {
  34. return {
  35. drawerLeft: null
  36. }
  37. },
  38. computed: {
  39. ...mapGetters('projects', ['getLink', 'getCurrentUserRole'])
  40. },
  41. watch: {
  42. '$route.query'() {
  43. this.$services.option.save(this.$route.params.id, this.$route.query)
  44. }
  45. }
  46. }
  47. </script>