@epic-web/workshop-app 5.23.0 → 5.24.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/bin/epicshop.js +203 -37
- package/build/client/assets/{_basePickBy-B3Ji82Lk.js → _basePickBy-lB0X5x6U.js} +2 -2
- package/build/client/assets/{_basePickBy-B3Ji82Lk.js.map → _basePickBy-lB0X5x6U.js.map} +1 -1
- package/build/client/assets/{_baseUniq-BoGoqSUm.js → _baseUniq-BOjGYEEK.js} +2 -2
- package/build/client/assets/{_baseUniq-BoGoqSUm.js.map → _baseUniq-BOjGYEEK.js.map} +1 -1
- package/build/client/assets/{_exerciseNumber-DtILU6SM.js → _exerciseNumber-Dqi7TgL9.js} +2 -2
- package/build/client/assets/{_exerciseNumber-DtILU6SM.js.map → _exerciseNumber-Dqi7TgL9.js.map} +1 -1
- package/build/client/assets/{_exerciseNumber_.finished-CEK9anWX.js → _exerciseNumber_.finished-C5m6M0gM.js} +2 -2
- package/build/client/assets/{_exerciseNumber_.finished-CEK9anWX.js.map → _exerciseNumber_.finished-C5m6M0gM.js.map} +1 -1
- package/build/client/assets/{_layout-D1r_62oj.js → _layout-B_NrRv0S.js} +2 -2
- package/build/client/assets/{_layout-D1r_62oj.js.map → _layout-B_NrRv0S.js.map} +1 -1
- package/build/client/assets/{_layout-DzlTTMQ0.js → _layout-QRe2q83m.js} +2 -2
- package/build/client/assets/{_layout-DzlTTMQ0.js.map → _layout-QRe2q83m.js.map} +1 -1
- package/build/client/assets/{app-CQvK51s0.js → app-BYSDu0vh.js} +2 -2
- package/build/client/assets/{app-CQvK51s0.js.map → app-BYSDu0vh.js.map} +1 -1
- package/build/client/assets/{arc-rF8TbXNV.js → arc-DmQZ2TPB.js} +2 -2
- package/build/client/assets/{arc-rF8TbXNV.js.map → arc-DmQZ2TPB.js.map} +1 -1
- package/build/client/assets/{architectureDiagram-IEHRJDOE-D7gCCmY9.js → architectureDiagram-IEHRJDOE-BqPvrjLh.js} +2 -2
- package/build/client/assets/{architectureDiagram-IEHRJDOE-D7gCCmY9.js.map → architectureDiagram-IEHRJDOE-BqPvrjLh.js.map} +1 -1
- package/build/client/assets/{blockDiagram-JOT3LUYC-yGQOzhkw.js → blockDiagram-JOT3LUYC-D8OFd78i.js} +2 -2
- package/build/client/assets/{blockDiagram-JOT3LUYC-yGQOzhkw.js.map → blockDiagram-JOT3LUYC-D8OFd78i.js.map} +1 -1
- package/build/client/assets/{c4Diagram-VJAJSXHY-CTFjYF37.js → c4Diagram-VJAJSXHY-DjROjsr_.js} +2 -2
- package/build/client/assets/{c4Diagram-VJAJSXHY-CTFjYF37.js.map → c4Diagram-VJAJSXHY-DjROjsr_.js.map} +1 -1
- package/build/client/assets/channel-DnqeaSfB.js +2 -0
- package/build/client/assets/{channel-5s71-OE9.js.map → channel-DnqeaSfB.js.map} +1 -1
- package/build/client/assets/{chunk-4BMEZGHF-BIe0IUDz.js → chunk-4BMEZGHF-CNL-bCj2.js} +2 -2
- package/build/client/assets/{chunk-4BMEZGHF-BIe0IUDz.js.map → chunk-4BMEZGHF-CNL-bCj2.js.map} +1 -1
- package/build/client/assets/{chunk-A2AXSNBT-B-nCbUBj.js → chunk-A2AXSNBT-PeSyIKDm.js} +2 -2
- package/build/client/assets/{chunk-A2AXSNBT-B-nCbUBj.js.map → chunk-A2AXSNBT-PeSyIKDm.js.map} +1 -1
- package/build/client/assets/{chunk-AEK57VVT-B-cCHPs2.js → chunk-AEK57VVT-B1JqGB_s.js} +2 -2
- package/build/client/assets/{chunk-AEK57VVT-B-cCHPs2.js.map → chunk-AEK57VVT-B1JqGB_s.js.map} +1 -1
- package/build/client/assets/{chunk-D6G4REZN-EQ3R8OZx.js → chunk-D6G4REZN-C1e0nCkL.js} +2 -2
- package/build/client/assets/{chunk-D6G4REZN-EQ3R8OZx.js.map → chunk-D6G4REZN-C1e0nCkL.js.map} +1 -1
- package/build/client/assets/{chunk-RZ5BOZE2-h6svq8Xk.js → chunk-RZ5BOZE2-D5pIwNeA.js} +2 -2
- package/build/client/assets/{chunk-RZ5BOZE2-h6svq8Xk.js.map → chunk-RZ5BOZE2-D5pIwNeA.js.map} +1 -1
- package/build/client/assets/{chunk-XZIHB7SX-74-HFRcU.js → chunk-XZIHB7SX-FbrNggxP.js} +2 -2
- package/build/client/assets/{chunk-XZIHB7SX-74-HFRcU.js.map → chunk-XZIHB7SX-FbrNggxP.js.map} +1 -1
- package/build/client/assets/classDiagram-GIVACNV2-cXWx-aYi.js +2 -0
- package/build/client/assets/{classDiagram-GIVACNV2-CWogZCzR.js.map → classDiagram-GIVACNV2-cXWx-aYi.js.map} +1 -1
- package/build/client/assets/classDiagram-v2-COTLJTTW-cXWx-aYi.js +2 -0
- package/build/client/assets/{classDiagram-v2-COTLJTTW-CWogZCzR.js.map → classDiagram-v2-COTLJTTW-cXWx-aYi.js.map} +1 -1
- package/build/client/assets/clone-Bj8ANPCv.js +2 -0
- package/build/client/assets/{clone-nHZ14b_E.js.map → clone-Bj8ANPCv.js.map} +1 -1
- package/build/client/assets/{dagre-OKDRZEBW-Bq-HgVN8.js → dagre-OKDRZEBW-DT9ZQRxf.js} +2 -2
- package/build/client/assets/{dagre-OKDRZEBW-Bq-HgVN8.js.map → dagre-OKDRZEBW-DT9ZQRxf.js.map} +1 -1
- package/build/client/assets/{diagram-SSKATNLV-Cls675Lh.js → diagram-SSKATNLV-CcKCni9R.js} +2 -2
- package/build/client/assets/{diagram-SSKATNLV-Cls675Lh.js.map → diagram-SSKATNLV-CcKCni9R.js.map} +1 -1
- package/build/client/assets/{diagram-VNBRO52H-CJDqBhLa.js → diagram-VNBRO52H-DWoRAiqO.js} +2 -2
- package/build/client/assets/{diagram-VNBRO52H-CJDqBhLa.js.map → diagram-VNBRO52H-DWoRAiqO.js.map} +1 -1
- package/build/client/assets/{diff-8N5KyD7o.js → diff-BKR4usVv.js} +2 -2
- package/build/client/assets/{diff-8N5KyD7o.js.map → diff-BKR4usVv.js.map} +1 -1
- package/build/client/assets/{diff-Bu4t2NGL.js → diff-D5_VwPLF.js} +2 -2
- package/build/client/assets/{diff-Bu4t2NGL.js.map → diff-D5_VwPLF.js.map} +1 -1
- package/build/client/assets/{epic-video-DN9DRRHf.js → epic-video-CmlkW6Rw.js} +2 -2
- package/build/client/assets/{epic-video-DN9DRRHf.js.map → epic-video-CmlkW6Rw.js.map} +1 -1
- package/build/client/assets/{erDiagram-Q7BY3M3F-DdKn4jVQ.js → erDiagram-Q7BY3M3F-DXkEmvKk.js} +2 -2
- package/build/client/assets/{erDiagram-Q7BY3M3F-DdKn4jVQ.js.map → erDiagram-Q7BY3M3F-DXkEmvKk.js.map} +1 -1
- package/build/client/assets/{finished-B3G1RUDO.js → finished-MrsevkkK.js} +2 -2
- package/build/client/assets/{finished-B3G1RUDO.js.map → finished-MrsevkkK.js.map} +1 -1
- package/build/client/assets/{flowDiagram-4HSFHLVR-5Mg796nh.js → flowDiagram-4HSFHLVR-DCodZaNW.js} +2 -2
- package/build/client/assets/{flowDiagram-4HSFHLVR-5Mg796nh.js.map → flowDiagram-4HSFHLVR-DCodZaNW.js.map} +1 -1
- package/build/client/assets/{ganttDiagram-APWFNJXF-YO2fxWzG.js → ganttDiagram-APWFNJXF-TfB6wYvN.js} +2 -2
- package/build/client/assets/{ganttDiagram-APWFNJXF-YO2fxWzG.js.map → ganttDiagram-APWFNJXF-TfB6wYvN.js.map} +1 -1
- package/build/client/assets/{gitGraphDiagram-7IBYFJ6S-DQCZvhP_.js → gitGraphDiagram-7IBYFJ6S-D2NQnQv2.js} +2 -2
- package/build/client/assets/{gitGraphDiagram-7IBYFJ6S-DQCZvhP_.js.map → gitGraphDiagram-7IBYFJ6S-D2NQnQv2.js.map} +1 -1
- package/build/client/assets/{graph-BFAO9Sgp.js → graph-eJUngNSH.js} +2 -2
- package/build/client/assets/{graph-BFAO9Sgp.js.map → graph-eJUngNSH.js.map} +1 -1
- package/build/client/assets/{index-BfCSiT_X.js → index-9euhNa27.js} +2 -2
- package/build/client/assets/{index-BfCSiT_X.js.map → index-9euhNa27.js.map} +1 -1
- package/build/client/assets/index-DLC5u33j.js +36 -0
- package/build/client/assets/index-DLC5u33j.js.map +1 -0
- package/build/client/assets/{index-Dkt2MSig.js → index-DPHVg8Eh.js} +2 -2
- package/build/client/assets/{index-Dkt2MSig.js.map → index-DPHVg8Eh.js.map} +1 -1
- package/build/client/assets/infoDiagram-PH2N3AL5-D-nEozcT.js +3 -0
- package/build/client/assets/{infoDiagram-PH2N3AL5-x87RxSs8.js.map → infoDiagram-PH2N3AL5-D-nEozcT.js.map} +1 -1
- package/build/client/assets/{journeyDiagram-U35MCT3I-D5yGbOLJ.js → journeyDiagram-U35MCT3I-Dc8g8jIX.js} +2 -2
- package/build/client/assets/{journeyDiagram-U35MCT3I-D5yGbOLJ.js.map → journeyDiagram-U35MCT3I-Dc8g8jIX.js.map} +1 -1
- package/build/client/assets/{kanban-definition-NDS4AKOZ-BM6KyRww.js → kanban-definition-NDS4AKOZ-BwwcaZU2.js} +2 -2
- package/build/client/assets/{kanban-definition-NDS4AKOZ-BM6KyRww.js.map → kanban-definition-NDS4AKOZ-BwwcaZU2.js.map} +1 -1
- package/build/client/assets/{layout-qCiM2Jgn.js → layout-BAeq0-Is.js} +2 -2
- package/build/client/assets/{layout-qCiM2Jgn.js.map → layout-BAeq0-Is.js.map} +1 -1
- package/build/client/assets/{linear-B3zp51yW.js → linear-LWRPSVMz.js} +2 -2
- package/build/client/assets/{linear-B3zp51yW.js.map → linear-LWRPSVMz.js.map} +1 -1
- package/build/client/assets/{loading-BPTYJOXN.js → loading-b1FV2pQh.js} +2 -2
- package/build/client/assets/{loading-BPTYJOXN.js.map → loading-b1FV2pQh.js.map} +1 -1
- package/build/client/assets/{login-CfyUfm-m.js → login-Ci7cdiuj.js} +2 -2
- package/build/client/assets/{login-CfyUfm-m.js.map → login-Ci7cdiuj.js.map} +1 -1
- package/build/client/assets/{manifest-fe4b7228.js → manifest-c68964f2.js} +1 -1
- package/build/client/assets/{mdx-Dfsh6Vjk.js → mdx-C7imFHZE.js} +3 -3
- package/build/client/assets/{mdx-Dfsh6Vjk.js.map → mdx-C7imFHZE.js.map} +1 -1
- package/build/client/assets/{mermaid.core-ZaxoMXOj.js → mermaid.core-q9C-HfFu.js} +5 -5
- package/build/client/assets/{mermaid.core-ZaxoMXOj.js.map → mermaid.core-q9C-HfFu.js.map} +1 -1
- package/build/client/assets/{mindmap-definition-ALO5MXBD-CF3siXp6.js → mindmap-definition-ALO5MXBD-BhzLy0Zl.js} +2 -2
- package/build/client/assets/{mindmap-definition-ALO5MXBD-CF3siXp6.js.map → mindmap-definition-ALO5MXBD-BhzLy0Zl.js.map} +1 -1
- package/build/client/assets/{onboarding-5LC4kIVW.js → onboarding-c9ZuxLsm.js} +2 -2
- package/build/client/assets/{onboarding-5LC4kIVW.js.map → onboarding-c9ZuxLsm.js.map} +1 -1
- package/build/client/assets/{online-IWqRB9zP.js → online-DZKJk3C2.js} +2 -2
- package/build/client/assets/{online-IWqRB9zP.js.map → online-DZKJk3C2.js.map} +1 -1
- package/build/client/assets/{pieDiagram-IB7DONF6-B-gWQIHI.js → pieDiagram-IB7DONF6-CaTGj8RH.js} +2 -2
- package/build/client/assets/{pieDiagram-IB7DONF6-B-gWQIHI.js.map → pieDiagram-IB7DONF6-CaTGj8RH.js.map} +1 -1
- package/build/client/assets/{presence-BAL3jDku.js → presence-C9bUSihT.js} +2 -2
- package/build/client/assets/{presence-BAL3jDku.js.map → presence-C9bUSihT.js.map} +1 -1
- package/build/client/assets/{preview-D4amucCL.js → preview-CqZGJtsE.js} +2 -2
- package/build/client/assets/{preview-D4amucCL.js.map → preview-CqZGJtsE.js.map} +1 -1
- package/build/client/assets/{product-Cyum2biy.js → product-DJOWNuL-.js} +2 -2
- package/build/client/assets/{product-Cyum2biy.js.map → product-DJOWNuL-.js.map} +1 -1
- package/build/client/assets/{quadrantDiagram-7GDLP6J5-BQzo7p61.js → quadrantDiagram-7GDLP6J5-B4Od6z6p.js} +2 -2
- package/build/client/assets/{quadrantDiagram-7GDLP6J5-BQzo7p61.js.map → quadrantDiagram-7GDLP6J5-B4Od6z6p.js.map} +1 -1
- package/build/client/assets/{radar-MK3ICKWK-CM-Iz9PA.js → radar-MK3ICKWK-CENXhI0E.js} +2 -2
- package/build/client/assets/{radar-MK3ICKWK-CM-Iz9PA.js.map → radar-MK3ICKWK-CENXhI0E.js.map} +1 -1
- package/build/client/assets/{requirementDiagram-KVF5MWMF-DzaHc66R.js → requirementDiagram-KVF5MWMF-_w0WuUxy.js} +2 -2
- package/build/client/assets/{requirementDiagram-KVF5MWMF-DzaHc66R.js.map → requirementDiagram-KVF5MWMF-_w0WuUxy.js.map} +1 -1
- package/build/client/assets/{revalidation-ws-ho-umDqd.js → revalidation-ws-B0skixgr.js} +2 -2
- package/build/client/assets/{revalidation-ws-ho-umDqd.js.map → revalidation-ws-B0skixgr.js.map} +1 -1
- package/build/client/assets/root-JfOw9N7j.js +11 -0
- package/build/client/assets/root-JfOw9N7j.js.map +1 -0
- package/build/client/assets/{sankeyDiagram-QLVOVGJD-DfAVeZCk.js → sankeyDiagram-QLVOVGJD-Bt8556P1.js} +2 -2
- package/build/client/assets/{sankeyDiagram-QLVOVGJD-DfAVeZCk.js.map → sankeyDiagram-QLVOVGJD-Bt8556P1.js.map} +1 -1
- package/build/client/assets/{sequenceDiagram-X6HHIX6F-CljZRLoS.js → sequenceDiagram-X6HHIX6F-y2-oW3Ob.js} +2 -2
- package/build/client/assets/{sequenceDiagram-X6HHIX6F-CljZRLoS.js.map → sequenceDiagram-X6HHIX6F-y2-oW3Ob.js.map} +1 -1
- package/build/client/assets/{stateDiagram-DGXRK772-BzVfGv3W.js → stateDiagram-DGXRK772-B3BuD15b.js} +2 -2
- package/build/client/assets/{stateDiagram-DGXRK772-BzVfGv3W.js.map → stateDiagram-DGXRK772-B3BuD15b.js.map} +1 -1
- package/build/client/assets/{stateDiagram-v2-YXO3MK2T-8oX001yq.js → stateDiagram-v2-YXO3MK2T-BzFxWpqR.js} +2 -2
- package/build/client/assets/{stateDiagram-v2-YXO3MK2T-8oX001yq.js.map → stateDiagram-v2-YXO3MK2T-BzFxWpqR.js.map} +1 -1
- package/build/client/assets/{test-C14D-N72.js → test-DdUNKtkF.js} +2 -2
- package/build/client/assets/{test-C14D-N72.js.map → test-DdUNKtkF.js.map} +1 -1
- package/build/client/assets/{tests-6__AtHpI.js → tests-B1ak2CDI.js} +2 -2
- package/build/client/assets/{tests-6__AtHpI.js.map → tests-B1ak2CDI.js.map} +1 -1
- package/build/client/assets/{timeline-definition-BDJGKUSR-2TO9MtLY.js → timeline-definition-BDJGKUSR-DUa2yfAV.js} +2 -2
- package/build/client/assets/{timeline-definition-BDJGKUSR-2TO9MtLY.js.map → timeline-definition-BDJGKUSR-DUa2yfAV.js.map} +1 -1
- package/build/client/assets/{xychartDiagram-VJFVF3MP-Dh4nsbBT.js → xychartDiagram-VJFVF3MP-JztjcODi.js} +2 -2
- package/build/client/assets/{xychartDiagram-VJFVF3MP-Dh4nsbBT.js.map → xychartDiagram-VJFVF3MP-JztjcODi.js.map} +1 -1
- package/build/server/index.js +138 -163
- package/build/server/index.js.map +1 -1
- package/dist/server/index.js +82 -80
- package/package.json +3 -3
- package/build/client/assets/channel-5s71-OE9.js +0 -2
- package/build/client/assets/classDiagram-GIVACNV2-CWogZCzR.js +0 -2
- package/build/client/assets/classDiagram-v2-COTLJTTW-CWogZCzR.js +0 -2
- package/build/client/assets/clone-nHZ14b_E.js +0 -2
- package/build/client/assets/index-CEP3Xxa0.js +0 -36
- package/build/client/assets/index-CEP3Xxa0.js.map +0 -1
- package/build/client/assets/infoDiagram-PH2N3AL5-x87RxSs8.js +0 -3
- package/build/client/assets/root-tJmOmO9T.js +0 -11
- package/build/client/assets/root-tJmOmO9T.js.map +0 -1
- package/build/client/assets/update-repo-l0sNRNKZ.js +0 -2
- package/build/client/assets/update-repo-l0sNRNKZ.js.map +0 -1
package/build/server/index.js
CHANGED
|
@@ -13,7 +13,7 @@ import { getUserId, getSetClientIdCookieHeader } from "@epic-web/workshop-utils/
|
|
|
13
13
|
import { z } from "zod";
|
|
14
14
|
import { getApps, getExercises, getPlaygroundAppName, extractNumbersAndTypeFromAppNameOrPath, getAppFromFile, getAppByName, isProblemApp, isPlaygroundApp, isExerciseStepApp, getExercise, isSolutionApp, isExampleApp, getRelativePath as getRelativePath$1, getWorkshopRoot, 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
|
-
import { checkForUpdatesCached,
|
|
16
|
+
import { checkForUpdatesCached, getCommitInfo, getLatestWorkshopAppVersion } from "@epic-web/workshop-utils/git.server";
|
|
17
17
|
import { getUnmutedNotifications } from "@epic-web/workshop-utils/notifications.server";
|
|
18
18
|
import { makeTimings, getServerTimeHeader, combineServerTimings, time } from "@epic-web/workshop-utils/timing.server";
|
|
19
19
|
import { checkConnectionCached, dayjs } from "@epic-web/workshop-utils/utils.server";
|
|
@@ -29,7 +29,6 @@ import React__default, { useRef, useEffect, useMemo, useState, useSyncExternalSt
|
|
|
29
29
|
import { extendTailwindMerge } from "tailwind-merge";
|
|
30
30
|
import { Toaster, toast } from "sonner";
|
|
31
31
|
import * as TooltipPrimitive from "@radix-ui/react-tooltip";
|
|
32
|
-
import child_process, { spawn } from "child_process";
|
|
33
32
|
import { useForm, getFormProps } from "@conform-to/react";
|
|
34
33
|
import { parseWithZod } from "@conform-to/zod";
|
|
35
34
|
import { getHintUtils } from "@epic-web/client-hints";
|
|
@@ -54,6 +53,7 @@ import { getDirModifiedTime } from "@epic-web/workshop-utils/modified-time.serve
|
|
|
54
53
|
import * as esbuild from "esbuild";
|
|
55
54
|
import { ElementScrollRestoration } from "@epic-web/restore-scroll";
|
|
56
55
|
import RealMuxPlayer, { MaxResolution, MinResolution } from "@mux/mux-player-react";
|
|
56
|
+
import child_process from "child_process";
|
|
57
57
|
import os from "os";
|
|
58
58
|
import shellQuote from "shell-quote";
|
|
59
59
|
import { LRUCache } from "lru-cache";
|
|
@@ -718,7 +718,106 @@ function SimpleTooltip({
|
|
|
718
718
|
/* @__PURE__ */ jsx(TooltipContent, { children: content })
|
|
719
719
|
] });
|
|
720
720
|
}
|
|
721
|
-
|
|
721
|
+
function UpdateToast({
|
|
722
|
+
repoUpdates
|
|
723
|
+
}) {
|
|
724
|
+
const { updatesAvailable, diffLink, remoteCommit } = repoUpdates;
|
|
725
|
+
const inProgressToastId = useRef(
|
|
726
|
+
null
|
|
727
|
+
);
|
|
728
|
+
const updateNotificationId = useRef(
|
|
729
|
+
null
|
|
730
|
+
);
|
|
731
|
+
const updateInProgress = useRef(false);
|
|
732
|
+
useEffect(() => {
|
|
733
|
+
if (updatesAvailable && remoteCommit) {
|
|
734
|
+
const id = toast.info("New workshop updates available", {
|
|
735
|
+
duration: Infinity,
|
|
736
|
+
description: /* @__PURE__ */ jsxs("div", { children: [
|
|
737
|
+
`Get the latest updates by clicking the update button. `,
|
|
738
|
+
diffLink ? /* @__PURE__ */ jsx(
|
|
739
|
+
"a",
|
|
740
|
+
{
|
|
741
|
+
href: diffLink,
|
|
742
|
+
target: "_blank",
|
|
743
|
+
rel: "noreferrer",
|
|
744
|
+
className: "text-xs underline",
|
|
745
|
+
children: "View changes"
|
|
746
|
+
}
|
|
747
|
+
) : null
|
|
748
|
+
] }),
|
|
749
|
+
onDismiss: () => {
|
|
750
|
+
},
|
|
751
|
+
action: {
|
|
752
|
+
label: "Update",
|
|
753
|
+
onClick: async () => {
|
|
754
|
+
if (updateNotificationId.current) {
|
|
755
|
+
toast.dismiss(updateNotificationId.current);
|
|
756
|
+
updateNotificationId.current = null;
|
|
757
|
+
}
|
|
758
|
+
if (!inProgressToastId.current) {
|
|
759
|
+
inProgressToastId.current = toast.loading("Update in progress...");
|
|
760
|
+
}
|
|
761
|
+
if (updateInProgress.current) return;
|
|
762
|
+
updateInProgress.current = true;
|
|
763
|
+
try {
|
|
764
|
+
const { EPICSHOP_PARENT_PORT, EPICSHOP_PARENT_TOKEN } = window.ENV || {};
|
|
765
|
+
if (!EPICSHOP_PARENT_PORT || !EPICSHOP_PARENT_TOKEN) {
|
|
766
|
+
throw new Error("Update API not available");
|
|
767
|
+
}
|
|
768
|
+
const res = await fetch(
|
|
769
|
+
`http://localhost:${EPICSHOP_PARENT_PORT}/__epicshop-restart`,
|
|
770
|
+
{
|
|
771
|
+
method: "POST",
|
|
772
|
+
headers: {
|
|
773
|
+
"x-epicshop-token": EPICSHOP_PARENT_TOKEN
|
|
774
|
+
}
|
|
775
|
+
}
|
|
776
|
+
);
|
|
777
|
+
if (res.ok) {
|
|
778
|
+
throw new Error("Request to update workshop failed");
|
|
779
|
+
}
|
|
780
|
+
const data = await res.json().catch(() => ({}));
|
|
781
|
+
const schema = z.object({
|
|
782
|
+
status: z.enum(["ok", "error"]),
|
|
783
|
+
message: z.string().optional()
|
|
784
|
+
});
|
|
785
|
+
const parsed = schema.safeParse(data);
|
|
786
|
+
if (!parsed.success) {
|
|
787
|
+
console.error("Invalid response from update API", data);
|
|
788
|
+
throw new Error("Invalid response from update API");
|
|
789
|
+
}
|
|
790
|
+
const { status, message } = parsed.data;
|
|
791
|
+
if (status === "ok") {
|
|
792
|
+
toast.success("Workshop updated", {
|
|
793
|
+
description: "Refreshing the page..."
|
|
794
|
+
});
|
|
795
|
+
window.location.reload();
|
|
796
|
+
} else {
|
|
797
|
+
toast.error("Failed to update workshop", {
|
|
798
|
+
description: message || "Unknown error"
|
|
799
|
+
});
|
|
800
|
+
}
|
|
801
|
+
} catch (err) {
|
|
802
|
+
toast.error("Failed to update workshop", {
|
|
803
|
+
description: err instanceof Error ? err.message : String(err)
|
|
804
|
+
});
|
|
805
|
+
} finally {
|
|
806
|
+
updateInProgress.current = false;
|
|
807
|
+
if (inProgressToastId.current) {
|
|
808
|
+
toast.dismiss(inProgressToastId.current);
|
|
809
|
+
inProgressToastId.current = null;
|
|
810
|
+
}
|
|
811
|
+
}
|
|
812
|
+
}
|
|
813
|
+
}
|
|
814
|
+
});
|
|
815
|
+
updateNotificationId.current = id;
|
|
816
|
+
}
|
|
817
|
+
}, [updatesAvailable, diffLink, remoteCommit]);
|
|
818
|
+
return null;
|
|
819
|
+
}
|
|
820
|
+
async function action$d({ request }) {
|
|
722
821
|
const formData = await request.formData();
|
|
723
822
|
const intent = formData.get("intent");
|
|
724
823
|
const id = formData.get("id");
|
|
@@ -773,122 +872,6 @@ function Notifications({
|
|
|
773
872
|
const route30 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
774
873
|
__proto__: null,
|
|
775
874
|
Notifications,
|
|
776
|
-
action: action$e
|
|
777
|
-
}, Symbol.toStringTag, { value: "Module" }));
|
|
778
|
-
async function action$d({ request }) {
|
|
779
|
-
const formData = await request.formData();
|
|
780
|
-
const intent = formData.get("intent");
|
|
781
|
-
const id = formData.get("id");
|
|
782
|
-
if (intent === "dismiss" && typeof id === "string") {
|
|
783
|
-
await muteNotification(`update-repo-${id}`);
|
|
784
|
-
return json({ type: "dismissed" });
|
|
785
|
-
}
|
|
786
|
-
if (intent === "update" && typeof id === "string") {
|
|
787
|
-
const updates = await checkForUpdatesCached();
|
|
788
|
-
if (!updates.updatesAvailable) {
|
|
789
|
-
return json({ type: "error", error: "No updates available" }, {
|
|
790
|
-
status: 400
|
|
791
|
-
});
|
|
792
|
-
}
|
|
793
|
-
await updateLocalRepo();
|
|
794
|
-
spawn(process.argv[0], process.argv.slice(1), {
|
|
795
|
-
detached: true,
|
|
796
|
-
stdio: "inherit",
|
|
797
|
-
env: {
|
|
798
|
-
...process.env,
|
|
799
|
-
EPICSHOP_SLOW_START: "true"
|
|
800
|
-
}
|
|
801
|
-
});
|
|
802
|
-
setTimeout(() => {
|
|
803
|
-
console.log("exiting the old server process");
|
|
804
|
-
process.exit(0);
|
|
805
|
-
}, 200);
|
|
806
|
-
return json({ type: "success" });
|
|
807
|
-
}
|
|
808
|
-
throw json({ type: "error", error: "Invalid intent" }, {
|
|
809
|
-
status: 400
|
|
810
|
-
});
|
|
811
|
-
}
|
|
812
|
-
function UpdateToast({
|
|
813
|
-
repoUpdates
|
|
814
|
-
}) {
|
|
815
|
-
const updateFetcher = useFetcher();
|
|
816
|
-
const updateFetcherRef = useRef(updateFetcher);
|
|
817
|
-
const dismissFetcher = useFetcher();
|
|
818
|
-
const dismissFetcherRef = useRef(dismissFetcher);
|
|
819
|
-
const { updatesAvailable, diffLink, remoteCommit } = repoUpdates;
|
|
820
|
-
useEffect(() => {
|
|
821
|
-
if (updatesAvailable && remoteCommit) {
|
|
822
|
-
toast.info("New workshop updates available", {
|
|
823
|
-
duration: Infinity,
|
|
824
|
-
description: /* @__PURE__ */ jsxs("div", { children: [
|
|
825
|
-
`Get the latest updates by clicking the update button. `,
|
|
826
|
-
diffLink ? /* @__PURE__ */ jsx(
|
|
827
|
-
"a",
|
|
828
|
-
{
|
|
829
|
-
href: diffLink,
|
|
830
|
-
target: "_blank",
|
|
831
|
-
rel: "noreferrer",
|
|
832
|
-
className: "text-xs underline",
|
|
833
|
-
children: "View changes"
|
|
834
|
-
}
|
|
835
|
-
) : null
|
|
836
|
-
] }),
|
|
837
|
-
onDismiss: () => {
|
|
838
|
-
const formData = new FormData();
|
|
839
|
-
formData.append("intent", "dismiss");
|
|
840
|
-
formData.append("id", remoteCommit);
|
|
841
|
-
dismissFetcherRef.current.submit(formData, {
|
|
842
|
-
method: "post",
|
|
843
|
-
action: "/admin/update-repo"
|
|
844
|
-
});
|
|
845
|
-
},
|
|
846
|
-
action: {
|
|
847
|
-
label: "Update",
|
|
848
|
-
onClick: () => {
|
|
849
|
-
const formData = new FormData();
|
|
850
|
-
formData.append("intent", "update");
|
|
851
|
-
formData.append("id", remoteCommit);
|
|
852
|
-
updateFetcherRef.current.submit(formData, {
|
|
853
|
-
method: "post",
|
|
854
|
-
action: "/admin/update-repo"
|
|
855
|
-
});
|
|
856
|
-
}
|
|
857
|
-
}
|
|
858
|
-
});
|
|
859
|
-
}
|
|
860
|
-
}, [updatesAvailable, diffLink, remoteCommit]);
|
|
861
|
-
const fetcherResponse = updateFetcher.data;
|
|
862
|
-
useEffect(() => {
|
|
863
|
-
if (!fetcherResponse) return;
|
|
864
|
-
if (fetcherResponse.type === "error") {
|
|
865
|
-
toast.error("Failed to update workshop", {
|
|
866
|
-
description: fetcherResponse.error
|
|
867
|
-
});
|
|
868
|
-
} else if (fetcherResponse.type === "success") {
|
|
869
|
-
toast.success("Workshop updated", {
|
|
870
|
-
description: "Refreshing the page in 5 seconds...",
|
|
871
|
-
action: {
|
|
872
|
-
label: "Refresh now",
|
|
873
|
-
onClick: () => {
|
|
874
|
-
window.location.reload();
|
|
875
|
-
}
|
|
876
|
-
}
|
|
877
|
-
});
|
|
878
|
-
setTimeout(() => {
|
|
879
|
-
window.location.reload();
|
|
880
|
-
}, 5e3);
|
|
881
|
-
} else {
|
|
882
|
-
toast.error("Failed to update workshop", {
|
|
883
|
-
description: "Unknown error"
|
|
884
|
-
});
|
|
885
|
-
}
|
|
886
|
-
}, [fetcherResponse]);
|
|
887
|
-
return null;
|
|
888
|
-
}
|
|
889
|
-
const route31 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
890
|
-
__proto__: null,
|
|
891
|
-
UpdateToast,
|
|
892
875
|
action: action$d
|
|
893
876
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
894
877
|
function useRequestInfo() {
|
|
@@ -1056,7 +1039,7 @@ function useTheme() {
|
|
|
1056
1039
|
}
|
|
1057
1040
|
return requestInfo.session.theme ?? hints.theme;
|
|
1058
1041
|
}
|
|
1059
|
-
const
|
|
1042
|
+
const route46 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1060
1043
|
__proto__: null,
|
|
1061
1044
|
ThemeSwitch,
|
|
1062
1045
|
action: action$c,
|
|
@@ -2125,7 +2108,7 @@ function ProgressToggle({
|
|
|
2125
2108
|
)
|
|
2126
2109
|
] });
|
|
2127
2110
|
}
|
|
2128
|
-
const
|
|
2111
|
+
const route40 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
2129
2112
|
__proto__: null,
|
|
2130
2113
|
ProgressToggle,
|
|
2131
2114
|
action: action$b,
|
|
@@ -3886,7 +3869,7 @@ async function loader$s({ request, params }) {
|
|
|
3886
3869
|
epicLiveReloadConnect({
|
|
3887
3870
|
onOpen: () => window.location.reload(),
|
|
3888
3871
|
}),
|
|
3889
|
-
|
|
3872
|
+
1000
|
|
3890
3873
|
);
|
|
3891
3874
|
}
|
|
3892
3875
|
};
|
|
@@ -4503,7 +4486,7 @@ function getMaxResolutionValue(resolution) {
|
|
|
4503
4486
|
if (resolution <= 1440) return MaxResolution.upTo1440p;
|
|
4504
4487
|
return MaxResolution.upTo2160p;
|
|
4505
4488
|
}
|
|
4506
|
-
const
|
|
4489
|
+
const route47 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
4507
4490
|
__proto__: null,
|
|
4508
4491
|
MuxPlayer,
|
|
4509
4492
|
action: action$8,
|
|
@@ -5611,7 +5594,7 @@ function EditFileOnGitHub({
|
|
|
5611
5594
|
);
|
|
5612
5595
|
}
|
|
5613
5596
|
const LaunchEditor = ENV.EPICSHOP_DEPLOYED ? LaunchGitHub : LaunchEditorImpl;
|
|
5614
|
-
const
|
|
5597
|
+
const route35 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
5615
5598
|
__proto__: null,
|
|
5616
5599
|
EditFileOnGitHub,
|
|
5617
5600
|
LaunchEditor,
|
|
@@ -6282,7 +6265,7 @@ function SetAppToPlayground({ appName }) {
|
|
|
6282
6265
|
}
|
|
6283
6266
|
);
|
|
6284
6267
|
}
|
|
6285
|
-
const
|
|
6268
|
+
const route42 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
6286
6269
|
__proto__: null,
|
|
6287
6270
|
PlaygroundChooser,
|
|
6288
6271
|
SetAppToPlayground,
|
|
@@ -7030,7 +7013,7 @@ function AppStarter({ name }) {
|
|
|
7030
7013
|
fetcher.state === "idle" ? /* @__PURE__ */ jsx(Button, { type: "submit", name: "intent", value: "start", varient: "mono", children: "Start App" }) : /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(Loading, { children: "Starting App" }) })
|
|
7031
7014
|
] });
|
|
7032
7015
|
}
|
|
7033
|
-
const
|
|
7016
|
+
const route44 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
7034
7017
|
__proto__: null,
|
|
7035
7018
|
AppStarter,
|
|
7036
7019
|
AppStopper,
|
|
@@ -8773,7 +8756,7 @@ function StopTest({
|
|
|
8773
8756
|
)
|
|
8774
8757
|
] });
|
|
8775
8758
|
}
|
|
8776
|
-
const
|
|
8759
|
+
const route45 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
8777
8760
|
__proto__: null,
|
|
8778
8761
|
ClearTest,
|
|
8779
8762
|
StopTest,
|
|
@@ -9845,7 +9828,7 @@ async function loader$e({ request }) {
|
|
|
9845
9828
|
};
|
|
9846
9829
|
});
|
|
9847
9830
|
}
|
|
9848
|
-
const
|
|
9831
|
+
const route36 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
9849
9832
|
__proto__: null,
|
|
9850
9833
|
EventSchema,
|
|
9851
9834
|
loader: loader$e
|
|
@@ -10602,7 +10585,7 @@ function Version() {
|
|
|
10602
10585
|
] })
|
|
10603
10586
|
] });
|
|
10604
10587
|
}
|
|
10605
|
-
const
|
|
10588
|
+
const route31 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
10606
10589
|
__proto__: null,
|
|
10607
10590
|
default: Version,
|
|
10608
10591
|
handle: handle$1,
|
|
@@ -10617,7 +10600,7 @@ async function loader$7({ request }) {
|
|
|
10617
10600
|
{ headers: { "Server-Timing": getServerTimeHeader(timings) } }
|
|
10618
10601
|
);
|
|
10619
10602
|
}
|
|
10620
|
-
const
|
|
10603
|
+
const route32 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
10621
10604
|
__proto__: null,
|
|
10622
10605
|
loader: loader$7
|
|
10623
10606
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
@@ -10706,7 +10689,7 @@ function DiffViewer() {
|
|
|
10706
10689
|
}
|
|
10707
10690
|
);
|
|
10708
10691
|
}
|
|
10709
|
-
const
|
|
10692
|
+
const route33 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
10710
10693
|
__proto__: null,
|
|
10711
10694
|
default: DiffViewer,
|
|
10712
10695
|
loader: loader$6
|
|
@@ -10719,7 +10702,7 @@ async function loader$5({ request }) {
|
|
|
10719
10702
|
{ headers: { "Server-Timing": getServerTimeHeader(timings) } }
|
|
10720
10703
|
);
|
|
10721
10704
|
}
|
|
10722
|
-
const
|
|
10705
|
+
const route34 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
10723
10706
|
__proto__: null,
|
|
10724
10707
|
loader: loader$5
|
|
10725
10708
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
@@ -11050,7 +11033,7 @@ function OgLayout({
|
|
|
11050
11033
|
}
|
|
11051
11034
|
);
|
|
11052
11035
|
}
|
|
11053
|
-
const
|
|
11036
|
+
const route37 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
11054
11037
|
__proto__: null,
|
|
11055
11038
|
loader: loader$4
|
|
11056
11039
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
@@ -11098,7 +11081,7 @@ function Onboarding() {
|
|
|
11098
11081
|
/* @__PURE__ */ jsx(Form, { method: "post", className: "pb-4", children: /* @__PURE__ */ jsx(Button, { name: "intent", value: "complete", varient: "primary", children: "I've watched it. Let's go!" }) })
|
|
11099
11082
|
] });
|
|
11100
11083
|
}
|
|
11101
|
-
const
|
|
11084
|
+
const route38 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
11102
11085
|
__proto__: null,
|
|
11103
11086
|
action,
|
|
11104
11087
|
default: Onboarding,
|
|
@@ -11124,7 +11107,7 @@ async function loader$2() {
|
|
|
11124
11107
|
}
|
|
11125
11108
|
return Response.json({ processes, testProcesses });
|
|
11126
11109
|
}
|
|
11127
|
-
const
|
|
11110
|
+
const route39 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
11128
11111
|
__proto__: null,
|
|
11129
11112
|
loader: loader$2
|
|
11130
11113
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
@@ -11133,7 +11116,7 @@ function loader$1({ request }) {
|
|
|
11133
11116
|
{ type: "sitemap", value: `${getDomainUrl(request)}/sitemap.xml` }
|
|
11134
11117
|
]);
|
|
11135
11118
|
}
|
|
11136
|
-
const
|
|
11119
|
+
const route41 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
11137
11120
|
__proto__: null,
|
|
11138
11121
|
loader: loader$1
|
|
11139
11122
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
@@ -11146,11 +11129,11 @@ async function loader({ request, context }) {
|
|
|
11146
11129
|
}
|
|
11147
11130
|
});
|
|
11148
11131
|
}
|
|
11149
|
-
const
|
|
11132
|
+
const route43 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
11150
11133
|
__proto__: null,
|
|
11151
11134
|
loader
|
|
11152
11135
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
11153
|
-
const serverManifest = { "entry": { "module": "/assets/entry.client-BLUlgPHE.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/components-5arJTWsS.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-tJmOmO9T.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/components-5arJTWsS.js", "/assets/misc-2sBiisF5.js", "/assets/pe-BShc2dvc.js", "/assets/error-boundary-B07cWiEy.js", "/assets/progress-bar-DgnkQxQw.js", "/assets/index-DvQyydjU.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/index-CEP3Xxa0.js", "/assets/presence-BAL3jDku.js", "/assets/seo-pBpFCWsy.js", "/assets/online-IWqRB9zP.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/_-BaHOmd8F.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/error-boundary-B07cWiEy.js", "/assets/misc-2sBiisF5.js", "/assets/components-5arJTWsS.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-D1r_62oj.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/misc-2sBiisF5.js", "/assets/pe-BShc2dvc.js", "/assets/product-Cyum2biy.js", "/assets/revalidation-ws-ho-umDqd.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/index-Do-KWT0a.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/online-IWqRB9zP.js", "/assets/presence-BAL3jDku.js", "/assets/progress-BJ4ADF-s.js", "/assets/index-CEP3Xxa0.js", "/assets/components-5arJTWsS.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-CbFDiVNd.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/button-Dt4EcDfR.js", "/assets/misc-2sBiisF5.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/components-5arJTWsS.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-ut4t-aMQ.js", "imports": ["/assets/discord-BU7RzE6-.js", "/assets/index-Dsusf_Av.js", "/assets/misc-2sBiisF5.js", "/assets/components-5arJTWsS.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.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-D7_F6t3x.js", "imports": ["/assets/index-Dsusf_Av.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-DtILU6SM.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/index-B8yUFowV.js", "/assets/epic-video-DN9DRRHf.js", "/assets/revalidation-ws-ho-umDqd.js", "/assets/mdx-Dfsh6Vjk.js", "/assets/progress-BJ4ADF-s.js", "/assets/misc-2sBiisF5.js", "/assets/seo-pBpFCWsy.js", "/assets/components-5arJTWsS.js", "/assets/index-CEP3Xxa0.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/pe-BShc2dvc.js", "/assets/online-IWqRB9zP.js", "/assets/loading-BPTYJOXN.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/progress-bar-DgnkQxQw.js"], "css": ["/assets/epic-video-D2Xftn6t.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-DoOFEk-P.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/misc-2sBiisF5.js", "/assets/components-5arJTWsS.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-DzlTTMQ0.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/index-B8yUFowV.js", "/assets/error-boundary-B07cWiEy.js", "/assets/nav-chevrons-CV-dpXNR.js", "/assets/revalidation-ws-ho-umDqd.js", "/assets/mdx-Dfsh6Vjk.js", "/assets/progress-BJ4ADF-s.js", "/assets/set-playground-DW2Ys-rV.js", "/assets/misc-2sBiisF5.js", "/assets/seo-pBpFCWsy.js", "/assets/epic-video-DN9DRRHf.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/index-CEP3Xxa0.js", "/assets/components-5arJTWsS.js", "/assets/index-Do-KWT0a.js", "/assets/progress-bar-DgnkQxQw.js", "/assets/pe-BShc2dvc.js", "/assets/index-BmMpCvYx.js", "/assets/online-IWqRB9zP.js", "/assets/loading-BPTYJOXN.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js"], "css": ["/assets/epic-video-D2Xftn6t.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-CQvK51s0.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/preview-D4amucCL.js", "/assets/components-5arJTWsS.js", "/assets/misc-2sBiisF5.js", "/assets/button-Dt4EcDfR.js", "/assets/loading-BPTYJOXN.js", "/assets/index-CEP3Xxa0.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/pe-BShc2dvc.js", "/assets/progress-bar-DgnkQxQw.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-Dkt2MSig.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/index-BmMpCvYx.js", "/assets/misc-2sBiisF5.js", "/assets/diff-Bu4t2NGL.js", "/assets/error-boundary-B07cWiEy.js", "/assets/loading-BPTYJOXN.js", "/assets/discord-BU7RzE6-.js", "/assets/online-IWqRB9zP.js", "/assets/components-5arJTWsS.js", "/assets/index-DvQyydjU.js", "/assets/set-playground-DW2Ys-rV.js", "/assets/tests-6__AtHpI.js", "/assets/preview-D4amucCL.js", "/assets/index-Do-KWT0a.js", "/assets/accordion-CpiLc1m2.js", "/assets/mdx-Dfsh6Vjk.js", "/assets/epic-video-DN9DRRHf.js", "/assets/index-CEP3Xxa0.js", "/assets/pe-BShc2dvc.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/progress-bar-DgnkQxQw.js", "/assets/revalidation-ws-ho-umDqd.js", "/assets/use-event-source-Dar8h_B8.js", "/assets/button-Dt4EcDfR.js"], "css": ["/assets/epic-video-D2Xftn6t.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-C14D-N72.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/tests-6__AtHpI.js", "/assets/components-5arJTWsS.js", "/assets/epic-video-DN9DRRHf.js", "/assets/index-CEP3Xxa0.js", "/assets/misc-2sBiisF5.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/pe-BShc2dvc.js", "/assets/online-IWqRB9zP.js", "/assets/loading-BPTYJOXN.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/accordion-CpiLc1m2.js", "/assets/index-BmMpCvYx.js", "/assets/index-Do-KWT0a.js", "/assets/use-event-source-Dar8h_B8.js", "/assets/set-playground-DW2Ys-rV.js", "/assets/progress-bar-DgnkQxQw.js"], "css": ["/assets/epic-video-D2Xftn6t.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-CEK9anWX.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/index-B8yUFowV.js", "/assets/epic-video-DN9DRRHf.js", "/assets/misc-2sBiisF5.js", "/assets/loading-BPTYJOXN.js", "/assets/nav-chevrons-CV-dpXNR.js", "/assets/revalidation-ws-ho-umDqd.js", "/assets/mdx-Dfsh6Vjk.js", "/assets/progress-BJ4ADF-s.js", "/assets/index-CEP3Xxa0.js", "/assets/online-IWqRB9zP.js", "/assets/seo-pBpFCWsy.js", "/assets/components-5arJTWsS.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/progress-bar-DgnkQxQw.js", "/assets/pe-BShc2dvc.js", "/assets/tooltip-Bzd6O8vq.js"], "css": ["/assets/epic-video-D2Xftn6t.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-B3G1RUDO.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/index-B8yUFowV.js", "/assets/epic-video-DN9DRRHf.js", "/assets/misc-2sBiisF5.js", "/assets/loading-BPTYJOXN.js", "/assets/nav-chevrons-CV-dpXNR.js", "/assets/revalidation-ws-ho-umDqd.js", "/assets/mdx-Dfsh6Vjk.js", "/assets/online-IWqRB9zP.js", "/assets/seo-pBpFCWsy.js", "/assets/progress-BJ4ADF-s.js", "/assets/index-CEP3Xxa0.js", "/assets/components-5arJTWsS.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/progress-bar-DgnkQxQw.js", "/assets/pe-BShc2dvc.js", "/assets/tooltip-Bzd6O8vq.js"], "css": ["/assets/epic-video-D2Xftn6t.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-BfCSiT_X.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/index-B8yUFowV.js", "/assets/epic-video-DN9DRRHf.js", "/assets/error-boundary-B07cWiEy.js", "/assets/mdx-Dfsh6Vjk.js", "/assets/misc-2sBiisF5.js", "/assets/progress-BJ4ADF-s.js", "/assets/components-5arJTWsS.js", "/assets/index-CEP3Xxa0.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/pe-BShc2dvc.js", "/assets/online-IWqRB9zP.js", "/assets/loading-BPTYJOXN.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/progress-bar-DgnkQxQw.js"], "css": ["/assets/epic-video-D2Xftn6t.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-CfyUfm-m.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/use-event-source-Dar8h_B8.js", "/assets/button-Dt4EcDfR.js", "/assets/loading-BPTYJOXN.js", "/assets/product-Cyum2biy.js", "/assets/workshop-config-DchzGYJM.js", "/assets/index-CEP3Xxa0.js", "/assets/components-5arJTWsS.js", "/assets/misc-2sBiisF5.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/pe-BShc2dvc.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-BkWQyRCq.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/button-Dt4EcDfR.js", "/assets/misc-2sBiisF5.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/components-5arJTWsS.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-Bg0iSyle.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/components-5arJTWsS.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-B_BIIcpM.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/components-5arJTWsS.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-Fw2eA3AF.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/misc-2sBiisF5.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/progress-BJ4ADF-s.js", "/assets/components-5arJTWsS.js", "/assets/pe-BShc2dvc.js"], "css": [] }, "routes/admin+/notifications": { "id": "routes/admin+/notifications", "parentId": "routes/admin+/_layout", "path": "notifications", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/notifications-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/admin+/update-repo": { "id": "routes/admin+/update-repo", "parentId": "routes/admin+/_layout", "path": "update-repo", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/update-repo-l0sNRNKZ.js", "imports": [], "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-DriSvNMy.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/workshop-config-DchzGYJM.js", "/assets/components-5arJTWsS.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-8N5KyD7o.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/misc-2sBiisF5.js", "/assets/diff-Bu4t2NGL.js", "/assets/nav-chevrons-CV-dpXNR.js", "/assets/components-5arJTWsS.js", "/assets/accordion-CpiLc1m2.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/index-BmMpCvYx.js", "/assets/index-Do-KWT0a.js", "/assets/mdx-Dfsh6Vjk.js", "/assets/epic-video-DN9DRRHf.js", "/assets/index-CEP3Xxa0.js", "/assets/pe-BShc2dvc.js", "/assets/online-IWqRB9zP.js", "/assets/loading-BPTYJOXN.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/progress-bar-DgnkQxQw.js", "/assets/revalidation-ws-ho-umDqd.js"], "css": ["/assets/epic-video-D2Xftn6t.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-5LC4kIVW.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/button-Dt4EcDfR.js", "/assets/epic-video-DN9DRRHf.js", "/assets/components-5arJTWsS.js", "/assets/misc-2sBiisF5.js", "/assets/index-CEP3Xxa0.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/pe-BShc2dvc.js", "/assets/online-IWqRB9zP.js", "/assets/loading-BPTYJOXN.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js"], "css": ["/assets/epic-video-D2Xftn6t.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-fe4b7228.js", "version": "fe4b7228" };
|
|
11136
|
+
const serverManifest = { "entry": { "module": "/assets/entry.client-BLUlgPHE.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/components-5arJTWsS.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-JfOw9N7j.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/components-5arJTWsS.js", "/assets/misc-2sBiisF5.js", "/assets/pe-BShc2dvc.js", "/assets/error-boundary-B07cWiEy.js", "/assets/progress-bar-DgnkQxQw.js", "/assets/index-DvQyydjU.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/index-DLC5u33j.js", "/assets/presence-C9bUSihT.js", "/assets/seo-pBpFCWsy.js", "/assets/online-DZKJk3C2.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/_-BaHOmd8F.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/error-boundary-B07cWiEy.js", "/assets/misc-2sBiisF5.js", "/assets/components-5arJTWsS.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-B_NrRv0S.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/misc-2sBiisF5.js", "/assets/pe-BShc2dvc.js", "/assets/product-DJOWNuL-.js", "/assets/revalidation-ws-B0skixgr.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/index-Do-KWT0a.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/online-DZKJk3C2.js", "/assets/presence-C9bUSihT.js", "/assets/progress-BJ4ADF-s.js", "/assets/index-DLC5u33j.js", "/assets/components-5arJTWsS.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-CbFDiVNd.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/button-Dt4EcDfR.js", "/assets/misc-2sBiisF5.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/components-5arJTWsS.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-ut4t-aMQ.js", "imports": ["/assets/discord-BU7RzE6-.js", "/assets/index-Dsusf_Av.js", "/assets/misc-2sBiisF5.js", "/assets/components-5arJTWsS.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.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-D7_F6t3x.js", "imports": ["/assets/index-Dsusf_Av.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-Dqi7TgL9.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/index-B8yUFowV.js", "/assets/epic-video-CmlkW6Rw.js", "/assets/revalidation-ws-B0skixgr.js", "/assets/mdx-C7imFHZE.js", "/assets/progress-BJ4ADF-s.js", "/assets/misc-2sBiisF5.js", "/assets/seo-pBpFCWsy.js", "/assets/components-5arJTWsS.js", "/assets/index-DLC5u33j.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/pe-BShc2dvc.js", "/assets/online-DZKJk3C2.js", "/assets/loading-b1FV2pQh.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/progress-bar-DgnkQxQw.js"], "css": ["/assets/epic-video-D2Xftn6t.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-DoOFEk-P.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/misc-2sBiisF5.js", "/assets/components-5arJTWsS.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-QRe2q83m.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/index-B8yUFowV.js", "/assets/error-boundary-B07cWiEy.js", "/assets/nav-chevrons-CV-dpXNR.js", "/assets/revalidation-ws-B0skixgr.js", "/assets/mdx-C7imFHZE.js", "/assets/progress-BJ4ADF-s.js", "/assets/set-playground-DW2Ys-rV.js", "/assets/misc-2sBiisF5.js", "/assets/seo-pBpFCWsy.js", "/assets/epic-video-CmlkW6Rw.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/index-DLC5u33j.js", "/assets/components-5arJTWsS.js", "/assets/index-Do-KWT0a.js", "/assets/progress-bar-DgnkQxQw.js", "/assets/pe-BShc2dvc.js", "/assets/index-BmMpCvYx.js", "/assets/online-DZKJk3C2.js", "/assets/loading-b1FV2pQh.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js"], "css": ["/assets/epic-video-D2Xftn6t.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-BYSDu0vh.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/preview-CqZGJtsE.js", "/assets/components-5arJTWsS.js", "/assets/misc-2sBiisF5.js", "/assets/button-Dt4EcDfR.js", "/assets/loading-b1FV2pQh.js", "/assets/index-DLC5u33j.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/pe-BShc2dvc.js", "/assets/progress-bar-DgnkQxQw.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-DPHVg8Eh.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/index-BmMpCvYx.js", "/assets/misc-2sBiisF5.js", "/assets/diff-D5_VwPLF.js", "/assets/error-boundary-B07cWiEy.js", "/assets/loading-b1FV2pQh.js", "/assets/discord-BU7RzE6-.js", "/assets/online-DZKJk3C2.js", "/assets/components-5arJTWsS.js", "/assets/index-DvQyydjU.js", "/assets/set-playground-DW2Ys-rV.js", "/assets/tests-B1ak2CDI.js", "/assets/preview-CqZGJtsE.js", "/assets/index-Do-KWT0a.js", "/assets/accordion-CpiLc1m2.js", "/assets/mdx-C7imFHZE.js", "/assets/epic-video-CmlkW6Rw.js", "/assets/index-DLC5u33j.js", "/assets/pe-BShc2dvc.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/progress-bar-DgnkQxQw.js", "/assets/revalidation-ws-B0skixgr.js", "/assets/use-event-source-Dar8h_B8.js", "/assets/button-Dt4EcDfR.js"], "css": ["/assets/epic-video-D2Xftn6t.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-DdUNKtkF.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/tests-B1ak2CDI.js", "/assets/components-5arJTWsS.js", "/assets/epic-video-CmlkW6Rw.js", "/assets/index-DLC5u33j.js", "/assets/misc-2sBiisF5.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/pe-BShc2dvc.js", "/assets/online-DZKJk3C2.js", "/assets/loading-b1FV2pQh.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/accordion-CpiLc1m2.js", "/assets/index-BmMpCvYx.js", "/assets/index-Do-KWT0a.js", "/assets/use-event-source-Dar8h_B8.js", "/assets/set-playground-DW2Ys-rV.js", "/assets/progress-bar-DgnkQxQw.js"], "css": ["/assets/epic-video-D2Xftn6t.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-C5m6M0gM.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/index-B8yUFowV.js", "/assets/epic-video-CmlkW6Rw.js", "/assets/misc-2sBiisF5.js", "/assets/loading-b1FV2pQh.js", "/assets/nav-chevrons-CV-dpXNR.js", "/assets/revalidation-ws-B0skixgr.js", "/assets/mdx-C7imFHZE.js", "/assets/progress-BJ4ADF-s.js", "/assets/index-DLC5u33j.js", "/assets/online-DZKJk3C2.js", "/assets/seo-pBpFCWsy.js", "/assets/components-5arJTWsS.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/progress-bar-DgnkQxQw.js", "/assets/pe-BShc2dvc.js", "/assets/tooltip-Bzd6O8vq.js"], "css": ["/assets/epic-video-D2Xftn6t.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-MrsevkkK.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/index-B8yUFowV.js", "/assets/epic-video-CmlkW6Rw.js", "/assets/misc-2sBiisF5.js", "/assets/loading-b1FV2pQh.js", "/assets/nav-chevrons-CV-dpXNR.js", "/assets/revalidation-ws-B0skixgr.js", "/assets/mdx-C7imFHZE.js", "/assets/online-DZKJk3C2.js", "/assets/seo-pBpFCWsy.js", "/assets/progress-BJ4ADF-s.js", "/assets/index-DLC5u33j.js", "/assets/components-5arJTWsS.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/progress-bar-DgnkQxQw.js", "/assets/pe-BShc2dvc.js", "/assets/tooltip-Bzd6O8vq.js"], "css": ["/assets/epic-video-D2Xftn6t.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-9euhNa27.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/index-B8yUFowV.js", "/assets/epic-video-CmlkW6Rw.js", "/assets/error-boundary-B07cWiEy.js", "/assets/mdx-C7imFHZE.js", "/assets/misc-2sBiisF5.js", "/assets/progress-BJ4ADF-s.js", "/assets/components-5arJTWsS.js", "/assets/index-DLC5u33j.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/pe-BShc2dvc.js", "/assets/online-DZKJk3C2.js", "/assets/loading-b1FV2pQh.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/progress-bar-DgnkQxQw.js"], "css": ["/assets/epic-video-D2Xftn6t.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-Ci7cdiuj.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/use-event-source-Dar8h_B8.js", "/assets/button-Dt4EcDfR.js", "/assets/loading-b1FV2pQh.js", "/assets/product-DJOWNuL-.js", "/assets/workshop-config-DchzGYJM.js", "/assets/index-DLC5u33j.js", "/assets/components-5arJTWsS.js", "/assets/misc-2sBiisF5.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/pe-BShc2dvc.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-BkWQyRCq.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/button-Dt4EcDfR.js", "/assets/misc-2sBiisF5.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/components-5arJTWsS.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-Bg0iSyle.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/components-5arJTWsS.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-B_BIIcpM.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/components-5arJTWsS.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-Fw2eA3AF.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/misc-2sBiisF5.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/progress-BJ4ADF-s.js", "/assets/components-5arJTWsS.js", "/assets/pe-BShc2dvc.js"], "css": [] }, "routes/admin+/notifications": { "id": "routes/admin+/notifications", "parentId": "routes/admin+/_layout", "path": "notifications", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/notifications-l0sNRNKZ.js", "imports": [], "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-DriSvNMy.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/workshop-config-DchzGYJM.js", "/assets/components-5arJTWsS.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-BKR4usVv.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/misc-2sBiisF5.js", "/assets/diff-D5_VwPLF.js", "/assets/nav-chevrons-CV-dpXNR.js", "/assets/components-5arJTWsS.js", "/assets/accordion-CpiLc1m2.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/index-BmMpCvYx.js", "/assets/index-Do-KWT0a.js", "/assets/mdx-C7imFHZE.js", "/assets/epic-video-CmlkW6Rw.js", "/assets/index-DLC5u33j.js", "/assets/pe-BShc2dvc.js", "/assets/online-DZKJk3C2.js", "/assets/loading-b1FV2pQh.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js", "/assets/progress-bar-DgnkQxQw.js", "/assets/revalidation-ws-B0skixgr.js"], "css": ["/assets/epic-video-D2Xftn6t.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-c9ZuxLsm.js", "imports": ["/assets/index-Dsusf_Av.js", "/assets/button-Dt4EcDfR.js", "/assets/epic-video-CmlkW6Rw.js", "/assets/components-5arJTWsS.js", "/assets/misc-2sBiisF5.js", "/assets/index-DLC5u33j.js", "/assets/tooltip-Bzd6O8vq.js", "/assets/pe-BShc2dvc.js", "/assets/online-DZKJk3C2.js", "/assets/loading-b1FV2pQh.js", "/assets/user-DNSnhqGn.js", "/assets/workshop-config-DchzGYJM.js"], "css": ["/assets/epic-video-D2Xftn6t.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-c68964f2.js", "version": "c68964f2" };
|
|
11154
11137
|
const mode = "production";
|
|
11155
11138
|
const assetsBuildDirectory = "build/client";
|
|
11156
11139
|
const basename = "/";
|
|
@@ -11407,21 +11390,13 @@ const routes = {
|
|
|
11407
11390
|
caseSensitive: void 0,
|
|
11408
11391
|
module: route30
|
|
11409
11392
|
},
|
|
11410
|
-
"routes/admin+/update-repo": {
|
|
11411
|
-
id: "routes/admin+/update-repo",
|
|
11412
|
-
parentId: "routes/admin+/_layout",
|
|
11413
|
-
path: "update-repo",
|
|
11414
|
-
index: void 0,
|
|
11415
|
-
caseSensitive: void 0,
|
|
11416
|
-
module: route31
|
|
11417
|
-
},
|
|
11418
11393
|
"routes/admin+/version": {
|
|
11419
11394
|
id: "routes/admin+/version",
|
|
11420
11395
|
parentId: "routes/admin+/_layout",
|
|
11421
11396
|
path: "version",
|
|
11422
11397
|
index: void 0,
|
|
11423
11398
|
caseSensitive: void 0,
|
|
11424
|
-
module:
|
|
11399
|
+
module: route31
|
|
11425
11400
|
},
|
|
11426
11401
|
"routes/apps": {
|
|
11427
11402
|
id: "routes/apps",
|
|
@@ -11429,7 +11404,7 @@ const routes = {
|
|
|
11429
11404
|
path: "apps",
|
|
11430
11405
|
index: void 0,
|
|
11431
11406
|
caseSensitive: void 0,
|
|
11432
|
-
module:
|
|
11407
|
+
module: route32
|
|
11433
11408
|
},
|
|
11434
11409
|
"routes/diff": {
|
|
11435
11410
|
id: "routes/diff",
|
|
@@ -11437,7 +11412,7 @@ const routes = {
|
|
|
11437
11412
|
path: "diff",
|
|
11438
11413
|
index: void 0,
|
|
11439
11414
|
caseSensitive: void 0,
|
|
11440
|
-
module:
|
|
11415
|
+
module: route33
|
|
11441
11416
|
},
|
|
11442
11417
|
"routes/exercises": {
|
|
11443
11418
|
id: "routes/exercises",
|
|
@@ -11445,7 +11420,7 @@ const routes = {
|
|
|
11445
11420
|
path: "exercises",
|
|
11446
11421
|
index: void 0,
|
|
11447
11422
|
caseSensitive: void 0,
|
|
11448
|
-
module:
|
|
11423
|
+
module: route34
|
|
11449
11424
|
},
|
|
11450
11425
|
"routes/launch-editor": {
|
|
11451
11426
|
id: "routes/launch-editor",
|
|
@@ -11453,7 +11428,7 @@ const routes = {
|
|
|
11453
11428
|
path: "launch-editor",
|
|
11454
11429
|
index: void 0,
|
|
11455
11430
|
caseSensitive: void 0,
|
|
11456
|
-
module:
|
|
11431
|
+
module: route35
|
|
11457
11432
|
},
|
|
11458
11433
|
"routes/login-sse": {
|
|
11459
11434
|
id: "routes/login-sse",
|
|
@@ -11461,7 +11436,7 @@ const routes = {
|
|
|
11461
11436
|
path: "login-sse",
|
|
11462
11437
|
index: void 0,
|
|
11463
11438
|
caseSensitive: void 0,
|
|
11464
|
-
module:
|
|
11439
|
+
module: route36
|
|
11465
11440
|
},
|
|
11466
11441
|
"routes/og": {
|
|
11467
11442
|
id: "routes/og",
|
|
@@ -11469,7 +11444,7 @@ const routes = {
|
|
|
11469
11444
|
path: "og",
|
|
11470
11445
|
index: void 0,
|
|
11471
11446
|
caseSensitive: void 0,
|
|
11472
|
-
module:
|
|
11447
|
+
module: route37
|
|
11473
11448
|
},
|
|
11474
11449
|
"routes/onboarding": {
|
|
11475
11450
|
id: "routes/onboarding",
|
|
@@ -11477,7 +11452,7 @@ const routes = {
|
|
|
11477
11452
|
path: "onboarding",
|
|
11478
11453
|
index: void 0,
|
|
11479
11454
|
caseSensitive: void 0,
|
|
11480
|
-
module:
|
|
11455
|
+
module: route38
|
|
11481
11456
|
},
|
|
11482
11457
|
"routes/processes": {
|
|
11483
11458
|
id: "routes/processes",
|
|
@@ -11485,7 +11460,7 @@ const routes = {
|
|
|
11485
11460
|
path: "processes",
|
|
11486
11461
|
index: void 0,
|
|
11487
11462
|
caseSensitive: void 0,
|
|
11488
|
-
module:
|
|
11463
|
+
module: route39
|
|
11489
11464
|
},
|
|
11490
11465
|
"routes/progress": {
|
|
11491
11466
|
id: "routes/progress",
|
|
@@ -11493,7 +11468,7 @@ const routes = {
|
|
|
11493
11468
|
path: "progress",
|
|
11494
11469
|
index: void 0,
|
|
11495
11470
|
caseSensitive: void 0,
|
|
11496
|
-
module:
|
|
11471
|
+
module: route40
|
|
11497
11472
|
},
|
|
11498
11473
|
"routes/robots[.]txt": {
|
|
11499
11474
|
id: "routes/robots[.]txt",
|
|
@@ -11501,7 +11476,7 @@ const routes = {
|
|
|
11501
11476
|
path: "robots.txt",
|
|
11502
11477
|
index: void 0,
|
|
11503
11478
|
caseSensitive: void 0,
|
|
11504
|
-
module:
|
|
11479
|
+
module: route41
|
|
11505
11480
|
},
|
|
11506
11481
|
"routes/set-playground": {
|
|
11507
11482
|
id: "routes/set-playground",
|
|
@@ -11509,7 +11484,7 @@ const routes = {
|
|
|
11509
11484
|
path: "set-playground",
|
|
11510
11485
|
index: void 0,
|
|
11511
11486
|
caseSensitive: void 0,
|
|
11512
|
-
module:
|
|
11487
|
+
module: route42
|
|
11513
11488
|
},
|
|
11514
11489
|
"routes/sitemap[.]xml": {
|
|
11515
11490
|
id: "routes/sitemap[.]xml",
|
|
@@ -11517,7 +11492,7 @@ const routes = {
|
|
|
11517
11492
|
path: "sitemap.xml",
|
|
11518
11493
|
index: void 0,
|
|
11519
11494
|
caseSensitive: void 0,
|
|
11520
|
-
module:
|
|
11495
|
+
module: route43
|
|
11521
11496
|
},
|
|
11522
11497
|
"routes/start": {
|
|
11523
11498
|
id: "routes/start",
|
|
@@ -11525,7 +11500,7 @@ const routes = {
|
|
|
11525
11500
|
path: "start",
|
|
11526
11501
|
index: void 0,
|
|
11527
11502
|
caseSensitive: void 0,
|
|
11528
|
-
module:
|
|
11503
|
+
module: route44
|
|
11529
11504
|
},
|
|
11530
11505
|
"routes/test": {
|
|
11531
11506
|
id: "routes/test",
|
|
@@ -11533,7 +11508,7 @@ const routes = {
|
|
|
11533
11508
|
path: "test",
|
|
11534
11509
|
index: void 0,
|
|
11535
11510
|
caseSensitive: void 0,
|
|
11536
|
-
module:
|
|
11511
|
+
module: route45
|
|
11537
11512
|
},
|
|
11538
11513
|
"routes/theme/index": {
|
|
11539
11514
|
id: "routes/theme/index",
|
|
@@ -11541,7 +11516,7 @@ const routes = {
|
|
|
11541
11516
|
path: "theme",
|
|
11542
11517
|
index: void 0,
|
|
11543
11518
|
caseSensitive: void 0,
|
|
11544
|
-
module:
|
|
11519
|
+
module: route46
|
|
11545
11520
|
},
|
|
11546
11521
|
"routes/video-player/index": {
|
|
11547
11522
|
id: "routes/video-player/index",
|
|
@@ -11549,7 +11524,7 @@ const routes = {
|
|
|
11549
11524
|
path: "video-player",
|
|
11550
11525
|
index: void 0,
|
|
11551
11526
|
caseSensitive: void 0,
|
|
11552
|
-
module:
|
|
11527
|
+
module: route47
|
|
11553
11528
|
}
|
|
11554
11529
|
};
|
|
11555
11530
|
export {
|