Update package.json scripts, enhance layout with new components, and improve API error handling
Some checks failed
Deploy / deploy (push) Failing after 1h28m6s
Some checks failed
Deploy / deploy (push) Failing after 1h28m6s
- Added new scripts for database operations and temporary production in package.json. - Integrated KaydetBannerLazy component into the layout for improved user notifications. - Enhanced API error handling in the soru route to mark credit exhaustion. - Updated the IletisimPage for better button styling and user experience. - Refactored ListemPage to streamline user flow and improve session handling. - Removed unused ListePaneli component to clean up the codebase.
This commit is contained in:
@@ -61,9 +61,12 @@ function baslik(): string {
|
||||
function kabuk({
|
||||
onizleme,
|
||||
govde,
|
||||
baslikEtiketi,
|
||||
}: {
|
||||
onizleme: string;
|
||||
govde: string;
|
||||
/** <title> içeriği — genelde konuyla aynı. */
|
||||
baslikEtiketi: string;
|
||||
}): string {
|
||||
return `<!doctype html>
|
||||
<html lang="tr">
|
||||
@@ -71,7 +74,7 @@ function kabuk({
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||||
<meta name="color-scheme" content="light">
|
||||
<title>Merhaba, giriş bağlantını gönderdik</title>
|
||||
<title>${kacir(baslikEtiketi)}</title>
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,300;12..96,600&family=Cal+Sans&display=swap" rel="stylesheet">
|
||||
</head>
|
||||
@@ -141,6 +144,7 @@ export function magicLinkEpostasi(url: string): EpostaIcerik {
|
||||
html: kabuk({
|
||||
onizleme: "Giriş bağlantın 5 dakika geçerli.",
|
||||
govde,
|
||||
baslikEtiketi: "Merhaba, giriş bağlantını gönderdik",
|
||||
}),
|
||||
text: [
|
||||
"Merhaba, giriş bağlantını gönderdik",
|
||||
@@ -153,3 +157,49 @@ export function magicLinkEpostasi(url: string): EpostaIcerik {
|
||||
].join("\n"),
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* Kredi bittikten 48 saat sonra giden tek seferlik hatırlatma. KVKK sınıfı
|
||||
* netleşene dek yalnızca işlemsel dil: hesaptaki mevcut listeyi hatırlatır,
|
||||
* ödeme ancak ikincil bir cümlede geçer (bkz. PRD İP-A / A2).
|
||||
*/
|
||||
export function krediHatirlatmaEpostasi(): EpostaIcerik {
|
||||
const listemUrl = `${SITE_URL}/listem`;
|
||||
const konu = "Listen seni bekliyor — açık satırların hazır";
|
||||
const govde = `
|
||||
<h1 style="margin:0 0 12px;font-family:${BASLIK_TIPI};font-size:22px;line-height:1.35;font-weight:700;color:${LACIVERT};">
|
||||
Listen seni bekliyor
|
||||
</h1>
|
||||
<p style="margin:0 0 24px;">
|
||||
Yapay zekânın senin sıralamana göre kurduğu tercih listesi hesabında
|
||||
duruyor; gerekçeleri ve risk notlarıyla
|
||||
<strong style="color:${LACIVERT};">açık satırların hazır</strong>.
|
||||
Kaldığın yerden devam edebilirsin.
|
||||
</p>
|
||||
${buton(listemUrl, "Listeni gör")}
|
||||
<p style="margin:24px 0 0;font-size:13px;">
|
||||
Listenin tamamını açmak ya da danışmana soru sormak istersen kredi
|
||||
yükleyebilirsin — listen ve sohbet geçmişin olduğu gibi durur.
|
||||
</p>`;
|
||||
|
||||
return {
|
||||
subject: konu,
|
||||
html: kabuk({
|
||||
onizleme: "Yapay zekânın kurduğu listen hesabında duruyor.",
|
||||
govde,
|
||||
baslikEtiketi: konu,
|
||||
}),
|
||||
text: [
|
||||
"Listen seni bekliyor",
|
||||
"",
|
||||
"Yapay zekânın senin sıralamana göre kurduğu tercih listesi hesabında",
|
||||
"duruyor; gerekçeleri ve risk notlarıyla açık satırların hazır.",
|
||||
"",
|
||||
"Listeni görmek için:",
|
||||
listemUrl,
|
||||
"",
|
||||
"Listenin tamamını açmak ya da danışmana soru sormak istersen kredi",
|
||||
"yükleyebilirsin — listen ve sohbet geçmişin olduğu gibi durur.",
|
||||
].join("\n"),
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user