/* Metro module 11483; source: modules/safety_hub/native/ClassificationMessageEvidence.tsx; dependencies: [57, 31, 27, 1310, 1878, 11473, 5267, 661, 33, 8177, 4501, 566, 4002, 11484, 11485, 5266, 4631, 9544, 8011, 9869, 9773, 4625, 21, 2] */ function _fun87966(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#87966, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:6, offset: 0x01fcff0a, size: 429 bytes, params: 8, frame: 19 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_3 = importDefault(57) /* metro dependency 57 */; const env0_4 = importAll(31) /* metro dependency 31 */; let value = require(27) /* metro dependency 27 */; const env0_5 = value.View; const env0_6 = value.findNodeHandle; const env0_7 = value.Image; const env0_8 = value.ActivityIndicator; const themeStore = importDefault(1310) /* metro dependency 1310: ThemeStore */; const userStore = importDefault(1878) /* metro dependency 1878: UserStore */; const safetyHubStore = importDefault(11473) /* metro dependency 11473: SafetyHubStore */; value = require(5267) /* metro dependency 5267: SafetyHubConstants */; const env0_12 = value.DEFAULT_MEDIA_MAX_WIDTH; const env0_13 = value.DEFAULT_MEDIA_MAX_HEIGHT; const env0_14 = value.VIDEO_PLACEHOLDER_WIDTH; const env0_15 = value.VIDEO_PLACEHOLDER_HEIGHT; const env0_16 = value.VIDEO_PLACEHOLDER_FILENAME; const env0_17 = (require(661) /* metro dependency 661: Constants */).MessageTypes; value = require(33) /* metro dependency 33 */; const env0_18 = value.jsx; const env0_19 = value.jsxs; value = importDefault(8177) /* metro dependency 8177: RowGenerator */; value = new value(); const env0_21 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({dummyVideoAttachments: {'width': 0, 'height': 0}}); (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/safety_hub/native/ClassificationMessageEvidence.tsx'); exports.default = ClassificationEvidence_87967; } function ClassificationEvidence_87967({flaggedContent}) { // fn#87967, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:615, offset: 0x01fd00b7, size: 1006 bytes, params: 2, frame: 34 var object; var r0; var items3; var defaultImport2; var object2; var moduleValue4; var createMessageRecord; var object5; var Date; var defaultImport3; var extractTimestamp; var value14; var value15; var date; var items2; const styles = useStyles(); const currentUser = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() { return UserStore.getCurrentUser(); }); let binding = env0_4; const value3 = binding.useRef(null); let useState = binding.useState; const value4 = Reflect.apply(useState, binding, [null]); const binding2 = env0_3; const value5 = binding2(value4, 2); const property = value5[0]; const env0_2 = value5[1]; useState = binding.useState; const value6 = binding2(Reflect.apply(useState, binding, [{}]), 2); const property2 = value6[0]; var env0_3 = property2; var env0_4 = value6[1]; const value7 = (require(566) /* metro dependency 566: flux */).useStateFromStores([ThemeStore], function() { return require(dependencyMap[12]).isThemeLight(ThemeStore.theme); }); const resolveAssetSource = Image.resolveAssetSource; const r2 = value7 ? Reflect.apply(resolveAssetSource, Image, [importDefault(11484) /* metro dependency 11484 */]) : Reflect.apply(resolveAssetSource, Image, [importDefault(11485) /* metro dependency 11485 */]); const property3 = flaggedContent[0]; binding = env0_4; useState = binding.useState; const value9 = env0_3(Reflect.apply(useState, binding, [property3.attachments.length]), 2); const property4 = value9[0]; const env0_8 = value9[1]; const username = (require(566) /* metro dependency 566: flux */).useStateFromStores([SafetyHubStore], function() { return SafetyHubStore.getUsername(); }); let id = property3.id; const value10 = binding.useMemo(_fun87971, [property3.attachments, property2, r2]); const value11 = binding.useCallback(_fun87973, [value10, property3.attachments, id, property2, r2]); const value12 = binding.useCallback(_fun87975, [property]); binding.useEffect(_fun87976, [property3.attachments]); binding.useEffect(_fun87986, [property4]); if (property3.content !== '') { if (property4 > 0) { items2 = []; items2[1] = {property3.attachments.filter(_fun87987).map(_fun87988)}; object = {children: items2}; } else { items3 = [((Component) => )(importDefault(9869) /* metro dependency 9869: ChatAndroid */)]; defaultImport2 = importDefault(9773) /* metro dependency 9773: ChatItem */; object2 = {rowGenerator: env0_20}; moduleValue4 = require(4625) /* metro dependency 4625: MessageRecordUtils */; createMessageRecord = moduleValue4.createMessageRecord; object5 = {}; id = property3.id; object5.id = id; Date = global.Date; defaultImport3 = importDefault(21) /* metro dependency 21: SnowflakeUtils */; extractTimestamp = defaultImport3.extractTimestamp; id = property3.id; value14 = Reflect.apply(extractTimestamp, defaultImport3, [id]); value15 = Object.create(Date.prototype, {constructor: {value: Date}}); date = new Date(); object5.timestamp = (date instanceof Object ? date : value15).toUTCString(); object5.channel_id = '1'; object5.type = MessageTypes.DEFAULT; object5.author = currentUser ?? ({'id': '0', 'avatar': null, 'discriminator': '0000', username: username}); object5.content = property3.content; object5.attachments = value10; object2.message = Reflect.apply(createMessageRecord, moduleValue4, [object5]); object2.modifyRow = value12; items3[1] = ((Component) => )(defaultImport2); object = {children: items3}; } r0 = ; } else if (property3.attachments.length === 0) { r0 = null; } else { if (property4 > 0) { items2 = []; items2[1] = {property3.attachments.filter(_fun87987).map(_fun87988)}; object = {children: items2}; } else { items3 = [((Component) => )(importDefault(9869) /* metro dependency 9869: ChatAndroid */)]; defaultImport2 = importDefault(9773) /* metro dependency 9773: ChatItem */; object2 = {rowGenerator: env0_20}; moduleValue4 = require(4625) /* metro dependency 4625: MessageRecordUtils */; createMessageRecord = moduleValue4.createMessageRecord; object5 = {}; id = property3.id; object5.id = id; Date = global.Date; defaultImport3 = importDefault(21) /* metro dependency 21: SnowflakeUtils */; extractTimestamp = defaultImport3.extractTimestamp; id = property3.id; value14 = Reflect.apply(extractTimestamp, defaultImport3, [id]); value15 = Object.create(Date.prototype, {constructor: {value: Date}}); date = new Date(); object5.timestamp = (date instanceof Object ? date : value15).toUTCString(); object5.channel_id = '1'; object5.type = MessageTypes.DEFAULT; object5.author = currentUser ?? ({'id': '0', 'avatar': null, 'discriminator': '0000', username: username}); object5.content = property3.content; object5.attachments = value10; object2.message = Reflect.apply(createMessageRecord, moduleValue4, [object5]); object2.modifyRow = value12; items3[1] = ((Component) => )(defaultImport2); object = {children: items3}; } r0 = ; } return r0; } function _fun87971() { // fn#87971, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:1114, offset: 0x01fd04ea, size: 34 bytes, params: 1, frame: 11 return env0_6.attachments.map(_fun87972); } function _fun87973({nativeEvent}) { // fn#87973, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:1511, offset: 0x01fd065c, size: 115 bytes, params: 2, frame: 15 (require(9544) /* metro dependency 9544: openMediaModal */).openMediaModal({'initialIndex': null, 'initialSources': null, 'disableDownload': true, 'disableMediaOverlayButton': true, 'shareable': false, initialIndex: nativeEvent.index, initialSources: env0_10.map(_fun87974), originViewOrOriginLayout: nativeEvent.layout}); } function _fun87975(a0) { // fn#87975, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:2153, offset: 0x01fd0802, size: 20 bytes, params: 2, frame: 2 a0.reactTag = env0_1; } function _fun87976() { // fn#87976, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:2197, offset: 0x01fd0816, size: 53 bytes, params: 1, frame: 12 env0_6.attachments.filter(_fun87977).map(function(a0) { var env0_0 = a0; var value = _fun87979(a0); value = value.then(_fun87982); return value.finally(_fun87984); }); } function _fun87986() { // fn#87986, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:2496, offset: 0x01fd0952, size: 49 bytes, params: 1, frame: 12 var binding; var value2; if (env0_7 === 0) { binding = env0_2; value2 = environment.__proto__; binding(findNodeHandle(env0_0.current)); } } function _fun87987({filename}) { // fn#87987, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:2670, offset: 0x01fd0983, size: 47 bytes, params: 2, frame: 12 const value = environment.__proto__; return (require(4631) /* metro dependency 4631: MediaFormatTesters */).isVideoFile(filename); } function _fun87988(a0, a1) { // fn#87988, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:2717, offset: 0x01fd09b2, size: 91 bytes, params: 3, frame: 17 var environment; const env0_0 = a0; const value = environment.__proto__; return ((Component) => )(importDefault(8011) /* metro dependency 8011 */); } function _fun87972(a0) { // fn#87972, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:1137, offset: 0x01fd050c, size: 336 bytes, params: 2, frame: 19 var r0; var moduleValue3; var object4; var value4; var object5; var value5; var binding; var id; var property; const object6 = {}; copyDataProperties(object6, a0, undefined); const value2 = undefined; object6['filename'] = (require(5266) /* metro dependency 5266: SafetyHubUtils */).getAttachmentFilename(a0); object6['size'] = 0; object6['proxy_url'] = a0.url; const mediaFormatTestersModule = require(4631) /* metro dependency 4631: MediaFormatTesters */; if (mediaFormatTestersModule.isImageFile(a0.filename)) { object5 = {}; copyDataProperties(object5, object6, mediaFormatTestersModule); value5 = environment.__proto__; binding = env1_3; id = a0.id; property = binding[id]; object5['width'] = (property == null ? value2 : property.width) ?? DEFAULT_MEDIA_MAX_WIDTH; binding = env1_3; id = a0.id; property = binding[id]; object5['height'] = (property == null ? value2 : property.height) ?? DEFAULT_MEDIA_MAX_HEIGHT; r0 = object5; } else { moduleValue3 = mediaFormatTestersModule; if (moduleValue3.isVideoFile(a0.filename)) { object4 = {}; copyDataProperties(object4, object6, mediaFormatTestersModule); object4['width'] = VIDEO_PLACEHOLDER_WIDTH; object4['height'] = VIDEO_PLACEHOLDER_HEIGHT; value4 = environment.__proto__; object4['proxy_url'] = env1_5.uri; object4['filename'] = VIDEO_PLACEHOLDER_FILENAME; r0 = object4; } else { r0 = object6; } } return r0; } function _fun87974(a0, a1) { // fn#87974, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:1565, offset: 0x01fd06cf, size: 307 bytes, params: 3, frame: 18 const object2 = {}; object2.uri = a0.url; const value2 = undefined; const mediaFormatTestersModule = require(4631) /* metro dependency 4631: MediaFormatTesters */; object2.videoURI = mediaFormatTestersModule.isVideoFile(env1_6.attachments[a1].filename) ? a0.url : value2; const moduleValue2 = mediaFormatTestersModule; object2.thumbnail = moduleValue2.isVideoFile(env1_6.attachments[a1].filename) ? {width: VIDEO_PLACEHOLDER_WIDTH, height: VIDEO_PLACEHOLDER_HEIGHT, uri: env1_5.uri} : value2; object2.mediaIndex = a1; object2.channelId = '1'; object2.messageId = id; let property = env1_3[a0.id]; object2.width = (property == null ? value2 : property.width) ?? DEFAULT_MEDIA_MAX_WIDTH; property = env1_3[a0.id]; object2.height = (property == null ? value2 : property.height) ?? DEFAULT_MEDIA_MAX_HEIGHT; object2.accessoryType = 'attachment'; object2.attachmentId = a0.id; return object2; } function _fun87977({filename}) { // fn#87977, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:2224, offset: 0x01fd084b, size: 47 bytes, params: 2, frame: 12 const value = environment.__proto__.__proto__; return (require(4631) /* metro dependency 4631: MediaFormatTesters */).isImageFile(filename); } function _fun87978(a0) { // fn#87978, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:2271, offset: 0x01fd087a, size: 60 bytes, params: 2, frame: 12 let env0_0 = a0; let value = ((a0) => { var env0_0 = a0; var Promise = global.Promise; var value = Object.create(Promise.prototype, {constructor: {value: Promise}}); var value2 = new Promise(_fun87980); return value2 instanceof Object ? value2 : value; })(a0); value = value.then(_fun87982); return value.finally(_fun87984); } function onLoad_87989(a0) { // fn#87989, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:2762, offset: 0x01fd0a0d, size: 48 bytes, params: 2, frame: 13 const env0_0 = a0; env1_4(_fun87990); env1_8(function(a0) { return a0 - 1; }); } function onError_87992() { // fn#87992, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:2867, offset: 0x01fd0a83, size: 25 bytes, params: 1, frame: 11 return env1_8(function(a0) { return a0 - 1; }); } function getImageAttachmentDimensions(a0) { // fn#87979, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:2274, offset: 0x01fd08b6, size: 46 bytes, params: 2, frame: 11 const env0_0 = a0; const Promise = global.Promise; const value = Object.create(Promise.prototype, {constructor: {value: Promise}}); const promise = new Promise(function(a0, a1) { return Image.getSize(a0.url, _fun87981, a1); }); return promise instanceof Object ? promise : value; } function _fun87982(a0) { // fn#87982, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:2404, offset: 0x01fd0919, size: 32 bytes, params: 2, frame: 11 const env0_0 = a0; return env2_4(_fun87983); } function _fun87984() { // fn#87984, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:2444, offset: 0x01fd0939, size: 25 bytes, params: 1, frame: 11 return env2_8(function(a0) { return a0 - 1; }); } function _fun87990(a0) { // fn#87990, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:2769, offset: 0x01fd0a3d, size: 70 bytes, params: 2, frame: 14 const object2 = {}; copyDataProperties(object2, a0, undefined); const id = env1_0.id; const binding = env0_0; object2[id] = {width: binding.naturalSize.width, height: binding.naturalSize.height}; return object2; } function _fun87980(a0, a1) { // fn#87980, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11669:2335, offset: 0x01fd08e4, size: 53 bytes, params: 3, frame: 15 return Image.getSize(a0.url, _fun87981, a1); }