Code Insights: Fix BE insight loading card flashing
Created by: vovakulikov
Closes https://github.com/sourcegraph/sourcegraph/issues/22958
Background
At the moment the dashboard page loads only such insights that the dashboard has in its insightIds
property. Then we use extension API and gql BE handler to load all insights from the dashboard.
Problem
Before this PR changes on the main, we pass all insight ids from the dashboard object to BE insight load logic even if these insights are an extension like. As a result, we render a loading card for the BE insight as a loader for this type of loading. But because of that, we have this card flushing cause we don't have any BE insights but still make a request.
What have been done
-
Add separation insight filter and distinct BE insight id and extension insight id -
Change fetch logic in a way to avoid unnecessary requests in case if we don't have any be insight ids -
Add multiple BE like insight loading cards (before this PR we had only one BE insight loading card (skeleton) for all BE insights)