Closed
Description
The left hand side stream listing is based on the local state of the form, but the dropdown on the right side is powered by the response from the stream listing API interpolating values and so on. This difference is often invisible, but there are two cases where it's showing:
- Adding a new stream - the stream test panel "switches" to the new stream, but the API didn't reflect it back yet (gets fixed after the response returns from the server):
Kapture.2023-01-02.at.14.34.33.mp4
- Copying a stream with errors (will not get fixed without user input)
Kapture.2023-01-02.at.14.35.37.mp4
There are a few ways how to fix this, I think we should do the following:
- Make the request for the stream listing async with an explicit loading state
- Base the dropdown on the local state so it's always in sync and the user can always switch
- For the test data and the url, look up the state from the response from the listing API - if not available yet but in progress, render "loading..." or something like this for the URL of the stream
- If the URL can't be shown because the manifest is out of sync because the form values are invalid, show "Please fix form values..." or something for the URL of the stream