@eslam-elmeniawy/react-native-common-components
Version:
Common `ReactNative` components packed in library for usage in projects.
51 lines (48 loc) • 1.27 kB
JavaScript
;
// External imports.
import * as React from 'react';
import { Image, StyleSheet } from 'react-native';
// Types imports.
// Internal imports.
import styles from "./ImagePlaceholder.styles.js";
import { jsx as _jsx } from "react/jsx-runtime";
const Placeholder = /*#__PURE__*/React.memo(props => {
const {
source,
placeholder,
vectorPlaceholder,
resizeMode,
isLoading,
isError
} = props;
if (!source || isError || isLoading) {
const _resizeMode = resizeMode ?? 'cover';
if (placeholder) {
return /*#__PURE__*/_jsx(Image, {
source: placeholder,
style: StyleSheet.flatten([styles.image, {
resizeMode: _resizeMode
}]),
resizeMode: _resizeMode
});
}
if (vectorPlaceholder) {
try {
const VectorImage = require('react-native-vector-image').default;
return /*#__PURE__*/_jsx(VectorImage, {
source: vectorPlaceholder,
style: StyleSheet.flatten([styles.image, {
resizeMode: _resizeMode
}]),
resizeMode: _resizeMode
});
} catch (error) {
return null;
}
}
return null;
}
return null;
});
export default Placeholder;
//# sourceMappingURL=Placeholder.js.map