From b3dd977f048a3590ec883915f7f661013078681d Mon Sep 17 00:00:00 2001
From: Mahdi
Date: Wed, 3 Jun 2026 16:35:53 +0330
Subject: [PATCH] add skeletin
---
.../admin/BusinessServicesSection.vue | 3 +-
src/components/ui/AppSkeleton.vue | 13 ++++++
src/components/ui/BusinessCardSkeleton.vue | 41 +++++++++++++++++++
src/components/ui/FormPageSkeleton.vue | 15 +++++++
src/components/ui/InlineCardSkeleton.vue | 12 ++++++
src/components/ui/ListCardSkeleton.vue | 37 +++++++++++++++++
src/components/ui/ServiceGridSkeleton.vue | 19 +++++++++
src/components/ui/StatGridSkeleton.vue | 15 +++++++
src/views/BookingsView.vue | 3 +-
src/views/BusinessRequestsView.vue | 3 +-
src/views/BusinessesView.vue | 11 ++---
src/views/CategoriesView.vue | 3 +-
src/views/DashboardView.vue | 7 +++-
src/views/ServiceRequestsView.vue | 3 +-
src/views/ServiceTemplatesView.vue | 3 +-
src/views/UsersView.vue | 3 +-
16 files changed, 176 insertions(+), 15 deletions(-)
create mode 100644 src/components/ui/AppSkeleton.vue
create mode 100644 src/components/ui/BusinessCardSkeleton.vue
create mode 100644 src/components/ui/FormPageSkeleton.vue
create mode 100644 src/components/ui/InlineCardSkeleton.vue
create mode 100644 src/components/ui/ListCardSkeleton.vue
create mode 100644 src/components/ui/ServiceGridSkeleton.vue
create mode 100644 src/components/ui/StatGridSkeleton.vue
diff --git a/src/components/admin/BusinessServicesSection.vue b/src/components/admin/BusinessServicesSection.vue
index 43248da..dd368f7 100644
--- a/src/components/admin/BusinessServicesSection.vue
+++ b/src/components/admin/BusinessServicesSection.vue
@@ -9,7 +9,7 @@
{{ error }}
- در حال بارگذاری خدمات…
+
-
+
+
+
+
diff --git a/src/components/ui/BusinessCardSkeleton.vue b/src/components/ui/BusinessCardSkeleton.vue
new file mode 100644
index 0000000..be637d2
--- /dev/null
+++ b/src/components/ui/BusinessCardSkeleton.vue
@@ -0,0 +1,41 @@
+
+
+
+
+
diff --git a/src/components/ui/FormPageSkeleton.vue b/src/components/ui/FormPageSkeleton.vue
new file mode 100644
index 0000000..5af5b9a
--- /dev/null
+++ b/src/components/ui/FormPageSkeleton.vue
@@ -0,0 +1,15 @@
+
+
+
+
+
diff --git a/src/components/ui/InlineCardSkeleton.vue b/src/components/ui/InlineCardSkeleton.vue
new file mode 100644
index 0000000..2f0a659
--- /dev/null
+++ b/src/components/ui/InlineCardSkeleton.vue
@@ -0,0 +1,12 @@
+
+
+
+
+
diff --git a/src/components/ui/ListCardSkeleton.vue b/src/components/ui/ListCardSkeleton.vue
new file mode 100644
index 0000000..97f329c
--- /dev/null
+++ b/src/components/ui/ListCardSkeleton.vue
@@ -0,0 +1,37 @@
+
+
+
+
+
diff --git a/src/components/ui/ServiceGridSkeleton.vue b/src/components/ui/ServiceGridSkeleton.vue
new file mode 100644
index 0000000..4d8aa33
--- /dev/null
+++ b/src/components/ui/ServiceGridSkeleton.vue
@@ -0,0 +1,19 @@
+
+
+
+
+
diff --git a/src/components/ui/StatGridSkeleton.vue b/src/components/ui/StatGridSkeleton.vue
new file mode 100644
index 0000000..0ca5c74
--- /dev/null
+++ b/src/components/ui/StatGridSkeleton.vue
@@ -0,0 +1,15 @@
+
+
+
+
+
diff --git a/src/views/BookingsView.vue b/src/views/BookingsView.vue
index f079e0b..5b58213 100644
--- a/src/views/BookingsView.vue
+++ b/src/views/BookingsView.vue
@@ -22,7 +22,7 @@
{{ error }}
- در حال بارگذاری…
+
{{
@@ -66,6 +66,7 @@ import { deleteBooking, fetchBookings } from '@/api/bookings';
import { fetchBusinesses } from '@/api/businesses';
import type { Booking, BookingStatus, Business } from '@/api/types';
import { ApiError } from '@/api/client';
+import ListCardSkeleton from '@/components/ui/ListCardSkeleton.vue';
import AppBadge from '@/components/ui/AppBadge.vue';
import AppIconButton from '@/components/ui/AppIconButton.vue';
import AppSelect from '@/components/ui/AppSelect.vue';
diff --git a/src/views/BusinessRequestsView.vue b/src/views/BusinessRequestsView.vue
index 94f82f4..7fd6c2e 100644
--- a/src/views/BusinessRequestsView.vue
+++ b/src/views/BusinessRequestsView.vue
@@ -28,7 +28,7 @@
{{ error }}
- در حال بارگذاری…
+
درخواستی یافت نشد.
@@ -95,6 +95,7 @@ import {
import type { BusinessRegistrationRequest, BusinessRegistrationStatus } from '@/api/types';
import { ApiError } from '@/api/client';
import AppBadge from '@/components/ui/AppBadge.vue';
+import ListCardSkeleton from '@/components/ui/ListCardSkeleton.vue';
import AppButton from '@/components/ui/AppButton.vue';
import AppModal from '@/components/ui/AppModal.vue';
import AppTextarea from '@/components/ui/AppTextarea.vue';
diff --git a/src/views/BusinessesView.vue b/src/views/BusinessesView.vue
index 197f6a5..3009f7f 100644
--- a/src/views/BusinessesView.vue
+++ b/src/views/BusinessesView.vue
@@ -30,7 +30,7 @@
{{ error }}
- در حال بارگذاری…
+
{{
@@ -116,12 +116,7 @@