Files
discord-decomp/stores/UploadAttachmentStore.tsx
T
2026-11-01 12:12:55 +02:00

258 lines
7.3 KiB
TypeScript

// Metro module 4525 (f4526).
import { DraftType } from "./DraftStore";
import { MAX_UPLOAD_COUNT } from "../Constants";
import AlertActionCreators from "../actions/AlertActionCreators";
import { intl, t } from "../intl/index.native";
import Module12 from "../_bundle/Module12";
import { CloudUpload } from "../lib/uploader/CloudUpload";
import { doesImageMatchUpload } from "../lib/uploader/UploadUtils";
import Module589 from "../_bundle/Module589";
import Dispatcher from "../Dispatcher";
let c2732_5 = new Map();
let c2732_6 = [];
class UploadAttachmentStore extends Module589.Store {
static displayName = "UploadAttachmentStore";
getFirstUpload(a0, a1) {
let r7 = c2732_5.get(a0);
if (r7 == null) {
r7 = new Map();
}
let r15 = r7 == null ? void 0 : r7.get(a1);
if (r15 == null) {
r15 = c2732_6;
}
return r15.length > 0 ? r15[0] : null;
}
hasAdditionalUploads(a0, a1) {
let r7 = c2732_5.get(a0);
if (r7 == null) {
r7 = new Map();
}
let r14 = r7 == null ? void 0 : r7.get(a1);
if (r14 == null) {
r14 = c2732_6;
}
let length = r14.length;
if (length == null) {
length = 0;
}
return length > 1;
}
getUploads(a0, a1) {
let r6 = c2732_5.get(a0);
if (r6 == null) {
r6 = new Map();
}
let r13 = r6 == null ? void 0 : r6.get(a1);
if (r13 == null) {
r13 = c2732_6;
}
return r13;
}
getUploadCount(a0, a1) {
let r7 = c2732_5.get(a0);
if (r7 == null) {
r7 = new Map();
}
let r14 = r7 == null ? void 0 : r7.get(a1);
if (r14 == null) {
r14 = c2732_6;
}
let length = r14.length;
if (length == null) {
length = 0;
}
return length;
}
getUpload(a0, c14295_0, a2) {
let r7 = c2732_5.get(a0);
if (r7 == null) {
r7 = new Map();
}
let r15 = r7 == null ? void 0 : r7.get(a2);
if (r15 == null) {
r15 = c2732_6;
}
return r15.find((item) => item.id === c14295_0);
}
findUpload(a0, a1, a2) {
let r6 = c2732_5.get(a0);
if (r6 == null) {
r6 = new Map();
}
let r13 = r6 == null ? void 0 : r6.get(a1);
if (r13 == null) {
r13 = c2732_6;
}
return r13.find(a2);
}
}
const uploadAttachmentStore = new UploadAttachmentStore(Dispatcher, {
UPLOAD_ATTACHMENT_POP_FILE: function handlePopFile({ channelId: channelId2 }) {
const ChannelMessage = DraftType.ChannelMessage;
let r10 = c2732_5.get(channelId2);
if (r10 == null) {
r10 = new Map();
}
let r20 = r10 == null ? void 0 : r10.get(ChannelMessage);
if (r20 == null) {
r20 = c2732_6;
}
const r22 = [...r20];
r22.shift();
const ChannelMessage2 = DraftType.ChannelMessage;
let r27 = c2732_5.get(channelId2);
if (r27 == null) {
r27 = new Map();
}
r27.set(ChannelMessage2, r22);
c2732_5.set(channelId2, r27);
},
UPLOAD_ATTACHMENT_ADD_FILES: function handleAddFiles({ files, channelId, draftType, allowOptimization }) {
let r11 = c2732_5.get(channelId);
if (r11 == null) {
r11 = new Map();
}
let r23 = r11 == null ? void 0 : r11.get(draftType);
if (r23 == null) {
r23 = c2732_6;
}
const r25 = [...r23];
let c14296_2 = r25;
if (r25.length + files.length > MAX_UPLOAD_COUNT && (draftType !== DraftType.SlashCommand && draftType !== DraftType.ApplicationLauncherCommand)) {
AlertActionCreators.show({
title: intl.string(t.wOr6hB),
body: intl.formatToPlainString(t["qqyp/e"], {
limit: MAX_UPLOAD_COUNT
})
});
} else {
Module12.forEach(files, (a0) => {
c14296_2.push(new CloudUpload(a0, channelId, c14296_2.length, allowOptimization));
});
let r40 = c2732_5.get(channelId);
if (r40 == null) {
r40 = new Map();
}
r40.set(draftType, r25);
c2732_5.set(channelId, r40);
}
},
UPLOAD_ATTACHMENT_UPDATE_FILE: function handleUpdateFile({ channelId: channelId2, id, filename, description, spoiler, thumbnail, draftType }) {
let r11 = c2732_5.get(channelId2);
if (r11 == null) {
r11 = new Map();
}
let r25 = r11 == null ? void 0 : r11.get(draftType);
if (r25 == null) {
r25 = c2732_6;
}
const r30 = [...r25].map((item) => {
if (item.id === id) {
if (filename !== void 0) {
item.filename = filename;
}
if (spoiler !== void 0) {
item.spoiler = spoiler;
}
if (description !== void 0) {
item.description = description;
}
if (thumbnail !== void 0) {
item.isThumbnail = thumbnail;
}
}
return item;
});
let r32 = c2732_5.get(channelId2);
if (r32 == null) {
r32 = new Map();
}
r32.set(draftType, r30);
c2732_5.set(channelId2, r32);
},
UPLOAD_ATTACHMENT_REMOVE_FILE: function handleRemoveFile({ channelId: channelId2, id: id2, draftType }) {
let r11 = c2732_5.get(channelId2);
if (r11 == null) {
r11 = new Map();
}
let r21 = r11 == null ? void 0 : r11.get(draftType);
if (r21 == null) {
r21 = c2732_6;
}
const r23 = [...r21];
const r26 = r23.findIndex((item) => doesImageMatchUpload({
uri: id2,
filename: id2
}, item));
if (r26 > -1) {
r23.splice(r26, 1)[0].removeFromMsgDraft();
let r35 = c2732_5.get(channelId2);
if (r35 == null) {
r35 = new Map();
}
r35.set(draftType, r23);
c2732_5.set(channelId2, r35);
}
},
UPLOAD_ATTACHMENT_REMOVE_FILES: function handleRemoveFiles({ channelId: channelId2, attachmentIds, draftType }) {
let r12 = c2732_5.get(channelId2);
if (r12 == null) {
r12 = new Map();
}
let r21 = r12 == null ? void 0 : r12.get(draftType);
if (r21 == null) {
r21 = c2732_6;
}
const r23 = [...r21];
let c14299_0 = r23;
attachmentIds.forEach((c25241_0) => {
const r8 = c14299_0.findIndex((item) => c25241_0 === item.id);
if (r8 > -1) {
c14299_0.splice(r8, 1)[0].removeFromMsgDraft();
}
});
let r28 = c2732_5.get(channelId2);
if (r28 == null) {
r28 = new Map();
}
r28.set(draftType, r23);
c2732_5.set(channelId2, r28);
},
UPLOAD_ATTACHMENT_CLEAR_ALL_FILES: function handleClearAllFiles({ channelId: channelId2, draftType }) {
let r2 = c2732_5.get(channelId2);
if (r2 == null) {
r2 = new Map();
}
r2.set(draftType, []);
c2732_5.set(channelId2, r2);
},
UPLOAD_ATTACHMENT_SET_UPLOADS: function handleSetUploads({ channelId: channelId2, uploads, draftType }) {
let r2 = c2732_5.get(channelId2);
if (r2 == null) {
r2 = new Map();
}
r2.set(draftType, uploads);
c2732_5.set(channelId2, r2);
},
UPLOAD_ATTACHMENT_SET_FILE: function handleSetFile({ channelId: channelId2, id: id3, file, draftType, allowOptimization: allowOptimization2 }) {
let r13 = c2732_5.get(channelId2);
if (r13 == null) {
r13 = new Map();
}
let r24 = r13 == null ? void 0 : r13.get(draftType);
if (r24 == null) {
r24 = c2732_6;
}
const r29 = [...r24].filter((item) => item.id !== id3);
r29.push(new CloudUpload(file, channelId2, void 0, allowOptimization2));
let r45 = c2732_5.get(channelId2);
if (r45 == null) {
r45 = new Map();
}
r45.set(draftType, r29);
c2732_5.set(channelId2, r45);
}
});
export default uploadAttachmentStore;