Files
2026-07-28 01:06:53 +03:00

249 lines
13 KiB
TypeScript

/* Metro module 4651; source: utils/UploadUtils.tsx; dependencies: [4503, 4652, 4650, 2] */
import * as FileImportTrackerModule from '../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as MessageConstantsModule from '../modules/messages/MessageConstants.tsx'; /* Metro dependency 4503 */
function _fun40131(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#40131, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4829:6, offset: 0x010f7156, size: 786 bytes, params: 8, frame: 19
let env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const items2 = [{reName: RegExp('\\.jpe?g$', 'i'), name: function(a0) {
return 'image' + a0 + '.jpg';
}, type: 'image/jpeg'}];
items2[1] = {reName: RegExp('\\.jfif$', 'i'), name: function(a0) {
return 'image' + a0 + '.jpg';
}, type: 'image/jpeg'};
items2[2] = {reName: RegExp('\\.png$', 'i'), name: function(a0) {
return 'image' + a0 + '.png';
}, type: 'image/png'};
items2[3] = {reName: RegExp('\\.gif$', 'i'), name: function(a0) {
return 'image' + a0 + '.gif';
}, type: 'image/gif'};
items2[4] = {reName: RegExp('\\.webp$', 'i'), name: function(a0) {
return 'image' + a0 + '.webp';
}, type: 'image/webp'};
items2[5] = {reName: RegExp('\\.avif$', 'i'), name: function(a0) {
return 'image' + a0 + '.avif';
}, type: 'image/avif'};
items2[6] = {reName: RegExp('\\.heic$', 'i'), name: function(a0) {
return 'image' + a0 + '.heic';
}, type: 'image/heic'};
items2[7] = {reName: RegExp('\\.heif$', 'i'), name: function(a0) {
return 'image' + a0 + '.heif';
}, type: 'image/heif'};
items2[8] = {reName: RegExp('\\.dng$', 'i'), name: function(a0) {
return 'image' + a0 + '.dng';
}, type: 'image/x-adobe-dng'};
items2[9] = {reName: RegExp('\\.mov$', 'i'), name: function(a0) {
return 'video' + a0 + '.mov';
}, type: 'video/quicktime'};
items2[10] = {reName: RegExp('\\.qt$', 'i'), name: function(a0) {
return 'video' + a0 + '.qt';
}, type: 'video/quicktime'};
items2[11] = {reName: RegExp('\\.avi$', 'i'), name: function(a0) {
return 'video' + a0 + '.avi';
}, type: 'video/x-msvideo'};
items2[12] = {reName: RegExp('\\.mp4$', 'i'), name: function(a0) {
return 'video' + a0 + '.mp4';
}, type: 'video/mp4'};
items2[13] = {reName: RegExp('\\.webm$', 'i'), name: function(a0) {
return 'video' + a0 + '.webm';
}, type: 'image/webm'};
(FileImportTrackerModule).fileFinishedImporting('utils/UploadUtils.tsx');
exports.MAX_TOTAL_ATTACHMENT_SIZE = 524288000;
exports.MAX_TOTAL_ATTACHMENT_SIZE_MB = 500;
exports.getAttachmentPayload = getAttachmentPayload;
exports.getFileData = function(a0) {
var env0_0 = a0;
var property = global.XMLHttpRequest;
var env0_1 = new property();
property = global.Promise;
value2 = Object.create(property.prototype, {constructor: {value: property}});
var value3 = new property(_fun40148);
return value3 instanceof Object ? value3 : value2;
};
exports.getFileContentLength = function(a0) {
var env0_0 = a0;
var Promise = global.Promise;
var value = Object.create(Promise.prototype, {constructor: {value: Promise}});
var value2 = new Promise(_fun40154);
return value2 instanceof Object ? value2 : value;
};
exports.getFile = getFile;
function getAttachmentPayload(a0) { // fn#40146, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4829:1171, offset: 0x010f7622, size: 600 bytes, params: 2, frame: 19
var clip;
var getClipCreatedAt;
var getClipParticipantIds;
var getClipEventsTimeline;
let value = a1;
const value2 = a2;
const value3 = undefined;
const r5 = value !== value3 ? value : null;
const object = {};
let r2 = r5 == null ? value3 : r5.toString();
r2 = r2 ?? a0.id;
object.id = r2;
if (a0.description != null) {
object.description = a0.description;
}
let spoiler = a0.spoiler;
spoiler = ({spoiler: spoiler}).spoiler;
value = '';
object.filename = value + (spoiler ? SPOILER_ATTACHMENT_PREFIX : value) + (value2 ?? a0.filename);
object.uploaded_filename = a0.uploadedFilename;
if ('durationSecs' in a0 && a0.durationSecs != null) {
object.duration_secs = a0.durationSecs;
}
if ('waveform' in a0 && a0.waveform != null) {
object.waveform = a0.waveform;
}
if ('isThumbnail' in a0 && a0.isThumbnail === true) {
object.is_thumbnail = a0.isThumbnail;
}
if ('clip' in a0 && a0.clip != null) {
object.is_clip = true;
clip = a0.clip;
object.title = clip.name;
clip = a0.clip;
object.application_id = clip.applicationId;
value = require(4652) /* metro dependency 4652: clipPayloadUtils */;
getClipCreatedAt = value.getClipCreatedAt;
clip = a0.clip;
object.clip_created_at = Reflect.apply(getClipCreatedAt, value, [clip.createdAt]);
value = require(4652) /* metro dependency 4652: clipPayloadUtils */;
getClipParticipantIds = value.getClipParticipantIds;
clip = a0.clip;
object.clip_participant_ids = Reflect.apply(getClipParticipantIds, value, [clip.users]);
clip = a0.clip;
object.clip_remote_id = clip.remoteClipId;
value = require(4652) /* metro dependency 4652: clipPayloadUtils */;
getClipEventsTimeline = value.getClipEventsTimeline;
clip = a0.clip;
object.clip_events_timeline = Reflect.apply(getClipEventsTimeline, value, [clip]);
}
r2 = 'item' in a0 && a0.item != null && a0.item.platform === (require(4650) /* metro dependency 4650: Upload */).UploadPlatform.WEB;
r2 = r2 && 'mimeType' in a0 && a0.mimeType != null;
if (r2) {
object.original_content_type = a0.mimeType;
}
return object;
}
function getFileData(a0) { // fn#40147, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4829:2181, offset: 0x010f787a, size: 74 bytes, params: 2, frame: 12
const env0_0 = a0;
const XMLHttpRequest = global.XMLHttpRequest;
let xMLHttpRequest = new XMLHttpRequest();
const Promise = global.Promise;
xMLHttpRequest = Object.create(Promise.prototype, {constructor: {value: Promise}});
const promise = new Promise(_fun40148);
return promise instanceof Object ? promise : xMLHttpRequest;
function _fun40148(a0, a1) { // fn#40148, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4829:2250, offset: 0x010f78c4, size: 116 bytes, params: 3, frame: 16
const env0_0 = a0;
const binding = a1;
binding.open('GET', env0_0, true);
binding.responseType = 'blob';
binding.onabort = function(a0) {
return require(a0);
};
binding.onerror = function(a0) {
return require(a0);
};
binding.ontimeout = function(a0) {
return require(a0);
};
binding.onload = onload_40152;
binding.send();
function onload_40152() { // fn#40152, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4829:2364, offset: 0x010f7938, size: 58 bytes, params: 1, frame: 14
return env0_0(env1_1 == null || env1_1.response == null ? undefined : env1_1.response.data);
}
}
}
function getFileContentLength(a0) { // fn#40153, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4829:2466, offset: 0x010f7972, size: 44 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(_fun40154);
return promise instanceof Object ? promise : value;
function _fun40154(a0, a1) { // fn#40154, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4829:2519, offset: 0x010f799e, size: 119 bytes, params: 3, frame: 17
const env0_0 = a0;
const env0_1 = a1;
const XMLHttpRequest = global.XMLHttpRequest;
const xMLHttpRequest = new XMLHttpRequest();
xMLHttpRequest.open('HEAD', env0_0, true);
xMLHttpRequest.onload = onload_40155;
xMLHttpRequest.onerror = a1;
xMLHttpRequest.onabort = a1;
xMLHttpRequest.ontimeout = a1;
xMLHttpRequest.send();
function onload_40155() { // fn#40155, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4829:2581, offset: 0x010f7a15, size: 224 bytes, params: 1, frame: 15
var Error;
var responseHeader;
var value;
if (MessageConstantsModule.SPOILER_ATTACHMENT_PREFIX.status >= 200) {
if (MessageConstantsModule.SPOILER_ATTACHMENT_PREFIX.status < 300) {
responseHeader = MessageConstantsModule.SPOILER_ATTACHMENT_PREFIX.getResponseHeader('Content-Length');
if (responseHeader == null) {
require(new global.Error('Content-Length header is missing'));
} else if (responseHeader !== '') {
env0_0(global.parseInt(responseHeader, 10));
} else {
require(new global.Error('Content-Length header is missing'));
}
} else {
Error = global.Error;
value = 'HTTP request failed with status code ' + MessageConstantsModule.SPOILER_ATTACHMENT_PREFIX.status;
require(new Error());
}
} else {
Error = global.Error;
value = 'HTTP request failed with status code ' + MessageConstantsModule.SPOILER_ATTACHMENT_PREFIX.status;
require(new Error());
}
}
}
}
function getFile({uri, i, overrideFilename, overrideType}) { // fn#40156, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4829:2877, offset: 0x010f7af5, size: 536 bytes, params: 2, frame: 25
var value12;
var value13;
let value = uri.split('/');
value = value[value.length - 1].split('?');
let r7 = value == null || value[0] == null ? undefined : value[0].toLowerCase();
value = '';
let r2 = r7 ?? value;
const value4 = env0_3.find(_fun40157);
let r9 = value4 == null && overrideFilename != null;
r7 = r9 ? env0_3.find(function({reName}) {
return reName.test(overrideFilename);
}) : value4;
if (r7 == null) {
r2 = r7 != null ? r7.name(i) : overrideFilename ?? 'unknown';
} else if (overrideFilename != null) {
value12 = r7.name(i).split('.').pop();
value13 = overrideFilename.lastIndexOf('.');
r2 = value13 !== -1 ? value + overrideFilename.substr(0,
value13) + '.' + value12 : value + overrideFilename + '.' + value12;
} else {
r2 = r7 != null ? r7.name(i) : overrideFilename ?? 'unknown';
}
const object = {uri: uri, filename: r2};
object.type = overrideType ?? r7?.type ?? 'unknown';
r9 = overrideType ?? r7?.name(i) ?? value;
object.isVideo = r9.indexOf('video') !== -1;
const r4 = overrideType ?? r7?.name(i) ?? value;
object.isImage = r4.indexOf('image') !== -1;
return object;
function _fun40157({reName}) { // fn#40157, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4829:3087, offset: 0x010f7d0d, size: 28 bytes, params: 2, frame: 11
return reName.test(env0_1);
}
}
}
global.__d(_fun40131, 4651, [4503, 4652, 4650, 2]) /* metro module 4651, dependencies: [4503, 4652, 4650, 2] */;