This commit is contained in:
@@ -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={{
|
||||||
|
|||||||
@@ -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 (
|
||||||
|
|||||||
@@ -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) {
|
||||||
|
|||||||
Reference in New Issue
Block a user