/* Metro module 14856; source: modules/icymi/native/ICYMICardInCard.tsx; dependencies: [31, 27, 1379, 1945, 1867, 661, 33, 14815, 697, 7599, 6819, 1305, 4584, 566, 4635, 8699, 4617, 4573, 4805, 14857, 1244, 6691, 14855, 5278, 4788, 8638, 2] */ import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */ import ChannelStore from '../../../stores/ChannelStore.tsx'; /* Metro dependency 1379 */ import GuildStore from '../../../stores/GuildStore.tsx'; /* Metro dependency 1867 */ import GuildMemberStore from '../../../stores/GuildMemberStore.tsx'; /* Metro dependency 1945 */ import GuildIcon from '../../guild/native/GuildIcon.tsx'; /* Metro dependency 6819 */ import ClipView from '../../../design/components/Icon/native/ClipView.tsx'; /* Metro dependency 7599 */ 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 NativeModule from '../../../design/void/native.tsx'; /* Metro dependency 1305 */ import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */ import * as UseFontScaleModule from '../../screen/native/useFontScale.tsx'; /* Metro dependency 4584 */ import * as NicknameUtilsModule from '../../../utils/NicknameUtils.tsx'; /* Metro dependency 4617 */ import * as PressablesModule from '../../../design/void/Pressables/native/Pressables.tsx'; /* Metro dependency 5278 */ import * as GuildIconModule from '../../guild/native/GuildIcon.tsx'; /* Metro dependency 6819 */ import * as ClipViewModule from '../../../design/components/Icon/native/ClipView.tsx'; /* Metro dependency 7599 */ import * as MoreHorizontalIconModule from '../../../design/components/Icon/native/redesign/generated/MoreHorizontalIcon.tsx'; /* Metro dependency 8638 */ import * as CreateICYMIStylesModule from './createICYMIStyles.tsx'; /* Metro dependency 14815 */ function _fun112281(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#112281, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15053:6, offset: 0x023c303b, size: 308 bytes, params: 8, frame: 19 const env0_0 = require; const truncateUsername_112282 = function(a0) { var r0; var value = a0; if (value.length > 20) { value = value.slice(0, 17); value = '' + value + '...'; r0 = value; } else { r0 = value; } return r0; }; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); let value = JsxRuntimeModule; const env0_9 = value.jsx; const env0_10 = value.jsxs; const env0_11 = value.Fragment; const env0_12 = (CreateICYMIStylesModule).createICYMIStyles(_fun112284); (FileImportTrackerModule).fileFinishedImporting('modules/icymi/native/ICYMICardInCard.tsx'); exports.default = ICYMICardInCard; function CutoutGuildIconWithUserCustom({guild, author}) { // fn#112283, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15053:1518, offset: 0x023c316f, size: 311 bytes, params: 2, frame: 27 const value2 = env0_12(); const CutoutShape = (ClipViewModule).CutoutShape; const Circle = CutoutShape.Circle; const items2 = [{'shape': null, 'x': 18, 'y': 18, 'size': 24, shape: Circle}]; const GuildIconSizes = (GuildIconModule).GuildIconSizes; const SMALL_32 = GuildIconSizes.SMALL_32; const clipView = ( ); const Avatar = (NativeModule).Avatar; const authorAvatar = value2.authorAvatar; const id = guild.id; const AvatarSizes = (NativeModule).AvatarSizes; const XSMALL_20 = AvatarSizes.XSMALL_20; return ( {clipView} ); } function _fun112284(a0) { // fn#112284, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15053:329, offset: 0x023c32a6, size: 476 bytes, params: 2, frame: 17 const object = {}; object.container = {marginTop: a0.margin}; object.content = {'flex': 1, 'overflow': 'hidden'}; let PX_4 = (importDefault(697) /* metro dependency 697: native */).space.PX_4; object.channelNameAndAccessory = {'flexDirection': 'row', 'justifyContent': 'space-between', 'alignItems': 'center', paddingBottom: PX_4, marginHorizontal: a0.margin}; PX_4 = (importDefault(697) /* metro dependency 697: native */).space.PX_4; object.channelNameAndAccessoryLarge = {flexDirection: 'column', paddingBottom: PX_4, marginHorizontal: a0.margin}; object.header = {'flexDirection': 'row', 'flexGrow': 1}; const PX_12 = (importDefault(697) /* metro dependency 697: native */).space.PX_12; object.headerInfo = {'flexGrow': 1, 'flexShrink': 1, marginLeft: PX_12}; object.title = {'flexDirection': 'row', 'alignItems': 'center', 'justifyContent': 'space-between', 'marginBottom': 2}; object.titleLeft = {'flexShrink': 1, 'flexGrow': 0, 'flexDirection': 'row', 'alignItems': 'center', 'gap': 6}; const object4 = {'flexDirection': 'row', 'justifyContent': 'space-between'}; object4.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm; object.subTitleContainer = object4; object.subtitle = {'flexShrink': 1, 'flexGrow': 0, 'width': '100%'}; object.genContentSubtitle = {'flexDirection': 'row', 'alignItems': 'center', 'gap': 2}; object.genContentSubtitleChannel = {'flexDirection': 'row', 'alignItems': 'center', 'gap': 2, 'flex': 1}; object.subtitleTrailing = {paddingVertical: 1}; const BORDER_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_SUBTLE; object.separator = {'height': 1, 'width': '100%', backgroundColor: BORDER_SUBTLE}; const BORDER_STRONG = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_STRONG; object.normalContent = {'borderBottomWidth': 1, 'borderBottomColor': null, 'flexShrink': 0, borderBottomColor: BORDER_STRONG}; object.authorAvatar = {'position': 'absolute', 'right': 0, 'bottom': 0}; return object; } function ICYMICardInCard({children, message, actionLabel, timestamp, id, interactionType, onHeaderPress, onHeaderLongPress, channelId, guildId, hideTimestamp, shouldFeatureUser}) { // fn#112285, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15053:1978, offset: 0x023c3482, size: 1496 bytes, params: 2, frame: 48 const interactionType2 = interactionType; hideTimestamp = !(hideTimestamp === undefined) && hideTimestamp; shouldFeatureUser = !(shouldFeatureUser === undefined) && shouldFeatureUser; const value5 = undefined(); const value6 = (UseFontScaleModule).useFontScale(); const value7 = (require(566) /* metro dependency 566: flux */).useStateFromStores([ChannelStore], function() { return ChannelStore.getChannel(channelId); }, [channelId]); const r21 = value7?.guild_id ?? guildId; const value9 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildStore], _fun112287, [r21]); const value10 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore], _fun112288, [shouldFeatureUser, r21, message]); const value12 = (require(8699) /* metro dependency 8699: useDisplayNameStylesFont */).useDisplayNameStylesFont({displayNameStyles: (importDefault(4635) /* metro dependency 4635: useDisplayNameStyles */)({userId: message == null || message.author == null ? undefined : message.author.id})}); const useName = NicknameUtilsModule.useName; const r19 = shouldFeatureUser && (message?.author != null && r21 != null) && value7 != null ? Reflect.apply(useName, NicknameUtilsModule, [r21, value7?.id, message?.author]) : null; let binding = interactionType2; const value14 = binding.useMemo(_fun112289, [value9, shouldFeatureUser, message?.author]); binding = interactionType2; const value15 = binding.useMemo(_fun112290, [value9]); const value17 = binding.useMemo(_fun112291, [shouldFeatureUser, message?.author, r21, value7, (importDefault(4805) /* metro dependency 4805: useChannelName */)(value7), r19, value10, value12, value5.genContentSubtitle, value5.genContentSubtitleChannel, onHeaderPress, actionLabel]); binding = interactionType2; const value18 = binding.useCallback(_fun112292, [value9, value7, id, interactionType]); const value19 = binding.useMemo(_fun112293, [value6, value5.channelNameAndAccessoryLarge, value5.channelNameAndAccessory]); const container = value5.container; const PressableHighlight = (PressablesModule).PressableHighlight; const content = value5.content; const header = value5.header; const headerInfo = value5.headerInfo; const title = value5.title; const view = ( {value15} {!hideTimestamp && ((Text) => {(require(4788) /* metro dependency 4788: NotificationCenterUtils */).getRelativeTimestamp(timestamp)})((require(4573) /* metro dependency 4573: Text */).Text)} ); const PressableOpacity = (PressablesModule).PressableOpacity; const subtitleTrailing = value5.subtitleTrailing; const MoreHorizontalIcon = (MoreHorizontalIconModule).MoreHorizontalIcon; const ICON_MUTED = (Native).colors.ICON_MUTED; return ( {value14} {view} {value17} {children} ); function _fun112287() { // fn#112287, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15053:2354, offset: 0x023c3a74, size: 40 bytes, params: 1, frame: 12 const value2 = null; return value2 != env0_10 ? GuildStore.getGuild(env0_10) : value2; } function _fun112288() { // fn#112288, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15053:2426, offset: 0x023c3a9c, size: 104 bytes, params: 1, frame: 14 const shouldFeatureUserBinding = shouldFeatureUser; const value2 = null; return shouldFeatureUserBinding && value2 != env0_10 && value2 != (value2 == message ? undefined : message.author.id) ? GuildMemberStore.getMember(env0_10, message.author.id) : value2; } function _fun112289() { // fn#112289, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15053:2780, offset: 0x023c3b04, size: 180 bytes, params: 1, frame: 20 const value2 = null; return ( value2 == env0_11 ? value2 : ( shouldFeatureUser && value2 != (value2 == message ? undefined : message.author) ? ( ) : ((Component) => )(importDefault(6819) /* metro dependency 6819: GuildIcon */) ) ); } function _fun112290() { // fn#112290, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15053:2994, offset: 0x023c3bb8, size: 111 bytes, params: 1, frame: 18 const value2 = null; if (value2 != env0_11) { const Text = (require(4573) /* metro dependency 4573: Text */).Text; return ( {env0_11.name} ); } else { return value2; } } function _fun112291() { // fn#112291, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15053:3180, offset: 0x023c3c27, size: 1014 bytes, params: 1, frame: 32 var r22; var r6; var r7; var messageBinding; var value2; var value3; var value7; const Text = (TextModule).Text; var items4; var jsxRuntimeEnv1_11Binding; const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; var items2; var items3; var value12; var iconForChannel; var items5; var items6; if (shouldFeatureUser) { messageBinding = message; value2 = undefined; if ((messageBinding == null ? value2 : message.author) == null) { value3 = null; r22 = value3 != env0_9 ? (require(14857) /* metro dependency 14857: getIconForChannel */).getIconForChannel(env0_9) : (require(6691) /* metro dependency 6691: TextIcon */).TextIcon; value7 = environment.__proto__; var viewBindingProps = {style: env0_7.genContentSubtitle}; items4 = [ {actionLabel} , ]; if (value3 != env0_9) { jsxRuntimeEnv1_11Binding = jsxRuntimeEnv1_11; items2 = [ {intl.string((require(1244) /* metro dependency 1244: indexNative */).t.CHUAYk)} , ]; var viewBinding2Props = {style: env0_7.genContentSubtitleChannel}; items3 = [ ((Component) => )(r22), ]; items3[1] = ( {env0_15} ); items2[1] = ( {items3} ); r6 = ( <> {items2} ); } else { r6 = value3; } items4[1] = r6; return ( {items4} ); } if (env0_10 == null) { value3 = null; r22 = value3 != env0_9 ? (require(14857) /* metro dependency 14857: getIconForChannel */).getIconForChannel(env0_9) : (require(6691) /* metro dependency 6691: TextIcon */).TextIcon; value7 = environment.__proto__; var viewBindingProps = {style: env0_7.genContentSubtitle}; items4 = [ {actionLabel} , ]; if (value3 != env0_9) { jsxRuntimeEnv1_11Binding = jsxRuntimeEnv1_11; items2 = [ {intl.string((require(1244) /* metro dependency 1244: indexNative */).t.CHUAYk)} , ]; var viewBinding2Props = {style: env0_7.genContentSubtitleChannel}; items3 = [ ((Component) => )(r22), ]; items3[1] = ( {env0_15} ); items2[1] = ( {items3} ); r6 = ( <> {items2} ); } else { r6 = value3; } items4[1] = r6; return ( {items4} ); } if (env0_9 == null) { value3 = null; r22 = value3 != env0_9 ? (require(14857) /* metro dependency 14857: getIconForChannel */).getIconForChannel(env0_9) : (require(6691) /* metro dependency 6691: TextIcon */).TextIcon; value7 = environment.__proto__; var viewBindingProps = {style: env0_7.genContentSubtitle}; items4 = [ {actionLabel} , ]; if (value3 != env0_9) { jsxRuntimeEnv1_11Binding = jsxRuntimeEnv1_11; items2 = [ {intl.string((require(1244) /* metro dependency 1244: indexNative */).t.CHUAYk)} , ]; var viewBinding2Props = {style: env0_7.genContentSubtitleChannel}; items3 = [ ((Component) => )(r22), ]; items3[1] = ( {env0_15} ); items2[1] = ( {items3} ); r6 = ( <> {items2} ); } else { r6 = value3; } items4[1] = r6; return ( {items4} ); } if (env0_14 != null) { r7 = (env0_12 == null ? value2 : env0_12.colorString) ?? DEFAULT_ROLE_COLOR_HEX; value12 = environment.__proto__; iconForChannel = (require(14857) /* metro dependency 14857: getIconForChannel */).getIconForChannel(env0_9); var viewBindingProps = {style: env0_7.genContentSubtitle}; items5 = [ {truncateUsername_112282(env0_14)} , ]; items5[1] = ( {intl.string((require(1244) /* metro dependency 1244: indexNative */).t.CHUAYk)} ); var viewBinding3Props = {style: env0_7.genContentSubtitleChannel}; items6 = [ ((Component) => )(iconForChannel), ]; items6[1] = ( {env0_15} ); items5[2] = ( {items6} ); return ( {items5} ); } value3 = null; r22 = value3 != env0_9 ? (require(14857) /* metro dependency 14857: getIconForChannel */).getIconForChannel(env0_9) : (require(6691) /* metro dependency 6691: TextIcon */).TextIcon; value7 = environment.__proto__; var viewBindingProps2 = {style: env0_7.genContentSubtitle}; items4 = [ {actionLabel} , ]; if (value3 != env0_9) { jsxRuntimeEnv1_11Binding = jsxRuntimeEnv1_11; items2 = [ {intl.string((require(1244) /* metro dependency 1244: indexNative */).t.CHUAYk)} , ]; var viewBinding2Props = {style: env0_7.genContentSubtitleChannel}; items3 = [ ((Component) => )(r22), ]; items3[1] = ( {env0_15} ); items2[1] = ( {items3} ); r6 = ( <> {items2} ); } else { r6 = value3; } items4[1] = r6; return ( {items4} ); } value3 = null; r22 = value3 != env0_9 ? (require(14857) /* metro dependency 14857: getIconForChannel */).getIconForChannel(env0_9) : (require(6691) /* metro dependency 6691: TextIcon */).TextIcon; const genContentSubtitle = env0_7.genContentSubtitle; const text = ( {actionLabel} ); if (value3 != env0_9) { jsxRuntimeEnv1_11Binding = jsxRuntimeEnv1_11; items2 = [ {intl.string((require(1244) /* metro dependency 1244: indexNative */).t.CHUAYk)} , ]; var viewBinding2Props = {style: env0_7.genContentSubtitleChannel}; items3 = [ ((Component) => )(r22), ]; items3[1] = ( {env0_15} ); items2[1] = ( {items3} ); r6 = ( <> {items2} ); } else { r6 = value3; } return ( {text} {r6} ); } function _fun112292() { // fn#112292, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15053:4519, offset: 0x023c401d, size: 111 bytes, params: 1, frame: 13 var value4; if (env0_11 != null && env0_9 != null) { value4 = environment.__proto__; (require(14855) /* metro dependency 14855: openDetailsActionSheet */).openDetailsActionSheet({guildId: env0_11.id, channelId: env0_9.id, id: id, type: interactionType}); } } function _fun112293() { // fn#112293, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15053:4643, offset: 0x023c408c, size: 45 bytes, params: 1, frame: 3 return ConstantsModule.DEFAULT_ROLE_COLOR_HEX > 1.8 ? env0_7.channelNameAndAccessoryLarge : env0_7.channelNameAndAccessory; } } } global.__d(_fun112281, 14856, [31, 27, 1379, 1945, 1867, 661, 33, 14815, 697, 7599, 6819, 1305, 4584, 566, 4635, 8699, 4617, 4573, 4805, 14857, 1244, 6691, 14855, 5278, 4788, 8638, 2]) /* metro module 14856, dependencies: [31, 27, 1379, 1945, 1867, 661, 33, 14815, 697, 7599, 6819, 1305, 4584, 566, 4635, 8699, 4617, 4573, 4805, 14857, 1244, 6691, 14855, 5278, 4788, 8638, 2] */;