start frant 050228

This commit is contained in:
2026-05-18 20:18:28 +03:30
parent 26e59e03e0
commit cb65e5e601
33 changed files with 1493 additions and 425 deletions
+12
View File
@@ -0,0 +1,12 @@
<template>
<WebAppLayout>
<h1 class="mb-4 text-xl font-bold text-text">رزروهای من</h1>
<div class="rounded-2xl border border-dashed border-border bg-surface-2 p-6 text-center text-sm text-muted">
به‌زودی
</div>
</WebAppLayout>
</template>
<script setup lang="ts">
import WebAppLayout from '@/layouts/WebAppLayout.vue';
</script>
+19
View File
@@ -0,0 +1,19 @@
<template>
<WebAppLayout>
<section class="space-y-4">
<h1 class="text-xl font-bold text-text">کشف خدمات محلی</h1>
<p class="text-sm text-muted">
به‌زودی: دسته‌بندی‌ها، جستجو و لیست کسب‌وکارها
</p>
<div
class="rounded-2xl border border-dashed border-border bg-surface-2 p-6 text-center text-sm text-muted"
>
فاز بعدی — صفحهٔ خانه
</div>
</section>
</WebAppLayout>
</template>
<script setup lang="ts">
import WebAppLayout from '@/layouts/WebAppLayout.vue';
</script>
+13
View File
@@ -0,0 +1,13 @@
<template>
<WebAppLayout>
<h1 class="mb-4 text-xl font-bold text-text">مدیریت کسب‌وکار</h1>
<p class="mb-4 text-sm text-muted">خدمات، ویژگی‌ها و رزروهای ورودی</p>
<div class="rounded-2xl border border-dashed border-border bg-surface-2 p-6 text-center text-sm text-muted">
به‌زودی — پنل صاحب کسب‌وکار
</div>
</WebAppLayout>
</template>
<script setup lang="ts">
import WebAppLayout from '@/layouts/WebAppLayout.vue';
</script>
+38
View File
@@ -0,0 +1,38 @@
<template>
<WebAppLayout>
<h1 class="mb-4 text-xl font-bold text-text">پروفایل</h1>
<dl v-if="auth.user" class="space-y-3 rounded-2xl border border-border bg-surface-2 p-4">
<div>
<dt class="text-xs text-muted">موبایل</dt>
<dd class="font-medium" dir="ltr">{{ auth.user.mobile }}</dd>
</div>
<div>
<dt class="text-xs text-muted">نام</dt>
<dd class="font-medium">{{ auth.user.fullName ?? '—' }}</dd>
</div>
<div>
<dt class="text-xs text-muted">نقش</dt>
<dd class="font-medium">{{ roleLabel }}</dd>
</div>
</dl>
</WebAppLayout>
</template>
<script setup lang="ts">
import { computed } from 'vue';
import WebAppLayout from '@/layouts/WebAppLayout.vue';
import { useAuthStore } from '@/stores/auth';
const auth = useAuthStore();
const roleLabel = computed(() => {
switch (auth.user?.role) {
case 'admin':
return 'مدیر سیستم';
case 'business_owner':
return 'صاحب کسب‌وکار';
default:
return 'مشتری';
}
});
</script>