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

87 lines
2.6 KiB
TypeScript

// Metro module 8336 (f8337).
import { useState } from "react";
import { preStartEventActions, setEventAsActive } from "./StartEventUtils";
import { navigateToEvent, postStartActions } from "./StartEventPlatformUtils.native";
import { APIError } from "../../errors/index";
let c5319_6 = {
onSuccess: () => {},
permissionOverwrites: []
};
export default function useStartEvent() {
let _startEvent2 = function _startEvent() {
const r9 = async function(c29943_0, c29943_1, c29943_2) {
let c29943_5;
let c29943_6 = 0;
let c31465_2, c31465_3, c31465_0, c31465_1, c31465_4, c31465_5;
L24: {
try {
c31465_2 = void 0;
c31465_3 = void 0;
c31465_0 = c29943_0;
c31465_1 = c29943_1;
let r42 = c29943_2;
if (r42 === void 0) {
r42 = c5319_6;
}
let onSuccess2 = r42.onSuccess;
if (onSuccess2 === void 0) {
onSuccess2 = c5319_6.onSuccess;
}
c31465_2 = onSuccess2;
let permissionOverwrites = r42.permissionOverwrites;
if (permissionOverwrites === void 0) {
permissionOverwrites = c5319_6.permissionOverwrites;
}
c31465_3 = permissionOverwrites;
c31465_4 = void 0;
await void 0;
(0, setState)(true);
c29943_6 = 1;
await preStartEventActions(c31465_0, c31465_3);
await setEventAsActive(c31465_0, c31465_1);
await navigateToEvent(c31465_0, c31465_2);
await postStartActions(c31465_0, c31465_2);
(0, setState)(false);
c29943_6 = 0;
(0, setState)(false);
} catch ($e) {
const r38 = $e;
let r7 = r38;
c29943_5 = r38;
if (c29943_6 !== 0) {
while (true) {
try {
const r209 = c29943_5;
c29943_6 = 0;
c31465_5 = r209;
c31465_4 = new APIError(c31465_5);
(0, setState2)(c31465_4);
(0, setState)(false);
(0, setState)(false);
break L24;
} catch (r205) {
r7 = r205;
c29943_5 = r205;
if (c29943_6 === 0) {
break;
}
}
}
}
throw r7;
}
}
};
_startEvent2 = r9;
return r9.apply(this, arguments);
};
const [loading, setState] = useState(false);
const [error, setState2] = useState(null);
return [function startEvent(a0, a1) {
return _startEvent2.apply(this, arguments);
}, {
loading,
error
}];
};