@epic-web/workshop-app 5.7.1 → 5.8.0
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/{_-CjjFMNGC.js → _-Dn1a0zwA.js} +2 -2
- package/build/client/assets/{_-CjjFMNGC.js.map → _-Dn1a0zwA.js.map} +1 -1
- package/build/client/assets/_exerciseNumber-BVCFK83o.js +2 -0
- package/build/client/assets/{_exerciseNumber-CqkGzsgV.js.map → _exerciseNumber-BVCFK83o.js.map} +1 -1
- package/build/client/assets/{_exerciseNumber_._stepNumber-BNWGPi9m.js → _exerciseNumber_._stepNumber-CAxJdIJe.js} +2 -2
- package/build/client/assets/{_exerciseNumber_._stepNumber-BNWGPi9m.js.map → _exerciseNumber_._stepNumber-CAxJdIJe.js.map} +1 -1
- package/build/client/assets/_exerciseNumber_.finished-DYebDhaK.js +2 -0
- package/build/client/assets/_exerciseNumber_.finished-DYebDhaK.js.map +1 -0
- package/build/client/assets/_layout-CyDc9BN3.js +6 -0
- package/build/client/assets/_layout-CyDc9BN3.js.map +1 -0
- package/build/client/assets/_layout-cu1Of_4G.js +2 -0
- package/build/client/assets/_layout-cu1Of_4G.js.map +1 -0
- package/build/client/assets/{accordion-C-sW--in.js → accordion-e-d1HozW.js} +2 -2
- package/build/client/assets/{accordion-C-sW--in.js.map → accordion-e-d1HozW.js.map} +1 -1
- package/build/client/assets/{account-Cc968svU.js → account-HU5gUm5Q.js} +2 -2
- package/build/client/assets/{account-Cc968svU.js.map → account-HU5gUm5Q.js.map} +1 -1
- package/build/client/assets/app-CWEUg7hY.js +2 -0
- package/build/client/assets/{app-BOqXK9hi.js.map → app-CWEUg7hY.js.map} +1 -1
- package/build/client/assets/{button-BS845Tjo.js → button-Hft_V1bH.js} +2 -2
- package/build/client/assets/{button-BS845Tjo.js.map → button-Hft_V1bH.js.map} +1 -1
- package/build/client/assets/diff-B_FrL8Cl.js +2 -0
- package/build/client/assets/diff-B_FrL8Cl.js.map +1 -0
- package/build/client/assets/diff-DmVm_N6W.js +2 -0
- package/build/client/assets/{diff-D0e_PrB7.js.map → diff-DmVm_N6W.js.map} +1 -1
- package/build/client/assets/{discord-BfP_Rny5.js → discord-C0ZkL9cR.js} +2 -2
- package/build/client/assets/{discord-BfP_Rny5.js.map → discord-C0ZkL9cR.js.map} +1 -1
- package/build/client/assets/discord-D6ZwxiZG.js +2 -0
- package/build/client/assets/discord-D6ZwxiZG.js.map +1 -0
- package/build/client/assets/{epic-video-qHKPWPt1.js → epic-video-75U1kyqf.js} +121 -121
- package/build/client/assets/{epic-video-qHKPWPt1.js.map → epic-video-75U1kyqf.js.map} +1 -1
- package/build/client/assets/{error-boundary-Beul7lrT.js → error-boundary-IvG0vuiP.js} +2 -2
- package/build/client/assets/{error-boundary-Beul7lrT.js.map → error-boundary-IvG0vuiP.js.map} +1 -1
- package/build/client/assets/finished-DDnBGcs8.js +2 -0
- package/build/client/assets/finished-DDnBGcs8.js.map +1 -0
- package/build/client/assets/{index-BOQWfIQC.js → index-9OWT3nC-.js} +3 -3
- package/build/client/assets/{index-BOQWfIQC.js.map → index-9OWT3nC-.js.map} +1 -1
- package/build/client/assets/{index-cZQeGrqL.js → index-BzN2y10J.js} +2 -2
- package/build/client/assets/{index-cZQeGrqL.js.map → index-BzN2y10J.js.map} +1 -1
- package/build/client/assets/index-CQEwwWTS.js +2 -0
- package/build/client/assets/{index-oED4uZLa.js.map → index-CQEwwWTS.js.map} +1 -1
- package/build/client/assets/index-DJhl_Q5J.js +2 -0
- package/build/client/assets/index-DJhl_Q5J.js.map +1 -0
- package/build/client/assets/{index-BHwOR8R1.js → index-c1IJ5ZX5.js} +2 -2
- package/build/client/assets/{index-BHwOR8R1.js.map → index-c1IJ5ZX5.js.map} +1 -1
- package/build/client/assets/{index-BPegC-d3.js → index-t6AA12_S.js} +2 -2
- package/build/client/assets/{index-BPegC-d3.js.map → index-t6AA12_S.js.map} +1 -1
- package/build/client/assets/{loading-C2wPVvQw.js → loading-DsHhjqzj.js} +2 -2
- package/build/client/assets/{loading-C2wPVvQw.js.map → loading-DsHhjqzj.js.map} +1 -1
- package/build/client/assets/{login-DoU7gifi.js → login-DJlKIofe.js} +2 -2
- package/build/client/assets/{login-DoU7gifi.js.map → login-DJlKIofe.js.map} +1 -1
- package/build/client/assets/manifest-3da21166.js +1 -0
- package/build/client/assets/{mdx-CsS30JUo.js → mdx-CsRMuEw9.js} +2 -2
- package/build/client/assets/{mdx-CsS30JUo.js.map → mdx-CsRMuEw9.js.map} +1 -1
- package/build/client/assets/{misc-BtjCSy-T.js → misc-DoGPlBur.js} +2 -2
- package/build/client/assets/{misc-BtjCSy-T.js.map → misc-DoGPlBur.js.map} +1 -1
- package/build/client/assets/{nav-chevrons-2hLTwAZb.js → nav-chevrons-CxWSSbTo.js} +2 -2
- package/build/client/assets/{nav-chevrons-2hLTwAZb.js.map → nav-chevrons-CxWSSbTo.js.map} +1 -1
- package/build/client/assets/onboarding-DssP5iXB.js +2 -0
- package/build/client/assets/{onboarding-Cu6eD7KS.js.map → onboarding-DssP5iXB.js.map} +1 -1
- package/build/client/assets/online-D33oijLr.js +2 -0
- package/build/client/assets/online-D33oijLr.js.map +1 -0
- package/build/client/assets/{preferences-br0VSK51.js → preferences-BIt5-Lgy.js} +2 -2
- package/build/client/assets/{preferences-br0VSK51.js.map → preferences-BIt5-Lgy.js.map} +1 -1
- package/build/client/assets/{presence-CrYBA3ta.js → presence-BsqTpSt4.js} +5 -5
- package/build/client/assets/{presence-CrYBA3ta.js.map → presence-BsqTpSt4.js.map} +1 -1
- package/build/client/assets/{preview-C2y4Z0qO.js → preview-CZwnFQrx.js} +2 -2
- package/build/client/assets/{preview-C2y4Z0qO.js.map → preview-CZwnFQrx.js.map} +1 -1
- package/build/client/assets/{product-gqq_YQBW.js → product-CVL4Z9c0.js} +2 -2
- package/build/client/assets/{product-gqq_YQBW.js.map → product-CVL4Z9c0.js.map} +1 -1
- package/build/client/assets/{progress-D-HsH4j3.js → progress-Dj5cyA_v.js} +2 -2
- package/build/client/assets/{progress-D-HsH4j3.js.map → progress-Dj5cyA_v.js.map} +1 -1
- package/build/client/assets/{progress-bar-CTPCfvDi.js → progress-bar-Dln7epYZ.js} +2 -2
- package/build/client/assets/{progress-bar-CTPCfvDi.js.map → progress-bar-Dln7epYZ.js.map} +1 -1
- package/build/client/assets/{revalidation-ws-DYaJNyw1.js → revalidation-ws-Bes2l3ma.js} +2 -2
- package/build/client/assets/{revalidation-ws-DYaJNyw1.js.map → revalidation-ws-Bes2l3ma.js.map} +1 -1
- package/build/client/assets/{root-C1pLsthM.js → root-Bb8fIt2z.js} +3 -3
- package/build/client/assets/{root-C1pLsthM.js.map → root-Bb8fIt2z.js.map} +1 -1
- package/build/client/assets/{set-playground-DQzAhC0t.js → set-playground-DOFTHWzE.js} +2 -2
- package/build/client/assets/{set-playground-DQzAhC0t.js.map → set-playground-DOFTHWzE.js.map} +1 -1
- package/build/client/assets/tailwind-4klXLdJc.css +1 -0
- package/build/client/assets/test-BwM0E8Mk.js +2 -0
- package/build/client/assets/{test-CDWRwwO-.js.map → test-BwM0E8Mk.js.map} +1 -1
- package/build/client/assets/{tests-LWW8wCYZ.js → tests-CDgBzBBo.js} +3 -3
- package/build/client/assets/tests-CDgBzBBo.js.map +1 -0
- package/build/client/assets/{tooltip-Bp9KHnLy.js → tooltip-DT9kZxPw.js} +2 -2
- package/build/client/assets/{tooltip-Bp9KHnLy.js.map → tooltip-DT9kZxPw.js.map} +1 -1
- package/build/server/index.js +161 -54
- package/build/server/index.js.map +1 -1
- package/dist/server/index.js +2 -0
- package/package.json +3 -3
- package/build/client/assets/_exerciseNumber-CqkGzsgV.js +0 -2
- package/build/client/assets/_exerciseNumber_.finished-CdNhLhKg.js +0 -2
- package/build/client/assets/_exerciseNumber_.finished-CdNhLhKg.js.map +0 -1
- package/build/client/assets/_layout-BMa5nZcJ.js +0 -2
- package/build/client/assets/_layout-BMa5nZcJ.js.map +0 -1
- package/build/client/assets/_layout-Muw3ERYT.js +0 -6
- package/build/client/assets/_layout-Muw3ERYT.js.map +0 -1
- package/build/client/assets/app-BOqXK9hi.js +0 -2
- package/build/client/assets/diff-D0e_PrB7.js +0 -2
- package/build/client/assets/diff-DtvfyjPI.js +0 -2
- package/build/client/assets/diff-DtvfyjPI.js.map +0 -1
- package/build/client/assets/discord-DILzAZN8.js +0 -2
- package/build/client/assets/discord-DILzAZN8.js.map +0 -1
- package/build/client/assets/finished-DUKfL220.js +0 -2
- package/build/client/assets/finished-DUKfL220.js.map +0 -1
- package/build/client/assets/index-DbCT6N5p.js +0 -2
- package/build/client/assets/index-DbCT6N5p.js.map +0 -1
- package/build/client/assets/index-oED4uZLa.js +0 -2
- package/build/client/assets/manifest-3096dc61.js +0 -1
- package/build/client/assets/onboarding-Cu6eD7KS.js +0 -2
- package/build/client/assets/tailwind-CRGTilRc.css +0 -1
- package/build/client/assets/test-CDWRwwO-.js +0 -2
- package/build/client/assets/tests-LWW8wCYZ.js.map +0 -1
package/build/server/index.js
CHANGED
|
@@ -14,6 +14,7 @@ import { z } from "zod";
|
|
|
14
14
|
import { getApps, getExercises, 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, getWorkshopFinished, getWorkshopInstructions } from "@epic-web/workshop-utils/apps.server";
|
|
15
15
|
import { getEnv } from "@epic-web/workshop-utils/env.server";
|
|
16
16
|
import { makeTimings, getServerTimeHeader, combineServerTimings, time } from "@epic-web/workshop-utils/timing.server";
|
|
17
|
+
import { checkConnectionCached } from "@epic-web/workshop-utils/utils.server";
|
|
17
18
|
import { cssBundleHref } from "@remix-run/css-bundle";
|
|
18
19
|
import { promiseHash } from "remix-utils/promise";
|
|
19
20
|
import { useSpinDelay } from "spin-delay";
|
|
@@ -22,7 +23,7 @@ import { ClientOnly } from "remix-utils/client-only";
|
|
|
22
23
|
import slugify from "@sindresorhus/slugify";
|
|
23
24
|
import clsx$1, { clsx } from "clsx";
|
|
24
25
|
import * as React from "react";
|
|
25
|
-
import React__default, { useRef, useEffect, useMemo, useState, createContext, useContext, useCallback,
|
|
26
|
+
import React__default, { useRef, useEffect, useMemo, useState, useSyncExternalStore, createContext, useContext, useCallback, forwardRef, useImperativeHandle, Suspense, useReducer } from "react";
|
|
26
27
|
import { extendTailwindMerge } from "tailwind-merge";
|
|
27
28
|
import { Toaster, toast } from "sonner";
|
|
28
29
|
import * as TooltipPrimitive from "@radix-ui/react-tooltip";
|
|
@@ -160,6 +161,7 @@ async function getPresentUsers({
|
|
|
160
161
|
request,
|
|
161
162
|
ttl: 1e3 * 2,
|
|
162
163
|
swr: 1e3 * 60 * 60 * 24,
|
|
164
|
+
offlineFallbackValue: { users: [] },
|
|
163
165
|
checkValue: PresenceSchema,
|
|
164
166
|
async getFreshValue(context) {
|
|
165
167
|
try {
|
|
@@ -385,7 +387,7 @@ const extendedTheme = {
|
|
|
385
387
|
background: "hsl(var(--background))",
|
|
386
388
|
highlight: "hsl(var(--highlight))",
|
|
387
389
|
foreground: "hsl(var(--foreground))",
|
|
388
|
-
"foreground-
|
|
390
|
+
"foreground-destructive": "hsl(var(--foreground-destructive))",
|
|
389
391
|
scrollbar: "var(--scrollbar)",
|
|
390
392
|
primary: {
|
|
391
393
|
DEFAULT: "hsl(var(--primary))",
|
|
@@ -807,7 +809,7 @@ function ErrorList({
|
|
|
807
809
|
}) {
|
|
808
810
|
const errorsToRender = errors == null ? void 0 : errors.filter(Boolean);
|
|
809
811
|
if (!(errorsToRender == null ? void 0 : errorsToRender.length)) return null;
|
|
810
|
-
return /* @__PURE__ */ jsx("ul", { id, className: "space-y-1", children: errorsToRender.map((e) => /* @__PURE__ */ jsx("li", { className: "text-
|
|
812
|
+
return /* @__PURE__ */ jsx("ul", { id, className: "space-y-1", children: errorsToRender.map((e) => /* @__PURE__ */ jsx("li", { className: "text-foreground-destructive text-[10px]", children: e }, e)) });
|
|
811
813
|
}
|
|
812
814
|
const PE_REDIRECT_INPUT_NAME = "__PE_redirectTo";
|
|
813
815
|
function usePERedirectInput() {
|
|
@@ -928,7 +930,7 @@ const route45 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePrope
|
|
|
928
930
|
useTheme
|
|
929
931
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
930
932
|
const appStylesheetUrl = "/assets/app-C3e6tFRf.css";
|
|
931
|
-
const tailwindStylesheetUrl = "/assets/tailwind-
|
|
933
|
+
const tailwindStylesheetUrl = "/assets/tailwind-4klXLdJc.css";
|
|
932
934
|
const cookieName = "EpicShop_confetti";
|
|
933
935
|
function getConfetti(request) {
|
|
934
936
|
const cookieHeader = request.headers.get("cookie");
|
|
@@ -946,6 +948,19 @@ function createConfettiHeaders(value = String(Date.now())) {
|
|
|
946
948
|
})
|
|
947
949
|
});
|
|
948
950
|
}
|
|
951
|
+
function getSnapshot() {
|
|
952
|
+
return window.navigator.onLine;
|
|
953
|
+
}
|
|
954
|
+
function subscribe(callback) {
|
|
955
|
+
window.addEventListener("online", callback);
|
|
956
|
+
return () => {
|
|
957
|
+
window.removeEventListener("online", callback);
|
|
958
|
+
};
|
|
959
|
+
}
|
|
960
|
+
function useIsOnline() {
|
|
961
|
+
const requestInfo = useRequestInfo();
|
|
962
|
+
return useSyncExternalStore(subscribe, getSnapshot, () => requestInfo.online);
|
|
963
|
+
}
|
|
949
964
|
const PresenceContext = createContext(null);
|
|
950
965
|
function usePresencePreferences() {
|
|
951
966
|
var _a;
|
|
@@ -987,14 +1002,33 @@ function useFirstCallDelayedCallback(cb, delay) {
|
|
|
987
1002
|
);
|
|
988
1003
|
return delayedCb;
|
|
989
1004
|
}
|
|
990
|
-
function
|
|
1005
|
+
function useUsersLocation() {
|
|
991
1006
|
const workshopTitle = useOptionalWorkshopTitle();
|
|
992
|
-
const { userHasAccess = false, userId } = useRouteLoaderData("root") ?? {};
|
|
993
1007
|
const requestInfo = useRequestInfo();
|
|
994
1008
|
const rawParams = useParams();
|
|
1009
|
+
const paramsResult = ExerciseAppParamsSchema.safeParse(rawParams);
|
|
1010
|
+
const params = paramsResult.success ? paramsResult.data : null;
|
|
1011
|
+
return {
|
|
1012
|
+
workshopTitle,
|
|
1013
|
+
origin: requestInfo.origin,
|
|
1014
|
+
...params ? {
|
|
1015
|
+
exercise: {
|
|
1016
|
+
type: params.type,
|
|
1017
|
+
exerciseNumber: params.exerciseNumber,
|
|
1018
|
+
stepNumber: params.stepNumber
|
|
1019
|
+
}
|
|
1020
|
+
} : null
|
|
1021
|
+
};
|
|
1022
|
+
}
|
|
1023
|
+
function usePresenceSocket(user) {
|
|
995
1024
|
const prefs = usePresencePreferences();
|
|
996
|
-
const
|
|
997
|
-
|
|
1025
|
+
const {
|
|
1026
|
+
userHasAccess = false,
|
|
1027
|
+
userId,
|
|
1028
|
+
presence
|
|
1029
|
+
} = useRouteLoaderData("root") ?? {};
|
|
1030
|
+
const [users, setUsers] = useState((presence == null ? void 0 : presence.users) ?? []);
|
|
1031
|
+
const usersLocation = useUsersLocation();
|
|
998
1032
|
const handleMessage = useFirstCallDelayedCallback((evt) => {
|
|
999
1033
|
const messageResult = MessageSchema.safeParse(JSON.parse(String(evt.data)));
|
|
1000
1034
|
if (!messageResult.success) return;
|
|
@@ -1007,19 +1041,6 @@ function usePresenceSocket(user) {
|
|
|
1007
1041
|
room: partykitRoom,
|
|
1008
1042
|
onMessage: handleMessage
|
|
1009
1043
|
});
|
|
1010
|
-
const paramsResult = ExerciseAppParamsSchema.safeParse(rawParams);
|
|
1011
|
-
const params = paramsResult.success ? paramsResult.data : null;
|
|
1012
|
-
const location = {
|
|
1013
|
-
workshopTitle,
|
|
1014
|
-
origin: requestInfo.origin,
|
|
1015
|
-
...params ? {
|
|
1016
|
-
exercise: {
|
|
1017
|
-
type: params.type,
|
|
1018
|
-
exerciseNumber: params.exerciseNumber,
|
|
1019
|
-
stepNumber: params.stepNumber
|
|
1020
|
-
}
|
|
1021
|
-
} : null
|
|
1022
|
-
};
|
|
1023
1044
|
let message = null;
|
|
1024
1045
|
if (user) {
|
|
1025
1046
|
if (prefs == null ? void 0 : prefs.optOut) {
|
|
@@ -1033,18 +1054,24 @@ function usePresenceSocket(user) {
|
|
|
1033
1054
|
hasAccess: userHasAccess,
|
|
1034
1055
|
imageUrlSmall: user.imageUrlSmall,
|
|
1035
1056
|
imageUrlLarge: user.imageUrlLarge,
|
|
1036
|
-
location
|
|
1057
|
+
location: usersLocation
|
|
1037
1058
|
}
|
|
1038
1059
|
};
|
|
1039
1060
|
}
|
|
1040
1061
|
} else if (userId == null ? void 0 : userId.id) {
|
|
1041
|
-
message = {
|
|
1062
|
+
message = {
|
|
1063
|
+
type: "add-user",
|
|
1064
|
+
payload: { id: userId.id, location: usersLocation }
|
|
1065
|
+
};
|
|
1042
1066
|
}
|
|
1043
1067
|
const messageJson = message ? JSON.stringify(message) : null;
|
|
1044
1068
|
useEffect(() => {
|
|
1045
1069
|
if (messageJson) socket.send(messageJson);
|
|
1046
1070
|
}, [messageJson, socket]);
|
|
1047
|
-
const scoredUsers = scoreUsers(
|
|
1071
|
+
const scoredUsers = scoreUsers(
|
|
1072
|
+
{ id: userId == null ? void 0 : userId.id, location: usersLocation },
|
|
1073
|
+
users
|
|
1074
|
+
);
|
|
1048
1075
|
return { users: scoredUsers };
|
|
1049
1076
|
}
|
|
1050
1077
|
function scoreUsers(user, users) {
|
|
@@ -1077,12 +1104,42 @@ function scoreUsers(user, users) {
|
|
|
1077
1104
|
return a.score > b.score ? -1 : 1;
|
|
1078
1105
|
});
|
|
1079
1106
|
}
|
|
1080
|
-
function
|
|
1107
|
+
function PresenceOnline({
|
|
1081
1108
|
user,
|
|
1082
1109
|
children
|
|
1083
1110
|
}) {
|
|
1084
1111
|
return /* @__PURE__ */ jsx(PresenceContext.Provider, { value: usePresenceSocket(user), children });
|
|
1085
1112
|
}
|
|
1113
|
+
function PresenceOffline({
|
|
1114
|
+
user,
|
|
1115
|
+
children
|
|
1116
|
+
}) {
|
|
1117
|
+
const usersLocation = useUsersLocation();
|
|
1118
|
+
const { presence } = useRouteLoaderData("root") ?? {};
|
|
1119
|
+
return /* @__PURE__ */ jsx(
|
|
1120
|
+
PresenceContext.Provider,
|
|
1121
|
+
{
|
|
1122
|
+
value: {
|
|
1123
|
+
users: scoreUsers(
|
|
1124
|
+
{ id: user == null ? void 0 : user.id, location: usersLocation },
|
|
1125
|
+
(presence == null ? void 0 : presence.users) ?? []
|
|
1126
|
+
)
|
|
1127
|
+
},
|
|
1128
|
+
children
|
|
1129
|
+
}
|
|
1130
|
+
);
|
|
1131
|
+
}
|
|
1132
|
+
function Presence({
|
|
1133
|
+
user,
|
|
1134
|
+
children
|
|
1135
|
+
}) {
|
|
1136
|
+
const isOnline = useIsOnline();
|
|
1137
|
+
if (isOnline) {
|
|
1138
|
+
return /* @__PURE__ */ jsx(PresenceOnline, { user, children });
|
|
1139
|
+
} else {
|
|
1140
|
+
return /* @__PURE__ */ jsx(PresenceOffline, { user, children });
|
|
1141
|
+
}
|
|
1142
|
+
}
|
|
1086
1143
|
function usePresence() {
|
|
1087
1144
|
const presence = useContext(PresenceContext);
|
|
1088
1145
|
if (!presence) {
|
|
@@ -1214,6 +1271,7 @@ async function loader$y({ request }) {
|
|
|
1214
1271
|
const theme = getTheme(request);
|
|
1215
1272
|
const { confettiId, headers: confettiHeaders } = getConfetti(request);
|
|
1216
1273
|
const { toast: toast2, headers: toastHeaders } = await getToast(request);
|
|
1274
|
+
const isOnlinePromise = checkConnectionCached({ request, timings });
|
|
1217
1275
|
const asyncStuff = await promiseHash({
|
|
1218
1276
|
userId: getUserId({ request }),
|
|
1219
1277
|
preferences: getPreferences(),
|
|
@@ -1252,7 +1310,8 @@ async function loader$y({ request }) {
|
|
|
1252
1310
|
hints: getHints(request),
|
|
1253
1311
|
path: new URL(request.url).pathname,
|
|
1254
1312
|
session: { theme },
|
|
1255
|
-
separator: path.sep
|
|
1313
|
+
separator: path.sep,
|
|
1314
|
+
online: await isOnlinePromise
|
|
1256
1315
|
},
|
|
1257
1316
|
toast: toast2,
|
|
1258
1317
|
confettiId,
|
|
@@ -1385,10 +1444,10 @@ const route1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProper
|
|
|
1385
1444
|
loader: loader$x
|
|
1386
1445
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
1387
1446
|
function makeMediaQueryStore(mediaQuery, serverSnapshot) {
|
|
1388
|
-
function
|
|
1447
|
+
function getSnapshot2() {
|
|
1389
1448
|
return window.matchMedia(mediaQuery).matches;
|
|
1390
1449
|
}
|
|
1391
|
-
function
|
|
1450
|
+
function subscribe2(callback) {
|
|
1392
1451
|
const mediaQueryList = window.matchMedia(mediaQuery);
|
|
1393
1452
|
mediaQueryList.addEventListener("change", callback);
|
|
1394
1453
|
return () => {
|
|
@@ -1396,7 +1455,7 @@ function makeMediaQueryStore(mediaQuery, serverSnapshot) {
|
|
|
1396
1455
|
};
|
|
1397
1456
|
}
|
|
1398
1457
|
return function useMediaQuery() {
|
|
1399
|
-
return useSyncExternalStore(
|
|
1458
|
+
return useSyncExternalStore(subscribe2, getSnapshot2, () => serverSnapshot);
|
|
1400
1459
|
};
|
|
1401
1460
|
}
|
|
1402
1461
|
function useWorkshopConfig() {
|
|
@@ -2196,7 +2255,7 @@ function NoUserBanner() {
|
|
|
2196
2255
|
` for full experience.`
|
|
2197
2256
|
] }),
|
|
2198
2257
|
" "
|
|
2199
|
-
] }) : /* @__PURE__ */ jsxs("div", { children: [
|
|
2258
|
+
] }) : userHasAccess ? /* @__PURE__ */ jsxs("div", { children: [
|
|
2200
2259
|
/* @__PURE__ */ jsx(Link, { to: "/login", className: "underline", children: "Login" }),
|
|
2201
2260
|
" ",
|
|
2202
2261
|
"or",
|
|
@@ -2204,7 +2263,7 @@ function NoUserBanner() {
|
|
|
2204
2263
|
/* @__PURE__ */ jsx("a", { href: `https://${host}/login`, className: "underline", children: "join for free" }),
|
|
2205
2264
|
" ",
|
|
2206
2265
|
"for the full experience."
|
|
2207
|
-
] }) });
|
|
2266
|
+
] }) : null });
|
|
2208
2267
|
return /* @__PURE__ */ jsx("div", { className: "z-10 flex h-16 items-center justify-between border-b bg-gradient-to-tr from-blue-500 to-indigo-500 pl-4 text-white", children: isWide ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2209
2268
|
/* @__PURE__ */ jsxs("div", { className: "hidden flex-1 flex-wrap items-center gap-4 sm:flex", children: [
|
|
2210
2269
|
/* @__PURE__ */ jsx(Logo, { size: "lg", style: "monochrome" }),
|
|
@@ -2276,7 +2335,7 @@ function NoUserBanner() {
|
|
|
2276
2335
|
] })
|
|
2277
2336
|
] })
|
|
2278
2337
|
] }),
|
|
2279
|
-
/* @__PURE__ */ jsxs("div", { className: "flex h-full items-center", children: [
|
|
2338
|
+
userHasAccess ? null : /* @__PURE__ */ jsxs("div", { className: "flex h-full items-center", children: [
|
|
2280
2339
|
/* @__PURE__ */ jsxs(
|
|
2281
2340
|
Link,
|
|
2282
2341
|
{
|
|
@@ -2351,6 +2410,7 @@ function MobileNavigation({
|
|
|
2351
2410
|
const user = useOptionalUser();
|
|
2352
2411
|
const nextExerciseRoute = useNextExerciseRoute();
|
|
2353
2412
|
const params = useParams();
|
|
2413
|
+
const isOnline = useIsOnline();
|
|
2354
2414
|
const { users } = usePresence();
|
|
2355
2415
|
const listVariants = {
|
|
2356
2416
|
visible: {
|
|
@@ -2541,16 +2601,23 @@ function MobileNavigation({
|
|
|
2541
2601
|
}
|
|
2542
2602
|
),
|
|
2543
2603
|
/* @__PURE__ */ jsx("div", { className: "flex-grow" }),
|
|
2604
|
+
isOnline ? null : /* @__PURE__ */ jsx(SimpleTooltip, { content: isMenuOpened ? null : "You are offline", children: /* @__PURE__ */ jsx(
|
|
2605
|
+
"div",
|
|
2606
|
+
{
|
|
2607
|
+
className: cn(
|
|
2608
|
+
"flex h-14 animate-pulse items-center justify-start p-4",
|
|
2609
|
+
isMenuOpened ? "w-full border-t" : "border-l"
|
|
2610
|
+
),
|
|
2611
|
+
children: /* @__PURE__ */ jsx(Icon, { name: "Error", className: "text-foreground-destructive", children: isMenuOpened ? "You are offline" : null })
|
|
2612
|
+
}
|
|
2613
|
+
) }),
|
|
2544
2614
|
/* @__PURE__ */ jsx(
|
|
2545
2615
|
"div",
|
|
2546
2616
|
{
|
|
2547
2617
|
className: cn(
|
|
2548
2618
|
"flex items-center justify-start p-4",
|
|
2549
2619
|
isMenuOpened && users.length > 4 ? "min-h-14" : "h-14",
|
|
2550
|
-
|
|
2551
|
-
"w-full border-t": isMenuOpened
|
|
2552
|
-
// left border is covered by the menu
|
|
2553
|
-
}
|
|
2620
|
+
isMenuOpened ? "w-full border-t" : "border-l"
|
|
2554
2621
|
),
|
|
2555
2622
|
children: /* @__PURE__ */ jsx(FacePile, { isMenuOpened })
|
|
2556
2623
|
}
|
|
@@ -2642,6 +2709,7 @@ function Navigation({
|
|
|
2642
2709
|
const user = useOptionalUser();
|
|
2643
2710
|
const nextExerciseRoute = useNextExerciseRoute();
|
|
2644
2711
|
const params = useParams();
|
|
2712
|
+
const isOnline = useIsOnline();
|
|
2645
2713
|
const { users } = usePresence();
|
|
2646
2714
|
const exercise = data2.exercises.find(
|
|
2647
2715
|
(e) => e.exerciseNumber === Number(params.exerciseNumber)
|
|
@@ -2857,6 +2925,16 @@ function Navigation({
|
|
|
2857
2925
|
}
|
|
2858
2926
|
) : null
|
|
2859
2927
|
] }) }),
|
|
2928
|
+
isOnline ? null : /* @__PURE__ */ jsx(SimpleTooltip, { content: isMenuOpened ? null : "You are offline", children: /* @__PURE__ */ jsx(
|
|
2929
|
+
"div",
|
|
2930
|
+
{
|
|
2931
|
+
className: cn(
|
|
2932
|
+
"flex w-full animate-pulse items-center border-t p-4",
|
|
2933
|
+
isMenuOpened ? "justify-start" : "justify-center"
|
|
2934
|
+
),
|
|
2935
|
+
children: /* @__PURE__ */ jsx(Icon, { name: "Error", className: "text-foreground-destructive", children: /* @__PURE__ */ jsx("span", { className: "whitespace-nowrap", children: isMenuOpened ? "You are offline" : null }) })
|
|
2936
|
+
}
|
|
2937
|
+
) }),
|
|
2860
2938
|
/* @__PURE__ */ jsx(
|
|
2861
2939
|
"div",
|
|
2862
2940
|
{
|
|
@@ -4343,8 +4421,16 @@ function VideoEmbed({
|
|
|
4343
4421
|
] }) })
|
|
4344
4422
|
}) {
|
|
4345
4423
|
const [iframeLoaded, setIframeLoaded] = React.useState(false);
|
|
4346
|
-
|
|
4347
|
-
|
|
4424
|
+
const isOnline = useIsOnline();
|
|
4425
|
+
if (!isOnline) {
|
|
4426
|
+
return /* @__PURE__ */ jsx("div", { className: "relative aspect-video w-full flex-shrink-0 shadow-lg", children: /* @__PURE__ */ jsx("div", { className: "not-prose text-foreground-destructive absolute inset-0 z-10 flex items-center justify-center p-8", children: /* @__PURE__ */ jsx(Icon, { name: "Error", size: "xl", children: /* @__PURE__ */ jsxs("span", { children: [
|
|
4427
|
+
"Unable to load the video ",
|
|
4428
|
+
/* @__PURE__ */ jsx("a", { href: url, className: "underline", children: `"${title ?? url}"` }),
|
|
4429
|
+
" when offline"
|
|
4430
|
+
] }) }) }) });
|
|
4431
|
+
}
|
|
4432
|
+
return /* @__PURE__ */ jsxs("div", { className: "relative aspect-video w-full flex-shrink-0 shadow-lg", children: [
|
|
4433
|
+
iframeLoaded ? null : /* @__PURE__ */ jsx("div", { className: "absolute inset-0 z-10 flex items-center justify-center p-8", children: loadingContent }),
|
|
4348
4434
|
/* @__PURE__ */ jsx(
|
|
4349
4435
|
"iframe",
|
|
4350
4436
|
{
|
|
@@ -4436,7 +4522,7 @@ function DeferredEpicVideo({
|
|
|
4436
4522
|
} else if (info.type === "region-restricted") {
|
|
4437
4523
|
return /* @__PURE__ */ jsxs("div", { children: [
|
|
4438
4524
|
/* @__PURE__ */ jsxs("div", { className: "flex aspect-video min-h-full min-w-full flex-col items-center justify-start gap-2 overflow-y-scroll border-2 p-4 lg:justify-center lg:gap-4 lg:text-xl", children: [
|
|
4439
|
-
/* @__PURE__ */ jsx("div", { className: "!text-foreground-
|
|
4525
|
+
/* @__PURE__ */ jsx("div", { className: "!text-foreground-destructive", children: "Error: Region Restricted" }),
|
|
4440
4526
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
4441
4527
|
"We've detected you're connecting from",
|
|
4442
4528
|
" ",
|
|
@@ -4518,7 +4604,7 @@ function DeferredEpicVideo({
|
|
|
4518
4604
|
/* @__PURE__ */ jsx(EpicVideoEmbed, { url, title }),
|
|
4519
4605
|
/* @__PURE__ */ jsxs("div", { className: "mt-4 flex flex-col gap-2", children: [
|
|
4520
4606
|
linkUI,
|
|
4521
|
-
/* @__PURE__ */ jsx("div", { className: "!text-foreground-
|
|
4607
|
+
/* @__PURE__ */ jsx("div", { className: "!text-foreground-destructive", children: "Unknown error (check console)" })
|
|
4522
4608
|
] })
|
|
4523
4609
|
] });
|
|
4524
4610
|
}
|
|
@@ -4579,7 +4665,7 @@ function EpicVideo({
|
|
|
4579
4665
|
/* @__PURE__ */ jsx("span", { children: transcript.slice(prevIndex + 1, transcript.length) }, transcript.length)
|
|
4580
4666
|
);
|
|
4581
4667
|
return /* @__PURE__ */ jsxs("div", { children: [
|
|
4582
|
-
/* @__PURE__ */ jsx("div", { className: "shadow-lg
|
|
4668
|
+
/* @__PURE__ */ jsx("div", { className: "shadow-lg", children: /* @__PURE__ */ jsx(
|
|
4583
4669
|
MuxPlayer,
|
|
4584
4670
|
{
|
|
4585
4671
|
playbackId: muxPlaybackId,
|
|
@@ -6251,7 +6337,7 @@ function SetAppToPlayground({ appName }) {
|
|
|
6251
6337
|
{
|
|
6252
6338
|
appName,
|
|
6253
6339
|
tooltipText: "Playground is not set to the right app. Click to set Playground.",
|
|
6254
|
-
children: /* @__PURE__ */ jsxs("span", { className: "flex items-center justify-center gap-1
|
|
6340
|
+
children: /* @__PURE__ */ jsxs("span", { className: "text-foreground-destructive flex items-center justify-center gap-1 hover:underline", children: [
|
|
6255
6341
|
/* @__PURE__ */ jsx(Icon, { name: "Unlinked", className: "animate-ping" }),
|
|
6256
6342
|
" ",
|
|
6257
6343
|
/* @__PURE__ */ jsx("span", { className: "uppercase", children: "Set to Playground" })
|
|
@@ -6518,13 +6604,13 @@ function TouchedFiles({
|
|
|
6518
6604
|
Await,
|
|
6519
6605
|
{
|
|
6520
6606
|
resolve: diffFilesPromise,
|
|
6521
|
-
errorElement: /* @__PURE__ */ jsx("div", { className: "text-foreground-
|
|
6607
|
+
errorElement: /* @__PURE__ */ jsx("div", { className: "text-foreground-destructive", children: "Something went wrong." }),
|
|
6522
6608
|
children: (diffFiles) => {
|
|
6523
6609
|
if (!diffFiles) {
|
|
6524
|
-
return /* @__PURE__ */ jsx("p", { className: "text-foreground-
|
|
6610
|
+
return /* @__PURE__ */ jsx("p", { className: "text-foreground-destructive", children: "Unable to determine diff" });
|
|
6525
6611
|
}
|
|
6526
6612
|
if (typeof diffFiles === "string") {
|
|
6527
|
-
return /* @__PURE__ */ jsx("p", { className: "text-foreground-
|
|
6613
|
+
return /* @__PURE__ */ jsx("p", { className: "text-foreground-destructive", children: diffFiles });
|
|
6528
6614
|
}
|
|
6529
6615
|
if (!diffFiles.length) {
|
|
6530
6616
|
return /* @__PURE__ */ jsx("p", { children: "No files changed" });
|
|
@@ -7687,7 +7773,7 @@ function Diff({
|
|
|
7687
7773
|
Await,
|
|
7688
7774
|
{
|
|
7689
7775
|
resolve: diff,
|
|
7690
|
-
errorElement: /* @__PURE__ */ jsx("p", { className: "
|
|
7776
|
+
errorElement: /* @__PURE__ */ jsx("p", { className: "text-foreground-destructive p-6", children: "There was an error calculating the diff. Sorry." }),
|
|
7691
7777
|
children: (diff2) => /* @__PURE__ */ jsxs("div", { className: "flex h-full w-full flex-col", children: [
|
|
7692
7778
|
/* @__PURE__ */ jsxs("div", { className: "flex h-14 min-h-14 w-full overflow-x-hidden border-b", children: [
|
|
7693
7779
|
/* @__PURE__ */ jsx("div", { className: "border-r", children: /* @__PURE__ */ jsx(SimpleTooltip, { content: "Reload diff", children: /* @__PURE__ */ jsx(
|
|
@@ -7783,14 +7869,14 @@ function SelectFileToDiff({
|
|
|
7783
7869
|
align: "start",
|
|
7784
7870
|
className: "z-20 max-h-[50vh] bg-black text-white lg:max-h-[70vh]",
|
|
7785
7871
|
children: [
|
|
7786
|
-
/* @__PURE__ */ jsx(Select.ScrollUpButton, { className: "flex h-5 cursor-default items-center justify-center
|
|
7872
|
+
/* @__PURE__ */ jsx(Select.ScrollUpButton, { className: "flex h-5 cursor-default items-center justify-center", children: /* @__PURE__ */ jsx(Icon, { name: "ChevronUp" }) }),
|
|
7787
7873
|
/* @__PURE__ */ jsx(Select.Viewport, { className: "p-3", children: /* @__PURE__ */ jsxs(Select.Group, { children: [
|
|
7788
7874
|
/* @__PURE__ */ jsx(Select.Label, { className: "px-5 pb-3 font-mono uppercase", children: label }),
|
|
7789
7875
|
allApps.map((app) => {
|
|
7790
7876
|
return /* @__PURE__ */ jsx(SelectItem, { value: app.name, children: app.displayName }, app.name);
|
|
7791
7877
|
})
|
|
7792
7878
|
] }) }),
|
|
7793
|
-
/* @__PURE__ */ jsx(Select.ScrollDownButton, { className: "flex h-5 cursor-default items-center justify-center
|
|
7879
|
+
/* @__PURE__ */ jsx(Select.ScrollDownButton, { className: "flex h-5 cursor-default items-center justify-center", children: /* @__PURE__ */ jsx(Icon, { name: "ChevronDown" }) })
|
|
7794
7880
|
]
|
|
7795
7881
|
}
|
|
7796
7882
|
) })
|
|
@@ -7802,7 +7888,7 @@ const SelectItem = React__default.forwardRef(
|
|
|
7802
7888
|
Select.Item,
|
|
7803
7889
|
{
|
|
7804
7890
|
className: clsx(
|
|
7805
|
-
"relative flex
|
|
7891
|
+
"relative flex cursor-pointer select-none items-center rounded px-10 py-2 leading-none opacity-80 radix-disabled:text-red-500 radix-highlighted:opacity-100 radix-highlighted:outline-none radix-state-checked:opacity-100",
|
|
7806
7892
|
className
|
|
7807
7893
|
),
|
|
7808
7894
|
...props,
|
|
@@ -7896,6 +7982,7 @@ async function fetchDiscordPosts({ request }) {
|
|
|
7896
7982
|
cache: fsCache,
|
|
7897
7983
|
ttl: 1e3 * 60 * 2,
|
|
7898
7984
|
swr: 1e3 * 60 * 60 * 24 * 365 * 100,
|
|
7985
|
+
offlineFallbackValue: [],
|
|
7899
7986
|
checkValue: ThreadDataSchema,
|
|
7900
7987
|
async getFreshValue() {
|
|
7901
7988
|
const result = await fetch(url, {
|
|
@@ -7942,6 +8029,10 @@ function DiscordPosts() {
|
|
|
7942
8029
|
const data = useLoaderData();
|
|
7943
8030
|
const ctaLink = useDiscordCTALink();
|
|
7944
8031
|
const altDown = useAltDown();
|
|
8032
|
+
const isOnline = useIsOnline();
|
|
8033
|
+
if (!isOnline) {
|
|
8034
|
+
return /* @__PURE__ */ jsx("div", { className: "flex h-full flex-col items-center justify-between", children: /* @__PURE__ */ jsx("div", { className: "text-foreground-destructive flex h-full w-full flex-col items-center justify-center", children: /* @__PURE__ */ jsx(Icon, { name: "Error", size: "xl", children: "Unable to load discord messages when offline" }) }) });
|
|
8035
|
+
}
|
|
7945
8036
|
return /* @__PURE__ */ jsxs("div", { className: "flex h-full flex-col items-center justify-between", children: [
|
|
7946
8037
|
/* @__PURE__ */ jsx(
|
|
7947
8038
|
React.Suspense,
|
|
@@ -8086,7 +8177,7 @@ function PlaygroundWindow({
|
|
|
8086
8177
|
{
|
|
8087
8178
|
size: "xl",
|
|
8088
8179
|
name: "Unlinked",
|
|
8089
|
-
className: "
|
|
8180
|
+
className: "text-foreground-destructive animate-pulse"
|
|
8090
8181
|
}
|
|
8091
8182
|
);
|
|
8092
8183
|
let setPlaygroundTooltipText = "Click to reset Playground.";
|
|
@@ -8264,7 +8355,7 @@ function InBrowserTestRunner({
|
|
|
8264
8355
|
{
|
|
8265
8356
|
name: "Remove",
|
|
8266
8357
|
"aria-label": "Failed",
|
|
8267
|
-
className: "text-foreground-
|
|
8358
|
+
className: "text-foreground-destructive"
|
|
8268
8359
|
}
|
|
8269
8360
|
),
|
|
8270
8361
|
unknown: /* @__PURE__ */ jsx(Icon, { name: "Question", "aria-label": "Unknown", className: "animate-pulse" })
|
|
@@ -8294,7 +8385,7 @@ function InBrowserTestRunner({
|
|
|
8294
8385
|
/* @__PURE__ */ jsx("pre", { className: "max-h-48 overflow-y-auto p-4 scrollbar-thin scrollbar-thumb-scrollbar", children: testStep.title })
|
|
8295
8386
|
] }) }, testStep.timestamp + testStep.title)
|
|
8296
8387
|
)) }),
|
|
8297
|
-
(message == null ? void 0 : message.status) === "fail" ? /* @__PURE__ */ jsxs("div", { className: "flex items-baseline gap-2
|
|
8388
|
+
(message == null ? void 0 : message.status) === "fail" ? /* @__PURE__ */ jsxs("div", { className: "text-foreground-destructive flex items-baseline gap-2", children: [
|
|
8298
8389
|
/* @__PURE__ */ jsxs("span", { children: [
|
|
8299
8390
|
sortedTestSteps.length + 1,
|
|
8300
8391
|
"."
|
|
@@ -9157,7 +9248,7 @@ const headers$5 = ({ loaderHeaders, parentHeaders }) => {
|
|
|
9157
9248
|
};
|
|
9158
9249
|
function TestsList() {
|
|
9159
9250
|
const { appInfo } = useLoaderData();
|
|
9160
|
-
return /* @__PURE__ */ jsx(TestUI, { playgroundAppInfo: appInfo });
|
|
9251
|
+
return /* @__PURE__ */ jsx(TestUI, { playgroundAppInfo: appInfo }, appInfo.name);
|
|
9161
9252
|
}
|
|
9162
9253
|
const route18 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
9163
9254
|
__proto__: null,
|
|
@@ -9345,6 +9436,14 @@ function Survey$1({
|
|
|
9345
9436
|
exerciseTitle
|
|
9346
9437
|
}) {
|
|
9347
9438
|
const [iframeLoaded, setIframeLoaded] = React.useState(false);
|
|
9439
|
+
const isOnline = useIsOnline();
|
|
9440
|
+
if (!isOnline) {
|
|
9441
|
+
return /* @__PURE__ */ jsx("div", { className: "relative flex-shrink-0", children: /* @__PURE__ */ jsx("div", { className: "text-foreground-destructive absolute inset-0 z-10 flex items-center justify-center text-body-md", children: /* @__PURE__ */ jsx(Icon, { name: "Error", size: "xl", children: /* @__PURE__ */ jsxs("span", { children: [
|
|
9442
|
+
"Unable to load the ",
|
|
9443
|
+
/* @__PURE__ */ jsx("a", { href: exerciseFormEmbedUrl, className: "underline", children: `${exerciseTitle} feedback form` }),
|
|
9444
|
+
" when offline"
|
|
9445
|
+
] }) }) }) });
|
|
9446
|
+
}
|
|
9348
9447
|
return /* @__PURE__ */ jsxs("div", { className: "relative min-h-full sm:min-h-[unset] sm:flex-shrink-0", children: [
|
|
9349
9448
|
!iframeLoaded ? /* @__PURE__ */ jsx("div", { className: "absolute inset-0 z-10 flex items-center justify-center", children: /* @__PURE__ */ jsx(Loading, { children: /* @__PURE__ */ jsxs("span", { children: [
|
|
9350
9449
|
"Loading ",
|
|
@@ -9501,6 +9600,14 @@ function Survey({
|
|
|
9501
9600
|
workshopFormEmbedUrl
|
|
9502
9601
|
}) {
|
|
9503
9602
|
const [iframeLoaded, setIframeLoaded] = React.useState(false);
|
|
9603
|
+
const isOnline = useIsOnline();
|
|
9604
|
+
if (!isOnline) {
|
|
9605
|
+
return /* @__PURE__ */ jsx("div", { className: "relative flex-shrink-0", children: /* @__PURE__ */ jsx("div", { className: "text-foreground-destructive absolute inset-0 z-10 flex items-center justify-center", children: /* @__PURE__ */ jsx(Icon, { name: "Error", size: "xl", children: /* @__PURE__ */ jsxs("span", { children: [
|
|
9606
|
+
"Unable to load the ",
|
|
9607
|
+
/* @__PURE__ */ jsx("a", { href: workshopFormEmbedUrl, className: "underline", children: `${workshopTitle} feedback form` }),
|
|
9608
|
+
" when offline"
|
|
9609
|
+
] }) }) }) });
|
|
9610
|
+
}
|
|
9504
9611
|
return /* @__PURE__ */ jsxs("div", { className: "relative flex-shrink-0", children: [
|
|
9505
9612
|
!iframeLoaded ? /* @__PURE__ */ jsx("div", { className: "absolute inset-0 z-10 flex items-center justify-center", children: /* @__PURE__ */ jsx(Loading, { children: /* @__PURE__ */ jsxs("span", { children: [
|
|
9506
9613
|
"Loading ",
|
|
@@ -11037,7 +11144,7 @@ const route42 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePrope
|
|
|
11037
11144
|
__proto__: null,
|
|
11038
11145
|
loader
|
|
11039
11146
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
11040
|
-
const serverManifest = { "entry": { "module": "/assets/entry.client-CQusg5Iz.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/components-DrvY4pal.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-C1pLsthM.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/components-DrvY4pal.js", "/assets/misc-BtjCSy-T.js", "/assets/pe-DXT2FOp1.js", "/assets/error-boundary-Beul7lrT.js", "/assets/progress-bar-CTPCfvDi.js", "/assets/index-CB8bjE90.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/index-BOQWfIQC.js", "/assets/presence-CrYBA3ta.js", "/assets/seo-pBpFCWsy.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/_-CjjFMNGC.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/error-boundary-Beul7lrT.js", "/assets/misc-BtjCSy-T.js", "/assets/components-DrvY4pal.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-Muw3ERYT.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/misc-BtjCSy-T.js", "/assets/pe-DXT2FOp1.js", "/assets/product-gqq_YQBW.js", "/assets/revalidation-ws-DYaJNyw1.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/index-BHwOR8R1.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/presence-CrYBA3ta.js", "/assets/progress-D-HsH4j3.js", "/assets/index-BOQWfIQC.js", "/assets/components-DrvY4pal.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-Cc968svU.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/button-BS845Tjo.js", "/assets/misc-BtjCSy-T.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/components-DrvY4pal.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-DILzAZN8.js", "imports": ["/assets/discord-BfP_Rny5.js", "/assets/index-CGzylDPY.js", "/assets/misc-BtjCSy-T.js", "/assets/components-DrvY4pal.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.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-CwTidn3v.js", "imports": ["/assets/index-CGzylDPY.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-CqkGzsgV.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/index-egcHQOpF.js", "/assets/epic-video-qHKPWPt1.js", "/assets/revalidation-ws-DYaJNyw1.js", "/assets/mdx-CsS30JUo.js", "/assets/progress-D-HsH4j3.js", "/assets/misc-BtjCSy-T.js", "/assets/seo-pBpFCWsy.js", "/assets/components-DrvY4pal.js", "/assets/index-BOQWfIQC.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/pe-DXT2FOp1.js", "/assets/loading-C2wPVvQw.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/progress-bar-CTPCfvDi.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-BNWGPi9m.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/misc-BtjCSy-T.js", "/assets/components-DrvY4pal.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-BMa5nZcJ.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/index-egcHQOpF.js", "/assets/error-boundary-Beul7lrT.js", "/assets/nav-chevrons-2hLTwAZb.js", "/assets/revalidation-ws-DYaJNyw1.js", "/assets/mdx-CsS30JUo.js", "/assets/progress-D-HsH4j3.js", "/assets/set-playground-DQzAhC0t.js", "/assets/seo-pBpFCWsy.js", "/assets/misc-BtjCSy-T.js", "/assets/epic-video-qHKPWPt1.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/index-BOQWfIQC.js", "/assets/components-DrvY4pal.js", "/assets/index-BHwOR8R1.js", "/assets/progress-bar-CTPCfvDi.js", "/assets/pe-DXT2FOp1.js", "/assets/index-BPegC-d3.js", "/assets/loading-C2wPVvQw.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.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-BOqXK9hi.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/preview-C2y4Z0qO.js", "/assets/components-DrvY4pal.js", "/assets/misc-BtjCSy-T.js", "/assets/index-BOQWfIQC.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/pe-DXT2FOp1.js", "/assets/button-BS845Tjo.js", "/assets/loading-C2wPVvQw.js", "/assets/progress-bar-CTPCfvDi.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-DbCT6N5p.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/index-BPegC-d3.js", "/assets/misc-BtjCSy-T.js", "/assets/diff-DtvfyjPI.js", "/assets/error-boundary-Beul7lrT.js", "/assets/loading-C2wPVvQw.js", "/assets/discord-BfP_Rny5.js", "/assets/components-DrvY4pal.js", "/assets/index-CB8bjE90.js", "/assets/set-playground-DQzAhC0t.js", "/assets/tests-LWW8wCYZ.js", "/assets/preview-C2y4Z0qO.js", "/assets/index-BHwOR8R1.js", "/assets/accordion-C-sW--in.js", "/assets/mdx-CsS30JUo.js", "/assets/epic-video-qHKPWPt1.js", "/assets/index-BOQWfIQC.js", "/assets/pe-DXT2FOp1.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/progress-bar-CTPCfvDi.js", "/assets/revalidation-ws-DYaJNyw1.js", "/assets/use-event-source-AZJtQsFX.js", "/assets/button-BS845Tjo.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-CDWRwwO-.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/tests-LWW8wCYZ.js", "/assets/components-DrvY4pal.js", "/assets/epic-video-qHKPWPt1.js", "/assets/index-BOQWfIQC.js", "/assets/misc-BtjCSy-T.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/pe-DXT2FOp1.js", "/assets/loading-C2wPVvQw.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/accordion-C-sW--in.js", "/assets/index-BPegC-d3.js", "/assets/index-BHwOR8R1.js", "/assets/use-event-source-AZJtQsFX.js", "/assets/set-playground-DQzAhC0t.js", "/assets/progress-bar-CTPCfvDi.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-CdNhLhKg.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/index-egcHQOpF.js", "/assets/epic-video-qHKPWPt1.js", "/assets/loading-C2wPVvQw.js", "/assets/nav-chevrons-2hLTwAZb.js", "/assets/revalidation-ws-DYaJNyw1.js", "/assets/mdx-CsS30JUo.js", "/assets/progress-D-HsH4j3.js", "/assets/misc-BtjCSy-T.js", "/assets/seo-pBpFCWsy.js", "/assets/components-DrvY4pal.js", "/assets/index-BOQWfIQC.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/pe-DXT2FOp1.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/progress-bar-CTPCfvDi.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-DUKfL220.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/index-egcHQOpF.js", "/assets/epic-video-qHKPWPt1.js", "/assets/loading-C2wPVvQw.js", "/assets/nav-chevrons-2hLTwAZb.js", "/assets/revalidation-ws-DYaJNyw1.js", "/assets/mdx-CsS30JUo.js", "/assets/misc-BtjCSy-T.js", "/assets/seo-pBpFCWsy.js", "/assets/progress-D-HsH4j3.js", "/assets/components-DrvY4pal.js", "/assets/index-BOQWfIQC.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/pe-DXT2FOp1.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/progress-bar-CTPCfvDi.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-oED4uZLa.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/index-egcHQOpF.js", "/assets/epic-video-qHKPWPt1.js", "/assets/error-boundary-Beul7lrT.js", "/assets/mdx-CsS30JUo.js", "/assets/misc-BtjCSy-T.js", "/assets/progress-D-HsH4j3.js", "/assets/components-DrvY4pal.js", "/assets/index-BOQWfIQC.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/pe-DXT2FOp1.js", "/assets/loading-C2wPVvQw.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/progress-bar-CTPCfvDi.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-DoU7gifi.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/use-event-source-AZJtQsFX.js", "/assets/button-BS845Tjo.js", "/assets/loading-C2wPVvQw.js", "/assets/product-gqq_YQBW.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/index-BOQWfIQC.js", "/assets/components-DrvY4pal.js", "/assets/misc-BtjCSy-T.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/pe-DXT2FOp1.js"], "css": [] }, "routes/_app+/preferences": { "id": "routes/_app+/preferences", "parentId": "routes/_app+/_layout", "path": "preferences", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/preferences-br0VSK51.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/button-BS845Tjo.js", "/assets/misc-BtjCSy-T.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/components-DrvY4pal.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-lgEG2piy.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/components-DrvY4pal.js"], "css": [] }, "routes/admin+/_layout": { "id": "routes/admin+/_layout", "parentId": "root", "path": "admin", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_layout-DV29dlKr.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/components-DrvY4pal.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/admin+/index": { "id": "routes/admin+/index", "parentId": "routes/admin+/_layout", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/index-cZQeGrqL.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/misc-BtjCSy-T.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/progress-D-HsH4j3.js", "/assets/components-DrvY4pal.js", "/assets/pe-DXT2FOp1.js"], "css": [] }, "routes/admin+/version": { "id": "routes/admin+/version", "parentId": "routes/admin+/_layout", "path": "version", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/version-D61Qvt0X.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/components-DrvY4pal.js"], "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-D0e_PrB7.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/misc-BtjCSy-T.js", "/assets/diff-DtvfyjPI.js", "/assets/nav-chevrons-2hLTwAZb.js", "/assets/components-DrvY4pal.js", "/assets/accordion-C-sW--in.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/index-BPegC-d3.js", "/assets/index-BHwOR8R1.js", "/assets/mdx-CsS30JUo.js", "/assets/epic-video-qHKPWPt1.js", "/assets/index-BOQWfIQC.js", "/assets/pe-DXT2FOp1.js", "/assets/loading-C2wPVvQw.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/progress-bar-CTPCfvDi.js", "/assets/revalidation-ws-DYaJNyw1.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-Cu6eD7KS.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/button-BS845Tjo.js", "/assets/epic-video-qHKPWPt1.js", "/assets/components-DrvY4pal.js", "/assets/misc-BtjCSy-T.js", "/assets/index-BOQWfIQC.js", "/assets/tooltip-Bp9KHnLy.js", "/assets/pe-DXT2FOp1.js", "/assets/loading-C2wPVvQw.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.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-3096dc61.js", "version": "3096dc61" };
|
|
11147
|
+
const serverManifest = { "entry": { "module": "/assets/entry.client-CQusg5Iz.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/components-DrvY4pal.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-Bb8fIt2z.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/components-DrvY4pal.js", "/assets/misc-DoGPlBur.js", "/assets/pe-DXT2FOp1.js", "/assets/error-boundary-IvG0vuiP.js", "/assets/progress-bar-Dln7epYZ.js", "/assets/index-CB8bjE90.js", "/assets/tooltip-DT9kZxPw.js", "/assets/index-9OWT3nC-.js", "/assets/presence-BsqTpSt4.js", "/assets/seo-pBpFCWsy.js", "/assets/online-D33oijLr.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/_-Dn1a0zwA.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/error-boundary-IvG0vuiP.js", "/assets/misc-DoGPlBur.js", "/assets/components-DrvY4pal.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-CyDc9BN3.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/misc-DoGPlBur.js", "/assets/pe-DXT2FOp1.js", "/assets/product-CVL4Z9c0.js", "/assets/revalidation-ws-Bes2l3ma.js", "/assets/tooltip-DT9kZxPw.js", "/assets/index-c1IJ5ZX5.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/online-D33oijLr.js", "/assets/presence-BsqTpSt4.js", "/assets/progress-Dj5cyA_v.js", "/assets/index-9OWT3nC-.js", "/assets/components-DrvY4pal.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-HU5gUm5Q.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/button-Hft_V1bH.js", "/assets/misc-DoGPlBur.js", "/assets/tooltip-DT9kZxPw.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/components-DrvY4pal.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-D6ZwxiZG.js", "imports": ["/assets/discord-C0ZkL9cR.js", "/assets/index-CGzylDPY.js", "/assets/misc-DoGPlBur.js", "/assets/components-DrvY4pal.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.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-CwTidn3v.js", "imports": ["/assets/index-CGzylDPY.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-BVCFK83o.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/index-egcHQOpF.js", "/assets/epic-video-75U1kyqf.js", "/assets/revalidation-ws-Bes2l3ma.js", "/assets/mdx-CsRMuEw9.js", "/assets/progress-Dj5cyA_v.js", "/assets/misc-DoGPlBur.js", "/assets/seo-pBpFCWsy.js", "/assets/components-DrvY4pal.js", "/assets/index-9OWT3nC-.js", "/assets/tooltip-DT9kZxPw.js", "/assets/pe-DXT2FOp1.js", "/assets/online-D33oijLr.js", "/assets/loading-DsHhjqzj.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/progress-bar-Dln7epYZ.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-CAxJdIJe.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/misc-DoGPlBur.js", "/assets/components-DrvY4pal.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-cu1Of_4G.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/index-egcHQOpF.js", "/assets/error-boundary-IvG0vuiP.js", "/assets/nav-chevrons-CxWSSbTo.js", "/assets/revalidation-ws-Bes2l3ma.js", "/assets/mdx-CsRMuEw9.js", "/assets/progress-Dj5cyA_v.js", "/assets/set-playground-DOFTHWzE.js", "/assets/seo-pBpFCWsy.js", "/assets/misc-DoGPlBur.js", "/assets/epic-video-75U1kyqf.js", "/assets/tooltip-DT9kZxPw.js", "/assets/index-9OWT3nC-.js", "/assets/components-DrvY4pal.js", "/assets/index-c1IJ5ZX5.js", "/assets/progress-bar-Dln7epYZ.js", "/assets/pe-DXT2FOp1.js", "/assets/index-t6AA12_S.js", "/assets/online-D33oijLr.js", "/assets/loading-DsHhjqzj.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.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-CWEUg7hY.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/preview-CZwnFQrx.js", "/assets/components-DrvY4pal.js", "/assets/misc-DoGPlBur.js", "/assets/index-9OWT3nC-.js", "/assets/tooltip-DT9kZxPw.js", "/assets/pe-DXT2FOp1.js", "/assets/button-Hft_V1bH.js", "/assets/loading-DsHhjqzj.js", "/assets/progress-bar-Dln7epYZ.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-DJhl_Q5J.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/tooltip-DT9kZxPw.js", "/assets/index-t6AA12_S.js", "/assets/misc-DoGPlBur.js", "/assets/diff-B_FrL8Cl.js", "/assets/error-boundary-IvG0vuiP.js", "/assets/loading-DsHhjqzj.js", "/assets/discord-C0ZkL9cR.js", "/assets/online-D33oijLr.js", "/assets/components-DrvY4pal.js", "/assets/index-CB8bjE90.js", "/assets/set-playground-DOFTHWzE.js", "/assets/tests-CDgBzBBo.js", "/assets/preview-CZwnFQrx.js", "/assets/index-c1IJ5ZX5.js", "/assets/accordion-e-d1HozW.js", "/assets/mdx-CsRMuEw9.js", "/assets/epic-video-75U1kyqf.js", "/assets/index-9OWT3nC-.js", "/assets/pe-DXT2FOp1.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/progress-bar-Dln7epYZ.js", "/assets/revalidation-ws-Bes2l3ma.js", "/assets/use-event-source-AZJtQsFX.js", "/assets/button-Hft_V1bH.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-BwM0E8Mk.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/tests-CDgBzBBo.js", "/assets/components-DrvY4pal.js", "/assets/epic-video-75U1kyqf.js", "/assets/index-9OWT3nC-.js", "/assets/misc-DoGPlBur.js", "/assets/tooltip-DT9kZxPw.js", "/assets/pe-DXT2FOp1.js", "/assets/online-D33oijLr.js", "/assets/loading-DsHhjqzj.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/accordion-e-d1HozW.js", "/assets/index-t6AA12_S.js", "/assets/index-c1IJ5ZX5.js", "/assets/use-event-source-AZJtQsFX.js", "/assets/set-playground-DOFTHWzE.js", "/assets/progress-bar-Dln7epYZ.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-DYebDhaK.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/index-egcHQOpF.js", "/assets/epic-video-75U1kyqf.js", "/assets/misc-DoGPlBur.js", "/assets/loading-DsHhjqzj.js", "/assets/nav-chevrons-CxWSSbTo.js", "/assets/revalidation-ws-Bes2l3ma.js", "/assets/mdx-CsRMuEw9.js", "/assets/progress-Dj5cyA_v.js", "/assets/online-D33oijLr.js", "/assets/seo-pBpFCWsy.js", "/assets/components-DrvY4pal.js", "/assets/index-9OWT3nC-.js", "/assets/tooltip-DT9kZxPw.js", "/assets/pe-DXT2FOp1.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/progress-bar-Dln7epYZ.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-DDnBGcs8.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/index-egcHQOpF.js", "/assets/epic-video-75U1kyqf.js", "/assets/misc-DoGPlBur.js", "/assets/loading-DsHhjqzj.js", "/assets/nav-chevrons-CxWSSbTo.js", "/assets/revalidation-ws-Bes2l3ma.js", "/assets/mdx-CsRMuEw9.js", "/assets/online-D33oijLr.js", "/assets/seo-pBpFCWsy.js", "/assets/progress-Dj5cyA_v.js", "/assets/components-DrvY4pal.js", "/assets/index-9OWT3nC-.js", "/assets/tooltip-DT9kZxPw.js", "/assets/pe-DXT2FOp1.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/progress-bar-Dln7epYZ.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-CQEwwWTS.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/index-egcHQOpF.js", "/assets/epic-video-75U1kyqf.js", "/assets/error-boundary-IvG0vuiP.js", "/assets/mdx-CsRMuEw9.js", "/assets/misc-DoGPlBur.js", "/assets/progress-Dj5cyA_v.js", "/assets/components-DrvY4pal.js", "/assets/index-9OWT3nC-.js", "/assets/tooltip-DT9kZxPw.js", "/assets/pe-DXT2FOp1.js", "/assets/online-D33oijLr.js", "/assets/loading-DsHhjqzj.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/progress-bar-Dln7epYZ.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-DJlKIofe.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/use-event-source-AZJtQsFX.js", "/assets/button-Hft_V1bH.js", "/assets/loading-DsHhjqzj.js", "/assets/product-CVL4Z9c0.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/index-9OWT3nC-.js", "/assets/components-DrvY4pal.js", "/assets/misc-DoGPlBur.js", "/assets/tooltip-DT9kZxPw.js", "/assets/pe-DXT2FOp1.js"], "css": [] }, "routes/_app+/preferences": { "id": "routes/_app+/preferences", "parentId": "routes/_app+/_layout", "path": "preferences", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/preferences-BIt5-Lgy.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/button-Hft_V1bH.js", "/assets/misc-DoGPlBur.js", "/assets/tooltip-DT9kZxPw.js", "/assets/components-DrvY4pal.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-lgEG2piy.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/components-DrvY4pal.js"], "css": [] }, "routes/admin+/_layout": { "id": "routes/admin+/_layout", "parentId": "root", "path": "admin", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_layout-DV29dlKr.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/components-DrvY4pal.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/admin+/index": { "id": "routes/admin+/index", "parentId": "routes/admin+/_layout", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/index-BzN2y10J.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/misc-DoGPlBur.js", "/assets/tooltip-DT9kZxPw.js", "/assets/progress-Dj5cyA_v.js", "/assets/components-DrvY4pal.js", "/assets/pe-DXT2FOp1.js"], "css": [] }, "routes/admin+/version": { "id": "routes/admin+/version", "parentId": "routes/admin+/_layout", "path": "version", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/version-D61Qvt0X.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/components-DrvY4pal.js"], "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-DmVm_N6W.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/misc-DoGPlBur.js", "/assets/diff-B_FrL8Cl.js", "/assets/nav-chevrons-CxWSSbTo.js", "/assets/components-DrvY4pal.js", "/assets/accordion-e-d1HozW.js", "/assets/tooltip-DT9kZxPw.js", "/assets/index-t6AA12_S.js", "/assets/index-c1IJ5ZX5.js", "/assets/mdx-CsRMuEw9.js", "/assets/epic-video-75U1kyqf.js", "/assets/index-9OWT3nC-.js", "/assets/pe-DXT2FOp1.js", "/assets/online-D33oijLr.js", "/assets/loading-DsHhjqzj.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.js", "/assets/progress-bar-Dln7epYZ.js", "/assets/revalidation-ws-Bes2l3ma.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-DssP5iXB.js", "imports": ["/assets/index-CGzylDPY.js", "/assets/button-Hft_V1bH.js", "/assets/epic-video-75U1kyqf.js", "/assets/components-DrvY4pal.js", "/assets/misc-DoGPlBur.js", "/assets/index-9OWT3nC-.js", "/assets/tooltip-DT9kZxPw.js", "/assets/pe-DXT2FOp1.js", "/assets/online-D33oijLr.js", "/assets/loading-DsHhjqzj.js", "/assets/user-C0j04V55.js", "/assets/workshop-config-oL_FWDKq.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-3da21166.js", "version": "3da21166" };
|
|
11041
11148
|
const mode = "production";
|
|
11042
11149
|
const assetsBuildDirectory = "build/client";
|
|
11043
11150
|
const basename = "/";
|