Files
discord-decomp/modules/calls/native/getPrivateChannelCall.tsx
T
2026-11-01 12:12:55 +02:00

56 lines
1.8 KiB
TypeScript

// Metro module 8830 (f8831).
import VoiceStateStore from "../../../stores/VoiceStateStore";
import { NOOP_NULL } from "../../../Constants";
import * as _PrivateChannelCallUtils from "../../../utils/native/PrivateChannelCallUtils";
import { checkIsCallActive } from "../mobile/useIsCallActive";
import { intl, t } from "../../../intl/index.native";
import { handleDisconnect } from "../../voice_calls/native/CallsUtils";
export default function getPrivateChannelCall(a0) {
let accessibilityHint, onPress, text;
let r11 = arguments[1];
if (r11 === void 0) {
r11 = false;
}
let c16817_1 = r11;
let r4 = arguments[2];
if (r4 === void 0) {
r4 = _PrivateChannelCallUtils.handleStartCall;
}
const handleStartCall = r4;
let r19 = arguments[3];
if (r19 === void 0) {
r19 = _PrivateChannelCallUtils.handleJoinCall;
}
const handleJoinCall = r19;
const isInChannel = VoiceStateStore.isInChannel(a0.id);
const r30 = checkIsCallActive(a0.id);
if (a0.isSystemDM()) {
onPress = NOOP_NULL;
text = null;
accessibilityHint = void 0;
} else if (isInChannel) {
const r72 = r11 ? null : intl.string(t["4ry6yi"]);
onPress = () => handleDisconnect(a0);
text = r72;
accessibilityHint = void 0;
} else if (r30) {
const r59 = r11 ? a0 != null ? VoiceStateStore.hasVideo(a0.id) ? intl.string(t.W68MhH) : null : null : intl.string(t.fdEeb5);
onPress = () => handleJoinCall(a0, c16817_1);
text = r59;
accessibilityHint = void 0;
} else {
text = r11 ? intl.string(t["7AWk50"]) : intl.string(t["EZgS+9"]);
accessibilityHint = r11 ? intl.string(t.oCqlGG) : intl.string(t.focH1t);
onPress = () => handleStartCall(a0, c16817_1);
}
if (accessibilityHint == null) {
accessibilityHint = text;
}
return {
text,
accessibilityHint,
inCall: isInChannel,
onPress
};
};