60 lines
2.1 KiB
TypeScript
60 lines
2.1 KiB
TypeScript
// Metro module 11259 (f11260).
|
|
import { View } from "react-native";
|
|
import { Fonts } from "../../../Constants";
|
|
import { createStyles } from "../../../design/components/Styles/native/createStyles";
|
|
import Module712 from "../../../_bundle/Module712";
|
|
import { generateBoxShadowStyle, FOUR_DP_ELEVATION_SHADOW_PARAMS } from "../../../design/void/native";
|
|
import { EmbeddedActivityLabelTypes } from "../../../flow/Server";
|
|
import { Text } from "../../../design/components/Text/native/Text";
|
|
import { intl, t } from "../../../intl/index.native";
|
|
const useStyles = createStyles({
|
|
badge: {
|
|
position: "absolute",
|
|
top: 4,
|
|
right: 4,
|
|
display: "flex",
|
|
flexDirection: "row",
|
|
alignItems: "center",
|
|
backgroundColor: Module712.colors.STATUS_POSITIVE_BACKGROUND
|
|
},
|
|
newBadge: {
|
|
paddingLeft: 4,
|
|
paddingRight: 6,
|
|
borderRadius: Module712.radii.sm,
|
|
height: 16,
|
|
backgroundColor: Module712.colors.BADGE_NOTIFICATION_BACKGROUND
|
|
},
|
|
updatedBadge: {
|
|
paddingLeft: 4,
|
|
paddingRight: 6,
|
|
borderRadius: Module712.radii.sm,
|
|
height: 16,
|
|
backgroundColor: Module712.colors.BADGE_BACKGROUND_BRAND
|
|
},
|
|
elevationShadow: generateBoxShadowStyle(FOUR_DP_ELEVATION_SHADOW_PARAMS),
|
|
badgeText: {
|
|
textTransform: "uppercase",
|
|
marginLeft: 2,
|
|
fontFamily: Fonts.DISPLAY_EXTRABOLD,
|
|
lineHeight: 16,
|
|
fontSize: 12
|
|
}
|
|
});
|
|
export default function ActivityShelfBadge(props) {
|
|
const labelType = props.labelType;
|
|
let replacementStyles = props.replacementStyles;
|
|
const styles = useStyles();
|
|
if (replacementStyles == null) {
|
|
replacementStyles = styles.badge;
|
|
}
|
|
return labelType === EmbeddedActivityLabelTypes.NEW ? <View style={[replacementStyles, styles.newBadge, styles.elevationShadow]}>
|
|
<Text variant="text-xs/semibold" style={styles.badgeText} color="text-overlay-light">
|
|
{intl.string(t.y2b7CA)}
|
|
</Text>
|
|
</View> : labelType === EmbeddedActivityLabelTypes.UPDATED ? <View style={[replacementStyles, styles.updatedBadge, styles.elevationShadow]}>
|
|
<Text variant="text-xs/semibold" style={styles.badgeText} color="text-overlay-light">
|
|
{intl.string(t["/qdhkk"])}
|
|
</Text>
|
|
</View> : null;
|
|
};
|