UPDATE: new language
All checks were successful
Gitea Auto Deploy / Deploy-Container (push) Successful in 56s

This commit is contained in:
2026-04-14 12:31:35 +07:00
parent 4c1d0b9a59
commit 90f1cf4f40
12 changed files with 16 additions and 11 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -40,7 +40,7 @@ export default function CharacterInfoCard({ character, selectedCharacters, onCha
height={48} height={48}
unoptimized unoptimized
crossOrigin="anonymous" crossOrigin="anonymous"
src={`${process.env.CDN_URL}/${damageType?.[mapAvatar?.[character.avatar_id.toString()]?.DamageType || ""].Icon}`} src={`${process.env.CDN_URL}/${damageType?.[mapAvatar?.[character.avatar_id.toString()]?.DamageType || ""]?.Icon}`}
className="absolute top-0 left-0 w-10 h-10 rounded-full" className="absolute top-0 left-0 w-10 h-10 rounded-full"
alt={mapAvatar[character.avatar_id.toString()]?.DamageType.toLowerCase()} alt={mapAvatar[character.avatar_id.toString()]?.DamageType.toLowerCase()}
/> />
@@ -49,7 +49,7 @@ export default function CharacterInfoCard({ character, selectedCharacters, onCha
height={48} height={48}
unoptimized unoptimized
crossOrigin="anonymous" crossOrigin="anonymous"
src={`${process.env.CDN_URL}/${baseType?.[mapAvatar?.[character.avatar_id.toString()]?.BaseType || ""].Icon}`} src={`${process.env.CDN_URL}/${baseType?.[mapAvatar?.[character.avatar_id.toString()]?.BaseType || ""]?.Icon}`}
className="absolute top-0 right-0 w-10 h-10 rounded-full" className="absolute top-0 right-0 w-10 h-10 rounded-full"
alt={mapAvatar[character.avatar_id.toString()]?.BaseType.toLowerCase()} alt={mapAvatar[character.avatar_id.toString()]?.BaseType.toLowerCase()}
style={{ style={{

View File

@@ -10,9 +10,11 @@ import { freeSrJsonSchema } from "@/zod";
import { toast } from "react-toastify"; import { toast } from "react-toastify";
import { converterOneFreeSRDataToAvatarStore } from "@/helper"; import { converterOneFreeSRDataToAvatarStore } from "@/helper";
import { useTranslations } from "next-intl"; import { useTranslations } from "next-intl";
import useDetailDataStore from "@/stores/detailDataStore";
export default function FreeSRImport() { export default function FreeSRImport() {
const { avatars, setAvatar } = useUserDataStore(); const { avatars, setAvatar } = useUserDataStore();
const { mapAvatar } = useDetailDataStore();
const { setIsOpenImport } = useModelStore() const { setIsOpenImport } = useModelStore()
const [isLoading, setIsLoading] = useState(false) const [isLoading, setIsLoading] = useState(false)
const [Error, setError] = useState("") const [Error, setError] = useState("")
@@ -33,7 +35,7 @@ export default function FreeSRImport() {
const selectAll = () => { const selectAll = () => {
if (freeSRData) { if (freeSRData) {
setSelectedCharacters(Object.values(freeSRData?.avatars).map((character) => { setSelectedCharacters(Object.values(freeSRData?.avatars).filter(it => mapAvatar?.[it.avatar_id]).map((character) => {
const lightcone = freeSRData.lightcones.find((lightcone) => lightcone.equip_avatar === character.avatar_id) const lightcone = freeSRData.lightcones.find((lightcone) => lightcone.equip_avatar === character.avatar_id)
const relics = freeSRData.relics.filter((relic) => relic.equip_avatar === character.avatar_id) const relics = freeSRData.relics.filter((relic) => relic.equip_avatar === character.avatar_id)
return { return {
@@ -84,7 +86,7 @@ export default function FreeSRImport() {
setFreeSRData(parsed) setFreeSRData(parsed)
setError("") setError("")
setSelectedCharacters(Object.values(parsed?.avatars || {}).map((character) => { setSelectedCharacters(Object.values(parsed?.avatars || {}).filter(it => mapAvatar?.[it.avatar_id]).map((character) => {
const lightcone = parsed?.lightcones.find((lightcone) => lightcone.equip_avatar === character.avatar_id) const lightcone = parsed?.lightcones.find((lightcone) => lightcone.equip_avatar === character.avatar_id)
const relics = parsed?.relics.filter((relic) => relic.equip_avatar === character.avatar_id) const relics = parsed?.relics.filter((relic) => relic.equip_avatar === character.avatar_id)
return { return {
@@ -200,7 +202,7 @@ export default function FreeSRImport() {
)} )}
{/* Character Grid */} {/* Character Grid */}
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6"> <div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6">
{Object.values(freeSRData?.avatars || {}).map((character) => { {Object.values(freeSRData?.avatars || {}).filter(it => mapAvatar?.[it.avatar_id]).map((character) => {
const lightcone = freeSRData?.lightcones.find((lightcone) => lightcone.equip_avatar === character.avatar_id) const lightcone = freeSRData?.lightcones.find((lightcone) => lightcone.equip_avatar === character.avatar_id)
const relics = freeSRData?.relics.filter((relic) => relic.equip_avatar === character.avatar_id) const relics = freeSRData?.relics.filter((relic) => relic.equip_avatar === character.avatar_id)
return ( return (

View File

@@ -10,7 +10,7 @@ export const listCurrentLanguageApi : Record<string, string> = {
ja: "jp", ja: "jp",
ko: "kr", ko: "kr",
en: "en", en: "en",
vi: "en", vi: "vi",
zh: "cn" zh: "cn"
}; };

View File

@@ -1,4 +1,4 @@
import { listCurrentLanguage } from "@/constant/constant"; import { listCurrentLanguageApi } from "@/constant/constant";
import { AvatarDetail } from "@/types"; import { AvatarDetail } from "@/types";
import { useTranslations } from "next-intl" import { useTranslations } from "next-intl"
@@ -15,11 +15,11 @@ export function getNameChar(
): string { ): string {
if (!data) return ""; if (!data) return "";
if (!Object.prototype.hasOwnProperty.call(listCurrentLanguage, locale)) { if (!Object.prototype.hasOwnProperty.call(listCurrentLanguageApi, locale)) {
return ""; return "";
} }
const langKey = listCurrentLanguage[locale as keyof typeof listCurrentLanguage].toLowerCase(); const langKey = listCurrentLanguageApi[locale as keyof typeof listCurrentLanguageApi].toLowerCase();
let text = data.Name[langKey] ?? ""; let text = data.Name[langKey] ?? "";
@@ -38,13 +38,16 @@ export function getLocaleName(locale: string, data: Record<string, string> | und
if (!data) { if (!data) {
return "" return ""
} }
if (!Object.prototype.hasOwnProperty.call(listCurrentLanguage, locale)) {
if (!Object.prototype.hasOwnProperty.call(listCurrentLanguageApi, locale)) {
return "" return ""
} }
const langKey = listCurrentLanguage[locale as keyof typeof listCurrentLanguage].toLowerCase();
const langKey = listCurrentLanguageApi[locale as keyof typeof listCurrentLanguageApi].toLowerCase();
console.log(langKey)
let text = data[langKey] ?? ""; let text = data[langKey] ?? "";
if (!text) { if (!text) {