56 lines
1.7 KiB
TypeScript
56 lines
1.7 KiB
TypeScript
// Metro module 12157 (f12158).
|
|
import { Image as Image2, View } from "react-native";
|
|
import { createStyles } from "../../../design/components/Styles/native/createStyles";
|
|
import Module712 from "../../../_bundle/Module712";
|
|
import { intl, t } from "../../../intl/index.native";
|
|
import { TextSkeleton } from "./UserProfileApplicationWidgetSkeletons";
|
|
import { Text } from "../../../design/components/Text/native/Text";
|
|
const useStyles = createStyles({
|
|
fieldTextRow: {
|
|
flexDirection: "row",
|
|
alignItems: "center",
|
|
gap: Module712.space.PX_4
|
|
},
|
|
fieldIcon: {
|
|
width: 16,
|
|
height: 16
|
|
}
|
|
});
|
|
export function formatDurationNarrow(a0) {
|
|
const r9 = Number.isFinite(a0) ? Math.max(0, Math.floor(a0)) : 0;
|
|
const hours = Math.floor(r9 / 3600000);
|
|
const minutes = Math.floor(r9 / 60000) % 60;
|
|
const seconds = Math.floor(r9 / 1000) % 60;
|
|
const r33 = [];
|
|
if (hours > 0) {
|
|
r33.push(intl.formatToPlainString(t.rhY1Rs, {
|
|
hours
|
|
}));
|
|
}
|
|
if (0 < minutes) {
|
|
r33.push(intl.formatToPlainString(t["XIGt+W"], {
|
|
minutes
|
|
}));
|
|
}
|
|
let r63 = seconds > 0;
|
|
if (!(0 < seconds)) {
|
|
r63 = r33.length === 0;
|
|
}
|
|
if (r63) {
|
|
r33.push(intl.formatToPlainString(t.pyvjRp, {
|
|
seconds
|
|
}));
|
|
}
|
|
return r33.join(" ");
|
|
}
|
|
export function FieldText(props) {
|
|
const { field, variant, color, skeletonWidthChars } = props;
|
|
const styles = useStyles();
|
|
return field.status !== "hidden" ? field.status === "skeleton" ? <TextSkeleton variant={variant} widthChars={skeletonWidthChars} /> : <View style={styles.fieldTextRow}>
|
|
<Text variant={variant} color={color} lineClamp={2}>{field.text}</Text>
|
|
{field.icon != null && <Image2 source={{
|
|
uri: field.icon.url
|
|
}} style={styles.fieldIcon} resizeMode="contain" />}
|
|
</View> : null;
|
|
}
|