Rocket.Chat.ReactNative/storybook/stories/Avatar.js

74 lines
2.5 KiB
JavaScript
Raw Normal View History

/* eslint-disable import/no-extraneous-dependencies */
import React from 'react';
import { StyleSheet } from 'react-native';
import { storiesOf } from '@storybook/react-native';
import Avatar from '../../app/containers/Avatar/Avatar';
import Status from '../../app/containers/Status/Status';
import sharedStyles from '../../app/views/Styles';
const styles = StyleSheet.create({
custom: {
padding: 16
}
});
const server = 'https://open.rocket.chat';
const _theme = 'light';
const stories = storiesOf('Avatar', module);
stories.add('Avatar by text', () => <Avatar text='Avatar' server={server} size={56} />);
stories.add('Avatar by roomId', () => <Avatar type='p' rid='devWBbYr7inwupPqK' server={server} size={56} />);
stories.add('Avatar by url', () => (
<Avatar
avatar='https://user-images.githubusercontent.com/29778115/89444446-14738480-d728-11ea-9412-75fd978d95fb.jpg'
server={server}
size={56}
/>
));
stories.add('Avatar by path', () => <Avatar avatar='/avatar/diego.mello' server={server} size={56} />);
stories.add('With ETag', () => (
<Avatar type='d' text='djorkaeff.alexandre' avatarETag='5ag8KffJcZj9m5rCv' server={server} size={56} />
));
stories.add('Without ETag', () => <Avatar type='d' text='djorkaeff.alexandre' server={server} size={56} />);
stories.add('Emoji', () => (
<Avatar emoji='troll' getCustomEmoji={() => ({ name: 'troll', extension: 'jpg' })} server={server} size={56} />
));
stories.add('Direct', () => <Avatar text='diego.mello' server={server} type='d' size={56} />);
stories.add('Channel', () => <Avatar text='general' server={server} type='c' size={56} />);
stories.add('Touchable', () => <Avatar text='Avatar' server={server} onPress={() => console.log('Pressed!')} size={56} />);
stories.add('Static', () => (
<Avatar
avatar='https://user-images.githubusercontent.com/29778115/89444446-14738480-d728-11ea-9412-75fd978d95fb.jpg'
server={server}
isStatic
size={56}
/>
));
stories.add('Avatar by roomId', () => <Avatar type='p' rid='devWBbYr7inwupPqK' server={server} size={56} />);
stories.add('Custom borderRadius', () => <Avatar text='Avatar' server={server} borderRadius={28} size={56} />);
stories.add('Children', () => (
<Avatar text='Avatar' server={server} size={56}>
<Status size={24} style={[sharedStyles.status, styles.status]} theme={_theme} />
</Avatar>
));
stories.add('Wrong server', () => <Avatar text='Avatar' server='https://google.com' size={56} />);
stories.add('Custom style', () => <Avatar text='Avatar' server={server} size={56} style={styles.custom} />);