Skip to content

Commit

Permalink
Fix: Improve label of test only prop
Browse files Browse the repository at this point in the history
  • Loading branch information
Bruce Glazier committed Mar 1, 2023
1 parent 5b47a2c commit a4ed44a
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 12 deletions.
6 changes: 3 additions & 3 deletions example/storybook/stories/NoInternetToastProvider.stories.tsx
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import React from 'react';
import { storiesOf } from '@storybook/react-native';
import { boolean } from '@storybook/addon-knobs';
import { NoInternetToastProvider } from '../../../src';
import Toast from 'react-native-toast-message';
import { boolean } from '@storybook/addon-knobs';

storiesOf('NoInternetToast', module).add('demo', () => {
const internetConnection = boolean('Internet connection', false);
const isConnected = boolean('Internet Connection', false);
return (
<NoInternetToastProvider forceShowToast={internetConnection}>
<NoInternetToastProvider _isConnected={isConnected}>
<Toast />
</NoInternetToastProvider>
);
Expand Down
21 changes: 12 additions & 9 deletions src/hooks/NoInternetToastProvider.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,21 +5,24 @@ import Toast, { ToastProps } from 'react-native-toast-message';

export const NoInternetToastContext = createContext({});

class NoInternetToastProviderProps {
children?: React.ReactNode;
toastOverrides?: ToastProps;
/** Simulate the connection state (useful for testing) */
_isConnected?: boolean;
}

export const NoInternetToastProvider = ({
children,
toastOverrides,
forceShowToast,
}: {
children?: React.ReactNode;
toastOverrides?: ToastProps;
forceShowToast?: boolean;
}) => {
_isConnected,
}: NoInternetToastProviderProps) => {
const { isConnected } = useNetInfo();
const hiddenByAPI = useRef<boolean>(false);
const [forceRefresh, setForceRefresh] = useState<boolean>(false);

useEffect(() => {
if (isConnected === false || forceShowToast === false) {
if (_isConnected === false || isConnected === false) {
hiddenByAPI.current = false;
Toast.show({
type: 'error',
Expand All @@ -40,11 +43,11 @@ export const NoInternetToastProvider = ({
},
...toastOverrides,
});
} else if (isConnected === true || forceShowToast === true) {
} else if (_isConnected === true || isConnected === true) {
hiddenByAPI.current = true;
Toast.hide();
}
}, [isConnected, toastOverrides, forceRefresh, forceShowToast]);
}, [isConnected, toastOverrides, forceRefresh, _isConnected]);

return (
<NoInternetToastContext.Provider value={{}}>
Expand Down

0 comments on commit a4ed44a

Please sign in to comment.