gamebrary/src/components/Dock.vue

95 lines
2.1 KiB
Vue
Raw Normal View History

2018-10-19 05:15:28 +00:00
<template lang="html">
2021-02-25 05:07:19 +00:00
<nav
2021-04-21 05:59:08 +00:00
class="dock p-2 d-flex align-items-center justify-content-between w-100"
:class="{ 'position-fixed': isBoard }"
2021-02-25 05:07:19 +00:00
>
<div class="d-flex">
2021-02-19 22:12:08 +00:00
<b-button
2021-03-10 00:25:34 +00:00
title="Dashboard"
squared
2021-04-21 05:59:08 +00:00
variant="transparent"
v-b-toggle.menu
2021-03-11 00:06:47 +00:00
class="p-0 ml-2"
2021-02-03 21:04:02 +00:00
>
2021-03-10 00:25:34 +00:00
<img
src="/static/gamebrary-logo.png"
2021-03-18 23:41:28 +00:00
width="32"
2021-03-10 00:25:34 +00:00
/>
2021-02-19 22:12:08 +00:00
</b-button>
2021-02-01 19:38:17 +00:00
<portal-target name="logo" />
<span v-if="pageTitle && !isBoard" class="d-sm-none">{{ pageTitle }}</span>
2021-03-10 00:25:34 +00:00
</div>
<portal-target name="dock" />
<sidebar />
2020-09-26 00:09:20 +00:00
</nav>
2018-10-19 05:15:28 +00:00
</template>
<script>
2020-09-01 17:47:56 +00:00
import { mapState, mapGetters } from 'vuex';
2021-01-25 21:05:35 +00:00
import PinnedBoards from '@/components/Board/PinnedBoards';
2021-04-21 05:59:08 +00:00
import Sidebar from '@/components/Sidebar';
2018-10-19 05:15:28 +00:00
export default {
components: {
2021-01-25 21:05:35 +00:00
PinnedBoards,
2021-04-21 05:59:08 +00:00
Sidebar,
},
2019-11-08 19:56:03 +00:00
computed: {
...mapState(['board', 'user', 'publicBoards']),
...mapGetters(['isBoardOwner']),
2021-01-20 22:48:01 +00:00
isBoard() {
return ['public-board', 'board'].includes(this.$route.name);
},
2021-03-11 00:06:47 +00:00
pageTitle() {
return this.$route.meta && this.$route.meta.title;
},
2019-11-08 19:56:03 +00:00
},
2021-02-01 23:20:41 +00:00
methods: {
2021-04-21 05:59:08 +00:00
// handleLogoClick() {
// if (!this.user) {
// if (this.$route.name === 'public-boards') {
// this.$bvModal.show('authModal');
// } else {
// this.$router.push({ name: 'public-boards' });
// }
// }
//
// if (this.user && this.$route.name !== 'dashboard') {
// this.$router.push({ name: 'dashboard' });
// }
// },
2021-02-01 23:20:41 +00:00
2021-02-19 22:12:08 +00:00
// async pinBoard() {
// const payload = {
// ...this.board,
// pinned: !this.board.pinned,
// };
//
// this.$store.commit('SET_ACTIVE_BOARD', payload);
//
// await this.$store.dispatch('SAVE_BOARD')
// .catch(() => {
// this.$bvToast.toast('There was an error renaming list', { variant: 'danger' });
// });
//
// this.$bvToast.toast('Board settings saved');
// },
2021-02-01 23:20:41 +00:00
},
2018-10-19 05:15:28 +00:00
};
</script>
2020-09-26 00:09:20 +00:00
<style lang="scss" rel="stylesheet/scss" scoped>
2021-03-10 00:25:34 +00:00
.dock {
z-index: 1;
2021-03-11 00:06:47 +00:00
height: 54px;
2021-03-10 00:25:34 +00:00
}
2020-09-26 00:09:20 +00:00
</style>