packages/@fbcmobile-ui/Components/PhotoTile.js (17 lines of code) (raw):
/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree.
 *
 * @flow strict-local
 * @format
 */
'use strict';
import * as React from 'react';
import Text from '@fbcmobile/ui/Components/Core/Text';
import {Colors} from '@fbcmobile/ui/Theme';
import {Image, StyleSheet, View} from 'react-native';
type Props = {|
  +photoData: string,
  +caption?: ?string,
|};
const PhotoTile = ({photoData, caption}: Props) => {
  return (
    <View style={styles.photoContainer}>
      <Image style={styles.photo} source={{uri: photoData}} />
      <Text style={styles.caption} ellipsizeMode="tail" numberOfLines={1}>
        {caption}
      </Text>
    </View>
  );
};
const styles = StyleSheet.create({
  photoContainer: {
    width: 150,
    height: 100,
    borderRadius: 8,
    backgroundColor: Colors.Gray10,
  },
  photo: {
    flex: 1,
    borderRadius: 8,
  },
  caption: {
    textAlign: 'center',
    fontSize: 12,
  },
});
export default PhotoTile;