switch to using map index incase we output the same asset twice,
resulting in duplicated media tokens, which confuses react
---------
Co-authored-by: wil <wil@storyteller.ai>
QOL Panel Changes
The style name is shown when rendering a movie, missing title due to
issues with the API.
The progress bar moves to 0 to 40 then 100, but this is still fake.
Added Animation Type to the Characters so they would not show
expressions unless they had it.
ROKO and Storygirl need their metadata updated for this. TEAM TESTING
ONLY Will have this metadata.
Changed Expression to Facial Expression.
Changed Lip Sync to Vocals / Speech
Changed Copy to reflect Timeline Track Changes.
I removed the Mannequins since they do not work well with the scenes.
- delete the env var signal at root in favor for the env var class
- this prevents the app from making unnecessary rerender, especially on
load
- fixed some eslint issues while treading through these files
---------
Co-authored-by: wil <wil@storyteller.ai>
the MyMovies button is named GenerateModal in the code for reason I am
not sure about
anyway, only 1 endpoint left here, it's getting the info of the details
of the movie, it works if you can click a completed movie and it brings
you to its detailed page
Co-authored-by: wil <wil@storyteller.ai>
this goes after usebackgroundmedia implementation
https://github.com/storytold/GottaGoFast/pull/497
with this (and the previous, the entire workflow of making a tts/v2v is:
- loading inference > previously done
- listing weights > now done
- requesting a tts > previously done
- request a v2v > 1 of the endpoint that's still missing in api2.5
- loading the new audio > implicitly done
---------
Co-authored-by: wil <wil@storyteller.ai>
- Raised these signals for background loaded media to the app level
- Raised the enums and types for these signals to the app level
- Delete the old useInferenceManager that only specifically handles
audio inferences
- Use the new signal and its implementation pattern to handle audio
inferences
- Clean up and simplify the implementation pattern to this new signal
- Variable polling frequencies depending what kind of active jobs exist
in the list
---------
Co-authored-by: wil <wil@storyteller.ai>
- separating the signals and disabled the code that introduced the bug
- setup job signals properly to manage completed and active jobs
- setup myMovies signals properly to load user's list of videos
- make new hook to manage polling for job signals
- make new hook to manage background polling for user videos
- finished the logic for toggling and repeating jobs polling
- finished the logic for triggering a background poll of user movies
Co-authored-by: wil <wil@storyteller.ai>
supress error for process env, added vscode setting to gitignore
segrgate enums (#369)
Co-authored-by: Christopher Oliphant
<RALifeCoach@users.noreply.github.com>
Refactor storybook (#370)
Co-authored-by: Christopher Oliphant
<RALifeCoach@users.noreply.github.com>
button dropdown docs (#372)
storybook doc for button dropdown component
refactor side panel tabs (#371)
Co-authored-by: Christopher Oliphant
<RALifeCoach@users.noreply.github.com>
fix enums (#373)
Co-authored-by: Christopher Oliphant
<RALifeCoach@users.noreply.github.com>
Refactoring Auth Context to Signals (#374)
- file restructure, store -> signals
- rewrite AuthContext to signals, and get rid of AuthContext
- modify all files that need to use AuthContext to use the
authentication Signal
- the complex login persistency logic is now just a persistLogin
function ran at root!
- fetchers uses the auth signal directly to get the sessionToken
- components no longer useSignals for these fetchers, hence decoupled
from the auth signals
!! components and fetchers that are definitely subjected to refactor
does not receive the useSignal decoupling treatment
Co-authored-by: wil <wil@storyteller.ai>
Refactoring Toaster Context to a Toaster Component + Signal (#378)
- Created the Toaster Component
- Created the Toasts Signal
- Now no useContext is needed for Toast Poping, nor passing AddToast
around
- Simply import addToast from the Signals and you can pop a toast from
anywhere in the codebase
Co-authored-by: wil <wil@storyteller.ai>
Refactoring AppUi Context (partial: delete unused, editorLoader becomes
signal) (#379)
- dialogueTTS is unused, hence deleted
- view side-by-side mode is unused, hence deleted
- timeline height in this context was already made into signal, hence
deleted
- editorLoader in this context is now made into a page level signal,
hence deleted
- components and dispatcher of the editorLoader are modified to use
signal instead
- app level reducer is no longer used, tugged into context folder to
avoid confusion, will be deleted when all attributes in AppUi context is
refactored into signals
Co-authored-by: wil <wil@storyteller.ai>
Refactor control panel (#391)
- control panel - simplified and improved
- Please also test it. It operates slightly differently. For example, if
the user types an invalid character, the character is ignored.
---------
Co-authored-by: Christopher Oliphant
<RALifeCoach@users.noreply.github.com>
Refactoring App Level Components
- Components that are in the /app/component folder are split into
reusable and signaled
- reusable are in theory signal independent
- signaled are dependent on signals (and maybe a use-once component)
- some app level components has page level enums or signals, those are
bumped to app level now
- all components in the module directory are moved into the component
directories depending on whether it's reusable or signaled
- code changes in are mostly just import changes to get re-target to get
the correct files
- discovered a small bug in FilterButtons and is fixed
- whether a component need more work, it is commented on the index file
that import them into the grand collection of components
Refactor - Signals Part 2
- store is renamed to signals in PageEditor for clarity
- ObjectControlPanel now uses a Signal instead of the AppUiContext
- Moved EditorContext to Page Level, all context are page level only now
- editor is modified to read and use signals directly (for now), this
includes: -- the ObjectPanel signal
-- the Scene signal
-- the Authentication signal
- and hence, editor now has a constructor doesn't require any arguments
- editor also has a simple initialization
- AppUiContext is retired completely and deleted
---------
Co-authored-by: wil <wil@storyteller.ai>
Co-authored-by: Christopher Oliphant <RALifeCoach@users.noreply.github.com>
- fixed by giving a proper filename.
- not fixed: filename exists, but is untitled, need to wait for backend
update to get a proper title
Co-authored-by: wil <wil@storyteller.ai>
- done: setup metadata in editor.js for the Generate Movie Button
- done: update endpoint, now during stylization, the upload of the
original video uses the new_video endpoint, which provides the file with
a title field
- fixed: rendered movies art style tag now show the art style's label
properly
- fixed: clicking the media link to the video brings user back to
studio.storyteller.ai/[video_url]
- fixed: completed card DOM nesting issue
potentially fixed but the product does not reflect due to server issues:
- AI Stylize videos should also take the title from the original video
and show that title
Co-authored-by: wil <wil@storyteller.ai>
- Fixed! now the Load Scene Dialog loads the metadata correctly
- and the component Scene Card read said metadata to show the thumbnail
- Scene Card is also capable of loading a fallback image in case of
loading error
- Fixed! Faulty thumbnail metadata in Movies CompletedCard
- Both SceneCard and CompletedCard load images lazily
Co-authored-by: wil <wil@storyteller.ai>
New state colour/text when cannot drop
New colour when okay to drop
New bar in timeline grid when okay to drop
Tracks that are okay to drop glow
---------
Co-authored-by: Christopher Oliphant <RALifeCoach@users.noreply.github.com>