fix: correction de l'erreur navigator is not defined dans SeriesHeader
This commit is contained in:
@@ -3,6 +3,7 @@
|
|||||||
import Image from "next/image";
|
import Image from "next/image";
|
||||||
import { ImageOff } from "lucide-react";
|
import { ImageOff } from "lucide-react";
|
||||||
import { KomgaSeries } from "@/types/komga";
|
import { KomgaSeries } from "@/types/komga";
|
||||||
|
import { useState, useEffect } from "react";
|
||||||
|
|
||||||
interface SeriesHeaderProps {
|
interface SeriesHeaderProps {
|
||||||
series: KomgaSeries;
|
series: KomgaSeries;
|
||||||
@@ -10,6 +11,22 @@ interface SeriesHeaderProps {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function SeriesHeader({ series, serverUrl }: SeriesHeaderProps) {
|
export function SeriesHeader({ series, serverUrl }: SeriesHeaderProps) {
|
||||||
|
const [languageDisplay, setLanguageDisplay] = useState<string>(series.metadata.language);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
try {
|
||||||
|
if (series.metadata.language) {
|
||||||
|
const displayNames = new Intl.DisplayNames([navigator.language || "fr-FR"], {
|
||||||
|
type: "language",
|
||||||
|
});
|
||||||
|
setLanguageDisplay(displayNames.of(series.metadata.language) || series.metadata.language);
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.error("Erreur lors de la traduction de la langue:", error);
|
||||||
|
setLanguageDisplay(series.metadata.language);
|
||||||
|
}
|
||||||
|
}, [series.metadata.language]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="flex flex-col md:flex-row gap-8">
|
<div className="flex flex-col md:flex-row gap-8">
|
||||||
{/* Couverture */}
|
{/* Couverture */}
|
||||||
@@ -73,10 +90,7 @@ export function SeriesHeader({ series, serverUrl }: SeriesHeaderProps) {
|
|||||||
)}
|
)}
|
||||||
{series.metadata.language && (
|
{series.metadata.language && (
|
||||||
<div>
|
<div>
|
||||||
<span className="font-medium">Langue :</span>{" "}
|
<span className="font-medium">Langue :</span> {languageDisplay}
|
||||||
{new Intl.DisplayNames([navigator.language], { type: "language" }).of(
|
|
||||||
series.metadata.language
|
|
||||||
)}
|
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{series.metadata.ageRating && (
|
{series.metadata.ageRating && (
|
||||||
|
|||||||
Reference in New Issue
Block a user