aboutsummaryrefslogtreecommitdiff
path: root/src/components/NavbarButtons.vue
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/NavbarButtons.vue')
-rw-r--r--src/components/NavbarButtons.vue49
1 files changed, 26 insertions, 23 deletions
diff --git a/src/components/NavbarButtons.vue b/src/components/NavbarButtons.vue
index 5a1084f..29d5417 100644
--- a/src/components/NavbarButtons.vue
+++ b/src/components/NavbarButtons.vue
@@ -1,56 +1,50 @@
<template>
<n-tooltip trigger="hover">
<template #trigger>
- <n-button
- size="large"
+ <c-button
circle
- quaternary
- tag="a"
+ variant="text"
href="https://github.com/CorentinTh/it-tools"
- rel="noopener"
target="_blank"
+ rel="noopener noreferrer"
aria-label="IT-Tools' GitHub repository"
>
<n-icon size="25" :component="BrandGithub" />
- </n-button>
+ </c-button>
</template>
Github repository
</n-tooltip>
<n-tooltip trigger="hover">
<template #trigger>
- <n-button
- size="large"
+ <c-button
circle
- quaternary
- tag="a"
+ variant="text"
href="https://twitter.com/ittoolsdottech"
rel="noopener"
target="_blank"
aria-label="IT Tools' Twitter account"
>
<n-icon size="25" :component="BrandTwitter" />
- </n-button>
+ </c-button>
</template>
IT Tools' Twitter account
</n-tooltip>
- <router-link to="/about" #="{ navigate, href }" custom>
- <n-tooltip trigger="hover">
- <template #trigger>
- <n-button tag="a" :href="href" circle quaternary size="large" aria-label="About" @click="navigate">
- <n-icon size="25" :component="InfoCircle" />
- </n-button>
- </template>
- About
- </n-tooltip>
- </router-link>
<n-tooltip trigger="hover">
<template #trigger>
- <n-button size="large" circle quaternary aria-label="Toggle dark/light mode" @click="isDarkTheme = !isDarkTheme">
+ <c-button circle variant="text" to="/about" aria-label="About">
+ <n-icon size="25" :component="InfoCircle" />
+ </c-button>
+ </template>
+ About
+ </n-tooltip>
+ <n-tooltip trigger="hover">
+ <template #trigger>
+ <c-button circle variant="text" aria-label="Toggle dark/light mode" @click="toggleDarkTheme">
<n-icon v-if="isDarkTheme" size="25" :component="Sun" />
<n-icon v-else size="25" :component="Moon" />
- </n-button>
+ </c-button>
</template>
<span v-if="isDarkTheme">Light mode</span>
<span v-else>Dark mode</span>
@@ -59,11 +53,20 @@
<script setup lang="ts">
import { useStyleStore } from '@/stores/style.store';
+import { useThemeStore } from '@/ui/theme/theme.store';
import { BrandGithub, BrandTwitter, InfoCircle, Moon, Sun } from '@vicons/tabler';
import { toRefs } from 'vue';
const styleStore = useStyleStore();
const { isDarkTheme } = toRefs(styleStore);
+
+const themeStore = useThemeStore();
+
+function toggleDarkTheme() {
+ isDarkTheme.value = !isDarkTheme.value;
+
+ themeStore.toggleTheme();
+}
</script>
<style lang="less" scoped>