V2Wizard: Add "Searching" state for packages

This adds "Searching" state for packages table when the data is being fetched.
This commit is contained in:
regexowl 2024-04-10 11:46:54 +02:00 committed by Lucas Garfield
parent a8270fd228
commit 923c4fc2d5

View file

@ -15,6 +15,7 @@ import {
PaginationVariant,
Popover,
SearchInput,
Spinner,
Text,
TextContent,
ToggleGroup,
@ -87,11 +88,19 @@ const Packages = () => {
const [searchTerm, setSearchTerm] = useState('');
const [
searchRpms,
{ data: dataCustomPackages, isSuccess: isSuccessCustomPackages },
{
data: dataCustomPackages,
isSuccess: isSuccessCustomPackages,
isLoading: isLoadingRpms,
},
] = useSearchRpmMutation();
const [
searchRecommendedRpms,
{ data: dataRecommendedPackages, isSuccess: isSuccessRecommendedPackages },
{
data: dataRecommendedPackages,
isSuccess: isSuccessRecommendedPackages,
isLoading: isLoadingRecommendedPackages,
},
] = useSearchRpmMutation();
const { data: dataDistroPackages, isSuccess: isSuccessDistroPackages } =
@ -160,6 +169,25 @@ const Packages = () => {
);
};
const Searching = () => {
return (
<Tr>
<Td colSpan={5}>
<Bullseye>
<EmptyState variant={EmptyStateVariant.sm}>
<EmptyStateHeader icon={<EmptyStateIcon icon={Spinner} />} />
<EmptyStateBody>
{toggleSourceRepos === 'toggle-other-repos'
? 'Searching for recommendations'
: 'Searching'}
</EmptyStateBody>
</EmptyState>
</Bullseye>
</Td>
</Tr>
);
};
const TooManyResults = () => {
return (
<Tr>
@ -571,7 +599,11 @@ const Packages = () => {
{!searchTerm && toggleSelected === 'toggle-available' && (
<EmptySearch />
)}
{searchTerm && (isLoadingRecommendedPackages || isLoadingRpms) && (
<Searching />
)}
{searchTerm &&
!isLoadingRecommendedPackages &&
transformedPackages.length === 0 &&
toggleSelected === 'toggle-available' && <NoResultsFound />}
{searchTerm &&