UNPKG

react-native-big-list

Version:

A big and fast list implementation for react-native with a recycler API focused on performance and ram usage while processing thousand items on the list.

51 lines (45 loc) 1.11 kB
import React, { memo } from "react"; import PropTypes from "prop-types"; import { Animated, Image } from "react-native"; import { createElement, mergeViewStyle } from "./utils"; const BigListPlaceholder = ({ component, image, style, height, width = "100%", }) => { const bgStyles = { position: "absolute", resizeMode: "repeat", overflow: "visible", backfaceVisibility: "visible", flex: 1, height: "100%", width: "100%", }; return ( <Animated.View style={mergeViewStyle(style, { height, width, })} > {createElement(component) || ( <Image source={image || require("./assets/placeholder.png")} style={bgStyles} /> )} </Animated.View> ); }; BigListPlaceholder.propTypes = { height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]), width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]), style: PropTypes.oneOfType([PropTypes.object, PropTypes.array]), }; BigListPlaceholder.defaultProps = { width: "100%", }; export default memo(BigListPlaceholder);