This commit is contained in:
janisslsm committed 2026-11-01 12:12:55 +02:00
1 parent 1781d25a15
commit 732c0ad767
33051 files changed
+2591613 -3019689

No files matched your search

+13
View File
@@ -0,0 +1,13 @@
// Metro module 11945 (f11946).
import { Endpoints } from "../../Constants";
const CDN_HOST = window.GLOBAL_ENV.CDN_HOST;
let GAMES_DETECTABLE = Endpoints.GAMES_DETECTABLE;
if (CDN_HOST != null) {
GAMES_DETECTABLE = `https://${CDN_HOST}/detectables/games.json`;
}
let NON_GAMES_DETECTABLE = Endpoints.NON_GAMES_DETECTABLE;
if (CDN_HOST != null) {
NON_GAMES_DETECTABLE = `https://${CDN_HOST}/detectables/non-games.json`;
}
export { GAMES_DETECTABLE as DETECTABLE_GAMES_CDN_URL };
export { NON_GAMES_DETECTABLE as DETECTABLE_NON_GAMES_CDN_URL };
@@ -0,0 +1,92 @@
// Metro module 4359 (f4360).
import DetectableGameStore from "../../stores/DetectableGameStore";
import { getSubgameMetadata } from "../roblox_subgame_detection/RobloxSubgameUtils";
import { getPlatformName } from "../../utils/PlatformUtils";
export function removeExecutablePathPrefix(a0) {
const r5 = a0.toLowerCase();
return (r5.endsWith("/") ? r5.slice(0, -1) : r5).split("/").slice(-2).join("/");
}
export function getRunningGameAnalytics(a0) {
if (a0 == null) {
return {
gameName: void 0,
gameId: void 0,
exe: void 0,
distributor: void 0,
sku: void 0,
gameMetadata: void 0,
rawExePath: void 0
};
}
const rawExePath = "exePath" in a0 ? a0.exePath : a0.exe;
let id = a0.id;
if (id == null) {
id = void 0;
}
let name = a0.name;
if (name == null) {
name = void 0;
}
const exePath = rawExePath == null ? "" : rawExePath;
let cmdLine = rawExePath;
if (cmdLine == null) {
cmdLine = "";
}
const r11 = DetectableGameStore.findGame({
id,
name,
exePath,
cmdLine,
lastFocused: 0
});
let name2 = a0.name;
if (name2 == null) {
name2 = void 0;
}
let id2 = a0.id;
if (id2 == null) {
id2 = r11?.id;
}
if (id2 == null) {
id2 = void 0;
}
const r4 = rawExePath != null;
let exe = void 0;
if (r4) {
const r13 = rawExePath.toLowerCase();
exe = (r13.endsWith("/") ? r13.slice(0, -1) : r13).split("/").slice(-2).join("/");
}
let distributor = a0.distributor;
if (distributor == null) {
distributor = void 0;
}
let sku = a0.sku;
if (sku == null) {
sku = void 0;
}
return {
gameName: name2,
gameId: id2,
exe,
distributor,
sku,
gameMetadata: a0 != null ? getSubgameMetadata(a0) : void 0,
rawExePath
};
}
export function isVerifiedGameExecutable(a0, a1) {
if (a0 != null && a1 != null) {
const r7 = a0.toLowerCase();
const r10 = r7.endsWith("/") ? r7.slice(0, -1) : r7;
let c14141_0 = r10;
const platformName = getPlatformName();
return a1.some((item) => {
let r6 = item.os === platformName;
if (r6) {
r6 = c14141_0 == null ? void 0 : c14141_0.endsWith(item.name);
}
return r6;
});
}
return false;
}
@@ -0,0 +1,71 @@
// Metro module 4223 (f4224).
import Record from "../../lib/Record";
import { createExecutable } from "../../records/ApplicationRecord";
const r21 = {
EROTIC: "Erotic"
};
const r23 = {
NONE: 0,
0: "NONE",
WINDOWED_ONLY: 1,
1: "WINDOWED_ONLY",
ALL: 2,
2: "ALL"
};
const r27 = {
NO_USER_REVIEWS: 0,
0: "NO_USER_REVIEWS",
OVERWHELMINGLY_POSITIVE: 1,
1: "OVERWHELMINGLY_POSITIVE",
VERY_POSITIVE: 2,
2: "VERY_POSITIVE",
POSITIVE: 3,
3: "POSITIVE",
MOSTLY_POSITIVE: 4,
4: "MOSTLY_POSITIVE",
MIXED: 5,
5: "MIXED",
MOSTLY_NEGATIVE: 6,
6: "MOSTLY_NEGATIVE",
NEGATIVE: 7,
7: "NEGATIVE",
VERY_NEGATIVE: 8,
8: "VERY_NEGATIVE",
OVERWHELMINGLY_NEGATIVE: 9,
9: "OVERWHELMINGLY_NEGATIVE"
};
export { r21 as GameTheme };
class DetectableGameRecord extends Record {
constructor(a0) {
super();
this.id = a0.id;
this.name = a0.name;
this.description = a0.description;
this.icon = a0.icon;
this.icon_hash = a0.icon_hash;
this.aliases = a0.aliases || [];
this.cover_image_hash = a0.cover_image_hash;
let executables = a0.executables;
if (executables == null) {
executables = [];
}
this.executables = executables.map(createExecutable);
this.overlay = a0.overlay || false;
this.overlayWarn = a0.overlayWarn || false;
this.overlayCompatibilityHook = a0.overlayCompatibilityHook || false;
this.hook = a0.hook || false;
this.supportsOutOfProcessOverlay = a0.supportsOutOfProcessOverlay || false;
this.thirdPartySkus = a0.thirdPartySkus || [];
this.themes = a0.themes || [];
this.content_classification = a0.content_classification;
}
getIconURL(a0) {
return this.icon == null ? null : `https://cdn.discordapp.com/app-icons/${this.id}/${this.icon}.png${a0 != null ? `?size=${a0}` : ""}`;
}
hasTheme(a0) {
return this.themes.includes(a0);
}
}
export { DetectableGameRecord };
export { r23 as GameDetectionDebugLevel };
export { r27 as SteamReviewScoreDescription };
@@ -0,0 +1,143 @@
// Metro module 4209 (f4210).
import "../games/GameStore";
import "../../stores/DetectableGameStore";
import "../../stores/LibraryApplicationStore";
import { OverlayGameStatusSource, OverlayMethod } from "../overlay/OverlayTypes";
import Module589 from "../../_bundle/Module589";
import Dispatcher from "../../Dispatcher";
class RunningGameStore extends Module589.Store {
static displayName = "RunningGameStore";
initialize() {}
getVisibleGame() {
return null;
}
getCurrentGameForAnalytics() {
return null;
}
getCurrentNonGameForAnalytics() {
return null;
}
getVisibleRunningGames() {
return [];
}
getRunningGames() {
return [];
}
getDebugRunningGame() {
return null;
}
getDetectionDebug() {
return null;
}
getRunningNonGames() {
return [];
}
getRunningDiscordApplicationIds() {
return [];
}
getRunningVerifiedApplicationIds() {
return [];
}
getGameForPID() {
return null;
}
getGameForName() {
return null;
}
getGameOrTransformedSubgameForPID() {
return null;
}
getLauncherForPID() {
return null;
}
getOverlayOptionsForPID() {
return null;
}
shouldElevateProcessForPID() {
return false;
}
shouldContinueWithoutElevatedProcessForPID() {
return false;
}
canCollectExecutableFingerprintsForRunningGames() {
return false;
}
getCandidateGames() {
return [];
}
isGamesSeenLoaded() {
return true;
}
isGameSeen() {
return false;
}
getGamesSeen() {
return [];
}
getSeenGameByName() {
return null;
}
isObservedAppRunning() {
return false;
}
getOverlayEnabledForGame() {
return false;
}
getOverrides() {
return [];
}
getOverrideForGame() {
return null;
}
getGameOverlayStatus() {
return null;
}
getObservedAppNameForWindow() {
return null;
}
get canShowAdminWarning() {
return false;
}
isDetectionEnabled() {
return false;
}
addExecutableTrackedByAnalytics() {}
getSystemServiceStatus() {
return {
state: "unknown"
};
}
isSystemServiceInitialized() {
return false;
}
}
const runningGameStore = new RunningGameStore(Dispatcher, {});
export default runningGameStore;
export function gameKey() {
return "";
}
export function getRawOverlayGameStatus() {
arguments[1] !== void 0;
return {
source: OverlayGameStatusSource.UNKNOWN,
enabledOOP: false,
enabledLegacy: false,
overlayMethod: OverlayMethod.Disabled,
reason: "Dummy implementation"
};
}
export function isDetectionEnabled() {
return false;
}
export function maybeTransformSubgame(a0) {
return a0;
}
export function transformForGameSettings(a0) {
return {
...a0,
played: "",
overlay: false,
verified: false,
detectable: false
};
}
@@ -0,0 +1,58 @@
// Metro module 8522 (f8523).
import { SteamReviewScoreDescription } from "./GameDetectionTypes";
export function calculateSteamReviewScoreDescription(a0, a1, a2) {
let r21, POSITIVE;
let r0 = 50;
const r3 = a2 ? 0 : 50;
let r1 = 500;
const r2 = a2 ? 100 : 500;
if (a2) {
r0 = 0;
}
if (a2) {
r1 = 100;
}
L38: {
if (a0 != null && (a1 != null && !(a1 < 10))) {
if (a0 >= 80) {
L35: {
if (a1 < r3) {
POSITIVE = SteamReviewScoreDescription.POSITIVE;
} else {
if (!(a1 < r2) && !(a0 < 95)) {
POSITIVE = SteamReviewScoreDescription.OVERWHELMINGLY_POSITIVE;
break L35;
}
POSITIVE = SteamReviewScoreDescription.VERY_POSITIVE;
}
}
r21 = POSITIVE;
break L38;
}
if (a0 >= 70) {
r21 = SteamReviewScoreDescription.MOSTLY_POSITIVE;
break L38;
}
if (a0 >= 40) {
r21 = SteamReviewScoreDescription.MIXED;
break L38;
}
if (a0 >= 20) {
r21 = SteamReviewScoreDescription.MOSTLY_NEGATIVE;
break L38;
}
if (a1 < r0) {
r21 = SteamReviewScoreDescription.NEGATIVE;
break L38;
}
if (a1 < r1) {
r21 = SteamReviewScoreDescription.VERY_NEGATIVE;
break L38;
}
r21 = SteamReviewScoreDescription.OVERWHELMINGLY_NEGATIVE;
} else {
r21 = SteamReviewScoreDescription.NO_USER_REVIEWS;
}
}
return r21;
}
+110
View File
@@ -0,0 +1,110 @@
// Metro module 5525 (f5526).
import { Image as Image2, View } from "react-native";
import { PremiumSubscriptionSKUs } from "../../premium/PremiumConstants";
import { createStyles } from "../../../design/components/Styles/native/createStyles";
import Module712 from "../../../_bundle/Module712";
import Module5526 from "../../../_bundle/Module5526";
import Module5527 from "../../../_bundle/Module5527";
import Module5528 from "../../../_bundle/Module5528";
import Module5529 from "../../../_bundle/Module5529";
let c3397_6, c3397_7, useStyles;
const GameIcon = function GameIcon(props) {
let r31;
const { game, skuId, size = c3397_6.NORMAL, style } = props;
const styles = useStyles();
const r9 = {};
r9[c3397_6.NORMAL] = styles.normal;
r9[c3397_6.SMALL] = styles.small;
r9[c3397_6.SIZE_24] = styles.size24;
r9[c3397_6.LARGE] = styles.large;
const r23 = [styles.gameIcon, r9[size], style];
const r2 = skuId != null;
let r25 = void 0;
if (r2) {
L10: {
if (PremiumSubscriptionSKUs.TIER_0 === skuId) {
r31 = Module5526;
} else if (PremiumSubscriptionSKUs.TIER_1 === skuId) {
r31 = Module5527;
} else {
if (PremiumSubscriptionSKUs.TIER_2 !== skuId) {
const LEGACY = PremiumSubscriptionSKUs.LEGACY;
r31 = null;
if (LEGACY !== skuId) {
break L10;
}
}
r31 = Module5528;
}
}
r25 = r31;
}
let source = r25;
if (game != null) {
source = r25;
if (r25 == null) {
const iconURL = game.getIconURL(c3397_7[size]);
source = iconURL != null ? {
uri: iconURL
} : r25;
}
}
if (source == null) {
source = Module5529;
r23.push(styles.placeholder);
}
return <View style={[r23, styles.entityWrapper]}>
<Image2 style={r9[size]} source={source} />
</View>;
};
c3397_6 = {
SIZE_24: "size_24",
SMALL: "small",
NORMAL: "normal",
LARGE: "large"
};
const r35 = {};
r35[c3397_6.SIZE_24] = 24;
r35[c3397_6.SMALL] = 32;
r35[c3397_6.NORMAL] = 48;
r35[c3397_6.LARGE] = 80;
c3397_7 = r35;
useStyles = createStyles({
gameIcon: {
justifyContent: "center",
alignItems: "center"
},
size24: {
width: c3397_7.size_24,
height: c3397_7.size_24,
borderRadius: Module712.radii.sm
},
small: {
width: c3397_7.small,
height: c3397_7.small,
borderRadius: Module712.radii.sm
},
normal: {
width: c3397_7.normal,
height: c3397_7.normal,
borderRadius: Module712.radii.lg
},
large: {
width: c3397_7.large,
height: c3397_7.large,
borderRadius: Module712.radii.sm
},
placeholder: {
borderRadius: Module712.radii.none,
tintColor: Module712.colors.ICON_MUTED
},
entityWrapper: {
borderWidth: 1,
borderColor: Module712.colors.BORDER_SUBTLE,
overflow: "hidden"
}
});
GameIcon.Sizes = c3397_6;
export default GameIcon;
export { c3397_6 as GameIconSizes };
export { c3397_7 as GameIconImageSize };