Yayın durdurma, kanal duraklat/devam (tekli+toplu), şimdi kontrol et, manuel URL ile zorla kayıt başlatma, canlı player+log önizleme, oturum süre sayacı, başarısız/takılı render için tekrar dene ve iptal, poll aralığı + ham segment TTL'yi panelden canlı değiştirme, cookie bayatlık uyarısı, Telegram bildirim aç/kapa, ve kullanım/maliyet özeti (/stats). api-daemon'ın yeni state-değiştiren endpoint'leri (stop/force-start/ render/cancel) INTERNAL_API_TOKEN ile korunuyor — bu daemon'ın portu Coolify'de public'e açık olduğu için korumasız bırakmak güvenlik açığı olurdu. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
25 lines
446 B
TypeScript
25 lines
446 B
TypeScript
"use client";
|
|
|
|
export function ConfirmButton({
|
|
confirmText,
|
|
label,
|
|
variant = "err",
|
|
}: {
|
|
confirmText: string;
|
|
label: string;
|
|
variant?: "err" | "warn" | "muted" | "ok";
|
|
}) {
|
|
return (
|
|
<button
|
|
type="submit"
|
|
className={`badge ${variant}`}
|
|
style={{ border: "none", cursor: "pointer" }}
|
|
onClick={(e) => {
|
|
if (!confirm(confirmText)) e.preventDefault();
|
|
}}
|
|
>
|
|
{label}
|
|
</button>
|
|
);
|
|
}
|