Files
discord-decomp/sources/modules/user_profile/native/UserProfileNameplateEditButton.tsx
T
2026-07-27 16:20:00 +03:00

90 lines
6.0 KiB
TypeScript

/* Metro module 13221; source: modules/user_profile/native/UserProfileNameplateEditButton.tsx; dependencies: [31, 27, 1945, 6816, 482, 33, 4501, 697, 566, 8402, 13222, 4080, 13223, 1962, 13209, 1244, 8483, 1305, 8411, 2] */
function _fun100858(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100858, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13411:6, offset: 0x021fd03a, size: 340 bytes, params: 8, frame: 22
var object3;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
const env0_4 = value.ActivityIndicator;
const env0_5 = value.View;
const guildMemberStore = importDefault(1945) /* metro dependency 1945: GuildMemberStore */;
const COLLECTIBLES_PREVIEW_SIZE = (require(6816) /* metro dependency 6816: Constants */).COLLECTIBLES_PREVIEW_SIZE;
const env0_7 = (require(482) /* metro dependency 482: Constants */).NOOP;
const env0_8 = (require(33) /* metro dependency 33 */).jsx;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object3 = {};
const object4 = {height: COLLECTIBLES_PREVIEW_SIZE, width: COLLECTIBLES_PREVIEW_SIZE};
object4.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xs;
object4.overflow = 'hidden';
object3.previewContainer = object4;
const TEXT_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_SUBTLE;
object3.noneIcon = {tintColor: TEXT_SUBTLE};
const env0_9 = Reflect.apply(createStyles, value, [object3]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileNameplateEditButton.tsx');
exports.default = UserProfileNameplateEditButton;
}
function UserProfileNameplateEditButton({user, pendingNameplate, guildId}) { // fn#100859, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13411:487, offset: 0x021fd18e, size: 998 bytes, params: 2, frame: 26
var object2;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const UserProfileEditFormButton = (require(13209) /* metro dependency 13209: UserProfileEditFormControls */).UserProfileEditFormButton;
const styles = useStyles();
const value3 = guildId != null;
const value4 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore], _fun100860);
const profileCustomizationUtilsModule = require(8402) /* metro dependency 8402: ProfileCustomizationUtils */;
const getProfilePreviewValue = profileCustomizationUtilsModule.getProfilePreviewValue;
object2 = {pendingValue: pendingNameplate};
object2.userValue = user.collectibles?.nameplate;
object2.guildValue = value4 == null ? undefined : value4.collectibles?.nameplate;
object2.guildId = guildId;
const {nameplateProduct, nameplateRecord, nameplateData,
isFetching} = (require(13222) /* metro dependency 13222: useFetchNameplate */).useFetchNameplate(Reflect.apply(getProfilePreviewValue,
profileCustomizationUtilsModule, [object2])?.skuId);
let r0 = value3 ? value4 == null || value4.collectibles == null ? undefined : value4.collectibles.nameplate : user.collectibles?.nameplate;
r0 = pendingNameplate !== undefined ? pendingNameplate : r0;
const value7 = r0.useCallback(_fun100861, [user, r0, guildId]);
if (isFetching) {
return (
<UserProfileEditFormButton
label={intl.string(t.x5CoXR)}
buttonText={intl.string(t.MKDeyL)}
onPress={NOOP}
leading={<ActivityIndicator animating size="large" />}
loading
disabled
hideArrow
/>
);
}
const r13 = nameplateProduct?.name ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.PoWNfe);
const r12 = value3 ? r0 != null ? r13 : intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.ep5D4i,
{label: r13}) : r13;
return (
<UserProfileEditFormButton
label={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.x5CoXR)}
buttonText={r12}
accessibilityValue={{text: r12}}
onPress={value7}
leading={nameplateData == null || nameplateRecord == null ? ((Icon) => <Icon source={importDefault(8411) /* metro dependency 8411 */} style={styles.noneIcon} />)((require(1305) /* metro dependency 1305: native */).Icon) : nameplateProduct != null ? <View style={styles.previewContainer}>{((Component) => <Component nameplate={nameplateData} fullOpacity isSquarePreview />)(importDefault(8483) /* metro dependency 8483: Nameplate */)}</View> : ((Icon) => <Icon source={importDefault(8411) /* metro dependency 8411 */} style={styles.noneIcon} />)((require(1305) /* metro dependency 1305: native */).Icon)}
/>
);
}
function _fun100860() { // fn#100860, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13411:630, offset: 0x021fd574, size: 46 bytes, params: 1, frame: 14
return result ? GuildMemberStore.getMember(guildId, user.id) : null;
}
function _fun100861() { // fn#100861, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13411:1104, offset: 0x021fd5a2, size: 110 bytes, params: 1, frame: 17
let value = environment.__proto__;
const defaultImport = importDefault(dependencyMap[11]);
const openLazy = defaultImport.openLazy;
value = require(dependencyMap[13]);
value = value(dependencyMap[12], dependencyMap.paths);
Reflect.apply(openLazy, defaultImport, [value, 'Edit Nameplate', {user: user, currentNameplate: env0_3,
guildId: guildId}]);
}