/
TheNavbar.vue
138 lines (125 loc) · 4.57 KB
/
TheNavbar.vue
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
<template>
<nav
class="navbar docs-navbar is-spaced has-shadow"
:class="{ 'is-primary is-transparent': light }">
<div class="container">
<div class="navbar-brand">
<router-link
to="/"
class="navbar-item"
title="Buefy: lightweight UI components for Vue.js based on Bulma"
active-class="">
<img
v-if="light"
src="../assets/buefy-light.png"
alt="Buefy">
<img
v-else
src="../assets/buefy.png"
alt="Buefy">
</router-link>
<a
class="navbar-item"
:class="{ 'has-text-dark': !light }"
href="https://github.com/buefy/buefy"
target="_blank"
title="Github">
<b-icon icon="github-circle"/>
</a>
<a
class="navbar-item"
:class="{ 'has-text-discord': !light }"
href="https://discordapp.com/invite/ZkdFJMr"
target="_blank"
title="Discord">
<b-icon icon="discord"/>
</a>
<a
class="navbar-item"
:class="{ 'has-text-twitter': !light }"
href="https://twitter.com/buefycss"
target="_blank"
title="Twitter">
<b-icon icon="twitter"/>
</a>
<span
class="navbar-burger burger"
:class="{ 'is-active': isMenuActive }"
@click="isMenuActive = !isMenuActive">
<span/>
<span/>
<span/>
</span>
</div>
<div class="navbar-menu" :class="{ 'is-active': isMenuActive }">
<div class="navbar-end">
<router-link
to="/"
exact
class="navbar-item">
Home
</router-link>
<router-link to="/documentation" class="navbar-item">
Documentation
</router-link>
<router-link to="/extensions" class="navbar-item">
Extensions
</router-link>
<router-link to="/expo" class="navbar-item">
Expo
</router-link>
<div class="navbar-item has-dropdown is-hoverable">
<div class="navbar-link">Info</div>
<div class="navbar-dropdown is-boxed">
<strong class="navbar-item is-version">
<span class="has-text-primary">Buefy version</span>
<span class="has-text-grey">{{ version }}</span>
</strong>
<strong class="navbar-item is-version">
<span class="has-text-bulma">Bulma version</span>
<span class="has-text-grey">{{ bulmaVersion }}</span>
</strong>
<hr class="navbar-divider">
<a
class="navbar-item"
href="https://github.com/buefy/buefy/releases"
target="_blank">
Changelogs
</a>
</div>
</div>
</div>
</div>
</div>
</nav>
</template>
<script>
import buefyPackage from '../../package'
import bulmaPackage from 'bulma/package'
export default {
props: {
light: Boolean
},
data() {
return {
isMenuActive: false,
version: buefyPackage.version,
bulmaVersion: bulmaPackage.version
}
},
methods: {
closeMenu() {
this.isMenuActive = false
},
toggleHtmlClip() {
document
.documentElement
.classList
.toggle('is-clipped-touch', this.isMenuActive)
}
},
mounted() {
this.$eventHub.$on('navigate', this.closeMenu)
}
}
</script>