51 lines
1.2 KiB
React
51 lines
1.2 KiB
React
// Metro module 18 (f19).
|
|
import ProgressBarAndroid from "./ProgressBarAndroid";
|
|
import View from "./View";
|
|
import Module254 from "./Module254";
|
|
let styles;
|
|
const ActivityIndicator = (props) => {
|
|
let size2, sizeSmall;
|
|
const { ref, animating = true, color = null, hidesWhenStopped = true, onLayout, size = "small", style, ...rest } = props;
|
|
if (size === "small") {
|
|
sizeSmall = styles.sizeSmall;
|
|
size2 = "small";
|
|
} else if (size === "large") {
|
|
sizeSmall = styles.sizeLarge;
|
|
size2 = "large";
|
|
} else {
|
|
sizeSmall = {
|
|
height: size,
|
|
width: size
|
|
};
|
|
size2 = void 0;
|
|
}
|
|
const props2 = {
|
|
animating,
|
|
color,
|
|
hidesWhenStopped,
|
|
...rest,
|
|
ref,
|
|
style: sizeSmall,
|
|
size: size2
|
|
};
|
|
return <View onLayout={onLayout} style={Module254.compose(styles.container, style)}>
|
|
<ProgressBarAndroid {...props2} styleAttr="Normal" indeterminate />
|
|
</View>;
|
|
};
|
|
ActivityIndicator.displayName = "ActivityIndicator";
|
|
styles = Module254.create({
|
|
container: {
|
|
alignItems: "center",
|
|
justifyContent: "center"
|
|
},
|
|
sizeSmall: {
|
|
width: 20,
|
|
height: 20
|
|
},
|
|
sizeLarge: {
|
|
width: 36,
|
|
height: 36
|
|
}
|
|
});
|
|
export default ActivityIndicator;
|