/* Metro module 8335; source: modules/messages/native/renderer/MarkupParsers.tsx; dependencies: [661, 672, 1393, 6622, 8336, 8349, 2] */ function _fun66357(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#66357, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8520:6, offset: 0x01bf854f, size: 384 bytes, params: 8, frame: 22 var object3; const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_3 = (require(661) /* metro dependency 661: Constants */).MessageTypes; object3 = {'max': Infinity, 'maxAge': null, 'updateAgeOnGet': true}; const Millis = (importDefault(672) /* metro dependency 672: Durations */).Millis; const MINUTE = Millis.MINUTE; object3.maxAge = 15 * MINUTE; let value = importDefault(1393) /* metro dependency 1393 */; value = new value(object3); value = importDefault(1393) /* metro dependency 1393 */; value = new value(object3); value = importDefault(1393) /* metro dependency 1393 */; const object4 = {}; copyDataProperties(object4, object3, undefined); object4['updateAgeOnGet'] = false; value = new value(object4); value = importDefault(1393) /* metro dependency 1393 */; value = new value(object3); (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/messages/native/renderer/MarkupParsers.tsx'); exports.parseEmbedTitleMarkup = parseEmbedTitleMarkup; exports.parseEmbedTitleMarkupWithoutLinks = parseEmbedTitleMarkupWithoutLinks; exports.parseEmbedDescriptionMarkup = parseEmbedDescriptionMarkup; exports.parseMessageMarkup = parseMessageMarkup; } function parseEmbedTitleMarkup(a0, a1) { // fn#66358, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8520:396, offset: 0x01bf86cf, size: 120 bytes, params: 3, frame: 18 var r0; var embedTitleToAST; const value = '' + a0 + '-' + a1; const value3 = env0_4.get(value); if (value3 != null) { r0 = value3; } else { embedTitleToAST = (importDefault(6622) /* metro dependency 6622: MarkupUtils */).parseEmbedTitleToAST(a0, true, {channelId: a1}); env0_4.set(value, embedTitleToAST); r0 = embedTitleToAST; } return r0; } function parseEmbedTitleMarkupWithoutLinks(a0, a1) { // fn#66359, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8520:580, offset: 0x01bf8747, size: 129 bytes, params: 3, frame: 19 var r0; var embedTitleWithoutLinksToAST; const value = '' + a0 + '-' + a1 + '-nolinks'; const value3 = env0_5.get(value); if (value3 != null) { r0 = value3; } else { embedTitleWithoutLinksToAST = (importDefault(6622) /* metro dependency 6622: MarkupUtils */).parseEmbedTitleWithoutLinksToAST(a0, true, {channelId: a1}); env0_5.set(value, embedTitleWithoutLinksToAST); r0 = embedTitleWithoutLinksToAST; } return r0; } function parseEmbedDescriptionMarkup({description, channelId, isField, ignoreCache, replaceMap, showListsAndHeaders, showMaskedLinks}) { // fn#66360, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8520:790, offset: 0x01bf87c8, size: 247 bytes, params: 2, frame: 27 var r2; var r10; var r6; var propertyName; var propertyName2; var replaceAll; var value4; const value = '' + description + '-' + channelId; const value3 = env0_6.get(value); if (value3 != null) { reducibleJoin3: while (true) { if (!ignoreCache) { return value3; } break reducibleJoin3; } } const properties = Object.keys(replaceMap); const properties3 = properties.length; if (properties === undefined) { r6 = description; } else { r2 = description; r10 = 0; reducibleLoop4: while (true) { propertyName = properties[r10]; propertyName2 = r10 + 1; if (propertyName === undefined) { r6 = r2; break reducibleLoop4; } replaceAll = r2.replaceAll; value4 = Reflect.apply(replaceAll, r2, [propertyName, replaceMap[propertyName]]); r2 = value4; r10 = propertyName2; continue reducibleLoop4; } } const toAST = (importDefault(6622) /* metro dependency 6622: MarkupUtils */).parseToAST(r6, true, {'channelId': null, 'allowLinks': true, 'allowEmojiLinks': true, channelId: channelId, allowHeading: !isField && showListsAndHeaders, allowList: showListsAndHeaders, previewLinkTarget: showMaskedLinks}); env0_6.set(value, toAST); return toAST; } function parseMessageMarkup(a0, a1, a2) { // fn#66361, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8520:1199, offset: 0x01bf88bf, size: 418 bytes, params: 4, frame: 27 var r8; var r1; var r0; var object4; var moduleValue; var renderMessageMarkupToAST; var object5; var defaultImport; var astParserFor; var moduleValue2; var value6; var content; var object6; const value = a3; const value2 = a4; const value3 = a5; const value4 = a6; let r12 = value !== undefined ? value : false; let r10 = value2 !== undefined ? value2 : false; const r11 = value3 !== undefined ? value3 : false; const r4 = value4 !== undefined ? value4 : false; const value5 = env0_7.get(a0); if (value5 == null) { if (a0.type !== MessageTypes.CHANGELOG) { object4 = {}; moduleValue = require(8349) /* metro dependency 8349: renderMessageMarkup */; renderMessageMarkupToAST = moduleValue.renderMessageMarkupToAST; object5 = {contentMessage: a1, hideSimpleEmbedContent: a2, formatInline: r12, allowGameMentions: true}; r8 = r10 || r11; object5.allowHeading = r8; r8 = r10 || r11; object5.allowList = r8; object5.allowLinks = r4; object5.previewLinkTarget = r4; copyDataProperties(object4, Reflect.apply(renderMessageMarkupToAST, moduleValue, [a0, object5]), undefined); object4['isInlineReplyPreview'] = r12; env0_7.set(a0, object4); r1 = object4; } else if (a0.changelogId != null) { object4 = {'content': null, 'isInlineReplyPreview': false, 'hasSpoilerEmbeds': false, 'hasBailedAst': false}; defaultImport = importDefault(6622) /* metro dependency 6622: MarkupUtils */; astParserFor = defaultImport.astParserFor; moduleValue2 = require(8336) /* metro dependency 8336: ChangeLogStandardTemplate */; value6 = Reflect.apply(astParserFor, defaultImport, [moduleValue2.changelogRules(a0.changelogId, true)]); content = a0.content; object6 = {hideSimpleEmbedContent: a2, formatInline: r12}; r12 = r10 || r11; object6.allowHeading = r12; r10 = !r10 ? r11 : r10; object6.allowList = r10; object6.allowLinks = r4; object6.previewLinkTarget = r4; object4.content = value6(content, false, object6); env0_7.set(a0, object4); r1 = object4; } else { object4 = {}; moduleValue = require(8349) /* metro dependency 8349: renderMessageMarkup */; renderMessageMarkupToAST = moduleValue.renderMessageMarkupToAST; object5 = {contentMessage: a1, hideSimpleEmbedContent: a2, formatInline: r12, allowGameMentions: true}; r8 = r10 || r11; object5.allowHeading = r8; r8 = r10 || r11; object5.allowList = r8; object5.allowLinks = r4; object5.previewLinkTarget = r4; copyDataProperties(object4, Reflect.apply(renderMessageMarkupToAST, moduleValue, [a0, object5]), undefined); object4['isInlineReplyPreview'] = r12; env0_7.set(a0, object4); r1 = object4; } r0 = r1; } else if (value5.isInlineReplyPreview === r12) { r0 = value5; } else { if (a0.type !== MessageTypes.CHANGELOG) { object4 = {}; moduleValue = require(8349) /* metro dependency 8349: renderMessageMarkup */; renderMessageMarkupToAST = moduleValue.renderMessageMarkupToAST; object5 = {contentMessage: a1, hideSimpleEmbedContent: a2, formatInline: r12, allowGameMentions: true}; r8 = r10 || r11; object5.allowHeading = r8; r8 = r10 || r11; object5.allowList = r8; object5.allowLinks = r4; object5.previewLinkTarget = r4; copyDataProperties(object4, Reflect.apply(renderMessageMarkupToAST, moduleValue, [a0, object5]), undefined); object4['isInlineReplyPreview'] = r12; env0_7.set(a0, object4); r1 = object4; } else if (a0.changelogId != null) { object4 = {'content': null, 'isInlineReplyPreview': false, 'hasSpoilerEmbeds': false, 'hasBailedAst': false}; defaultImport = importDefault(6622) /* metro dependency 6622: MarkupUtils */; astParserFor = defaultImport.astParserFor; moduleValue2 = require(8336) /* metro dependency 8336: ChangeLogStandardTemplate */; value6 = Reflect.apply(astParserFor, defaultImport, [moduleValue2.changelogRules(a0.changelogId, true)]); content = a0.content; object6 = {hideSimpleEmbedContent: a2, formatInline: r12}; r12 = r10 || r11; object6.allowHeading = r12; r10 = !r10 ? r11 : r10; object6.allowList = r10; object6.allowLinks = r4; object6.previewLinkTarget = r4; object4.content = value6(content, false, object6); env0_7.set(a0, object4); r1 = object4; } else { object4 = {}; moduleValue = require(8349) /* metro dependency 8349: renderMessageMarkup */; renderMessageMarkupToAST = moduleValue.renderMessageMarkupToAST; object5 = {contentMessage: a1, hideSimpleEmbedContent: a2, formatInline: r12, allowGameMentions: true}; r8 = r10 || r11; object5.allowHeading = r8; r8 = r10 || r11; object5.allowList = r8; object5.allowLinks = r4; object5.previewLinkTarget = r4; copyDataProperties(object4, Reflect.apply(renderMessageMarkupToAST, moduleValue, [a0, object5]), undefined); object4['isInlineReplyPreview'] = r12; env0_7.set(a0, object4); r1 = object4; } r0 = r1; } return r0; }