@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.
Files changed (147) hide show
  1. package/bin/epicshop.js +203 -37
  2. package/build/client/assets/{_basePickBy-B3Ji82Lk.js → _basePickBy-lB0X5x6U.js} +2 -2
  3. package/build/client/assets/{_basePickBy-B3Ji82Lk.js.map → _basePickBy-lB0X5x6U.js.map} +1 -1
  4. package/build/client/assets/{_baseUniq-BoGoqSUm.js → _baseUniq-BOjGYEEK.js} +2 -2
  5. package/build/client/assets/{_baseUniq-BoGoqSUm.js.map → _baseUniq-BOjGYEEK.js.map} +1 -1
  6. package/build/client/assets/{_exerciseNumber-DtILU6SM.js → _exerciseNumber-Dqi7TgL9.js} +2 -2
  7. package/build/client/assets/{_exerciseNumber-DtILU6SM.js.map → _exerciseNumber-Dqi7TgL9.js.map} +1 -1
  8. package/build/client/assets/{_exerciseNumber_.finished-CEK9anWX.js → _exerciseNumber_.finished-C5m6M0gM.js} +2 -2
  9. package/build/client/assets/{_exerciseNumber_.finished-CEK9anWX.js.map → _exerciseNumber_.finished-C5m6M0gM.js.map} +1 -1
  10. package/build/client/assets/{_layout-D1r_62oj.js → _layout-B_NrRv0S.js} +2 -2
  11. package/build/client/assets/{_layout-D1r_62oj.js.map → _layout-B_NrRv0S.js.map} +1 -1
  12. package/build/client/assets/{_layout-DzlTTMQ0.js → _layout-QRe2q83m.js} +2 -2
  13. package/build/client/assets/{_layout-DzlTTMQ0.js.map → _layout-QRe2q83m.js.map} +1 -1
  14. package/build/client/assets/{app-CQvK51s0.js → app-BYSDu0vh.js} +2 -2
  15. package/build/client/assets/{app-CQvK51s0.js.map → app-BYSDu0vh.js.map} +1 -1
  16. package/build/client/assets/{arc-rF8TbXNV.js → arc-DmQZ2TPB.js} +2 -2
  17. package/build/client/assets/{arc-rF8TbXNV.js.map → arc-DmQZ2TPB.js.map} +1 -1
  18. package/build/client/assets/{architectureDiagram-IEHRJDOE-D7gCCmY9.js → architectureDiagram-IEHRJDOE-BqPvrjLh.js} +2 -2
  19. package/build/client/assets/{architectureDiagram-IEHRJDOE-D7gCCmY9.js.map → architectureDiagram-IEHRJDOE-BqPvrjLh.js.map} +1 -1
  20. package/build/client/assets/{blockDiagram-JOT3LUYC-yGQOzhkw.js → blockDiagram-JOT3LUYC-D8OFd78i.js} +2 -2
  21. package/build/client/assets/{blockDiagram-JOT3LUYC-yGQOzhkw.js.map → blockDiagram-JOT3LUYC-D8OFd78i.js.map} +1 -1
  22. package/build/client/assets/{c4Diagram-VJAJSXHY-CTFjYF37.js → c4Diagram-VJAJSXHY-DjROjsr_.js} +2 -2
  23. package/build/client/assets/{c4Diagram-VJAJSXHY-CTFjYF37.js.map → c4Diagram-VJAJSXHY-DjROjsr_.js.map} +1 -1
  24. package/build/client/assets/channel-DnqeaSfB.js +2 -0
  25. package/build/client/assets/{channel-5s71-OE9.js.map → channel-DnqeaSfB.js.map} +1 -1
  26. package/build/client/assets/{chunk-4BMEZGHF-BIe0IUDz.js → chunk-4BMEZGHF-CNL-bCj2.js} +2 -2
  27. package/build/client/assets/{chunk-4BMEZGHF-BIe0IUDz.js.map → chunk-4BMEZGHF-CNL-bCj2.js.map} +1 -1
  28. package/build/client/assets/{chunk-A2AXSNBT-B-nCbUBj.js → chunk-A2AXSNBT-PeSyIKDm.js} +2 -2
  29. package/build/client/assets/{chunk-A2AXSNBT-B-nCbUBj.js.map → chunk-A2AXSNBT-PeSyIKDm.js.map} +1 -1
  30. package/build/client/assets/{chunk-AEK57VVT-B-cCHPs2.js → chunk-AEK57VVT-B1JqGB_s.js} +2 -2
  31. package/build/client/assets/{chunk-AEK57VVT-B-cCHPs2.js.map → chunk-AEK57VVT-B1JqGB_s.js.map} +1 -1
  32. package/build/client/assets/{chunk-D6G4REZN-EQ3R8OZx.js → chunk-D6G4REZN-C1e0nCkL.js} +2 -2
  33. package/build/client/assets/{chunk-D6G4REZN-EQ3R8OZx.js.map → chunk-D6G4REZN-C1e0nCkL.js.map} +1 -1
  34. package/build/client/assets/{chunk-RZ5BOZE2-h6svq8Xk.js → chunk-RZ5BOZE2-D5pIwNeA.js} +2 -2
  35. package/build/client/assets/{chunk-RZ5BOZE2-h6svq8Xk.js.map → chunk-RZ5BOZE2-D5pIwNeA.js.map} +1 -1
  36. package/build/client/assets/{chunk-XZIHB7SX-74-HFRcU.js → chunk-XZIHB7SX-FbrNggxP.js} +2 -2
  37. package/build/client/assets/{chunk-XZIHB7SX-74-HFRcU.js.map → chunk-XZIHB7SX-FbrNggxP.js.map} +1 -1
  38. package/build/client/assets/classDiagram-GIVACNV2-cXWx-aYi.js +2 -0
  39. package/build/client/assets/{classDiagram-GIVACNV2-CWogZCzR.js.map → classDiagram-GIVACNV2-cXWx-aYi.js.map} +1 -1
  40. package/build/client/assets/classDiagram-v2-COTLJTTW-cXWx-aYi.js +2 -0
  41. package/build/client/assets/{classDiagram-v2-COTLJTTW-CWogZCzR.js.map → classDiagram-v2-COTLJTTW-cXWx-aYi.js.map} +1 -1
  42. package/build/client/assets/clone-Bj8ANPCv.js +2 -0
  43. package/build/client/assets/{clone-nHZ14b_E.js.map → clone-Bj8ANPCv.js.map} +1 -1
  44. package/build/client/assets/{dagre-OKDRZEBW-Bq-HgVN8.js → dagre-OKDRZEBW-DT9ZQRxf.js} +2 -2
  45. package/build/client/assets/{dagre-OKDRZEBW-Bq-HgVN8.js.map → dagre-OKDRZEBW-DT9ZQRxf.js.map} +1 -1
  46. package/build/client/assets/{diagram-SSKATNLV-Cls675Lh.js → diagram-SSKATNLV-CcKCni9R.js} +2 -2
  47. package/build/client/assets/{diagram-SSKATNLV-Cls675Lh.js.map → diagram-SSKATNLV-CcKCni9R.js.map} +1 -1
  48. package/build/client/assets/{diagram-VNBRO52H-CJDqBhLa.js → diagram-VNBRO52H-DWoRAiqO.js} +2 -2
  49. package/build/client/assets/{diagram-VNBRO52H-CJDqBhLa.js.map → diagram-VNBRO52H-DWoRAiqO.js.map} +1 -1
  50. package/build/client/assets/{diff-8N5KyD7o.js → diff-BKR4usVv.js} +2 -2
  51. package/build/client/assets/{diff-8N5KyD7o.js.map → diff-BKR4usVv.js.map} +1 -1
  52. package/build/client/assets/{diff-Bu4t2NGL.js → diff-D5_VwPLF.js} +2 -2
  53. package/build/client/assets/{diff-Bu4t2NGL.js.map → diff-D5_VwPLF.js.map} +1 -1
  54. package/build/client/assets/{epic-video-DN9DRRHf.js → epic-video-CmlkW6Rw.js} +2 -2
  55. package/build/client/assets/{epic-video-DN9DRRHf.js.map → epic-video-CmlkW6Rw.js.map} +1 -1
  56. package/build/client/assets/{erDiagram-Q7BY3M3F-DdKn4jVQ.js → erDiagram-Q7BY3M3F-DXkEmvKk.js} +2 -2
  57. package/build/client/assets/{erDiagram-Q7BY3M3F-DdKn4jVQ.js.map → erDiagram-Q7BY3M3F-DXkEmvKk.js.map} +1 -1
  58. package/build/client/assets/{finished-B3G1RUDO.js → finished-MrsevkkK.js} +2 -2
  59. package/build/client/assets/{finished-B3G1RUDO.js.map → finished-MrsevkkK.js.map} +1 -1
  60. package/build/client/assets/{flowDiagram-4HSFHLVR-5Mg796nh.js → flowDiagram-4HSFHLVR-DCodZaNW.js} +2 -2
  61. package/build/client/assets/{flowDiagram-4HSFHLVR-5Mg796nh.js.map → flowDiagram-4HSFHLVR-DCodZaNW.js.map} +1 -1
  62. package/build/client/assets/{ganttDiagram-APWFNJXF-YO2fxWzG.js → ganttDiagram-APWFNJXF-TfB6wYvN.js} +2 -2
  63. package/build/client/assets/{ganttDiagram-APWFNJXF-YO2fxWzG.js.map → ganttDiagram-APWFNJXF-TfB6wYvN.js.map} +1 -1
  64. package/build/client/assets/{gitGraphDiagram-7IBYFJ6S-DQCZvhP_.js → gitGraphDiagram-7IBYFJ6S-D2NQnQv2.js} +2 -2
  65. package/build/client/assets/{gitGraphDiagram-7IBYFJ6S-DQCZvhP_.js.map → gitGraphDiagram-7IBYFJ6S-D2NQnQv2.js.map} +1 -1
  66. package/build/client/assets/{graph-BFAO9Sgp.js → graph-eJUngNSH.js} +2 -2
  67. package/build/client/assets/{graph-BFAO9Sgp.js.map → graph-eJUngNSH.js.map} +1 -1
  68. package/build/client/assets/{index-BfCSiT_X.js → index-9euhNa27.js} +2 -2
  69. package/build/client/assets/{index-BfCSiT_X.js.map → index-9euhNa27.js.map} +1 -1
  70. package/build/client/assets/index-DLC5u33j.js +36 -0
  71. package/build/client/assets/index-DLC5u33j.js.map +1 -0
  72. package/build/client/assets/{index-Dkt2MSig.js → index-DPHVg8Eh.js} +2 -2
  73. package/build/client/assets/{index-Dkt2MSig.js.map → index-DPHVg8Eh.js.map} +1 -1
  74. package/build/client/assets/infoDiagram-PH2N3AL5-D-nEozcT.js +3 -0
  75. package/build/client/assets/{infoDiagram-PH2N3AL5-x87RxSs8.js.map → infoDiagram-PH2N3AL5-D-nEozcT.js.map} +1 -1
  76. package/build/client/assets/{journeyDiagram-U35MCT3I-D5yGbOLJ.js → journeyDiagram-U35MCT3I-Dc8g8jIX.js} +2 -2
  77. package/build/client/assets/{journeyDiagram-U35MCT3I-D5yGbOLJ.js.map → journeyDiagram-U35MCT3I-Dc8g8jIX.js.map} +1 -1
  78. package/build/client/assets/{kanban-definition-NDS4AKOZ-BM6KyRww.js → kanban-definition-NDS4AKOZ-BwwcaZU2.js} +2 -2
  79. package/build/client/assets/{kanban-definition-NDS4AKOZ-BM6KyRww.js.map → kanban-definition-NDS4AKOZ-BwwcaZU2.js.map} +1 -1
  80. package/build/client/assets/{layout-qCiM2Jgn.js → layout-BAeq0-Is.js} +2 -2
  81. package/build/client/assets/{layout-qCiM2Jgn.js.map → layout-BAeq0-Is.js.map} +1 -1
  82. package/build/client/assets/{linear-B3zp51yW.js → linear-LWRPSVMz.js} +2 -2
  83. package/build/client/assets/{linear-B3zp51yW.js.map → linear-LWRPSVMz.js.map} +1 -1
  84. package/build/client/assets/{loading-BPTYJOXN.js → loading-b1FV2pQh.js} +2 -2
  85. package/build/client/assets/{loading-BPTYJOXN.js.map → loading-b1FV2pQh.js.map} +1 -1
  86. package/build/client/assets/{login-CfyUfm-m.js → login-Ci7cdiuj.js} +2 -2
  87. package/build/client/assets/{login-CfyUfm-m.js.map → login-Ci7cdiuj.js.map} +1 -1
  88. package/build/client/assets/{manifest-fe4b7228.js → manifest-c68964f2.js} +1 -1
  89. package/build/client/assets/{mdx-Dfsh6Vjk.js → mdx-C7imFHZE.js} +3 -3
  90. package/build/client/assets/{mdx-Dfsh6Vjk.js.map → mdx-C7imFHZE.js.map} +1 -1
  91. package/build/client/assets/{mermaid.core-ZaxoMXOj.js → mermaid.core-q9C-HfFu.js} +5 -5
  92. package/build/client/assets/{mermaid.core-ZaxoMXOj.js.map → mermaid.core-q9C-HfFu.js.map} +1 -1
  93. package/build/client/assets/{mindmap-definition-ALO5MXBD-CF3siXp6.js → mindmap-definition-ALO5MXBD-BhzLy0Zl.js} +2 -2
  94. package/build/client/assets/{mindmap-definition-ALO5MXBD-CF3siXp6.js.map → mindmap-definition-ALO5MXBD-BhzLy0Zl.js.map} +1 -1
  95. package/build/client/assets/{onboarding-5LC4kIVW.js → onboarding-c9ZuxLsm.js} +2 -2
  96. package/build/client/assets/{onboarding-5LC4kIVW.js.map → onboarding-c9ZuxLsm.js.map} +1 -1
  97. package/build/client/assets/{online-IWqRB9zP.js → online-DZKJk3C2.js} +2 -2
  98. package/build/client/assets/{online-IWqRB9zP.js.map → online-DZKJk3C2.js.map} +1 -1
  99. package/build/client/assets/{pieDiagram-IB7DONF6-B-gWQIHI.js → pieDiagram-IB7DONF6-CaTGj8RH.js} +2 -2
  100. package/build/client/assets/{pieDiagram-IB7DONF6-B-gWQIHI.js.map → pieDiagram-IB7DONF6-CaTGj8RH.js.map} +1 -1
  101. package/build/client/assets/{presence-BAL3jDku.js → presence-C9bUSihT.js} +2 -2
  102. package/build/client/assets/{presence-BAL3jDku.js.map → presence-C9bUSihT.js.map} +1 -1
  103. package/build/client/assets/{preview-D4amucCL.js → preview-CqZGJtsE.js} +2 -2
  104. package/build/client/assets/{preview-D4amucCL.js.map → preview-CqZGJtsE.js.map} +1 -1
  105. package/build/client/assets/{product-Cyum2biy.js → product-DJOWNuL-.js} +2 -2
  106. package/build/client/assets/{product-Cyum2biy.js.map → product-DJOWNuL-.js.map} +1 -1
  107. package/build/client/assets/{quadrantDiagram-7GDLP6J5-BQzo7p61.js → quadrantDiagram-7GDLP6J5-B4Od6z6p.js} +2 -2
  108. package/build/client/assets/{quadrantDiagram-7GDLP6J5-BQzo7p61.js.map → quadrantDiagram-7GDLP6J5-B4Od6z6p.js.map} +1 -1
  109. package/build/client/assets/{radar-MK3ICKWK-CM-Iz9PA.js → radar-MK3ICKWK-CENXhI0E.js} +2 -2
  110. package/build/client/assets/{radar-MK3ICKWK-CM-Iz9PA.js.map → radar-MK3ICKWK-CENXhI0E.js.map} +1 -1
  111. package/build/client/assets/{requirementDiagram-KVF5MWMF-DzaHc66R.js → requirementDiagram-KVF5MWMF-_w0WuUxy.js} +2 -2
  112. package/build/client/assets/{requirementDiagram-KVF5MWMF-DzaHc66R.js.map → requirementDiagram-KVF5MWMF-_w0WuUxy.js.map} +1 -1
  113. package/build/client/assets/{revalidation-ws-ho-umDqd.js → revalidation-ws-B0skixgr.js} +2 -2
  114. package/build/client/assets/{revalidation-ws-ho-umDqd.js.map → revalidation-ws-B0skixgr.js.map} +1 -1
  115. package/build/client/assets/root-JfOw9N7j.js +11 -0
  116. package/build/client/assets/root-JfOw9N7j.js.map +1 -0
  117. package/build/client/assets/{sankeyDiagram-QLVOVGJD-DfAVeZCk.js → sankeyDiagram-QLVOVGJD-Bt8556P1.js} +2 -2
  118. package/build/client/assets/{sankeyDiagram-QLVOVGJD-DfAVeZCk.js.map → sankeyDiagram-QLVOVGJD-Bt8556P1.js.map} +1 -1
  119. package/build/client/assets/{sequenceDiagram-X6HHIX6F-CljZRLoS.js → sequenceDiagram-X6HHIX6F-y2-oW3Ob.js} +2 -2
  120. package/build/client/assets/{sequenceDiagram-X6HHIX6F-CljZRLoS.js.map → sequenceDiagram-X6HHIX6F-y2-oW3Ob.js.map} +1 -1
  121. package/build/client/assets/{stateDiagram-DGXRK772-BzVfGv3W.js → stateDiagram-DGXRK772-B3BuD15b.js} +2 -2
  122. package/build/client/assets/{stateDiagram-DGXRK772-BzVfGv3W.js.map → stateDiagram-DGXRK772-B3BuD15b.js.map} +1 -1
  123. package/build/client/assets/{stateDiagram-v2-YXO3MK2T-8oX001yq.js → stateDiagram-v2-YXO3MK2T-BzFxWpqR.js} +2 -2
  124. package/build/client/assets/{stateDiagram-v2-YXO3MK2T-8oX001yq.js.map → stateDiagram-v2-YXO3MK2T-BzFxWpqR.js.map} +1 -1
  125. package/build/client/assets/{test-C14D-N72.js → test-DdUNKtkF.js} +2 -2
  126. package/build/client/assets/{test-C14D-N72.js.map → test-DdUNKtkF.js.map} +1 -1
  127. package/build/client/assets/{tests-6__AtHpI.js → tests-B1ak2CDI.js} +2 -2
  128. package/build/client/assets/{tests-6__AtHpI.js.map → tests-B1ak2CDI.js.map} +1 -1
  129. package/build/client/assets/{timeline-definition-BDJGKUSR-2TO9MtLY.js → timeline-definition-BDJGKUSR-DUa2yfAV.js} +2 -2
  130. package/build/client/assets/{timeline-definition-BDJGKUSR-2TO9MtLY.js.map → timeline-definition-BDJGKUSR-DUa2yfAV.js.map} +1 -1
  131. package/build/client/assets/{xychartDiagram-VJFVF3MP-Dh4nsbBT.js → xychartDiagram-VJFVF3MP-JztjcODi.js} +2 -2
  132. package/build/client/assets/{xychartDiagram-VJFVF3MP-Dh4nsbBT.js.map → xychartDiagram-VJFVF3MP-JztjcODi.js.map} +1 -1
  133. package/build/server/index.js +138 -163
  134. package/build/server/index.js.map +1 -1
  135. package/dist/server/index.js +82 -80
  136. package/package.json +3 -3
  137. package/build/client/assets/channel-5s71-OE9.js +0 -2
  138. package/build/client/assets/classDiagram-GIVACNV2-CWogZCzR.js +0 -2
  139. package/build/client/assets/classDiagram-v2-COTLJTTW-CWogZCzR.js +0 -2
  140. package/build/client/assets/clone-nHZ14b_E.js +0 -2
  141. package/build/client/assets/index-CEP3Xxa0.js +0 -36
  142. package/build/client/assets/index-CEP3Xxa0.js.map +0 -1
  143. package/build/client/assets/infoDiagram-PH2N3AL5-x87RxSs8.js +0 -3
  144. package/build/client/assets/root-tJmOmO9T.js +0 -11
  145. package/build/client/assets/root-tJmOmO9T.js.map +0 -1
  146. package/build/client/assets/update-repo-l0sNRNKZ.js +0 -2
  147. package/build/client/assets/update-repo-l0sNRNKZ.js.map +0 -1
@@ -1 +1 @@
1
- window.__remixManifest={"entry":{"module":"/assets/entry.client-BLUlgPHE.js","imports":["/assets/index-Dsusf_Av.js","/assets/components-5arJTWsS.js"],"css":[]},"routes":{"root":{"id":"root","path":"","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":"*","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","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","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/*","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/*","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","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,"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","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","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","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","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","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","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","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","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","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","index":true,"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","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","index":true,"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","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","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","index":true,"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","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","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","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","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","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","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","index":true,"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","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","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","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","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","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","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","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","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","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","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","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","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","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","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","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","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","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","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","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"};
1
+ window.__remixManifest={"entry":{"module":"/assets/entry.client-BLUlgPHE.js","imports":["/assets/index-Dsusf_Av.js","/assets/components-5arJTWsS.js"],"css":[]},"routes":{"root":{"id":"root","path":"","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":"*","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","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","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/*","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/*","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","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,"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","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","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","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","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","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","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","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","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","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","index":true,"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","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","index":true,"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","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","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","index":true,"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","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","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","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","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","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","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","index":true,"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","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","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","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","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","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","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","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","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","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","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","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","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","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","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","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","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","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","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"};
@@ -1,3 +1,3 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/mermaid.core-ZaxoMXOj.js","assets/index-Dsusf_Av.js"])))=>i.map(i=>d[i]);
2
- var oe=Object.defineProperty;var kt=n=>{throw TypeError(n)};var ae=(n,e,i)=>e in n?oe(n,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):n[e]=i;var x=(n,e,i)=>ae(n,typeof e!="symbol"?e+"":e,i),Tt=(n,e,i)=>e.has(n)||kt("Cannot "+i);var t=(n,e,i)=>(Tt(n,e,"read from private field"),i?i.call(n):e.get(n)),w=(n,e,i)=>e.has(n)?kt("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(n):e.set(n,i),f=(n,e,i,s)=>(Tt(n,e,"write to private field"),s?s.call(n,i):e.set(n,i),i),u=(n,e,i)=>(Tt(n,e,"access private method"),i);var St=(n,e,i,s)=>({set _(a){f(n,e,a,i)},get _(){return t(n,e,s)}});import{j as d,r as Z}from"./index-Dsusf_Av.js";import{c as jt,I as he,a as le,A as ce,H as ct}from"./misc-2sBiisF5.js";import{b as ue,L as Yt,a as fe,r as de,u as pe}from"./components-5arJTWsS.js";import{D as me,V as ge}from"./epic-video-DN9DRRHf.js";import{s as be}from"./progress-bar-DgnkQxQw.js";import{u as we}from"./pe-BShc2dvc.js";import{a as _e}from"./index-CEP3Xxa0.js";function ye(){const n=ue("root");if(!n)throw new Error("useApps requires a data object from the root loader");return n.apps}function Kt(n){const e=fe();return Z.useEffect(()=>{e.state==="idle"&&e.data!=null&&(n==null||n("fetcher-done"))},[e,n]),e}function Ee({file:n,appFile:e,appName:i,syncTo:s,line:a,column:o,children:r,onUpdate:c}){var y;const h=Kt(c),m=we(),A=typeof e=="string"?[e]:e,g=n?"file":e?"appFile":"",R=s!=null&&s.file?"file":s!=null&&s.appFile?"appFile":"";return d.jsxs(h.Form,{action:"/launch-editor",method:"POST",className:"flex items-center",children:[m,be,d.jsx("input",{type:"hidden",name:"line",value:a}),d.jsx("input",{type:"hidden",name:"column",value:o}),d.jsx("input",{type:"hidden",name:"type",value:g}),d.jsx("input",{type:"hidden",name:"file",value:n}),d.jsx("input",{type:"hidden",name:"appName",value:i}),A==null?void 0:A.map(T=>d.jsx("input",{type:"hidden",name:"appFile",value:T},T)),s?d.jsxs(d.Fragment,{children:[d.jsx("input",{type:"hidden",name:"syncTo.type",value:R}),d.jsx("input",{type:"hidden",name:"syncTo.file",value:s.file}),d.jsx("input",{type:"hidden",name:"syncTo.appName",value:s.appName}),d.jsx("input",{type:"hidden",name:"syncTo.appFile",value:s.appFile})]}):null,d.jsx("button",{type:"submit",className:jt("launch_button",h.state==="idle"?null:"cursor-progress",((y=h.data)==null?void 0:y.status)==="error"?"cursor-not-allowed":null),children:r})]})}function Se({file:n,appFile:e,appName:i,line:s,children:a}){const o=ye(),r=_e();if(Array.isArray(e))return d.jsx("div",{children:"Cannot open more than one file"});if(n){const m=A=>A.replace(/\\/g,"/");return d.jsx("a",{className:"launch_button !no-underline",href:m(n).replace(m(ENV.EPICSHOP_CONTEXT_CWD),ENV.EPICSHOP_GITHUB_ROOT)+(s?`#L${s}`:""),rel:"noreferrer",target:"_blank",children:a})}const c=o.find(m=>m.name===i),h=[...(c==null?void 0:c.relativePath.split(r.separator))??[],e+(s?`#L${s}`:"")].join("/");return d.jsx("a",{className:"launch_button !no-underline",href:`${ENV.EPICSHOP_GITHUB_ROOT}/${h}`,rel:"noreferrer",target:"_blank",children:a})}function qe({appFile:n="README.mdx",appName:e,file:i,relativePath:s}){const a=Kt(),o=c=>{if(!c.altKey||ENV.EPICSHOP_DEPLOYED)return;c.preventDefault();const h=new FormData,m=i?"file":"appFile";h.append(m,i??n),h.append("type",m),e&&h.append("appName",e),a.submit(h,{method:"POST",action:"/launch-editor"})},r=ENV.EPICSHOP_GITHUB_ROOT.replace(/\/tree\/|\/blob\//,"/edit/");return d.jsxs(Yt,{className:"self-center font-mono text-sm",onClick:o,target:"_blank",to:`${r}/${s}/${n}`.replace(/\\/g,"/"),children:[d.jsx("span",{className:"block md:hidden",children:"Edit on GitHub"}),d.jsx("span",{className:"hidden md:block",children:"Edit this page on GitHub"})]})}const Zt=ENV.EPICSHOP_DEPLOYED?Se:Ee,ut=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,Jt=new Set,zt=typeof process=="object"&&process?process:{},Qt=(n,e,i,s)=>{typeof zt.emitWarning=="function"?zt.emitWarning(n,e,i,s):console.error(`[${i}] ${e}: ${n}`)};let At=globalThis.AbortController,Vt=globalThis.AbortSignal;var Bt;if(typeof At>"u"){Vt=class{constructor(){x(this,"onabort");x(this,"_onabort",[]);x(this,"reason");x(this,"aborted",!1)}addEventListener(s,a){this._onabort.push(a)}},At=class{constructor(){x(this,"signal",new Vt);e()}abort(s){var a,o;if(!this.signal.aborted){this.signal.reason=s,this.signal.aborted=!0;for(const r of this.signal._onabort)r(s);(o=(a=this.signal).onabort)==null||o.call(a,s)}}};let n=((Bt=zt.env)==null?void 0:Bt.LRU_CACHE_IGNORE_AC_WARNING)!=="1";const e=()=>{n&&(n=!1,Qt("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e))}}const ve=n=>!Jt.has(n),Q=n=>n&&n===Math.floor(n)&&n>0&&isFinite(n),te=n=>Q(n)?n<=Math.pow(2,8)?Uint8Array:n<=Math.pow(2,16)?Uint16Array:n<=Math.pow(2,32)?Uint32Array:n<=Number.MAX_SAFE_INTEGER?vt:null:null;class vt extends Array{constructor(e){super(e),this.fill(0)}}var ft;const nt=class nt{constructor(e,i){x(this,"heap");x(this,"length");if(!t(nt,ft))throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new i(e),this.length=0}static create(e){const i=te(e);if(!i)return[];f(nt,ft,!0);const s=new nt(e,i);return f(nt,ft,!1),s}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}};ft=new WeakMap,w(nt,ft,!1);let Rt=nt;var qt,Xt,k,I,V,rt,$,dt,pt,C,B,F,v,p,N,M,z,P,q,D,X,Y,G,K,st,W,mt,l,Nt,ot,J,_t,H,ee,at,gt,yt,tt,et,Wt,Ot,xt,S,It,wt,it,Mt;const Ut=class Ut{constructor(e){w(this,l);w(this,k);w(this,I);w(this,V);w(this,rt);w(this,$);w(this,dt);w(this,pt);x(this,"ttl");x(this,"ttlResolution");x(this,"ttlAutopurge");x(this,"updateAgeOnGet");x(this,"updateAgeOnHas");x(this,"allowStale");x(this,"noDisposeOnSet");x(this,"noUpdateTTL");x(this,"maxEntrySize");x(this,"sizeCalculation");x(this,"noDeleteOnFetchRejection");x(this,"noDeleteOnStaleGet");x(this,"allowStaleOnFetchAbort");x(this,"allowStaleOnFetchRejection");x(this,"ignoreFetchAbort");w(this,C);w(this,B);w(this,F);w(this,v);w(this,p);w(this,N);w(this,M);w(this,z);w(this,P);w(this,q);w(this,D);w(this,X);w(this,Y);w(this,G);w(this,K);w(this,st);w(this,W);w(this,mt);w(this,ot,()=>{});w(this,J,()=>{});w(this,_t,()=>{});w(this,H,()=>!1);w(this,at,e=>{});w(this,gt,(e,i,s)=>{});w(this,yt,(e,i,s,a)=>{if(s||a)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0});x(this,qt,"LRUCache");const{max:i=0,ttl:s,ttlResolution:a=1,ttlAutopurge:o,updateAgeOnGet:r,updateAgeOnHas:c,allowStale:h,dispose:m,onInsert:A,disposeAfter:g,noDisposeOnSet:R,noUpdateTTL:y,maxSize:T=0,maxEntrySize:O=0,sizeCalculation:L,fetchMethod:b,memoMethod:j,noDeleteOnFetchRejection:_,noDeleteOnStaleGet:E,allowStaleOnFetchRejection:U,allowStaleOnFetchAbort:bt,ignoreFetchAbort:ht}=e;if(i!==0&&!Q(i))throw new TypeError("max option must be a nonnegative integer");const Et=i?te(i):Array;if(!Et)throw new Error("invalid max value: "+i);if(f(this,k,i),f(this,I,T),this.maxEntrySize=O||t(this,I),this.sizeCalculation=L,this.sizeCalculation){if(!t(this,I)&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(j!==void 0&&typeof j!="function")throw new TypeError("memoMethod must be a function if defined");if(f(this,pt,j),b!==void 0&&typeof b!="function")throw new TypeError("fetchMethod must be a function if specified");if(f(this,dt,b),f(this,st,!!b),f(this,F,new Map),f(this,v,new Array(i).fill(void 0)),f(this,p,new Array(i).fill(void 0)),f(this,N,new Et(i)),f(this,M,new Et(i)),f(this,z,0),f(this,P,0),f(this,q,Rt.create(i)),f(this,C,0),f(this,B,0),typeof m=="function"&&f(this,V,m),typeof A=="function"&&f(this,rt,A),typeof g=="function"?(f(this,$,g),f(this,D,[])):(f(this,$,void 0),f(this,D,void 0)),f(this,K,!!t(this,V)),f(this,mt,!!t(this,rt)),f(this,W,!!t(this,$)),this.noDisposeOnSet=!!R,this.noUpdateTTL=!!y,this.noDeleteOnFetchRejection=!!_,this.allowStaleOnFetchRejection=!!U,this.allowStaleOnFetchAbort=!!bt,this.ignoreFetchAbort=!!ht,this.maxEntrySize!==0){if(t(this,I)!==0&&!Q(t(this,I)))throw new TypeError("maxSize must be a positive integer if specified");if(!Q(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");u(this,l,ee).call(this)}if(this.allowStale=!!h,this.noDeleteOnStaleGet=!!E,this.updateAgeOnGet=!!r,this.updateAgeOnHas=!!c,this.ttlResolution=Q(a)||a===0?a:1,this.ttlAutopurge=!!o,this.ttl=s||0,this.ttl){if(!Q(this.ttl))throw new TypeError("ttl must be a positive integer if specified");u(this,l,Nt).call(this)}if(t(this,k)===0&&this.ttl===0&&t(this,I)===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!t(this,k)&&!t(this,I)){const lt="LRU_CACHE_UNBOUNDED";ve(lt)&&(Jt.add(lt),Qt("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",lt,Ut))}}static unsafeExposeInternals(e){return{starts:t(e,Y),ttls:t(e,G),sizes:t(e,X),keyMap:t(e,F),keyList:t(e,v),valList:t(e,p),next:t(e,N),prev:t(e,M),get head(){return t(e,z)},get tail(){return t(e,P)},free:t(e,q),isBackgroundFetch:i=>{var s;return u(s=e,l,S).call(s,i)},backgroundFetch:(i,s,a,o)=>{var r;return u(r=e,l,xt).call(r,i,s,a,o)},moveToTail:i=>{var s;return u(s=e,l,wt).call(s,i)},indexes:i=>{var s;return u(s=e,l,tt).call(s,i)},rindexes:i=>{var s;return u(s=e,l,et).call(s,i)},isStale:i=>{var s;return t(s=e,H).call(s,i)}}}get max(){return t(this,k)}get maxSize(){return t(this,I)}get calculatedSize(){return t(this,B)}get size(){return t(this,C)}get fetchMethod(){return t(this,dt)}get memoMethod(){return t(this,pt)}get dispose(){return t(this,V)}get onInsert(){return t(this,rt)}get disposeAfter(){return t(this,$)}getRemainingTTL(e){return t(this,F).has(e)?1/0:0}*entries(){for(const e of u(this,l,tt).call(this))t(this,p)[e]!==void 0&&t(this,v)[e]!==void 0&&!u(this,l,S).call(this,t(this,p)[e])&&(yield[t(this,v)[e],t(this,p)[e]])}*rentries(){for(const e of u(this,l,et).call(this))t(this,p)[e]!==void 0&&t(this,v)[e]!==void 0&&!u(this,l,S).call(this,t(this,p)[e])&&(yield[t(this,v)[e],t(this,p)[e]])}*keys(){for(const e of u(this,l,tt).call(this)){const i=t(this,v)[e];i!==void 0&&!u(this,l,S).call(this,t(this,p)[e])&&(yield i)}}*rkeys(){for(const e of u(this,l,et).call(this)){const i=t(this,v)[e];i!==void 0&&!u(this,l,S).call(this,t(this,p)[e])&&(yield i)}}*values(){for(const e of u(this,l,tt).call(this))t(this,p)[e]!==void 0&&!u(this,l,S).call(this,t(this,p)[e])&&(yield t(this,p)[e])}*rvalues(){for(const e of u(this,l,et).call(this))t(this,p)[e]!==void 0&&!u(this,l,S).call(this,t(this,p)[e])&&(yield t(this,p)[e])}[(Xt=Symbol.iterator,qt=Symbol.toStringTag,Xt)](){return this.entries()}find(e,i={}){for(const s of u(this,l,tt).call(this)){const a=t(this,p)[s],o=u(this,l,S).call(this,a)?a.__staleWhileFetching:a;if(o!==void 0&&e(o,t(this,v)[s],this))return this.get(t(this,v)[s],i)}}forEach(e,i=this){for(const s of u(this,l,tt).call(this)){const a=t(this,p)[s],o=u(this,l,S).call(this,a)?a.__staleWhileFetching:a;o!==void 0&&e.call(i,o,t(this,v)[s],this)}}rforEach(e,i=this){for(const s of u(this,l,et).call(this)){const a=t(this,p)[s],o=u(this,l,S).call(this,a)?a.__staleWhileFetching:a;o!==void 0&&e.call(i,o,t(this,v)[s],this)}}purgeStale(){let e=!1;for(const i of u(this,l,et).call(this,{allowStale:!0}))t(this,H).call(this,i)&&(u(this,l,it).call(this,t(this,v)[i],"expire"),e=!0);return e}info(e){const i=t(this,F).get(e);if(i===void 0)return;const s=t(this,p)[i],a=u(this,l,S).call(this,s)?s.__staleWhileFetching:s;if(a===void 0)return;const o={value:a};if(t(this,G)&&t(this,Y)){const r=t(this,G)[i],c=t(this,Y)[i];if(r&&c){const h=r-(ut.now()-c);o.ttl=h,o.start=Date.now()}}return t(this,X)&&(o.size=t(this,X)[i]),o}dump(){const e=[];for(const i of u(this,l,tt).call(this,{allowStale:!0})){const s=t(this,v)[i],a=t(this,p)[i],o=u(this,l,S).call(this,a)?a.__staleWhileFetching:a;if(o===void 0||s===void 0)continue;const r={value:o};if(t(this,G)&&t(this,Y)){r.ttl=t(this,G)[i];const c=ut.now()-t(this,Y)[i];r.start=Math.floor(Date.now()-c)}t(this,X)&&(r.size=t(this,X)[i]),e.unshift([s,r])}return e}load(e){this.clear();for(const[i,s]of e){if(s.start){const a=Date.now()-s.start;s.start=ut.now()-a}this.set(i,s.value,s)}}set(e,i,s={}){var R,y,T,O,L,b,j;if(i===void 0)return this.delete(e),this;const{ttl:a=this.ttl,start:o,noDisposeOnSet:r=this.noDisposeOnSet,sizeCalculation:c=this.sizeCalculation,status:h}=s;let{noUpdateTTL:m=this.noUpdateTTL}=s;const A=t(this,yt).call(this,e,i,s.size||0,c);if(this.maxEntrySize&&A>this.maxEntrySize)return h&&(h.set="miss",h.maxEntrySizeExceeded=!0),u(this,l,it).call(this,e,"set"),this;let g=t(this,C)===0?void 0:t(this,F).get(e);if(g===void 0)g=t(this,C)===0?t(this,P):t(this,q).length!==0?t(this,q).pop():t(this,C)===t(this,k)?u(this,l,Ot).call(this,!1):t(this,C),t(this,v)[g]=e,t(this,p)[g]=i,t(this,F).set(e,g),t(this,N)[t(this,P)]=g,t(this,M)[g]=t(this,P),f(this,P,g),St(this,C)._++,t(this,gt).call(this,g,A,h),h&&(h.set="add"),m=!1,t(this,mt)&&((R=t(this,rt))==null||R.call(this,i,e,"add"));else{u(this,l,wt).call(this,g);const _=t(this,p)[g];if(i!==_){if(t(this,st)&&u(this,l,S).call(this,_)){_.__abortController.abort(new Error("replaced"));const{__staleWhileFetching:E}=_;E!==void 0&&!r&&(t(this,K)&&((y=t(this,V))==null||y.call(this,E,e,"set")),t(this,W)&&((T=t(this,D))==null||T.push([E,e,"set"])))}else r||(t(this,K)&&((O=t(this,V))==null||O.call(this,_,e,"set")),t(this,W)&&((L=t(this,D))==null||L.push([_,e,"set"])));if(t(this,at).call(this,g),t(this,gt).call(this,g,A,h),t(this,p)[g]=i,h){h.set="replace";const E=_&&u(this,l,S).call(this,_)?_.__staleWhileFetching:_;E!==void 0&&(h.oldValue=E)}}else h&&(h.set="update");t(this,mt)&&((b=this.onInsert)==null||b.call(this,i,e,i===_?"update":"replace"))}if(a!==0&&!t(this,G)&&u(this,l,Nt).call(this),t(this,G)&&(m||t(this,_t).call(this,g,a,o),h&&t(this,J).call(this,h,g)),!r&&t(this,W)&&t(this,D)){const _=t(this,D);let E;for(;E=_==null?void 0:_.shift();)(j=t(this,$))==null||j.call(this,...E)}return this}pop(){var e;try{for(;t(this,C);){const i=t(this,p)[t(this,z)];if(u(this,l,Ot).call(this,!0),u(this,l,S).call(this,i)){if(i.__staleWhileFetching)return i.__staleWhileFetching}else if(i!==void 0)return i}}finally{if(t(this,W)&&t(this,D)){const i=t(this,D);let s;for(;s=i==null?void 0:i.shift();)(e=t(this,$))==null||e.call(this,...s)}}}has(e,i={}){const{updateAgeOnHas:s=this.updateAgeOnHas,status:a}=i,o=t(this,F).get(e);if(o!==void 0){const r=t(this,p)[o];if(u(this,l,S).call(this,r)&&r.__staleWhileFetching===void 0)return!1;if(t(this,H).call(this,o))a&&(a.has="stale",t(this,J).call(this,a,o));else return s&&t(this,ot).call(this,o),a&&(a.has="hit",t(this,J).call(this,a,o)),!0}else a&&(a.has="miss");return!1}peek(e,i={}){const{allowStale:s=this.allowStale}=i,a=t(this,F).get(e);if(a===void 0||!s&&t(this,H).call(this,a))return;const o=t(this,p)[a];return u(this,l,S).call(this,o)?o.__staleWhileFetching:o}async fetch(e,i={}){const{allowStale:s=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,ttl:r=this.ttl,noDisposeOnSet:c=this.noDisposeOnSet,size:h=0,sizeCalculation:m=this.sizeCalculation,noUpdateTTL:A=this.noUpdateTTL,noDeleteOnFetchRejection:g=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:R=this.allowStaleOnFetchRejection,ignoreFetchAbort:y=this.ignoreFetchAbort,allowStaleOnFetchAbort:T=this.allowStaleOnFetchAbort,context:O,forceRefresh:L=!1,status:b,signal:j}=i;if(!t(this,st))return b&&(b.fetch="get"),this.get(e,{allowStale:s,updateAgeOnGet:a,noDeleteOnStaleGet:o,status:b});const _={allowStale:s,updateAgeOnGet:a,noDeleteOnStaleGet:o,ttl:r,noDisposeOnSet:c,size:h,sizeCalculation:m,noUpdateTTL:A,noDeleteOnFetchRejection:g,allowStaleOnFetchRejection:R,allowStaleOnFetchAbort:T,ignoreFetchAbort:y,status:b,signal:j};let E=t(this,F).get(e);if(E===void 0){b&&(b.fetch="miss");const U=u(this,l,xt).call(this,e,E,_,O);return U.__returned=U}else{const U=t(this,p)[E];if(u(this,l,S).call(this,U)){const Ct=s&&U.__staleWhileFetching!==void 0;return b&&(b.fetch="inflight",Ct&&(b.returnedStale=!0)),Ct?U.__staleWhileFetching:U.__returned=U}const bt=t(this,H).call(this,E);if(!L&&!bt)return b&&(b.fetch="hit"),u(this,l,wt).call(this,E),a&&t(this,ot).call(this,E),b&&t(this,J).call(this,b,E),U;const ht=u(this,l,xt).call(this,e,E,_,O),lt=ht.__staleWhileFetching!==void 0&&s;return b&&(b.fetch=bt?"stale":"refresh",lt&&bt&&(b.returnedStale=!0)),lt?ht.__staleWhileFetching:ht.__returned=ht}}async forceFetch(e,i={}){const s=await this.fetch(e,i);if(s===void 0)throw new Error("fetch() returned undefined");return s}memo(e,i={}){const s=t(this,pt);if(!s)throw new Error("no memoMethod provided to constructor");const{context:a,forceRefresh:o,...r}=i,c=this.get(e,r);if(!o&&c!==void 0)return c;const h=s(e,c,{options:r,context:a});return this.set(e,h,r),h}get(e,i={}){const{allowStale:s=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,status:r}=i,c=t(this,F).get(e);if(c!==void 0){const h=t(this,p)[c],m=u(this,l,S).call(this,h);return r&&t(this,J).call(this,r,c),t(this,H).call(this,c)?(r&&(r.get="stale"),m?(r&&s&&h.__staleWhileFetching!==void 0&&(r.returnedStale=!0),s?h.__staleWhileFetching:void 0):(o||u(this,l,it).call(this,e,"expire"),r&&s&&(r.returnedStale=!0),s?h:void 0)):(r&&(r.get="hit"),m?h.__staleWhileFetching:(u(this,l,wt).call(this,c),a&&t(this,ot).call(this,c),h))}else r&&(r.get="miss")}delete(e){return u(this,l,it).call(this,e,"delete")}clear(){return u(this,l,Mt).call(this,"delete")}};k=new WeakMap,I=new WeakMap,V=new WeakMap,rt=new WeakMap,$=new WeakMap,dt=new WeakMap,pt=new WeakMap,C=new WeakMap,B=new WeakMap,F=new WeakMap,v=new WeakMap,p=new WeakMap,N=new WeakMap,M=new WeakMap,z=new WeakMap,P=new WeakMap,q=new WeakMap,D=new WeakMap,X=new WeakMap,Y=new WeakMap,G=new WeakMap,K=new WeakMap,st=new WeakMap,W=new WeakMap,mt=new WeakMap,l=new WeakSet,Nt=function(){const e=new vt(t(this,k)),i=new vt(t(this,k));f(this,G,e),f(this,Y,i),f(this,_t,(o,r,c=ut.now())=>{if(i[o]=r!==0?c:0,e[o]=r,r!==0&&this.ttlAutopurge){const h=setTimeout(()=>{t(this,H).call(this,o)&&u(this,l,it).call(this,t(this,v)[o],"expire")},r+1);h.unref&&h.unref()}}),f(this,ot,o=>{i[o]=e[o]!==0?ut.now():0}),f(this,J,(o,r)=>{if(e[r]){const c=e[r],h=i[r];if(!c||!h)return;o.ttl=c,o.start=h,o.now=s||a();const m=o.now-h;o.remainingTTL=c-m}});let s=0;const a=()=>{const o=ut.now();if(this.ttlResolution>0){s=o;const r=setTimeout(()=>s=0,this.ttlResolution);r.unref&&r.unref()}return o};this.getRemainingTTL=o=>{const r=t(this,F).get(o);if(r===void 0)return 0;const c=e[r],h=i[r];if(!c||!h)return 1/0;const m=(s||a())-h;return c-m},f(this,H,o=>{const r=i[o],c=e[o];return!!c&&!!r&&(s||a())-r>c})},ot=new WeakMap,J=new WeakMap,_t=new WeakMap,H=new WeakMap,ee=function(){const e=new vt(t(this,k));f(this,B,0),f(this,X,e),f(this,at,i=>{f(this,B,t(this,B)-e[i]),e[i]=0}),f(this,yt,(i,s,a,o)=>{if(u(this,l,S).call(this,s))return 0;if(!Q(a))if(o){if(typeof o!="function")throw new TypeError("sizeCalculation must be a function");if(a=o(s,i),!Q(a))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return a}),f(this,gt,(i,s,a)=>{if(e[i]=s,t(this,I)){const o=t(this,I)-e[i];for(;t(this,B)>o;)u(this,l,Ot).call(this,!0)}f(this,B,t(this,B)+e[i]),a&&(a.entrySize=s,a.totalCalculatedSize=t(this,B))})},at=new WeakMap,gt=new WeakMap,yt=new WeakMap,tt=function*({allowStale:e=this.allowStale}={}){if(t(this,C))for(let i=t(this,P);!(!u(this,l,Wt).call(this,i)||((e||!t(this,H).call(this,i))&&(yield i),i===t(this,z)));)i=t(this,M)[i]},et=function*({allowStale:e=this.allowStale}={}){if(t(this,C))for(let i=t(this,z);!(!u(this,l,Wt).call(this,i)||((e||!t(this,H).call(this,i))&&(yield i),i===t(this,P)));)i=t(this,N)[i]},Wt=function(e){return e!==void 0&&t(this,F).get(t(this,v)[e])===e},Ot=function(e){var o,r;const i=t(this,z),s=t(this,v)[i],a=t(this,p)[i];return t(this,st)&&u(this,l,S).call(this,a)?a.__abortController.abort(new Error("evicted")):(t(this,K)||t(this,W))&&(t(this,K)&&((o=t(this,V))==null||o.call(this,a,s,"evict")),t(this,W)&&((r=t(this,D))==null||r.push([a,s,"evict"]))),t(this,at).call(this,i),e&&(t(this,v)[i]=void 0,t(this,p)[i]=void 0,t(this,q).push(i)),t(this,C)===1?(f(this,z,f(this,P,0)),t(this,q).length=0):f(this,z,t(this,N)[i]),t(this,F).delete(s),St(this,C)._--,i},xt=function(e,i,s,a){const o=i===void 0?void 0:t(this,p)[i];if(u(this,l,S).call(this,o))return o;const r=new At,{signal:c}=s;c==null||c.addEventListener("abort",()=>r.abort(c.reason),{signal:r.signal});const h={signal:r.signal,options:s,context:a},m=(O,L=!1)=>{const{aborted:b}=r.signal,j=s.ignoreFetchAbort&&O!==void 0;if(s.status&&(b&&!L?(s.status.fetchAborted=!0,s.status.fetchError=r.signal.reason,j&&(s.status.fetchAbortIgnored=!0)):s.status.fetchResolved=!0),b&&!j&&!L)return g(r.signal.reason);const _=y;return t(this,p)[i]===y&&(O===void 0?_.__staleWhileFetching?t(this,p)[i]=_.__staleWhileFetching:u(this,l,it).call(this,e,"fetch"):(s.status&&(s.status.fetchUpdated=!0),this.set(e,O,h.options))),O},A=O=>(s.status&&(s.status.fetchRejected=!0,s.status.fetchError=O),g(O)),g=O=>{const{aborted:L}=r.signal,b=L&&s.allowStaleOnFetchAbort,j=b||s.allowStaleOnFetchRejection,_=j||s.noDeleteOnFetchRejection,E=y;if(t(this,p)[i]===y&&(!_||E.__staleWhileFetching===void 0?u(this,l,it).call(this,e,"fetch"):b||(t(this,p)[i]=E.__staleWhileFetching)),j)return s.status&&E.__staleWhileFetching!==void 0&&(s.status.returnedStale=!0),E.__staleWhileFetching;if(E.__returned===E)throw O},R=(O,L)=>{var j;const b=(j=t(this,dt))==null?void 0:j.call(this,e,o,h);b&&b instanceof Promise&&b.then(_=>O(_===void 0?void 0:_),L),r.signal.addEventListener("abort",()=>{(!s.ignoreFetchAbort||s.allowStaleOnFetchAbort)&&(O(void 0),s.allowStaleOnFetchAbort&&(O=_=>m(_,!0)))})};s.status&&(s.status.fetchDispatched=!0);const y=new Promise(R).then(m,A),T=Object.assign(y,{__abortController:r,__staleWhileFetching:o,__returned:void 0});return i===void 0?(this.set(e,T,{...h.options,status:void 0}),i=t(this,F).get(e)):t(this,p)[i]=T,T},S=function(e){if(!t(this,st))return!1;const i=e;return!!i&&i instanceof Promise&&i.hasOwnProperty("__staleWhileFetching")&&i.__abortController instanceof At},It=function(e,i){t(this,M)[i]=e,t(this,N)[e]=i},wt=function(e){e!==t(this,P)&&(e===t(this,z)?f(this,z,t(this,N)[e]):u(this,l,It).call(this,t(this,M)[e],t(this,N)[e]),u(this,l,It).call(this,t(this,P),e),f(this,P,e))},it=function(e,i){var a,o,r,c;let s=!1;if(t(this,C)!==0){const h=t(this,F).get(e);if(h!==void 0)if(s=!0,t(this,C)===1)u(this,l,Mt).call(this,i);else{t(this,at).call(this,h);const m=t(this,p)[h];if(u(this,l,S).call(this,m)?m.__abortController.abort(new Error("deleted")):(t(this,K)||t(this,W))&&(t(this,K)&&((a=t(this,V))==null||a.call(this,m,e,i)),t(this,W)&&((o=t(this,D))==null||o.push([m,e,i]))),t(this,F).delete(e),t(this,v)[h]=void 0,t(this,p)[h]=void 0,h===t(this,P))f(this,P,t(this,M)[h]);else if(h===t(this,z))f(this,z,t(this,N)[h]);else{const A=t(this,M)[h];t(this,N)[A]=t(this,N)[h];const g=t(this,N)[h];t(this,M)[g]=t(this,M)[h]}St(this,C)._--,t(this,q).push(h)}}if(t(this,W)&&((r=t(this,D))!=null&&r.length)){const h=t(this,D);let m;for(;m=h==null?void 0:h.shift();)(c=t(this,$))==null||c.call(this,...m)}return s},Mt=function(e){var i,s,a;for(const o of u(this,l,et).call(this,{allowStale:!0})){const r=t(this,p)[o];if(u(this,l,S).call(this,r))r.__abortController.abort(new Error("deleted"));else{const c=t(this,v)[o];t(this,K)&&((i=t(this,V))==null||i.call(this,r,c,e)),t(this,W)&&((s=t(this,D))==null||s.push([r,c,e]))}}if(t(this,F).clear(),t(this,p).fill(void 0),t(this,v).fill(void 0),t(this,G)&&t(this,Y)&&(t(this,G).fill(0),t(this,Y).fill(0)),t(this,X)&&t(this,X).fill(0),f(this,z,0),f(this,P,0),t(this,q).length=0,f(this,B,0),f(this,C,0),t(this,W)&&t(this,D)){const o=t(this,D);let r;for(;r=o==null?void 0:o.shift();)(a=t(this,$))==null||a.call(this,...r)}};let Lt=Ut;var ie={},Ft={};Object.defineProperty(Ft,"__esModule",{value:!0});Ft.getMDXComponent=je;Ft.getMDXExport=ne;var Oe=Ht(Z),xe=Ht(de),Ae=Ht(d);function se(n){if(typeof WeakMap!="function")return null;var e=new WeakMap,i=new WeakMap;return(se=function(s){return s?i:e})(n)}function Ht(n,e){if(n&&n.__esModule)return n;if(n===null||typeof n!="object"&&typeof n!="function")return{default:n};var i=se(e);if(i&&i.has(n))return i.get(n);var s={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in n)if(o!=="default"&&{}.hasOwnProperty.call(n,o)){var r=a?Object.getOwnPropertyDescriptor(n,o):null;r&&(r.get||r.set)?Object.defineProperty(s,o,r):s[o]=n[o]}return s.default=n,i&&i.set(n,s),s}function je(n,e){return ne(n,e).default}function ne(n,e){const s={...{React:Oe,ReactDOM:xe,_jsx_runtime:Ae},...e};return new Function(...Object.keys(s),n)(...Object.values(s))}(function(n){Object.defineProperty(n,"__esModule",{value:!0});var e=Ft;Object.keys(e).forEach(function(i){i==="default"||i==="__esModule"||i in n&&n[i]===e[i]||Object.defineProperty(n,i,{enumerable:!0,get:function(){return e[i]}})})})(ie);var Fe=ie;const Ce="modulepreload",Te=function(n){return"/"+n},$t={},Pe=function(e,i,s){let a=Promise.resolve();if(i&&i.length>0){document.getElementsByTagName("link");const r=document.querySelector("meta[property=csp-nonce]"),c=(r==null?void 0:r.nonce)||(r==null?void 0:r.getAttribute("nonce"));a=Promise.allSettled(i.map(h=>{if(h=Te(h),h in $t)return;$t[h]=!0;const m=h.endsWith(".css"),A=m?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${h}"]${A}`))return;const g=document.createElement("link");if(g.rel=m?"stylesheet":Ce,m||(g.as="script"),g.crossOrigin="",g.href=h,c&&g.setAttribute("nonce",c),document.head.appendChild(g),m)return new Promise((R,y)=>{g.addEventListener("load",R),g.addEventListener("error",()=>y(new Error(`Unable to preload CSS for ${h}`)))})}))}function o(r){const c=new Event("vite:preloadError",{cancelable:!0});if(c.payload=r,window.dispatchEvent(c),!c.defaultPrevented)throw r}return a.then(r=>{for(const c of r||[])c.status==="rejected"&&o(c.reason);return e().catch(o)})};function De({code:n,onSvg:e}){const i=Z.useRef(null),s=Z.useRef(e);return Z.useEffect(()=>{s.current=e},[e]),Z.useEffect(()=>{if(!i.current)return;let a=!1;return Pe(()=>import("./mermaid.core-ZaxoMXOj.js").then(o=>o.by),__vite__mapDeps([0,1])).then(o=>{o.default.initialize({startOnLoad:!1}),o.default.render("mermaid-svg",n).then(({svg:r})=>{var c;!a&&i.current&&(i.current.innerHTML=r,(c=s.current)==null||c.call(s,r))}).catch(r=>{!a&&i.current&&(i.current.innerHTML=`<pre style='color:red'>${String(r)}</pre>`)})}),()=>{a=!0}},[n]),d.jsx("div",{ref:i})}const Pt=n=>n.replace(/\\/g,"/");function re(n,e,i){const[,s]=n.replace(/\\|\//g,e).split(`${i==="playground"?"example":"exercises"}${e}`);return s}const Gt="border-border bg-[var(--shiki-background)] hover:bg-foreground/20 active:bg-foreground/30 box-content block rounded border-2 px-2 py-0.5 font-mono text-xs font-semibold outline-none transition duration-300 ease-in-out";function ze({"data-buttons":n,"data-filename":e,"data-fullpath":i,"data-sep":s="/","data-start":a,"data-type":o}){var R;const r=pe();if(o==="other"||!n||!e||!i)return null;const c=Pt(((R=r[r.type])==null?void 0:R.fullPath)??""),h=!i.startsWith(c),m=ENV.EPICSHOP_DEPLOYED?["problem","solution"]:["problem","solution","playground"],A=n.split(","),g=m.filter(y=>A.includes(y));return d.jsx(d.Fragment,{children:g.map(y=>{var b;const T=r[y];if(y==="playground"){const j=r.playground&&r.playground.appName!==((b=r.problem)==null?void 0:b.name);if(!T||j||h)return d.jsxs("button",{className:jt(Gt,"cursor-not-allowed"),title:j?"Playground is not set to the right app":h?"This file is from different app":"You must 'Set to Playground' before opening a file",children:[d.jsx("span",{className:"uppercase",children:"Open"})," in ",y]},y)}if(!T||!T.fullPath)return null;const O=[Pt(T.fullPath),Pt(e)].join(s),L=re(O,s,y);return d.jsx(Zt,{file:O,line:Number(a??1),children:d.jsxs("span",{title:L,className:Gt,children:[d.jsx("span",{className:"uppercase",children:"Open"})," in ",y]})},y)})})}function Re(){const[n,e]=Z.useState(!1);return Z.useEffect(()=>{if(n){const i=setTimeout(()=>e(!1),1500);return()=>clearTimeout(i)}},[n]),d.jsx("button",{className:le(Gt,"w-12 uppercase"),onClick:i=>{var o,r,c;e(!0);const a=((c=(r=(o=i.currentTarget.parentElement)==null?void 0:o.parentElement)==null?void 0:r.querySelector("pre"))==null?void 0:c.textContent)||"";navigator.clipboard.writeText(a)},children:n?"copied":"copy"})}function Le({children:n,...e}){const{"data-buttons":i,"data-filename":s,"data-fullpath":a,"data-nocopy":o,"data-sep":r}=e,c=o===void 0;function h(){if(a&&r)return!s||s.includes("..")?{"data-filename":re(a,r)}:{"data-filename":s.replace(/\//g,r)}}return d.jsxs("div",{className:"group relative",children:[d.jsxs("div",{className:"absolute right-0 top-0 z-50 m-2 flex items-baseline justify-end gap-4 opacity-0 transition duration-300 ease-in-out focus-within:opacity-100 group-hover:opacity-100",children:[i?d.jsx(ze,{...e}):null,c?d.jsx(Re,{}):null]}),d.jsx("pre",{...e,className:jt("scrollbar-thin scrollbar-thumb-scrollbar",e.className??""),...h(),children:n})]})}const Ne={h1:n=>d.jsx(ct,{...n,as:"h1"}),h2:n=>d.jsx(ct,{...n,as:"h2"}),h3:n=>d.jsx(ct,{...n,as:"h3"}),h4:n=>d.jsx(ct,{...n,as:"h4"}),h5:n=>d.jsx(ct,{...n,as:"h5"}),h6:n=>d.jsx(ct,{...n,as:"h6"}),a:ce,p:n=>d.jsx("div",{...n}),pre:n=>d.jsx("pre",{...n,className:jt("scrollbar-thin scrollbar-thumb-scrollbar",n.className??"")}),LaunchEditor:Zt,VideoEmbed:ge,EpicVideo:me,Mermaid:De};function We(n){const e=Fe.getMDXComponent(n);function i({components:s,...a}){const o=Z.useMemo(()=>({...Ne,...s}),[s]);return d.jsx(e,{components:o,...a})}return i}const Dt=new Lt({max:1e3});function Ie(n){return Z.useMemo(()=>{if(Dt.has(n))return Dt.get(n);const e=We(n);return Dt.set(n,e),e},[n])}function Ke({code:n,components:e}){const i=Ie(n),s=Z.useMemo(()=>({Icon:he,pre:Le,Link:Yt,...e}),[e]);return d.jsx(i,{components:s})}export{qe as E,Zt as L,Ke as M,Pe as _,ye as u};
3
- //# sourceMappingURL=mdx-Dfsh6Vjk.js.map
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/mermaid.core-q9C-HfFu.js","assets/index-Dsusf_Av.js"])))=>i.map(i=>d[i]);
2
+ var oe=Object.defineProperty;var kt=n=>{throw TypeError(n)};var ae=(n,e,i)=>e in n?oe(n,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):n[e]=i;var x=(n,e,i)=>ae(n,typeof e!="symbol"?e+"":e,i),Tt=(n,e,i)=>e.has(n)||kt("Cannot "+i);var t=(n,e,i)=>(Tt(n,e,"read from private field"),i?i.call(n):e.get(n)),w=(n,e,i)=>e.has(n)?kt("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(n):e.set(n,i),f=(n,e,i,s)=>(Tt(n,e,"write to private field"),s?s.call(n,i):e.set(n,i),i),u=(n,e,i)=>(Tt(n,e,"access private method"),i);var St=(n,e,i,s)=>({set _(a){f(n,e,a,i)},get _(){return t(n,e,s)}});import{j as d,r as Z}from"./index-Dsusf_Av.js";import{c as jt,I as he,a as le,A as ce,H as ct}from"./misc-2sBiisF5.js";import{b as ue,L as Yt,a as fe,r as de,u as pe}from"./components-5arJTWsS.js";import{D as me,V as ge}from"./epic-video-CmlkW6Rw.js";import{s as be}from"./progress-bar-DgnkQxQw.js";import{u as we}from"./pe-BShc2dvc.js";import{a as _e}from"./index-DLC5u33j.js";function ye(){const n=ue("root");if(!n)throw new Error("useApps requires a data object from the root loader");return n.apps}function Kt(n){const e=fe();return Z.useEffect(()=>{e.state==="idle"&&e.data!=null&&(n==null||n("fetcher-done"))},[e,n]),e}function Ee({file:n,appFile:e,appName:i,syncTo:s,line:a,column:o,children:r,onUpdate:c}){var y;const h=Kt(c),m=we(),A=typeof e=="string"?[e]:e,g=n?"file":e?"appFile":"",R=s!=null&&s.file?"file":s!=null&&s.appFile?"appFile":"";return d.jsxs(h.Form,{action:"/launch-editor",method:"POST",className:"flex items-center",children:[m,be,d.jsx("input",{type:"hidden",name:"line",value:a}),d.jsx("input",{type:"hidden",name:"column",value:o}),d.jsx("input",{type:"hidden",name:"type",value:g}),d.jsx("input",{type:"hidden",name:"file",value:n}),d.jsx("input",{type:"hidden",name:"appName",value:i}),A==null?void 0:A.map(T=>d.jsx("input",{type:"hidden",name:"appFile",value:T},T)),s?d.jsxs(d.Fragment,{children:[d.jsx("input",{type:"hidden",name:"syncTo.type",value:R}),d.jsx("input",{type:"hidden",name:"syncTo.file",value:s.file}),d.jsx("input",{type:"hidden",name:"syncTo.appName",value:s.appName}),d.jsx("input",{type:"hidden",name:"syncTo.appFile",value:s.appFile})]}):null,d.jsx("button",{type:"submit",className:jt("launch_button",h.state==="idle"?null:"cursor-progress",((y=h.data)==null?void 0:y.status)==="error"?"cursor-not-allowed":null),children:r})]})}function Se({file:n,appFile:e,appName:i,line:s,children:a}){const o=ye(),r=_e();if(Array.isArray(e))return d.jsx("div",{children:"Cannot open more than one file"});if(n){const m=A=>A.replace(/\\/g,"/");return d.jsx("a",{className:"launch_button !no-underline",href:m(n).replace(m(ENV.EPICSHOP_CONTEXT_CWD),ENV.EPICSHOP_GITHUB_ROOT)+(s?`#L${s}`:""),rel:"noreferrer",target:"_blank",children:a})}const c=o.find(m=>m.name===i),h=[...(c==null?void 0:c.relativePath.split(r.separator))??[],e+(s?`#L${s}`:"")].join("/");return d.jsx("a",{className:"launch_button !no-underline",href:`${ENV.EPICSHOP_GITHUB_ROOT}/${h}`,rel:"noreferrer",target:"_blank",children:a})}function qe({appFile:n="README.mdx",appName:e,file:i,relativePath:s}){const a=Kt(),o=c=>{if(!c.altKey||ENV.EPICSHOP_DEPLOYED)return;c.preventDefault();const h=new FormData,m=i?"file":"appFile";h.append(m,i??n),h.append("type",m),e&&h.append("appName",e),a.submit(h,{method:"POST",action:"/launch-editor"})},r=ENV.EPICSHOP_GITHUB_ROOT.replace(/\/tree\/|\/blob\//,"/edit/");return d.jsxs(Yt,{className:"self-center font-mono text-sm",onClick:o,target:"_blank",to:`${r}/${s}/${n}`.replace(/\\/g,"/"),children:[d.jsx("span",{className:"block md:hidden",children:"Edit on GitHub"}),d.jsx("span",{className:"hidden md:block",children:"Edit this page on GitHub"})]})}const Zt=ENV.EPICSHOP_DEPLOYED?Se:Ee,ut=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,Jt=new Set,zt=typeof process=="object"&&process?process:{},Qt=(n,e,i,s)=>{typeof zt.emitWarning=="function"?zt.emitWarning(n,e,i,s):console.error(`[${i}] ${e}: ${n}`)};let At=globalThis.AbortController,Vt=globalThis.AbortSignal;var Bt;if(typeof At>"u"){Vt=class{constructor(){x(this,"onabort");x(this,"_onabort",[]);x(this,"reason");x(this,"aborted",!1)}addEventListener(s,a){this._onabort.push(a)}},At=class{constructor(){x(this,"signal",new Vt);e()}abort(s){var a,o;if(!this.signal.aborted){this.signal.reason=s,this.signal.aborted=!0;for(const r of this.signal._onabort)r(s);(o=(a=this.signal).onabort)==null||o.call(a,s)}}};let n=((Bt=zt.env)==null?void 0:Bt.LRU_CACHE_IGNORE_AC_WARNING)!=="1";const e=()=>{n&&(n=!1,Qt("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e))}}const ve=n=>!Jt.has(n),Q=n=>n&&n===Math.floor(n)&&n>0&&isFinite(n),te=n=>Q(n)?n<=Math.pow(2,8)?Uint8Array:n<=Math.pow(2,16)?Uint16Array:n<=Math.pow(2,32)?Uint32Array:n<=Number.MAX_SAFE_INTEGER?vt:null:null;class vt extends Array{constructor(e){super(e),this.fill(0)}}var ft;const nt=class nt{constructor(e,i){x(this,"heap");x(this,"length");if(!t(nt,ft))throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new i(e),this.length=0}static create(e){const i=te(e);if(!i)return[];f(nt,ft,!0);const s=new nt(e,i);return f(nt,ft,!1),s}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}};ft=new WeakMap,w(nt,ft,!1);let Rt=nt;var qt,Xt,k,I,V,rt,$,dt,pt,C,B,F,v,p,N,M,z,P,q,D,X,Y,G,K,st,W,mt,l,Nt,ot,J,_t,H,ee,at,gt,yt,tt,et,Wt,Ot,xt,S,It,wt,it,Mt;const Ut=class Ut{constructor(e){w(this,l);w(this,k);w(this,I);w(this,V);w(this,rt);w(this,$);w(this,dt);w(this,pt);x(this,"ttl");x(this,"ttlResolution");x(this,"ttlAutopurge");x(this,"updateAgeOnGet");x(this,"updateAgeOnHas");x(this,"allowStale");x(this,"noDisposeOnSet");x(this,"noUpdateTTL");x(this,"maxEntrySize");x(this,"sizeCalculation");x(this,"noDeleteOnFetchRejection");x(this,"noDeleteOnStaleGet");x(this,"allowStaleOnFetchAbort");x(this,"allowStaleOnFetchRejection");x(this,"ignoreFetchAbort");w(this,C);w(this,B);w(this,F);w(this,v);w(this,p);w(this,N);w(this,M);w(this,z);w(this,P);w(this,q);w(this,D);w(this,X);w(this,Y);w(this,G);w(this,K);w(this,st);w(this,W);w(this,mt);w(this,ot,()=>{});w(this,J,()=>{});w(this,_t,()=>{});w(this,H,()=>!1);w(this,at,e=>{});w(this,gt,(e,i,s)=>{});w(this,yt,(e,i,s,a)=>{if(s||a)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0});x(this,qt,"LRUCache");const{max:i=0,ttl:s,ttlResolution:a=1,ttlAutopurge:o,updateAgeOnGet:r,updateAgeOnHas:c,allowStale:h,dispose:m,onInsert:A,disposeAfter:g,noDisposeOnSet:R,noUpdateTTL:y,maxSize:T=0,maxEntrySize:O=0,sizeCalculation:L,fetchMethod:b,memoMethod:j,noDeleteOnFetchRejection:_,noDeleteOnStaleGet:E,allowStaleOnFetchRejection:U,allowStaleOnFetchAbort:bt,ignoreFetchAbort:ht}=e;if(i!==0&&!Q(i))throw new TypeError("max option must be a nonnegative integer");const Et=i?te(i):Array;if(!Et)throw new Error("invalid max value: "+i);if(f(this,k,i),f(this,I,T),this.maxEntrySize=O||t(this,I),this.sizeCalculation=L,this.sizeCalculation){if(!t(this,I)&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(j!==void 0&&typeof j!="function")throw new TypeError("memoMethod must be a function if defined");if(f(this,pt,j),b!==void 0&&typeof b!="function")throw new TypeError("fetchMethod must be a function if specified");if(f(this,dt,b),f(this,st,!!b),f(this,F,new Map),f(this,v,new Array(i).fill(void 0)),f(this,p,new Array(i).fill(void 0)),f(this,N,new Et(i)),f(this,M,new Et(i)),f(this,z,0),f(this,P,0),f(this,q,Rt.create(i)),f(this,C,0),f(this,B,0),typeof m=="function"&&f(this,V,m),typeof A=="function"&&f(this,rt,A),typeof g=="function"?(f(this,$,g),f(this,D,[])):(f(this,$,void 0),f(this,D,void 0)),f(this,K,!!t(this,V)),f(this,mt,!!t(this,rt)),f(this,W,!!t(this,$)),this.noDisposeOnSet=!!R,this.noUpdateTTL=!!y,this.noDeleteOnFetchRejection=!!_,this.allowStaleOnFetchRejection=!!U,this.allowStaleOnFetchAbort=!!bt,this.ignoreFetchAbort=!!ht,this.maxEntrySize!==0){if(t(this,I)!==0&&!Q(t(this,I)))throw new TypeError("maxSize must be a positive integer if specified");if(!Q(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");u(this,l,ee).call(this)}if(this.allowStale=!!h,this.noDeleteOnStaleGet=!!E,this.updateAgeOnGet=!!r,this.updateAgeOnHas=!!c,this.ttlResolution=Q(a)||a===0?a:1,this.ttlAutopurge=!!o,this.ttl=s||0,this.ttl){if(!Q(this.ttl))throw new TypeError("ttl must be a positive integer if specified");u(this,l,Nt).call(this)}if(t(this,k)===0&&this.ttl===0&&t(this,I)===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!t(this,k)&&!t(this,I)){const lt="LRU_CACHE_UNBOUNDED";ve(lt)&&(Jt.add(lt),Qt("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",lt,Ut))}}static unsafeExposeInternals(e){return{starts:t(e,Y),ttls:t(e,G),sizes:t(e,X),keyMap:t(e,F),keyList:t(e,v),valList:t(e,p),next:t(e,N),prev:t(e,M),get head(){return t(e,z)},get tail(){return t(e,P)},free:t(e,q),isBackgroundFetch:i=>{var s;return u(s=e,l,S).call(s,i)},backgroundFetch:(i,s,a,o)=>{var r;return u(r=e,l,xt).call(r,i,s,a,o)},moveToTail:i=>{var s;return u(s=e,l,wt).call(s,i)},indexes:i=>{var s;return u(s=e,l,tt).call(s,i)},rindexes:i=>{var s;return u(s=e,l,et).call(s,i)},isStale:i=>{var s;return t(s=e,H).call(s,i)}}}get max(){return t(this,k)}get maxSize(){return t(this,I)}get calculatedSize(){return t(this,B)}get size(){return t(this,C)}get fetchMethod(){return t(this,dt)}get memoMethod(){return t(this,pt)}get dispose(){return t(this,V)}get onInsert(){return t(this,rt)}get disposeAfter(){return t(this,$)}getRemainingTTL(e){return t(this,F).has(e)?1/0:0}*entries(){for(const e of u(this,l,tt).call(this))t(this,p)[e]!==void 0&&t(this,v)[e]!==void 0&&!u(this,l,S).call(this,t(this,p)[e])&&(yield[t(this,v)[e],t(this,p)[e]])}*rentries(){for(const e of u(this,l,et).call(this))t(this,p)[e]!==void 0&&t(this,v)[e]!==void 0&&!u(this,l,S).call(this,t(this,p)[e])&&(yield[t(this,v)[e],t(this,p)[e]])}*keys(){for(const e of u(this,l,tt).call(this)){const i=t(this,v)[e];i!==void 0&&!u(this,l,S).call(this,t(this,p)[e])&&(yield i)}}*rkeys(){for(const e of u(this,l,et).call(this)){const i=t(this,v)[e];i!==void 0&&!u(this,l,S).call(this,t(this,p)[e])&&(yield i)}}*values(){for(const e of u(this,l,tt).call(this))t(this,p)[e]!==void 0&&!u(this,l,S).call(this,t(this,p)[e])&&(yield t(this,p)[e])}*rvalues(){for(const e of u(this,l,et).call(this))t(this,p)[e]!==void 0&&!u(this,l,S).call(this,t(this,p)[e])&&(yield t(this,p)[e])}[(Xt=Symbol.iterator,qt=Symbol.toStringTag,Xt)](){return this.entries()}find(e,i={}){for(const s of u(this,l,tt).call(this)){const a=t(this,p)[s],o=u(this,l,S).call(this,a)?a.__staleWhileFetching:a;if(o!==void 0&&e(o,t(this,v)[s],this))return this.get(t(this,v)[s],i)}}forEach(e,i=this){for(const s of u(this,l,tt).call(this)){const a=t(this,p)[s],o=u(this,l,S).call(this,a)?a.__staleWhileFetching:a;o!==void 0&&e.call(i,o,t(this,v)[s],this)}}rforEach(e,i=this){for(const s of u(this,l,et).call(this)){const a=t(this,p)[s],o=u(this,l,S).call(this,a)?a.__staleWhileFetching:a;o!==void 0&&e.call(i,o,t(this,v)[s],this)}}purgeStale(){let e=!1;for(const i of u(this,l,et).call(this,{allowStale:!0}))t(this,H).call(this,i)&&(u(this,l,it).call(this,t(this,v)[i],"expire"),e=!0);return e}info(e){const i=t(this,F).get(e);if(i===void 0)return;const s=t(this,p)[i],a=u(this,l,S).call(this,s)?s.__staleWhileFetching:s;if(a===void 0)return;const o={value:a};if(t(this,G)&&t(this,Y)){const r=t(this,G)[i],c=t(this,Y)[i];if(r&&c){const h=r-(ut.now()-c);o.ttl=h,o.start=Date.now()}}return t(this,X)&&(o.size=t(this,X)[i]),o}dump(){const e=[];for(const i of u(this,l,tt).call(this,{allowStale:!0})){const s=t(this,v)[i],a=t(this,p)[i],o=u(this,l,S).call(this,a)?a.__staleWhileFetching:a;if(o===void 0||s===void 0)continue;const r={value:o};if(t(this,G)&&t(this,Y)){r.ttl=t(this,G)[i];const c=ut.now()-t(this,Y)[i];r.start=Math.floor(Date.now()-c)}t(this,X)&&(r.size=t(this,X)[i]),e.unshift([s,r])}return e}load(e){this.clear();for(const[i,s]of e){if(s.start){const a=Date.now()-s.start;s.start=ut.now()-a}this.set(i,s.value,s)}}set(e,i,s={}){var R,y,T,O,L,b,j;if(i===void 0)return this.delete(e),this;const{ttl:a=this.ttl,start:o,noDisposeOnSet:r=this.noDisposeOnSet,sizeCalculation:c=this.sizeCalculation,status:h}=s;let{noUpdateTTL:m=this.noUpdateTTL}=s;const A=t(this,yt).call(this,e,i,s.size||0,c);if(this.maxEntrySize&&A>this.maxEntrySize)return h&&(h.set="miss",h.maxEntrySizeExceeded=!0),u(this,l,it).call(this,e,"set"),this;let g=t(this,C)===0?void 0:t(this,F).get(e);if(g===void 0)g=t(this,C)===0?t(this,P):t(this,q).length!==0?t(this,q).pop():t(this,C)===t(this,k)?u(this,l,Ot).call(this,!1):t(this,C),t(this,v)[g]=e,t(this,p)[g]=i,t(this,F).set(e,g),t(this,N)[t(this,P)]=g,t(this,M)[g]=t(this,P),f(this,P,g),St(this,C)._++,t(this,gt).call(this,g,A,h),h&&(h.set="add"),m=!1,t(this,mt)&&((R=t(this,rt))==null||R.call(this,i,e,"add"));else{u(this,l,wt).call(this,g);const _=t(this,p)[g];if(i!==_){if(t(this,st)&&u(this,l,S).call(this,_)){_.__abortController.abort(new Error("replaced"));const{__staleWhileFetching:E}=_;E!==void 0&&!r&&(t(this,K)&&((y=t(this,V))==null||y.call(this,E,e,"set")),t(this,W)&&((T=t(this,D))==null||T.push([E,e,"set"])))}else r||(t(this,K)&&((O=t(this,V))==null||O.call(this,_,e,"set")),t(this,W)&&((L=t(this,D))==null||L.push([_,e,"set"])));if(t(this,at).call(this,g),t(this,gt).call(this,g,A,h),t(this,p)[g]=i,h){h.set="replace";const E=_&&u(this,l,S).call(this,_)?_.__staleWhileFetching:_;E!==void 0&&(h.oldValue=E)}}else h&&(h.set="update");t(this,mt)&&((b=this.onInsert)==null||b.call(this,i,e,i===_?"update":"replace"))}if(a!==0&&!t(this,G)&&u(this,l,Nt).call(this),t(this,G)&&(m||t(this,_t).call(this,g,a,o),h&&t(this,J).call(this,h,g)),!r&&t(this,W)&&t(this,D)){const _=t(this,D);let E;for(;E=_==null?void 0:_.shift();)(j=t(this,$))==null||j.call(this,...E)}return this}pop(){var e;try{for(;t(this,C);){const i=t(this,p)[t(this,z)];if(u(this,l,Ot).call(this,!0),u(this,l,S).call(this,i)){if(i.__staleWhileFetching)return i.__staleWhileFetching}else if(i!==void 0)return i}}finally{if(t(this,W)&&t(this,D)){const i=t(this,D);let s;for(;s=i==null?void 0:i.shift();)(e=t(this,$))==null||e.call(this,...s)}}}has(e,i={}){const{updateAgeOnHas:s=this.updateAgeOnHas,status:a}=i,o=t(this,F).get(e);if(o!==void 0){const r=t(this,p)[o];if(u(this,l,S).call(this,r)&&r.__staleWhileFetching===void 0)return!1;if(t(this,H).call(this,o))a&&(a.has="stale",t(this,J).call(this,a,o));else return s&&t(this,ot).call(this,o),a&&(a.has="hit",t(this,J).call(this,a,o)),!0}else a&&(a.has="miss");return!1}peek(e,i={}){const{allowStale:s=this.allowStale}=i,a=t(this,F).get(e);if(a===void 0||!s&&t(this,H).call(this,a))return;const o=t(this,p)[a];return u(this,l,S).call(this,o)?o.__staleWhileFetching:o}async fetch(e,i={}){const{allowStale:s=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,ttl:r=this.ttl,noDisposeOnSet:c=this.noDisposeOnSet,size:h=0,sizeCalculation:m=this.sizeCalculation,noUpdateTTL:A=this.noUpdateTTL,noDeleteOnFetchRejection:g=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:R=this.allowStaleOnFetchRejection,ignoreFetchAbort:y=this.ignoreFetchAbort,allowStaleOnFetchAbort:T=this.allowStaleOnFetchAbort,context:O,forceRefresh:L=!1,status:b,signal:j}=i;if(!t(this,st))return b&&(b.fetch="get"),this.get(e,{allowStale:s,updateAgeOnGet:a,noDeleteOnStaleGet:o,status:b});const _={allowStale:s,updateAgeOnGet:a,noDeleteOnStaleGet:o,ttl:r,noDisposeOnSet:c,size:h,sizeCalculation:m,noUpdateTTL:A,noDeleteOnFetchRejection:g,allowStaleOnFetchRejection:R,allowStaleOnFetchAbort:T,ignoreFetchAbort:y,status:b,signal:j};let E=t(this,F).get(e);if(E===void 0){b&&(b.fetch="miss");const U=u(this,l,xt).call(this,e,E,_,O);return U.__returned=U}else{const U=t(this,p)[E];if(u(this,l,S).call(this,U)){const Ct=s&&U.__staleWhileFetching!==void 0;return b&&(b.fetch="inflight",Ct&&(b.returnedStale=!0)),Ct?U.__staleWhileFetching:U.__returned=U}const bt=t(this,H).call(this,E);if(!L&&!bt)return b&&(b.fetch="hit"),u(this,l,wt).call(this,E),a&&t(this,ot).call(this,E),b&&t(this,J).call(this,b,E),U;const ht=u(this,l,xt).call(this,e,E,_,O),lt=ht.__staleWhileFetching!==void 0&&s;return b&&(b.fetch=bt?"stale":"refresh",lt&&bt&&(b.returnedStale=!0)),lt?ht.__staleWhileFetching:ht.__returned=ht}}async forceFetch(e,i={}){const s=await this.fetch(e,i);if(s===void 0)throw new Error("fetch() returned undefined");return s}memo(e,i={}){const s=t(this,pt);if(!s)throw new Error("no memoMethod provided to constructor");const{context:a,forceRefresh:o,...r}=i,c=this.get(e,r);if(!o&&c!==void 0)return c;const h=s(e,c,{options:r,context:a});return this.set(e,h,r),h}get(e,i={}){const{allowStale:s=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,status:r}=i,c=t(this,F).get(e);if(c!==void 0){const h=t(this,p)[c],m=u(this,l,S).call(this,h);return r&&t(this,J).call(this,r,c),t(this,H).call(this,c)?(r&&(r.get="stale"),m?(r&&s&&h.__staleWhileFetching!==void 0&&(r.returnedStale=!0),s?h.__staleWhileFetching:void 0):(o||u(this,l,it).call(this,e,"expire"),r&&s&&(r.returnedStale=!0),s?h:void 0)):(r&&(r.get="hit"),m?h.__staleWhileFetching:(u(this,l,wt).call(this,c),a&&t(this,ot).call(this,c),h))}else r&&(r.get="miss")}delete(e){return u(this,l,it).call(this,e,"delete")}clear(){return u(this,l,Mt).call(this,"delete")}};k=new WeakMap,I=new WeakMap,V=new WeakMap,rt=new WeakMap,$=new WeakMap,dt=new WeakMap,pt=new WeakMap,C=new WeakMap,B=new WeakMap,F=new WeakMap,v=new WeakMap,p=new WeakMap,N=new WeakMap,M=new WeakMap,z=new WeakMap,P=new WeakMap,q=new WeakMap,D=new WeakMap,X=new WeakMap,Y=new WeakMap,G=new WeakMap,K=new WeakMap,st=new WeakMap,W=new WeakMap,mt=new WeakMap,l=new WeakSet,Nt=function(){const e=new vt(t(this,k)),i=new vt(t(this,k));f(this,G,e),f(this,Y,i),f(this,_t,(o,r,c=ut.now())=>{if(i[o]=r!==0?c:0,e[o]=r,r!==0&&this.ttlAutopurge){const h=setTimeout(()=>{t(this,H).call(this,o)&&u(this,l,it).call(this,t(this,v)[o],"expire")},r+1);h.unref&&h.unref()}}),f(this,ot,o=>{i[o]=e[o]!==0?ut.now():0}),f(this,J,(o,r)=>{if(e[r]){const c=e[r],h=i[r];if(!c||!h)return;o.ttl=c,o.start=h,o.now=s||a();const m=o.now-h;o.remainingTTL=c-m}});let s=0;const a=()=>{const o=ut.now();if(this.ttlResolution>0){s=o;const r=setTimeout(()=>s=0,this.ttlResolution);r.unref&&r.unref()}return o};this.getRemainingTTL=o=>{const r=t(this,F).get(o);if(r===void 0)return 0;const c=e[r],h=i[r];if(!c||!h)return 1/0;const m=(s||a())-h;return c-m},f(this,H,o=>{const r=i[o],c=e[o];return!!c&&!!r&&(s||a())-r>c})},ot=new WeakMap,J=new WeakMap,_t=new WeakMap,H=new WeakMap,ee=function(){const e=new vt(t(this,k));f(this,B,0),f(this,X,e),f(this,at,i=>{f(this,B,t(this,B)-e[i]),e[i]=0}),f(this,yt,(i,s,a,o)=>{if(u(this,l,S).call(this,s))return 0;if(!Q(a))if(o){if(typeof o!="function")throw new TypeError("sizeCalculation must be a function");if(a=o(s,i),!Q(a))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return a}),f(this,gt,(i,s,a)=>{if(e[i]=s,t(this,I)){const o=t(this,I)-e[i];for(;t(this,B)>o;)u(this,l,Ot).call(this,!0)}f(this,B,t(this,B)+e[i]),a&&(a.entrySize=s,a.totalCalculatedSize=t(this,B))})},at=new WeakMap,gt=new WeakMap,yt=new WeakMap,tt=function*({allowStale:e=this.allowStale}={}){if(t(this,C))for(let i=t(this,P);!(!u(this,l,Wt).call(this,i)||((e||!t(this,H).call(this,i))&&(yield i),i===t(this,z)));)i=t(this,M)[i]},et=function*({allowStale:e=this.allowStale}={}){if(t(this,C))for(let i=t(this,z);!(!u(this,l,Wt).call(this,i)||((e||!t(this,H).call(this,i))&&(yield i),i===t(this,P)));)i=t(this,N)[i]},Wt=function(e){return e!==void 0&&t(this,F).get(t(this,v)[e])===e},Ot=function(e){var o,r;const i=t(this,z),s=t(this,v)[i],a=t(this,p)[i];return t(this,st)&&u(this,l,S).call(this,a)?a.__abortController.abort(new Error("evicted")):(t(this,K)||t(this,W))&&(t(this,K)&&((o=t(this,V))==null||o.call(this,a,s,"evict")),t(this,W)&&((r=t(this,D))==null||r.push([a,s,"evict"]))),t(this,at).call(this,i),e&&(t(this,v)[i]=void 0,t(this,p)[i]=void 0,t(this,q).push(i)),t(this,C)===1?(f(this,z,f(this,P,0)),t(this,q).length=0):f(this,z,t(this,N)[i]),t(this,F).delete(s),St(this,C)._--,i},xt=function(e,i,s,a){const o=i===void 0?void 0:t(this,p)[i];if(u(this,l,S).call(this,o))return o;const r=new At,{signal:c}=s;c==null||c.addEventListener("abort",()=>r.abort(c.reason),{signal:r.signal});const h={signal:r.signal,options:s,context:a},m=(O,L=!1)=>{const{aborted:b}=r.signal,j=s.ignoreFetchAbort&&O!==void 0;if(s.status&&(b&&!L?(s.status.fetchAborted=!0,s.status.fetchError=r.signal.reason,j&&(s.status.fetchAbortIgnored=!0)):s.status.fetchResolved=!0),b&&!j&&!L)return g(r.signal.reason);const _=y;return t(this,p)[i]===y&&(O===void 0?_.__staleWhileFetching?t(this,p)[i]=_.__staleWhileFetching:u(this,l,it).call(this,e,"fetch"):(s.status&&(s.status.fetchUpdated=!0),this.set(e,O,h.options))),O},A=O=>(s.status&&(s.status.fetchRejected=!0,s.status.fetchError=O),g(O)),g=O=>{const{aborted:L}=r.signal,b=L&&s.allowStaleOnFetchAbort,j=b||s.allowStaleOnFetchRejection,_=j||s.noDeleteOnFetchRejection,E=y;if(t(this,p)[i]===y&&(!_||E.__staleWhileFetching===void 0?u(this,l,it).call(this,e,"fetch"):b||(t(this,p)[i]=E.__staleWhileFetching)),j)return s.status&&E.__staleWhileFetching!==void 0&&(s.status.returnedStale=!0),E.__staleWhileFetching;if(E.__returned===E)throw O},R=(O,L)=>{var j;const b=(j=t(this,dt))==null?void 0:j.call(this,e,o,h);b&&b instanceof Promise&&b.then(_=>O(_===void 0?void 0:_),L),r.signal.addEventListener("abort",()=>{(!s.ignoreFetchAbort||s.allowStaleOnFetchAbort)&&(O(void 0),s.allowStaleOnFetchAbort&&(O=_=>m(_,!0)))})};s.status&&(s.status.fetchDispatched=!0);const y=new Promise(R).then(m,A),T=Object.assign(y,{__abortController:r,__staleWhileFetching:o,__returned:void 0});return i===void 0?(this.set(e,T,{...h.options,status:void 0}),i=t(this,F).get(e)):t(this,p)[i]=T,T},S=function(e){if(!t(this,st))return!1;const i=e;return!!i&&i instanceof Promise&&i.hasOwnProperty("__staleWhileFetching")&&i.__abortController instanceof At},It=function(e,i){t(this,M)[i]=e,t(this,N)[e]=i},wt=function(e){e!==t(this,P)&&(e===t(this,z)?f(this,z,t(this,N)[e]):u(this,l,It).call(this,t(this,M)[e],t(this,N)[e]),u(this,l,It).call(this,t(this,P),e),f(this,P,e))},it=function(e,i){var a,o,r,c;let s=!1;if(t(this,C)!==0){const h=t(this,F).get(e);if(h!==void 0)if(s=!0,t(this,C)===1)u(this,l,Mt).call(this,i);else{t(this,at).call(this,h);const m=t(this,p)[h];if(u(this,l,S).call(this,m)?m.__abortController.abort(new Error("deleted")):(t(this,K)||t(this,W))&&(t(this,K)&&((a=t(this,V))==null||a.call(this,m,e,i)),t(this,W)&&((o=t(this,D))==null||o.push([m,e,i]))),t(this,F).delete(e),t(this,v)[h]=void 0,t(this,p)[h]=void 0,h===t(this,P))f(this,P,t(this,M)[h]);else if(h===t(this,z))f(this,z,t(this,N)[h]);else{const A=t(this,M)[h];t(this,N)[A]=t(this,N)[h];const g=t(this,N)[h];t(this,M)[g]=t(this,M)[h]}St(this,C)._--,t(this,q).push(h)}}if(t(this,W)&&((r=t(this,D))!=null&&r.length)){const h=t(this,D);let m;for(;m=h==null?void 0:h.shift();)(c=t(this,$))==null||c.call(this,...m)}return s},Mt=function(e){var i,s,a;for(const o of u(this,l,et).call(this,{allowStale:!0})){const r=t(this,p)[o];if(u(this,l,S).call(this,r))r.__abortController.abort(new Error("deleted"));else{const c=t(this,v)[o];t(this,K)&&((i=t(this,V))==null||i.call(this,r,c,e)),t(this,W)&&((s=t(this,D))==null||s.push([r,c,e]))}}if(t(this,F).clear(),t(this,p).fill(void 0),t(this,v).fill(void 0),t(this,G)&&t(this,Y)&&(t(this,G).fill(0),t(this,Y).fill(0)),t(this,X)&&t(this,X).fill(0),f(this,z,0),f(this,P,0),t(this,q).length=0,f(this,B,0),f(this,C,0),t(this,W)&&t(this,D)){const o=t(this,D);let r;for(;r=o==null?void 0:o.shift();)(a=t(this,$))==null||a.call(this,...r)}};let Lt=Ut;var ie={},Ft={};Object.defineProperty(Ft,"__esModule",{value:!0});Ft.getMDXComponent=je;Ft.getMDXExport=ne;var Oe=Ht(Z),xe=Ht(de),Ae=Ht(d);function se(n){if(typeof WeakMap!="function")return null;var e=new WeakMap,i=new WeakMap;return(se=function(s){return s?i:e})(n)}function Ht(n,e){if(n&&n.__esModule)return n;if(n===null||typeof n!="object"&&typeof n!="function")return{default:n};var i=se(e);if(i&&i.has(n))return i.get(n);var s={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in n)if(o!=="default"&&{}.hasOwnProperty.call(n,o)){var r=a?Object.getOwnPropertyDescriptor(n,o):null;r&&(r.get||r.set)?Object.defineProperty(s,o,r):s[o]=n[o]}return s.default=n,i&&i.set(n,s),s}function je(n,e){return ne(n,e).default}function ne(n,e){const s={...{React:Oe,ReactDOM:xe,_jsx_runtime:Ae},...e};return new Function(...Object.keys(s),n)(...Object.values(s))}(function(n){Object.defineProperty(n,"__esModule",{value:!0});var e=Ft;Object.keys(e).forEach(function(i){i==="default"||i==="__esModule"||i in n&&n[i]===e[i]||Object.defineProperty(n,i,{enumerable:!0,get:function(){return e[i]}})})})(ie);var Fe=ie;const Ce="modulepreload",Te=function(n){return"/"+n},$t={},Pe=function(e,i,s){let a=Promise.resolve();if(i&&i.length>0){document.getElementsByTagName("link");const r=document.querySelector("meta[property=csp-nonce]"),c=(r==null?void 0:r.nonce)||(r==null?void 0:r.getAttribute("nonce"));a=Promise.allSettled(i.map(h=>{if(h=Te(h),h in $t)return;$t[h]=!0;const m=h.endsWith(".css"),A=m?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${h}"]${A}`))return;const g=document.createElement("link");if(g.rel=m?"stylesheet":Ce,m||(g.as="script"),g.crossOrigin="",g.href=h,c&&g.setAttribute("nonce",c),document.head.appendChild(g),m)return new Promise((R,y)=>{g.addEventListener("load",R),g.addEventListener("error",()=>y(new Error(`Unable to preload CSS for ${h}`)))})}))}function o(r){const c=new Event("vite:preloadError",{cancelable:!0});if(c.payload=r,window.dispatchEvent(c),!c.defaultPrevented)throw r}return a.then(r=>{for(const c of r||[])c.status==="rejected"&&o(c.reason);return e().catch(o)})};function De({code:n,onSvg:e}){const i=Z.useRef(null),s=Z.useRef(e);return Z.useEffect(()=>{s.current=e},[e]),Z.useEffect(()=>{if(!i.current)return;let a=!1;return Pe(()=>import("./mermaid.core-q9C-HfFu.js").then(o=>o.by),__vite__mapDeps([0,1])).then(o=>{o.default.initialize({startOnLoad:!1}),o.default.render("mermaid-svg",n).then(({svg:r})=>{var c;!a&&i.current&&(i.current.innerHTML=r,(c=s.current)==null||c.call(s,r))}).catch(r=>{!a&&i.current&&(i.current.innerHTML=`<pre style='color:red'>${String(r)}</pre>`)})}),()=>{a=!0}},[n]),d.jsx("div",{ref:i})}const Pt=n=>n.replace(/\\/g,"/");function re(n,e,i){const[,s]=n.replace(/\\|\//g,e).split(`${i==="playground"?"example":"exercises"}${e}`);return s}const Gt="border-border bg-[var(--shiki-background)] hover:bg-foreground/20 active:bg-foreground/30 box-content block rounded border-2 px-2 py-0.5 font-mono text-xs font-semibold outline-none transition duration-300 ease-in-out";function ze({"data-buttons":n,"data-filename":e,"data-fullpath":i,"data-sep":s="/","data-start":a,"data-type":o}){var R;const r=pe();if(o==="other"||!n||!e||!i)return null;const c=Pt(((R=r[r.type])==null?void 0:R.fullPath)??""),h=!i.startsWith(c),m=ENV.EPICSHOP_DEPLOYED?["problem","solution"]:["problem","solution","playground"],A=n.split(","),g=m.filter(y=>A.includes(y));return d.jsx(d.Fragment,{children:g.map(y=>{var b;const T=r[y];if(y==="playground"){const j=r.playground&&r.playground.appName!==((b=r.problem)==null?void 0:b.name);if(!T||j||h)return d.jsxs("button",{className:jt(Gt,"cursor-not-allowed"),title:j?"Playground is not set to the right app":h?"This file is from different app":"You must 'Set to Playground' before opening a file",children:[d.jsx("span",{className:"uppercase",children:"Open"})," in ",y]},y)}if(!T||!T.fullPath)return null;const O=[Pt(T.fullPath),Pt(e)].join(s),L=re(O,s,y);return d.jsx(Zt,{file:O,line:Number(a??1),children:d.jsxs("span",{title:L,className:Gt,children:[d.jsx("span",{className:"uppercase",children:"Open"})," in ",y]})},y)})})}function Re(){const[n,e]=Z.useState(!1);return Z.useEffect(()=>{if(n){const i=setTimeout(()=>e(!1),1500);return()=>clearTimeout(i)}},[n]),d.jsx("button",{className:le(Gt,"w-12 uppercase"),onClick:i=>{var o,r,c;e(!0);const a=((c=(r=(o=i.currentTarget.parentElement)==null?void 0:o.parentElement)==null?void 0:r.querySelector("pre"))==null?void 0:c.textContent)||"";navigator.clipboard.writeText(a)},children:n?"copied":"copy"})}function Le({children:n,...e}){const{"data-buttons":i,"data-filename":s,"data-fullpath":a,"data-nocopy":o,"data-sep":r}=e,c=o===void 0;function h(){if(a&&r)return!s||s.includes("..")?{"data-filename":re(a,r)}:{"data-filename":s.replace(/\//g,r)}}return d.jsxs("div",{className:"group relative",children:[d.jsxs("div",{className:"absolute right-0 top-0 z-50 m-2 flex items-baseline justify-end gap-4 opacity-0 transition duration-300 ease-in-out focus-within:opacity-100 group-hover:opacity-100",children:[i?d.jsx(ze,{...e}):null,c?d.jsx(Re,{}):null]}),d.jsx("pre",{...e,className:jt("scrollbar-thin scrollbar-thumb-scrollbar",e.className??""),...h(),children:n})]})}const Ne={h1:n=>d.jsx(ct,{...n,as:"h1"}),h2:n=>d.jsx(ct,{...n,as:"h2"}),h3:n=>d.jsx(ct,{...n,as:"h3"}),h4:n=>d.jsx(ct,{...n,as:"h4"}),h5:n=>d.jsx(ct,{...n,as:"h5"}),h6:n=>d.jsx(ct,{...n,as:"h6"}),a:ce,p:n=>d.jsx("div",{...n}),pre:n=>d.jsx("pre",{...n,className:jt("scrollbar-thin scrollbar-thumb-scrollbar",n.className??"")}),LaunchEditor:Zt,VideoEmbed:ge,EpicVideo:me,Mermaid:De};function We(n){const e=Fe.getMDXComponent(n);function i({components:s,...a}){const o=Z.useMemo(()=>({...Ne,...s}),[s]);return d.jsx(e,{components:o,...a})}return i}const Dt=new Lt({max:1e3});function Ie(n){return Z.useMemo(()=>{if(Dt.has(n))return Dt.get(n);const e=We(n);return Dt.set(n,e),e},[n])}function Ke({code:n,components:e}){const i=Ie(n),s=Z.useMemo(()=>({Icon:he,pre:Le,Link:Yt,...e}),[e]);return d.jsx(i,{components:s})}export{qe as E,Zt as L,Ke as M,Pe as _,ye as u};
3
+ //# sourceMappingURL=mdx-C7imFHZE.js.map