From 33b4e10a68f293f96f511941be2a6f91cfb4e124 Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Sun, 6 Jun 2021 04:04:02 -0400 Subject: [PATCH] wip, untested, but looks done-ish --- .../SessionTtsModelUploadResultsListFc.tsx | 47 +++++++++++++++++++ .../SessionW2lTemplateUploadResultsListFc.tsx | 47 +++++++++++++++++++ vocodes/src/v2/upload/UploadTtsModelFc.tsx | 5 ++ vocodes/src/v2/upload/UploadW2lPhotoFc.tsx | 8 ++++ vocodes/src/v2/upload/UploadW2lVideoFc.tsx | 10 +++- 5 files changed, 116 insertions(+), 1 deletion(-) create mode 100644 vocodes/src/v2/common/SessionTtsModelUploadResultsListFc.tsx create mode 100644 vocodes/src/v2/common/SessionW2lTemplateUploadResultsListFc.tsx diff --git a/vocodes/src/v2/common/SessionTtsModelUploadResultsListFc.tsx b/vocodes/src/v2/common/SessionTtsModelUploadResultsListFc.tsx new file mode 100644 index 0000000000..c77c057a58 --- /dev/null +++ b/vocodes/src/v2/common/SessionTtsModelUploadResultsListFc.tsx @@ -0,0 +1,47 @@ +import React from 'react'; +import { Link, } from 'react-router-dom'; +import { TtsModelUploadJob } from '../../jobs/TtsModelUploadJobs'; + +interface Props { + modelUploadJobs: Array, +} + +function SessionTtsModelUploadResultListFc(props: Props) { + + let results : Array = []; + + props.modelUploadJobs.forEach(job => { + + if (job.maybeModelToken === undefined || job.maybeModelToken === null) { + results.push( +
Pending…
+ ); + } else { + + let ttsPermalink = `/w2l/${job.maybeModelToken}` + + results.push( +
+ Complete! See & use TTS model +
+ ); + } + }); + + let title = ; + if (results.length !== 0) { + title =

TTS Model Upload Status

; + } + + return ( +
+ {title} + {results} +
+ ); +} + +export { SessionTtsModelUploadResultListFc }; diff --git a/vocodes/src/v2/common/SessionW2lTemplateUploadResultsListFc.tsx b/vocodes/src/v2/common/SessionW2lTemplateUploadResultsListFc.tsx new file mode 100644 index 0000000000..0ab0f4d90b --- /dev/null +++ b/vocodes/src/v2/common/SessionW2lTemplateUploadResultsListFc.tsx @@ -0,0 +1,47 @@ +import React from 'react'; +import { Link, } from 'react-router-dom'; +import { W2lTemplateUploadJob } from '../../jobs/W2lTemplateUploadJobs'; + +interface Props { + w2lTemplateUploadJobs: Array, +} + +function SessionW2lTemplateUploadResultListFc(props: Props) { + + let results : Array = []; + + props.w2lTemplateUploadJobs.forEach(job => { + + if (job.maybeW2lTemplateToken === undefined || job.maybeW2lTemplateToken === null) { + results.push( +
Pending…
+ ); + } else { + + let w2lPermalink = `/w2l/${job.maybeW2lTemplateToken}` + + results.push( +
+ Complete! See & use template +
+ ); + } + }); + + let title = ; + if (results.length !== 0) { + title =

W2L Template Upload Status

; + } + + return ( +
+ {title} + {results} +
+ ); +} + +export { SessionW2lTemplateUploadResultListFc }; diff --git a/vocodes/src/v2/upload/UploadTtsModelFc.tsx b/vocodes/src/v2/upload/UploadTtsModelFc.tsx index 0452c0206f..388bb02fb0 100644 --- a/vocodes/src/v2/upload/UploadTtsModelFc.tsx +++ b/vocodes/src/v2/upload/UploadTtsModelFc.tsx @@ -4,6 +4,7 @@ import { SessionWrapper } from '../../session/SessionWrapper'; import { TtsModelUploadJob } from '../../jobs/TtsModelUploadJobs'; import { useHistory, Link } from "react-router-dom"; import { v1 as uuidv1 } from 'uuid'; +import { SessionTtsModelUploadResultListFc } from '../common/SessionTtsModelUploadResultsListFc'; interface Props { sessionWrapper: SessionWrapper, @@ -153,6 +154,10 @@ function UploadTtsModelFc(props: Props) { onClick={() => {}} >< Back to upload type selection + + ) } diff --git a/vocodes/src/v2/upload/UploadW2lPhotoFc.tsx b/vocodes/src/v2/upload/UploadW2lPhotoFc.tsx index fe6c69a455..ed92e4b2dd 100644 --- a/vocodes/src/v2/upload/UploadW2lPhotoFc.tsx +++ b/vocodes/src/v2/upload/UploadW2lPhotoFc.tsx @@ -4,6 +4,7 @@ import { SessionWrapper } from '../../session/SessionWrapper'; import { W2lTemplateUploadJob } from '../../jobs/W2lTemplateUploadJobs'; import { useHistory, Link } from "react-router-dom"; import { v1 as uuidv1 } from 'uuid'; +import { SessionW2lTemplateUploadResultListFc } from '../common/SessionW2lTemplateUploadResultsListFc'; interface W2lTemplateUploadJobResponsePayload { success: boolean, @@ -145,6 +146,13 @@ function UploadW2lPhotoFc(props: Props) { className="button is-link is-fullwidth is-outlined" onClick={() => {}} >< Back to upload type selection + +
+
+ + ) diff --git a/vocodes/src/v2/upload/UploadW2lVideoFc.tsx b/vocodes/src/v2/upload/UploadW2lVideoFc.tsx index 6d5ec79382..6874bfc07e 100644 --- a/vocodes/src/v2/upload/UploadW2lVideoFc.tsx +++ b/vocodes/src/v2/upload/UploadW2lVideoFc.tsx @@ -1,5 +1,6 @@ import React, { useState } from 'react'; import { ApiConfig } from '../../common/ApiConfig'; +import { SessionW2lTemplateUploadResultListFc } from '../common/SessionW2lTemplateUploadResultsListFc'; import { SessionWrapper } from '../../session/SessionWrapper'; import { W2lTemplateUploadJob } from '../../jobs/W2lTemplateUploadJobs'; import { useHistory, Link } from "react-router-dom"; @@ -139,14 +140,21 @@ function UploadW2lVideoFc(props: Props) {
-
+ {}} >< Back to upload type selection +
+
+ + + ) }