97 lines
2.1 KiB
Vue
97 lines
2.1 KiB
Vue
<template>
|
|
<q-layout view="lHh Lpr lFf">
|
|
<q-header>
|
|
<q-toolbar class="topbar">
|
|
<q-btn flat dense round icon="menu" aria-label="Menu" @click="toggleLeftDrawer" />
|
|
|
|
<q-toolbar-title> Quasar App </q-toolbar-title>
|
|
|
|
<q-btn :color="theme ? 'accent' : 'dark'" @click="theme = !theme">
|
|
{{ theme ? 'DARK' : 'LIGHT' }}
|
|
</q-btn>
|
|
<div>Quasar v{{ $q.version }}</div>
|
|
</q-toolbar>
|
|
</q-header>
|
|
|
|
<q-drawer v-model="leftDrawerOpen" show-if-above bordered>
|
|
<q-list>
|
|
<q-item-label header> Essential Links </q-item-label>
|
|
|
|
<EssentialLink v-for="link in linksList" :key="link.title" v-bind="link" />
|
|
</q-list>
|
|
</q-drawer>
|
|
|
|
<q-page-container>
|
|
<router-view />
|
|
</q-page-container>
|
|
</q-layout>
|
|
</template>
|
|
|
|
<script setup>
|
|
import { ref, computed } from 'vue'
|
|
import EssentialLink from 'components/EssentialLink.vue'
|
|
import { useQuasar } from 'quasar'
|
|
|
|
const linksList = [
|
|
{
|
|
title: 'Docs',
|
|
caption: 'quasar.dev',
|
|
icon: 'school',
|
|
link: 'https://quasar.dev',
|
|
},
|
|
{
|
|
title: 'Github',
|
|
caption: 'github.com/quasarframework',
|
|
icon: 'code',
|
|
link: 'https://github.com/quasarframework',
|
|
},
|
|
{
|
|
title: 'Discord Chat Channel',
|
|
caption: 'chat.quasar.dev',
|
|
icon: 'chat',
|
|
link: 'https://chat.quasar.dev',
|
|
},
|
|
{
|
|
title: 'Forum',
|
|
caption: 'forum.quasar.dev',
|
|
icon: 'record_voice_over',
|
|
link: 'https://forum.quasar.dev',
|
|
},
|
|
{
|
|
title: 'Twitter',
|
|
caption: '@quasarframework',
|
|
icon: 'rss_feed',
|
|
link: 'https://twitter.quasar.dev',
|
|
},
|
|
{
|
|
title: 'Facebook',
|
|
caption: '@QuasarFramework',
|
|
icon: 'public',
|
|
link: 'https://facebook.quasar.dev',
|
|
},
|
|
{
|
|
title: 'Quasar Awesome',
|
|
caption: 'Community Quasar projects',
|
|
icon: 'favorite',
|
|
link: 'https://awesome.quasar.dev',
|
|
},
|
|
]
|
|
const $q = useQuasar()
|
|
const leftDrawerOpen = ref(false)
|
|
|
|
const theme = computed({
|
|
get: () => $q.dark.isActive,
|
|
set: (val) => $q.dark.set(val),
|
|
})
|
|
|
|
function toggleLeftDrawer() {
|
|
leftDrawerOpen.value = !leftDrawerOpen.value
|
|
}
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
.topbar {
|
|
background: var(--my-background);
|
|
}
|
|
</style>
|