/* Metro module 14543; source: modules/guild_sidebar/native/VoiceUserItem.tsx; dependencies: [31, 27, 4502, 33, 1305, 8518, 4501, 697, 10981, 566, 4017, 4504, 1423, 14544, 9250, 9252, 9246, 9248, 9759, 8379, 9436, 2] */ function _fun110021(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#110021, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14740:6, offset: 0x023662c5, size: 474 bytes, params: 8, frame: 26 var object2; const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); let value = importAll(31) /* metro dependency 31 */; const env0_3 = (require(27) /* metro dependency 27 */).View; const accessibilityStore = importDefault(4502) /* metro dependency 4502: AccessibilityStore */; const value2 = require(33) /* metro dependency 33 */; const env0_5 = value2.jsx; const env0_6 = value2.jsxs; const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes; const env0_7 = AvatarSizes.XSMALL_20; const createStylesModule = require(4501) /* metro dependency 4501: createStyles */; const createStyles = createStylesModule.createStyles; object2 = {voiceState: {'flex': 1, 'flexDirection': 'row', 'alignItems': 'center', 'paddingVertical': 5}}; object2.disabled = {opacity: 0.5}; const object5 = {'marginTop': 4, 'marginRight': 8, 'width': 32, 'height': 32, 'borderRadius': null, 'borderWidth': 4, 'borderColor': null, 'alignItems': 'center', 'overflow': 'hidden'}; object5.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.lg; const BACKGROUND_BASE_LOW = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOW; object5.borderColor = BACKGROUND_BASE_LOW; object2.voiceStateCollapsed = object5; const object6 = {marginLeft: 6}; const channelListLayoutModule = require(10981) /* metro dependency 10981: ChannelListLayout */; copyDataProperties(object6, channelListLayoutModule.makeSizeStyle(14), undefined); object2.voiceStateIcon = object6; const REDESIGN_CHANNEL_NAME_MUTED_TEXT = (importDefault(697) /* metro dependency 697: native */).colors.REDESIGN_CHANNEL_NAME_MUTED_TEXT; object2.legacyVoiceStateIcon = {tintColor: REDESIGN_CHANNEL_NAME_MUTED_TEXT, marginLeft: 6}; const env0_8 = Reflect.apply(createStyles, createStylesModule, [object2]); object2 = {code: 'function VoiceUserItemTsx1(){const{ringing,shouldAnimate,PULSE_ENDING_OPACITY,withRepeat,withSequence,withDelay,INNER_PULSE_DELAY,withTiming,PULSE_DURATION,Easing,PULSE_STARTING_OPACITY,FADE_DURATION}=this.__closure;if(!ringing){return{opacity:1.0};}else if(!shouldAnimate){return{opacity:PULSE_ENDING_OPACITY};}return{opacity:withRepeat(withSequence(withDelay(INNER_PULSE_DELAY,withTiming(PULSE_ENDING_OPACITY,{duration:PULSE_DURATION,easing:Easing.bezier(0.4,0.0,1,1)})),withDelay(PULSE_DURATION,withTiming(PULSE_STARTING_OPACITY,{duration:FADE_DURATION}))),-1)};}'}; value = value.memo(VoiceUserItem); (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_sidebar/native/VoiceUserItem.tsx'); exports.default = value; exports.getVoiceUserHeight = getVoiceUserHeight; } function VoiceUserItem(a0) { // fn#110022, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14740:1317, offset: 0x0236649f, size: 1462 bytes, params: 2, frame: 35 var object2; var r10; var r17; var view; var View2; var items2; var value5; const Icon = (require(1305) /* metro dependency 1305: native */).Icon; var defaultImport2; var value14; const env0_0 = a0.member; const env0_1 = a0.user; const env0_2 = a0.guildId; const collapsed = a0.collapsed; const stream = a0.stream; const serverMute = a0.serverMute; const serverDeaf = a0.serverDeaf; const mute = a0.mute; const deaf = a0.deaf; const localMute = a0.localMute; const video = a0.video; const disabled = a0.disabled; const platform = a0.platform; const isInEmbeddedActivity = a0.isInEmbeddedActivity; const voicePlatform = a0.voicePlatform; const ringing = a0.ringing; const styles = useStyles(); const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore], function() { return !AccessibilityStore.useReducedMotion; }); const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */; const useAnimatedStyle = reanimatedRexportModule.useAnimatedStyle; let closure = VoiceUserItemC; object2 = {ringing: ringing, shouldAnimate: value2, PULSE_ENDING_OPACITY: 0.4}; object2.withRepeat = reanimatedRexportModule.withRepeat; object2.withSequence = reanimatedRexportModule.withSequence; object2.withDelay = reanimatedRexportModule.withDelay; object2.INNER_PULSE_DELAY = 100; object2.withTiming = (require(4504) /* metro dependency 4504: timing */).withTiming; object2.PULSE_DURATION = 250; const Easing = reanimatedRexportModule.Easing; object2.Easing = Easing; object2.PULSE_STARTING_OPACITY = 0.1; object2.FADE_DURATION = 500; closure.__closure = object2; closure.__workletHash = 9430639809025; closure.__initData = env0_9; const value3 = Reflect.apply(useAnimatedStyle, reanimatedRexportModule, [closure]); closure = source; if (collapsed) { view = {((Avatar) => )((require(1305) /* metro dependency 1305: native */).Avatar)}; } else { View2 = (importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).View; object2 = {}; r10 = disabled && styles.disabled; object2.style = [styles.voiceState, r10, value3]; items2 = [((Avatar) => )((require(1305) /* metro dependency 1305: native */).Avatar)]; items2[1] = ((Component) => )(importDefault(14544) /* metro dependency 14544: VoiceUserNameItem */); value5 = null; if (disabled) { r10 = value5; } else if (serverMute) { const MicrophoneDenyIcon = (require(9250) /* metro dependency 9250: MicrophoneDenyIcon */).MicrophoneDenyIcon; r10 = ; } else if (localMute) { const MicrophoneDenyIcon2 = (require(9250) /* metro dependency 9250: MicrophoneDenyIcon */).MicrophoneDenyIcon; r10 = ; } else if (mute) { const MicrophoneSlashIcon = (require(9252) /* metro dependency 9252: MicrophoneSlashIcon */).MicrophoneSlashIcon; r10 = ; } else { r10 = value5; } items2[2] = r10; if (disabled) { r10 = value5; } else if (serverDeaf) { const HeadphonesDenyIcon = (require(9246) /* metro dependency 9246: HeadphonesDenyIcon */).HeadphonesDenyIcon; r10 = ; } else if (deaf) { const HeadphonesSlashIcon = (require(9248) /* metro dependency 9248: HeadphonesSlashIcon */).HeadphonesSlashIcon; r10 = ; } else { r10 = value5; } items2[3] = r10; if (video) { if (disabled) { r10 = value5; } else { const VideoIcon = (require(9759) /* metro dependency 9759: VideoIcon */).VideoIcon; r10 = ; } } else { r10 = value5; } items2[4] = r10; r10 = isInEmbeddedActivity ? : value5; items2[5] = r10; defaultImport2 = importDefault(9436) /* metro dependency 9436: getConsoleIcon */; r10 = value5 != platform ? platform : ''; value14 = defaultImport2(r10); r17 = value5 != value14 ? value14 : (require(9436) /* metro dependency 9436: getConsoleIcon */).getConsoleIconForVoicePlatform(voicePlatform); r10 = value5 != r17 ? : value5; items2[6] = r10; items2[7] = stream ? ((LiveTag) => )((require(1305) /* metro dependency 1305: native */).LiveTag) : value5; view = {items2}; } return view; } function getVoiceUserHeight(a0) { // fn#110026, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14740:3689, offset: 0x02366bfa, size: 100 bytes, params: 2, frame: 17 const value2 = (require(8518) /* metro dependency 8518: useScaledTextLineHeightAndroid */).scaleTextLineHeight('text-sm/medium', a0); const AVATAR_SIZE_MAP = (require(1305) /* metro dependency 1305: native */).AVATAR_SIZE_MAP; const property = AVATAR_SIZE_MAP[XSMALL_20]; const Math = global.Math; return Math.max(value2, property) + 10; } function VoiceUserItemC() { // fn#110024, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14740:1661, owner: VoiceUserItem.c, offset: 0x02366a67, size: 308 bytes, params: 1, frame: 34 var withRepeat; var moduleValue; var withSequence; var moduleValue2; var withDelay; var moduleValue3; var withTiming; var object3; var value3; var moduleValue4; var moduleValue5; var value; const ringingBinding = ringing; const object4 = {}; if (ringingBinding) { if (env0_4) { value = environment.__proto__; value = require(4017) /* metro dependency 4017: ReanimatedRexport */; withRepeat = value.withRepeat; moduleValue = require(4017) /* metro dependency 4017: ReanimatedRexport */; withSequence = moduleValue.withSequence; moduleValue2 = require(4017) /* metro dependency 4017: ReanimatedRexport */; withDelay = moduleValue2.withDelay; moduleValue3 = require(4504) /* metro dependency 4504: timing */; withTiming = moduleValue3.withTiming; object3 = {duration: 250}; object3.easing = (require(4017) /* metro dependency 4017: ReanimatedRexport */).Easing.bezier(0.4, 0, 1, 1); value3 = Reflect.apply(withDelay, moduleValue2, [100, Reflect.apply(withTiming, moduleValue3, [0.4, object3])]); moduleValue4 = require(4017) /* metro dependency 4017: ReanimatedRexport */; withDelay = moduleValue4.withDelay; moduleValue5 = require(4504) /* metro dependency 4504: timing */; withTiming = moduleValue5.withTiming; object4.opacity = Reflect.apply(withRepeat, value, [Reflect.apply(withSequence, moduleValue, [value3, Reflect.apply(withDelay, moduleValue4, [250, Reflect.apply(withTiming, moduleValue5, [0.1, {duration: 500}])])]), -1]); } else { object4.opacity = 0.4; } } else { object4.opacity = 1; } return object4; } function source() { // fn#110025, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14740:2288, owner: VoiceUserItem.source, offset: 0x02366b9b, size: 95 bytes, params: 1, frame: 14 var r0; var userBinding; var value2; var defaultImport; if (member == null) { userBinding = user; r0 = userBinding.getAvatarSource(guildId); } else if (member.avatar != null) { value2 = environment.__proto__; defaultImport = importDefault(1423) /* metro dependency 1423: AvatarUtils */; r0 = defaultImport.getGuildMemberAvatarSource(member, user); } else { userBinding = user; r0 = userBinding.getAvatarSource(guildId); } return r0; }