// Module ID: 18717 // Function ID: 18718 // Name: SentryExperimentFeatureFlagManager // Dependencies: [5016, 1259, 4939, 1255, 6808, 2] // Module 18717 (SentryExperimentFeatureFlagManager) import SentryUtilsDefault from "SentryUtils" /* 1255 */; import ExperimentStore from "ExperimentStore" /* 5016 */; import ApexExperimentStore from "ApexExperimentStore" /* 1259 */; import SelectedGuildStore from "SelectedGuildStore" /* 4939 */; import AutomaticLifecycleManager from "AutomaticLifecycleManager" /* 6808 */; import size from "module_2" /* 2 */; let map; function isLikelyControl(registeredExperiments, variantId2) { if (null == registeredExperiments) { return true; } else { let tmp3 = null == tmp2; if (!tmp3) { const _JSON = JSON; const _JSON2 = JSON; const json = JSON.stringify(tmp2); tmp3 = json === JSON.stringify(registeredExperiments.defaultConfig); } return tmp3; } } function flushFlags(items, set) { const sorted = items.sort(); const iter = items[Symbol.iterator](); const nextResult = iter.next(); while (iter !== undefined) { let tmp3 = nextResult; let obj = SentryUtilsDefault; let addFeatureFlagResult = obj.addFeatureFlag(nextResult, true); if (set != null) { let addResult = set.add(tmp3); } continue; } } function syncAllExperimentFlags() { function resetGuildFlags() { const tmp2 = set[Symbol.iterator](); while (tmp2 !== undefined) { let obj = SentryUtilsDefault; let addFeatureFlagResult = obj.addFeatureFlag(tmp3, false); continue; } set.clear(); } function getHashToName() { const registeredExperiments = ApexExperimentStore.getRegisteredExperiments(); const obj = {}; for (const key10006 in registeredExperiments) { obj[ApexExperimentStore.getHash(key10006)] = key10006; continue; } return obj; } resetGuildFlags(); const items = []; const items1 = []; const items2 = []; const items3 = []; const guildId = SelectedGuildStore.getGuildId(); const allExperimentAssignments = ExperimentStore.getAllExperimentAssignments(); for (const key10027 in allExperimentAssignments) { let tmp40 = allExperimentAssignments[key10027]; let tmp4 = null == tmp40 || tmp40 <= 0; if (tmp4) { continue; } else { if (key10027.includes(":")) { let startsWithResult = null != guildId; if (startsWithResult) { let _HermesInternal2 = HermesInternal; startsWithResult = key10027.startsWith("" + guildId + ":"); } if (!startsWithResult) { continue; } else { let _HermesInternal3 = HermesInternal; let arr = items1.push("" + key10027.split(":")[1] + ":" + tmp40); continue; } continue; } else { let _HermesInternal = HermesInternal; let arr2 = items.push("" + key10027 + ":" + tmp40); continue; } continue; } continue; } let registeredExperiments = ApexExperimentStore.getRegisteredExperiments(); const tmp9 = getHashToName(); const evaluatedExperiments = ApexExperimentStore.getState().evaluatedExperiments; const items4 = ["user", "installation"]; for (const item10060 of items4) { let tmp10 = item10060; let tmp11; if (evaluatedExperiments != null) { tmp11 = evaluatedExperiments[tmp10]; } for (const key10068 in tmp11) { let tmp43 = evaluatedExperiments[tmp10]; let obj; if (tmp43 != null) { obj = tmp43[tmp41]; } if (obj == null) { obj = {}; } let assignments = obj.assignments; let tmp15 = assignments; let keys = Object.keys(); if (keys === undefined) { continue; } else { let tmp18 = keys[tmp43]; while (tmp18 !== undefined) { let tmp46 = tmp9[tmp18]; let tmp47 = tmp46; if (null == tmp46) { continue; } else { let variantId = tmp15[tmp45].variantId; let tmp21 = variantId; if (null == variantId) { continue; } else { let _HermesInternal4 = HermesInternal; let combined = "" + tmp47 + ":" + tmp21; let arr6 = items3; if (isLikelyControl(registeredExperiments[tmp47], tmp21)) { arr6 = items2; } let arr3 = arr6.push(combined); continue; } continue; } continue; } } continue; } continue; } const items5 = []; const items6 = []; if (null != guildId) { let tmp28 = evaluatedExperiments == null; let tmp29; if (!tmp28) { const guild = evaluatedExperiments.guild; tmp28 = guild == null; if (!tmp28) { tmp29 = guild[guildId]; } } if (null != tmp29) { for (const key10101 in tmp29.assignments) { let tmp49 = tmp9[key10101]; if (null == tmp49) { continue; } else { let variantId2 = tmp29.assignments[key10101].variantId; if (null == variantId2) { continue; } else { let _HermesInternal5 = HermesInternal; let combined1 = "" + tmp49 + ":" + variantId2; let arr9 = items6; if (isLikelyControl(registeredExperiments[tmp49], variantId2)) { arr9 = items5; } let arr4 = arr9.push(combined1); continue; } continue; } continue; } } } flushFlags(items); flushFlags(items1, set); flushFlags(items2); flushFlags(items5, set); flushFlags(items3); flushFlags(items6, set); } const set = new Set(); class SentryExperimentFeatureFlagManager extends AutomaticLifecycleManager { constructor() { const applyArgumentsResult = HermesBuiltin.applyArguments(this, new.target); map = new Map(); const result = map.set(ExperimentStore, syncAllExperimentFlags); const result1 = result.set(ApexExperimentStore, syncAllExperimentFlags); applyArgumentsResult.stores = result1.set(SelectedGuildStore, syncAllExperimentFlags); return applyArgumentsResult; } } const sentryExperimentFeatureFlagManager = new SentryExperimentFeatureFlagManager(); let result = size.fileFinishedImporting("modules/sentry/SentryExperimentFeatureFlagManager.tsx"); export default sentryExperimentFeatureFlagManager;