import React from 'react'; import { flattenItems } from 'utils/collections'; import { IconAlertTriangle } from '@tabler/icons'; import StyledWrapper from './StyledWrapper'; import { useDispatch, useSelector } from 'react-redux'; import { isItemARequest, itemIsOpenedInTabs } from 'utils/tabs/index'; import { getDefaultRequestPaneTab } from 'utils/collections/index'; import { addTab, focusTab } from 'providers/ReduxStore/slices/tabs'; import { hideHomePage } from 'providers/ReduxStore/slices/app'; const RequestsNotLoaded = ({ collection }) => { const dispatch = useDispatch(); const tabs = useSelector((state) => state.tabs.tabs); const flattenedItems = flattenItems(collection.items); const itemsFailedLoading = flattenedItems?.filter((item) => item?.partial && !item?.loading); if (!itemsFailedLoading?.length) { return null; } const handleRequestClick = (item) => (e) => { e.preventDefault(); if (isItemARequest(item)) { dispatch(hideHomePage()); if (itemIsOpenedInTabs(item, tabs)) { dispatch( focusTab({ uid: item.uid }) ); return; } dispatch( addTab({ uid: item.uid, collectionUid: collection.uid, requestPaneTab: getDefaultRequestPaneTab(item) }) ); return; } }; return (
Following requests were not loaded
{flattenedItems?.map((item, index) => ( item?.partial && !item?.loading ? ( ) : null ))}
Pathname Size
{item?.pathname?.split(`${collection?.pathname}/`)?.[1]} {item?.size?.toFixed?.(2)} MB
); }; export default RequestsNotLoaded;