The communications platform that puts data protection first.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Rocket.Chat/client/components/connectionStatus/ConnectionStatusAlert.stori...

50 lines
1.2 KiB

import { action } from '@storybook/addon-actions';
import React from 'react';
import { ConnectionStatusContext } from '../../contexts/ConnectionStatusContext';
import ConnectionStatusAlert from './ConnectionStatusAlert';
const stateDecorator = ({
status = 'connected',
} = {}) =>
(storyFn) =>
<ConnectionStatusContext.Provider
value={{
connected: status === 'connected',
status,
retryTime: status === 'waiting' && Date.now() + 300000,
reconnect: action('reconnect'),
}}
>
{storyFn()}
</ConnectionStatusContext.Provider>;
export default {
title: 'components/connectionStatus/ConnectionStatusAlert',
component: ConnectionStatusAlert,
};
export const Connected = () => <ConnectionStatusAlert />;
Connected.decorators = [
stateDecorator(),
];
export const Connecting = () => <ConnectionStatusAlert />;
Connecting.decorators = [
stateDecorator({ status: 'connecting' }),
];
export const Failed = () => <ConnectionStatusAlert />;
Failed.decorators = [
stateDecorator({ status: 'failed' }),
];
export const Waiting = () => <ConnectionStatusAlert />;
Waiting.decorators = [
stateDecorator({ status: 'waiting' }),
];
export const Offline = () => <ConnectionStatusAlert />;
Offline.decorators = [
stateDecorator({ status: 'offline' }),
];