Enhance university-related components by adding logo support and improving search functionality. Introduced a new "logolar" script in package.json, updated KatalogArama to include rehber results, and integrated UniLogo component across various pages for better visual representation. Refactored UniversiteIcerik and TercihHaritasi to display logos conditionally, enhancing user experience. Additionally, made adjustments to styles and layout for improved responsiveness and clarity.
All checks were successful
Deploy / deploy (push) Successful in 16m24s
All checks were successful
Deploy / deploy (push) Successful in 16m24s
This commit is contained in:
30
src/lib/arama.ts
Normal file
30
src/lib/arama.ts
Normal file
@@ -0,0 +1,30 @@
|
||||
/**
|
||||
* Katalog aramasının paylaşılan metin eşleştirme yardımcıları.
|
||||
* Hem /api/katalog-ara route'u hem de client'taki rehber araması kullanır —
|
||||
* iki taraf aynı normalize kurallarıyla eşleşmeli.
|
||||
*/
|
||||
|
||||
export function aramaNormalize(metin: string): string {
|
||||
return metin
|
||||
.toLocaleLowerCase("tr-TR")
|
||||
.replace(/ı/g, "i")
|
||||
.replace(/ş/g, "s")
|
||||
.replace(/ğ/g, "g")
|
||||
.replace(/ü/g, "u")
|
||||
.replace(/ö/g, "o")
|
||||
.replace(/ç/g, "c")
|
||||
.replace(/â/g, "a")
|
||||
.replace(/î/g, "i")
|
||||
.replace(/û/g, "u")
|
||||
.normalize("NFKD")
|
||||
.replace(/[̀-ͯ]/g, "");
|
||||
}
|
||||
|
||||
/** 0 = tam eşleşme, 1 = baş, 2 = kelime başı, 3 = geçiyor */
|
||||
export function eslesmePuani(ad: string, sorgu: string): number {
|
||||
const normalAd = aramaNormalize(ad);
|
||||
if (normalAd === sorgu) return 0;
|
||||
if (normalAd.startsWith(sorgu)) return 1;
|
||||
if (normalAd.split(/\s+/).some((kelime) => kelime.startsWith(sorgu))) return 2;
|
||||
return 3;
|
||||
}
|
||||
@@ -44,9 +44,11 @@ export async function createOgSayfaImage(opts: {
|
||||
eyebrow: string;
|
||||
title: string;
|
||||
description?: string;
|
||||
/** data: URI — sağ üstte beyaz rozet içinde gösterilir (üniversite logosu). */
|
||||
logo?: string;
|
||||
}): Promise<ImageResponse> {
|
||||
const fonts = await loadRehberOgFonts();
|
||||
const { eyebrow, title, description } = opts;
|
||||
const { eyebrow, title, description, logo } = opts;
|
||||
|
||||
return new ImageResponse(
|
||||
(
|
||||
@@ -136,6 +138,25 @@ export async function createOgSayfaImage(opts: {
|
||||
}}
|
||||
>
|
||||
<span>{eyebrow}</span>
|
||||
{logo ? (
|
||||
<span
|
||||
style={{
|
||||
display: "flex",
|
||||
marginLeft: "auto",
|
||||
alignItems: "center",
|
||||
justifyContent: "center",
|
||||
width: 108,
|
||||
height: 108,
|
||||
borderRadius: 24,
|
||||
background: "white",
|
||||
border: "2px solid rgba(37,99,235,0.15)",
|
||||
boxShadow: "0 8px 24px rgba(15,23,42,0.08)",
|
||||
}}
|
||||
>
|
||||
{/* eslint-disable-next-line @next/next/no-img-element */}
|
||||
<img src={logo} alt="" width={84} height={84} />
|
||||
</span>
|
||||
) : null}
|
||||
</div>
|
||||
|
||||
<div
|
||||
|
||||
238
src/lib/uni-logolar.ts
Normal file
238
src/lib/uni-logolar.ts
Normal file
@@ -0,0 +1,238 @@
|
||||
// Bu dosya scripts/logo-indir.ts tarafından üretilir — elle düzenleme.
|
||||
// Logo dosyaları: public/uni-logo/<slug>.png (kaynak: YÖK Atlas)
|
||||
|
||||
export const UNI_LOGO_SLUGLARI: ReadonlySet<string> = new Set([
|
||||
"abdullah-gul-universitesi",
|
||||
"acibadem-mehmet-ali-aydinlar-universitesi",
|
||||
"ada-kent-universitesi",
|
||||
"adana-alparslan-turkes-bilim-ve-teknoloji-universitesi",
|
||||
"adiyaman-universitesi",
|
||||
"afyon-kocatepe-universitesi",
|
||||
"afyonkarahisar-saglik-bilimleri-universitesi",
|
||||
"agri-ibrahim-cecen-universitesi",
|
||||
"akdeniz-karpaz-universitesi",
|
||||
"akdeniz-universitesi",
|
||||
"aksaray-universitesi",
|
||||
"alanya-alaaddin-keykubat-universitesi",
|
||||
"alanya-universitesi",
|
||||
"altinbas-universitesi",
|
||||
"amasya-universitesi",
|
||||
"anadolu-universitesi",
|
||||
"ankara-bilim-universitesi",
|
||||
"ankara-haci-bayram-veli-universitesi",
|
||||
"ankara-medipol-universitesi",
|
||||
"ankara-muzik-ve-guzel-sanatlar-universitesi",
|
||||
"ankara-sosyal-bilimler-universitesi",
|
||||
"ankara-universitesi",
|
||||
"ankara-yildirim-beyazit-universitesi",
|
||||
"antalya-belek-universitesi",
|
||||
"antalya-bilim-universitesi",
|
||||
"ardahan-universitesi",
|
||||
"arkin-yaratici-sanatlar-ve-tasarim-universitesi",
|
||||
"artvin-coruh-universitesi",
|
||||
"atasehir-adiguzel-meslek-yuksekokulu",
|
||||
"ataturk-universitesi",
|
||||
"atilim-universitesi",
|
||||
"avrasya-universitesi",
|
||||
"aydin-adnan-menderes-universitesi",
|
||||
"azerbaycan-devlet-pedagoji-universitesi",
|
||||
"bahcesehir-kibris-universitesi",
|
||||
"bahcesehir-universitesi",
|
||||
"balikesir-universitesi",
|
||||
"bandirma-onyedi-eylul-universitesi",
|
||||
"bartin-universitesi",
|
||||
"baskent-universitesi",
|
||||
"batman-universitesi",
|
||||
"bayburt-universitesi",
|
||||
"beykoz-universitesi",
|
||||
"bezm-i-alem-vakif-universitesi",
|
||||
"bilecik-seyh-edebali-universitesi",
|
||||
"bingol-universitesi",
|
||||
"biruni-universitesi",
|
||||
"bitlis-eren-universitesi",
|
||||
"bogazici-universitesi",
|
||||
"bolu-abant-izzet-baysal-universitesi",
|
||||
"burdur-mehmet-akif-ersoy-universitesi",
|
||||
"bursa-teknik-universitesi",
|
||||
"bursa-uludag-universitesi",
|
||||
"cag-universitesi",
|
||||
"canakkale-onsekiz-mart-universitesi",
|
||||
"cankaya-universitesi",
|
||||
"cankiri-karatekin-universitesi",
|
||||
"cukurova-universitesi",
|
||||
"demiroglu-bilim-universitesi",
|
||||
"dicle-universitesi",
|
||||
"dogu-akdeniz-universitesi",
|
||||
"dogus-universitesi",
|
||||
"dokuz-eylul-universitesi",
|
||||
"duzce-universitesi",
|
||||
"ege-universitesi",
|
||||
"erciyes-universitesi",
|
||||
"erzincan-binali-yildirim-universitesi",
|
||||
"erzurum-teknik-universitesi",
|
||||
"eskisehir-osmangazi-universitesi",
|
||||
"eskisehir-teknik-universitesi",
|
||||
"fatih-sultan-mehmet-vakif-universitesi",
|
||||
"fenerbahce-universitesi",
|
||||
"firat-universitesi",
|
||||
"galatasaray-universitesi",
|
||||
"gazi-universitesi",
|
||||
"gaziantep-islam-bilim-ve-teknoloji-universitesi",
|
||||
"gaziantep-universitesi",
|
||||
"gebze-teknik-universitesi",
|
||||
"giresun-universitesi",
|
||||
"girne-amerikan-universitesi",
|
||||
"girne-universitesi",
|
||||
"gumushane-universitesi",
|
||||
"hacettepe-universitesi",
|
||||
"hakkari-universitesi",
|
||||
"halic-universitesi",
|
||||
"harran-universitesi",
|
||||
"hasan-kalyoncu-universitesi",
|
||||
"hatay-mustafa-kemal-universitesi",
|
||||
"hitit-universitesi",
|
||||
"hoca-ahmet-yesevi-uluslararasi-turk-kazak-universitesi",
|
||||
"ibn-haldun-universitesi",
|
||||
"icisleri-bakanligi-ve-milli-savunma-bakanligi-adina-saglik-bilimleri-universitesinde-egitim-alacaklar",
|
||||
"igdir-universitesi",
|
||||
"ihsan-dogramaci-bilkent-universitesi",
|
||||
"inonu-universitesi",
|
||||
"isik-universitesi",
|
||||
"iskenderun-teknik-universitesi",
|
||||
"isparta-uygulamali-bilimler-universitesi",
|
||||
"istanbul-29-mayis-universitesi",
|
||||
"istanbul-arel-universitesi",
|
||||
"istanbul-atlas-universitesi",
|
||||
"istanbul-aydin-universitesi",
|
||||
"istanbul-beykent-universitesi",
|
||||
"istanbul-bilgi-universitesi",
|
||||
"istanbul-esenyurt-universitesi",
|
||||
"istanbul-galata-universitesi",
|
||||
"istanbul-gedik-universitesi",
|
||||
"istanbul-gelisim-universitesi",
|
||||
"istanbul-kent-universitesi",
|
||||
"istanbul-kultur-universitesi",
|
||||
"istanbul-medeniyet-universitesi",
|
||||
"istanbul-medipol-universitesi",
|
||||
"istanbul-nisantasi-universitesi",
|
||||
"istanbul-okan-universitesi",
|
||||
"istanbul-rumeli-universitesi",
|
||||
"istanbul-sabahattin-zaim-universitesi",
|
||||
"istanbul-saglik-ve-sosyal-bilimler-meslek-yuksekokulu",
|
||||
"istanbul-saglik-ve-teknoloji-universitesi",
|
||||
"istanbul-sisli-meslek-yuksekokulu",
|
||||
"istanbul-teknik-universitesi",
|
||||
"istanbul-ticaret-universitesi",
|
||||
"istanbul-topkapi-universitesi",
|
||||
"istanbul-universitesi",
|
||||
"istanbul-universitesi-cerrahpasa",
|
||||
"istanbul-yeni-yuzyil-universitesi",
|
||||
"istinye-universitesi",
|
||||
"izmir-bakircay-universitesi",
|
||||
"izmir-demokrasi-universitesi",
|
||||
"izmir-ekonomi-universitesi",
|
||||
"izmir-katip-celebi-universitesi",
|
||||
"izmir-kavram-meslek-yuksekokulu",
|
||||
"izmir-tinaztepe-universitesi",
|
||||
"izmir-yuksek-teknoloji-enstitusu",
|
||||
"kadir-has-universitesi",
|
||||
"kafkas-universitesi",
|
||||
"kahramanmaras-istiklal-universitesi",
|
||||
"kahramanmaras-sutcu-imam-universitesi",
|
||||
"kapadokya-universitesi",
|
||||
"karabuk-universitesi",
|
||||
"karadeniz-teknik-universitesi",
|
||||
"karamanoglu-mehmetbey-universitesi",
|
||||
"kastamonu-universitesi",
|
||||
"kayseri-universitesi",
|
||||
"kibris-amerikan-universitesi",
|
||||
"kibris-aydin-universitesi",
|
||||
"kibris-bati-universitesi",
|
||||
"kibris-ilim-universitesi",
|
||||
"kibris-saglik-ve-toplum-bilimleri-universitesi",
|
||||
"kilis-7-aralik-universitesi",
|
||||
"kirgizistan-turkiye-manas-universitesi",
|
||||
"kirikkale-universitesi",
|
||||
"kirklareli-universitesi",
|
||||
"kirsehir-ahi-evran-universitesi",
|
||||
"koc-universitesi",
|
||||
"kocaeli-saglik-ve-teknoloji-universitesi",
|
||||
"kocaeli-universitesi",
|
||||
"konya-gida-ve-tarim-universitesi",
|
||||
"konya-teknik-universitesi",
|
||||
"kto-karatay-universitesi",
|
||||
"kutahya-dumlupinar-universitesi",
|
||||
"kutahya-saglik-bilimleri-universitesi",
|
||||
"lefke-avrupa-universitesi",
|
||||
"lokman-hekim-universitesi",
|
||||
"malatya-turgut-ozal-universitesi",
|
||||
"maltepe-universitesi",
|
||||
"manisa-celal-bayar-universitesi",
|
||||
"mardin-artuklu-universitesi",
|
||||
"marmara-universitesi",
|
||||
"mef-universitesi",
|
||||
"mersin-universitesi",
|
||||
"mimar-sinan-guzel-sanatlar-universitesi",
|
||||
"mudanya-universitesi",
|
||||
"mugla-sitki-kocman-universitesi",
|
||||
"munzur-universitesi",
|
||||
"mus-alparslan-universitesi",
|
||||
"necmettin-erbakan-universitesi",
|
||||
"nevsehir-haci-bektas-veli-universitesi",
|
||||
"nigde-omer-halisdemir-universitesi",
|
||||
"nuh-naci-yazgan-universitesi",
|
||||
"ondokuz-mayis-universitesi",
|
||||
"ordu-universitesi",
|
||||
"orta-dogu-teknik-universitesi",
|
||||
"osmaniye-korkut-ata-universitesi",
|
||||
"ostim-teknik-universitesi",
|
||||
"ozyegin-universitesi",
|
||||
"pamukkale-universitesi",
|
||||
"piri-reis-universitesi",
|
||||
"rauf-denktas-universitesi",
|
||||
"recep-tayyip-erdogan-universitesi",
|
||||
"sabanci-universitesi",
|
||||
"saglik-bilimleri-universitesi",
|
||||
"sakarya-universitesi",
|
||||
"sakarya-uygulamali-bilimler-universitesi",
|
||||
"samsun-universitesi",
|
||||
"sanko-universitesi",
|
||||
"selcuk-universitesi",
|
||||
"siirt-universitesi",
|
||||
"sinop-universitesi",
|
||||
"sirnak-universitesi",
|
||||
"sivas-bilim-ve-teknoloji-universitesi",
|
||||
"sivas-cumhuriyet-universitesi",
|
||||
"suleyman-demirel-universitesi",
|
||||
"tarsus-universitesi",
|
||||
"ted-universitesi",
|
||||
"tekirdag-namik-kemal-universitesi",
|
||||
"tiran-new-york-universitesi",
|
||||
"tobb-ekonomi-ve-teknoloji-universitesi",
|
||||
"tokat-gaziosmanpasa-universitesi",
|
||||
"toros-universitesi",
|
||||
"trabzon-universitesi",
|
||||
"trakya-universitesi",
|
||||
"turk-alman-universitesi",
|
||||
"turk-hava-kurumu-universitesi",
|
||||
"ufuk-universitesi",
|
||||
"uluslararasi-balkan-universitesi",
|
||||
"uluslararasi-final-universitesi",
|
||||
"uluslararasi-kibris-universitesi",
|
||||
"uluslararasi-saraybosna-universitesi",
|
||||
"usak-universitesi",
|
||||
"uskudar-universitesi",
|
||||
"van-yuzuncu-yil-universitesi",
|
||||
"yakin-dogu-universitesi",
|
||||
"yalova-universitesi",
|
||||
"yasar-universitesi",
|
||||
"yeditepe-universitesi",
|
||||
"yildiz-teknik-universitesi",
|
||||
"yozgat-bozok-universitesi",
|
||||
"yuksek-ihtisas-universitesi",
|
||||
"zonguldak-bulent-ecevit-universitesi",
|
||||
]);
|
||||
|
||||
export function uniLogoYolu(slug: string): string | null {
|
||||
return UNI_LOGO_SLUGLARI.has(slug) ? `/uni-logo/${slug}.png` : null;
|
||||
}
|
||||
Reference in New Issue
Block a user