50 lines
2.7 KiB
TypeScript
50 lines
2.7 KiB
TypeScript
// Metro module 9696 (f9697).
|
|
import { Image as Image2, View } from "react-native";
|
|
import { NativePermissionStatus } from "../../../native_permissions/NativePermissionConstants";
|
|
import { createStyles } from "../../../../design/components/Styles/native/createStyles";
|
|
import Module712 from "../../../../_bundle/Module712";
|
|
import { Text } from "../../../../design/components/Text/native/Text";
|
|
import { Button } from "../../../../design/components/Button/native/Button.native";
|
|
import { SettingsIcon } from "../../../../design/components/Icon/native/redesign/generated/SettingsIcon";
|
|
import { intl, t } from "../../../../intl/index.native";
|
|
import Module9697 from "../../../../_bundle/Module9697";
|
|
import { CameraIcon } from "../../../../design/components/Icon/native/redesign/generated/CameraIcon";
|
|
import Module9698 from "../../../../_bundle/Module9698";
|
|
let useStyles;
|
|
const MediaKeyboardEmptyState = function MediaKeyboardEmptyState(props) {
|
|
const { actionIcon, actionLabel, actionPress, imageSource, label } = props;
|
|
const styles = useStyles();
|
|
return <View style={styles.container}>
|
|
<Image2 source={imageSource} />
|
|
<Text variant="text-sm/semibold" color="text-muted" style={styles.label}>{label}</Text>
|
|
<Button icon={actionIcon} size="sm" text={actionLabel} onPress={actionPress} />
|
|
</View>;
|
|
};
|
|
useStyles = createStyles({
|
|
container: {
|
|
marginHorizontal: Module712.space.PX_8,
|
|
marginVertical: Module712.space.PX_32,
|
|
justifyContent: "center",
|
|
alignItems: "center"
|
|
},
|
|
label: {
|
|
textAlign: "center",
|
|
marginVertical: Module712.space.PX_16
|
|
}
|
|
});
|
|
export default MediaKeyboardEmptyState;
|
|
export function getMediaEmptyStateComponentOrNull({ photoPermissionStatus, photosEmpty, showCameraButton = true, onPressCamera, onManageLimited, onPressPrivacySettings }) {
|
|
if (photoPermissionStatus !== NativePermissionStatus.DENIED && photoPermissionStatus !== NativePermissionStatus.RESTRICTED) {
|
|
if (photosEmpty) {
|
|
if (photoPermissionStatus === NativePermissionStatus.LIMITED) {
|
|
return <MediaKeyboardEmptyState actionIcon={<SettingsIcon color="white" size="sm" />} actionLabel={intl.string(t.JuXTi6)} actionPress={onManageLimited} imageSource={Module9697} label={intl.string(t["5g7NcN"])} />;
|
|
}
|
|
if (showCameraButton) {
|
|
return <MediaKeyboardEmptyState actionIcon={<CameraIcon color="white" size="sm" />} actionLabel={intl.string(t.tpoWUd)} actionPress={onPressCamera} imageSource={Module9698} label={intl.string(t.YOvRBZ)} />;
|
|
}
|
|
}
|
|
return void 0;
|
|
}
|
|
return <MediaKeyboardEmptyState actionIcon={<SettingsIcon color="white" size="sm" />} actionLabel={intl.string(t["457oeG"])} actionPress={onPressPrivacySettings} imageSource={Module9697} label={intl.string(t["8p9jGu"])} />;
|
|
}
|