Files
2026-07-28 01:06:53 +03:00

781 lines
47 KiB
TypeScript

/* Metro module 10296; source: modules/guild_settings/native/GuildSettingsModalMemberEdit.tsx; dependencies: [6, 7, 15, 17, 18, 31, 27, 1422, 1939, 1945, 1938, 1867, 3784, 1878, 10297, 661, 33, 4501, 697, 3789, 22, 8950, 4573, 6238, 1244, 6231, 10298, 10299, 3856, 10306, 5277, 5282, 3995, 8706, 3773, 7972, 4572, 1305, 7981, 3868, 1484, 566, 44, 8037, 6902, 5462, 10311, 10313, 6518, 5280, 2] */
import ClassCallCheck from '../../../by-id/module-00006-ClassCallCheck.js'; /* Metro dependency 6 */
import CreateClass from '../../../by-id/module-00007-CreateClass.js'; /* Metro dependency 7 */
import PossibleConstructorReturn from '../../../by-id/module-00015-PossibleConstructorReturn.js'; /* Metro dependency 15 */
import Module00017 from '../../../by-id/module-00017.js'; /* Metro dependency 17 */
import Inherits from '../../../by-id/module-00018-Inherits.js'; /* Metro dependency 18 */
import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
import GuildStore from '../../../stores/GuildStore.tsx'; /* Metro dependency 1867 */
import UserStore from '../../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import GuildRoleStore from '../../../stores/GuildRoleStore.tsx'; /* Metro dependency 1938 */
import GuildMemberStore from '../../../stores/GuildMemberStore.tsx'; /* Metro dependency 1945 */
import PermissionStore from '../../../stores/PermissionStore.tsx'; /* Metro dependency 3784 */
import UseInitialValue from '../../../hooks/useInitialValue.tsx'; /* Metro dependency 6518 */
import GuildSettingsModalMembersStore from '../GuildSettingsModalMembersStore.tsx'; /* Metro dependency 10297 */
import GuildSettingsModalMembersActionCreators from '../GuildSettingsModalMembersActionCreators.tsx'; /* Metro dependency 10298 */
import KickConfirm from '../../guild_moderation/native/KickConfirm.tsx'; /* Metro dependency 10311 */
import BanConfirm from '../../guild_moderation/native/BanConfirm.tsx'; /* Metro dependency 10313 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */
import * as NativeModule from '../../../design/void/native.tsx'; /* Metro dependency 1305 */
import * as GuildRecordModule from '../../../records/GuildRecord.tsx'; /* Metro dependency 1422 */
import * as UseNavigationNativeModule from '../../../design/components/Navigator/native/useNavigation.native.tsx'; /* Metro dependency 1484 */
import * as GuildRoleRecordModule from '../../../records/GuildRoleRecord.tsx'; /* Metro dependency 1939 */
import * as NativeModule2 from '../../../external/discord_common/js/packages/design/native.tsx'; /* Metro dependency 3868 */
import * as CreateStylesModule from '../../../design/components/Styles/native/createStyles.tsx'; /* Metro dependency 4501 */
import * as StackNativeModule from '../../../design/components/Stack/native/Stack.native.tsx'; /* Metro dependency 4572 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as HeaderActionButtonNativeModule from '../../../design/components/Navigator/native/HeaderActionButton.native.tsx'; /* Metro dependency 5277 */
import * as NavigatorNativeModule from '../../../design/components/Navigator/native/Navigator.native.tsx'; /* Metro dependency 5280 */
import * as NavigatorHeaderNativeModule from '../../../design/components/Navigator/native/NavigatorHeader.native.tsx'; /* Metro dependency 5282 */
import * as TableRowGroupNativeModule from '../../../design/components/TableRow/native/TableRowGroup.native.tsx'; /* Metro dependency 6231 */
import * as TableRowNativeModule from '../../../design/components/TableRow/native/TableRow.native.tsx'; /* Metro dependency 6238 */
import * as SubscribeGuildMembersModule from '../../../lib/guild/subscribeGuildMembers.tsx'; /* Metro dependency 6902 */
import * as NativeModule3 from '../../../design/void/Form/native/index.tsx'; /* Metro dependency 7972 */
import * as UseCanToggleCommunicationDisableOnUserModule from '../../guild_communication_disabled/useCanToggleCommunicationDisableOnUser.tsx'; /* Metro dependency 8037 */
import * as TableCheckboxRowNativeModule from '../../../design/components/TableRow/native/TableCheckboxRow.native.tsx'; /* Metro dependency 8950 */
import * as GuildDisableCommunicationActionCreatorsNativeModule from '../../guild_communication_disabled/GuildDisableCommunicationActionCreators.native.tsx'; /* Metro dependency 10299 */
function _fun79844(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#79844, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:6, offset: 0x01e648ee, size: 802 bytes, params: 8, frame: 24
const env0_0 = require;
const GuildSettingsModalMemberEditScene2 = GuildSettingsModalMemberEditScene;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = ReactModule;
const createLegacyClassComponentStyles = CreateStylesModule.createLegacyClassComponentStyles;
const TABLE_ROW_PADDING = (Native).modules.mobile.TABLE_ROW_PADDING;
const env0_26 = Reflect.apply(createLegacyClassComponentStyles, CreateStylesModule, [{form: {flex: 1},
formContent: {paddingTop: 16}, stackPadding: {paddingHorizontal: TABLE_ROW_PADDING}, userInfo: {height: 63},
avatar: {'width': 40, 'height': 40}, rowLabel: {flexDirection: 'row'}, ctaButton: {'marginTop': 8,
'marginBottom': 8}, actionButtonLeft: {'marginRight': 0, 'marginLeft': 0, 'paddingRight': 0, 'paddingLeft': 16},
actionButtonRight: {'marginRight': 0, 'marginLeft': 0, 'paddingRight': 16, 'paddingLeft': 0},
actionButtonContainer: {flexBasis: 'auto'}}]);
let PureComponent = value.PureComponent;
_fun79857(PureComponent).defaultProps = {roles: []};
PureComponent = value.PureComponent;
value = _fun79868(PureComponent);
const ThemeContext = (NativeModule2).ThemeContext;
value.contextType = ThemeContext;
(FileImportTrackerModule).fileFinishedImporting('modules/guild_settings/native/GuildSettingsModalMemberEdit.tsx');
exports.default = MemberModalEdit;
exports.GuildSettingsModalMemberEditScene = GuildSettingsModalMemberEditScene2;
function _callSuper_79845(a0, a1, a2) { // fn#79845, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:439, offset: 0x01e64c10, size: 100 bytes, params: 4, frame: 20
var r0;
var Reflect;
let value = a2;
const value3 = Module00017(a1);
if (_isNativeReflectConstruct_79846()) {
Reflect = global.Reflect;
value = Reflect.construct(value3, value || [], Module00017(a0).constructor);
r0 = value;
} else {
value = value3.apply(a0, value);
r0 = value;
}
return PossibleConstructorReturn(a0, r0);
}
function _isNativeReflectConstruct_79846() { // fn#79846, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:570, offset: 0x01e64c74, size: 98 bytes, params: 1, frame: 18
var Boolean;
var prototype;
var valueOf;
var call;
var Reflect;
var construct;
var closure;
var value;
var error;
try {
Boolean = global.Boolean;
prototype = Boolean.prototype;
valueOf = prototype.valueOf;
call = valueOf.call;
Reflect = global.Reflect;
construct = Reflect.construct;
Boolean = global.Boolean;
closure = function() {
};
value = Reflect.apply(construct, Reflect, [Boolean, [], closure]);
value = Reflect.apply(call, valueOf, [value]);
var result = !value;
} catch (error) {
}
return (_isNativeReflectConstruct_79846_isNativeReflectConstruct = function() {
return !!result;
})();
}
function GuildSettingsModalMemberEditScene({guildId, userId, onClose, contentContainerStyle}) { // fn#79849, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:7360, offset: 0x01e64cd6, size: 595 bytes, params: 2, frame: 28
var r0;
var jsxRuntimeEnv0_25Binding;
var binding3;
let value2 = (UseNavigationNativeModule).useNavigation();
const guild = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildStore], function() {
return GuildStore.getGuild(guildId);
});
const sortedRoles = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildRoleStore],
function() {
return GuildRoleStore.getSortedRoles(guildId);
});
const {user, currentUser} = (require(566) /* metro dependency 566: flux */).useStateFromStoresObject([UserStore],
function() {
var value2 = UserStore.getCurrentUser();
importDefault(dependencyMap[42])(value2 != null,
'GuildSettingsModalMemberEditScene: current user cannot be undefined');
var object = {};
object.user = UserStore.getUser(userId);
object.currentUser = value2;
return object;
});
env0_9.useEffect(_fun79853, []);
const value4 = (require(566) /* metro dependency 566: flux */).useStateFromStoresObject([GuildSettingsModalMembersStore,
GuildMemberStore, PermissionStore, UserStore, GuildStore], _fun79855);
(SubscribeGuildMembersModule).useSubscribeGuildMembers({[guildId]: [userId]},
'GuildSettingsModalMemberEdit');
if (currentUser != null) {
if (guild != null) {
if (user != null) {
jsxRuntimeEnv0_25Binding = jsxRuntimeEnv0_25;
binding3 = env0_28;
var binding3Props = {...value4};
binding3Props['onClose'] = onClose;
binding3Props['handleSuccessfulRemoval'] = env0_9.useCallback(_fun79856, [value2]);
binding3Props['guild'] = guild;
binding3Props['sortedGuildRoles'] = sortedRoles;
binding3Props['currentUser'] = currentUser;
binding3Props['user'] = user;
binding3Props['navigation'] = value2;
binding3Props['contentContainerStyle'] = contentContainerStyle;
r0 = (
<>
{((Component) => <Component {...binding3Props} />)(binding3)}
{((NavScrim) => <NavScrim />)((require(5462) /* metro dependency 5462: NavScrimAndroid */).NavScrim)}
</>
);
} else {
r0 = null;
}
} else {
r0 = null;
}
} else {
r0 = null;
}
return r0;
function _fun79853() { // fn#79853, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:7847, offset: 0x01e64fba, size: 46 bytes, params: 1, frame: 11
var environment;
const value = environment.__proto__;
(GuildSettingsModalMembersActionCreators).startEditingNickname();
return _fun79854;
function _fun79854() { // fn#79854, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:7884, offset: 0x01e64fe8, size: 37 bytes, params: 1, frame: 11
const value = environment.__proto__.__proto__;
(GuildSettingsModalMembersActionCreators).stopEditingRoles();
}
}
function _fun79855() { // fn#79855, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:7977, offset: 0x01e6500d, size: 430 bytes, params: 1, frame: 20
const object = {};
object.member = GuildMemberStore.getMember(guildId, userId);
object.nicknameError = GuildSettingsModalMembersStore.nicknameError;
object.editRoles = GuildSettingsModalMembersStore.roles;
object.isEditing = GuildSettingsModalMembersStore.isEditing;
object.submitting = GuildSettingsModalMembersStore.isSubmitting;
object.canChangeNick = guild != null && user != null && PermissionStore.canManageUser(Permissions.MANAGE_NICKNAMES,
user, guild);
const permissionStoreBinding = PermissionStore;
const can = permissionStoreBinding.can;
const MANAGE_ROLES = Permissions.MANAGE_ROLES;
guildBinding = guild;
object.canManageRoles = Reflect.apply(can, permissionStoreBinding, [MANAGE_ROLES, guildBinding]);
object.canKick = guildBinding != null && user != null && PermissionStore.canManageUser(Permissions.KICK_MEMBERS,
user, guild);
object.canBan = guild != null && user != null && PermissionStore.canManageUser(Permissions.BAN_MEMBERS, user, guild);
const value9 = undefined;
object.canDisableCommunication = UseCanToggleCommunicationDisableOnUserModule.canToggleCommunicationDisableOnUser(guild == null ? value9 : guild.id,
user == null ? value9 : user.id, [UserStore, GuildStore, PermissionStore]);
return object;
}
function _fun79856() { // fn#79856, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:8555, offset: 0x01e651bb, size: 23 bytes, params: 1, frame: 11
return env0_2.pop(2);
}
}
function _fun79857(a0) { // fn#79857, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:1246, offset: 0x01e651d2, size: 102 bytes, params: 2, frame: 17
const RolesList_798582 = RolesList_79858;
Inherits(RolesList_798582, a0);
return CreateClass(RolesList_798582, [{key: 'render', value: value_79859}], [{key: 'getDerivedStateFromProps',
value: function({isEditing}, a1) {
return a1.isEditingProp === isEditing ? null : {isEditingProp: isEditing};
}}]);
function RolesList_79858(a0) { // fn#79858, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:1258, offset: 0x01e65238, size: 68 bytes, params: 2, frame: 17
let value = environment.__proto__;
env1_4(this, RolesList_79858);
value = _callSuper_79845(this, RolesList_79858, [a0]);
value.state = {isEditingProp: a0.isEditing};
return value;
}
function value_79859() { // fn#79859, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:1437, offset: 0x01e6527c, size: 500 bytes, params: 1, frame: 27
var r4;
var value6;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const props = this.props;
const guild = props.guild;
const sortedGuildRoles = props.sortedGuildRoles;
const env0_1 = props.roles;
const isEditing = props.isEditing;
const currentUserId = props.currentUserId;
const onStartEditing = props.onStartEditing;
const env0_3 = props.onToggleRole;
if (isEditing) {
var env0_4 = (importAll(3789) /* metro dependency 3789: PermissionUtils */).getHighestRole(guild,
currentUserId);
r4 = (importDefault(22) /* metro dependency 22 */)(sortedGuildRoles).filter(function(a0) {
return !isEveryoneRole(a0);
}).filter(_fun79861).filter(_fun79862).map(_fun79863).value();
} else {
value6 = (importDefault(22) /* metro dependency 22 */)(sortedGuildRoles).filter(_fun79865).map(_fun79866).value();
value6.push(((TableRow) => <TableRow label={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['+riKdA'])} onPress={onStartEditing} key="addition" />)((require(6238) /* metro dependency 6238: TableRowNative */).TableRow));
r4 = value6;
}
const TableRowGroup = (TableRowGroupNativeModule).TableRowGroup;
return (
<TableRowGroup
title={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['LPJmL/'])}
hasIcons={false}
>
{r4}
</TableRowGroup>
);
function _fun79862(a0) { // fn#79862, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:1682, offset: 0x01e65494, size: 58 bytes, params: 2, frame: 17
let value = environment.__proto__.__proto__;
value = importAll(3789) /* metro dependency 3789: PermissionUtils */;
return value.isRoleHigher(guild, currentUserId, env0_4, a0);
}
function _fun79863(a0) { // fn#79863, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:1723, offset: 0x01e654ce, size: 199 bytes, params: 2, frame: 22
const env0_0 = a0;
const rolesBinding = roles;
let value = rolesBinding.indexOf(a0.id);
value = value !== -1;
const value3 = undefined;
const TableCheckboxRow = (TableCheckboxRowNativeModule).TableCheckboxRow;
const Text = (TextModule).Text;
return (
<TableCheckboxRow
checked={value}
label={<Text variant="text-md/semibold" style={a0.colorString != null ? {color: a0.colorString} : value3}>
{a0.name}
</Text>}
onPress={onPress_79864}
key={a0.id}
/>
);
function onPress_79864() { // fn#79864, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:1931, offset: 0x01e65595, size: 36 bytes, params: 1, frame: 13
return onToggleRole(env0_0.id, !result);
}
}
function _fun79865({id}) { // fn#79865, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:1991, offset: 0x0132790b, size: 27 bytes, params: 2, frame: 11
return roles.includes(id);
}
function _fun79866(a0) { // fn#79866, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:2018, offset: 0x01e655b9, size: 140 bytes, params: 2, frame: 21
const value2 = undefined;
const TableRow = (TableRowNativeModule).TableRow;
const Text = (TextModule).Text;
return (
<TableRow
label={<Text variant="text-md/semibold" style={a0.colorString != null ? {color: a0.colorString} : value2}>
{a0.name}
</Text>}
key={a0.id}
/>
);
}
}
}
function _fun79868(a0) { // fn#79868, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:2563, offset: 0x01e65669, size: 147 bytes, params: 2, frame: 16
const GuildSettingsModalMemberEdit2 = GuildSettingsModalMemberEdit;
Inherits(GuildSettingsModalMemberEdit2, a0);
return CreateClass(GuildSettingsModalMemberEdit2, [{key: 'componentDidMount', value: function() {
this.updateNavigator();
}}, {key: 'componentDidUpdate', value: function(a0) {
this.updateNavigator(a0);
}}, {key: 'updateNavigator', value: value_79883}, {key: 'render', value: value_79889}]);
function GuildSettingsModalMemberEdit(a0) { // fn#79869, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:2575, offset: 0x01e656fc, size: 248 bytes, params: 2, frame: 18
let value = copyRestArgs(0, undefined);
const binding = env1_4;
const value4 = undefined;
binding(this, GuildSettingsModalMemberEdit);
const _callSuper_79845Binding = _callSuper_79845;
const items2 = [];
arraySpread(items2, value, 0, undefined);
value = _callSuper_79845Binding(this, GuildSettingsModalMemberEdit, items2);
const member = value.props.member;
value.state = {nick: member == null ? value4 : member.nick};
value.handleChangeNickname = handleChangeNickname;
value.handleSaveNickname = handleSaveNickname;
value.handleStartEditingRoles = handleStartEditingRoles;
value.handleToggleRole = handleToggleRole;
value.handleSetCommunicationDisabled = handleSetCommunicationDisabled;
value.handleClearCommunicationDisabled = handleClearCommunicationDisabled;
value.handleKick = handleKick;
value.handleBan = handleBan_79877;
value.handleTransferOwnership = handleTransferOwnership;
value.handleSaveMemberRoles = handleSaveMemberRoles;
value.handleCancelEditMemberRoles = handleCancelEditMemberRoles;
return value;
function handleChangeNickname(a0) { // fn#79870, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:2803, owner: GuildSettingsModalMemberEdit.handleChangeNickname, offset: 0x01e657f4, size: 32 bytes, params: 2, frame: 12
env0_0.setState({nick: a0});
}
function handleSaveNickname() { // fn#79871, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:2850, owner: GuildSettingsModalMemberEdit.handleSaveNickname, offset: 0x01e65814, size: 159 bytes, params: 1, frame: 17
var id;
var value3;
var defaultImport;
var changeNickname;
var binding;
var props;
var id2;
const nick = env0_0.state.nick;
const value2 = null;
if (value2 != nick) {
value3 = environment.__proto__.__proto__;
defaultImport = importDefault(10298) /* metro dependency 10298: GuildSettingsModalMembersActionCreators */;
changeNickname = defaultImport.changeNickname;
binding = env0_0;
props = binding.props;
id2 = props.guild.id;
props = binding.props;
id = props.currentUser.id;
props = binding.props;
id = id === props.user.id ? value2 : env0_0.props.user.id;
Reflect.apply(changeNickname, defaultImport, [id2, id, env0_0.state.nick]);
}
}
function handleStartEditingRoles() { // fn#79872, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:3019, owner: GuildSettingsModalMemberEdit.handleStartEditingRoles, offset: 0x01e658b3, size: 76 bytes, params: 1, frame: 14
let value = environment.__proto__.__proto__;
value = importDefault(10298) /* metro dependency 10298: GuildSettingsModalMembersActionCreators */;
const startEditingRoles = value.startEditingRoles;
const binding = env0_0;
const id = binding.props.guild.id;
const user = binding.props.user;
Reflect.apply(startEditingRoles, value, [id, user.id]);
}
function handleToggleRole(a0, a1) { // fn#79873, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:3105, owner: GuildSettingsModalMemberEdit.handleToggleRole, offset: 0x01e658ff, size: 45 bytes, params: 3, frame: 14
const value = environment.__proto__.__proto__;
(GuildSettingsModalMembersActionCreators).toggleRole(a0, a1);
}
function handleSetCommunicationDisabled() { // fn#79874, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:3172, owner: GuildSettingsModalMemberEdit.handleSetCommunicationDisabled, offset: 0x01e6592c, size: 80 bytes, params: 1, frame: 14
const {guild, user} = env0_0.props;
const value = environment.__proto__.__proto__;
(GuildDisableCommunicationActionCreatorsNativeModule).openDisableCommunication({guildId: guild.id,
userId: user.id});
}
function handleClearCommunicationDisabled() { // fn#79875, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:3308, owner: GuildSettingsModalMemberEdit.handleClearCommunicationDisabled, offset: 0x01e6597c, size: 80 bytes, params: 1, frame: 14
const {guild, user} = env0_0.props;
const value = environment.__proto__.__proto__;
(GuildDisableCommunicationActionCreatorsNativeModule).openEnableCommunication({guildId: guild.id,
userId: user.id});
}
function handleKick() { // fn#79876, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:3421, owner: GuildSettingsModalMemberEdit.handleKick, offset: 0x01e659cc, size: 73 bytes, params: 1, frame: 15
const {user, handleSuccessfulRemoval, navigation} = env0_0.props;
const push = navigation.push;
const MEMBER_KICK = GuildSettingsSections.MEMBER_KICK;
Reflect.apply(push, navigation, [MEMBER_KICK, {userId: user.id, onKick: handleSuccessfulRemoval}]);
}
function GuildSettingsModalMemberEditHandleBan() { // fn#79877, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:3546, owner: GuildSettingsModalMemberEdit.handleBan, offset: 0x01e65a15, size: 73 bytes, params: 1, frame: 15
const {user, handleSuccessfulRemoval, navigation} = env0_0.props;
const push = navigation.push;
const MEMBER_BAN = GuildSettingsSections.MEMBER_BAN;
Reflect.apply(push, navigation, [MEMBER_BAN, {userId: user.id, onBan: handleSuccessfulRemoval}]);
}
function handleTransferOwnership() { // fn#79878, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:3683, owner: GuildSettingsModalMemberEdit.handleTransferOwnership, offset: 0x01e65a5e, size: 155 bytes, params: 1, frame: 15
const {guild, user} = env0_0.props;
let features = guild.features;
const has = features.has;
const value = environment.__proto__.__proto__;
const VERIFIED = GuildFeatures.VERIFIED;
if (Reflect.apply(has, features, [VERIFIED])) {
(require(3856) /* metro dependency 3856: ToastUtils */).transferOwnershipProtected();
} else {
features = guild.features;
if (features.has(GuildFeatures.PARTNERED)) {
(require(3856) /* metro dependency 3856: ToastUtils */).transferOwnershipProtected();
} else {
(importDefault(10306) /* metro dependency 10306: TransferOwnershipModalActionCreators */).open(guild, user);
}
}
}
function handleSaveMemberRoles() { // fn#79879, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:3859, owner: GuildSettingsModalMemberEdit.handleSaveMemberRoles, offset: 0x01e65af9, size: 111 bytes, params: 1, frame: 15
var value2;
var defaultImport;
var updateMemberRoles;
var binding;
var id;
var id2;
let props = env0_0.props;
if (props.editRoles != null) {
value2 = environment.__proto__.__proto__;
defaultImport = importDefault(10298) /* metro dependency 10298: GuildSettingsModalMembersActionCreators */;
updateMemberRoles = defaultImport.updateMemberRoles;
binding = env0_0;
props = binding.props;
id = props.guild.id;
props = binding.props;
id2 = props.user.id;
props = binding.props;
Reflect.apply(updateMemberRoles, defaultImport, [id, id2, props.editRoles]);
}
}
function handleCancelEditMemberRoles() { // fn#79880, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:3999, owner: GuildSettingsModalMemberEdit.handleCancelEditMemberRoles, offset: 0x01e64fe8, size: 37 bytes, params: 1, frame: 11
const value = environment.__proto__.__proto__;
(GuildSettingsModalMembersActionCreators).stopEditingRoles();
}
}
function value_79883(a0) { // fn#79883, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:4274, offset: 0x01e65b8e, size: 224 bytes, params: 2, frame: 20
var environment;
var r6;
var setOptions;
var value2;
const {submitting, isEditing, navigation, onClose} = this.props;
let value = a0 != null;
if (!(value && submitting === a0.submitting && isEditing === a0.isEditing && onClose === a0.onClose)) {
setOptions = navigation.setOptions;
if (submitting) {
r6 = function() {
return null;
};
} else if (isEditing) {
r6 = _fun79885;
} else {
value = undefined;
if (onClose != null) {
value2 = environment.__proto__;
value = require(5282) /* metro dependency 5282: NavigatorHeaderNative */;
value = value.getHeaderCloseButton(onClose);
r6 = value;
} else {
r6 = value;
}
}
Reflect.apply(setOptions, navigation, [{headerLeft: r6,
headerRight: submitting ? _fun79886 : isEditing ? _fun79887 : undefined, headerTitle: headerTitle_79888}]);
}
function _fun79885() { // fn#79885, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:4456, offset: 0x01e65c6e, size: 113 bytes, params: 1, frame: 18
const HeaderActionButton = (HeaderActionButtonNativeModule).HeaderActionButton;
const intl = (IndexNativeModule).intl;
return (
<HeaderActionButton
text={intl.string((IndexNativeModule).t['ETE/oC'])}
onPress={env0_0.handleCancelEditMemberRoles}
/>
);
}
function _fun79886() { // fn#79886, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:4644, offset: 0x01e65cdf, size: 45 bytes, params: 1, frame: 13
const HeaderSubmittingIndicator = (NavigatorHeaderNativeModule).HeaderSubmittingIndicator;
return <HeaderSubmittingIndicator />;
}
function _fun79887() { // fn#79887, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:4691, offset: 0x01e65d0c, size: 113 bytes, params: 1, frame: 18
const HeaderActionButton = (HeaderActionButtonNativeModule).HeaderActionButton;
const intl = (IndexNativeModule).intl;
return (
<HeaderActionButton
text={intl.string((IndexNativeModule).t['R3BPH+'])}
onPress={env0_0.handleSaveMemberRoles}
/>
);
}
function value_79883HeaderTitle() { // fn#79888, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:4830, owner: value_79883.headerTitle, offset: 0x01e65d7d, size: 149 bytes, params: 1, frame: 20
let value = environment.__proto__.__proto__;
const NavigatorHeader = (NavigatorHeaderNativeModule).NavigatorHeader;
const intl = (IndexNativeModule).intl;
const formatToPlainString = intl.formatToPlainString;
const v7odxj = (IndexNativeModule).t.v7odxj;
value = importDefault(3995) /* metro dependency 3995: UserUtils */;
const getName = value.getName;
const user = env0_0.props.user;
return (
<NavigatorHeader
title={Reflect.apply(formatToPlainString, intl, [v7odxj, {user: Reflect.apply(getName, value, [user])}])}
/>
);
}
}
function value_79889() { // fn#79889, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:4988, offset: 0x01e65e12, size: 1804 bytes, params: 1, frame: 50
var object13;
var r1;
var r15;
var r26;
var r16;
var r12;
var r10;
var isMemberCommunicationDisabled2;
const TableRowGroup = (TableRowGroupNativeModule).TableRowGroup;
const TableRow = (TableRowNativeModule).TableRow;
var object;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var formatToPlainString;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
var FN7NIS;
var object4;
var RuL6o7;
var object5;
var TextInput;
var object8;
var yOiJHB;
var object6;
var TuAZuW;
var object12;
let value = environment.__proto__;
let binding = env1_26;
const context = this.context;
const value2 = undefined;
const value3 = binding(context);
const nick = this.state.nick;
const {user, guild, sortedGuildRoles, member, editRoles, nicknameError, currentUser, isEditing, canChangeNick,
canManageRoles, canKick, canBan, canDisableCommunication} = this.props;
const value4 = null;
if (value4 == member) {
return value4;
}
const rowLabel = value3.rowLabel;
const Text = (TextModule).Text;
const userTag = (
<View style={rowLabel}>
<Text variant="text-sm/medium">
{(importDefault(3995) /* metro dependency 3995: UserUtils */).getUserTag(user)}
</Text>
{
user.bot
? ((Component) => <Component verified={user.isVerifiedBot()} />)(importDefault(8706) /* metro dependency 8706: BotTag */)
: value4
}
</View>
);
if (value4 != member) {
isMemberCommunicationDisabled2 = (require(3773) /* metro dependency 3773: CommunicationDisabledUtils */).isMemberCommunicationDisabled(member);
object13 = {hasIcons: false};
object = {variant: 'danger'};
formatToPlainString = intl.formatToPlainString;
if (isMemberCommunicationDisabled2) {
RuL6o7 = t.RuL6o7;
object5 = {};
object5.user = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
object.label = Reflect.apply(formatToPlainString, intl, [RuL6o7, object5]);
object.onPress = this.handleClearCommunicationDisabled;
r1 = (
<TableRowGroup {...object13}>
<TableRow {...object} />
</TableRowGroup>
);
} else {
FN7NIS = t.FN7NIS;
object4 = {};
object4.user = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
object.label = Reflect.apply(formatToPlainString, intl, [FN7NIS, object4]);
object.onPress = this.handleSetCommunicationDisabled;
r1 = (
<TableRowGroup {...object13}>
<TableRow {...object} />
</TableRowGroup>
);
}
r15 = r1;
} else {
r15 = value4;
}
r1 = isGuildOwner(guild, user) || !isGuildOwnerWithRequiredMfaLevel(guild, currentUser);
r1 = !r1 ? user.bot : r1;
const r9 = (
r1
? value2
: (
<TableRowGroup hasIcons={false}>
<TableRow
variant="danger"
label={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.Z5s7PM)}
onPress={this.handleTransferOwnership}
/>
</TableRowGroup>
)
);
const Form = (NativeModule3).Form;
const form = value3.form;
const items2 = [value3.formContent];
items2[1] = this.props.contentContainerStyle;
const Stack = (StackNativeModule).Stack;
const stackPadding = value3.stackPadding;
const PX_24 = (Native).space.PX_24;
const Avatar = (NativeModule).Avatar;
const tableRowGroup = (
<TableRowGroup hasIcons>
<TableRow icon={<Avatar style={value3.avatar} user={user} guildId={guild.id} />} label={userTag} />
</TableRowGroup>
);
let r18 = canChangeNick || currentUser.id === user.id;
if (r18) {
TextInput = (require(7981) /* metro dependency 7981: TextInputNative */).TextInput;
r18 = (
<TextInput
label={intl.string(t['621LJD'])}
value={value4 != nick ? nick : ''}
placeholder={intl.string(t.h7UKXj)}
onChange={this.handleChangeNickname}
onBlur={this.handleSaveNickname}
maxLength={32}
errorMessage={nicknameError}
/>
);
}
if (canManageRoles) {
binding = env1_27;
r26 = isEditing ? editRoles : member.roles;
r26 = value4 == r26 ? [] : r26;
r16 = ((Component) => <Component guild={guild} sortedGuildRoles={sortedGuildRoles} roles={r26} currentUserId={currentUser.id} isEditing={isEditing} onToggleRole={this.handleToggleRole} onStartEditing={this.handleStartEditingRoles} />)(binding);
} else {
r16 = canManageRoles;
}
const r13 = canDisableCommunication && r15;
if (canKick) {
formatToPlainString = intl.formatToPlainString;
yOiJHB = (require(1244) /* metro dependency 1244: indexNative */).t.yOiJHB;
object6 = {};
object6.user = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
r12 = (
<TableRowGroup hasIcons={false}>
<TableRow
variant="danger"
label={Reflect.apply(formatToPlainString, intl, [yOiJHB, object6])}
onPress={this.handleKick}
/>
</TableRowGroup>
);
} else {
r12 = canKick;
}
if (canBan) {
formatToPlainString = intl.formatToPlainString;
TuAZuW = (require(1244) /* metro dependency 1244: indexNative */).t.TuAZuW;
object12 = {};
value = importDefault(3995) /* metro dependency 3995: UserUtils */;
object12.user = value.getName(user);
value = (
<TableRowGroup hasIcons={false}>
<TableRow
variant="danger"
label={Reflect.apply(formatToPlainString, intl, [TuAZuW, object12])}
onPress={this.handleBan}
/>
</TableRowGroup>
);
r10 = value;
} else {
r10 = canBan;
}
return (
<Form style={form} contentContainerStyle={items2}>
<Stack style={stackPadding} spacing={PX_24}>
{tableRowGroup}
{r18}
{r16}
{r13}
{r12}
{r10}
{r9}
</Stack>
</Form>
);
}
}
function MemberModalEdit({guildId, userId, onClose, onRemove}) { // fn#79890, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:8931, offset: 0x01e6651e, size: 199 bytes, params: 2, frame: 20
const value3 = env0_9.useMemo(_fun79891, [onClose, onRemove,
(UseInitialValue)(guildId)]);
const Navigator = (NavigatorNativeModule).Navigator;
object = {screens: value3};
let MEMBER_EDIT = GuildSettingsSections.MEMBER_EDIT;
object.initialRouteName = MEMBER_EDIT;
MEMBER_EDIT = GuildSettingsSections.MEMBER_EDIT;
object.initialRouteStack = [{name: MEMBER_EDIT, params: {userId: userId}}];
return <Navigator {...object} />;
function _fun79891() { // fn#79891, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:9030, offset: 0x01e665e5, size: 35 bytes, params: 1, frame: 15
return getScreens_79892(env0_2, onClose, onRemove);
function getScreens_79892(a0, a1, a2) { // fn#79892, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:9034, offset: 0x01e66608, size: 133 bytes, params: 4, frame: 6
const env0_0 = a0;
const env0_1 = a1;
const env0_2 = a2;
const MEMBER_EDIT = GuildSettingsSections.MEMBER_EDIT;
const MEMBER_KICK = GuildSettingsSections.MEMBER_KICK;
const MEMBER_BAN = GuildSettingsSections.MEMBER_BAN;
return {[MEMBER_EDIT]: {render: render_79893}, [MEMBER_KICK]: {headerTitle: function() {
return null;
}, render: render_79895}, [MEMBER_BAN]: {headerTitle: function() {
return null;
}, render: render_79897}};
function getScreens_79892Render(a0) { // fn#79893, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:9092, owner: getScreens_79892.render, offset: 0x01e6668d, size: 62 bytes, params: 2, frame: 15
return (
<GuildSettingsModalMemberEditScene
{...a0}
{...{['onClose']: require}}
{...{['guildId']: env0_0}}
/>
);
}
function getScreens_79892Render_79895(a0) { // fn#79895, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:9205, owner: getScreens_79892.render, offset: 0x01e666cb, size: 78 bytes, params: 2, frame: 16
const value = environment.__proto__.__proto__.__proto__;
return ((Component) => <Component {...a0} {...{['guildId']: env0_0}} {...{['onKick']: importDefault}} />)(KickConfirm);
}
function getScreens_79892Render_79897(a0) { // fn#79897, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:9291, owner: getScreens_79892.render, offset: 0x01e66719, size: 78 bytes, params: 2, frame: 16
const value = environment.__proto__.__proto__.__proto__;
return ((Component) => <Component {...a0} {...{['guildId']: env0_0}} {...{['onBan']: importDefault}} />)(BanConfirm);
}
}
}
}
}
function _fun79861({managed}) { // fn#79861, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10482:1658, offset: 0x01e65486, size: 14 bytes, params: 2, frame: 1
return !managed;
}
global.__d(_fun79844, 10296, [6, 7, 15, 17, 18, 31, 27, 1422, 1939, 1945, 1938, 1867, 3784, 1878, 10297, 661, 33,
4501, 697, 3789, 22, 8950, 4573, 6238, 1244, 6231, 10298, 10299, 3856, 10306, 5277, 5282, 3995, 8706, 3773,
7972, 4572, 1305, 7981, 3868, 1484, 566, 44, 8037, 6902, 5462, 10311, 10313, 6518, 5280,
2]) /* metro module 10296, dependencies: [6, 7, 15, 17, 18, 31, 27, 1422, 1939, 1945, 1938, 1867, 3784, 1878, 10297, 661, 33, 4501, 697, 3789, 22, 8950, 4573, 6238, 1244, 6231, 10298, 10299, 3856, 10306, 5277, 5282, 3995, 8706, 3773, 7972, 4572, 1305, 7981, 3868, 1484, 566, 44, 8037, 6902, 5462, 10311, 10313, 6518, 5280, 2] */;