decord/source/modules/activities/utils/getEmbeddedActivityLaunchability.tsx

94 lines
4.7 KiB
TypeScript
Raw Normal View History

2026-08-15 05:55:55 +00:00
// Module ID: 11130
// Function ID: 11131
2026-07-20 16:05:17 +00:00
// Name: getEmbeddedActivityLaunchability
2026-08-15 05:55:55 +00:00
// Dependencies: [1391, 1910, 4021, 4542, 4481, 676, 8699, 589, 1236, 2]
2026-07-20 16:05:17 +00:00
// Exports: getEmbeddedActivityLaunchabilityForChannel, getEmbeddedActivityLaunchabilityLabel, useEmbeddedActivityLaunchability
2026-08-15 05:55:55 +00:00
// Module 11130 (getEmbeddedActivityLaunchability)
2026-07-29 08:29:29 +00:00
import ensureGuildLoaded from "ensureGuildLoaded";
import createGuildRecordFromRust from "createGuildRecordFromRust";
import getUncachedChannelPermissions from "getUncachedChannelPermissions";
import updateVoiceState from "updateVoiceState";
2026-07-23 10:11:24 +00:00
import { SUPPORTED_ACTIVITIES_CHANNEL_TYPES as closure_6 } from "items3";
import { Permissions } from "ME";
const require = arg1;
2026-07-20 16:05:17 +00:00
function getEmbeddedActivityLaunchability(arg0) {
let ChannelStore;
let GuildStore;
let PermissionStore;
let VoiceStateStore;
let channelId;
({ channelId, ChannelStore, GuildStore, PermissionStore, VoiceStateStore } = arg0);
const channel = ChannelStore.getChannel(channelId);
if (null == channel) {
return obj.NO_CHANNEL;
} else if (closure_6.includes(channel.type)) {
if (obj2.getIsActivitiesEnabledForCurrentPlatform()) {
if (null != channel) {
if (!channel.isPrivate()) {
const guildId = channel.getGuildId();
if (null == guildId) {
return obj.NO_GUILD;
} else {
const guild = GuildStore.getGuild(guildId);
let afkChannelId;
2026-07-29 08:29:29 +00:00
if (guild != null) {
2026-07-20 16:05:17 +00:00
afkChannelId = guild.afkChannelId;
}
if (afkChannelId === channel.id) {
return obj.IS_AFK_CHANNEL;
} else {
if (PermissionStore.can(Permissions.USE_EMBEDDED_ACTIVITIES, channel)) {
const currentClientVoiceChannelId = VoiceStateStore.getCurrentClientVoiceChannelId(channel.getGuildId());
if (channel.isVocal()) {
if (currentClientVoiceChannelId !== channelId) {
if (!canResult) {
return obj.NO_CHANNEL_CONNECT_PERMISSION;
}
}
}
} else {
return obj.NO_USE_EMBEDDED_ACTIVITIES_PERMISSION;
}
2026-07-23 10:11:24 +00:00
canResult = PermissionStore.can(Permissions.CONNECT, channel);
2026-07-20 16:05:17 +00:00
}
}
}
}
return obj.CAN_LAUNCH;
} else {
return obj.ACTIVITIES_FEATURE_NOT_ENABLED_FOR_OS;
}
2026-08-15 05:55:55 +00:00
obj2 = require(8699) /* useIsActivitiesEnabledForCurrentPlatform */;
2026-07-20 16:05:17 +00:00
} else {
return obj.ACTIVITIES_FEATURE_NOT_ENABLED_FOR_CHANNEL;
}
}
const obj = { CAN_LAUNCH: 0, [0]: "CAN_LAUNCH", NO_USE_EMBEDDED_ACTIVITIES_PERMISSION: 1, [1]: "NO_USE_EMBEDDED_ACTIVITIES_PERMISSION", NO_CHANNEL_CONNECT_PERMISSION: 2, [2]: "NO_CHANNEL_CONNECT_PERMISSION", NO_CHANNEL: 3, [3]: "NO_CHANNEL", NO_GUILD: 4, [4]: "NO_GUILD", IS_AFK_CHANNEL: 5, [5]: "IS_AFK_CHANNEL", ACTIVITIES_FEATURE_NOT_ENABLED_FOR_OS: 6, [6]: "ACTIVITIES_FEATURE_NOT_ENABLED_FOR_OS", ACTIVITIES_FEATURE_NOT_ENABLED_FOR_CHANNEL: 7, [7]: "ACTIVITIES_FEATURE_NOT_ENABLED_FOR_CHANNEL" };
2026-07-29 08:29:29 +00:00
const result = require("getUncachedChannelPermissions").fileFinishedImporting("modules/activities/utils/getEmbeddedActivityLaunchability.tsx");
2026-07-20 16:05:17 +00:00
export const EmbeddedActivityLaunchability = obj;
export { getEmbeddedActivityLaunchability };
export const getEmbeddedActivityLaunchabilityForChannel = function getEmbeddedActivityLaunchabilityForChannel(channelId) {
2026-07-29 08:29:29 +00:00
return getEmbeddedActivityLaunchability({ channelId, ChannelStore: ensureGuildLoaded, GuildStore: createGuildRecordFromRust, PermissionStore: getUncachedChannelPermissions, VoiceStateStore: updateVoiceState });
2026-07-20 16:05:17 +00:00
};
export const useEmbeddedActivityLaunchability = function useEmbeddedActivityLaunchability(channelId) {
2026-07-23 10:11:24 +00:00
const _require = channelId;
2026-07-29 08:29:29 +00:00
const items = [ensureGuildLoaded, createGuildRecordFromRust, getUncachedChannelPermissions, updateVoiceState];
2026-07-20 16:05:17 +00:00
const items1 = [channelId];
2026-07-29 08:29:29 +00:00
return _require(589).useStateFromStores(items, () => outer1_9({ channelId: closure_0, ChannelStore: outer1_2, GuildStore: outer1_3, PermissionStore: outer1_4, VoiceStateStore: outer1_5 }), items1);
2026-07-20 16:05:17 +00:00
};
export const getEmbeddedActivityLaunchabilityLabel = function getEmbeddedActivityLaunchabilityLabel(arg0) {
if (obj.CAN_LAUNCH === arg0) {
2026-07-29 08:29:29 +00:00
const intl3 = require(1236) /* getSystemLocale */.intl;
return intl3.string(require(1236) /* getSystemLocale */.t.qJvTKQ);
} else if (tmp.NO_USE_EMBEDDED_ACTIVITIES_PERMISSION === arg0) {
const intl2 = require(1236) /* getSystemLocale */.intl;
return intl2.string(require(1236) /* getSystemLocale */.t.hHGrWz);
2026-07-20 16:05:17 +00:00
} else {
2026-07-29 08:29:29 +00:00
const intl = require(1236) /* getSystemLocale */.intl;
return intl.string(require(1236) /* getSystemLocale */.t.j29zCr);
2026-07-20 16:05:17 +00:00
}
};