From aa1b17935db27b6cb805867eb65a4509988a386d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sedat=20=C3=96ZT=C3=9CRK?= <76204082+iamsedatozturk@users.noreply.github.com> Date: Thu, 21 Aug 2025 15:08:15 +0300 Subject: [PATCH] Public sayfalardaki Loading --- ui/src/components/orders/ProductCatalog.tsx | 28 +++++++++++++++------ ui/src/views/public/About.tsx | 14 ++++++++--- ui/src/views/public/Blog.tsx | 4 +-- ui/src/views/public/BlogDetail.tsx | 6 +++-- ui/src/views/public/Contact.tsx | 10 ++++++++ ui/src/views/public/Services.tsx | 10 ++++++++ 6 files changed, 58 insertions(+), 14 deletions(-) diff --git a/ui/src/components/orders/ProductCatalog.tsx b/ui/src/components/orders/ProductCatalog.tsx index b19d1427..4f98df00 100644 --- a/ui/src/components/orders/ProductCatalog.tsx +++ b/ui/src/components/orders/ProductCatalog.tsx @@ -1,10 +1,10 @@ import React, { useState, useMemo, useEffect } from 'react' -import { FaFilter, FaSearch } from 'react-icons/fa'; +import { FaFilter, FaSearch } from 'react-icons/fa' import { ProductCard } from './ProductCard' import { addItemToCart, CartState } from '@/utils/cartUtils' import { BillingCycle, ProductDto } from '@/proxy/order/models' import { OrderService } from '@/services/order.service' -import { useLocalization } from '@/utils/hooks/useLocalization'; +import { useLocalization } from '@/utils/hooks/useLocalization' interface ProductCatalogProps { searchQuery: string @@ -90,7 +90,9 @@ export const ProductCatalog: React.FC = ({
-

{translate('::Public.products.categories')}

+

+ {translate('::Public.products.categories')} +

{categories.map((category) => ( @@ -103,7 +105,11 @@ export const ProductCatalog: React.FC = ({ : 'text-gray-600 hover:bg-gray-50 hover:text-gray-900' }`} > - {category === 'all' ? translate('::Public.products.categories.all') : translate('::' + category)} + + {category === 'all' + ? translate('::Public.products.categories.all') + : translate('::' + category)} + = ({
-

{translate('::Public.products.search.title')}

+

+ {translate('::Public.products.search.title')} +

@@ -139,7 +147,11 @@ export const ProductCatalog: React.FC = ({
{loading ? ( -
{translate('::Public.products.loading')}
+
+
+
+
+
) : ( <>
@@ -159,7 +171,9 @@ export const ProductCatalog: React.FC = ({
-

{translate('::Public.products.empty.title')}

+

+ {translate('::Public.products.empty.title')} +

{translate('::Public.products.empty.description')}

)} diff --git a/ui/src/views/public/About.tsx b/ui/src/views/public/About.tsx index 23d53c73..5075788d 100644 --- a/ui/src/views/public/About.tsx +++ b/ui/src/views/public/About.tsx @@ -1,9 +1,9 @@ import React, { useEffect, useState } from 'react' -import { useLocalization } from '@/utils/hooks/useLocalization' import { Helmet } from 'react-helmet' import navigationIcon from '@/configs/navigation-icon.config' import { AboutDto } from '@/proxy/about/models' import { getAbout } from '@/services/about' +import { useLocalization } from '@/utils/hooks/useLocalization' const About: React.FC = () => { const { translate } = useLocalization() @@ -25,7 +25,6 @@ const About: React.FC = () => { useEffect(() => { setLoading(true) - const fetchServices = async () => { try { const result = await getAbout() @@ -36,10 +35,19 @@ const About: React.FC = () => { setLoading(false) } } - fetchServices() }, []) + if (loading) { + return ( +
+
+
+
+
+ ) + } + return ( <> { if (loading && posts.length === 0) { return ( -
+
-

Blog yazıları yükleniyor...

+
) diff --git a/ui/src/views/public/BlogDetail.tsx b/ui/src/views/public/BlogDetail.tsx index 46c590ae..e1c52245 100644 --- a/ui/src/views/public/BlogDetail.tsx +++ b/ui/src/views/public/BlogDetail.tsx @@ -57,8 +57,10 @@ const BlogDetail: React.FC = () => { if (loading) { return ( -
-

Loading...

+
+
+
+
) } diff --git a/ui/src/views/public/Contact.tsx b/ui/src/views/public/Contact.tsx index 29a8b1f2..6b014d5a 100644 --- a/ui/src/views/public/Contact.tsx +++ b/ui/src/views/public/Contact.tsx @@ -37,6 +37,16 @@ const Contact: React.FC = () => { fetchServices() }, []) + if (loading) { + return ( +
+
+
+
+
+ ) + } + return (
{ fetchServices() }, []) + if (loading) { + return ( +
+
+
+
+
+ ) + } + return (