// Module ID: 1212 // Function ID: 1213 // Name: initialize // Dependencies: [32, 1213, 1218, 676, 709, 698, 4294, 2] // Module 1212 (initialize) import expandEventPropertiesDefault from "expandEventProperties" /* 698 */; import dispatcherDefault from "dispatcher" /* 709 */; import _toPropertyKeyDefault from "_toPropertyKey" /* 1213 */; import Version from "Version" /* 4294 */; import closure_3 from "_slicedToArray" /* 32 */; import closure_4 from "fetchFingerprint" /* 1218 */; import { AnalyticEvents } from "ME" /* 676 */; require = arg1; _toPropertyKeyDefault; class ApexExperimentStore extends tmp2 { constructor() { closure_0 = undefined; tmp2 = require("dispatcher"); obj = { CONNECTION_OPEN(arg0) { return obj.handleConnectionOpen(arg0); }, CONNECTION_OPEN_STATE_UPDATE(apexExperiments) { return obj.setExperimentAssignments(apexExperiments.apexExperiments); }, GUILD_CREATE(arg0) { return obj.handleGuildCreate(arg0); }, APEX_EXPERIMENT_OVERRIDE_CREATE(arg0) { return obj.createOverride(tmp.experimentName, tmp.variantId); }, APEX_EXPERIMENT_OVERRIDE_DELETE(experimentName) { return obj.deleteOverride(experimentName.experimentName); }, APEX_EXPERIMENT_OVERRIDE_CLEAR() { return obj.clearAllOverrides(); }, APEX_EXPERIMENT_SESSION_OVERRIDE_CREATE(arg0) { return obj.createSessionOverride(tmp.experimentName, tmp.variantId); }, APEX_EXPERIMENT_SESSION_OVERRIDE_DELETE(experimentName) { return obj.deleteSessionOverride(experimentName.experimentName); }, APEX_EXPERIMENT_CLEAR_FOR_TESTS() { return obj.clearForTests(); }, APEX_EXPERIMENTS_METADATA_FETCH_SUCCESS(experiments) { return obj.setExperimentsMetadata(experiments.experiments); }, APEX_EXPERIMENTS_FETCH_START(unitId) { return obj.handleFetchStart(unitId.unitId); }, APEX_EXPERIMENTS_FETCH_SUCCESS(arg0) { return obj.handleFetchSuccess(tmp.unitId, tmp.experiments); }, APEX_EXPERIMENTS_FETCH_FAILURE(unitId) { return obj.handleFetchFailure(unitId.unitId); }, LOGOUT(isSwitchingAccount) { return obj.handleLogout(isSwitchingAccount.isSwitchingAccount); } }; tmp = new tmp(tmp2, obj, require("dispatcher").DispatchBand.Early, new.target, tmp, tmp2, obj, new.target); // ThrowIfThisInitialized (0x7c) closure_0 = tmp; tmp.track = () => { const items = [...arguments]; const items1 = [...items]; return callback(table[5]).track.apply(items1); }; tmp.surface = "discord_app"; addChangeListenerResult = tmp.addChangeListener(() => obj.maybeEmitDebugExperimentEvent()); return tmp; } } const prototype = ApexExperimentStore.prototype; prototype["initialize"] = function initialize(version) { this.waitFor(closure_4); const storedState = this.loadStoredState(version, Version.getBuildOverrideExperiments()); }; prototype["maybeEmitDebugExperimentEvent"] = function maybeEmitDebugExperimentEvent() { const self = this; const tmp = callback(this.getEvaluationAndAssignment("user", id.getId(), "2026-03-debug-experiment"), 2)[1]; let variantId; if (tmp != null) { variantId = tmp.variantId; } if (null != variantId) { if (0 !== variantId) { if (variantId !== self.lastEmittedDebugVariantId) { self.lastEmittedDebugVariantId = variantId; let obj = expandEventPropertiesDefault; obj = { experiment: "2026-03-debug-experiment", apex_debug_variant: null, experiment_location: "apex_assignments_received" }; obj[1] = variantId; obj.track(AnalyticEvents.EXPERIMENT_APEX_DEBUGGING_EVENT, obj); } } } self.lastEmittedDebugVariantId = undefined; }; prototype["handleConnectionOpen"] = function handleConnectionOpen(guilds) { guilds = guilds.guilds; return this.setExperimentAssignments(guilds.apexExperiments, guilds.reduce((arg0, experiments) => { if (null != experiments.experiments) { arg0[experiments.id] = experiments.experiments; } return arg0; }, {})); }; prototype["handleGuildCreate"] = function handleGuildCreate(guild) { const experiments = guild.guild.experiments; if (null == experiments) { return true; } else { const self = this; const obj = {}; obj[guild.guild.id] = experiments; return this.setGuildExperimentAssignments(obj); } }; const apexExperimentStore = new ApexExperimentStore(); const result = require("set").fileFinishedImporting("modules/experiments/apex/ApexExperimentStore.tsx"); export default apexExperimentStore; export const ExperimentAssignment = require("_toPropertyKey").ExperimentAssignment;