decord/source/modules/guild_onboarding/GuildOnboardingPromptsStore.tsx
github-actions ecf26fc058 chore: update source for alpha 347.2
Skipped 1 file(s) >100MB (GitHub limit): source/__polyfill/04xxx/module_4823.js (118.4 MB)
2026-09-16 07:03:15 +00:00

586 lines
18 KiB
TypeScript

// Module ID: 7210
// Function ID: 7211
// Name: GuildOnboardingPromptsStore
// Dependencies: [2015, 1958, 7206, 7211, 7212, 12, 504, 1091, 11, 573, 2]
// Module 7210 (GuildOnboardingPromptsStore)
import _modDef12 from "module_12" /* 12 */;
import initializeDefault from "initialize" /* 504 */;
import DispatcherDefault from "Dispatcher" /* 573 */;
import DurationsDefault from "Durations" /* 1091 */;
import DefaultChannelUtils from "DefaultChannelUtils" /* 7212 */;
import ImpersonateStore from "ImpersonateStore" /* 2015 */;
import ChannelStore from "ChannelStore" /* 1958 */;
import GuildOnboardingStore from "GuildOnboardingStore" /* 7206 */;
require = fn;
function handleUpdate(arg0) {
({ guildId, updates } = arg0);
let prop = updates.onboardingPromptsSeen;
if (prop == null) {
let prop1;
if (dependencyMap[guildId] != null) {
prop1 = tmp2.onboardingPromptsSeen;
}
prop = prop1;
}
if (prop == null) {
prop = {};
}
let prop2 = updates.onboardingResponsesSeen;
if (prop2 == null) {
let prop3;
if (dependencyMap[guildId] != null) {
prop3 = tmp5.onboardingResponsesSeen;
}
prop2 = prop3;
}
if (prop2 == null) {
prop2 = {};
}
let prompts = updates.prompts;
if (prompts == null) {
let prompts1;
if (dependencyMap[guildId] != null) {
prompts1 = tmp8.prompts;
}
prompts = prompts1;
}
if (prompts == null) {
prompts = [];
}
const obj = {};
const mapped = prompts.map((options) => {
const items = [];
let num = 0;
let flag = false;
let flag2 = false;
if (0 < options.options.length) {
do {
let tmp3 = options.options[num];
let tmp4 = null == tmp2[tmp3.id];
let flag3 = flag;
if (tmp4) {
flag3 = true;
}
let obj = {};
let merged = Object.assign(tmp3);
obj.isUnseen = tmp4;
let arr = items.push(obj);
num = num + 1;
flag = flag3;
flag2 = flag3;
} while (num < options.options.length);
}
obj2 = {};
const merged1 = Object.assign(options);
obj2.options = items;
obj2.hasNewAnswers = flag2;
obj2.isNew = null == prompts_seen[options.id];
return obj2;
});
const merged = Object.assign(dependencyMap[guildId]);
const merged1 = Object.assign(updates);
obj.prompts = mapped;
dependencyMap[guildId] = obj;
}
const GuildOnboardingStatus = fn(7206).GuildOnboardingStatus;
const GuildOnboardingMode = fn(7211).GuildOnboardingMode;
const dependencyMap = {};
const dependencyMap2 = {};
const dependencyMap3 = {};
let c11 = false;
let closure_12 = [];
let closure_13 = [];
let closure_14 = [];
let closure_15 = [];
const Store = initializeDefault.Store;
class GuildOnboardingPromptsStore extends Store {
}
const prototype = GuildOnboardingPromptsStore.prototype;
prototype["initialize"] = function initialize() {
this.waitFor(ChannelStore, GuildOnboardingStore, ImpersonateStore);
};
prototype["getOnboardingPromptsForOnboarding"] = function getOnboardingPromptsForOnboarding(guildId) {
let onboardingPrompts;
if (dependencyMap[guildId] != null) {
onboardingPrompts = tmp.onboardingPrompts;
}
if (onboardingPrompts == null) {
onboardingPrompts = closure_12;
}
return onboardingPrompts;
};
prototype["getOnboardingPrompts"] = function getOnboardingPrompts(guildId) {
let prompts;
if (dependencyMap[guildId] != null) {
prompts = tmp.prompts;
}
if (prompts == null) {
prompts = closure_12;
}
return prompts;
};
prototype["getOnboardingResponses"] = function getOnboardingResponses(id) {
if (ImpersonateStore.isFullServerPreview(id)) {
let onboardingResponses = ImpersonateStore.getOnboardingResponses(id);
if (onboardingResponses == null) {
onboardingResponses = closure_13;
}
let responses = Array.from(onboardingResponses);
} else {
responses = undefined;
if (dependencyMap[id] != null) {
responses = tmp2.responses;
}
if (responses == null) {
responses = closure_13;
}
}
return responses;
};
prototype["getSelectedOptions"] = function getSelectedOptions(guildId) {
const onboardingResponses = this.getOnboardingResponses(guildId);
const onboardingPrompts = this.getOnboardingPrompts(guildId);
const mapped = onboardingPrompts.map((options) => options.options);
return mapped.flat().filter((id) => closure_0.includes(id.id));
};
prototype["getOnboardingResponsesForPrompt"] = function getOnboardingResponsesForPrompt(guildId, id) {
closure_0 = id;
if (null == dependencyMap[guildId]) {
return closure_13;
} else {
const prompts = tmp.prompts;
const found = prompts.find((id) => id.id === closure_0);
if (null == found) {
let intersectionResult = closure_13;
} else {
const self = this;
const options = found.options;
const mapped = options.map((id) => id.id);
intersectionResult = _modDef12.intersection(mapped, this.getOnboardingResponses(guildId));
}
return intersectionResult;
}
};
prototype["getEnabledOnboardingPrompts"] = function getEnabledOnboardingPrompts(item) {
if (ImpersonateStore.isFullServerPreview(item)) {
let prompts1;
if (tmp != null) {
prompts1 = tmp.prompts;
}
if (prompts1 == null) {
prompts1 = closure_12;
}
let tmp2 = prompts1;
} else {
if (null != tmp) {
if (tmp.enabled) {
let prompts = tmp.prompts;
if (prompts == null) {
prompts = closure_12;
}
tmp2 = prompts;
}
}
tmp2 = closure_12;
}
return tmp2;
};
prototype["getDefaultChannelIds"] = function getDefaultChannelIds(id) {
let defaultChannelIds;
if (dependencyMap[id] != null) {
defaultChannelIds = tmp.defaultChannelIds;
}
if (defaultChannelIds == null) {
defaultChannelIds = closure_14;
}
return defaultChannelIds;
};
prototype["getEnabled"] = function getEnabled(id) {
if (ImpersonateStore.isFullServerPreview(id)) {
let flag = null != tmp;
} else {
flag = undefined;
if (tmp != null) {
flag = tmp.enabled;
}
if (flag == null) {
flag = false;
}
}
return flag;
};
prototype["getOnboardingPrompt"] = function getOnboardingPrompt(targetId13) {
closure_0 = targetId13;
const values = Object.values(closure_8);
const mapped = values.map((prompts) => prompts.prompts);
return mapped.flat().find((id) => id.id === closure_0);
};
prototype["isLoading"] = function isLoading() {
return c11;
};
prototype["shouldFetchPrompts"] = function shouldFetchPrompts(guildId) {
let HOUR = arg1;
if (arg1 === undefined) {
HOUR = DurationsDefault.Millis.HOUR;
}
if (c11) {
return false;
} else {
let tmp7 = null == tmp5;
if (!tmp7) {
const _Date = Date;
tmp7 = Date.now() - tmp5 > HOUR;
}
return tmp7;
}
};
prototype["getPendingResponseOptions"] = function getPendingResponseOptions(arg0) {
return dependencyMap2[arg0];
};
prototype["ackIdForGuild"] = function ackIdForGuild(item) {
const enabledOnboardingPrompts = this.getEnabledOnboardingPrompts(item);
let id = "0";
item = enabledOnboardingPrompts.forEach((options) => {
options = options.options;
const item = options.forEach((id) => {
if (obj.compare(id.id, id) > 0) {
id = id.id;
}
});
if (obj.compare(options.id, id) > 0) {
id = options.id;
}
});
return id;
};
prototype["lastFetchedAt"] = function lastFetchedAt(arg0) {
return dependencyMap3[arg0];
};
prototype["isAdvancedMode"] = function isAdvancedMode(guildId) {
let tmp = null != guildId;
if (tmp) {
let mode;
if (dependencyMap[guildId] != null) {
mode = tmp3.mode;
}
tmp = mode === GuildOnboardingMode.ONBOARDING_ADVANCED;
}
return tmp;
};
prototype["getConnections"] = function getConnections(guildId) {
let connections;
if (dependencyMap[guildId] != null) {
connections = tmp.connections;
}
if (connections == null) {
connections = closure_15;
}
return connections;
};
prototype["getOnboardingConnections"] = function getOnboardingConnections(guildId) {
if (null == dependencyMap[guildId]) {
return closure_15;
} else {
let prop = tmp.additionalConnections;
if (prop == null) {
prop = [];
}
if (0 === prop.length) {
let connections = tmp.connections;
if (connections == null) {
connections = closure_15;
}
let items = connections;
} else {
let connections1 = tmp.connections;
if (connections1 == null) {
connections1 = [];
}
items = [];
HermesBuiltin.arraySpread(prop, HermesBuiltin.arraySpread(connections1, 0));
}
return items;
}
};
GuildOnboardingPromptsStore.displayName = "GuildOnboardingPromptsStore";
const guildOnboardingPromptsStore = new GuildOnboardingPromptsStore(DispatcherDefault, {
CONNECTION_OPEN: function handleConnectionOpen() {
c11 = false;
closure_8 = {};
},
GUILD_DELETE: function handleGuildDelete(guild) {
guild = guild.guild;
delete tmp4[tmp3];
delete tmp4[tmp3];
delete tmp2[tmp];
},
GUILD_ONBOARDING_PROMPTS_FETCH_START: function handleStart() {
c11 = true;
},
GUILD_ONBOARDING_PROMPTS_FETCH_SUCCESS: function handleSuccess(guildId) {
guildId = guildId.guildId;
onboardingPromptsSeen = guildId;
({ prompts, defaultChannelIds, responses, onboardingPromptsSeen, onboardingResponsesSeen, connections, additionalConnections } = guildId);
c11 = false;
({ enabled, mode, belowRequirements } = guildId);
const tmp = GuildOnboardingStore.getOnboardingStatus(guildId) === GuildOnboardingStatus.READY;
const mapped = prompts.map((options) => {
const items = [];
let num = 0;
let flag = false;
let flag2 = false;
if (0 < options.options.length) {
do {
let tmp3 = options.options[num];
let tmp4 = null == tmp2[tmp3.id];
let flag3 = flag;
if (tmp4) {
flag3 = true;
}
let obj = {};
let merged = Object.assign(tmp3);
obj.isUnseen = tmp4;
let arr = items.push(obj);
num = num + 1;
flag = flag3;
flag2 = flag3;
} while (num < options.options.length);
}
obj2 = {};
const merged1 = Object.assign(options);
obj2.options = items;
obj2.hasNewAnswers = flag2;
obj2.isNew = null == prompts_seen[options.id];
return obj2;
});
const obj = { enabled, mode, belowRequirements, prompts: mapped, onboardingPrompts: mapped.filter((inOnboarding) => inOnboarding.inOnboarding), defaultChannelIds: defaultChannelIds.filter((item) => DefaultChannelUtils.canChannelBeDefault(onboardingPromptsSeen, item)), responses: null, onboardingPromptsSeen: null, onboardingResponsesSeen: null, connections: null, additionalConnections: null };
let items = responses;
if (tmp) {
items = [];
}
obj.responses = items;
obj.onboardingPromptsSeen = onboardingPromptsSeen;
obj.onboardingResponsesSeen = onboardingResponsesSeen;
if (connections == null) {
connections = [];
}
obj.connections = connections;
if (additionalConnections == null) {
additionalConnections = [];
}
obj.additionalConnections = additionalConnections;
dependencyMap[guildId] = obj;
if (!tmp) {
closure_129_0 = guildId;
closure_129_1 = responses;
if (null != dependencyMap2[guildId]) {
const obj2 = {};
closure_129_2 = obj2;
const _Object = Object;
const keys = Object.keys(tmp3[guildId]);
const item = keys.forEach((item) => {
if (!options_seen.includes(item)) {
if (dependencyMap[prompts_seen][item]) {
obj2[item] = true;
}
}
let hasItem = options_seen.includes(item);
if (hasItem) {
hasItem = false === dependencyMap[prompts_seen][item];
}
if (hasItem) {
obj2[item] = false;
}
});
tmp3[guildId] = obj2;
const found = responses.filter((item) => {
let tmp = null == obj2[item];
if (!tmp) {
tmp = true === obj2[item];
}
return tmp;
});
closure_129_3 = found;
const _Object2 = Object;
const keys1 = Object.keys(obj2);
const item1 = keys1.forEach((item) => {
let hasItem = true !== obj2[item];
if (!hasItem) {
hasItem = options_seen.includes(item);
}
if (!hasItem) {
found.push(item);
}
});
const obj3 = {};
const merged = Object.assign(dependencyMap[guildId]);
obj3.responses = found;
dependencyMap[guildId] = obj3;
}
}
closure_10[guildId] = Date.now();
},
GUILD_ONBOARDING_PROMPTS_FETCH_FAILURE: function handleFailure() {
c11 = false;
},
GUILD_ONBOARDING_SELECT_OPTION: function handleOptionSelect(guildId) {
guildId = guildId.guildId;
({ optionId, selected, removedOptionIds } = guildId);
let isFullServerPreviewResult = ImpersonateStore.isFullServerPreview(guildId);
if (!isFullServerPreviewResult) {
let flag = null != dependencyMap[guildId];
if (flag) {
let tmp4 = null != removedOptionIds;
if (tmp4) {
tmp4 = removedOptionIds.length > 0;
}
if (tmp4) {
_modDef12.pullAll(dependencyMap[guildId].responses, removedOptionIds);
}
if (selected) {
const responses = dependencyMap[guildId].responses;
responses.push(optionId);
} else {
_modDef12.pull(dependencyMap[guildId].responses, optionId);
}
if (null == dependencyMap2[guildId]) {
tmp15[guildId] = {};
}
dependencyMap2[guildId][optionId] = selected;
if (null != removedOptionIds) {
const item = removedOptionIds.forEach((item) => {
closure_9[guildId][item] = false;
return false;
});
}
const obj3 = {};
const merged = Object.assign(tmp15[guildId]);
dependencyMap2[guildId] = obj3;
flag = true;
}
isFullServerPreviewResult = flag;
}
return isFullServerPreviewResult;
},
GUILD_ONBOARDING_UPDATE_RESPONSES_SUCCESS: function handleUpdateResponsesSuccess(arg0) {
({ guildId, options, prompts_seen, options_seen } = arg0);
prompts_seen = guildId;
options_seen = options;
let obj2;
let found;
if (null != dependencyMap2[guildId]) {
obj2 = {};
const _Object = Object;
const keys = Object.keys(tmp[guildId]);
const item = keys.forEach((item) => {
if (!options_seen.includes(item)) {
if (dependencyMap[prompts_seen][item]) {
obj2[item] = true;
}
}
let hasItem = options_seen.includes(item);
if (hasItem) {
hasItem = false === dependencyMap[prompts_seen][item];
}
if (hasItem) {
obj2[item] = false;
}
});
tmp[guildId] = obj2;
found = options.filter((item) => {
let tmp = null == obj2[item];
if (!tmp) {
tmp = true === obj2[item];
}
return tmp;
});
const _Object2 = Object;
const keys1 = Object.keys(obj2);
const item1 = keys1.forEach((item) => {
let hasItem = true !== obj2[item];
if (!hasItem) {
hasItem = options_seen.includes(item);
}
if (!hasItem) {
found.push(item);
}
});
const obj3 = {};
let merged = Object.assign(dependencyMap[guildId]);
obj3.responses = found;
dependencyMap[guildId] = obj3;
}
if (null == dependencyMap[guildId]) {
return false;
} else {
const prompts = tmp2.prompts;
const mapped = prompts.map((options) => {
const items = [];
let num = 0;
let flag = false;
let flag2 = false;
if (0 < options.options.length) {
do {
let tmp3 = options.options[num];
let tmp4 = null == tmp2[tmp3.id];
let flag3 = flag;
if (tmp4) {
flag3 = true;
}
let obj = {};
let merged = Object.assign(tmp3);
obj.isUnseen = tmp4;
let arr = items.push(obj);
num = num + 1;
flag = flag3;
flag2 = flag3;
} while (num < options.options.length);
}
obj2 = {};
const merged1 = Object.assign(options);
obj2.options = items;
obj2.hasNewAnswers = flag2;
obj2.isNew = null == prompts_seen[options.id];
return obj2;
});
let obj = {};
let merged1 = Object.assign(tmp2);
obj.prompts = mapped;
obj.onboardingPrompts = mapped.filter((inOnboarding) => inOnboarding.inOnboarding);
obj.onboardingPromptsSeen = prompts_seen;
obj.onboardingResponsesSeen = options_seen;
dependencyMap[guildId] = obj;
}
},
GUILD_ONBOARDING_PROMPTS_LOCAL_UPDATE: handleUpdate,
GUILD_SETTINGS_ONBOARDING_PROMPTS_SAVE_SUCCESS: handleUpdate,
GUILD_SETTINGS_DEFAULT_CHANNELS_SAVE_SUCCESS: function handleUpdateDefaultChannels(guildId) {
guildId = guildId.guildId;
const obj = {};
const merged = Object.assign(dependencyMap[guildId]);
obj.defaultChannelIds = guildId.channelIds;
dependencyMap[guildId] = obj;
},
GUILD_SETTINGS_ONBOARDING_CONNECTIONS_SAVE_SUCCESS: function handleUpdateConnections(guildId) {
guildId = guildId.guildId;
if (null == dependencyMap[guildId]) {
return false;
} else {
const obj = {};
const merged = Object.assign(dependencyMap[guildId]);
obj.connections = tmp;
dependencyMap[guildId] = obj;
}
},
GUILD_SETTINGS_ONBOARDING_SET_MODE: function handleSetMode(mode) {
if (null != dependencyMap[mode.guildId]) {
tmp.mode = mode.mode;
}
}
});
const size = fn(2);
const result = size.fileFinishedImporting("modules/guild_onboarding/GuildOnboardingPromptsStore.tsx");
export default guildOnboardingPromptsStore;