2026-01-27 14:02:07 +07:00
|
|
|
<script setup lang="ts">
|
2026-02-18 16:28:29 +07:00
|
|
|
const { mobileItems } = useNavItems()
|
|
|
|
|
const navItems = mobileItems
|
2026-02-11 11:25:55 +07:00
|
|
|
|
2026-02-05 09:56:10 +07:00
|
|
|
const handleNavigate = (path: string) => {
|
|
|
|
|
if (import.meta.client) {
|
|
|
|
|
window.location.href = path
|
|
|
|
|
}
|
|
|
|
|
}
|
2026-01-27 14:02:07 +07:00
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<template>
|
|
|
|
|
<q-tabs
|
|
|
|
|
indicator-color="primary"
|
|
|
|
|
active-color="primary"
|
|
|
|
|
class="bg-white text-slate-500 shadow-up-1"
|
|
|
|
|
align="justify"
|
|
|
|
|
dense
|
|
|
|
|
>
|
2026-02-05 09:56:10 +07:00
|
|
|
<q-tab
|
2026-01-27 14:02:07 +07:00
|
|
|
v-for="item in navItems"
|
|
|
|
|
:key="item.to"
|
2026-02-05 09:56:10 +07:00
|
|
|
@click="handleNavigate(item.to)"
|
2026-01-27 14:02:07 +07:00
|
|
|
:icon="item.icon"
|
2026-02-18 16:28:29 +07:00
|
|
|
:label="$t(item.labelKey)"
|
2026-01-27 14:02:07 +07:00
|
|
|
no-caps
|
|
|
|
|
class="py-2"
|
2026-02-05 09:56:10 +07:00
|
|
|
:class="{ 'q-tab--active text-primary': $route.path === item.to }"
|
2026-01-27 14:02:07 +07:00
|
|
|
/>
|
|
|
|
|
</q-tabs>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<style scoped>
|
|
|
|
|
/* Optional shadow for better separation */
|
|
|
|
|
.shadow-up-1 {
|
|
|
|
|
box-shadow: 0 -1px 3px rgba(0,0,0,0.05);
|
|
|
|
|
}
|
|
|
|
|
</style>
|