mirror of
https://github.com/wgh136/nysoure.git
synced 2025-12-16 23:51:15 +00:00
feat: fetching VNDB characters
This commit is contained in:
@@ -19,7 +19,7 @@ import {
|
|||||||
SelectAndUploadImageButton,
|
SelectAndUploadImageButton,
|
||||||
UploadClipboardImageButton,
|
UploadClipboardImageButton,
|
||||||
} from "../components/image_selector.tsx";
|
} from "../components/image_selector.tsx";
|
||||||
import CharacterEditer from "../components/character_edit.tsx";
|
import CharacterEditer, { FetchVndbCharactersButton } from "../components/character_edit.tsx";
|
||||||
|
|
||||||
export default function PublishPage() {
|
export default function PublishPage() {
|
||||||
const [title, setTitle] = useState<string>("");
|
const [title, setTitle] = useState<string>("");
|
||||||
@@ -436,13 +436,13 @@ export default function PublishPage() {
|
|||||||
<div className="grid grid-cols-1 md:grid-cols-2 my-2 gap-4">
|
<div className="grid grid-cols-1 md:grid-cols-2 my-2 gap-4">
|
||||||
{
|
{
|
||||||
characters.map((character, index) => {
|
characters.map((character, index) => {
|
||||||
return <CharacterEditer
|
return <CharacterEditer
|
||||||
character={character}
|
character={character}
|
||||||
setCharacter={(newCharacter) => {
|
setCharacter={(newCharacter) => {
|
||||||
const newCharacters = [...characters];
|
const newCharacters = [...characters];
|
||||||
newCharacters[index] = newCharacter;
|
newCharacters[index] = newCharacter;
|
||||||
setCharacters(newCharacters);
|
setCharacters(newCharacters);
|
||||||
}}
|
}}
|
||||||
onDelete={() => {
|
onDelete={() => {
|
||||||
const newCharacters = [...characters];
|
const newCharacters = [...characters];
|
||||||
newCharacters.splice(index, 1);
|
newCharacters.splice(index, 1);
|
||||||
@@ -456,12 +456,23 @@ export default function PublishPage() {
|
|||||||
className={"btn my-2"}
|
className={"btn my-2"}
|
||||||
type={"button"}
|
type={"button"}
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
setCharacters([...characters, { name: "", alias: [], cv: "", image: 0, role: "primary"}]);
|
setCharacters([...characters, { name: "", alias: [], cv: "", image: 0, role: "primary" }]);
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<MdAdd />
|
<MdAdd />
|
||||||
{t("Add Character")}
|
{t("Add Character")}
|
||||||
</button>
|
</button>
|
||||||
|
{
|
||||||
|
links.find(link => link.label.toLowerCase() === "vndb") &&
|
||||||
|
<div className="ml-4">
|
||||||
|
<FetchVndbCharactersButton
|
||||||
|
vnID={links.find(link => link.label.toLowerCase() === "vndb")?.url.split("/").pop() ?? ""}
|
||||||
|
onFetch={(fetchedCharacters) => {
|
||||||
|
setCharacters(fetchedCharacters);
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{error && (
|
{error && (
|
||||||
|
|||||||
Reference in New Issue
Block a user