Files
discord-decomp/modules/messages/EmbeddedApplicationInstanceUtils.tsx
T
2026-11-01 12:12:55 +02:00

80 lines
3.1 KiB
TypeScript

// Metro module 12370 (f12371).
import { useMemo } from "react";
import { intl, t } from "../../intl/index.native";
import * as _ActivitiesInTextUtils from "../activities/ActivitiesInTextUtils";
import { EmbeddedActivityJoinability } from "../activities/utils/getEmbeddedActivityJoinability";
const getJoinOrStartButtonState = function getJoinOrStartButtonState({ embeddedActivity: embeddedActivity2, joinability: joinability2, currentEmbeddedActivity: currentEmbeddedActivity2, channel: channel2 }) {
let tooltip;
const r2 = embeddedActivity2 == null;
const r18 = {
disabled: false,
isJoinAction: !r2,
text: r2 ? intl.string(t.RscU7I) : intl.string(t.sqe0hj),
tooltip: void 0
};
const isActivitiesInTextEnabled = _ActivitiesInTextUtils.isActivitiesInTextEnabled(channel2);
if (embeddedActivity2 != null && currentEmbeddedActivity2 != null && embeddedActivity2.launchId === currentEmbeddedActivity2.launchId) {
return {
...r18,
disabled: true,
text: intl.string(t.DPfdsq),
tooltip: void 0
};
}
if (r2) {
return {
...r18,
disabled: !isActivitiesInTextEnabled,
tooltip: isActivitiesInTextEnabled ? void 0 : intl.string(t.f41E1g)
};
}
if (joinability2 != null && joinability2 !== EmbeddedActivityJoinability.CAN_JOIN) {
L27: {
if (EmbeddedActivityJoinability.NO_USE_EMBEDDED_ACTIVITIES_PERMISSION === joinability2) {
tooltip = intl.string(t.hHGrWz);
} else if (EmbeddedActivityJoinability.ACTIVITY_AGE_GATED === joinability2) {
tooltip = intl.string(t["4WuFRE"]);
} else if (EmbeddedActivityJoinability.ACTIVITIES_FEATURE_NOT_ENABLED_FOR_OS === joinability2) {
tooltip = intl.string(t.uGDCcw);
} else if (EmbeddedActivityJoinability.ACTIVITY_NOT_SUPPORTED_ON_OS === joinability2) {
tooltip = intl.string(t.UXoQTp);
} else if (EmbeddedActivityJoinability.CHANNEL_FULL === joinability2) {
tooltip = intl.string(t.rZfiNq);
} else if (EmbeddedActivityJoinability.NO_CHANNEL_CONNECT_PERMISSION === joinability2) {
tooltip = intl.string(t.w5SAps);
} else {
if (EmbeddedActivityJoinability.NO_CHANNEL !== joinability2 && EmbeddedActivityJoinability.NO_GUILD !== joinability2 && EmbeddedActivityJoinability.NO_USER !== joinability2) {
const IS_AFK_CHANNEL = EmbeddedActivityJoinability.IS_AFK_CHANNEL;
tooltip = void 0;
if (IS_AFK_CHANNEL !== joinability2) {
break L27;
}
}
tooltip = intl.string(t.Etp6uI);
}
}
return {
...r18,
disabled: true,
tooltip
};
}
return r18;
};
const r16 = {
ACTIVE: 0,
0: "ACTIVE",
ENDED: 1,
1: "ENDED"
};
export { r16 as EmbedStates };
export function useJoinOrStartButtonState({ embeddedActivity, joinability, currentEmbeddedActivity, channel }) {
return useMemo(() => getJoinOrStartButtonState({
embeddedActivity,
joinability,
currentEmbeddedActivity,
channel
}), [embeddedActivity, joinability, currentEmbeddedActivity, channel]);
}
export { getJoinOrStartButtonState };