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

131 lines
6.5 KiB
TypeScript

/* Metro module 8421; source: modules/calls/native/VideoBackground.tsx; dependencies: [57, 31, 27, 661, 33, 4501, 22, 8422, 8423, 4000, 697, 1305, 2] */
function _fun66879(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#66879, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8606:6, offset: 0x01c0dbfc, size: 414 bytes, params: 8, frame: 26
const env0_0 = require;
const closure = useDominantRGBFromImage;
const closure2 = useDominantColorFromImage;
const closure3 = VideoBackground;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
let value = importAll(31) /* metro dependency 31 */;
let value2 = require(27) /* metro dependency 27 */;
const env0_5 = value2.View;
const env0_6 = value2.NativeModules;
const env0_7 = value2.Image;
const env0_8 = (require(661) /* metro dependency 661: Constants */).NOOP;
const value3 = require(33) /* metro dependency 33 */;
const env0_9 = value3.jsx;
const env0_10 = value3.jsxs;
const env0_11 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({videoBackground: {alignItems: 'center'},
videoDetailsSpacer: {paddingTop: 12}});
const value6 = (importDefault(22) /* metro dependency 22 */).memoize(function(a0) {
var value = a0;
var value2 = null;
return value2 == value || value === '' ? value2 : typeof value === 'number' ? value : {uri: value};
});
const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes;
closure3.AvatarSizes = AvatarSizes;
value = value.memo(closure3);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/calls/native/VideoBackground.tsx');
exports.default = value;
exports.AvatarSizes = AvatarSizes;
exports.memoizedImageSource = value6;
exports.useDominantRGBFromImage = closure;
exports.useDominantColorFromImage = closure2;
}
function useDominantRGBFromImage(a0, a1) { // fn#66880, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8606:384, offset: 0x01c0dd9a, size: 273 bytes, params: 3, frame: 23
var moduleValue;
const value = a1;
const env0_0 = a0;
const Array = global.Array;
const r7 = Array.isArray(value) ? value[0] : value;
const value2 = undefined;
const value3 = (importDefault(8422) /* metro dependency 8422: useGetIsMounted */)();
const binding = env0_4;
const useState = binding.useState;
let r0 = a0 != null ? (importDefault(8423) /* metro dependency 8423: VideoBackgroundManager */).cachedDominantColors[a0] : value2;
if (r0 == null) {
moduleValue = require(4000) /* metro dependency 4000: ColorUtils */;
r0 = moduleValue.hexToRgb((importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.PRIMARY_800);
}
const value6 = env0_3(Reflect.apply(useState, binding, [r0]), 2);
const property = value6[0];
var env0_3 = value6[1];
env0_4.useEffect(_fun66881, [r7, a0, value3]);
return property;
}
function useDominantColorFromImage(a0, a1) { // fn#66883, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8606:1013, offset: 0x01c0e01f, size: 80 bytes, params: 3, frame: 20
const value = useDominantRGBFromImage(a0, a1);
return 'rgb(' + value.r + ', ' + value.g + ', ' + value.b + ')';
}
function VideoBackground(a0) { // fn#66884, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8606:1124, offset: 0x01c0e06f, size: 331 bytes, params: 2, frame: 26
const style = a0.style;
const url = a0.url;
let isStageCall = a0.isStageCall;
const value = undefined;
isStageCall = !(isStageCall === value) && isStageCall;
const avatarStyle = a0.avatarStyle;
a0.user;
a0.guildId;
const renderVideoDetails = a0.renderVideoDetails;
const object2 = {'style': 0, 'url': 0, 'isStageCall': 0, 'avatarStyle': 0, 'user': 0, 'guildId': 0,
'renderVideoDetails': 0};
const value3 = null;
silentSetPrototypeOf(object2, value3, undefined);
const value4 = copyDataProperties({}, a0, object2, undefined);
const styles = useStyles();
const value6 = env0_12(url);
const value7 = useDominantColorFromImage(url, value6);
if (value3 == value6) {
return value3;
}
const r1 = value3 == renderVideoDetails ? value : renderVideoDetails();
const r6 = value3 != r1 ? r1 : value3;
const items2 = [style];
items2[1] = styles.videoBackground;
items2[2] = {backgroundColor: value7};
items2[3] = value3 != r6 ? styles.videoDetailsSpacer : value3;
const Avatar = (require(1305) /* metro dependency 1305: native */).Avatar;
return (
<View style={items2}>
<Avatar
source={value6}
{...value4}
{...{['avatarStyle']: [avatarStyle, isStageCall ? {backgroundColor: value7} : value3]}}
{...{['isStageCall']: isStageCall}}
/>
{r6}
</View>
);
}
function _fun66881() { // fn#66881, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8606:644, offset: 0x01c0deab, size: 253 bytes, params: 1, frame: 15
var environment;
var value4;
if (require != null && env0_0 != null) {
value4 = environment.__proto__;
if ((importDefault(8423) /* metro dependency 8423: VideoBackgroundManager */).cachedDominantColors[env0_0] == null) {
(typeof require === 'number' ? NativeModules.ImageManager.getDominantColorsLocalAsset(Image.resolveAssetSource(require)) : NativeModules.ImageManager.getDominantColors(Image.resolveAssetSource(require))).then(_fun66882).catch(NOOP);
} else {
env0_3((importDefault(8423) /* metro dependency 8423: VideoBackgroundManager */).cachedDominantColors[env0_0]);
}
}
}
function _fun66882(a0) { // fn#66882, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8606:859, offset: 0x01c0dfa8, size: 119 bytes, params: 2, frame: 16
var value2;
var value3;
var object2;
if (env1_2()) {
value2 = environment.__proto__.__proto__;
value3 = env2_3(a0[0], 3);
object2 = {r: value3[0], g: value3[1], b: value3[2]};
env1_3(object2);
(importDefault(8423) /* metro dependency 8423: VideoBackgroundManager */).cachedDominantColors[env1_0] = object2;
}
}