pass upload job state through all relevant controllers

This commit is contained in:
Brandon Thomas committed 2021-06-06 03:45:58 -04:00
1 parent 1634a8ef45
commit cc85672390
7 files changed
+85 -19

No files matched your search

+6
View File
@@ -447,6 +447,12 @@ class App extends React.Component<Props, State> {
enqueueW2lJob={this.enqueueW2lJob}
w2lInferenceJobs={this.state.w2lInferenceJobs}
enqueueTtsModelUploadJob={this.enqueueTtsModelUploadJob}
ttsModelUploadJobs={this.state.ttsModelUploadJobs}
enqueueW2lTemplateUploadJob={this.enqueueW2lTemplateUploadJob}
w2lTemplateUploadJobs={this.state.w2lTemplateUploadJobs}
/>
</Route>
</Switch>
+18 -10
View File
@@ -1,6 +1,7 @@
import React from 'react';
import { FirehoseEventListFc } from './firehose/FirehoseEventListFc';
import { LoginFc } from './login/LoginFc';
import { NewFooterNavFc } from './NewFooterNavFc';
import { NewTopNavFc } from './NewTopNavFc';
import { ProfileDataFc } from './profile_data/ProfileDataFc';
import { ProfileEditFc } from './profile_edit/ProfileEditFc';
@@ -8,8 +9,12 @@ import { ProfileFc } from './profile/ProfileFc';
import { SessionWrapper } from '../session/SessionWrapper';
import { SignupComponent } from './signup/SignupComponent';
import { Switch, Route, RouteProps } from 'react-router-dom';
import { TtsInferenceJob, W2lInferenceJob } from '../App';
import { TtsModelFormFc } from './tts_model_list/TtsModelFormFc';
import { TtsModelListComponent } from './tts_model_list/TtsModelListComponent';
import { TtsModelUploadJob } from '../jobs/TtsModelUploadJobs';
import { TtsModelViewFc } from './tts_model_view/TtsModelViewFc';
import { TtsResultViewFc } from './tts_result_view/TtsResultViewFc';
import { UploadChoiceFc } from './upload/UploadChoiceFc';
import { UploadComponent } from './upload/UploadComponent';
import { UploadTtsModelFc } from './upload/UploadTtsModelFc';
@@ -17,11 +22,8 @@ import { UploadW2lPhotoFc } from './upload/UploadW2lPhotoFc';
import { UploadW2lVideoFc } from './upload/UploadW2lVideoFc';
import { W2lResultViewFc } from './w2l_result_view/W2lResultViewFc';
import { W2lTemplateListFc } from './w2l_template_list/W2lTemplateListFc';
import { W2lTemplateUploadJob } from '../jobs/W2lTemplateUploadJobs';
import { W2lTemplateViewFc } from './w2l_template_view/W2lTemplateViewFc';
import { NewFooterNavFc } from './NewFooterNavFc';
import { TtsModelViewFc } from './tts_model_view/TtsModelViewFc';
import { TtsResultViewFc } from './tts_result_view/TtsResultViewFc';
import { TtsInferenceJob, W2lInferenceJob } from '../App';
interface Props {
sessionWrapper: SessionWrapper,
@@ -32,6 +34,12 @@ interface Props {
enqueueW2lJob: (jobToken: string) => void,
w2lInferenceJobs: Array<W2lInferenceJob>,
enqueueTtsModelUploadJob: (jobToken: string) => void,
ttsModelUploadJobs: Array<TtsModelUploadJob>,
enqueueW2lTemplateUploadJob: (jobToken: string) => void,
w2lTemplateUploadJobs: Array<W2lTemplateUploadJob>,
}
interface State {
@@ -150,18 +158,24 @@ class NewVocodesContainer extends React.Component<Props, State> {
<Route path="/upload/w2l_photo">
<UploadW2lPhotoFc
sessionWrapper={this.props.sessionWrapper}
w2lTemplateUploadJobs={this.props.w2lTemplateUploadJobs}
enqueueW2lTemplateUploadJob={this.props.enqueueW2lTemplateUploadJob}
/>
</Route>
<Route path="/upload/w2l_video">
<UploadW2lVideoFc
sessionWrapper={this.props.sessionWrapper}
w2lTemplateUploadJobs={this.props.w2lTemplateUploadJobs}
enqueueW2lTemplateUploadJob={this.props.enqueueW2lTemplateUploadJob}
/>
</Route>
<Route path="/upload/tts">
<UploadTtsModelFc
sessionWrapper={this.props.sessionWrapper}
ttsModelUploadJobs={this.props.ttsModelUploadJobs}
enqueueTtsModelUploadJob={this.props.enqueueTtsModelUploadJob}
/>
</Route>
@@ -171,12 +185,6 @@ class NewVocodesContainer extends React.Component<Props, State> {
/>
</Route>
<Route path="/upload2">
<UploadComponent
sessionWrapper={this.props.sessionWrapper}
/>
</Route>
<Route path="/">
<TtsModelFormFc
sessionWrapper={this.props.sessionWrapper}
@@ -53,7 +53,6 @@ function TtsModelFormFc(props: Props) {
})
.then(res => res.json())
.then(res => {
console.log('list', res);
const ttsModelResponse : TtsModelListResponsePayload = res;
if (!ttsModelResponse.success) {
return;
@@ -106,7 +105,6 @@ function TtsModelFormFc(props: Props) {
// TODO: Inefficient.
ttsModels.forEach(model => {
if (model.model_token === selectVoiceValue) {
console.log('voice', model);
setSelectedTtsModel(model);
}
});
+9 -1
View File
@@ -1,7 +1,9 @@
import React from 'react';
import { ApiConfig } from '../../common/ApiConfig';
import { v4 } from 'uuid';
import { SessionWrapper } from '../../session/SessionWrapper';
import { TtsModelUploadJob } from '../../jobs/TtsModelUploadJobs';
import { W2lTemplateUploadJob } from '../../jobs/W2lTemplateUploadJobs';
import { v4 } from 'uuid';
enum UploadType {
TTS_MODEL,
@@ -16,6 +18,12 @@ enum FieldTriState {
interface Props {
sessionWrapper : SessionWrapper,
enqueueTtsModelUploadJob: (jobToken: string) => void,
ttsModelUploadJobs: Array<TtsModelUploadJob>,
enqueueW2lTemplateUploadJob: (jobToken: string) => void,
w2lTemplateUploadJobs: Array<W2lTemplateUploadJob>,
}
interface State {
+18 -2
View File
@@ -1,11 +1,19 @@
import React, { useState } from 'react';
import { ApiConfig } from '../../common/ApiConfig';
import { SessionWrapper } from '../../session/SessionWrapper';
import { TtsModelUploadJob } from '../../jobs/TtsModelUploadJobs';
import { useHistory, Link } from "react-router-dom";
import { v1 as uuidv1 } from 'uuid';
interface Props {
sessionWrapper: SessionWrapper,
enqueueTtsModelUploadJob: (jobToken: string) => void,
ttsModelUploadJobs: Array<TtsModelUploadJob>,
}
interface TtsModelUploadJobResponsePayload {
success: boolean,
job_token?: string,
}
function UploadTtsModelFc(props: Props) {
@@ -59,9 +67,17 @@ function UploadTtsModelFc(props: Props) {
})
.then(res => res.json())
.then(res => {
if (res.success) {
history.push('/');
let response : TtsModelUploadJobResponsePayload = res;
if (!response.success || response.job_token === undefined) {
return;
}
console.log('enqueuing...')
props.enqueueTtsModelUploadJob(response.job_token);
history.push('/');
})
.catch(e => {
//this.props.onSpeakErrorCallback();
+17 -2
View File
@@ -1,11 +1,19 @@
import React, { useState } from 'react';
import { ApiConfig } from '../../common/ApiConfig';
import { SessionWrapper } from '../../session/SessionWrapper';
import { W2lTemplateUploadJob } from '../../jobs/W2lTemplateUploadJobs';
import { useHistory, Link } from "react-router-dom";
import { v1 as uuidv1 } from 'uuid';
interface W2lTemplateUploadJobResponsePayload {
success: boolean,
job_token?: string,
}
interface Props {
sessionWrapper: SessionWrapper,
enqueueW2lTemplateUploadJob: (jobToken: string) => void,
w2lTemplateUploadJobs: Array<W2lTemplateUploadJob>,
}
function UploadW2lPhotoFc(props: Props) {
@@ -59,9 +67,16 @@ function UploadW2lPhotoFc(props: Props) {
})
.then(res => res.json())
.then(res => {
if (res.success) {
history.push('/');
let response : W2lTemplateUploadJobResponsePayload = res;
if (!response.success || response.job_token === undefined) {
return;
}
console.log('enqueuing...')
props.enqueueW2lTemplateUploadJob(response.job_token);
history.push('/');
})
.catch(e => {
//this.props.onSpeakErrorCallback();
+17 -2
View File
@@ -1,11 +1,19 @@
import React, { useState } from 'react';
import { ApiConfig } from '../../common/ApiConfig';
import { SessionWrapper } from '../../session/SessionWrapper';
import { W2lTemplateUploadJob } from '../../jobs/W2lTemplateUploadJobs';
import { useHistory, Link } from "react-router-dom";
import { v1 as uuidv1 } from 'uuid';
interface W2lTemplateUploadJobResponsePayload {
success: boolean,
job_token?: string,
}
interface Props {
sessionWrapper: SessionWrapper,
enqueueW2lTemplateUploadJob: (jobToken: string) => void,
w2lTemplateUploadJobs: Array<W2lTemplateUploadJob>,
}
function UploadW2lVideoFc(props: Props) {
@@ -59,9 +67,16 @@ function UploadW2lVideoFc(props: Props) {
})
.then(res => res.json())
.then(res => {
if (res.success) {
history.push('/');
let response : W2lTemplateUploadJobResponsePayload = res;
if (!response.success || response.job_token === undefined) {
return;
}
console.log('enqueuing...')
props.enqueueW2lTemplateUploadJob(response.job_token);
history.push('/');
})
.catch(e => {
//this.props.onSpeakErrorCallback();