Files
discord-decomp/sources/modules/messages/native/renderer/ExplicitMediaUtils.tsx
T
2026-07-27 16:20:00 +03:00

109 lines
6.3 KiB
TypeScript

/* Metro module 8367; source: modules/messages/native/renderer/ExplicitMediaUtils.tsx; dependencies: [661, 1391, 4838, 4841, 4813, 1244, 2] */
function _fun66607(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#66607, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8552:6, offset: 0x01c0295e, size: 165 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = (require(661) /* metro dependency 661: Constants */).MessageAttachmentFlags;
const getContentScanVersionFromMedia = function(a0) {
var value = undefined;
if (value !== a0.content_scan_version) {
return a0.content_scan_version;
}
return value === a0.contentScanVersion ? value : a0.contentScanVersion;
};
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/messages/native/renderer/ExplicitMediaUtils.tsx');
exports.getAttachmentObscurityProps = getAttachmentObscurityProps;
exports.getUnfurledMediaItemObscurityProps = getUnfurledMediaItemObscurityProps;
exports.getAttachmentObscurityDefaults = function() {
return {'isSpoiler': false, 'spoiler': ''};
};
}
function getSpoilerDescriptionForType(a0) { // fn#66608, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8552:311, offset: 0x01c02a03, size: 301 bytes, params: 2, frame: 14
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
if (a0 === 'image') {
return intl.string(t.sb2W2J);
}
if (a0 === 'video') {
return intl.string(t.ehBaMc);
}
if (a0 === 'file') {
return intl.string(t['3Gc2XP']);
}
if (a0 === 'generic') {
return intl.string(t.G71b77);
}
}
function getAttachmentObscurityProps({attachment, shouldObscureSpoiler, enabledContentHarmTypeFlags, shouldAgeVerify}) { // fn#66610, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8552:714, offset: 0x01c02b5b, size: 528 bytes, params: 2, frame: 26
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const spoiler = attachment.spoiler;
const flagUtilsModule = require(1391) /* metro dependency 1391: FlagUtils */;
const hasFlag = flagUtilsModule.hasFlag;
const r5 = attachment.flags ?? 0;
const IS_SPOILER = MessageAttachmentFlags.IS_SPOILER;
const hasFlag2 = Reflect.apply(hasFlag, flagUtilsModule, [r5, IS_SPOILER]);
let object2 = {};
object2.contentScanVersion = getContentScanVersionFromMedia(attachment) ?? 0;
object2.flags = attachment.flags ?? 0;
const obscuredMediaUtilsModule = require(4838) /* metro dependency 4838: ObscuredMediaUtils */;
const getMediaObscuredReasonFromBitmask = obscuredMediaUtilsModule.getMediaObscuredReasonFromBitmask;
const ObscuredMediaTypes = (require(4841) /* metro dependency 4841: ExplicitMediaRedactionModels */).ObscuredMediaTypes;
let Attachment = ObscuredMediaTypes.Attachment;
const value4 = Reflect.apply(getMediaObscuredReasonFromBitmask, obscuredMediaUtilsModule, [{type: Attachment,
media: object2}, enabledContentHarmTypeFlags]);
const moduleValue3 = obscuredMediaUtilsModule;
const isMediaScanPending = moduleValue3.isMediaScanPending;
Attachment = ObscuredMediaTypes.Attachment;
const isMediaScanPending2 = Reflect.apply(isMediaScanPending, moduleValue3, [{type: Attachment, media: object2},
enabledContentHarmTypeFlags]);
const value5 = value4.length > 0;
const r2 = value5 && (require(4813) /* metro dependency 4813: AgeVerificationUtils */).isVerifiedTeen();
object2 = {};
object2.isSpoiler = shouldObscureSpoiler && (spoiler || hasFlag2);
const value6 = '';
object2.spoiler = shouldObscureSpoiler && (spoiler || hasFlag2) ? intl.string(t['F+x38C']).toUpperCase() : value6;
object2.obscure = value5;
object2.obscureDescription = value5 ? intl.string(t.SpxcUR) : value6;
object2.obscureAwaitingScan = isMediaScanPending2;
object2.verifyAge = value5 && shouldAgeVerify;
object2.obscureHideControls = r2;
object2.obscureIsOpaque = value5;
return object2;
}
function getUnfurledMediaItemObscurityProps({type, mediaItem, isSpoilered, isAuthorBot, shouldObscureSpoiler, enabledContentHarmTypeFlags, shouldAgeVerify}) { // fn#66611, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8552:1532, offset: 0x01c02d6b, size: 363 bytes, params: 2, frame: 25
var object2;
var r5;
var intl;
const obscuredMediaUtilsModule = require(4838) /* metro dependency 4838: ObscuredMediaUtils */;
const getMediaObscuredReasonFromBitmask = obscuredMediaUtilsModule.getMediaObscuredReasonFromBitmask;
const ObscuredMediaTypes = (require(4841) /* metro dependency 4841: ExplicitMediaRedactionModels */).ObscuredMediaTypes;
const GenericMedia = ObscuredMediaTypes.GenericMedia;
const value2 = Reflect.apply(getMediaObscuredReasonFromBitmask, obscuredMediaUtilsModule, [{type: GenericMedia,
media: mediaItem}, enabledContentHarmTypeFlags]);
const r3 = !isAuthorBot && obscuredMediaUtilsModule.isMediaScanPending({type: ObscuredMediaTypes.GenericMedia,
media: mediaItem}, enabledContentHarmTypeFlags);
const r8 = isSpoilered && shouldObscureSpoiler;
const value4 = value2.length > 0;
const r2 = value4 && (require(4813) /* metro dependency 4813: AgeVerificationUtils */).isVerifiedTeen();
object2 = {isSpoiler: r8};
object2.spoilerDescription = r8 ? getSpoilerDescriptionForType(type) : null;
object2.isObscured = value4;
if (value4) {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r5 = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.SpxcUR);
} else {
r5 = null;
}
object2.obscureDescription = r5;
object2.obscureAwaitingScan = r3;
object2.verifyAge = value4 && shouldAgeVerify;
object2.obscureHideControls = r2;
object2.obscureIsOpaque = value4;
return object2;
}