@epic-web/workshop-app 5.2.0 → 5.3.1
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-D6KsriIk.js → _exerciseNumber-Byb05FGg.js} +2 -2
- package/build/client/assets/{_exerciseNumber-D6KsriIk.js.map → _exerciseNumber-Byb05FGg.js.map} +1 -1
- package/build/client/assets/{_exerciseNumber_.finished-DEzaS_Ji.js → _exerciseNumber_.finished-DUqyxjV2.js} +2 -2
- package/build/client/assets/{_exerciseNumber_.finished-DEzaS_Ji.js.map → _exerciseNumber_.finished-DUqyxjV2.js.map} +1 -1
- package/build/client/assets/{_layout-C5yGKUmm.js → _layout-BwDoP7Kv.js} +2 -2
- package/build/client/assets/{_layout-C5yGKUmm.js.map → _layout-BwDoP7Kv.js.map} +1 -1
- package/build/client/assets/_layout-DvQmiuTm.js +6 -0
- package/build/client/assets/_layout-DvQmiuTm.js.map +1 -0
- package/build/client/assets/account-DbdZ0Vhg.js +2 -0
- package/build/client/assets/account-DbdZ0Vhg.js.map +1 -0
- package/build/client/assets/{diff-jlCv3hv0.js → diff-Cmd66hnY.js} +2 -2
- package/build/client/assets/{diff-jlCv3hv0.js.map → diff-Cmd66hnY.js.map} +1 -1
- package/build/client/assets/{diff-assn_bSK.js → diff-CzHloS9Q.js} +2 -2
- package/build/client/assets/{diff-assn_bSK.js.map → diff-CzHloS9Q.js.map} +1 -1
- package/build/client/assets/{discord-CHsbqaqM.js → discord-DGeGrHNb.js} +2 -2
- package/build/client/assets/{discord-CHsbqaqM.js.map → discord-DGeGrHNb.js.map} +1 -1
- package/build/client/assets/discord-arMqZKbH.js +2 -0
- package/build/client/assets/discord-arMqZKbH.js.map +1 -0
- package/build/client/assets/{epic-video-GDpD7_Qt.js → epic-video-Dw5Vkxid.js} +2 -2
- package/build/client/assets/{epic-video-GDpD7_Qt.js.map → epic-video-Dw5Vkxid.js.map} +1 -1
- package/build/client/assets/{finished-DVV0zwmP.js → finished-DbOxW5dc.js} +2 -2
- package/build/client/assets/{finished-DVV0zwmP.js.map → finished-DbOxW5dc.js.map} +1 -1
- package/build/client/assets/{index-KgMLc41c.js → index-Bfqa72Xl.js} +2 -2
- package/build/client/assets/{index-KgMLc41c.js.map → index-Bfqa72Xl.js.map} +1 -1
- package/build/client/assets/{index-CmmC-_8P.js → index-D-V8b9oA.js} +2 -2
- package/build/client/assets/{index-CmmC-_8P.js.map → index-D-V8b9oA.js.map} +1 -1
- package/build/client/assets/{manifest-c9f53a94.js → manifest-0d355395.js} +1 -1
- package/build/client/assets/{mdx-hW1uYjc1.js → mdx-C01HZJEv.js} +2 -2
- package/build/client/assets/{mdx-hW1uYjc1.js.map → mdx-C01HZJEv.js.map} +1 -1
- package/build/client/assets/{onboarding-DCuSqnkZ.js → onboarding-Dk74xvlh.js} +2 -2
- package/build/client/assets/{onboarding-DCuSqnkZ.js.map → onboarding-Dk74xvlh.js.map} +1 -1
- package/build/client/assets/presence-DyppfK2V.js +28 -0
- package/build/client/assets/presence-DyppfK2V.js.map +1 -0
- package/build/client/assets/{root-DojjHZlY.js → root-DCfiv1cO.js} +2 -2
- package/build/client/assets/{root-DojjHZlY.js.map → root-DCfiv1cO.js.map} +1 -1
- package/build/client/assets/{test-CtH75Laz.js → test-D_qZ9Wu9.js} +2 -2
- package/build/client/assets/{test-CtH75Laz.js.map → test-D_qZ9Wu9.js.map} +1 -1
- package/build/client/assets/{tests-CTs57UUU.js → tests-Cmesc4Yz.js} +2 -2
- package/build/client/assets/{tests-CTs57UUU.js.map → tests-Cmesc4Yz.js.map} +1 -1
- package/build/client/assets/user-AF5-S38o.js +2 -0
- package/build/client/assets/user-AF5-S38o.js.map +1 -0
- package/build/server/index.js +141 -20
- package/build/server/index.js.map +1 -1
- package/package.json +4 -4
- package/build/client/assets/_layout-T2hZtl0D.js +0 -6
- package/build/client/assets/_layout-T2hZtl0D.js.map +0 -1
- package/build/client/assets/account-CPFwPYf1.js +0 -2
- package/build/client/assets/account-CPFwPYf1.js.map +0 -1
- package/build/client/assets/discord-DoeazikD.js +0 -2
- package/build/client/assets/discord-DoeazikD.js.map +0 -1
- package/build/client/assets/presence-CdyMdOKk.js +0 -28
- package/build/client/assets/presence-CdyMdOKk.js.map +0 -1
- package/build/client/assets/user-BBryXlM_.js +0 -2
- package/build/client/assets/user-BBryXlM_.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, getDiscordMember,
|
|
9
|
+
import { getPreferences, getAuthInfo, readOnboardingData, getDiscordMember, requireAuthInfo, DiscordMemberSchema, setDiscordMember, deleteDiscordInfo, 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";
|
|
@@ -120,7 +120,11 @@ const partykitRoom = "epic-web-presence";
|
|
|
120
120
|
const partykitBaseUrl = `https://epic-web-presence.kentcdodds.partykit.dev/parties/main/${partykitRoom}`;
|
|
121
121
|
const UserSchema = z.object({
|
|
122
122
|
id: z.string(),
|
|
123
|
+
hasAccess: z.boolean().nullable().optional(),
|
|
124
|
+
// TODO: remove the avatarUrl field once people have updated their workshops
|
|
123
125
|
avatarUrl: z.string().nullable().optional(),
|
|
126
|
+
imageUrlSmall: z.string().nullable().optional(),
|
|
127
|
+
imageUrlLarge: z.string().nullable().optional(),
|
|
124
128
|
name: z.string().nullable().optional(),
|
|
125
129
|
location: z.object({
|
|
126
130
|
workshopTitle: z.string().nullable().optional(),
|
|
@@ -1300,6 +1304,95 @@ async function userHasAccessToWorkshop({
|
|
|
1300
1304
|
}
|
|
1301
1305
|
});
|
|
1302
1306
|
}
|
|
1307
|
+
const UserInfoSchema = z.object({
|
|
1308
|
+
id: z.string(),
|
|
1309
|
+
name: z.string(),
|
|
1310
|
+
email: z.string().email(),
|
|
1311
|
+
image: z.string().nullable(),
|
|
1312
|
+
discordProfile: z.object({
|
|
1313
|
+
avatar: z.string().nullable(),
|
|
1314
|
+
nick: z.string(),
|
|
1315
|
+
user: z.object({
|
|
1316
|
+
id: z.string(),
|
|
1317
|
+
username: z.string(),
|
|
1318
|
+
avatar: z.string(),
|
|
1319
|
+
discriminator: z.string(),
|
|
1320
|
+
global_name: z.string()
|
|
1321
|
+
})
|
|
1322
|
+
}).optional()
|
|
1323
|
+
}).transform((data) => {
|
|
1324
|
+
var _a, _b;
|
|
1325
|
+
return {
|
|
1326
|
+
...data,
|
|
1327
|
+
imageUrlSmall: resizeImageUrl(data.image, { size: 64 }) ?? resolveDiscordAvatar((_a = data.discordProfile) == null ? void 0 : _a.user, {
|
|
1328
|
+
size: 64
|
|
1329
|
+
}) ?? resolveGravatarUrl(data.email, { size: 64 }),
|
|
1330
|
+
imageUrlLarge: resizeImageUrl(data.image, { size: 512 }) ?? resolveDiscordAvatar((_b = data.discordProfile) == null ? void 0 : _b.user, {
|
|
1331
|
+
size: 512
|
|
1332
|
+
}) ?? resolveGravatarUrl(data.email, { size: 512 })
|
|
1333
|
+
};
|
|
1334
|
+
});
|
|
1335
|
+
function resizeImageUrl(url, { size }) {
|
|
1336
|
+
if (!url) return null;
|
|
1337
|
+
const urlObj = new URL(url);
|
|
1338
|
+
urlObj.searchParams.set("size", size.toString());
|
|
1339
|
+
return urlObj.toString();
|
|
1340
|
+
}
|
|
1341
|
+
function resolveGravatarUrl(email, { size }) {
|
|
1342
|
+
if (!email) return null;
|
|
1343
|
+
const hash = md5(email.toLowerCase());
|
|
1344
|
+
const gravatarOptions = new URLSearchParams({
|
|
1345
|
+
size: size.toString(),
|
|
1346
|
+
default: "identicon"
|
|
1347
|
+
});
|
|
1348
|
+
return `https://www.gravatar.com/avatar/${hash}?${gravatarOptions.toString()}`;
|
|
1349
|
+
}
|
|
1350
|
+
function resolveDiscordAvatar(user, { size }) {
|
|
1351
|
+
if (!user) return null;
|
|
1352
|
+
const { avatar, id: userId } = user;
|
|
1353
|
+
if (!avatar) return null;
|
|
1354
|
+
const isGif = avatar.startsWith("a_");
|
|
1355
|
+
const url = new URL(
|
|
1356
|
+
`/avatars/${userId}/${avatar}.${isGif ? "gif" : "png"}`,
|
|
1357
|
+
"https://cdn.discordapp.com"
|
|
1358
|
+
);
|
|
1359
|
+
url.searchParams.set("size", size.toString());
|
|
1360
|
+
return url.toString();
|
|
1361
|
+
}
|
|
1362
|
+
async function getUserInfo({
|
|
1363
|
+
timings,
|
|
1364
|
+
request,
|
|
1365
|
+
forceFresh
|
|
1366
|
+
} = {}) {
|
|
1367
|
+
const authInfo = await getAuthInfo();
|
|
1368
|
+
if (!authInfo) return null;
|
|
1369
|
+
const { tokenSet } = authInfo;
|
|
1370
|
+
const {
|
|
1371
|
+
product: { host }
|
|
1372
|
+
} = getWorkshopConfig();
|
|
1373
|
+
const accessToken = tokenSet.access_token;
|
|
1374
|
+
const url = `https://${host}/oauth/userinfo`;
|
|
1375
|
+
return cachified({
|
|
1376
|
+
key: `${url}:${md5(accessToken)}`,
|
|
1377
|
+
cache: fsCache,
|
|
1378
|
+
request,
|
|
1379
|
+
forceFresh,
|
|
1380
|
+
timings,
|
|
1381
|
+
ttl: 1e3 * 60 * 1,
|
|
1382
|
+
swr: 1e3 * 60 * 60 * 24 * 365,
|
|
1383
|
+
checkValue: UserInfoSchema,
|
|
1384
|
+
async getFreshValue() {
|
|
1385
|
+
const response = await fetch(url, {
|
|
1386
|
+
headers: { authorization: `Bearer ${accessToken}` }
|
|
1387
|
+
});
|
|
1388
|
+
if (!response.ok) {
|
|
1389
|
+
throw new Error(`Failed to fetch user info: ${response.statusText}`);
|
|
1390
|
+
}
|
|
1391
|
+
const data = await response.json();
|
|
1392
|
+
return UserInfoSchema.parse(data);
|
|
1393
|
+
}
|
|
1394
|
+
});
|
|
1395
|
+
}
|
|
1303
1396
|
const PresenceContext = createContext(null);
|
|
1304
1397
|
function usePresencePreferences() {
|
|
1305
1398
|
var _a;
|
|
@@ -1317,6 +1410,7 @@ const ExerciseAppParamsSchema = z.object({
|
|
|
1317
1410
|
});
|
|
1318
1411
|
function usePresenceSocket(user) {
|
|
1319
1412
|
const workshopTitle = useOptionalWorkshopTitle();
|
|
1413
|
+
const { userHasAccess = false } = useRouteLoaderData("root") ?? {};
|
|
1320
1414
|
const requestInfo = useRequestInfo();
|
|
1321
1415
|
const rawParams = useParams();
|
|
1322
1416
|
const prefs = usePresencePreferences();
|
|
@@ -1369,7 +1463,9 @@ function usePresenceSocket(user) {
|
|
|
1369
1463
|
payload: {
|
|
1370
1464
|
id: user.id,
|
|
1371
1465
|
name: user.name,
|
|
1372
|
-
|
|
1466
|
+
hasAccess: userHasAccess,
|
|
1467
|
+
imageUrlSmall: user.imageUrlSmall,
|
|
1468
|
+
imageUrlLarge: user.imageUrlLarge,
|
|
1373
1469
|
location
|
|
1374
1470
|
}
|
|
1375
1471
|
};
|
|
@@ -1385,7 +1481,10 @@ function scoreUsers(location, users) {
|
|
|
1385
1481
|
const scoredUsers = users.map((user) => {
|
|
1386
1482
|
var _a, _b, _c, _d;
|
|
1387
1483
|
let score = 0;
|
|
1388
|
-
const available =
|
|
1484
|
+
const available = 5;
|
|
1485
|
+
if (user.hasAccess) {
|
|
1486
|
+
score += 1;
|
|
1487
|
+
}
|
|
1389
1488
|
if ((location == null ? void 0 : location.workshopTitle) === ((_a = user.location) == null ? void 0 : _a.workshopTitle)) {
|
|
1390
1489
|
score += 1;
|
|
1391
1490
|
if (((_b = location == null ? void 0 : location.exercise) == null ? void 0 : _b.exerciseNumber) && location.exercise.exerciseNumber === ((_d = (_c = user.location) == null ? void 0 : _c.exercise) == null ? void 0 : _d.exerciseNumber)) {
|
|
@@ -1953,8 +2052,13 @@ function useUser() {
|
|
|
1953
2052
|
return user;
|
|
1954
2053
|
}
|
|
1955
2054
|
function useOptionalDiscordMember() {
|
|
2055
|
+
var _a;
|
|
1956
2056
|
const data = useRouteLoaderData("root");
|
|
1957
|
-
return data == null ? void 0 : data.discordMember
|
|
2057
|
+
return (data == null ? void 0 : data.discordMember) ?? (((_a = data == null ? void 0 : data.user) == null ? void 0 : _a.discordProfile) ? {
|
|
2058
|
+
id: data.user.discordProfile.user.id,
|
|
2059
|
+
displayName: data.user.discordProfile.user.global_name,
|
|
2060
|
+
avatarUrl: data.user.imageUrlLarge
|
|
2061
|
+
} : null);
|
|
1958
2062
|
}
|
|
1959
2063
|
function useUserHasAccess() {
|
|
1960
2064
|
const data = useRouteLoaderData("root");
|
|
@@ -2364,8 +2468,17 @@ function FacePile({ isMenuOpened }) {
|
|
|
2364
2468
|
var _a, _b;
|
|
2365
2469
|
const scoreClassNames = getScoreClassNames(score);
|
|
2366
2470
|
const locationLabel = getLocationLabel(user.location);
|
|
2471
|
+
const imageUrl = user.imageUrlSmall || user.avatarUrl;
|
|
2472
|
+
const hasAccess = user.hasAccess;
|
|
2473
|
+
const local = (_b = (_a = user.location) == null ? void 0 : _a.origin) == null ? void 0 : _b.includes("localhost");
|
|
2474
|
+
let doingLabel;
|
|
2475
|
+
if (hasAccess) {
|
|
2476
|
+
doingLabel = local ? "working" : "referencing";
|
|
2477
|
+
} else {
|
|
2478
|
+
doingLabel = local ? "previewing" : "reviewing";
|
|
2479
|
+
}
|
|
2367
2480
|
return /* @__PURE__ */ jsxs(Tooltip, { children: [
|
|
2368
|
-
/* @__PURE__ */ jsx(TooltipTrigger, { asChild: true, children:
|
|
2481
|
+
/* @__PURE__ */ jsx(TooltipTrigger, { asChild: true, children: imageUrl ? /* @__PURE__ */ jsx(
|
|
2369
2482
|
"img",
|
|
2370
2483
|
{
|
|
2371
2484
|
tabIndex: 0,
|
|
@@ -2374,7 +2487,7 @@ function FacePile({ isMenuOpened }) {
|
|
|
2374
2487
|
"h-8 w-8 rounded-full border object-cover",
|
|
2375
2488
|
scoreClassNames
|
|
2376
2489
|
),
|
|
2377
|
-
src:
|
|
2490
|
+
src: imageUrl
|
|
2378
2491
|
}
|
|
2379
2492
|
) : /* @__PURE__ */ jsx(
|
|
2380
2493
|
"div",
|
|
@@ -2392,7 +2505,7 @@ function FacePile({ isMenuOpened }) {
|
|
|
2392
2505
|
/* @__PURE__ */ jsxs("span", { children: [
|
|
2393
2506
|
user.name || `${displayNameShort} Dev`,
|
|
2394
2507
|
" ",
|
|
2395
|
-
locationLabel ? ` is ${
|
|
2508
|
+
locationLabel ? ` is ${doingLabel} ${score === 1 && (loggedInUser == null ? void 0 : loggedInUser.id) !== user.id ? "with you" : ""} on` : null
|
|
2396
2509
|
] }),
|
|
2397
2510
|
(locationLabel == null ? void 0 : locationLabel.line1) ? /* @__PURE__ */ jsx("span", { children: locationLabel.line1 }) : null,
|
|
2398
2511
|
(locationLabel == null ? void 0 : locationLabel.line2) ? /* @__PURE__ */ jsx("span", { children: locationLabel.line2 }) : null
|
|
@@ -2875,11 +2988,11 @@ function MobileNavigation({
|
|
|
2875
2988
|
),
|
|
2876
2989
|
to: "/account",
|
|
2877
2990
|
children: [
|
|
2878
|
-
user.
|
|
2991
|
+
user.imageUrlSmall ? /* @__PURE__ */ jsx(
|
|
2879
2992
|
"img",
|
|
2880
2993
|
{
|
|
2881
2994
|
alt: user.name ?? user.email,
|
|
2882
|
-
src: user.
|
|
2995
|
+
src: user.imageUrlSmall,
|
|
2883
2996
|
className: "h-full rounded-full"
|
|
2884
2997
|
}
|
|
2885
2998
|
) : /* @__PURE__ */ jsx(Icon, { name: "User", className: "flex-shrink-0", size: "lg" }),
|
|
@@ -3182,11 +3295,11 @@ function Navigation({
|
|
|
3182
3295
|
className: "flex h-14 w-full flex-shrink-0 items-center justify-start space-x-3 border-t px-4 py-4 text-center no-underline hover:underline",
|
|
3183
3296
|
to: "/account",
|
|
3184
3297
|
children: [
|
|
3185
|
-
user.
|
|
3298
|
+
user.imageUrlSmall ? /* @__PURE__ */ jsx(
|
|
3186
3299
|
"img",
|
|
3187
3300
|
{
|
|
3188
3301
|
alt: user.name ?? user.email,
|
|
3189
|
-
src: user.
|
|
3302
|
+
src: user.imageUrlSmall,
|
|
3190
3303
|
className: "h-full rounded-full"
|
|
3191
3304
|
}
|
|
3192
3305
|
) : /* @__PURE__ */ jsx(Icon, { name: "User", className: "flex-shrink-0", size: "lg" }),
|
|
@@ -3528,23 +3641,31 @@ function Account() {
|
|
|
3528
3641
|
const discordMember = useOptionalDiscordMember();
|
|
3529
3642
|
const presencePreferences = usePresencePreferences();
|
|
3530
3643
|
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: [
|
|
3531
|
-
/* @__PURE__ */ jsx(
|
|
3644
|
+
user.imageUrlLarge ? /* @__PURE__ */ jsx(
|
|
3532
3645
|
"img",
|
|
3533
3646
|
{
|
|
3534
3647
|
className: "h-36 w-36 rounded-full",
|
|
3535
3648
|
alt: (discordMember == null ? void 0 : discordMember.displayName) ?? user.name ?? user.email,
|
|
3536
|
-
src: user.
|
|
3649
|
+
src: user.imageUrlLarge
|
|
3537
3650
|
}
|
|
3538
|
-
),
|
|
3651
|
+
) : /* @__PURE__ */ jsx(Icon, { name: "User", className: "flex-shrink-0", size: "lg" }),
|
|
3539
3652
|
/* @__PURE__ */ jsx("h1", { className: "mb-1 text-2xl", children: "Your Account" }),
|
|
3540
3653
|
/* @__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}.` }),
|
|
3541
3654
|
discordMember ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
3542
3655
|
/* @__PURE__ */ jsxs("p", { className: "text-center text-gray-700 dark:text-gray-300", children: [
|
|
3543
|
-
"And you are connected to discord as
|
|
3544
|
-
|
|
3545
|
-
|
|
3546
|
-
|
|
3547
|
-
|
|
3656
|
+
"And you are connected to discord as",
|
|
3657
|
+
" ",
|
|
3658
|
+
/* @__PURE__ */ jsx(
|
|
3659
|
+
"a",
|
|
3660
|
+
{
|
|
3661
|
+
href: `https://discord.com/users/${discordMember.id}`,
|
|
3662
|
+
target: "_blank",
|
|
3663
|
+
rel: "noopener noreferrer",
|
|
3664
|
+
className: "underline",
|
|
3665
|
+
children: discordMember.displayName
|
|
3666
|
+
}
|
|
3667
|
+
),
|
|
3668
|
+
"."
|
|
3548
3669
|
] }),
|
|
3549
3670
|
/* @__PURE__ */ jsxs("div", { className: "flex justify-center gap-2", children: [
|
|
3550
3671
|
/* @__PURE__ */ jsx(disconnectFetcher.Form, { method: "post", children: /* @__PURE__ */ jsx(Button, { varient: "mono", name: "intent", value: "disconnect-discord", children: "Disconnect Discord" }) }),
|
|
@@ -11131,7 +11252,7 @@ const route40 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePrope
|
|
|
11131
11252
|
__proto__: null,
|
|
11132
11253
|
loader
|
|
11133
11254
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
11134
|
-
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-DojjHZlY.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-CdyMdOKk.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-T2hZtl0D.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-BBryXlM_.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/presence-CdyMdOKk.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-CPFwPYf1.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/button-DQ001ob0.js", "/assets/misc-BJtHv_Jh.js", "/assets/tooltip-BgynKV2c.js", "/assets/user-BBryXlM_.js", "/assets/presence-CdyMdOKk.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-DoeazikD.js", "imports": ["/assets/discord-CHsbqaqM.js", "/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/components-9EGYHTc_.js", "/assets/user-BBryXlM_.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-D6KsriIk.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-hW1uYjc1.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-BBryXlM_.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-C5yGKUmm.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-hW1uYjc1.js", "/assets/progress-DAB3nDa2.js", "/assets/set-playground-S_rIwJAa.js", "/assets/seo-pBpFCWsy.js", "/assets/misc-BJtHv_Jh.js", "/assets/epic-video-GDpD7_Qt.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-BBryXlM_.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-CmmC-_8P.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/tooltip-BgynKV2c.js", "/assets/index-BuA_RWlU.js", "/assets/misc-BJtHv_Jh.js", "/assets/diff-assn_bSK.js", "/assets/error-boundary-1-dmC941.js", "/assets/loading-Dk0n07O3.js", "/assets/discord-CHsbqaqM.js", "/assets/components-9EGYHTc_.js", "/assets/index-DRH72MzK.js", "/assets/set-playground-S_rIwJAa.js", "/assets/tests-CTs57UUU.js", "/assets/preview-CW_12I0i.js", "/assets/index-BuoaxPEj.js", "/assets/accordion-DC885Li1.js", "/assets/mdx-hW1uYjc1.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/pe-ChIwTk8v.js", "/assets/user-BBryXlM_.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-CtH75Laz.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/tests-CTs57UUU.js", "/assets/components-9EGYHTc_.js", "/assets/epic-video-GDpD7_Qt.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-BBryXlM_.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-DEzaS_Ji.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/loading-Dk0n07O3.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-hW1uYjc1.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-BBryXlM_.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-DVV0zwmP.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/loading-Dk0n07O3.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-hW1uYjc1.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-BBryXlM_.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-KgMLc41c.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/error-boundary-1-dmC941.js", "/assets/mdx-hW1uYjc1.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-BBryXlM_.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-jlCv3hv0.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/diff-assn_bSK.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-hW1uYjc1.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-BBryXlM_.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-DCuSqnkZ.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/button-DQ001ob0.js", "/assets/epic-video-GDpD7_Qt.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-BBryXlM_.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-c9f53a94.js", "version": "c9f53a94" };
|
|
11255
|
+
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-DvQmiuTm.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-AF5-S38o.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-DbdZ0Vhg.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/button-DQ001ob0.js", "/assets/misc-BJtHv_Jh.js", "/assets/tooltip-BgynKV2c.js", "/assets/user-AF5-S38o.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-arMqZKbH.js", "imports": ["/assets/discord-DGeGrHNb.js", "/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/components-9EGYHTc_.js", "/assets/user-AF5-S38o.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-Byb05FGg.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-Dw5Vkxid.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-C01HZJEv.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-AF5-S38o.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-BwDoP7Kv.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-C01HZJEv.js", "/assets/progress-DAB3nDa2.js", "/assets/set-playground-S_rIwJAa.js", "/assets/seo-pBpFCWsy.js", "/assets/misc-BJtHv_Jh.js", "/assets/epic-video-Dw5Vkxid.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-AF5-S38o.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-D-V8b9oA.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/tooltip-BgynKV2c.js", "/assets/index-BuA_RWlU.js", "/assets/misc-BJtHv_Jh.js", "/assets/diff-CzHloS9Q.js", "/assets/error-boundary-1-dmC941.js", "/assets/loading-Dk0n07O3.js", "/assets/discord-DGeGrHNb.js", "/assets/components-9EGYHTc_.js", "/assets/index-DRH72MzK.js", "/assets/set-playground-S_rIwJAa.js", "/assets/tests-Cmesc4Yz.js", "/assets/preview-CW_12I0i.js", "/assets/index-BuoaxPEj.js", "/assets/accordion-DC885Li1.js", "/assets/mdx-C01HZJEv.js", "/assets/epic-video-Dw5Vkxid.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/pe-ChIwTk8v.js", "/assets/user-AF5-S38o.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-D_qZ9Wu9.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/tests-Cmesc4Yz.js", "/assets/components-9EGYHTc_.js", "/assets/epic-video-Dw5Vkxid.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-AF5-S38o.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-DUqyxjV2.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-Dw5Vkxid.js", "/assets/loading-Dk0n07O3.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-C01HZJEv.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-AF5-S38o.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-DbOxW5dc.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-Dw5Vkxid.js", "/assets/loading-Dk0n07O3.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-C01HZJEv.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-AF5-S38o.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-Bfqa72Xl.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-Dw5Vkxid.js", "/assets/error-boundary-1-dmC941.js", "/assets/mdx-C01HZJEv.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-AF5-S38o.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-Cmd66hnY.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/diff-CzHloS9Q.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-C01HZJEv.js", "/assets/epic-video-Dw5Vkxid.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-AF5-S38o.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-Dk74xvlh.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/button-DQ001ob0.js", "/assets/epic-video-Dw5Vkxid.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-AF5-S38o.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-0d355395.js", "version": "0d355395" };
|
|
11135
11256
|
const mode = "production";
|
|
11136
11257
|
const assetsBuildDirectory = "build/client";
|
|
11137
11258
|
const basename = "/";
|