mirror of
https://github.com/storytold/artcraft.git
synced 2026-11-05 01:38:44 +00:00
Merge pull request #360 from storytold/olivicmic-fy-voice-designer-consume-api-react
voice designer edit datasets working
This commit is contained in:
3 files changed
+29
-5
No files matched your search
@@ -44,7 +44,7 @@ const MakeRequest = <UrlRouteArgs, Request, Response>(routeSetup: RouteSetup<Url
|
||||
})
|
||||
.then(res => res.json())
|
||||
.then(res => {
|
||||
if (res && res.voice_token) {
|
||||
if (!res.success && res && (res.voice_token || res.dataset_token)) {
|
||||
return res;
|
||||
}
|
||||
else if (res && "success" in res) {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import React, { useState } from "react";
|
||||
import React, { useEffect, useState } from "react";
|
||||
import { useParams } from "react-router-dom";
|
||||
import {
|
||||
faEye,
|
||||
@@ -32,6 +32,7 @@ function VoiceDesignerFormPage() {
|
||||
const [language, languageSet] = useState("en");
|
||||
const [visibility, visibilitySet] = useState("");
|
||||
const [title, titleSet] = useState("");
|
||||
const [fetched,fetchedSet] = useState(false);
|
||||
|
||||
const audioProps = useFile({}); // contains upload inout state and controls, see docs
|
||||
|
||||
@@ -125,7 +126,15 @@ function VoiceDesignerFormPage() {
|
||||
|
||||
} else if (dataset_token) {
|
||||
// It's edit mode and on the first step
|
||||
history.push(`/voice-designer/dataset/${dataset_token}/upload`);
|
||||
datasets.edit(dataset_token,{
|
||||
title,
|
||||
creator_set_visibility: visibility,
|
||||
ietf_language_tag: language
|
||||
}).then((res: any) => {
|
||||
if (res && res.success && res.token) {
|
||||
history.push(`/voice-designer/dataset/${dataset_token}/upload`);
|
||||
}
|
||||
});
|
||||
}
|
||||
setCurrentStep(currentStep + 1);
|
||||
} else if (currentStep < steps.length - 1) {
|
||||
@@ -146,6 +155,18 @@ function VoiceDesignerFormPage() {
|
||||
});
|
||||
};
|
||||
|
||||
useEffect(() => {
|
||||
if (!fetched && dataset_token) {
|
||||
fetchedSet(true);
|
||||
datasets.get(dataset_token,{})
|
||||
.then((res) => {
|
||||
languageSet(res.ietf_language_tag);
|
||||
titleSet(res.title);
|
||||
visibilitySet(res.creator_set_visibility);
|
||||
});
|
||||
}
|
||||
},[dataset_token,datasets,fetched]);
|
||||
|
||||
return (
|
||||
<Container type="panel">
|
||||
<PageHeader
|
||||
|
||||
@@ -2,7 +2,7 @@ import { useEffect, useState } from "react";
|
||||
|
||||
// voice imports
|
||||
|
||||
// import { GetVoice } from "@storyteller/components/src/api/voice_designer/voices/GetVoice";
|
||||
import { GetVoice } from "@storyteller/components/src/api/voice_designer/voices/GetVoice";
|
||||
import { CreateVoice, CreateVoiceRequest, CreateVoiceResponse } from "@storyteller/components/src/api/voice_designer/voices/CreateVoice";
|
||||
import { ListVoicesByUser, Voice } from "@storyteller/components/src/api/voice_designer/voices/ListVoicesByUser";
|
||||
import {
|
||||
@@ -12,6 +12,7 @@ import {
|
||||
|
||||
// dataset imports
|
||||
|
||||
import { GetDataset } from "@storyteller/components/src/api/voice_designer/voice_datasets/GetDataset";
|
||||
import {
|
||||
ListDatasetsByUser,
|
||||
Dataset,
|
||||
@@ -97,11 +98,12 @@ export default function useVoiceRequests() {
|
||||
|
||||
return {
|
||||
datasets: {
|
||||
byToken: datasetByToken,
|
||||
create: createDataset,
|
||||
delete: deleteDataset,
|
||||
edit: editDataSet,
|
||||
get: GetDataset,
|
||||
list: datasets,
|
||||
byToken: datasetByToken,
|
||||
refresh: refreshData
|
||||
},
|
||||
inference: {
|
||||
@@ -110,6 +112,7 @@ export default function useVoiceRequests() {
|
||||
voices: {
|
||||
create: createVoice,
|
||||
delete: deleteVoice,
|
||||
get: GetVoice,
|
||||
list: voices,
|
||||
refresh: refreshData
|
||||
},
|
||||
|
||||
Reference in new issue
Block a user