decord/source/components_native/add_friend/AddFriendModal.tsx

160 lines
7.1 KiB
TypeScript
Raw Normal View History

2026-07-29 08:29:29 +00:00
// Module ID: 12991
// Function ID: 12992
2026-07-20 16:05:17 +00:00
// Name: AddFriendModalScene
2026-07-29 08:29:29 +00:00
// Dependencies: [32, 19, 17, 1874, 676, 11769, 21, 4189, 5109, 712, 11771, 4616, 698, 500, 1483, 4395, 4028, 1236, 8196, 6752, 12992, 5143, 4185, 12993, 12995, 1581, 5570, 2]
2026-07-20 16:05:17 +00:00
// Exports: default
2026-07-29 08:29:29 +00:00
// Module 12991 (AddFriendModalScene)
2026-07-23 10:11:24 +00:00
import _slicedToArray from "_slicedToArray";
2026-07-29 08:29:29 +00:00
import HeaderActionButton from "HeaderActionButton";
import get_ActivityIndicator from "getSystemLocale";
import mergeGuildAvatar from "mergeGuildAvatar";
2026-07-23 10:11:24 +00:00
import ME from "ME";
import { ContactPermissions } from "ContactSyncLandingPage";
2026-07-29 08:29:29 +00:00
import jsxProd from "HeaderBackImage";
import createCacheKey from "createCacheKey";
2026-07-23 10:11:24 +00:00
import importDefaultResult from "createTextStyle";
2026-07-29 08:29:29 +00:00
let Fonts;
let c10;
let c5;
2026-07-23 10:11:24 +00:00
let closure_6;
2026-07-29 08:29:29 +00:00
let metroImportAll;
let unpackModuleId;
2026-07-23 10:11:24 +00:00
const require = arg1;
2026-07-20 16:05:17 +00:00
function AddFriendModalScene(onSkip) {
2026-07-29 08:29:29 +00:00
let c3;
let tmp5;
2026-07-20 16:05:17 +00:00
onSkip = onSkip.onSkip;
2026-07-23 10:11:24 +00:00
const sourceMetadata = onSkip.sourceMetadata;
2026-07-29 08:29:29 +00:00
let contactSyncAccount;
let callback;
let navigation;
callback = undefined;
let callback1;
let tmp = createCacheKey();
2026-07-23 10:11:24 +00:00
let obj = onSkip(contactSyncAccount[10]);
contactSyncAccount = obj.useContactSyncAccount();
let obj1 = onSkip(contactSyncAccount[10]);
2026-07-29 08:29:29 +00:00
[tmp5, c3] = callback(navigation.useState(!obj1.isContactSyncEnabled(contactSyncAccount)), 2);
2026-07-23 10:11:24 +00:00
sourceMetadata(contactSyncAccount[11])(() => {
sourceMetadata(contactSyncAccount[12]).track(outer1_8.FRIEND_ADD_VIEWED, sourceMetadata);
2026-07-29 08:29:29 +00:00
let obj = sourceMetadata(contactSyncAccount[12]);
2026-07-20 16:05:17 +00:00
const result = onSkip(contactSyncAccount[10]).checkContactPermissions();
result.then((arg0) => {
2026-07-29 08:29:29 +00:00
const obj = outer1_0(outer1_2[13]);
const tmp = outer1_9;
const tmp2 = outer1_0;
const tmp3 = outer1_2;
let tmp5 = arg0 === outer1_9.NOT_DETERMINED || outer1_0(outer1_2[13]).isAndroid() && arg0 === outer1_9.UNAUTHORIZED;
if (!tmp5) {
tmp5 = !tmp2(tmp3[10]).isContactSyncEnabled(closure_2);
const tmp2Result = tmp2(tmp3[10]);
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
callback(tmp5);
2026-07-20 16:05:17 +00:00
});
});
2026-07-23 10:11:24 +00:00
let obj2 = onSkip(contactSyncAccount[14]);
navigation = obj2.useNavigation();
2026-07-20 16:05:17 +00:00
const items = [onSkip];
2026-07-23 10:11:24 +00:00
callback = navigation.useCallback(() => {
2026-07-29 08:29:29 +00:00
if (onSkip != null) {
tmp();
2026-07-20 16:05:17 +00:00
}
let arr = sourceMetadata(contactSyncAccount[15]);
arr = arr.pop();
}, items);
2026-07-29 08:29:29 +00:00
callback1 = navigation.useCallback(() => {
currentUser = currentUser.getCurrentUser();
2026-07-20 16:05:17 +00:00
let userTag;
if (null != currentUser) {
2026-07-29 08:29:29 +00:00
userTag = sourceMetadata(contactSyncAccount[16]).getUserTag(currentUser);
const obj = sourceMetadata(contactSyncAccount[16]);
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
sourceMetadata(contactSyncAccount[12]).track(constants.FRIEND_ADD_VIEWED, { friend_add_type: "Invite", source_page: "Add Friend Modal" });
2026-07-20 16:05:17 +00:00
const intl = onSkip(contactSyncAccount[17]).intl;
const obj2 = sourceMetadata(contactSyncAccount[12]);
2026-07-29 08:29:29 +00:00
const formatToPlainStringResult = intl.formatToPlainString(onSkip(contactSyncAccount[17]).t["6E9a1J"], { url: "https://discord.com/", username: userTag });
2026-07-20 16:05:17 +00:00
onSkip(contactSyncAccount[18]).showShareActionSheet({ message: formatToPlainStringResult }, "Add Friend Modal");
}, []);
const items1 = [callback, callback1, navigation];
2026-07-23 10:11:24 +00:00
const layoutEffect = navigation.useLayoutEffect(() => {
let obj = {
2026-07-20 16:05:17 +00:00
headerRight() {
2026-07-29 08:29:29 +00:00
const obj = { source: null, onPress: null, accessibilityLabel: null };
obj[0] = outer1_1(outer1_2[20]);
obj[1] = closure_6;
const intl = outer1_0(outer1_2[17]).intl;
obj[2] = intl.string(outer1_0(outer1_2[17]).t.RDE0Sc);
return outer1_10(outer1_0(outer1_2[19]).HeaderActionButton, obj);
2026-07-20 16:05:17 +00:00
},
2026-07-29 08:29:29 +00:00
headerLeft: null
2026-07-20 16:05:17 +00:00
};
2026-07-29 08:29:29 +00:00
obj[1] = onSkip(contactSyncAccount[21]).getHeaderCloseButton(callback);
2026-07-20 16:05:17 +00:00
navigation.setOptions(obj);
}, items1);
2026-07-29 08:29:29 +00:00
obj = { style: tmp.headerText, accessibilityRole: "header", variant: "heading-xl/extrabold", color: "mobile-text-heading-primary", children: null };
2026-07-23 10:11:24 +00:00
let intl = onSkip(contactSyncAccount[17]).intl;
2026-07-29 08:29:29 +00:00
obj[4] = intl.string(onSkip(contactSyncAccount[17]).t.GWMTSE);
2026-07-23 10:11:24 +00:00
const items2 = [callback2(onSkip(contactSyncAccount[22]).Text, obj), , , ];
2026-07-29 08:29:29 +00:00
obj = { style: tmp.subheaderText, variant: "text-sm/medium", color: "text-default", children: null };
2026-07-23 10:11:24 +00:00
const intl2 = onSkip(contactSyncAccount[17]).intl;
2026-07-29 08:29:29 +00:00
obj[3] = intl2.string(onSkip(contactSyncAccount[17]).t["Rn/sLl"]);
items2[1] = callback2(onSkip(contactSyncAccount[22]).Text, obj);
obj1 = { style: tmp.input, autoFocusInput: false };
items2[2] = callback2(sourceMetadata(contactSyncAccount[23]), obj1);
obj2 = { style: tmp.otherOptionsContainer, children: null };
const obj3 = { accessibilityRole: "header", variant: "eyebrow", color: "text-default", children: null };
2026-07-23 10:11:24 +00:00
const intl3 = onSkip(contactSyncAccount[17]).intl;
2026-07-29 08:29:29 +00:00
obj3[3] = intl3.string(onSkip(contactSyncAccount[17]).t.dukg0Z);
const items3 = [callback2(onSkip(contactSyncAccount[22]).Text, obj3), ];
let tmp14Result = null;
if (tmp5) {
const obj4 = { style: null, location: "Add Friend Modal" };
obj4[0] = tmp.rowContainer;
tmp14Result = callback2(sourceMetadata(contactSyncAccount[24]), obj4);
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
const obj5 = { keyboardShouldPersistTaps: "handled", children: null };
items3[1] = tmp14Result;
obj2[1] = items3;
items2[3] = closure_11(callback, obj2);
obj5[1] = items2;
return closure_11(callback1, obj5);
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
({ View: c5, ScrollView: closure_6 } = get_ActivityIndicator);
({ AnalyticEvents: metroImportAll, Fonts } = ME);
({ jsx: c10, jsxs: unpackModuleId } = jsxProd);
createCacheKey = { headerText: null, subheaderText: null, input: null, otherOptionsContainer: null, rowContainer: null };
createCacheKey = {};
let merged = Object.assign(require("createTextStyle")(Fonts.DISPLAY_EXTRABOLD, require("Themes").colors.MOBILE_TEXT_HEADING_PRIMARY, 24));
createCacheKey.marginTop = 32;
createCacheKey.marginHorizontal = 16;
createCacheKey.textAlign = "center";
createCacheKey[0] = createCacheKey;
createCacheKey[1] = { lineHeight: 18, marginVertical: 8, marginHorizontal: 16, textAlign: "center" };
createCacheKey[2] = { marginTop: 16 };
createCacheKey[3] = { marginTop: 16, paddingHorizontal: 16 };
createCacheKey[4] = { backgroundColor: require("Themes").colors.BACKGROUND_SURFACE_HIGH, marginTop: 8 };
createCacheKey = createCacheKey.createStyles(createCacheKey);
let obj1 = { backgroundColor: require("Themes").colors.BACKGROUND_SURFACE_HIGH, marginTop: 8 };
2026-07-23 10:11:24 +00:00
let result = require("get ActivityIndicator").fileFinishedImporting("components_native/add_friend/AddFriendModal.tsx");
2026-07-20 16:05:17 +00:00
export default function AddFriendModal(arg0) {
2026-07-23 10:11:24 +00:00
const _require = arg0;
2026-07-20 16:05:17 +00:00
const items = [arg0];
2026-07-29 08:29:29 +00:00
const screens = React.useMemo(() => {
let obj = { ADD_FRIEND: null };
obj = { ignoreKeyboard: true, title: null, initialParams: null, render: null };
const intl = callback(outer1_2[17]).intl;
obj[1] = intl.string(callback(outer1_2[17]).t.w5uwoI);
obj[2] = callback;
obj[3] = function render(arg0) {
2026-07-20 16:05:17 +00:00
const merged = Object.assign(arg0);
2026-07-29 08:29:29 +00:00
return callback(closure_13, {});
2026-07-20 16:05:17 +00:00
};
2026-07-29 08:29:29 +00:00
obj[0] = obj;
2026-07-20 16:05:17 +00:00
return obj;
2026-07-29 08:29:29 +00:00
}, items);
return callback2(_require(5570).Navigator, { screens, initialRouteName: "ADD_FRIEND", headerStatusBarHeight: importDefault(1581)().top });
2026-07-20 16:05:17 +00:00
};