2026-09-28 16:18:32 +00:00
|
|
|
// Module ID: 13219
|
|
|
|
|
// Function ID: 13220
|
2026-09-18 19:45:33 +00:00
|
|
|
// Name: ClipsExperiment
|
2026-09-28 16:18:32 +00:00
|
|
|
// Dependencies: [1993, 1372, 1374, 1435, 13220, 504, 4488, 2]
|
2026-09-26 17:57:22 +00:00
|
|
|
// Exports: areClipsAvailable, isScreenshotKeybindEnabled, isUserPremiumTypeForClipsEarlyAccess, useIsClipsAvailable, useScreenshotKeybindEnabled
|
2026-09-18 19:45:33 +00:00
|
|
|
|
2026-09-28 16:18:32 +00:00
|
|
|
// Module 13219 (ClipsExperiment)
|
2026-10-01 14:13:23 +00:00
|
|
|
import get_initialized from "get initialized" /* 504 */;
|
|
|
|
|
import PremiumConstants from "PremiumConstants" /* 1374 */;
|
2026-09-28 16:18:32 +00:00
|
|
|
import PremiumUtilsDefault from "PremiumUtils" /* 4488 */;
|
|
|
|
|
import isClientClipsCapableDefault from "isClientClipsCapable" /* 13220 */;
|
|
|
|
|
import MediaEngineStore from "MediaEngineStore" /* 1993 */;
|
2026-09-26 17:57:22 +00:00
|
|
|
import UserStore from "UserStore" /* 1372 */;
|
2026-10-01 14:13:23 +00:00
|
|
|
import ApexExperiment from "ApexExperiment" /* 1435 */;
|
|
|
|
|
import size from "module_2" /* 2 */;
|
2026-09-18 19:45:33 +00:00
|
|
|
|
2026-10-01 14:13:23 +00:00
|
|
|
let obj2;
|
|
|
|
|
const PremiumTypes = PremiumConstants.PremiumTypes;
|
|
|
|
|
let obj = { kind: "user", name: "2026-03-clips-experiment", defaultConfig: { enableClips: false, ignorePlatformRestriction: false }, variations: obj2 };
|
|
|
|
|
obj2 = { 1: null, 2: { enableClips: true, ignorePlatformRestriction: false } };
|
|
|
|
|
obj2[2] = { enableClips: true, ignorePlatformRestriction: true };
|
|
|
|
|
const apexExperiment = ApexExperiment.createApexExperiment(obj);
|
2026-09-18 19:45:33 +00:00
|
|
|
const result = size.fileFinishedImporting("modules/clips/ClipsExperiment.tsx");
|
|
|
|
|
|
|
|
|
|
export const ClipsExperiment = apexExperiment;
|
|
|
|
|
export const areClipsAvailable = function areClipsAvailable() {
|
|
|
|
|
if (isClientClipsCapableDefault(MediaEngineStore)) {
|
|
|
|
|
const currentUser = UserStore.getCurrentUser();
|
|
|
|
|
let premiumType;
|
2026-10-01 14:13:23 +00:00
|
|
|
const isPremiumAtLeast = tmp(4488).isPremiumAtLeast;
|
|
|
|
|
PremiumUtilsDefault;
|
2026-09-18 19:45:33 +00:00
|
|
|
if (currentUser != null) {
|
|
|
|
|
premiumType = currentUser.premiumType;
|
|
|
|
|
}
|
2026-10-01 14:13:23 +00:00
|
|
|
const enableClips = isPremiumAtLeast(premiumType, PremiumTypes.TIER_2) || apexExperiment.getConfig({ location: "areClipsEnabled" }).enableClips;
|
2026-09-18 19:45:33 +00:00
|
|
|
return enableClips;
|
|
|
|
|
} else {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
};
|
2026-09-26 17:57:22 +00:00
|
|
|
export const useIsClipsAvailable = function useIsClipsAvailable() {
|
2026-10-01 14:13:23 +00:00
|
|
|
let TIER_2;
|
2026-09-18 19:45:33 +00:00
|
|
|
const items = [UserStore];
|
2026-10-01 14:13:23 +00:00
|
|
|
const tmp = isClientClipsCapableDefault(MediaEngineStore);
|
|
|
|
|
const obj = get_initialized;
|
|
|
|
|
const stateFromStores = obj.useStateFromStores(items, () => {
|
2026-09-18 19:45:33 +00:00
|
|
|
currentUser = currentUser.getCurrentUser();
|
|
|
|
|
let premiumType;
|
2026-10-01 14:13:23 +00:00
|
|
|
const isPremiumAtLeast = PremiumUtilsDefault.isPremiumAtLeast;
|
|
|
|
|
PremiumUtilsDefault;
|
2026-09-18 19:45:33 +00:00
|
|
|
if (currentUser != null) {
|
|
|
|
|
premiumType = currentUser.premiumType;
|
|
|
|
|
}
|
2026-10-01 14:13:23 +00:00
|
|
|
return isPremiumAtLeast(premiumType, TIER_2.TIER_2);
|
2026-09-18 19:45:33 +00:00
|
|
|
});
|
2026-10-01 14:13:23 +00:00
|
|
|
const tmp3 = (apexExperiment.getConfig({ location: "useEnableClips" }).enableClips || stateFromStores) && tmp;
|
|
|
|
|
return tmp3;
|
2026-09-26 17:57:22 +00:00
|
|
|
};
|
|
|
|
|
export const isUserPremiumTypeForClipsEarlyAccess = function isUserPremiumTypeForClipsEarlyAccess(premiumType) {
|
|
|
|
|
premiumType = undefined;
|
2026-10-01 14:13:23 +00:00
|
|
|
const isPremiumAtLeast = PremiumUtilsDefault.isPremiumAtLeast;
|
|
|
|
|
PremiumUtilsDefault;
|
2026-09-26 17:57:22 +00:00
|
|
|
if (premiumType != null) {
|
|
|
|
|
premiumType = premiumType.premiumType;
|
|
|
|
|
}
|
2026-10-01 14:13:23 +00:00
|
|
|
return isPremiumAtLeast(premiumType, PremiumTypes.TIER_2);
|
2026-09-26 17:57:22 +00:00
|
|
|
};
|
2026-09-18 19:45:33 +00:00
|
|
|
export function isScreenshotKeybindEnabled() {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
export function useScreenshotKeybindEnabled() {
|
|
|
|
|
return false;
|
|
|
|
|
}
|