Files
imexmobile/components/screen-media-cache/screen-media-cache.component.jsx
2020-11-12 21:45:57 -08:00

42 lines
1.4 KiB
JavaScript

import { Button, Text as NBText, Thumbnail, View } from "native-base";
import React from "react";
import { FlatList, SafeAreaView, Text } from "react-native";
import { connect } from "react-redux";
import { createStructuredSelector } from "reselect";
import { removeAllPhotos } from "../../redux/photos/photos.actions";
import { selectPhotos } from "../../redux/photos/photos.selectors";
const mapStateToProps = createStructuredSelector({
photos: selectPhotos,
});
const mapDispatchToProps = (dispatch) => ({
//setUserLanguage: language => dispatch(setUserLanguage(language))
removeAllPhotos: () => dispatch(removeAllPhotos()),
});
export function ScreenMediaCache({ photos, removeAllPhotos }) {
return (
<SafeAreaView style={{ display: "flex", flex: 1 }}>
<Text>This is the media cache screen.</Text>
<Button block onPress={() => removeAllPhotos()}>
<NBText>Delete all</NBText>
</Button>
<Text>{photos.length}</Text>
<FlatList
style={{ flex: 1, backgroundColor: "tomato" }}
data={photos}
keyExtractor={(item) => item.id}
renderItem={(object) => (
<View>
<Text>{object.item.uri}</Text>
<Thumbnail square large source={{ uri: object.item.uri }} />
</View>
)}
//ItemSeparatorComponent={FlatListItemSeparator}
/>
</SafeAreaView>
);
}
export default connect(mapStateToProps, mapDispatchToProps)(ScreenMediaCache);