@epic-web/workshop-app 5.3.7 → 5.3.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/client/assets/{_exerciseNumber-BnwWTYFw.js → _exerciseNumber-DvMYZgqk.js} +2 -2
- package/build/client/assets/{_exerciseNumber-BnwWTYFw.js.map → _exerciseNumber-DvMYZgqk.js.map} +1 -1
- package/build/client/assets/{_exerciseNumber_.finished-BfeMSie-.js → _exerciseNumber_.finished-DYN2QHN6.js} +2 -2
- package/build/client/assets/{_exerciseNumber_.finished-BfeMSie-.js.map → _exerciseNumber_.finished-DYN2QHN6.js.map} +1 -1
- package/build/client/assets/{_layout-Bpho30KN.js → _layout-BH5PQW0M.js} +2 -2
- package/build/client/assets/{_layout-Bpho30KN.js.map → _layout-BH5PQW0M.js.map} +1 -1
- package/build/client/assets/{_layout-pUNfVRe2.js → _layout-BK7mLImi.js} +2 -2
- package/build/client/assets/{_layout-pUNfVRe2.js.map → _layout-BK7mLImi.js.map} +1 -1
- package/build/client/assets/account-B5baO5pg.js +2 -0
- package/build/client/assets/account-B5baO5pg.js.map +1 -0
- package/build/client/assets/{diff-CyIaJAoJ.js → diff-C2Hm_DHX.js} +2 -2
- package/build/client/assets/{diff-CyIaJAoJ.js.map → diff-C2Hm_DHX.js.map} +1 -1
- package/build/client/assets/{diff-Cnw7IcG5.js → diff-CbIF8Oq1.js} +2 -2
- package/build/client/assets/{diff-Cnw7IcG5.js.map → diff-CbIF8Oq1.js.map} +1 -1
- package/build/client/assets/discord-BnQDHWJj.js +2 -0
- package/build/client/assets/discord-BnQDHWJj.js.map +1 -0
- package/build/client/assets/discord-DcHxc30v.js +2 -0
- package/build/client/assets/discord-DcHxc30v.js.map +1 -0
- package/build/client/assets/{epic-video-1XLXSFCL.js → epic-video-Bxtz3elt.js} +2 -2
- package/build/client/assets/{epic-video-1XLXSFCL.js.map → epic-video-Bxtz3elt.js.map} +1 -1
- package/build/client/assets/{finished-DjF_kSoF.js → finished--PGQDzya.js} +2 -2
- package/build/client/assets/{finished-DjF_kSoF.js.map → finished--PGQDzya.js.map} +1 -1
- package/build/client/assets/index-C2MH9l6b.js +2 -0
- package/build/client/assets/index-C2MH9l6b.js.map +1 -0
- package/build/client/assets/{index-f5Q6XZEy.js → index-oZkQrXic.js} +2 -2
- package/build/client/assets/{index-f5Q6XZEy.js.map → index-oZkQrXic.js.map} +1 -1
- package/build/client/assets/manifest-7f4f8707.js +1 -0
- package/build/client/assets/{mdx-DiFCTSLR.js → mdx-DIAWAXtT.js} +2 -2
- package/build/client/assets/{mdx-DiFCTSLR.js.map → mdx-DIAWAXtT.js.map} +1 -1
- package/build/client/assets/{onboarding-DXICEaMi.js → onboarding-BAVmCIKn.js} +2 -2
- package/build/client/assets/{onboarding-DXICEaMi.js.map → onboarding-BAVmCIKn.js.map} +1 -1
- package/build/client/assets/root-DCfiv1cO.js.map +1 -1
- package/build/client/assets/{test-CvzcNTDp.js → test-3x2HHA0t.js} +2 -2
- package/build/client/assets/{test-CvzcNTDp.js.map → test-3x2HHA0t.js.map} +1 -1
- package/build/client/assets/{tests-Bp85P9FF.js → tests-GmyhBOwD.js} +2 -2
- package/build/client/assets/{tests-Bp85P9FF.js.map → tests-GmyhBOwD.js.map} +1 -1
- package/build/client/assets/user-CFunCRfr.js +2 -0
- package/build/client/assets/user-CFunCRfr.js.map +1 -0
- package/build/server/index.js +117 -208
- package/build/server/index.js.map +1 -1
- package/package.json +3 -3
- package/build/client/assets/account-RJjysGnp.js +0 -2
- package/build/client/assets/account-RJjysGnp.js.map +0 -1
- package/build/client/assets/discord-DxisvcaU.js +0 -2
- package/build/client/assets/discord-DxisvcaU.js.map +0 -1
- package/build/client/assets/discord-lXkS53K3.js +0 -2
- package/build/client/assets/discord-lXkS53K3.js.map +0 -1
- package/build/client/assets/discord.callback-l0sNRNKZ.js +0 -2
- package/build/client/assets/discord.callback-l0sNRNKZ.js.map +0 -1
- package/build/client/assets/index-DZ0It6pH.js +0 -2
- package/build/client/assets/index-DZ0It6pH.js.map +0 -1
- package/build/client/assets/manifest-9328c766.js +0 -1
- package/build/client/assets/user-DJiL1Lk-.js +0 -2
- package/build/client/assets/user-DJiL1Lk-.js.map +0 -1
package/build/server/index.js
CHANGED
|
@@ -6,7 +6,7 @@ import { isbot } from "isbot";
|
|
|
6
6
|
import { renderToPipeableStream, renderToStaticMarkup } from "react-dom/server";
|
|
7
7
|
import path from "node:path";
|
|
8
8
|
import { makeSingletonCache, cachified, fsCache, deleteCache, compiledCodeCache, diffFilesCache, diffCodeCache, shouldForceFresh, getAllFileCacheEntries, ogCache } from "@epic-web/workshop-utils/cache.server";
|
|
9
|
-
import { getPreferences, getAuthInfo, readOnboardingData,
|
|
9
|
+
import { getPreferences, getAuthInfo, readOnboardingData, requireAuthInfo, deleteDb, setPresencePreferences, PlayerPreferencesSchema, setPlayerPreferences, setAuthInfo, markOnboardingVideoWatched } from "@epic-web/workshop-utils/db.server";
|
|
10
10
|
import { z } from "zod";
|
|
11
11
|
import { getWorkshopInstructions, getWorkshopFinished, getExercises, getApps, getPlaygroundAppName, extractNumbersAndTypeFromAppNameOrPath, getAppFromFile, getAppByName, isProblemApp, isPlaygroundApp, isExerciseStepApp, getExercise, isSolutionApp, isExampleApp, getRelativePath as getRelativePath$1, workshopRoot, modifiedTimes, getForceFreshForDir, setPlayground, requireExerciseApp, requireExercise, getExerciseApp, getAppDisplayName, getNextExerciseApp, getPrevExerciseApp, getAppPageRoute } from "@epic-web/workshop-utils/apps.server";
|
|
12
12
|
import { getWorkshopConfig } from "@epic-web/workshop-utils/config.server";
|
|
@@ -557,10 +557,10 @@ function getDomainUrl(request) {
|
|
|
557
557
|
function getBaseUrl({
|
|
558
558
|
request,
|
|
559
559
|
domain = request ? getDomainUrl(request) : window.location.origin,
|
|
560
|
-
port
|
|
560
|
+
port
|
|
561
561
|
}) {
|
|
562
562
|
const url = new URL(domain);
|
|
563
|
-
url.port = String(
|
|
563
|
+
url.port = String(port);
|
|
564
564
|
return url.toString();
|
|
565
565
|
}
|
|
566
566
|
function combineHeaders(...headers2) {
|
|
@@ -877,7 +877,7 @@ function useTheme() {
|
|
|
877
877
|
}
|
|
878
878
|
return requestInfo.session.theme ?? hints.theme;
|
|
879
879
|
}
|
|
880
|
-
const
|
|
880
|
+
const route42 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
881
881
|
__proto__: null,
|
|
882
882
|
ThemeSwitch,
|
|
883
883
|
action: action$b,
|
|
@@ -1620,7 +1620,7 @@ const meta$5 = ({ data: data2 }) => {
|
|
|
1620
1620
|
requestInfo: data2.requestInfo
|
|
1621
1621
|
});
|
|
1622
1622
|
};
|
|
1623
|
-
async function loader$
|
|
1623
|
+
async function loader$w({ request }) {
|
|
1624
1624
|
const timings = makeTimings("rootLoader");
|
|
1625
1625
|
const workshopConfig = getWorkshopConfig();
|
|
1626
1626
|
const {
|
|
@@ -1645,7 +1645,6 @@ async function loader$y({ request }) {
|
|
|
1645
1645
|
const emptyProgress = [];
|
|
1646
1646
|
return emptyProgress;
|
|
1647
1647
|
}),
|
|
1648
|
-
discordMember: getDiscordMember(),
|
|
1649
1648
|
user: getUserInfo(),
|
|
1650
1649
|
userHasAccess: userHasAccessToWorkshop({ request, timings }),
|
|
1651
1650
|
apps: getApps({ request, timings })
|
|
@@ -1767,10 +1766,10 @@ const route0 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProper
|
|
|
1767
1766
|
default: AppWithProviders,
|
|
1768
1767
|
headers: headers$b,
|
|
1769
1768
|
links,
|
|
1770
|
-
loader: loader$
|
|
1769
|
+
loader: loader$w,
|
|
1771
1770
|
meta: meta$5
|
|
1772
1771
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
1773
|
-
async function loader$
|
|
1772
|
+
async function loader$v({ params }) {
|
|
1774
1773
|
const splat = params["*"];
|
|
1775
1774
|
const segments = (splat == null ? void 0 : splat.split("/")) ?? [];
|
|
1776
1775
|
if (segments.length > 0 && !isNaN(Number(segments[0]))) {
|
|
@@ -1808,7 +1807,7 @@ const route1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProper
|
|
|
1808
1807
|
__proto__: null,
|
|
1809
1808
|
ErrorBoundary: ErrorBoundary$5,
|
|
1810
1809
|
default: NotFound,
|
|
1811
|
-
loader: loader$
|
|
1810
|
+
loader: loader$v
|
|
1812
1811
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
1813
1812
|
function makeMediaQueryStore(mediaQuery, serverSnapshot) {
|
|
1814
1813
|
function getSnapshot() {
|
|
@@ -1917,8 +1916,8 @@ function useRevalidationWSImpl({ watchPaths }) {
|
|
|
1917
1916
|
const socketQuery = socketParams.toString();
|
|
1918
1917
|
const protocol = requestInfo.protocol === "https:" ? "wss:" : "ws:";
|
|
1919
1918
|
const host = requestInfo.hostname;
|
|
1920
|
-
const
|
|
1921
|
-
const socketPath = `${protocol}//${host}:${
|
|
1919
|
+
const port = requestInfo.port;
|
|
1920
|
+
const socketPath = `${protocol}//${host}:${port}/__ws?${socketQuery}`;
|
|
1922
1921
|
useEffect(() => {
|
|
1923
1922
|
if (!socketQuery) return;
|
|
1924
1923
|
let ws = null;
|
|
@@ -2052,11 +2051,11 @@ function useUser() {
|
|
|
2052
2051
|
function useOptionalDiscordMember() {
|
|
2053
2052
|
var _a;
|
|
2054
2053
|
const data = useRouteLoaderData("root");
|
|
2055
|
-
return (
|
|
2054
|
+
return ((_a = data == null ? void 0 : data.user) == null ? void 0 : _a.discordProfile) ? {
|
|
2056
2055
|
id: data.user.discordProfile.user.id,
|
|
2057
2056
|
displayName: data.user.discordProfile.nick ?? data.user.discordProfile.user.global_name,
|
|
2058
2057
|
avatarUrl: data.user.imageUrlLarge
|
|
2059
|
-
} : null
|
|
2058
|
+
} : null;
|
|
2060
2059
|
}
|
|
2061
2060
|
function useUserHasAccess() {
|
|
2062
2061
|
const data = useRouteLoaderData("root");
|
|
@@ -2347,7 +2346,7 @@ function ProgressToggle({
|
|
|
2347
2346
|
)
|
|
2348
2347
|
] });
|
|
2349
2348
|
}
|
|
2350
|
-
const
|
|
2349
|
+
const route36 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
2351
2350
|
__proto__: null,
|
|
2352
2351
|
ProgressToggle,
|
|
2353
2352
|
action: action$a,
|
|
@@ -2358,7 +2357,7 @@ const route37 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePrope
|
|
|
2358
2357
|
useProgressItemClassName,
|
|
2359
2358
|
useRequireEpicProgress
|
|
2360
2359
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
2361
|
-
async function loader$
|
|
2360
|
+
async function loader$u({ request }) {
|
|
2362
2361
|
var _a;
|
|
2363
2362
|
const timings = makeTimings("appLayoutLoader");
|
|
2364
2363
|
const { title: workshopTitle } = getWorkshopConfig();
|
|
@@ -3448,7 +3447,7 @@ const route2 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProper
|
|
|
3448
3447
|
__proto__: null,
|
|
3449
3448
|
default: App,
|
|
3450
3449
|
headers: headers$a,
|
|
3451
|
-
loader: loader$
|
|
3450
|
+
loader: loader$u
|
|
3452
3451
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
3453
3452
|
function PendingState() {
|
|
3454
3453
|
return /* @__PURE__ */ jsx("span", { className: "inline-block animate-spin", children: "🌀" });
|
|
@@ -3514,106 +3513,19 @@ function ButtonLink({
|
|
|
3514
3513
|
}
|
|
3515
3514
|
) });
|
|
3516
3515
|
}
|
|
3517
|
-
const port = process.env.PORT || "5639";
|
|
3518
|
-
const scope = "guilds.join identify messages.read";
|
|
3519
|
-
const DiscordApiResponseSchema = z.object({
|
|
3520
|
-
status: z.literal("error"),
|
|
3521
|
-
error: z.string()
|
|
3522
|
-
}).or(
|
|
3523
|
-
z.object({
|
|
3524
|
-
status: z.literal("success"),
|
|
3525
|
-
member: DiscordMemberSchema
|
|
3526
|
-
})
|
|
3527
|
-
);
|
|
3528
|
-
function getDiscordAuthURL() {
|
|
3529
|
-
const discordAuthUrl = new URL("https://discord.com/oauth2/authorize");
|
|
3530
|
-
discordAuthUrl.searchParams.append("client_id", "738096608440483870");
|
|
3531
|
-
discordAuthUrl.searchParams.append(
|
|
3532
|
-
"redirect_uri",
|
|
3533
|
-
`http://localhost:${port}/discord/callback`
|
|
3534
|
-
);
|
|
3535
|
-
discordAuthUrl.searchParams.append("response_type", "code");
|
|
3536
|
-
discordAuthUrl.searchParams.append("scope", scope);
|
|
3537
|
-
return discordAuthUrl.toString();
|
|
3538
|
-
}
|
|
3539
|
-
async function loader$v({ request }) {
|
|
3540
|
-
const authInfo = await requireAuthInfo({ request });
|
|
3541
|
-
const discordCode = new URL(request.url).searchParams.get("code");
|
|
3542
|
-
invariantResponse(discordCode, "Missing code");
|
|
3543
|
-
const result = await fetch(
|
|
3544
|
-
// 'http://localhost:3000/resources/connect-epic-web',
|
|
3545
|
-
"https://kcd-discord-bot-v2.fly.dev/resources/connect-epic-web",
|
|
3546
|
-
{
|
|
3547
|
-
method: "POST",
|
|
3548
|
-
headers: { "content-type": "application/json" },
|
|
3549
|
-
body: JSON.stringify({
|
|
3550
|
-
deviceToken: authInfo.tokenSet.access_token,
|
|
3551
|
-
discordCode,
|
|
3552
|
-
port,
|
|
3553
|
-
scope
|
|
3554
|
-
})
|
|
3555
|
-
}
|
|
3556
|
-
);
|
|
3557
|
-
if (!result.ok) {
|
|
3558
|
-
console.error(`There was an error connecting Discord`);
|
|
3559
|
-
try {
|
|
3560
|
-
console.error(await result.text());
|
|
3561
|
-
} catch {
|
|
3562
|
-
}
|
|
3563
|
-
return redirectWithToast("/account", {
|
|
3564
|
-
type: "error",
|
|
3565
|
-
title: "Error",
|
|
3566
|
-
description: `There was an error connecting your Discord account (details in terminal output). Please try again.`
|
|
3567
|
-
});
|
|
3568
|
-
}
|
|
3569
|
-
const parseResult = DiscordApiResponseSchema.safeParse(await result.json());
|
|
3570
|
-
if (!parseResult.success) {
|
|
3571
|
-
console.error(`There was an error connecting Discord`);
|
|
3572
|
-
console.error(parseResult.error);
|
|
3573
|
-
return redirectWithToast("/account", {
|
|
3574
|
-
type: "error",
|
|
3575
|
-
title: "Error",
|
|
3576
|
-
description: `There was an error connecting your Discord account (details in terminal output). Please try again.`
|
|
3577
|
-
});
|
|
3578
|
-
}
|
|
3579
|
-
if (parseResult.data.status === "error") {
|
|
3580
|
-
console.error(`There was an error connecting Discord`);
|
|
3581
|
-
console.error(parseResult.data.error);
|
|
3582
|
-
return redirect$1("/account?error");
|
|
3583
|
-
}
|
|
3584
|
-
const member = parseResult.data.member;
|
|
3585
|
-
await setDiscordMember(member);
|
|
3586
|
-
return redirectWithToast("/account", {
|
|
3587
|
-
type: "success",
|
|
3588
|
-
title: "Success",
|
|
3589
|
-
description: `Your Discord account "${member.displayName}" has been connected!`
|
|
3590
|
-
});
|
|
3591
|
-
}
|
|
3592
|
-
const route30 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
3593
|
-
__proto__: null,
|
|
3594
|
-
getDiscordAuthURL,
|
|
3595
|
-
loader: loader$v
|
|
3596
|
-
}, Symbol.toStringTag, { value: "Module" }));
|
|
3597
3516
|
const handle$7 = {
|
|
3598
3517
|
getSitemapEntries: () => null
|
|
3599
3518
|
};
|
|
3600
|
-
async function loader$
|
|
3519
|
+
async function loader$t({ request }) {
|
|
3601
3520
|
ensureUndeployed();
|
|
3602
3521
|
await requireAuthInfo({ request });
|
|
3603
|
-
return {
|
|
3522
|
+
return {};
|
|
3604
3523
|
}
|
|
3605
3524
|
async function action$9({ request }) {
|
|
3606
3525
|
ensureUndeployed();
|
|
3607
3526
|
const formData = await request.formData();
|
|
3608
3527
|
const intent = formData.get("intent");
|
|
3609
|
-
if (intent === "
|
|
3610
|
-
await deleteDiscordInfo();
|
|
3611
|
-
return redirectWithToast("/account", {
|
|
3612
|
-
type: "success",
|
|
3613
|
-
title: "Disconnected",
|
|
3614
|
-
description: "Local discord data has been deleted."
|
|
3615
|
-
});
|
|
3616
|
-
} else if (intent === "logout") {
|
|
3528
|
+
if (intent === "logout") {
|
|
3617
3529
|
await deleteDb();
|
|
3618
3530
|
await deleteCache();
|
|
3619
3531
|
return redirectWithToast("/login", {
|
|
@@ -3632,12 +3544,17 @@ async function action$9({ request }) {
|
|
|
3632
3544
|
}
|
|
3633
3545
|
return redirect$1("/account");
|
|
3634
3546
|
}
|
|
3547
|
+
function useConnectDiscordURL$1() {
|
|
3548
|
+
const {
|
|
3549
|
+
product: { host }
|
|
3550
|
+
} = useWorkshopConfig();
|
|
3551
|
+
return `${host}/discord`;
|
|
3552
|
+
}
|
|
3635
3553
|
function Account() {
|
|
3636
|
-
const data = useLoaderData();
|
|
3637
|
-
const disconnectFetcher = useFetcher();
|
|
3638
3554
|
const user = useUser();
|
|
3639
3555
|
const discordMember = useOptionalDiscordMember();
|
|
3640
3556
|
const presencePreferences = usePresencePreferences();
|
|
3557
|
+
const connectDiscordURL = useConnectDiscordURL$1();
|
|
3641
3558
|
return /* @__PURE__ */ jsxs("main", { className: "container flex h-full w-full max-w-3xl flex-grow flex-col items-center justify-center gap-4", children: [
|
|
3642
3559
|
user.imageUrlLarge ? /* @__PURE__ */ jsx(
|
|
3643
3560
|
"img",
|
|
@@ -3649,31 +3566,25 @@ function Account() {
|
|
|
3649
3566
|
) : /* @__PURE__ */ jsx(Icon, { name: "User", className: "flex-shrink-0", size: "lg" }),
|
|
3650
3567
|
/* @__PURE__ */ jsx("h1", { className: "mb-1 text-2xl", children: "Your Account" }),
|
|
3651
3568
|
/* @__PURE__ */ jsx("p", { className: "text-center text-gray-700 dark:text-gray-300", children: user.name ? `Hi ${(discordMember == null ? void 0 : discordMember.displayName) ?? user.name}, your device is logged in with ${user.email}.` : `Your device is logged in with ${user.email}.` }),
|
|
3652
|
-
discordMember ? /* @__PURE__ */
|
|
3653
|
-
|
|
3654
|
-
|
|
3655
|
-
|
|
3656
|
-
|
|
3657
|
-
|
|
3658
|
-
{
|
|
3659
|
-
|
|
3660
|
-
|
|
3661
|
-
|
|
3662
|
-
|
|
3663
|
-
|
|
3664
|
-
|
|
3665
|
-
|
|
3666
|
-
|
|
3667
|
-
] }),
|
|
3668
|
-
/* @__PURE__ */ jsxs("div", { className: "flex justify-center gap-2", children: [
|
|
3669
|
-
/* @__PURE__ */ jsx(disconnectFetcher.Form, { method: "post", children: /* @__PURE__ */ jsx(Button, { varient: "mono", name: "intent", value: "disconnect-discord", children: "Disconnect Discord" }) }),
|
|
3670
|
-
/* @__PURE__ */ jsx(SimpleTooltip, { content: "Your discord connection gives you access to the exclusive Discord channels for Epic Web", children: /* @__PURE__ */ jsx(Icon, { name: "Question", tabIndex: 0 }) })
|
|
3671
|
-
] })
|
|
3672
|
-
] }) : /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
3569
|
+
discordMember ? /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs("p", { className: "text-center text-gray-700 dark:text-gray-300", children: [
|
|
3570
|
+
"And you are connected to discord as",
|
|
3571
|
+
" ",
|
|
3572
|
+
/* @__PURE__ */ jsx(
|
|
3573
|
+
"a",
|
|
3574
|
+
{
|
|
3575
|
+
href: `https://discord.com/users/${discordMember.id}`,
|
|
3576
|
+
target: "_blank",
|
|
3577
|
+
rel: "noopener noreferrer",
|
|
3578
|
+
className: "underline",
|
|
3579
|
+
children: discordMember.displayName
|
|
3580
|
+
}
|
|
3581
|
+
),
|
|
3582
|
+
"."
|
|
3583
|
+
] }) }) : /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
3673
3584
|
/* @__PURE__ */ jsxs(
|
|
3674
3585
|
Link,
|
|
3675
3586
|
{
|
|
3676
|
-
to:
|
|
3587
|
+
to: connectDiscordURL,
|
|
3677
3588
|
className: "inline-flex items-center gap-2 underline",
|
|
3678
3589
|
children: [
|
|
3679
3590
|
/* @__PURE__ */ jsx(Icon, { name: "Discord", size: "lg" }),
|
|
@@ -3737,7 +3648,7 @@ const route3 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProper
|
|
|
3737
3648
|
action: action$9,
|
|
3738
3649
|
default: Account,
|
|
3739
3650
|
handle: handle$7,
|
|
3740
|
-
loader: loader$
|
|
3651
|
+
loader: loader$t
|
|
3741
3652
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
3742
3653
|
async function getForceFresh(filePath, cacheEntry) {
|
|
3743
3654
|
if (!cacheEntry) return true;
|
|
@@ -3827,7 +3738,7 @@ async function firstExisting(...files) {
|
|
|
3827
3738
|
}
|
|
3828
3739
|
return null;
|
|
3829
3740
|
}
|
|
3830
|
-
async function loader$
|
|
3741
|
+
async function loader$s({ request, params }) {
|
|
3831
3742
|
const timings = makeTimings("app-file");
|
|
3832
3743
|
const { fileApp, app } = await resolveApps({ request, params, timings });
|
|
3833
3744
|
if (!fileApp || !app) {
|
|
@@ -3885,9 +3796,9 @@ async function loader$t({ request, params }) {
|
|
|
3885
3796
|
}
|
|
3886
3797
|
const route4 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
3887
3798
|
__proto__: null,
|
|
3888
|
-
loader: loader$
|
|
3799
|
+
loader: loader$s
|
|
3889
3800
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
3890
|
-
async function loader$
|
|
3801
|
+
async function loader$r(args) {
|
|
3891
3802
|
const api = await getApiModule(args);
|
|
3892
3803
|
invariantResponse(
|
|
3893
3804
|
api.mod.loader,
|
|
@@ -3990,9 +3901,9 @@ async function getApiModule({ request, params }) {
|
|
|
3990
3901
|
const route5 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
3991
3902
|
__proto__: null,
|
|
3992
3903
|
action: action$8,
|
|
3993
|
-
loader: loader$
|
|
3904
|
+
loader: loader$r
|
|
3994
3905
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
3995
|
-
async function loader$
|
|
3906
|
+
async function loader$q({ request, params }) {
|
|
3996
3907
|
const timings = makeTimings("epic_ws script");
|
|
3997
3908
|
const { fileApp, app } = await resolveApps({ request, params, timings });
|
|
3998
3909
|
if (!fileApp || !app) {
|
|
@@ -4061,9 +3972,9 @@ async function loader$r({ request, params }) {
|
|
|
4061
3972
|
}
|
|
4062
3973
|
const route6 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
4063
3974
|
__proto__: null,
|
|
4064
|
-
loader: loader$
|
|
3975
|
+
loader: loader$q
|
|
4065
3976
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
4066
|
-
async function loader$
|
|
3977
|
+
async function loader$p({ request, params }) {
|
|
4067
3978
|
var _a;
|
|
4068
3979
|
const timings = makeTimings("app");
|
|
4069
3980
|
const { fileApp, app } = await resolveApps({ request, params, timings });
|
|
@@ -4149,9 +4060,9 @@ async function loader$q({ request, params }) {
|
|
|
4149
4060
|
}
|
|
4150
4061
|
const route7 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
4151
4062
|
__proto__: null,
|
|
4152
|
-
loader: loader$
|
|
4063
|
+
loader: loader$p
|
|
4153
4064
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
4154
|
-
async function loader$
|
|
4065
|
+
async function loader$o({ request, params }) {
|
|
4155
4066
|
var _a;
|
|
4156
4067
|
const timings = makeTimings("app_test_loader");
|
|
4157
4068
|
const userHasAccess = await userHasAccessToWorkshop({
|
|
@@ -4288,38 +4199,41 @@ ${testScriptTag}`;
|
|
|
4288
4199
|
}
|
|
4289
4200
|
const route8 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
4290
4201
|
__proto__: null,
|
|
4291
|
-
loader: loader$
|
|
4202
|
+
loader: loader$o
|
|
4292
4203
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
4293
4204
|
const route9 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
4294
4205
|
__proto__: null,
|
|
4295
|
-
loader: loader$
|
|
4206
|
+
loader: loader$q
|
|
4296
4207
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
4297
4208
|
const route10 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
4298
4209
|
__proto__: null,
|
|
4299
|
-
loader: loader$
|
|
4210
|
+
loader: loader$q
|
|
4300
4211
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
4301
4212
|
const handle$6 = {
|
|
4302
4213
|
getSitemapEntries: () => null
|
|
4303
4214
|
};
|
|
4304
|
-
|
|
4305
|
-
|
|
4215
|
+
function useConnectDiscordURL() {
|
|
4216
|
+
const {
|
|
4217
|
+
product: { host }
|
|
4218
|
+
} = useWorkshopConfig();
|
|
4219
|
+
return `${host}/discord`;
|
|
4306
4220
|
}
|
|
4307
|
-
function useDiscordCTALink({
|
|
4308
|
-
discordAuthUrl
|
|
4309
|
-
}) {
|
|
4221
|
+
function useDiscordCTALink() {
|
|
4310
4222
|
const user = useOptionalUser();
|
|
4311
4223
|
const discordMember = useOptionalDiscordMember();
|
|
4224
|
+
const connectDiscordURL = useConnectDiscordURL();
|
|
4312
4225
|
if (!user) {
|
|
4313
4226
|
return "/login";
|
|
4314
4227
|
}
|
|
4315
4228
|
if (!discordMember) {
|
|
4316
|
-
return
|
|
4229
|
+
return connectDiscordURL;
|
|
4317
4230
|
}
|
|
4318
4231
|
return "https://discord.com/channels/715220730605731931/1161045224907341972";
|
|
4319
4232
|
}
|
|
4320
|
-
function DiscordCTA(
|
|
4233
|
+
function DiscordCTA() {
|
|
4321
4234
|
const user = useOptionalUser();
|
|
4322
4235
|
const discordMember = useOptionalDiscordMember();
|
|
4236
|
+
const connectDiscordURL = useConnectDiscordURL();
|
|
4323
4237
|
if (!user) {
|
|
4324
4238
|
return /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center justify-center gap-2 text-xl", children: [
|
|
4325
4239
|
/* @__PURE__ */ jsxs(Link, { to: "/login", className: "inline-flex items-center gap-2 underline", children: [
|
|
@@ -4337,10 +4251,17 @@ function DiscordCTA({ discordAuthUrl }) {
|
|
|
4337
4251
|
}
|
|
4338
4252
|
if (!discordMember) {
|
|
4339
4253
|
return /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center justify-center gap-2 text-xl", children: [
|
|
4340
|
-
/* @__PURE__ */ jsxs(
|
|
4341
|
-
|
|
4342
|
-
|
|
4343
|
-
|
|
4254
|
+
/* @__PURE__ */ jsxs(
|
|
4255
|
+
Link,
|
|
4256
|
+
{
|
|
4257
|
+
to: connectDiscordURL,
|
|
4258
|
+
className: "flex items-center gap-2 underline",
|
|
4259
|
+
children: [
|
|
4260
|
+
/* @__PURE__ */ jsx(Icon, { name: "Discord", size: "2xl" }),
|
|
4261
|
+
"Connect Discord"
|
|
4262
|
+
]
|
|
4263
|
+
}
|
|
4264
|
+
),
|
|
4344
4265
|
" ",
|
|
4345
4266
|
/* @__PURE__ */ jsxs("span", { children: [
|
|
4346
4267
|
"to get access to the exclusive",
|
|
@@ -4364,9 +4285,8 @@ function DiscordCTA({ discordAuthUrl }) {
|
|
|
4364
4285
|
] });
|
|
4365
4286
|
}
|
|
4366
4287
|
function DiscordRoute() {
|
|
4367
|
-
const data = useLoaderData();
|
|
4368
4288
|
return /* @__PURE__ */ jsxs("div", { className: "container flex h-full max-w-3xl flex-col items-center justify-center gap-4 p-12", children: [
|
|
4369
|
-
/* @__PURE__ */ jsx(DiscordCTA, {
|
|
4289
|
+
/* @__PURE__ */ jsx(DiscordCTA, {}),
|
|
4370
4290
|
/* @__PURE__ */ jsxs("p", { children: [
|
|
4371
4291
|
"The",
|
|
4372
4292
|
" ",
|
|
@@ -4405,7 +4325,6 @@ const route11 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePrope
|
|
|
4405
4325
|
DiscordCTA,
|
|
4406
4326
|
default: DiscordRoute,
|
|
4407
4327
|
handle: handle$6,
|
|
4408
|
-
loader: loader$o,
|
|
4409
4328
|
useDiscordCTALink
|
|
4410
4329
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
4411
4330
|
const handle$5 = {
|
|
@@ -4631,7 +4550,7 @@ function isDeepEqual(obj1, obj2) {
|
|
|
4631
4550
|
}
|
|
4632
4551
|
return true;
|
|
4633
4552
|
}
|
|
4634
|
-
const
|
|
4553
|
+
const route43 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
4635
4554
|
__proto__: null,
|
|
4636
4555
|
MuxPlayer,
|
|
4637
4556
|
action: action$7,
|
|
@@ -5725,7 +5644,7 @@ function EditFileOnGitHub({
|
|
|
5725
5644
|
);
|
|
5726
5645
|
}
|
|
5727
5646
|
const LaunchEditor = ENV.EPICSHOP_DEPLOYED ? LaunchGitHub : LaunchEditorImpl;
|
|
5728
|
-
const
|
|
5647
|
+
const route31 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
5729
5648
|
__proto__: null,
|
|
5730
5649
|
EditFileOnGitHub,
|
|
5731
5650
|
LaunchEditor,
|
|
@@ -6753,7 +6672,7 @@ function SetAppToPlayground({ appName }) {
|
|
|
6753
6672
|
}
|
|
6754
6673
|
);
|
|
6755
6674
|
}
|
|
6756
|
-
const
|
|
6675
|
+
const route38 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
6757
6676
|
__proto__: null,
|
|
6758
6677
|
PlaygroundChooser,
|
|
6759
6678
|
SetAppToPlayground,
|
|
@@ -7440,9 +7359,9 @@ async function action$4({ request }) {
|
|
|
7440
7359
|
}
|
|
7441
7360
|
}
|
|
7442
7361
|
if (intent === "stop-port") {
|
|
7443
|
-
const
|
|
7444
|
-
invariantResponse(typeof
|
|
7445
|
-
await stopPort(
|
|
7362
|
+
const port = formData.get("port");
|
|
7363
|
+
invariantResponse(typeof port === "string", "port is required");
|
|
7364
|
+
await stopPort(port);
|
|
7446
7365
|
return dataWithPE(formData, { status: "port-stopped" });
|
|
7447
7366
|
}
|
|
7448
7367
|
throw new Error(`Unknown intent: ${intent}`);
|
|
@@ -7470,13 +7389,13 @@ function AppStopper({ name }) {
|
|
|
7470
7389
|
)
|
|
7471
7390
|
] });
|
|
7472
7391
|
}
|
|
7473
|
-
function PortStopper({ port
|
|
7392
|
+
function PortStopper({ port }) {
|
|
7474
7393
|
const fetcher = useFetcher();
|
|
7475
7394
|
const peRedirectInput = usePERedirectInput();
|
|
7476
7395
|
return /* @__PURE__ */ jsxs(fetcher.Form, { method: "POST", action: "/start", children: [
|
|
7477
7396
|
peRedirectInput,
|
|
7478
7397
|
showProgressBarField,
|
|
7479
|
-
/* @__PURE__ */ jsx("input", { type: "hidden", name: "port", value:
|
|
7398
|
+
/* @__PURE__ */ jsx("input", { type: "hidden", name: "port", value: port }),
|
|
7480
7399
|
/* @__PURE__ */ jsx(Button, { varient: "mono", type: "submit", name: "intent", value: "stop-port", children: fetcher.state === "idle" ? "Stop Port" : "Stopping Port" })
|
|
7481
7400
|
] });
|
|
7482
7401
|
}
|
|
@@ -7501,7 +7420,7 @@ function AppStarter({ name }) {
|
|
|
7501
7420
|
fetcher.state === "idle" ? /* @__PURE__ */ jsx(Button, { type: "submit", name: "intent", value: "start", varient: "mono", children: "Start App" }) : /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(Loading, { children: "Starting App" }) })
|
|
7502
7421
|
] });
|
|
7503
7422
|
}
|
|
7504
|
-
const
|
|
7423
|
+
const route40 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
7505
7424
|
__proto__: null,
|
|
7506
7425
|
AppStarter,
|
|
7507
7426
|
AppStopper,
|
|
@@ -7551,7 +7470,7 @@ function getNewIndex(prevIndex, delta, max) {
|
|
|
7551
7470
|
const InBrowserBrowser = forwardRef(
|
|
7552
7471
|
InBrowserBrowserImpl
|
|
7553
7472
|
);
|
|
7554
|
-
function InBrowserBrowserImpl({ name, port
|
|
7473
|
+
function InBrowserBrowserImpl({ name, port, portIsAvailable, isRunning, baseUrl, id, initialRoute }, ref) {
|
|
7555
7474
|
const requestInfo = useRequestInfo();
|
|
7556
7475
|
return isRunning ? /* @__PURE__ */ jsx(
|
|
7557
7476
|
InBrowserBrowserForRealz,
|
|
@@ -7568,14 +7487,14 @@ function InBrowserBrowserImpl({ name, port: port2, portIsAvailable, isRunning, b
|
|
|
7568
7487
|
/* @__PURE__ */ jsx(
|
|
7569
7488
|
"a",
|
|
7570
7489
|
{
|
|
7571
|
-
href: getBaseUrl({ domain: requestInfo.domain, port
|
|
7490
|
+
href: getBaseUrl({ domain: requestInfo.domain, port }),
|
|
7572
7491
|
className: "underline",
|
|
7573
7492
|
children: "elsewhere"
|
|
7574
7493
|
}
|
|
7575
7494
|
),
|
|
7576
7495
|
"?"
|
|
7577
7496
|
] }),
|
|
7578
|
-
/* @__PURE__ */ jsx(PortStopper, { port
|
|
7497
|
+
/* @__PURE__ */ jsx(PortStopper, { port })
|
|
7579
7498
|
] }) : /* @__PURE__ */ jsx(AppStarter, { name });
|
|
7580
7499
|
}
|
|
7581
7500
|
const InBrowserBrowserForRealz = forwardRef(InBrowserBrowserForRealzImpl);
|
|
@@ -8427,15 +8346,14 @@ async function fetchDiscordPosts({ request }) {
|
|
|
8427
8346
|
}));
|
|
8428
8347
|
}
|
|
8429
8348
|
function DiscordChat() {
|
|
8430
|
-
const data = useLoaderData();
|
|
8431
8349
|
return /* @__PURE__ */ jsxs("div", { className: "flex h-full w-full flex-col gap-4 pt-4", children: [
|
|
8432
|
-
/* @__PURE__ */ jsx("div", { className: "text-center", children: /* @__PURE__ */ jsx(DiscordCTA, {
|
|
8350
|
+
/* @__PURE__ */ jsx("div", { className: "text-center", children: /* @__PURE__ */ jsx(DiscordCTA, {}) }),
|
|
8433
8351
|
/* @__PURE__ */ jsx("div", { className: "flex-1 overflow-y-scroll bg-accent pb-4 scrollbar-thin scrollbar-thumb-scrollbar", children: /* @__PURE__ */ jsx(DiscordPosts, {}) })
|
|
8434
8352
|
] });
|
|
8435
8353
|
}
|
|
8436
8354
|
function DiscordPosts() {
|
|
8437
8355
|
const data = useLoaderData();
|
|
8438
|
-
const ctaLink = useDiscordCTALink(
|
|
8356
|
+
const ctaLink = useDiscordCTALink();
|
|
8439
8357
|
const altDown = useAltDown();
|
|
8440
8358
|
return /* @__PURE__ */ jsxs("div", { className: "flex h-full flex-col items-center justify-between", children: [
|
|
8441
8359
|
/* @__PURE__ */ jsx(
|
|
@@ -9230,7 +9148,7 @@ function StopTest({
|
|
|
9230
9148
|
)
|
|
9231
9149
|
] });
|
|
9232
9150
|
}
|
|
9233
|
-
const
|
|
9151
|
+
const route41 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
9234
9152
|
__proto__: null,
|
|
9235
9153
|
ClearTest,
|
|
9236
9154
|
StopTest,
|
|
@@ -9398,7 +9316,6 @@ async function loader$i({ request, params }) {
|
|
|
9398
9316
|
type: params.type,
|
|
9399
9317
|
exerciseStepApp,
|
|
9400
9318
|
allApps,
|
|
9401
|
-
discordAuthUrl: getDiscordAuthURL(),
|
|
9402
9319
|
// defer this promise so that we don't block the response from being sent
|
|
9403
9320
|
discordPostsPromise: fetchDiscordPosts({ request }),
|
|
9404
9321
|
playground: playgroundApp ? {
|
|
@@ -10251,7 +10168,7 @@ async function loader$c({ request }) {
|
|
|
10251
10168
|
};
|
|
10252
10169
|
});
|
|
10253
10170
|
}
|
|
10254
|
-
const
|
|
10171
|
+
const route32 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
10255
10172
|
__proto__: null,
|
|
10256
10173
|
EventSchema,
|
|
10257
10174
|
loader: loader$c
|
|
@@ -10487,9 +10404,9 @@ async function loader$a({ request }) {
|
|
|
10487
10404
|
const testProcesses = {};
|
|
10488
10405
|
for (const [
|
|
10489
10406
|
name,
|
|
10490
|
-
{ port
|
|
10407
|
+
{ port, process: process2, color }
|
|
10491
10408
|
] of getProcesses().devProcesses.entries()) {
|
|
10492
|
-
processes[name] = { port
|
|
10409
|
+
processes[name] = { port, pid: process2.pid, color };
|
|
10493
10410
|
}
|
|
10494
10411
|
for (const [
|
|
10495
10412
|
name,
|
|
@@ -10817,7 +10734,7 @@ async function loader$5({ request }) {
|
|
|
10817
10734
|
{ headers: { "Server-Timing": getServerTimeHeader(timings) } }
|
|
10818
10735
|
);
|
|
10819
10736
|
}
|
|
10820
|
-
const
|
|
10737
|
+
const route30 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
10821
10738
|
__proto__: null,
|
|
10822
10739
|
loader: loader$5
|
|
10823
10740
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
@@ -11148,7 +11065,7 @@ function OgLayout({
|
|
|
11148
11065
|
}
|
|
11149
11066
|
);
|
|
11150
11067
|
}
|
|
11151
|
-
const
|
|
11068
|
+
const route33 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
11152
11069
|
__proto__: null,
|
|
11153
11070
|
loader: loader$4
|
|
11154
11071
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
@@ -11196,7 +11113,7 @@ function Onboarding() {
|
|
|
11196
11113
|
/* @__PURE__ */ jsx(Form, { method: "post", className: "pb-4", children: /* @__PURE__ */ jsx(Button, { name: "intent", value: "complete", varient: "primary", children: "I've watched it. Let's go!" }) })
|
|
11197
11114
|
] });
|
|
11198
11115
|
}
|
|
11199
|
-
const
|
|
11116
|
+
const route34 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
11200
11117
|
__proto__: null,
|
|
11201
11118
|
action,
|
|
11202
11119
|
default: Onboarding,
|
|
@@ -11209,9 +11126,9 @@ async function loader$2() {
|
|
|
11209
11126
|
const processes = {};
|
|
11210
11127
|
for (const [
|
|
11211
11128
|
name,
|
|
11212
|
-
{ port
|
|
11129
|
+
{ port, process: process2, color }
|
|
11213
11130
|
] of getProcesses().devProcesses.entries()) {
|
|
11214
|
-
processes[name] = { port
|
|
11131
|
+
processes[name] = { port, pid: process2.pid, color };
|
|
11215
11132
|
}
|
|
11216
11133
|
const testProcesses = {};
|
|
11217
11134
|
for (const [
|
|
@@ -11222,7 +11139,7 @@ async function loader$2() {
|
|
|
11222
11139
|
}
|
|
11223
11140
|
return Response.json({ processes, testProcesses });
|
|
11224
11141
|
}
|
|
11225
|
-
const
|
|
11142
|
+
const route35 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
11226
11143
|
__proto__: null,
|
|
11227
11144
|
loader: loader$2
|
|
11228
11145
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
@@ -11231,7 +11148,7 @@ function loader$1({ request }) {
|
|
|
11231
11148
|
{ type: "sitemap", value: `${getDomainUrl(request)}/sitemap.xml` }
|
|
11232
11149
|
]);
|
|
11233
11150
|
}
|
|
11234
|
-
const
|
|
11151
|
+
const route37 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
11235
11152
|
__proto__: null,
|
|
11236
11153
|
loader: loader$1
|
|
11237
11154
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
@@ -11244,11 +11161,11 @@ async function loader({ request, context }) {
|
|
|
11244
11161
|
}
|
|
11245
11162
|
});
|
|
11246
11163
|
}
|
|
11247
|
-
const
|
|
11164
|
+
const route39 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
11248
11165
|
__proto__: null,
|
|
11249
11166
|
loader
|
|
11250
11167
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
11251
|
-
const serverManifest = { "entry": { "module": "/assets/entry.client-BTYTUpFV.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/components-9EGYHTc_.js"], "css": [] }, "routes": { "root": { "id": "root", "parentId": void 0, "path": "", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/root-DCfiv1cO.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/components-9EGYHTc_.js", "/assets/misc-BJtHv_Jh.js", "/assets/pe-ChIwTk8v.js", "/assets/error-boundary-1-dmC941.js", "/assets/progress-bar-Cj5R4Zk7.js", "/assets/index-DRH72MzK.js", "/assets/tooltip-BgynKV2c.js", "/assets/index-_J-F_Dnc.js", "/assets/presence-DyppfK2V.js", "/assets/seo-pBpFCWsy.js", "/assets/request-info-DCIQLE6H.js"], "css": [] }, "routes/$": { "id": "routes/$", "parentId": "root", "path": "*", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_-CWSCXcBv.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/error-boundary-1-dmC941.js", "/assets/misc-BJtHv_Jh.js", "/assets/components-9EGYHTc_.js"], "css": [] }, "routes/_app+/_layout": { "id": "routes/_app+/_layout", "parentId": "root", "path": void 0, "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_layout-pUNfVRe2.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/pe-ChIwTk8v.js", "/assets/product-C1ynnrN_.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/tooltip-BgynKV2c.js", "/assets/index-BuoaxPEj.js", "/assets/user-DJiL1Lk-.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/presence-DyppfK2V.js", "/assets/progress-DAB3nDa2.js", "/assets/index-_J-F_Dnc.js", "/assets/components-9EGYHTc_.js", "/assets/request-info-DCIQLE6H.js"], "css": [] }, "routes/_app+/account": { "id": "routes/_app+/account", "parentId": "routes/_app+/_layout", "path": "account", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/account-RJjysGnp.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/button-DQ001ob0.js", "/assets/misc-BJtHv_Jh.js", "/assets/tooltip-BgynKV2c.js", "/assets/user-DJiL1Lk-.js", "/assets/presence-DyppfK2V.js", "/assets/components-9EGYHTc_.js", "/assets/request-info-DCIQLE6H.js"], "css": [] }, "routes/_app+/app.$appName+/$": { "id": "routes/_app+/app.$appName+/$", "parentId": "routes/_app+/_layout", "path": "app/:appName/*", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/api.$": { "id": "routes/_app+/app.$appName+/api.$", "parentId": "routes/_app+/_layout", "path": "app/:appName/api/*", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/api._-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/epic_ws[.js]": { "id": "routes/_app+/app.$appName+/epic_ws[.js]", "parentId": "routes/_app+/_layout", "path": "app/:appName/epic_ws.js", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/epic_ws_.js_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/index": { "id": "routes/_app+/app.$appName+/index", "parentId": "routes/_app+/_layout", "path": "app/:appName/", "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/index-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/test.$testName": { "id": "routes/_app+/app.$appName+/test.$testName", "parentId": "routes/_app+/_layout", "path": "app/:appName/test/:testName", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test._testName-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/test.epic_ws[.js]": { "id": "routes/_app+/app.$appName+/test.epic_ws[.js]", "parentId": "routes/_app+/_layout", "path": "app/:appName/test/epic_ws.js", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test.epic_ws_.js_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.epic_ws[.js]": { "id": "routes/_app+/app.epic_ws[.js]", "parentId": "routes/_app+/_layout", "path": "app/epic_ws.js", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/app.epic_ws_.js_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/discord": { "id": "routes/_app+/discord", "parentId": "routes/_app+/_layout", "path": "discord", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/discord-lXkS53K3.js", "imports": ["/assets/discord-DxisvcaU.js", "/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/components-9EGYHTc_.js", "/assets/user-DJiL1Lk-.js"], "css": [] }, "routes/_app+/exercise+/_layout": { "id": "routes/_app+/exercise+/_layout", "parentId": "routes/_app+/_layout", "path": "exercise", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_layout-88n0To1b.js", "imports": ["/assets/index-BFGhCX_U.js"], "css": [] }, "routes/_app+/exercise+/$exerciseNumber": { "id": "routes/_app+/exercise+/$exerciseNumber", "parentId": "routes/_app+/exercise+/_layout", "path": ":exerciseNumber", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_exerciseNumber-BnwWTYFw.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-1XLXSFCL.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-DiFCTSLR.js", "/assets/progress-DAB3nDa2.js", "/assets/misc-BJtHv_Jh.js", "/assets/seo-pBpFCWsy.js", "/assets/components-9EGYHTc_.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-DJiL1Lk-.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber", "parentId": "routes/_app+/exercise+/_layout", "path": ":exerciseNumber/:stepNumber", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_exerciseNumber_._stepNumber-BA2Xhzqs.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/components-9EGYHTc_.js"], "css": [] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber", "path": ":type", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_layout-Bpho30KN.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/error-boundary-1-dmC941.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-DiFCTSLR.js", "/assets/progress-DAB3nDa2.js", "/assets/set-playground-S_rIwJAa.js", "/assets/seo-pBpFCWsy.js", "/assets/misc-BJtHv_Jh.js", "/assets/epic-video-1XLXSFCL.js", "/assets/tooltip-BgynKV2c.js", "/assets/request-info-DCIQLE6H.js", "/assets/components-9EGYHTc_.js", "/assets/index-BuoaxPEj.js", "/assets/progress-bar-Cj5R4Zk7.js", "/assets/pe-ChIwTk8v.js", "/assets/index-BuA_RWlU.js", "/assets/index-_J-F_Dnc.js", "/assets/loading-Dk0n07O3.js", "/assets/user-DJiL1Lk-.js", "/assets/workshop-config-DJY2cXU_.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/app": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/app", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "path": "app", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/app-CM8yuYni.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/preview-CW_12I0i.js", "/assets/components-9EGYHTc_.js", "/assets/misc-BJtHv_Jh.js", "/assets/request-info-DCIQLE6H.js", "/assets/button-DQ001ob0.js", "/assets/loading-Dk0n07O3.js", "/assets/index-_J-F_Dnc.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": [] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/index": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/index", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/index-DZ0It6pH.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/tooltip-BgynKV2c.js", "/assets/index-BuA_RWlU.js", "/assets/misc-BJtHv_Jh.js", "/assets/diff-CyIaJAoJ.js", "/assets/error-boundary-1-dmC941.js", "/assets/loading-Dk0n07O3.js", "/assets/discord-DxisvcaU.js", "/assets/components-9EGYHTc_.js", "/assets/index-DRH72MzK.js", "/assets/set-playground-S_rIwJAa.js", "/assets/tests-Bp85P9FF.js", "/assets/preview-CW_12I0i.js", "/assets/index-BuoaxPEj.js", "/assets/accordion-DC885Li1.js", "/assets/mdx-DiFCTSLR.js", "/assets/epic-video-1XLXSFCL.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/pe-ChIwTk8v.js", "/assets/user-DJiL1Lk-.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/use-event-source-x59d4R2Z.js", "/assets/button-DQ001ob0.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/test": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/test", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "path": "test", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test-CvzcNTDp.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/tests-Bp85P9FF.js", "/assets/components-9EGYHTc_.js", "/assets/epic-video-1XLXSFCL.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/misc-BJtHv_Jh.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-DJiL1Lk-.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/accordion-DC885Li1.js", "/assets/index-BuA_RWlU.js", "/assets/index-BuoaxPEj.js", "/assets/use-event-source-x59d4R2Z.js", "/assets/set-playground-S_rIwJAa.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.index": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.index", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_exerciseNumber_._stepNumber.index-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/exercise+/$exerciseNumber_.finished": { "id": "routes/_app+/exercise+/$exerciseNumber_.finished", "parentId": "routes/_app+/exercise+/_layout", "path": ":exerciseNumber/finished", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_exerciseNumber_.finished-BfeMSie-.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-1XLXSFCL.js", "/assets/loading-Dk0n07O3.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-DiFCTSLR.js", "/assets/progress-DAB3nDa2.js", "/assets/misc-BJtHv_Jh.js", "/assets/seo-pBpFCWsy.js", "/assets/components-9EGYHTc_.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/user-DJiL1Lk-.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/finished": { "id": "routes/_app+/finished", "parentId": "routes/_app+/_layout", "path": "finished", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/finished-DjF_kSoF.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-1XLXSFCL.js", "/assets/loading-Dk0n07O3.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-DiFCTSLR.js", "/assets/misc-BJtHv_Jh.js", "/assets/seo-pBpFCWsy.js", "/assets/progress-DAB3nDa2.js", "/assets/components-9EGYHTc_.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/user-DJiL1Lk-.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/index": { "id": "routes/_app+/index", "parentId": "routes/_app+/_layout", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/index-f5Q6XZEy.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-1XLXSFCL.js", "/assets/error-boundary-1-dmC941.js", "/assets/mdx-DiFCTSLR.js", "/assets/misc-BJtHv_Jh.js", "/assets/progress-DAB3nDa2.js", "/assets/components-9EGYHTc_.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-DJiL1Lk-.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/login": { "id": "routes/_app+/login", "parentId": "routes/_app+/_layout", "path": "login", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/login-pZYDEC_l.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/use-event-source-x59d4R2Z.js", "/assets/button-DQ001ob0.js", "/assets/loading-Dk0n07O3.js", "/assets/product-C1ynnrN_.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/request-info-DCIQLE6H.js", "/assets/components-9EGYHTc_.js", "/assets/misc-BJtHv_Jh.js", "/assets/index-_J-F_Dnc.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js"], "css": [] }, "routes/_app+/support": { "id": "routes/_app+/support", "parentId": "routes/_app+/_layout", "path": "support", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/support-BNS-kEhc.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/components-9EGYHTc_.js"], "css": [] }, "routes/admin+/_layout": { "id": "routes/admin+/_layout", "parentId": "root", "path": "admin", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_layout-gyrNluke.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/tooltip-BgynKV2c.js", "/assets/progress-DAB3nDa2.js", "/assets/components-9EGYHTc_.js", "/assets/pe-ChIwTk8v.js"], "css": [] }, "routes/admin+/apps": { "id": "routes/admin+/apps", "parentId": "routes/admin+/_layout", "path": "apps", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/apps-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/admin+/cache": { "id": "routes/admin+/cache", "parentId": "routes/admin+/_layout", "path": "cache", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/cache-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/apps": { "id": "routes/apps", "parentId": "root", "path": "apps", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/apps-DP2rzg_V.js", "imports": [], "css": [] }, "routes/diff": { "id": "routes/diff", "parentId": "root", "path": "diff", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/diff-Cnw7IcG5.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/diff-CyIaJAoJ.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/components-9EGYHTc_.js", "/assets/accordion-DC885Li1.js", "/assets/tooltip-BgynKV2c.js", "/assets/index-BuA_RWlU.js", "/assets/index-BuoaxPEj.js", "/assets/mdx-DiFCTSLR.js", "/assets/epic-video-1XLXSFCL.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-DJiL1Lk-.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js", "/assets/revalidation-ws-DU-PzW-_.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/discord.callback": { "id": "routes/discord.callback", "parentId": "root", "path": "discord/callback", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/discord.callback-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/exercises": { "id": "routes/exercises", "parentId": "root", "path": "exercises", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/exercises-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/launch-editor": { "id": "routes/launch-editor", "parentId": "root", "path": "launch-editor", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/launch-editor-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/login-sse": { "id": "routes/login-sse", "parentId": "root", "path": "login-sse", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/login-sse-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/og": { "id": "routes/og", "parentId": "root", "path": "og", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/og-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/onboarding": { "id": "routes/onboarding", "parentId": "root", "path": "onboarding", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/onboarding-DXICEaMi.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/button-DQ001ob0.js", "/assets/epic-video-1XLXSFCL.js", "/assets/components-9EGYHTc_.js", "/assets/misc-BJtHv_Jh.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-DJiL1Lk-.js", "/assets/workshop-config-DJY2cXU_.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/processes": { "id": "routes/processes", "parentId": "root", "path": "processes", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/processes-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/progress": { "id": "routes/progress", "parentId": "root", "path": "progress", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/progress-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/robots[.]txt": { "id": "routes/robots[.]txt", "parentId": "root", "path": "robots.txt", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/robots_._txt-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/set-playground": { "id": "routes/set-playground", "parentId": "root", "path": "set-playground", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/set-playground-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/sitemap[.]xml": { "id": "routes/sitemap[.]xml", "parentId": "root", "path": "sitemap.xml", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/sitemap_._xml-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/start": { "id": "routes/start", "parentId": "root", "path": "start", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/start-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/test": { "id": "routes/test", "parentId": "root", "path": "test", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/theme/index": { "id": "routes/theme/index", "parentId": "root", "path": "theme", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/index-DP2rzg_V.js", "imports": [], "css": [] }, "routes/video-player/index": { "id": "routes/video-player/index", "parentId": "root", "path": "video-player", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/index-K6Dvbx-E.js", "imports": [], "css": [] } }, "url": "/assets/manifest-9328c766.js", "version": "9328c766" };
|
|
11168
|
+
const serverManifest = { "entry": { "module": "/assets/entry.client-BTYTUpFV.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/components-9EGYHTc_.js"], "css": [] }, "routes": { "root": { "id": "root", "parentId": void 0, "path": "", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/root-DCfiv1cO.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/components-9EGYHTc_.js", "/assets/misc-BJtHv_Jh.js", "/assets/pe-ChIwTk8v.js", "/assets/error-boundary-1-dmC941.js", "/assets/progress-bar-Cj5R4Zk7.js", "/assets/index-DRH72MzK.js", "/assets/tooltip-BgynKV2c.js", "/assets/index-_J-F_Dnc.js", "/assets/presence-DyppfK2V.js", "/assets/seo-pBpFCWsy.js", "/assets/request-info-DCIQLE6H.js"], "css": [] }, "routes/$": { "id": "routes/$", "parentId": "root", "path": "*", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_-CWSCXcBv.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/error-boundary-1-dmC941.js", "/assets/misc-BJtHv_Jh.js", "/assets/components-9EGYHTc_.js"], "css": [] }, "routes/_app+/_layout": { "id": "routes/_app+/_layout", "parentId": "root", "path": void 0, "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_layout-BK7mLImi.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/pe-ChIwTk8v.js", "/assets/product-C1ynnrN_.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/tooltip-BgynKV2c.js", "/assets/index-BuoaxPEj.js", "/assets/user-CFunCRfr.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/presence-DyppfK2V.js", "/assets/progress-DAB3nDa2.js", "/assets/index-_J-F_Dnc.js", "/assets/components-9EGYHTc_.js", "/assets/request-info-DCIQLE6H.js"], "css": [] }, "routes/_app+/account": { "id": "routes/_app+/account", "parentId": "routes/_app+/_layout", "path": "account", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/account-B5baO5pg.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/button-DQ001ob0.js", "/assets/misc-BJtHv_Jh.js", "/assets/tooltip-BgynKV2c.js", "/assets/user-CFunCRfr.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/presence-DyppfK2V.js", "/assets/components-9EGYHTc_.js", "/assets/request-info-DCIQLE6H.js"], "css": [] }, "routes/_app+/app.$appName+/$": { "id": "routes/_app+/app.$appName+/$", "parentId": "routes/_app+/_layout", "path": "app/:appName/*", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/api.$": { "id": "routes/_app+/app.$appName+/api.$", "parentId": "routes/_app+/_layout", "path": "app/:appName/api/*", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/api._-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/epic_ws[.js]": { "id": "routes/_app+/app.$appName+/epic_ws[.js]", "parentId": "routes/_app+/_layout", "path": "app/:appName/epic_ws.js", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/epic_ws_.js_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/index": { "id": "routes/_app+/app.$appName+/index", "parentId": "routes/_app+/_layout", "path": "app/:appName/", "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/index-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/test.$testName": { "id": "routes/_app+/app.$appName+/test.$testName", "parentId": "routes/_app+/_layout", "path": "app/:appName/test/:testName", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test._testName-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/test.epic_ws[.js]": { "id": "routes/_app+/app.$appName+/test.epic_ws[.js]", "parentId": "routes/_app+/_layout", "path": "app/:appName/test/epic_ws.js", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test.epic_ws_.js_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.epic_ws[.js]": { "id": "routes/_app+/app.epic_ws[.js]", "parentId": "routes/_app+/_layout", "path": "app/epic_ws.js", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/app.epic_ws_.js_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/discord": { "id": "routes/_app+/discord", "parentId": "routes/_app+/_layout", "path": "discord", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/discord-BnQDHWJj.js", "imports": ["/assets/discord-DcHxc30v.js", "/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/components-9EGYHTc_.js", "/assets/user-CFunCRfr.js", "/assets/workshop-config-DJY2cXU_.js"], "css": [] }, "routes/_app+/exercise+/_layout": { "id": "routes/_app+/exercise+/_layout", "parentId": "routes/_app+/_layout", "path": "exercise", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_layout-88n0To1b.js", "imports": ["/assets/index-BFGhCX_U.js"], "css": [] }, "routes/_app+/exercise+/$exerciseNumber": { "id": "routes/_app+/exercise+/$exerciseNumber", "parentId": "routes/_app+/exercise+/_layout", "path": ":exerciseNumber", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_exerciseNumber-DvMYZgqk.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-Bxtz3elt.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-DIAWAXtT.js", "/assets/progress-DAB3nDa2.js", "/assets/misc-BJtHv_Jh.js", "/assets/seo-pBpFCWsy.js", "/assets/components-9EGYHTc_.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-CFunCRfr.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber", "parentId": "routes/_app+/exercise+/_layout", "path": ":exerciseNumber/:stepNumber", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_exerciseNumber_._stepNumber-BA2Xhzqs.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/components-9EGYHTc_.js"], "css": [] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber", "path": ":type", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_layout-BH5PQW0M.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/error-boundary-1-dmC941.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-DIAWAXtT.js", "/assets/progress-DAB3nDa2.js", "/assets/set-playground-S_rIwJAa.js", "/assets/seo-pBpFCWsy.js", "/assets/misc-BJtHv_Jh.js", "/assets/epic-video-Bxtz3elt.js", "/assets/tooltip-BgynKV2c.js", "/assets/request-info-DCIQLE6H.js", "/assets/components-9EGYHTc_.js", "/assets/index-BuoaxPEj.js", "/assets/progress-bar-Cj5R4Zk7.js", "/assets/pe-ChIwTk8v.js", "/assets/index-BuA_RWlU.js", "/assets/index-_J-F_Dnc.js", "/assets/loading-Dk0n07O3.js", "/assets/user-CFunCRfr.js", "/assets/workshop-config-DJY2cXU_.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/app": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/app", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "path": "app", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/app-CM8yuYni.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/preview-CW_12I0i.js", "/assets/components-9EGYHTc_.js", "/assets/misc-BJtHv_Jh.js", "/assets/request-info-DCIQLE6H.js", "/assets/button-DQ001ob0.js", "/assets/loading-Dk0n07O3.js", "/assets/index-_J-F_Dnc.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": [] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/index": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/index", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/index-C2MH9l6b.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/tooltip-BgynKV2c.js", "/assets/index-BuA_RWlU.js", "/assets/misc-BJtHv_Jh.js", "/assets/diff-C2Hm_DHX.js", "/assets/error-boundary-1-dmC941.js", "/assets/loading-Dk0n07O3.js", "/assets/discord-DcHxc30v.js", "/assets/components-9EGYHTc_.js", "/assets/index-DRH72MzK.js", "/assets/set-playground-S_rIwJAa.js", "/assets/tests-GmyhBOwD.js", "/assets/preview-CW_12I0i.js", "/assets/index-BuoaxPEj.js", "/assets/accordion-DC885Li1.js", "/assets/mdx-DIAWAXtT.js", "/assets/epic-video-Bxtz3elt.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/pe-ChIwTk8v.js", "/assets/user-CFunCRfr.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/use-event-source-x59d4R2Z.js", "/assets/button-DQ001ob0.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/test": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/test", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "path": "test", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test-3x2HHA0t.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/tests-GmyhBOwD.js", "/assets/components-9EGYHTc_.js", "/assets/epic-video-Bxtz3elt.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/misc-BJtHv_Jh.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-CFunCRfr.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/accordion-DC885Li1.js", "/assets/index-BuA_RWlU.js", "/assets/index-BuoaxPEj.js", "/assets/use-event-source-x59d4R2Z.js", "/assets/set-playground-S_rIwJAa.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.index": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.index", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_exerciseNumber_._stepNumber.index-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/exercise+/$exerciseNumber_.finished": { "id": "routes/_app+/exercise+/$exerciseNumber_.finished", "parentId": "routes/_app+/exercise+/_layout", "path": ":exerciseNumber/finished", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_exerciseNumber_.finished-DYN2QHN6.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-Bxtz3elt.js", "/assets/loading-Dk0n07O3.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-DIAWAXtT.js", "/assets/progress-DAB3nDa2.js", "/assets/misc-BJtHv_Jh.js", "/assets/seo-pBpFCWsy.js", "/assets/components-9EGYHTc_.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/user-CFunCRfr.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/finished": { "id": "routes/_app+/finished", "parentId": "routes/_app+/_layout", "path": "finished", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/finished--PGQDzya.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-Bxtz3elt.js", "/assets/loading-Dk0n07O3.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-DIAWAXtT.js", "/assets/misc-BJtHv_Jh.js", "/assets/seo-pBpFCWsy.js", "/assets/progress-DAB3nDa2.js", "/assets/components-9EGYHTc_.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/user-CFunCRfr.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/index": { "id": "routes/_app+/index", "parentId": "routes/_app+/_layout", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/index-oZkQrXic.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-Bxtz3elt.js", "/assets/error-boundary-1-dmC941.js", "/assets/mdx-DIAWAXtT.js", "/assets/misc-BJtHv_Jh.js", "/assets/progress-DAB3nDa2.js", "/assets/components-9EGYHTc_.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-CFunCRfr.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/login": { "id": "routes/_app+/login", "parentId": "routes/_app+/_layout", "path": "login", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/login-pZYDEC_l.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/use-event-source-x59d4R2Z.js", "/assets/button-DQ001ob0.js", "/assets/loading-Dk0n07O3.js", "/assets/product-C1ynnrN_.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/request-info-DCIQLE6H.js", "/assets/components-9EGYHTc_.js", "/assets/misc-BJtHv_Jh.js", "/assets/index-_J-F_Dnc.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js"], "css": [] }, "routes/_app+/support": { "id": "routes/_app+/support", "parentId": "routes/_app+/_layout", "path": "support", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/support-BNS-kEhc.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/components-9EGYHTc_.js"], "css": [] }, "routes/admin+/_layout": { "id": "routes/admin+/_layout", "parentId": "root", "path": "admin", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_layout-gyrNluke.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/tooltip-BgynKV2c.js", "/assets/progress-DAB3nDa2.js", "/assets/components-9EGYHTc_.js", "/assets/pe-ChIwTk8v.js"], "css": [] }, "routes/admin+/apps": { "id": "routes/admin+/apps", "parentId": "routes/admin+/_layout", "path": "apps", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/apps-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/admin+/cache": { "id": "routes/admin+/cache", "parentId": "routes/admin+/_layout", "path": "cache", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/cache-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/apps": { "id": "routes/apps", "parentId": "root", "path": "apps", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/apps-DP2rzg_V.js", "imports": [], "css": [] }, "routes/diff": { "id": "routes/diff", "parentId": "root", "path": "diff", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/diff-CbIF8Oq1.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/diff-C2Hm_DHX.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/components-9EGYHTc_.js", "/assets/accordion-DC885Li1.js", "/assets/tooltip-BgynKV2c.js", "/assets/index-BuA_RWlU.js", "/assets/index-BuoaxPEj.js", "/assets/mdx-DIAWAXtT.js", "/assets/epic-video-Bxtz3elt.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-CFunCRfr.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js", "/assets/revalidation-ws-DU-PzW-_.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/exercises": { "id": "routes/exercises", "parentId": "root", "path": "exercises", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/exercises-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/launch-editor": { "id": "routes/launch-editor", "parentId": "root", "path": "launch-editor", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/launch-editor-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/login-sse": { "id": "routes/login-sse", "parentId": "root", "path": "login-sse", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/login-sse-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/og": { "id": "routes/og", "parentId": "root", "path": "og", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/og-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/onboarding": { "id": "routes/onboarding", "parentId": "root", "path": "onboarding", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/onboarding-BAVmCIKn.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/button-DQ001ob0.js", "/assets/epic-video-Bxtz3elt.js", "/assets/components-9EGYHTc_.js", "/assets/misc-BJtHv_Jh.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-CFunCRfr.js", "/assets/workshop-config-DJY2cXU_.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/processes": { "id": "routes/processes", "parentId": "root", "path": "processes", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/processes-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/progress": { "id": "routes/progress", "parentId": "root", "path": "progress", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/progress-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/robots[.]txt": { "id": "routes/robots[.]txt", "parentId": "root", "path": "robots.txt", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/robots_._txt-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/set-playground": { "id": "routes/set-playground", "parentId": "root", "path": "set-playground", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/set-playground-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/sitemap[.]xml": { "id": "routes/sitemap[.]xml", "parentId": "root", "path": "sitemap.xml", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/sitemap_._xml-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/start": { "id": "routes/start", "parentId": "root", "path": "start", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/start-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/test": { "id": "routes/test", "parentId": "root", "path": "test", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/theme/index": { "id": "routes/theme/index", "parentId": "root", "path": "theme", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/index-DP2rzg_V.js", "imports": [], "css": [] }, "routes/video-player/index": { "id": "routes/video-player/index", "parentId": "root", "path": "video-player", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/index-K6Dvbx-E.js", "imports": [], "css": [] } }, "url": "/assets/manifest-7f4f8707.js", "version": "7f4f8707" };
|
|
11252
11169
|
const mode = "production";
|
|
11253
11170
|
const assetsBuildDirectory = "build/client";
|
|
11254
11171
|
const basename = "/";
|
|
@@ -11497,21 +11414,13 @@ const routes = {
|
|
|
11497
11414
|
caseSensitive: void 0,
|
|
11498
11415
|
module: route29
|
|
11499
11416
|
},
|
|
11500
|
-
"routes/discord.callback": {
|
|
11501
|
-
id: "routes/discord.callback",
|
|
11502
|
-
parentId: "root",
|
|
11503
|
-
path: "discord/callback",
|
|
11504
|
-
index: void 0,
|
|
11505
|
-
caseSensitive: void 0,
|
|
11506
|
-
module: route30
|
|
11507
|
-
},
|
|
11508
11417
|
"routes/exercises": {
|
|
11509
11418
|
id: "routes/exercises",
|
|
11510
11419
|
parentId: "root",
|
|
11511
11420
|
path: "exercises",
|
|
11512
11421
|
index: void 0,
|
|
11513
11422
|
caseSensitive: void 0,
|
|
11514
|
-
module:
|
|
11423
|
+
module: route30
|
|
11515
11424
|
},
|
|
11516
11425
|
"routes/launch-editor": {
|
|
11517
11426
|
id: "routes/launch-editor",
|
|
@@ -11519,7 +11428,7 @@ const routes = {
|
|
|
11519
11428
|
path: "launch-editor",
|
|
11520
11429
|
index: void 0,
|
|
11521
11430
|
caseSensitive: void 0,
|
|
11522
|
-
module:
|
|
11431
|
+
module: route31
|
|
11523
11432
|
},
|
|
11524
11433
|
"routes/login-sse": {
|
|
11525
11434
|
id: "routes/login-sse",
|
|
@@ -11527,7 +11436,7 @@ const routes = {
|
|
|
11527
11436
|
path: "login-sse",
|
|
11528
11437
|
index: void 0,
|
|
11529
11438
|
caseSensitive: void 0,
|
|
11530
|
-
module:
|
|
11439
|
+
module: route32
|
|
11531
11440
|
},
|
|
11532
11441
|
"routes/og": {
|
|
11533
11442
|
id: "routes/og",
|
|
@@ -11535,7 +11444,7 @@ const routes = {
|
|
|
11535
11444
|
path: "og",
|
|
11536
11445
|
index: void 0,
|
|
11537
11446
|
caseSensitive: void 0,
|
|
11538
|
-
module:
|
|
11447
|
+
module: route33
|
|
11539
11448
|
},
|
|
11540
11449
|
"routes/onboarding": {
|
|
11541
11450
|
id: "routes/onboarding",
|
|
@@ -11543,7 +11452,7 @@ const routes = {
|
|
|
11543
11452
|
path: "onboarding",
|
|
11544
11453
|
index: void 0,
|
|
11545
11454
|
caseSensitive: void 0,
|
|
11546
|
-
module:
|
|
11455
|
+
module: route34
|
|
11547
11456
|
},
|
|
11548
11457
|
"routes/processes": {
|
|
11549
11458
|
id: "routes/processes",
|
|
@@ -11551,7 +11460,7 @@ const routes = {
|
|
|
11551
11460
|
path: "processes",
|
|
11552
11461
|
index: void 0,
|
|
11553
11462
|
caseSensitive: void 0,
|
|
11554
|
-
module:
|
|
11463
|
+
module: route35
|
|
11555
11464
|
},
|
|
11556
11465
|
"routes/progress": {
|
|
11557
11466
|
id: "routes/progress",
|
|
@@ -11559,7 +11468,7 @@ const routes = {
|
|
|
11559
11468
|
path: "progress",
|
|
11560
11469
|
index: void 0,
|
|
11561
11470
|
caseSensitive: void 0,
|
|
11562
|
-
module:
|
|
11471
|
+
module: route36
|
|
11563
11472
|
},
|
|
11564
11473
|
"routes/robots[.]txt": {
|
|
11565
11474
|
id: "routes/robots[.]txt",
|
|
@@ -11567,7 +11476,7 @@ const routes = {
|
|
|
11567
11476
|
path: "robots.txt",
|
|
11568
11477
|
index: void 0,
|
|
11569
11478
|
caseSensitive: void 0,
|
|
11570
|
-
module:
|
|
11479
|
+
module: route37
|
|
11571
11480
|
},
|
|
11572
11481
|
"routes/set-playground": {
|
|
11573
11482
|
id: "routes/set-playground",
|
|
@@ -11575,7 +11484,7 @@ const routes = {
|
|
|
11575
11484
|
path: "set-playground",
|
|
11576
11485
|
index: void 0,
|
|
11577
11486
|
caseSensitive: void 0,
|
|
11578
|
-
module:
|
|
11487
|
+
module: route38
|
|
11579
11488
|
},
|
|
11580
11489
|
"routes/sitemap[.]xml": {
|
|
11581
11490
|
id: "routes/sitemap[.]xml",
|
|
@@ -11583,7 +11492,7 @@ const routes = {
|
|
|
11583
11492
|
path: "sitemap.xml",
|
|
11584
11493
|
index: void 0,
|
|
11585
11494
|
caseSensitive: void 0,
|
|
11586
|
-
module:
|
|
11495
|
+
module: route39
|
|
11587
11496
|
},
|
|
11588
11497
|
"routes/start": {
|
|
11589
11498
|
id: "routes/start",
|
|
@@ -11591,7 +11500,7 @@ const routes = {
|
|
|
11591
11500
|
path: "start",
|
|
11592
11501
|
index: void 0,
|
|
11593
11502
|
caseSensitive: void 0,
|
|
11594
|
-
module:
|
|
11503
|
+
module: route40
|
|
11595
11504
|
},
|
|
11596
11505
|
"routes/test": {
|
|
11597
11506
|
id: "routes/test",
|
|
@@ -11599,7 +11508,7 @@ const routes = {
|
|
|
11599
11508
|
path: "test",
|
|
11600
11509
|
index: void 0,
|
|
11601
11510
|
caseSensitive: void 0,
|
|
11602
|
-
module:
|
|
11511
|
+
module: route41
|
|
11603
11512
|
},
|
|
11604
11513
|
"routes/theme/index": {
|
|
11605
11514
|
id: "routes/theme/index",
|
|
@@ -11607,7 +11516,7 @@ const routes = {
|
|
|
11607
11516
|
path: "theme",
|
|
11608
11517
|
index: void 0,
|
|
11609
11518
|
caseSensitive: void 0,
|
|
11610
|
-
module:
|
|
11519
|
+
module: route42
|
|
11611
11520
|
},
|
|
11612
11521
|
"routes/video-player/index": {
|
|
11613
11522
|
id: "routes/video-player/index",
|
|
@@ -11615,7 +11524,7 @@ const routes = {
|
|
|
11615
11524
|
path: "video-player",
|
|
11616
11525
|
index: void 0,
|
|
11617
11526
|
caseSensitive: void 0,
|
|
11618
|
-
module:
|
|
11527
|
+
module: route43
|
|
11619
11528
|
}
|
|
11620
11529
|
};
|
|
11621
11530
|
export {
|