70 lines
2.9 KiB
TypeScript
70 lines
2.9 KiB
TypeScript
// Metro module 13910 (f13911).
|
|
import { useCallback } from "react";
|
|
import { View } from "react-native";
|
|
import FamilyCenterStore from "../FamilyCenterStore";
|
|
import { CONNECT_GUARDIAN_BOTTOM_SHEET_KEY } from "../FamilyCenterConstants";
|
|
import { createStyles } from "../../../design/components/Styles/native/createStyles";
|
|
import Module712 from "../../../_bundle/Module712";
|
|
import { useStateFromStores } from "../../../_bundle/defaultAreStatesEqual";
|
|
import ActionSheetActionCreators from "../../action_sheet/native/ActionSheetActionCreators";
|
|
import useOnNewPendingRequest from "../hooks/useOnNewPendingRequest";
|
|
import { BottomSheet } from "../../../design/components/Sheet/native/BottomSheet.native";
|
|
import { Text } from "../../../design/components/Text/native/Text";
|
|
import { intl } from "../../../intl/index.native";
|
|
import FamilyCenter_messages from "../FamilyCenter.messages";
|
|
import { ConnectGuardianCard } from "./ConnectGuardianCard";
|
|
import { Button } from "../../../design/components/Button/native/Button.native";
|
|
const useStyles = createStyles({
|
|
container: {
|
|
paddingHorizontal: Module712.space.PX_24,
|
|
paddingVertical: Module712.space.PX_24,
|
|
gap: Module712.space.PX_24
|
|
},
|
|
info: {
|
|
alignItems: "center",
|
|
gap: Module712.space.PX_8
|
|
},
|
|
centered: {
|
|
textAlign: "center"
|
|
},
|
|
cardContainer: {
|
|
alignItems: "center"
|
|
}
|
|
});
|
|
export default function ConnectGuardianBottomSheet(props) {
|
|
const { linkCode, expiresAt, onRefresh } = props;
|
|
let title = props.title;
|
|
let body = props.body;
|
|
const styles = useStyles();
|
|
let linkCode2 = useStateFromStores([FamilyCenterStore], () => FamilyCenterStore.getLinkCode());
|
|
let expiresAt2 = useStateFromStores([FamilyCenterStore], () => FamilyCenterStore.getLinkCodeExpiresAt());
|
|
const callback = useCallback(() => {
|
|
ActionSheetActionCreators.hideActionSheet(CONNECT_GUARDIAN_BOTTOM_SHEET_KEY);
|
|
}, []);
|
|
useOnNewPendingRequest(callback);
|
|
if (title == null) {
|
|
title = intl.string(FamilyCenter_messages.aCUVfL);
|
|
}
|
|
const r59 = [<Text style={styles.centered} accessibilityRole="header" variant="heading-xl/bold" color="mobile-text-heading-primary">{title}</Text>, ,];
|
|
if (body == null) {
|
|
body = intl.format(FamilyCenter_messages["2O6ltn"], {
|
|
link: "https://support.discord.com/hc/articles/14155060633623"
|
|
});
|
|
}
|
|
r59[1] = <Text style={styles.centered} variant="text-md/medium" color="text-default">{body}</Text>;
|
|
const r74 = [<View style={styles.info}>{r59}</View>, , ,];
|
|
if (linkCode2 == null) {
|
|
linkCode2 = linkCode;
|
|
}
|
|
if (expiresAt2 == null) {
|
|
expiresAt2 = expiresAt;
|
|
}
|
|
r74[1] = <View style={styles.cardContainer}>
|
|
<ConnectGuardianCard linkCode={linkCode2} expiresAt={expiresAt2} onRefresh={onRefresh} />
|
|
</View>;
|
|
r74[2] = <Button variant="secondary" size="md" text={intl.string(FamilyCenter_messages.Hsm5IF)} onPress={callback} />;
|
|
return <BottomSheet startExpanded>
|
|
<View style={styles.container}>{r74}</View>
|
|
</BottomSheet>;
|
|
};
|