265 lines
9.5 KiB
TypeScript
265 lines
9.5 KiB
TypeScript
// Module ID: 10178
|
|
// Function ID: 10179
|
|
// Name: AttachmentIcon
|
|
// Dependencies: [19, 17, 21, 4668, 712, 10179, 10180, 10181, 10182, 10183, 10184, 10185, 10186, 10187, 10188, 10189, 10190, 10191, 10192, 4839, 4739, 500, 5454, 1297, 10110, 9055, 2]
|
|
// Exports: default
|
|
|
|
// Module 10178 (AttachmentIcon)
|
|
import set from "set" /* 500 */;
|
|
import ThemesDefault from "Themes" /* 712 */;
|
|
import Button from "Button" /* 1297 */;
|
|
import Text from "Text" /* 4739 */;
|
|
import preloadDefault from "preload" /* 5454 */;
|
|
import registerAssetDefault from "registerAsset" /* 10179 */;
|
|
import registerAssetDefault2 from "registerAsset" /* 10180 */;
|
|
import registerAssetDefault3 from "registerAsset" /* 10181 */;
|
|
import registerAssetDefault4 from "registerAsset" /* 10182 */;
|
|
import registerAssetDefault5 from "registerAsset" /* 10183 */;
|
|
import registerAssetDefault6 from "registerAsset" /* 10184 */;
|
|
import registerAssetDefault7 from "registerAsset" /* 10185 */;
|
|
import registerAssetDefault8 from "registerAsset" /* 10186 */;
|
|
import registerAssetDefault9 from "registerAsset" /* 10187 */;
|
|
import registerAssetDefault10 from "registerAsset" /* 10188 */;
|
|
import registerAssetDefault11 from "registerAsset" /* 10189 */;
|
|
import registerAssetDefault12 from "registerAsset" /* 10190 */;
|
|
import registerAssetDefault13 from "registerAsset" /* 10191 */;
|
|
import registerAssetDefault14 from "registerAsset" /* 10192 */;
|
|
import importAllResult from "noop" /* 19 */;
|
|
import get_ActivityIndicator from "get ActivityIndicator" /* 17 */;
|
|
import jsxProd from "jsxProd" /* 21 */;
|
|
import createCacheKey from "createCacheKey" /* 4668 */;
|
|
|
|
require = arg1;
|
|
class AttachmentIcon {
|
|
constructor(arg0) {
|
|
fileName = global.fileName;
|
|
items = [];
|
|
items[0] = fileName;
|
|
tmp = closure_8();
|
|
obj = {
|
|
style: tmp.attachmentFileIcon,
|
|
source: closure_3.useMemo(() => {
|
|
const obj = fileName(closure_1_2[19]);
|
|
let str = fileName;
|
|
if (fileName == null) {
|
|
str = "";
|
|
}
|
|
let tmp2 = closure_1_9[obj.classifyFileName(obj, str)];
|
|
if (tmp2 == null) {
|
|
tmp2 = closure_1_1(closure_1_2[16]);
|
|
}
|
|
return tmp2;
|
|
}, items)
|
|
};
|
|
return jsx(Image, obj);
|
|
}
|
|
}
|
|
function FilenameText(fileName) {
|
|
fileName = fileName.fileName;
|
|
const tmp = callback3();
|
|
let obj = /(?:\.([^.]+))?$/;
|
|
let str = fileName;
|
|
if (fileName == null) {
|
|
str = "";
|
|
}
|
|
const match = obj.exec(str);
|
|
let tmp5 = null != fileName;
|
|
if (tmp5) {
|
|
tmp5 = "" !== fileName;
|
|
}
|
|
if (tmp5) {
|
|
obj = { style: null, ellipsizeMode: "middle", lineClamp: 1, variant: "text-xs/medium", color: "mobile-text-heading-primary", children: null };
|
|
obj[0] = tmp.attachmentFileName;
|
|
obj[5] = fileName;
|
|
tmp5 = callback(Text.Text, obj);
|
|
}
|
|
const items = [tmp5, ];
|
|
obj = { style: tmp.attachmentFileName, lineClamp: 1, variant: "text-xs/medium", color: "text-muted", children: null };
|
|
let str3 = "UNKNOWN";
|
|
if (null != match) {
|
|
str3 = "UNKNOWN";
|
|
if (null != match[1]) {
|
|
str3 = match[1].toUpperCase();
|
|
const str4 = match[1];
|
|
}
|
|
}
|
|
obj1 = { children: null };
|
|
obj[4] = str3;
|
|
items[1] = callback(Text.Text, obj);
|
|
obj1[0] = items;
|
|
return closure_7(closure_5, obj1);
|
|
}
|
|
function DefaultAttachmentPreview(fileName) {
|
|
fileName = fileName.fileName;
|
|
({ maxFileWidth, borderRadius } = fileName);
|
|
const obj = { style: null, children: null };
|
|
const items = [callback3().fileInfoAttachmentPreviewFile, { maxWidth: maxFileWidth, borderRadius }];
|
|
obj[0] = items;
|
|
const items1 = [callback(AttachmentIcon, { fileName }), callback(FilenameText, { fileName })];
|
|
obj[1] = items1;
|
|
return callback2(closure_5, obj);
|
|
}
|
|
let c3 = importAllResult;
|
|
({ Image: c4, View: c5 } = get_ActivityIndicator);
|
|
({ jsx: closure_6, jsxs: error } = jsxProd);
|
|
let obj = { fileInfoAttachmentPreviewFile: null, attachmentFileIcon: null, attachmentFileName: null, videoIcon: null };
|
|
obj = { flexDirection: "row", alignItems: "center", overflow: "hidden", borderRadius: ThemesDefault.radii.sm, height: 75, padding: 12, flex: 1, gap: ThemesDefault.space.PX_8 };
|
|
obj[0] = obj;
|
|
obj[1] = { height: 32, width: 24 };
|
|
obj[2] = { paddingRight: 4, paddingLeft: 4, maxWidth: 136 };
|
|
obj[3] = { position: "absolute", top: 0, left: 0, right: 0, bottom: 0, alignItems: "center", justifyContent: "center" };
|
|
let closure_8 = createCacheKey.createStyles(obj);
|
|
createCacheKey = { archive: registerAssetDefault, acrobat: registerAssetDefault2, ae: registerAssetDefault3, ai: registerAssetDefault4, audio: registerAssetDefault5, code: registerAssetDefault6, document: registerAssetDefault7, image: registerAssetDefault8, photoshop: registerAssetDefault9, sketch: registerAssetDefault10, spreadsheet: registerAssetDefault11, unknown: registerAssetDefault12, video: registerAssetDefault13, webcode: registerAssetDefault14 };
|
|
let closure_13 = importAllResult.memo((borderRadius) => {
|
|
({ uri, width, height, style, fileName } = borderRadius);
|
|
let obj = { uri, width, height };
|
|
obj = { width, height, borderRadius: borderRadius.borderRadius };
|
|
let isMatch = null != fileName;
|
|
if (isMatch) {
|
|
isMatch = "" !== fileName;
|
|
}
|
|
if (isMatch) {
|
|
let obj2 = /\.gif$/i;
|
|
isMatch = obj2.test(fileName);
|
|
}
|
|
if (isMatch) {
|
|
let isIOSResult = set.isIOS();
|
|
if (isIOSResult) {
|
|
isIOSResult = uri.startsWith("ph://");
|
|
}
|
|
if (!isIOSResult) {
|
|
let isAndroidResult = tmp2(500).isAndroid();
|
|
if (isAndroidResult) {
|
|
isAndroidResult = uri.startsWith("content://");
|
|
}
|
|
isIOSResult = isAndroidResult;
|
|
const tmp2Result = tmp2(500);
|
|
}
|
|
isMatch = isIOSResult;
|
|
const obj4 = set;
|
|
tmp2 = require;
|
|
}
|
|
obj = { style: items, children: null };
|
|
items = [obj, style, { overflow: "hidden" }];
|
|
if (isMatch) {
|
|
obj1 = { style: null, source: null, resizeMode: "cover", enableAnimation: true };
|
|
const items1 = [obj, style];
|
|
obj1[0] = items1;
|
|
obj1[1] = obj;
|
|
obj[1] = tmp6(preloadDefault, obj1);
|
|
let tmp10 = obj;
|
|
} else {
|
|
obj2 = { style: null, source: null, localImageSource: null };
|
|
const items2 = [obj, style];
|
|
obj2[0] = items2;
|
|
obj2[1] = obj;
|
|
obj2[2] = obj;
|
|
obj[1] = tmp6(Button.ThumbnailImage, obj2);
|
|
tmp10 = obj;
|
|
}
|
|
return closure_6(closure_5, tmp10);
|
|
});
|
|
const result = require("set").fileFinishedImporting("modules/media/native/AttachmentPreview.tsx");
|
|
|
|
export default function AttachmentPreview(height) {
|
|
({ uri, isVideo, width } = height);
|
|
if (width === undefined) {
|
|
width = 75;
|
|
}
|
|
let num = height.height;
|
|
if (num === undefined) {
|
|
num = 75;
|
|
}
|
|
({ fileName, borderRadius, maxFileWidth } = height);
|
|
if (borderRadius === undefined) {
|
|
borderRadius = ThemesDefault.radii.sm;
|
|
}
|
|
let flag = height.showPlayOnVideoPreview;
|
|
if (flag === undefined) {
|
|
flag = false;
|
|
}
|
|
let defaultPreview = height.defaultPreview;
|
|
if (defaultPreview === undefined) {
|
|
let obj = { fileName: null, maxFileWidth: null, borderRadius: null };
|
|
obj[0] = fileName;
|
|
obj[1] = maxFileWidth;
|
|
obj[2] = borderRadius;
|
|
defaultPreview = callback(DefaultAttachmentPreview, obj);
|
|
}
|
|
const style = height.style;
|
|
let videoIcon = callback3();
|
|
if (height.isImage) {
|
|
obj = { uri: null, width: null, height: null, borderRadius: null, style: null, fileName: null };
|
|
obj[0] = uri;
|
|
obj[1] = width;
|
|
obj[2] = num;
|
|
obj[3] = borderRadius;
|
|
obj[4] = style;
|
|
obj[5] = fileName;
|
|
let tmp9 = callback(closure_13, obj);
|
|
} else {
|
|
if (!isVideo) {
|
|
let obj2 = set;
|
|
if (obj2.isIOS()) {
|
|
let tmp6 = tmp8;
|
|
let CirclePlayIcon = tmp7;
|
|
}
|
|
tmp9 = defaultPreview;
|
|
if (isVideo) {
|
|
tmp9 = defaultPreview;
|
|
if (tmp7Result.isIOS()) {
|
|
obj = { style: null, children: null };
|
|
obj[0] = style;
|
|
obj1 = { style: null, source: null, muted: true, paused: true, resizeMode: "cover", preventsDisplaySleepDuringVideoPlayback: false };
|
|
obj2 = { height: null, width: null };
|
|
obj2[0] = num;
|
|
obj2[1] = width;
|
|
obj1[0] = obj2;
|
|
const obj3 = { uri: null };
|
|
obj3[0] = uri;
|
|
obj1[1] = obj3;
|
|
obj[1] = callback(tmp7(9055).VideoComponent, obj1);
|
|
tmp9 = callback(closure_5, obj);
|
|
}
|
|
tmp7Result = tmp7(500);
|
|
}
|
|
tmp8 = dependencyMap;
|
|
} else {
|
|
tmp6 = dependencyMap;
|
|
obj1 = set;
|
|
CirclePlayIcon = require;
|
|
}
|
|
if (flag) {
|
|
const obj4 = { style: null, children: null };
|
|
obj4[0] = style;
|
|
const obj5 = { uri: null, width: null, height: null, borderRadius: null, style: null, fileName: null };
|
|
obj5[0] = uri;
|
|
obj5[1] = width;
|
|
obj5[2] = num;
|
|
obj5[3] = borderRadius;
|
|
obj5[4] = style;
|
|
obj5[5] = fileName;
|
|
const items = [callback(closure_13, obj5), ];
|
|
const obj6 = { style: null, children: null };
|
|
videoIcon = videoIcon.videoIcon;
|
|
obj6[0] = videoIcon;
|
|
CirclePlayIcon = CirclePlayIcon(10110).CirclePlayIcon;
|
|
tmp6 = callback(CirclePlayIcon, { size: "md", color: "white", secondaryColor: "black" });
|
|
obj6[1] = tmp6;
|
|
items[1] = callback(closure_5, obj6);
|
|
obj4[1] = items;
|
|
let tmp14 = callback2(closure_5, obj4);
|
|
} else {
|
|
const obj7 = { uri: null, width: null, height: null, borderRadius: null, style: null, fileName: null };
|
|
obj7[0] = uri;
|
|
obj7[1] = width;
|
|
obj7[2] = num;
|
|
obj7[3] = borderRadius;
|
|
obj7[4] = style;
|
|
obj7[5] = fileName;
|
|
tmp14 = callback(closure_13, obj7);
|
|
}
|
|
}
|
|
return tmp9;
|
|
};
|
|
export { AttachmentIcon };
|