-
Notifications
You must be signed in to change notification settings - Fork 97
Expand file tree
/
Copy pathNetworkStateBanner.tsx
More file actions
32 lines (30 loc) · 900 Bytes
/
Copy pathNetworkStateBanner.tsx
File metadata and controls
32 lines (30 loc) · 900 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import React from 'react';
import { NetworkStatusBanner } from './NetworkStatusBanner';
import type { NetworkState } from '../types/network';
interface NetworkStateBannerProps {
/** The current network state. */
state: NetworkState;
/** Called when the user taps the Retry button. */
onRetry?: () => void;
/** True while a re-check or refresh is in flight. */
isRetrying?: boolean;
/** True when there is existing activity data to display. */
hasData?: boolean;
}
export const NetworkStateBanner: React.FC<NetworkStateBannerProps> = ({
state,
onRetry,
isRetrying = false,
hasData = false,
}: NetworkStateBannerProps) => {
return (
<NetworkStatusBanner
state={state}
onRetry={onRetry}
isRetrying={isRetrying}
variant={hasData ? 'banner' : 'fullscreen' }
testID="network-state-banner"
retryTestID="network-state-retry"
/>
);
};