Skip to content

Commit 8b2486e

Browse files
author
Samet
committed
refactor: extract partner data module and optimize logo rendering
1 parent c71134e commit 8b2486e

File tree

4 files changed

+101
-73
lines changed

4 files changed

+101
-73
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,7 @@ mapora-next/
9898
│ └─ app/
9999
│ ├─ page.tsx
100100
│ ├─ layout.tsx
101+
│ ├─ data/partners.ts
101102
│ ├─ robots.ts
102103
│ ├─ sitemap.ts
103104
│ └─ cerez-politikasi/

next.config.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,20 @@ const nextConfig: NextConfig = {
44
output: "export",
55
images: {
66
unoptimized: true,
7+
remotePatterns: [
8+
{
9+
protocol: "https",
10+
hostname: "encrypted-tbn0.gstatic.com",
11+
},
12+
{
13+
protocol: "https",
14+
hostname: "www.find.com.tr",
15+
},
16+
{
17+
protocol: "https",
18+
hostname: "kentagri.com.tr",
19+
},
20+
],
721
},
822
trailingSlash: true,
923
};

src/app/data/partners.ts

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
export type PartnerBusiness = {
2+
name: string;
3+
logo: string;
4+
logoUrl?: string;
5+
category: string;
6+
location: string;
7+
website?: string;
8+
instagram?: string;
9+
facebook?: string;
10+
status?: string;
11+
};
12+
13+
export const partnerBusinesses: PartnerBusiness[] = [
14+
{
15+
name: "ERLER AVM",
16+
logo: "EA",
17+
logoUrl:
18+
"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSbDfk-EZ-HsR9_y_0trWFpHViSzOsRmXavGQ&s",
19+
category: "Perakende / AVM",
20+
location: "Bursa / Karacabey",
21+
website: "https://erleravm.com",
22+
instagram: "https://www.instagram.com/erleravm/",
23+
facebook: "https://www.facebook.com/erleravm",
24+
},
25+
{
26+
name: "Helvacı Yakub Efendi",
27+
logo: "HY",
28+
logoUrl: "https://kentagri.com.tr/images/firms/158/l/helvaci-yakuppng-6.jpg",
29+
category: "Gıda Perakende",
30+
location: "Çok Şubeli",
31+
website: "https://helvaciyakubefendi.com",
32+
},
33+
{
34+
name: "Roll Mobilya",
35+
logo: "RM",
36+
logoUrl:
37+
"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcR7pUGhRpxJdO6-Cr_NTWv4QXan7KK2Xi3T5g&s",
38+
category: "Mobilya Perakende",
39+
location: "Bursa / İnegöl",
40+
website: "https://rollmobilya.com",
41+
},
42+
{
43+
name: "Karacabey Gross Market",
44+
logo: "KG",
45+
logoUrl: "https://www.find.com.tr/assets/images/Uploads/Company/1566377/find_2021714_165744561.jpg",
46+
category: "Market",
47+
location: "Bursa / Karacabey",
48+
},
49+
{
50+
name: "FullMark",
51+
logo: "FM",
52+
logoUrl:
53+
"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTrrvRjPm3ryx0rQySpxfheh-c4Zs8PZNy2QQ&s",
54+
category: "Perakende",
55+
location: "Türkiye",
56+
},
57+
{
58+
name: "Ev Dünyası",
59+
logo: "ED",
60+
logoUrl:
61+
"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRkQs-m0UUxxa1lrVgumR2Mc_HQStCuw7Iieg&s",
62+
category: "Ev Yaşam / Perakende",
63+
location: "Bursa",
64+
},
65+
];
66+
67+
export const partnerBannerItems = [...partnerBusinesses, ...partnerBusinesses];
68+
export const partnerBannerItemsReverse = [
69+
...[...partnerBusinesses].reverse(),
70+
...[...partnerBusinesses].reverse(),
71+
];

src/app/page.tsx

Lines changed: 15 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
"use client";
22

3+
import Image from "next/image";
34
import { type FormEvent, useEffect, useId, useRef, useState } from "react";
5+
import {
6+
partnerBannerItems,
7+
partnerBannerItemsReverse,
8+
partnerBusinesses,
9+
type PartnerBusiness,
10+
} from "./data/partners";
411

512
type BillingMode = "monthly" | "yearly";
613

@@ -13,18 +20,6 @@ type Plan = {
1320
features: string[];
1421
};
1522

16-
type PartnerBusiness = {
17-
name: string;
18-
logo: string;
19-
logoUrl?: string;
20-
category: string;
21-
location: string;
22-
website?: string;
23-
instagram?: string;
24-
facebook?: string;
25-
status?: string;
26-
};
27-
2823
type CounterProps = {
2924
label: string;
3025
target: number;
@@ -124,66 +119,6 @@ const faqItems = [
124119
},
125120
];
126121

127-
const partnerBusinesses: PartnerBusiness[] = [
128-
{
129-
name: "ERLER AVM",
130-
logo: "EA",
131-
logoUrl:
132-
"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSbDfk-EZ-HsR9_y_0trWFpHViSzOsRmXavGQ&s",
133-
category: "Perakende / AVM",
134-
location: "Bursa / Karacabey",
135-
website: "https://erleravm.com",
136-
instagram: "https://www.instagram.com/erleravm/",
137-
facebook: "https://www.facebook.com/erleravm",
138-
},
139-
{
140-
name: "Helvacı Yakub Efendi",
141-
logo: "HY",
142-
logoUrl: "https://kentagri.com.tr/images/firms/158/l/helvaci-yakuppng-6.jpg",
143-
category: "Gıda Perakende",
144-
location: "Çok Şubeli",
145-
website: "https://helvaciyakubefendi.com",
146-
},
147-
{
148-
name: "Roll Mobilya",
149-
logo: "RM",
150-
logoUrl:
151-
"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcR7pUGhRpxJdO6-Cr_NTWv4QXan7KK2Xi3T5g&s",
152-
category: "Mobilya Perakende",
153-
location: "Bursa / İnegöl",
154-
website: "https://rollmobilya.com",
155-
},
156-
{
157-
name: "Karacabey Gross Market",
158-
logo: "KG",
159-
logoUrl: "https://www.find.com.tr/assets/images/Uploads/Company/1566377/find_2021714_165744561.jpg",
160-
category: "Market",
161-
location: "Bursa / Karacabey",
162-
},
163-
{
164-
name: "FullMark",
165-
logo: "FM",
166-
logoUrl:
167-
"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTrrvRjPm3ryx0rQySpxfheh-c4Zs8PZNy2QQ&s",
168-
category: "Perakende",
169-
location: "Türkiye",
170-
},
171-
{
172-
name: "Ev Dünyası",
173-
logo: "ED",
174-
logoUrl:
175-
"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRkQs-m0UUxxa1lrVgumR2Mc_HQStCuw7Iieg&s",
176-
category: "Ev Yaşam / Perakende",
177-
location: "Bursa",
178-
},
179-
];
180-
181-
const partnerBannerItems = [...partnerBusinesses, ...partnerBusinesses];
182-
const partnerBannerItemsReverse = [
183-
...[...partnerBusinesses].reverse(),
184-
...[...partnerBusinesses].reverse(),
185-
];
186-
187122
const ceoQuotes = [
188123
{
189124
role: "Kurucu (Perakende Market)",
@@ -533,7 +468,14 @@ function PartnerLogo({
533468
}`}
534469
>
535470
{business.logoUrl ? (
536-
<img src={business.logoUrl} alt={`${business.name} logosu`} loading="lazy" decoding="async" />
471+
<Image
472+
src={business.logoUrl}
473+
alt={`${business.name} logosu`}
474+
width={96}
475+
height={96}
476+
unoptimized
477+
loading="lazy"
478+
/>
537479
) : (
538480
business.logo
539481
)}

0 commit comments

Comments
 (0)