Files
discord-decomp/modules/guild_templates/GuildTemplateStore.tsx
T
2026-11-01 12:12:55 +02:00

168 lines
4.9 KiB
TypeScript

// Metro module 5715 (f5716).
import { GuildTemplateStates } from "./GuildTemplatesConstants";
import createResolvedGuildTemplate from "./createResolvedGuildTemplate";
import Module589 from "../../_bundle/Module589";
import Dispatcher from "../../Dispatcher";
let c3545_3, code;
const handleGuildTemplateResolveSuccess = function handleGuildTemplateResolveSuccess({ guildTemplate }) {
const code2 = guildTemplate.code;
if (code2 != null) {
const r8 = c3545_3.get(code2);
const r18 = r8 != null ? {
...r8
} : {
code: code2,
state: GuildTemplateStates.RESOLVING
};
const resolvedGuildTemplate = createResolvedGuildTemplate(guildTemplate);
for (const key in resolvedGuildTemplate) {
r18[key] = resolvedGuildTemplate[key];
}
const map = new Map(c3545_3);
c3545_3 = map;
map.set(code2, r18);
}
};
const handleGuildTemplateResolveFailure = function handleGuildTemplateResolveFailure({ code: code2 }) {
if (code2 != null) {
const r5 = c3545_3.get(code2);
const r13 = r5 != null ? {
...r5
} : {
code: code2,
state: GuildTemplateStates.RESOLVING
};
r13.state = GuildTemplateStates.EXPIRED;
const map = new Map(c3545_3);
c3545_3 = map;
map.set(code2, r13);
}
};
c3545_3 = new Map();
code = null;
class GuildTemplateStore extends Module589.Store {
static displayName = "GuildTemplateStore";
getGuildTemplate(a0) {
if (a0 != null) {
return c3545_3.get(a0);
}
}
getGuildTemplates() {
return c3545_3;
}
getForGuild(a0) {
for (const item of c3545_3.keys()) {
const r28 = c3545_3.get(item);
if (r28 == null) {
continue;
}
if (!("sourceGuildId" in r28)) {
continue;
}
if (r28.sourceGuildId !== a0) {
continue;
}
if (r28.state === GuildTemplateStates.EXPIRED) {
continue;
}
return r28;
}
}
getDisplayedGuildTemplateCode() {
return code;
}
}
const guildTemplateStore = new GuildTemplateStore(Dispatcher, {
GUILD_TEMPLATE_RESOLVE: function handleGuildTemplateResolve({ code: code2 }) {
const map = new Map(c3545_3);
c3545_3 = map;
map.set(code2, {
code: code2,
state: GuildTemplateStates.RESOLVING
});
},
GUILD_TEMPLATE_CREATE_SUCCESS: handleGuildTemplateResolveSuccess,
GUILD_TEMPLATE_SYNC_SUCCESS: handleGuildTemplateResolveSuccess,
GUILD_TEMPLATE_RESOLVE_SUCCESS: handleGuildTemplateResolveSuccess,
GUILD_TEMPLATE_LOAD_FOR_GUILD_SUCCESS: function handleGuildTemplateLoadForGuildSuccess(a0) {
a0.guildTemplates.forEach((guildTemplate) => {
const code2 = guildTemplate.code;
if (code2 != null) {
const r8 = c3545_3.get(code2);
const r17 = r8 != null ? {
...r8
} : {
code: code2,
state: GuildTemplateStates.RESOLVING
};
const resolvedGuildTemplate = createResolvedGuildTemplate(guildTemplate);
for (const key in resolvedGuildTemplate) {
r17[key] = resolvedGuildTemplate[key];
}
const map = new Map(c3545_3);
c3545_3 = map;
map.set(code2, r17);
}
});
},
GUILD_TEMPLATE_RESOLVE_FAILURE: handleGuildTemplateResolveFailure,
GUILD_TEMPLATE_DELETE_SUCCESS: handleGuildTemplateResolveFailure,
GUILD_TEMPLATE_ACCEPT: function handleGuildTemplateAccept({ code: code2 }) {
if (code2 != null) {
const r5 = c3545_3.get(code2);
const r13 = r5 != null ? {
...r5
} : {
code: code2,
state: GuildTemplateStates.RESOLVING
};
r13.state = GuildTemplateStates.ACCEPTING;
const map = new Map(c3545_3);
c3545_3 = map;
map.set(code2, r13);
}
},
GUILD_TEMPLATE_ACCEPT_SUCCESS: function handleGuildTemplateAcceptSuccess({ code: code2 }) {
if (code2 != null) {
const r6 = c3545_3.get(code2);
const r14 = r6 != null ? {
...r6
} : {
code: code2,
state: GuildTemplateStates.RESOLVING
};
r14.state = GuildTemplateStates.ACCEPTED;
let usageCount = r14.usageCount;
if (usageCount == null) {
usageCount = 0;
}
r14.usageCount = usageCount + 1;
const map = new Map(c3545_3);
c3545_3 = map;
map.set(code2, r14);
}
},
GUILD_TEMPLATE_ACCEPT_FAILURE: function handleAcceptInviteFailure({ code: code2 }) {
if (code2 != null) {
const r5 = c3545_3.get(code2);
const r13 = r5 != null ? {
...r5
} : {
code: code2,
state: GuildTemplateStates.RESOLVING
};
r13.state = GuildTemplateStates.RESOLVED;
const map = new Map(c3545_3);
c3545_3 = map;
map.set(code2, r13);
}
},
GUILD_TEMPLATE_MODAL_SHOW: function handleGuildTemplateModalShow(a0) {
code = a0.code;
},
GUILD_TEMPLATE_MODAL_HIDE: function handleGuildTemplateModalHide() {
code = null;
}
});
export default guildTemplateStore;