two changes:
1. only in get feature objects and get user objects, for example, if the
user internet connection dies, these hooks are smart enough to only
retry 5 times
2. for other calls that could be repeatedly called until success, the
toaster also checks if this is a duplicated toast that was popped not
long ago
---------
Co-authored-by: wil <wil@storyteller.ai>
- updated so all the hooks for managing media item can filter media
types (iow, filter by the media's file extension such as .glb, .zip,
etc)
- some other typo and code clean up
- search feature now waits for a key delay before firing a fetch for
search, so it doesn't fire on every key-stroke
---------
Co-authored-by: wil <wil@storyteller.ai>
Pagination of our frontend was implemented "naively" due to previous
time constraints; now, it's "correct" to reflect server responses
exactly. More precisely:
- the Pagination component (frontend) is updated to understand that
there are more fetch-able pages (backend) and it shows a "More ..."
button when the user have reached the last page on the frontend.
- this sub-feature of the Pagination module, the "More ..." button, is
implemented on the character sub-tab only (for now)
- the character sub-tab looks at the set of characters that it is
displaying (ie featured vs mine), and pass the correct fetch-more-pages
function to the Pagination component
- the underlying hooks to managed fetch feature objects and user
objects, their api invoker utilities, and the api classes are all
updated to deal with pagination properly
small issue:
- pagination of featured items uses "infinite pagination" to prevent
competitors from knowing how much data we have in our system, which
means, there will always be a "cursor to the next page", and we would
only know we have reached the end when we request a next page with a
cursor but a response of no results returns. so, for featured items,
when the user reached the last page, the "More ..." button will show up
once, if you clicked it and it goes away, there are no more items in the
server. This extra "More ..." button is the current "correct" behaviour.
---------
Co-authored-by: wil <wil@storyteller.ai>
Addressed issues with being able to reuse the video rendering pipeline.
Resolved all issues involving error handling and failure stages for
rendering. Now to work on the AI preview tab
we should fix this reactland <-> timeline <-> 3JS engine communication
thing,
but, i cant imagine we get that super soon, to reduce chances of messing
up the data plumbing, i made a small but tedious change, now the clip
UI's constructor takes an object of named attributes instead of of a row
of unnamed arguments that's order/position specific
Co-authored-by: wil <wil@storyteller.ai>
**Big code changes:**
The states, usecallback-functions, and auto-reload-useeffects for
user-objects, featured-objects, user-objects-search-results, &
featured-objects-search-results are consolidated into their own hooks
and share among all tabs so all tabs uses the same logic. this includes:
- Film Sets Tab (aka object-sets)
- Creatures Tab (aka object-creatures)
- Anime & Cartoon's Character, Animation and Expression Tabs
- Props & Objects Tab (aka object)
- Image & Video Panels Tabs
**Minor Changes**
Updated Tab Names and Icons as requested, most importantly, subtabs
component can now take icons, in which, it is implemented in the Anime &
Cartoons Tab's sub tabs, iow, their Character, Animation, & Expression
sub tabs now have icons.
---------
Co-authored-by: wil <wil@storyteller.ai>
@Quicksticks-oss has finished the loading of skyboxes
@wilwong has made the tab for it, and did some re-organization of demo
files cos the list is growing larger and larger now
---------
Co-authored-by: Quicksticks-oss <chongobongotoday@gmail.com>
Co-authored-by: wil <wil@storyteller.ai>
- fixed some font alignments things here and there
- there's a missing variable uncollected for scene generation meta,
fixed it
Co-authored-by: wil <wil@storyteller.ai>
now the selected tab (character/animation) becomes orange, so the
buttons more obvious that they are selectable tabs, as well as the which
is the selected tab
Co-authored-by: wil <wil@storyteller.ai>