233 lines
13 KiB
TypeScript
233 lines
13 KiB
TypeScript
/* Metro module 6792; source: modules/user_profile/native/UserProfileRolesCard.tsx; dependencies: [31, 27, 1945, 1938, 661, 33, 4501, 697, 6793, 3829, 6796, 6797, 3856, 1244, 6794, 6802, 6812, 4573, 5278, 566, 6814, 6815, 2] */
|
|
import GuildRoleStore from '../../../stores/GuildRoleStore.tsx'; /* Metro dependency 1938 */
|
|
import GuildMemberStore from '../../../stores/GuildMemberStore.tsx'; /* Metro dependency 1945 */
|
|
import TidaWebformExperiment from '../../guild/TidaWebformExperiment.tsx'; /* Metro dependency 6796 */
|
|
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 ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
|
|
import * as IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */
|
|
import * as UserSettingsModule from '../../user_settings/UserSettings.tsx'; /* Metro dependency 3829 */
|
|
import * as ToastUtilsModule from '../../toast/native/ToastUtils.tsx'; /* Metro dependency 3856 */
|
|
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
|
|
import * as RoleIconUtilsModule from '../../guild_boosting/native/RoleIconUtils.tsx'; /* Metro dependency 6793 */
|
|
import * as ShowSimpleActionSheetModule from '../../action_sheet/native/showSimpleActionSheet.tsx'; /* Metro dependency 6802 */
|
|
|
|
function _fun53473(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#53473, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:6, offset: 0x0134c8ff, size: 438 bytes, params: 8, frame: 23
|
|
const env0_0 = require;
|
|
const RoleItem2 = RoleItem;
|
|
const Object = global.Object;
|
|
Object.defineProperty(exports, '__esModule', {value: true});
|
|
let value = ConstantsModule;
|
|
const env0_7 = value.DEFAULT_ROLE_COLOR_HEX;
|
|
const env0_8 = value.MAX_VISUAL_ROLE_LENGTH;
|
|
value = require(33) /* metro dependency 33 */;
|
|
const env0_9 = value.jsx;
|
|
const env0_10 = value.Fragment;
|
|
const env0_11 = value.jsxs;
|
|
value = require(4501) /* metro dependency 4501: createStyles */;
|
|
const createStyles = value.createStyles;
|
|
object = {roleContainer: {'flexDirection': 'row', 'gap': 8, 'flexWrap': 'wrap'}};
|
|
const object2 = {'flexDirection': 'row', 'alignItems': 'center', 'columnGap': 4, 'padding': 6};
|
|
const BACKGROUND_MOD_MUTED = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_MUTED;
|
|
object2.backgroundColor = BACKGROUND_MOD_MUTED;
|
|
object2.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
|
|
object.role = object2;
|
|
const object3 = {'borderRadius': null, 'height': 12, 'width': 12};
|
|
object3.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
|
|
object.roleDot = object3;
|
|
const env0_12 = Reflect.apply(createStyles, value, [object]);
|
|
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileRolesCard.tsx');
|
|
exports.default = UserProfileRolesCard;
|
|
exports.RoleItem = RoleItem2;
|
|
function RoleDot({color}) { // fn#53474, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:542, offset: 0x0134cab5, size: 77 bytes, params: 2, frame: 18
|
|
const styles = useStyles();
|
|
return <View style={[styles.roleDot, {backgroundColor: color ?? DEFAULT_ROLE_COLOR_HEX}]} />;
|
|
}
|
|
|
|
function RoleItem({role, guildId, color}) { // fn#53475, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:642, offset: 0x0134cb02, size: 598 bytes, params: 2, frame: 23
|
|
var r0;
|
|
var PressableHighlight;
|
|
var intl;
|
|
let value = undefined;
|
|
const styles = useStyles();
|
|
const r8 = role.name.length <= MAX_VISUAL_ROLE_LENGTH ? role.name : '' + role.name.slice(0,
|
|
MAX_VISUAL_ROLE_LENGTH) + '...';
|
|
const env0_3 = color ?? role.colorString;
|
|
const value5 = (RoleIconUtilsModule).useRoleIcon({guildId: guildId,
|
|
roleId: role.id, size: 12});
|
|
const tags = role.tags;
|
|
const env0_5 = value !== (tags == null ? value : tags.guild_connections);
|
|
const DeveloperMode = (UserSettingsModule).DeveloperMode;
|
|
const value6 = DeveloperMode.useSetting();
|
|
const defaultImport = TidaWebformExperiment;
|
|
const useExperiment = defaultImport.useExperiment;
|
|
const tidaWebformEnabled = Reflect.apply(useExperiment, defaultImport, [{location: 'RoleItem'},
|
|
{autoTrackExposure: false}]).tidaWebformEnabled;
|
|
const value7 = env0_3.useCallback(_fun53476, [role.id, r8]);
|
|
const value8 = env0_3.useCallback(_fun53477, [role, r8, value5]);
|
|
const RoleItemRenderContent2 = RoleItemRenderContent;
|
|
if (value6) {
|
|
PressableHighlight = (require(5278) /* metro dependency 5278: Pressables */).PressableHighlight;
|
|
var pressableHighlightProps = {onPress: value7, onLongPress: value6 && tidaWebformEnabled ? value8 : value,
|
|
accessibilityRole: 'button', accessibilityLabel: r8};
|
|
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
|
|
pressableHighlightProps.accessibilityHint = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.sMsaLg);
|
|
pressableHighlightProps.style = styles.role;
|
|
value = (
|
|
<PressableHighlight {...pressableHighlightProps}>
|
|
{RoleItemRenderContent2()}
|
|
</PressableHighlight>
|
|
);
|
|
r0 = value;
|
|
} else {
|
|
r0 = (
|
|
<View style={styles.role}>
|
|
{RoleItemRenderContent2()}
|
|
</View>
|
|
);
|
|
}
|
|
return r0;
|
|
function _fun53476() { // fn#53476, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:1034, offset: 0x0134cd58, size: 77 bytes, params: 1, frame: 15
|
|
let value = environment.__proto__;
|
|
value = require(6797) /* metro dependency 6797: ClipboardUtilsNative */;
|
|
value.copy(role.id);
|
|
(ToastUtilsModule).roleIdCopied(env0_2);
|
|
}
|
|
|
|
function _fun53477() { // fn#53477, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:1113, offset: 0x0134cda5, size: 286 bytes, params: 1, frame: 19
|
|
var environment;
|
|
var moduleValue;
|
|
var push;
|
|
let object = {};
|
|
const value = environment.__proto__;
|
|
const intl = (IndexNativeModule).intl;
|
|
const string = intl.string;
|
|
const t = (IndexNativeModule).t;
|
|
object.label = Reflect.apply(string, intl, [t.sMsaLg]);
|
|
object.onPress = onPress_53478;
|
|
const items2 = [object];
|
|
if (ReactNativeModule.View != null) {
|
|
moduleValue = require(6794) /* metro dependency 6794: RoleIconUtils */;
|
|
if ((moduleValue.getRoleIconData(role) ?? ({})).customIconSrc != null) {
|
|
push = items2.push;
|
|
object = {};
|
|
object.label = intl.string(t['8xHmxo']);
|
|
object.onPress = onPress_53479;
|
|
Reflect.apply(push, items2, [object]);
|
|
}
|
|
}
|
|
(ShowSimpleActionSheetModule).showSimpleActionSheet({'key': 'RoleItem',
|
|
'options': null, 'hasIcons': false, options: items2});
|
|
function onPress_53478() { // fn#53478, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:1172, offset: 0x0134cec3, size: 77 bytes, params: 1, frame: 15
|
|
let value = environment.__proto__.__proto__;
|
|
value = require(6797) /* metro dependency 6797: ClipboardUtilsNative */;
|
|
value.copy(role.id);
|
|
(ToastUtilsModule).roleIdCopied(env1_2);
|
|
}
|
|
|
|
function onPress_53479() { // fn#53479, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:1375, offset: 0x0134cf10, size: 67 bytes, params: 1, frame: 14
|
|
let value = environment.__proto__.__proto__;
|
|
value = require(6797) /* metro dependency 6797: ClipboardUtilsNative */;
|
|
value.copy(customIconSrc);
|
|
(ToastUtilsModule).presentCopiedToClipboard();
|
|
}
|
|
|
|
}
|
|
|
|
function RoleItemRenderContent() { // fn#53480, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:1537, owner: RoleItem.renderContent, offset: 0x0134cf53, size: 259 bytes, params: 1, frame: 22
|
|
var r5;
|
|
var value5;
|
|
var VerifiedRoleIcon;
|
|
var roleBinding;
|
|
const jsxRuntimeEnv1_10Binding = jsxRuntimeEnv1_10;
|
|
if (env0_5) {
|
|
value5 = undefined;
|
|
VerifiedRoleIcon = importDefault(6812) /* metro dependency 6812: VerifiedRoleIcon */;
|
|
roleBinding = role;
|
|
r5 = (
|
|
<VerifiedRoleIcon
|
|
roleId={roleBinding.id}
|
|
guildId={guildId}
|
|
roleColor={(roleBinding == null ? value5 : role.colorString) ?? value5}
|
|
size={12}
|
|
displayRoleIcon={false}
|
|
/>
|
|
);
|
|
} else {
|
|
r5 = <RoleDot color={env0_3 ?? undefined} />;
|
|
}
|
|
const items2 = [r5, ReactNativeModule.View];
|
|
const Text = (TextModule).Text;
|
|
items2[2] = (
|
|
<Text variant="text-xs/medium">
|
|
{env0_2}
|
|
</Text>
|
|
);
|
|
return (
|
|
<>
|
|
{items2}
|
|
</>
|
|
);
|
|
}
|
|
|
|
}
|
|
|
|
function RolesList({guildMemberRoleIds, guildId}) { // fn#53481, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:2057, offset: 0x0134d056, size: 159 bytes, params: 2, frame: 20
|
|
const styles = useStyles();
|
|
const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStoresArray([GuildRoleStore],
|
|
function() {
|
|
return GuildRoleStore.getManyRoles(guildId,
|
|
guildMemberRoleIds).sort(require(dependencyMap[20]).sortRolesByVerification);
|
|
}, [guildMemberRoleIds, guildId]);
|
|
return (
|
|
value2.length === 0
|
|
? null
|
|
: (
|
|
<View style={styles.roleContainer}>
|
|
{value2.map(_fun53483)}
|
|
</View>
|
|
)
|
|
);
|
|
function _fun53483(a0) { // fn#53483, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:2299, offset: 0x0134d13c, size: 48 bytes, params: 2, frame: 15
|
|
return (
|
|
<RoleItem
|
|
role={a0}
|
|
guildId={guildId}
|
|
key={a0.id}
|
|
/>
|
|
);
|
|
}
|
|
|
|
}
|
|
|
|
function UserProfileRolesCard({userId, guildId, style}) { // fn#53484, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:2439, offset: 0x0134d16c, size: 254 bytes, params: 2, frame: 24
|
|
var r0;
|
|
var UserProfileCard;
|
|
var intl;
|
|
const r8 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore], function() {
|
|
return GuildMemberStore.getMember(guildId, userId);
|
|
}, [userId, guildId])?.roles ?? [];
|
|
if (r8.length === 0) {
|
|
r0 = null;
|
|
} else {
|
|
UserProfileCard = importDefault(6815) /* metro dependency 6815: UserProfileCard */;
|
|
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
|
|
r0 = (
|
|
<UserProfileCard
|
|
title={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['LPJmL/'])}
|
|
style={style}
|
|
>
|
|
<RolesList guildId={guildId} guildMemberRoleIds={r8} />
|
|
</UserProfileCard>
|
|
);
|
|
}
|
|
return r0;
|
|
}
|
|
|
|
}
|
|
|
|
global.__d(_fun53473, 6792, [31, 27, 1945, 1938, 661, 33, 4501, 697, 6793, 3829, 6796, 6797, 3856, 1244, 6794, 6802,
|
|
6812, 4573, 5278, 566, 6814, 6815,
|
|
2]) /* metro module 6792, dependencies: [31, 27, 1945, 1938, 661, 33, 4501, 697, 6793, 3829, 6796, 6797, 3856, 1244, 6794, 6802, 6812, 4573, 5278, 566, 6814, 6815, 2] */;
|