/* Metro module 10979; source: modules/markup/native/MarkupMessagePreviewReactRules.tsx; dependencies: [31, 10980, 33, 4600, 8778, 10981, 6817, 4598, 10986, 10987, 5475, 478, 10988, 10989, 1305, 4020, 9786, 6660, 10990, 2] */ import HighlightText from '../../search/native/components/HighlightText.tsx'; /* Metro dependency 10987 */ import Spoiler from './Spoiler.tsx'; /* Metro dependency 10988 */ import TimestampNative from '../Timestamp.native.tsx'; /* Metro dependency 10990 */ import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ 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 NativeModule from '../../../design/void/native.tsx'; /* Metro dependency 1305 */ import * as MarkupTypesModule from '../MarkupTypes.tsx'; /* Metro dependency 4598 */ import * as HighlightJsAnsiLanguageModule from '../../../utils/HighlightJsAnsiLanguage.tsx'; /* Metro dependency 4600 */ import * as IconSizeModule from '../../../design/components/Icon/IconSize.tsx'; /* Metro dependency 6817 */ import * as MarkupRulesUtilsModule from '../MarkupRulesUtils.tsx'; /* Metro dependency 8778 */ import * as RedesignChannelListConstantsModule from '../../channel_list_v2/native/RedesignChannelListConstants.tsx'; /* Metro dependency 10980 */ import * as ChannelListLayoutModule from '../../main_tabs_v2/native/shared_components/guild_channels/layouts/ChannelListLayout.tsx'; /* Metro dependency 10981 */ import * as MarkupTypesDefaultRulesModule from '../MarkupTypesDefaultRules.tsx'; /* Metro dependency 10986 */ function _fun84050(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#84050, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11165:6, offset: 0x01f35f6b, size: 249 bytes, params: 8, frame: 20 const env0_0 = require; const createMessagePreviewReactRules2 = createMessagePreviewReactRules; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); ReactModule; const RegExp = global.RegExp; const ANSI_CONTROL_SEQUENCE_RE = (HighlightJsAnsiLanguageModule).ANSI_CONTROL_SEQUENCE_RE; const regExp = new RegExp(ANSI_CONTROL_SEQUENCE_RE, 'g'); (FileImportTrackerModule).fileFinishedImporting('modules/markup/native/MarkupMessagePreviewReactRules.tsx'); exports.default = createChannelListMessagePreviewReactRules; exports.createMessagePreviewReactRules = createMessagePreviewReactRules2; function defaultReactFn(a0, a1, a2) { // fn#84051, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11165:214, offset: 0x01f36064, size: 72 bytes, params: 4, frame: 15 var r0; var value; if (typeof a0.content === 'string') { r0 = a0.content; } else { value = require(8778) /* metro dependency 8778: MarkupRulesUtils */; value = value.smartOutput(a0, a1, a2); r0 = value; } return r0; } function createMessagePreviewReactRules({iconColor, iconSize, channelIconSize, customEmojiSize}) { // fn#84052, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11165:315, offset: 0x01f360ac, size: 2178 bytes, params: 2, frame: 29 var r19; var r6; if (customEmojiSize !== undefined) { } const object = {}; const AST_KEY = require(dependencyMap[7]).AST_KEY; const TEXT = AST_KEY.TEXT; let defaultReactFnBinding = defaultReactFn; object[TEXT] = {react: defaultReactFnBinding}; const STRIKETHROUGH = AST_KEY.STRIKETHROUGH; const object3 = {}; const DEFAULT_RULES = require(dependencyMap[8]).DEFAULT_RULES; const STRIKETHROUGH2 = AST_KEY.STRIKETHROUGH; copyDataProperties(object3, DEFAULT_RULES[STRIKETHROUGH2], r19); object3['react'] = defaultReactFnBinding; object[STRIKETHROUGH] = object3; const UNDERLINE = AST_KEY.UNDERLINE; const object4 = {}; const UNDERLINE2 = AST_KEY.UNDERLINE; copyDataProperties(object4, DEFAULT_RULES[UNDERLINE2], r19); object4['react'] = defaultReactFnBinding; object[UNDERLINE] = object4; const ITALICS = AST_KEY.ITALICS; const object5 = {}; const ITALICS2 = AST_KEY.ITALICS; copyDataProperties(object5, DEFAULT_RULES[ITALICS2], r19); object5['react'] = defaultReactFnBinding; object[ITALICS] = object5; const STRONG = AST_KEY.STRONG; const object6 = {}; const STRONG2 = AST_KEY.STRONG; copyDataProperties(object6, DEFAULT_RULES[STRONG2], r19); object6['react'] = defaultReactFnBinding; object[STRONG] = object6; const LINK = AST_KEY.LINK; const object7 = {}; const LINK2 = AST_KEY.LINK; copyDataProperties(object7, DEFAULT_RULES[LINK2], r19); object7['react'] = defaultReactFnBinding; object[LINK] = object7; const URL = AST_KEY.URL; const object8 = {}; const URL2 = AST_KEY.URL; copyDataProperties(object8, DEFAULT_RULES[URL2], r19); object8['react'] = defaultReactFnBinding; object[URL] = object8; const AUTOLINK = AST_KEY.AUTOLINK; const object9 = {}; const AUTOLINK2 = AST_KEY.AUTOLINK; copyDataProperties(object9, DEFAULT_RULES[AUTOLINK2], r19); object9['react'] = defaultReactFnBinding; object[AUTOLINK] = object9; const LINE_BREAK = AST_KEY.LINE_BREAK; const object10 = {}; const LINE_BREAK2 = AST_KEY.LINE_BREAK; copyDataProperties(object10, DEFAULT_RULES[LINE_BREAK2], r19); object10['react'] = function() { return '\n'; }; object[LINE_BREAK] = object10; const HIGHLIGHT = AST_KEY.HIGHLIGHT; object[HIGHLIGHT] = {react: react_84054}; const BLOCK_QUOTE = AST_KEY.BLOCK_QUOTE; const object12 = {}; const BLOCK_QUOTE2 = AST_KEY.BLOCK_QUOTE; copyDataProperties(object12, DEFAULT_RULES[BLOCK_QUOTE2], r19); object12['react'] = defaultReactFnBinding; object[BLOCK_QUOTE] = object12; const PARAGRAPH = AST_KEY.PARAGRAPH; const object13 = {}; const PARAGRAPH2 = AST_KEY.PARAGRAPH; copyDataProperties(object13, DEFAULT_RULES[PARAGRAPH2], r19); object13['order'] = 600; object13['react'] = defaultReactFnBinding; object[PARAGRAPH] = object13; const EMOJI = AST_KEY.EMOJI; object[EMOJI] = {react: function(a0) { return a0.surrogate || a0.content; }}; const CUSTOM_EMOJI = AST_KEY.CUSTOM_EMOJI; object[CUSTOM_EMOJI] = {react: react_84056}; const SPOILER = AST_KEY.SPOILER; object[SPOILER] = {react: react_84057}; const STATIC_ROUTE_LINK = AST_KEY.STATIC_ROUTE_LINK; object[STATIC_ROUTE_LINK] = {react: react_84058}; const INLINE_CODE = AST_KEY.INLINE_CODE; const object18 = {}; const INLINE_CODE2 = AST_KEY.INLINE_CODE; copyDataProperties(object18, DEFAULT_RULES[INLINE_CODE2], r19); object18['react'] = defaultReactFnBinding; object[INLINE_CODE] = object18; const CODE_BLOCK = AST_KEY.CODE_BLOCK; const object19 = {}; const CODE_BLOCK2 = AST_KEY.CODE_BLOCK; copyDataProperties(object19, DEFAULT_RULES[CODE_BLOCK2], r19); object19['parse'] = createMessagePreviewReactRulesParse; object19['react'] = defaultReactFnBinding; object[CODE_BLOCK] = object19; const MENTION = AST_KEY.MENTION; const object20 = {}; const MENTION2 = AST_KEY.MENTION; copyDataProperties(object20, DEFAULT_RULES[MENTION2], r19); object20['react'] = defaultReactFnBinding; object[MENTION] = object20; const CHANNEL_MENTION = AST_KEY.CHANNEL_MENTION; const object21 = {}; const CHANNEL_MENTION2 = AST_KEY.CHANNEL_MENTION; copyDataProperties(object21, DEFAULT_RULES[CHANNEL_MENTION2], r19); object21['react'] = require(dependencyMap[13]).inlineChannelMentionReact; object[CHANNEL_MENTION] = object21; const ATTACHMENT_LINK = AST_KEY.ATTACHMENT_LINK; const object22 = {}; const ATTACHMENT_LINK2 = AST_KEY.ATTACHMENT_LINK; copyDataProperties(object22, DEFAULT_RULES[ATTACHMENT_LINK2], r19); object22['react'] = createMessagePreviewReactRulesReact_84060; object[ATTACHMENT_LINK] = object22; const SOUNDBOARD = AST_KEY.SOUNDBOARD; const object23 = {}; const SOUNDBOARD2 = AST_KEY.SOUNDBOARD; copyDataProperties(object23, DEFAULT_RULES[SOUNDBOARD2], r19); object23['react'] = defaultReactFnBinding; object[SOUNDBOARD] = object23; const GUILD = AST_KEY.GUILD; object[GUILD] = {react: defaultReactFnBinding}; const CHANNEL = AST_KEY.CHANNEL; const moduleValue = require(dependencyMap[13]); const createInlineChannelReact = moduleValue.createInlineChannelReact; if (require(dependencyMap[15]).isFabric()) { r6 = '💬'; } else { const ThemedIcon = require(dependencyMap[14]).ThemedIcon; r6 = ( ); r19 = dependencyMap; } object[CHANNEL] = {react: Reflect.apply(createInlineChannelReact, moduleValue, [r6])}; const COMMAND_MENTION = AST_KEY.COMMAND_MENTION; const object27 = {}; const COMMAND_MENTION2 = AST_KEY.COMMAND_MENTION; copyDataProperties(object27, DEFAULT_RULES[COMMAND_MENTION2], r19); object27['react'] = createMessagePreviewReactRulesReact_84061; object[COMMAND_MENTION] = object27; const TIMESTAMP = AST_KEY.TIMESTAMP; const object28 = {}; const TIMESTAMP2 = AST_KEY.TIMESTAMP; copyDataProperties(object28, DEFAULT_RULES[TIMESTAMP2], r19); object28['react'] = createMessagePreviewReactRulesReact_84062; object[TIMESTAMP] = object28; const LIST = AST_KEY.LIST; const object29 = {}; const LIST2 = AST_KEY.LIST; copyDataProperties(object29, DEFAULT_RULES[LIST2], r19); object29['react'] = createMessagePreviewReactRulesReact_84063; object[LIST] = object29; const HEADING = AST_KEY.HEADING; defaultReactFnBinding = defaultReactFn; object[HEADING] = {react: defaultReactFnBinding}; const SUBTEXT = AST_KEY.SUBTEXT; object[SUBTEXT] = {react: defaultReactFnBinding}; return object; function createMessagePreviewReactRulesReact_84054(a0, a1, a2) { // fn#84054, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11165:1302, owner: createMessagePreviewReactRules.react, offset: 0x01f3692e, size: 87 bytes, params: 4, frame: 19 const value = environment.__proto__; return ((Component) => {(MarkupRulesUtilsModule).smartOutput(a0, a1, a2)})(HighlightText); } function createMessagePreviewReactRulesReact_84056(a0, a1, a2) { // fn#84056, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11165:1677, owner: createMessagePreviewReactRules.react, offset: 0x01f36998, size: 226 bytes, params: 4, frame: 22 var r7; var value; var sizeStyle; var FastImage; var items2; if (a0.src) { value = environment.__proto__; sizeStyle = (require(10981) /* metro dependency 10981: ChannelListLayout */).makeSizeStyle(customEmojiSize); FastImage = importDefault(5475) /* metro dependency 5475: FastImage */; items2 = [sizeStyle]; items2[1] = {resizeMode: 'contain'}; r7 = (require(478) /* metro dependency 478: PlatformUtils */).isAndroid() && ({transform: [{translateY: 3}]}); items2[2] = r7; r7 = a2.muted && ({opacity: MUTED_OPACITY_CONTENT}); items2[3] = r7; return ( ); } return a0.alt; } function createMessagePreviewReactRulesReact_84057(a0, a1, a2) { // fn#84057, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11165:1930, owner: createMessagePreviewReactRules.react, offset: 0x01f36a7a, size: 105 bytes, params: 4, frame: 19 const value = environment.__proto__; return ((Component) => {(MarkupRulesUtilsModule).smartOutput(a0, a1, a2)})(Spoiler); } function createMessagePreviewReactRulesReact_84058(a0, a1, a2) { // fn#84058, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11165:2070, owner: createMessagePreviewReactRules.react, offset: 0x01f36ae3, size: 87 bytes, params: 4, frame: 17 var r0; let value = environment.__proto__; if (MarkupRulesUtilsModule.isStaticRouteIconType(a0.channelId)) { value = MarkupRulesUtilsModule; value = value.smartOutput(a0, a1, a2); r0 = value; } else { r0 = null; } return r0; } function createMessagePreviewReactRulesParse(a0, a1, a2) { // fn#84059, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11165:2345, owner: createMessagePreviewReactRules.parse, offset: 0x01f36b3a, size: 140 bytes, params: 4, frame: 16 const DEFAULT_RULES = (MarkupTypesDefaultRulesModule).DEFAULT_RULES; const AST_KEY = (MarkupTypesModule).AST_KEY; const CODE_BLOCK = AST_KEY.CODE_BLOCK; const value2 = DEFAULT_RULES[CODE_BLOCK].parse(a0, a1, a2); if (value2.lang.toLowerCase() === 'ansi') { value2.content = value2.content.replaceAll(env1_6, ''); } return value2; } function createMessagePreviewReactRulesReact_84060(a0, a1, a2) { // fn#84060, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11165:2861, owner: createMessagePreviewReactRules.react, offset: 0x01f36bc6, size: 197 bytes, params: 4, frame: 22 let value = environment.__proto__; const LegacyText = (NativeModule).LegacyText; const items2 = [ (require(4020) /* metro dependency 4020: FabricUtils */).isFabric() ? '📎 ' : ((AttachmentIcon) => )((require(9786) /* metro dependency 9786: AttachmentIcon */).AttachmentIcon), ]; value = require(8778) /* metro dependency 8778: MarkupRulesUtils */; items2[1] = value.smartOutput(a0, a1, a2); return ( {items2} ); } function createMessagePreviewReactRulesReact_84061(a0, a1, a2) { // fn#84061, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11165:3421, owner: createMessagePreviewReactRules.react, offset: 0x01f36c8b, size: 103 bytes, params: 4, frame: 19 let value = environment.__proto__; const LegacyText = (NativeModule).LegacyText; value = require(8778) /* metro dependency 8778: MarkupRulesUtils */; value = value.smartOutput(a0, a1, a2); return ( {'/'} {value} ); } function createMessagePreviewReactRulesReact_84062(a0, a1, a2) { // fn#84062, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11165:3591, owner: createMessagePreviewReactRules.react, offset: 0x01f36cf2, size: 62 bytes, params: 4, frame: 15 const value = environment.__proto__; return ((Component) => )(TimestampNative); } function createMessagePreviewReactRulesReact_84063({items}, a1, a2) { // fn#84063, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11165:3710, owner: createMessagePreviewReactRules.react, offset: 0x01f36d30, size: 98 bytes, params: 4, frame: 16 var r0; const property = items[0]; const Array = global.Array; const r5 = Array.isArray(property) ? property[0] : property; let value = null; if (value == r5) { r0 = value; } else { value = environment.__proto__; value = require(8778) /* metro dependency 8778: MarkupRulesUtils */; value = value.smartOutput(r5, a1, a2); r0 = value; } return r0; } } function createChannelListMessagePreviewReactRules(a0, a1, a2, a3) { // fn#84064, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11165:4015, offset: 0x01f36d92, size: 191 bytes, params: 5, frame: 18 var r4; let value = a2; const layoutStyles = (ChannelListLayoutModule).getLayoutStyles(a0); if (a3 == null) { r4 = value; } else { value = global.Math.min(value, a3); r4 = value; } const createMessagePreviewReactRulesBinding = createMessagePreviewReactRules; const object = {iconColor: a1}; object.iconSize = layoutStyles.messagePreview.messageTypeIconSizeNew; object.channelIconSize = layoutStyles.messagePreview.messageTypeIconSize; const ICON_SIZE = (IconSizeModule).ICON_SIZE; object.customEmojiSize = (ICON_SIZE[layoutStyles.messagePreview.messageTypeIconSizeNew] ?? 0) * r4; return createMessagePreviewReactRulesBinding(object); } } global.__d(_fun84050, 10979, [31, 10980, 33, 4600, 8778, 10981, 6817, 4598, 10986, 10987, 5475, 478, 10988, 10989, 1305, 4020, 9786, 6660, 10990, 2]) /* metro module 10979, dependencies: [31, 10980, 33, 4600, 8778, 10981, 6817, 4598, 10986, 10987, 5475, 478, 10988, 10989, 1305, 4020, 9786, 6660, 10990, 2] */;