@epic-web/workshop-app 6.1.0 → 6.3.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 (230) hide show
  1. package/build/client/assets/_-Kbj-HAPY.js +2 -0
  2. package/build/client/assets/{_-C_7mS1-0.js.map → _-Kbj-HAPY.js.map} +1 -1
  3. package/build/client/assets/{_basePickBy-DkOIaPL8.js → _basePickBy-WG4U0WMd.js} +2 -2
  4. package/build/client/assets/{_basePickBy-DkOIaPL8.js.map → _basePickBy-WG4U0WMd.js.map} +1 -1
  5. package/build/client/assets/{_baseUniq-BAqp_AZM.js → _baseUniq--zdZg7WG.js} +2 -2
  6. package/build/client/assets/{_baseUniq-BAqp_AZM.js.map → _baseUniq--zdZg7WG.js.map} +1 -1
  7. package/build/client/assets/_exerciseNumber-MXWVsKzI.js +2 -0
  8. package/build/client/assets/{_exerciseNumber-CdGNKLia.js.map → _exerciseNumber-MXWVsKzI.js.map} +1 -1
  9. package/build/client/assets/_exerciseNumber_._stepNumber-BfeokKD3.js +2 -0
  10. package/build/client/assets/{_exerciseNumber_._stepNumber-BNj079sn.js.map → _exerciseNumber_._stepNumber-BfeokKD3.js.map} +1 -1
  11. package/build/client/assets/_exerciseNumber_.finished-Dr6lECMK.js +2 -0
  12. package/build/client/assets/{_exerciseNumber_.finished-Ce6wQJ7W.js.map → _exerciseNumber_.finished-Dr6lECMK.js.map} +1 -1
  13. package/build/client/assets/_layout-Bv8l5wO7.js +2 -0
  14. package/build/client/assets/{_layout-C-qRb0Ym.js.map → _layout-Bv8l5wO7.js.map} +1 -1
  15. package/build/client/assets/{_layout-Tp2XmIFb.js → _layout-ePpFHa-S.js} +3 -3
  16. package/build/client/assets/{_layout-Tp2XmIFb.js.map → _layout-ePpFHa-S.js.map} +1 -1
  17. package/build/client/assets/accordion-DBvaz78c.js +2 -0
  18. package/build/client/assets/{accordion-PSsenYUI.js.map → accordion-DBvaz78c.js.map} +1 -1
  19. package/build/client/assets/account-BgHt6sNV.js +2 -0
  20. package/build/client/assets/{account-Jl0f1Zst.js.map → account-BgHt6sNV.js.map} +1 -1
  21. package/build/client/assets/app-By03B5QO.js +2 -0
  22. package/build/client/assets/{app-KDd3xjI9.js.map → app-By03B5QO.js.map} +1 -1
  23. package/build/client/assets/{arc-DWALijMH.js → arc-D-54mj1a.js} +2 -2
  24. package/build/client/assets/{arc-DWALijMH.js.map → arc-D-54mj1a.js.map} +1 -1
  25. package/build/client/assets/architectureDiagram-NQ2NVSRB-CamU9d2s.js +37 -0
  26. package/build/client/assets/{architectureDiagram-NQ2NVSRB-tX-q9elq.js.map → architectureDiagram-NQ2NVSRB-CamU9d2s.js.map} +1 -1
  27. package/build/client/assets/{blockDiagram-PHRCVELO-CDy5WrXO.js → blockDiagram-PHRCVELO-8PiJU5dn.js} +3 -3
  28. package/build/client/assets/{blockDiagram-PHRCVELO-CDy5WrXO.js.map → blockDiagram-PHRCVELO-8PiJU5dn.js.map} +1 -1
  29. package/build/client/assets/{button-cFpvwtjC.js → button-BoJWEKHp.js} +2 -2
  30. package/build/client/assets/{button-cFpvwtjC.js.map → button-BoJWEKHp.js.map} +1 -1
  31. package/build/client/assets/{c4Diagram-6F6E4RAY-CFbAkThh.js → c4Diagram-6F6E4RAY-a_Vz9FQp.js} +3 -3
  32. package/build/client/assets/{c4Diagram-6F6E4RAY-CFbAkThh.js.map → c4Diagram-6F6E4RAY-a_Vz9FQp.js.map} +1 -1
  33. package/build/client/assets/channel-olxjZBcv.js +2 -0
  34. package/build/client/assets/{channel-DHkyUdNE.js.map → channel-olxjZBcv.js.map} +1 -1
  35. package/build/client/assets/{chunk-353BL4L5-Dpooe8HA.js → chunk-353BL4L5-QtLxglxb.js} +2 -2
  36. package/build/client/assets/{chunk-353BL4L5-Dpooe8HA.js.map → chunk-353BL4L5-QtLxglxb.js.map} +1 -1
  37. package/build/client/assets/{chunk-67H74DCK-LD3kHetT.js → chunk-67H74DCK-N9VlvDsS.js} +2 -2
  38. package/build/client/assets/{chunk-67H74DCK-LD3kHetT.js.map → chunk-67H74DCK-N9VlvDsS.js.map} +1 -1
  39. package/build/client/assets/{chunk-6OLS64BW-DqN3K0zX.js → chunk-6OLS64BW-Bw6L54gk.js} +2 -2
  40. package/build/client/assets/{chunk-6OLS64BW-DqN3K0zX.js.map → chunk-6OLS64BW-Bw6L54gk.js.map} +1 -1
  41. package/build/client/assets/{chunk-AACKK3MU-956RrsQJ.js → chunk-AACKK3MU-CGRxti6k.js} +2 -2
  42. package/build/client/assets/{chunk-AACKK3MU-956RrsQJ.js.map → chunk-AACKK3MU-CGRxti6k.js.map} +1 -1
  43. package/build/client/assets/{chunk-BFAMUDN2-By_sWoWf.js → chunk-BFAMUDN2-D0k5yzNa.js} +2 -2
  44. package/build/client/assets/{chunk-BFAMUDN2-By_sWoWf.js.map → chunk-BFAMUDN2-D0k5yzNa.js.map} +1 -1
  45. package/build/client/assets/{chunk-E2GYISFI-CYbTdeHG.js → chunk-E2GYISFI-L538ejWD.js} +2 -2
  46. package/build/client/assets/{chunk-E2GYISFI-CYbTdeHG.js.map → chunk-E2GYISFI-L538ejWD.js.map} +1 -1
  47. package/build/client/assets/{chunk-QEP2MXWD-EMIn8SEG.js → chunk-QEP2MXWD-DdDxYCFZ.js} +2 -2
  48. package/build/client/assets/{chunk-QEP2MXWD-EMIn8SEG.js.map → chunk-QEP2MXWD-DdDxYCFZ.js.map} +1 -1
  49. package/build/client/assets/{chunk-SKB7J2MH-CPK45517.js → chunk-SKB7J2MH-BntWlIrL.js} +2 -2
  50. package/build/client/assets/{chunk-SKB7J2MH-CPK45517.js.map → chunk-SKB7J2MH-BntWlIrL.js.map} +1 -1
  51. package/build/client/assets/classDiagram-BGRH5UQR-C5Mv_s-i.js +2 -0
  52. package/build/client/assets/{classDiagram-BGRH5UQR-DMFCY4SY.js.map → classDiagram-BGRH5UQR-C5Mv_s-i.js.map} +1 -1
  53. package/build/client/assets/classDiagram-v2-O24JOBDK-C5Mv_s-i.js +2 -0
  54. package/build/client/assets/{classDiagram-v2-O24JOBDK-DMFCY4SY.js.map → classDiagram-v2-O24JOBDK-C5Mv_s-i.js.map} +1 -1
  55. package/build/client/assets/clone-B94ujfDo.js +2 -0
  56. package/build/client/assets/{clone-DgOnCE7a.js.map → clone-B94ujfDo.js.map} +1 -1
  57. package/build/client/assets/clsx-B-dksMZM.js +2 -0
  58. package/build/client/assets/clsx-B-dksMZM.js.map +1 -0
  59. package/build/client/assets/dagre-FFZHY6LT-UmchHP04.js +5 -0
  60. package/build/client/assets/{dagre-FFZHY6LT-D8_T6tZq.js.map → dagre-FFZHY6LT-UmchHP04.js.map} +1 -1
  61. package/build/client/assets/diagram-3EMPZRKU-CjmDnDXX.js +25 -0
  62. package/build/client/assets/{diagram-3EMPZRKU-BEeRqItD.js.map → diagram-3EMPZRKU-CjmDnDXX.js.map} +1 -1
  63. package/build/client/assets/diagram-5UYTHUR4-C85dABA1.js +25 -0
  64. package/build/client/assets/{diagram-5UYTHUR4-CikqdCuq.js.map → diagram-5UYTHUR4-C85dABA1.js.map} +1 -1
  65. package/build/client/assets/diagram-ZTM2IBQH-CH_XZ7tw.js +44 -0
  66. package/build/client/assets/{diagram-ZTM2IBQH-CDz-uqOk.js.map → diagram-ZTM2IBQH-CH_XZ7tw.js.map} +1 -1
  67. package/build/client/assets/diff-C1wUPjJK.js +2 -0
  68. package/build/client/assets/{diff-DLaUr4S6.js.map → diff-C1wUPjJK.js.map} +1 -1
  69. package/build/client/assets/diff-CxZ19SOv.js +2 -0
  70. package/build/client/assets/{diff-BXApfmyx.js.map → diff-CxZ19SOv.js.map} +1 -1
  71. package/build/client/assets/{discord-DOEtvB6W.js → discord-B5cRUOhZ.js} +2 -2
  72. package/build/client/assets/{discord-DOEtvB6W.js.map → discord-B5cRUOhZ.js.map} +1 -1
  73. package/build/client/assets/discord-BvZSO_OZ.js +2 -0
  74. package/build/client/assets/discord-BvZSO_OZ.js.map +1 -0
  75. package/build/client/assets/{epic-video-Buv6ZzQr.js → epic-video-CRkBFsAC.js} +2 -2
  76. package/build/client/assets/{epic-video-Buv6ZzQr.js.map → epic-video-CRkBFsAC.js.map} +1 -1
  77. package/build/client/assets/{erDiagram-R3QVA2FD-WzL917SV.js → erDiagram-R3QVA2FD-DbFybc7W.js} +3 -3
  78. package/build/client/assets/{erDiagram-R3QVA2FD-WzL917SV.js.map → erDiagram-R3QVA2FD-DbFybc7W.js.map} +1 -1
  79. package/build/client/assets/{error-boundary-B8bEOgxp.js → error-boundary-bzCOyChj.js} +2 -2
  80. package/build/client/assets/{error-boundary-B8bEOgxp.js.map → error-boundary-bzCOyChj.js.map} +1 -1
  81. package/build/client/assets/finished-D-PDIHdi.js +2 -0
  82. package/build/client/assets/{finished-BGX9JzP_.js.map → finished-D-PDIHdi.js.map} +1 -1
  83. package/build/client/assets/{flowDiagram-PKI6S5ZS-qimfuZS6.js → flowDiagram-PKI6S5ZS-b-Wr1zEn.js} +3 -3
  84. package/build/client/assets/{flowDiagram-PKI6S5ZS-qimfuZS6.js.map → flowDiagram-PKI6S5ZS-b-Wr1zEn.js.map} +1 -1
  85. package/build/client/assets/ganttDiagram-EK5VF46D-D25CAue3.js +268 -0
  86. package/build/client/assets/{ganttDiagram-EK5VF46D-R6ZSFdSM.js.map → ganttDiagram-EK5VF46D-D25CAue3.js.map} +1 -1
  87. package/build/client/assets/gitGraphDiagram-GW3U2K7C-B7Ue-jLz.js +66 -0
  88. package/build/client/assets/{gitGraphDiagram-GW3U2K7C-DV4MLocC.js.map → gitGraphDiagram-GW3U2K7C-B7Ue-jLz.js.map} +1 -1
  89. package/build/client/assets/{graph-DbEC4aH6.js → graph-9sAzMH8t.js} +2 -2
  90. package/build/client/assets/{graph-DbEC4aH6.js.map → graph-9sAzMH8t.js.map} +1 -1
  91. package/build/client/assets/{index-5iWKMrsc.js → index-8yBq10sZ.js} +2 -2
  92. package/build/client/assets/{index-5iWKMrsc.js.map → index-8yBq10sZ.js.map} +1 -1
  93. package/build/client/assets/index-CS_uCg-3.js +2 -0
  94. package/build/client/assets/{index-Bn3YwCqZ.js.map → index-CS_uCg-3.js.map} +1 -1
  95. package/build/client/assets/index-Cf0XLNVj.js +2 -0
  96. package/build/client/assets/{index-CUv7g3UR.js.map → index-Cf0XLNVj.js.map} +1 -1
  97. package/build/client/assets/{index-7Ba6ptu2.js → index-CtnHrWrs.js} +2 -2
  98. package/build/client/assets/{index-7Ba6ptu2.js.map → index-CtnHrWrs.js.map} +1 -1
  99. package/build/client/assets/{index-CZ8q0Nf8.js → index-DPhEf4uN.js} +2 -2
  100. package/build/client/assets/{index-CZ8q0Nf8.js.map → index-DPhEf4uN.js.map} +1 -1
  101. package/build/client/assets/index-Dqd5qiWh.js +2 -0
  102. package/build/client/assets/{index-DxbpRM0V.js.map → index-Dqd5qiWh.js.map} +1 -1
  103. package/build/client/assets/infoDiagram-RLU2ROGC-DDlCYHQW.js +3 -0
  104. package/build/client/assets/{infoDiagram-RLU2ROGC-BJyo6jex.js.map → infoDiagram-RLU2ROGC-DDlCYHQW.js.map} +1 -1
  105. package/build/client/assets/{journeyDiagram-EWQZEKCU-aQCeSbRC.js → journeyDiagram-EWQZEKCU-Bm8mUykI.js} +3 -3
  106. package/build/client/assets/{journeyDiagram-EWQZEKCU-aQCeSbRC.js.map → journeyDiagram-EWQZEKCU-Bm8mUykI.js.map} +1 -1
  107. package/build/client/assets/{kanban-definition-ILFWEQ3N-CLcq3V0h.js → kanban-definition-ILFWEQ3N-BoSNcgtS.js} +3 -3
  108. package/build/client/assets/{kanban-definition-ILFWEQ3N-CLcq3V0h.js.map → kanban-definition-ILFWEQ3N-BoSNcgtS.js.map} +1 -1
  109. package/build/client/assets/{layout-DInHBBCO.js → layout-Ba5kmwon.js} +2 -2
  110. package/build/client/assets/{layout-DInHBBCO.js.map → layout-Ba5kmwon.js.map} +1 -1
  111. package/build/client/assets/{linear-BoPQG8e5.js → linear-ZPMI8s6B.js} +2 -2
  112. package/build/client/assets/{linear-BoPQG8e5.js.map → linear-ZPMI8s6B.js.map} +1 -1
  113. package/build/client/assets/{loading-WTUNhoIS.js → loading-C810LASV.js} +2 -2
  114. package/build/client/assets/{loading-WTUNhoIS.js.map → loading-C810LASV.js.map} +1 -1
  115. package/build/client/assets/login-CQRwgkfM.js +2 -0
  116. package/build/client/assets/{login-BzcTSzkr.js.map → login-CQRwgkfM.js.map} +1 -1
  117. package/build/client/assets/manifest-eb55e374.js +1 -0
  118. package/build/client/assets/mdx-DH55rolp.js +3 -0
  119. package/build/client/assets/{mdx-BrER1Z2t.js.map → mdx-DH55rolp.js.map} +1 -1
  120. package/build/client/assets/{mermaid.core-Cvtu6qL8.js → mermaid.core-CG5oJ8_-.js} +5 -5
  121. package/build/client/assets/{mermaid.core-Cvtu6qL8.js.map → mermaid.core-CG5oJ8_-.js.map} +1 -1
  122. package/build/client/assets/mindmap-definition-CZNETY7S-Dr_MsV9M.js +96 -0
  123. package/build/client/assets/{mindmap-definition-CZNETY7S-BwcWuimP.js.map → mindmap-definition-CZNETY7S-Dr_MsV9M.js.map} +1 -1
  124. package/build/client/assets/misc-DsJGqoYt.js +2 -0
  125. package/build/client/assets/misc-DsJGqoYt.js.map +1 -0
  126. package/build/client/assets/{nav-chevrons-Cxzx0j13.js → nav-chevrons-CSVvCjJa.js} +2 -2
  127. package/build/client/assets/{nav-chevrons-Cxzx0j13.js.map → nav-chevrons-CSVvCjJa.js.map} +1 -1
  128. package/build/client/assets/onboarding-CyHu3NPX.js +2 -0
  129. package/build/client/assets/{onboarding-CpNLu5ws.js.map → onboarding-CyHu3NPX.js.map} +1 -1
  130. package/build/client/assets/{online-CyV51Rml.js → online-Cf3nj5JR.js} +2 -2
  131. package/build/client/assets/{online-CyV51Rml.js.map → online-Cf3nj5JR.js.map} +1 -1
  132. package/build/client/assets/pieDiagram-NIOCPIFQ-DGamF-m5.js +31 -0
  133. package/build/client/assets/{pieDiagram-NIOCPIFQ-BGD0lX78.js.map → pieDiagram-NIOCPIFQ-DGamF-m5.js.map} +1 -1
  134. package/build/client/assets/preferences-eb0Opp1D.js +2 -0
  135. package/build/client/assets/preferences-eb0Opp1D.js.map +1 -0
  136. package/build/client/assets/{presence-CLRBf5dp.js → presence-DXH0dXJd.js} +2 -2
  137. package/build/client/assets/{presence-CLRBf5dp.js.map → presence-DXH0dXJd.js.map} +1 -1
  138. package/build/client/assets/preview-B35cxJW7.js +2 -0
  139. package/build/client/assets/{preview-CMOIed2z.js.map → preview-B35cxJW7.js.map} +1 -1
  140. package/build/client/assets/{product-B0zJEdi_.js → product-B3wkyL3-.js} +2 -2
  141. package/build/client/assets/{product-B0zJEdi_.js.map → product-B3wkyL3-.js.map} +1 -1
  142. package/build/client/assets/{progress-DKsShYpv.js → progress-BP5cLKuW.js} +2 -2
  143. package/build/client/assets/{progress-DKsShYpv.js.map → progress-BP5cLKuW.js.map} +1 -1
  144. package/build/client/assets/{progress-bar-Cww9t8Vn.js → progress-bar-BagX2z6n.js} +2 -2
  145. package/build/client/assets/{progress-bar-Cww9t8Vn.js.map → progress-bar-BagX2z6n.js.map} +1 -1
  146. package/build/client/assets/{quadrantDiagram-2OG54O6I-75mVARIA.js → quadrantDiagram-2OG54O6I-DzYQA4wE.js} +5 -5
  147. package/build/client/assets/{quadrantDiagram-2OG54O6I-75mVARIA.js.map → quadrantDiagram-2OG54O6I-DzYQA4wE.js.map} +1 -1
  148. package/build/client/assets/{requirementDiagram-SO3GGRV7-9xtgDM0W.js → requirementDiagram-SO3GGRV7-CT4nmOnG.js} +3 -3
  149. package/build/client/assets/{requirementDiagram-SO3GGRV7-9xtgDM0W.js.map → requirementDiagram-SO3GGRV7-CT4nmOnG.js.map} +1 -1
  150. package/build/client/assets/{revalidation-ws-CkOwoVmm.js → revalidation-ws-De6AS3e6.js} +2 -2
  151. package/build/client/assets/{revalidation-ws-CkOwoVmm.js.map → revalidation-ws-De6AS3e6.js.map} +1 -1
  152. package/build/client/assets/root-CoMxWz2o.js +2 -0
  153. package/build/client/assets/root-CoMxWz2o.js.map +1 -0
  154. package/build/client/assets/sankeyDiagram-4UZDY2LN-ByZQvDvv.js +11 -0
  155. package/build/client/assets/{sankeyDiagram-4UZDY2LN-GnxcKs-y.js.map → sankeyDiagram-4UZDY2LN-ByZQvDvv.js.map} +1 -1
  156. package/build/client/assets/{sequenceDiagram-ZIKVLSP4-nwxzVXHz.js → sequenceDiagram-ZIKVLSP4-D8J9bTtT.js} +3 -3
  157. package/build/client/assets/{sequenceDiagram-ZIKVLSP4-nwxzVXHz.js.map → sequenceDiagram-ZIKVLSP4-D8J9bTtT.js.map} +1 -1
  158. package/build/client/assets/set-playground-fnyxfdJX.js +2 -0
  159. package/build/client/assets/{set-playground-Bx0yIjpY.js.map → set-playground-fnyxfdJX.js.map} +1 -1
  160. package/build/client/assets/stateDiagram-XX37X6EN-CDbaOeD7.js +2 -0
  161. package/build/client/assets/{stateDiagram-XX37X6EN-DplHO2WC.js.map → stateDiagram-XX37X6EN-CDbaOeD7.js.map} +1 -1
  162. package/build/client/assets/stateDiagram-v2-GD6S3NHB-ZW9khKM8.js +2 -0
  163. package/build/client/assets/{stateDiagram-v2-GD6S3NHB-CmsjuNaA.js.map → stateDiagram-v2-GD6S3NHB-ZW9khKM8.js.map} +1 -1
  164. package/build/client/assets/tailwind-CyQBDA3D.css +1 -0
  165. package/build/client/assets/test-Dr7hgef4.js +2 -0
  166. package/build/client/assets/{test-DUocKqAt.js.map → test-Dr7hgef4.js.map} +1 -1
  167. package/build/client/assets/{tests-Bmk7igTW.js → tests-EEL6JFzf.js} +2 -2
  168. package/build/client/assets/{tests-Bmk7igTW.js.map → tests-EEL6JFzf.js.map} +1 -1
  169. package/build/client/assets/{timeline-definition-RI47OAVP-Dhz4J7XS.js → timeline-definition-RI47OAVP-CpiFZiC9.js} +3 -3
  170. package/build/client/assets/{timeline-definition-RI47OAVP-Dhz4J7XS.js.map → timeline-definition-RI47OAVP-CpiFZiC9.js.map} +1 -1
  171. package/build/client/assets/{tooltip-Cm7A1uIP.js → tooltip-CTw4ab49.js} +2 -2
  172. package/build/client/assets/{tooltip-Cm7A1uIP.js.map → tooltip-CTw4ab49.js.map} +1 -1
  173. package/build/client/assets/{treemap-FKARHQ26-4Q6H4E9y.js → treemap-FKARHQ26-DW0onZEJ.js} +2 -2
  174. package/build/client/assets/{treemap-FKARHQ26-4Q6H4E9y.js.map → treemap-FKARHQ26-DW0onZEJ.js.map} +1 -1
  175. package/build/client/assets/workspace-structure-BU7brX4_.js +2 -0
  176. package/build/client/assets/workspace-structure-BU7brX4_.js.map +1 -0
  177. package/build/client/assets/{xychartDiagram-H2YORKM3-mIuoEWBr.js → xychartDiagram-H2YORKM3-pOb4n59k.js} +3 -3
  178. package/build/client/assets/{xychartDiagram-H2YORKM3-mIuoEWBr.js.map → xychartDiagram-H2YORKM3-pOb4n59k.js.map} +1 -1
  179. package/build/server/index.js +565 -271
  180. package/build/server/index.js.map +1 -1
  181. package/dist/server/index.js +7 -7
  182. package/package.json +1 -1
  183. package/start.js +6 -6
  184. package/build/client/assets/_-C_7mS1-0.js +0 -2
  185. package/build/client/assets/_exerciseNumber-CdGNKLia.js +0 -2
  186. package/build/client/assets/_exerciseNumber_._stepNumber-BNj079sn.js +0 -2
  187. package/build/client/assets/_exerciseNumber_.finished-Ce6wQJ7W.js +0 -2
  188. package/build/client/assets/_layout-C-qRb0Ym.js +0 -2
  189. package/build/client/assets/accordion-PSsenYUI.js +0 -2
  190. package/build/client/assets/account-Jl0f1Zst.js +0 -2
  191. package/build/client/assets/app-KDd3xjI9.js +0 -2
  192. package/build/client/assets/architectureDiagram-NQ2NVSRB-tX-q9elq.js +0 -37
  193. package/build/client/assets/channel-DHkyUdNE.js +0 -2
  194. package/build/client/assets/classDiagram-BGRH5UQR-DMFCY4SY.js +0 -2
  195. package/build/client/assets/classDiagram-v2-O24JOBDK-DMFCY4SY.js +0 -2
  196. package/build/client/assets/clone-DgOnCE7a.js +0 -2
  197. package/build/client/assets/dagre-FFZHY6LT-D8_T6tZq.js +0 -5
  198. package/build/client/assets/diagram-3EMPZRKU-BEeRqItD.js +0 -25
  199. package/build/client/assets/diagram-5UYTHUR4-CikqdCuq.js +0 -25
  200. package/build/client/assets/diagram-ZTM2IBQH-CDz-uqOk.js +0 -44
  201. package/build/client/assets/diff-BXApfmyx.js +0 -2
  202. package/build/client/assets/diff-DLaUr4S6.js +0 -2
  203. package/build/client/assets/discord-C86FbV-j.js +0 -2
  204. package/build/client/assets/discord-C86FbV-j.js.map +0 -1
  205. package/build/client/assets/finished-BGX9JzP_.js +0 -2
  206. package/build/client/assets/ganttDiagram-EK5VF46D-R6ZSFdSM.js +0 -268
  207. package/build/client/assets/gitGraphDiagram-GW3U2K7C-DV4MLocC.js +0 -66
  208. package/build/client/assets/index-Bn3YwCqZ.js +0 -2
  209. package/build/client/assets/index-CUv7g3UR.js +0 -2
  210. package/build/client/assets/index-DxbpRM0V.js +0 -2
  211. package/build/client/assets/infoDiagram-RLU2ROGC-BJyo6jex.js +0 -3
  212. package/build/client/assets/login-BzcTSzkr.js +0 -2
  213. package/build/client/assets/manifest-d7f923a9.js +0 -1
  214. package/build/client/assets/mdx-BrER1Z2t.js +0 -3
  215. package/build/client/assets/mindmap-definition-CZNETY7S-BwcWuimP.js +0 -96
  216. package/build/client/assets/misc-COGqV2fm.js +0 -2
  217. package/build/client/assets/misc-COGqV2fm.js.map +0 -1
  218. package/build/client/assets/onboarding-CpNLu5ws.js +0 -2
  219. package/build/client/assets/pieDiagram-NIOCPIFQ-BGD0lX78.js +0 -31
  220. package/build/client/assets/preferences-Dx_EUPYj.js +0 -2
  221. package/build/client/assets/preferences-Dx_EUPYj.js.map +0 -1
  222. package/build/client/assets/preview-CMOIed2z.js +0 -2
  223. package/build/client/assets/root-Ddu3Xxbb.js +0 -2
  224. package/build/client/assets/root-Ddu3Xxbb.js.map +0 -1
  225. package/build/client/assets/sankeyDiagram-4UZDY2LN-GnxcKs-y.js +0 -11
  226. package/build/client/assets/set-playground-Bx0yIjpY.js +0 -2
  227. package/build/client/assets/stateDiagram-XX37X6EN-DplHO2WC.js +0 -2
  228. package/build/client/assets/stateDiagram-v2-GD6S3NHB-CmsjuNaA.js +0 -2
  229. package/build/client/assets/tailwind-Dqccob1p.css +0 -1
  230. package/build/client/assets/test-DUocKqAt.js +0 -2
@@ -1,4 +1,3 @@
1
- import fs from "fs";
2
1
  import path from "path";
3
2
  import { fileURLToPath } from "url";
4
3
  import { getPresentUsers } from "@epic-web/workshop-presence/presence.server";
@@ -8,6 +7,7 @@ import {
8
7
  init as initApps,
9
8
  setModifiedTimesForAppDirs
10
9
  } from "@epic-web/workshop-utils/apps.server";
10
+ import { getEnv, init as initEnv } from "@epic-web/workshop-utils/env.server";
11
11
  import { checkForUpdatesCached } from "@epic-web/workshop-utils/git.server";
12
12
  import { checkConnectionCached } from "@epic-web/workshop-utils/utils.server";
13
13
  import { createRequestHandler } from "@react-router/express";
@@ -25,19 +25,19 @@ closeWithGrace(({ err, manual }) => {
25
25
  if (manual) return;
26
26
  if (err) console.error(err.stack);
27
27
  });
28
+ await initEnv();
29
+ global.ENV = getEnv();
28
30
  const MODE = process.env.NODE_ENV ?? "development";
31
+ const isProd = MODE === "production";
29
32
  void initApps();
30
33
  sourceMapSupport.install();
31
- const viteDevServer = process.env.NODE_ENV === "production" ? null : await import("vite").then(
34
+ const viteDevServer = isProd ? null : await import("vite").then(
32
35
  (vite) => vite.createServer({
33
36
  server: { middlewareMode: true },
34
37
  appType: "custom"
35
38
  })
36
39
  );
37
- const isProd = process.env.NODE_ENV === "production";
38
40
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
39
- const isPublished = !fs.existsSync(path.join(__dirname, "..", "app"));
40
- const isDeployed = process.env.EPICSHOP_DEPLOYED === "true" || process.env.EPICSHOP_DEPLOYED === "1";
41
41
  const isRunningInBuildDir = path.dirname(__dirname).endsWith("dist");
42
42
  const epicshopAppRootDir = isRunningInBuildDir ? path.join(__dirname, "..", "..") : path.join(__dirname, "..");
43
43
  const hasUpdatesPromise = checkForUpdatesCached();
@@ -67,7 +67,7 @@ if (viteDevServer) {
67
67
  })
68
68
  );
69
69
  }
70
- if (process.env.NODE_ENV !== "production" && !isPublished || isDeployed) {
70
+ if (!isProd && !ENV.EPICSHOP_IS_PUBLISHED || ENV.EPICSHOP_DEPLOYED) {
71
71
  morgan.token("url", (req) => decodeURIComponent(req.url ?? ""));
72
72
  app.use(morgan("tiny"));
73
73
  }
@@ -144,7 +144,7 @@ ${lanUrl ? `${chalk.bold("On Your Network:")} ${chalk.cyan(lanUrl)}` : ""}
144
144
  `.trim()
145
145
  );
146
146
  console.log("");
147
- if (process.env.EPICSHOP_DEPLOYED !== "true" && process.env.EPICSHOP_ENABLE_WATCHER === "true") {
147
+ if (!ENV.EPICSHOP_DEPLOYED && process.env.EPICSHOP_ENABLE_WATCHER) {
148
148
  const watches = /* @__PURE__ */ new Map();
149
149
  const wss = new WebSocketServer({ noServer: true });
150
150
  server.on("upgrade", (request, socket, head) => {
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"@epic-web/workshop-app","version":"6.1.0","sideEffects":false,"publishConfig":{"access":"public"},"files":["build","dist","start.js"],"type":"module","imports":{"#app/*":"./app/*","#tests/*":"./tests/*","#build/*":"./build/*"},"exports":{"./start":{"default":"./start.js"}},"scripts":{"build":"run-p --print-label --print-name build:*","build:app":"react-router build --sourcemapClient --sourcemapServer","build:server":"tsx ./other/build-dir.ts server","dev":"node ./server/dev-server.js","format":"prettier --write .","lint":"eslint --cache --cache-location ./node_modules/.cache/eslint .","start":"cross-env NODE_ENV=production node ./start.js","typecheck":"react-router typegen && tsc --noEmit","validate":"run-p lint typecheck"},"dependencies":{"@conform-to/react":"^1.8.0","@conform-to/zod":"^1.8.0","@epic-web/cachified":"^5.6.0","@epic-web/client-hints":"^1.3.5","@epic-web/invariant":"^1.0.0","@epic-web/remember":"^1.1.0","@epic-web/restore-scroll":"^2.0.0","@epic-web/workshop-presence":"6.1.0","@epic-web/workshop-utils":"6.1.0","@mdx-js/mdx":"^3.1.0","@mux/mux-player-react":"^3.5.0","@nasa-gcn/remix-seo":"^2.0.1","@paralleldrive/cuid2":"^2.2.2","@radix-ui/react-accordion":"^1.2.11","@radix-ui/react-dialog":"^1.1.14","@radix-ui/react-popover":"^1.1.14","@radix-ui/react-select":"^2.2.5","@radix-ui/react-tabs":"^1.1.12","@radix-ui/react-toast":"^1.2.14","@radix-ui/react-tooltip":"^1.2.7","@react-router/express":"^7.6.3","@react-router/node":"^7.6.3","@react-router/remix-routes-option-adapter":"^7.6.3","@resvg/resvg-js":"^2.6.2","@sindresorhus/slugify":"^2.2.1","address":"^2.0.3","ansi-to-html":"^0.7.2","chalk":"^5.4.1","chokidar":"^4.0.3","close-with-grace":"^2.2.0","clsx":"^2.1.1","compression":"^1.8.0","confetti-react":"^2.6.0","cookie":"^1.0.2","cross-env":"^7.0.3","cross-spawn":"^7.0.6","dotenv":"^17.0.1","esbuild":"^0.25.5","etag":"^1.8.1","execa":"^9.6.0","express":"^5.1.0","fkill":"^9.0.0","framer-motion":"^12.23.0","fs-extra":"^11.3.0","get-port":"^7.1.0","glob":"^11.0.3","isbot":"^5.1.28","lru-cache":"^11.1.0","md5-hex":"^5.0.0","mdx-bundler":"^10.1.1","mermaid":"^11.8.0","mime-types":"^3.0.1","morgan":"^1.10.0","msw":"^2.10.2","open":"^10.1.2","openid-client":"^6.6.2","p-queue":"^8.1.0","partysocket":"^1.1.4","react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.3","remix-flat-routes":"^0.8.5","remix-utils":"^8.7.0","satori":"^0.15.2","shell-quote":"^1.8.3","sonner":"^2.0.6","source-map-support":"^0.5.21","spin-delay":"^2.0.1","tailwind-merge":"^2.6.0","vite-env-only":"^3.0.3","ws":"^8.18.3","zod":"^3.25.71"},"devDependencies":{"@playwright/test":"^1.53.2","@react-router/dev":"^7.6.3","@tailwindcss/typography":"^0.5.16","@testing-library/dom":"^10.4.0","@total-typescript/ts-reset":"^0.6.1","@types/compression":"^1.8.1","@types/cross-spawn":"^6.0.6","@types/etag":"^1.8.4","@types/express":"^5.0.3","@types/fs-extra":"^11.0.4","@types/hast":"^3.0.4","@types/lodash.escape":"^4.0.9","@types/mdast":"^4.0.4","@types/mime-types":"^3.0.1","@types/morgan":"^1.9.10","@types/node":"^24.0.10","@types/react":"^19.1.8","@types/react-dom":"^19.1.6","@types/shell-quote":"^1.7.5","@types/source-map-support":"^0.5.10","@types/wait-on":"^5.3.4","@types/ws":"^8.18.1","autoprefixer":"^10.4.21","eslint":"^9.30.1","mdast-util-mdx-jsx":"^3.2.0","npm-run-all":"^4.1.5","prettier":"^3.6.2","prettier-plugin-tailwindcss":"^0.6.13","tailwind-scrollbar":"^3.1.0","tailwindcss":"^3.4.13","tailwindcss-animate":"^1.0.7","tailwindcss-radix":"^3.0.5","tailwindcss-safe-area":"^0.6.0","tsx":"^4.20.3","typescript":"^5.8.3","vite":"^7.0.1"},"engines":{"node":"20 || 22 || 24"},"repository":{"type":"git","url":"https://github.com/epicweb-dev/epicshop.git","directory":"packages/workshop-app"}}
1
+ {"name":"@epic-web/workshop-app","version":"6.3.0","sideEffects":false,"publishConfig":{"access":"public"},"files":["build","dist","start.js"],"type":"module","imports":{"#app/*":"./app/*","#tests/*":"./tests/*","#build/*":"./build/*"},"exports":{"./start":{"default":"./start.js"},"./package.json":"./package.json"},"scripts":{"build":"run-p --print-label --print-name build:*","build:app":"react-router build --sourcemapClient --sourcemapServer","build:server":"tsx ./other/build-dir.ts server","dev":"node ./server/dev-server.js","format":"prettier --write .","lint":"eslint --cache --cache-location ./node_modules/.cache/eslint .","start":"cross-env NODE_ENV=production node ./start.js","typecheck":"react-router typegen && tsc --noEmit","validate":"run-p lint typecheck"},"dependencies":{"@conform-to/react":"^1.8.0","@conform-to/zod":"^1.8.0","@epic-web/cachified":"^5.6.0","@epic-web/client-hints":"^1.3.5","@epic-web/invariant":"^1.0.0","@epic-web/remember":"^1.1.0","@epic-web/restore-scroll":"^2.0.0","@epic-web/workshop-presence":"6.3.0","@epic-web/workshop-utils":"6.3.0","@mdx-js/mdx":"^3.1.0","@mux/mux-player-react":"^3.5.0","@nasa-gcn/remix-seo":"^2.0.1","@paralleldrive/cuid2":"^2.2.2","@radix-ui/react-accordion":"^1.2.11","@radix-ui/react-dialog":"^1.1.14","@radix-ui/react-popover":"^1.1.14","@radix-ui/react-select":"^2.2.5","@radix-ui/react-tabs":"^1.1.12","@radix-ui/react-toast":"^1.2.14","@radix-ui/react-tooltip":"^1.2.7","@react-router/express":"^7.6.3","@react-router/node":"^7.6.3","@react-router/remix-routes-option-adapter":"^7.6.3","@resvg/resvg-js":"^2.6.2","@sindresorhus/slugify":"^2.2.1","address":"^2.0.3","ansi-to-html":"^0.7.2","chalk":"^5.4.1","chokidar":"^4.0.3","close-with-grace":"^2.2.0","clsx":"^2.1.1","compression":"^1.8.0","confetti-react":"^2.6.0","cookie":"^1.0.2","cross-env":"^7.0.3","cross-spawn":"^7.0.6","dotenv":"^17.0.1","esbuild":"^0.25.5","etag":"^1.8.1","execa":"^9.6.0","express":"^5.1.0","fkill":"^9.0.0","framer-motion":"^12.23.0","fs-extra":"^11.3.0","get-port":"^7.1.0","glob":"^11.0.3","isbot":"^5.1.28","lru-cache":"^11.1.0","md5-hex":"^5.0.0","mdx-bundler":"^10.1.1","mermaid":"^11.8.0","mime-types":"^3.0.1","morgan":"^1.10.0","msw":"^2.10.2","open":"^10.1.2","openid-client":"^6.6.2","p-queue":"^8.1.0","partysocket":"^1.1.4","react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.3","remix-flat-routes":"^0.8.5","remix-utils":"^8.7.0","satori":"^0.15.2","shell-quote":"^1.8.3","sonner":"^2.0.6","source-map-support":"^0.5.21","spin-delay":"^2.0.1","tailwind-merge":"^2.6.0","vite-env-only":"^3.0.3","ws":"^8.18.3","zod":"^3.25.71"},"devDependencies":{"@playwright/test":"^1.53.2","@react-router/dev":"^7.6.3","@tailwindcss/typography":"^0.5.16","@testing-library/dom":"^10.4.0","@total-typescript/ts-reset":"^0.6.1","@types/compression":"^1.8.1","@types/cross-spawn":"^6.0.6","@types/etag":"^1.8.4","@types/express":"^5.0.3","@types/fs-extra":"^11.0.4","@types/hast":"^3.0.4","@types/lodash.escape":"^4.0.9","@types/mdast":"^4.0.4","@types/mime-types":"^3.0.1","@types/morgan":"^1.9.10","@types/node":"^24.0.10","@types/react":"^19.1.8","@types/react-dom":"^19.1.6","@types/shell-quote":"^1.7.5","@types/source-map-support":"^0.5.10","@types/wait-on":"^5.3.4","@types/ws":"^8.18.1","autoprefixer":"^10.4.21","eslint":"^9.30.1","mdast-util-mdx-jsx":"^3.2.0","npm-run-all":"^4.1.5","prettier":"^3.6.2","prettier-plugin-tailwindcss":"^0.6.13","tailwind-scrollbar":"^3.1.0","tailwindcss":"^3.4.13","tailwindcss-animate":"^1.0.7","tailwindcss-radix":"^3.0.5","tailwindcss-safe-area":"^0.6.0","tsx":"^4.20.3","typescript":"^5.8.3","vite":"^7.0.1"},"engines":{"node":"20 || 22 || 24"},"repository":{"type":"git","url":"https://github.com/epicweb-dev/epicshop.git","directory":"packages/workshop-app"}}
package/start.js CHANGED
@@ -2,17 +2,17 @@ import fs from 'fs/promises'
2
2
  import path from 'path'
3
3
  import dotenv from 'dotenv'
4
4
 
5
- if (process.env.EPICSHOP_SLOW_START === 'true') {
6
- // slow start is used when doing the update-repo action to give time for the
7
- // old server to exist before the new server starts (so ports are freed up).
8
- await new Promise((resolve) => setTimeout(resolve, 1000))
9
- }
10
-
11
5
  const packageJson = JSON.parse(
12
6
  await fs.readFile(path.resolve(process.cwd(), 'package.json'), 'utf-8'),
13
7
  )
14
8
 
15
9
  process.env.EPICSHOP_APP_VERSION ??= packageJson.version
10
+ process.env.EPICSHOP_IS_PUBLISHED ??= packageJson.version.includes('0.0.0')
11
+ ? 'false'
12
+ : 'true'
13
+ process.env.EPICSHOP_APP_LOCATION ??= path.dirname(
14
+ new URL(import.meta.url).pathname,
15
+ )
16
16
  process.env.NODE_ENV ??= 'development'
17
17
  process.env.EPICSHOP_ENABLE_WATCHER ??= 'true'
18
18
  const EPICSHOP_CONTEXT_CWD = process.env.EPICSHOP_CONTEXT_CWD ?? process.cwd()
@@ -1,2 +0,0 @@
1
- import{w as e,a as s,u as n,L as t}from"./chunk-QMGIS6GS-CG5cA6CX.js";import{j as r}from"./jsx-runtime-EKYJJIwR.js";import{G as i}from"./error-boundary-B8bEOgxp.js";import{I as l}from"./misc-COGqV2fm.js";const u=e(function(){return r.jsx(c,{})}),c=s(function(){const a=n();return r.jsx(i,{statusHandlers:{404:()=>r.jsxs("div",{className:"flex flex-col gap-6",children:[r.jsxs("div",{className:"flex flex-col gap-3",children:[r.jsx("h1",{children:"We can't find this page:"}),r.jsx("pre",{className:"whitespace-pre-wrap break-all text-body-lg",children:a.pathname})]}),r.jsx(t,{to:"/",className:"text-body-md underline",children:r.jsx(l,{name:"ArrowLeft",children:"Back to home"})})]})}})});export{c as ErrorBoundary,u as default};
2
- //# sourceMappingURL=_-C_7mS1-0.js.map
@@ -1,2 +0,0 @@
1
- import{w as n,a as l,L as c,b as m,i as p}from"./chunk-QMGIS6GS-CG5cA6CX.js";import{j as r}from"./jsx-runtime-EKYJJIwR.js";import{E as x}from"./index-_jNKXw67.js";import{E as a}from"./epic-video-Buv6ZzQr.js";import{u as d}from"./revalidation-ws-CkOwoVmm.js";import{M as u,E as f}from"./mdx-BrER1Z2t.js";import{P as h}from"./progress-DKsShYpv.js";import{g as b}from"./misc-COGqV2fm.js";import{g as j}from"./seo-t5J-DRxw.js";import"./index-5iWKMrsc.js";import"./tooltip-Cm7A1uIP.js";import"./index-Bp_2FjuO.js";import"./pe-DoDyGTeN.js";import"./online-CyV51Rml.js";import"./loading-WTUNhoIS.js";import"./user-BQ8D2Fty.js";import"./workshop-config-5VcXxeyp.js";import"./progress-bar-Cww9t8Vn.js";const q=({data:o,matches:e})=>{const t=o?.exercise.exerciseNumber.toString().padStart(2,"0"),s=e.find(i=>i?.id==="root")?.data;return!o||!s?[{title:"🦉 | Error"}]:j({title:`📝 | ${t}. ${o.exercise.title} | ${s?.workshopTitle}`,description:`Introduction for ${t}. ${o.exercise.title}`,ogTitle:o.exercise.title,ogDescription:`Introduction for exercise ${Number(t)}`,instructor:s.instructor,requestInfo:s.requestInfo})},g={h1:()=>null},F=n(function({loaderData:e}){d({watchPaths:[e.exerciseReadme.file]});const t=String(e.firstStep?.stepNumber??"01").padStart(2,"0");return r.jsxs("main",{className:"relative flex h-full w-full max-w-5xl flex-col justify-between border-r md:w-3/4 xl:w-2/3",children:[r.jsxs("article",{id:e.articleId,className:"shadow-on-scrollbox flex w-full flex-1 flex-col gap-12 overflow-y-scroll px-3 py-4 pt-6 scrollbar-thin scrollbar-thumb-scrollbar md:px-10 md:py-12 md:pt-16",children:[r.jsx("div",{children:r.jsx("h1",{className:"text-[clamp(3rem,6vw,7.5rem)] font-extrabold leading-none",children:e.exercise.title})}),r.jsx("div",{children:e.exercise.instructionsCode?r.jsx(a,{epicVideoInfosPromise:e.epicVideoInfosPromise,children:r.jsx("div",{className:"prose dark:prose-invert sm:prose-lg",children:r.jsx(u,{code:e.exercise.instructionsCode,components:g})})}):"No instructions yet..."})]},e.articleId),r.jsx(x,{elementQuery:`#${e.articleId}`},`scroll-${e.articleId}`),r.jsx(h,{type:"instructions",exerciseNumber:e.exerciseNumber,className:"h-14 border-t px-6"}),r.jsxs("div",{className:"flex h-16 justify-between border-b-4 border-t lg:border-b-0",children:[r.jsx("div",{}),r.jsx(f,{file:e.exerciseReadme.file,relativePath:e.exerciseReadme.relativePath}),r.jsx(c,{to:`${t}/${e.firstType}`,prefetch:"intent",className:"flex h-full items-center justify-center bg-foreground px-7 text-background",children:"Start Learning"})]})]})}),G=l(function(){const e=m();return typeof document<"u"&&console.error(e),p(e)?e.status===404?r.jsx("p",{children:"Sorry, we couldn't find that step."}):r.jsxs("p",{children:[e.status," ",e.data]}):r.jsx("p",{children:b(e)})});export{G as ErrorBoundary,F as default,q as meta};
2
- //# sourceMappingURL=_exerciseNumber-CdGNKLia.js.map
@@ -1,2 +0,0 @@
1
- import{w as e,a as s,O as n,b as u,i as a}from"./chunk-QMGIS6GS-CG5cA6CX.js";import{j as o}from"./jsx-runtime-EKYJJIwR.js";import{g as i}from"./misc-COGqV2fm.js";const m=e(function(){return o.jsx(n,{})}),f=s(function(){const r=u();return typeof document<"u"&&console.error(r),a(r)?r.status===404?o.jsx("p",{children:"Sorry, we couldn't find that step."}):o.jsxs("p",{children:[r.status," ",r.data]}):o.jsx("p",{children:i(r)})});export{f as ErrorBoundary,m as default};
2
- //# sourceMappingURL=_exerciseNumber_._stepNumber-BNj079sn.js.map
@@ -1,2 +0,0 @@
1
- import{w as l,L as n,r as c}from"./chunk-QMGIS6GS-CG5cA6CX.js";import{j as e}from"./jsx-runtime-EKYJJIwR.js";import{E as m}from"./index-_jNKXw67.js";import{E as a}from"./epic-video-Buv6ZzQr.js";import{I as x,a as d}from"./misc-COGqV2fm.js";import{L as f}from"./loading-WTUNhoIS.js";import{N as h}from"./nav-chevrons-Cxzx0j13.js";import{u as p}from"./revalidation-ws-CkOwoVmm.js";import{M as u,E as b}from"./mdx-BrER1Z2t.js";import{P as j}from"./progress-DKsShYpv.js";import{u as g}from"./index-5iWKMrsc.js";import{u as N}from"./online-CyV51Rml.js";import{g as v}from"./seo-t5J-DRxw.js";import"./user-BQ8D2Fty.js";import"./workshop-config-5VcXxeyp.js";import"./index-Bp_2FjuO.js";import"./progress-bar-Cww9t8Vn.js";import"./pe-DoDyGTeN.js";import"./tooltip-Cm7A1uIP.js";const _=({data:r,matches:s})=>{const i=r?.exercise.exerciseNumber.toString().padStart(2,"0"),o=s.find(t=>t?.id==="root")?.data;return!r||!o?[{title:"🦉 | Error"}]:v({title:`🦉 | ${i}. ${r.exercise.title} | ${o?.workshopTitle}`,description:`Elaboration for ${i}. ${r.exercise.title}`,ogTitle:`Finished: ${r.exercise.title}`,ogDescription:`Elaboration for exercise ${Number(i)}`,instructor:o.instructor,requestInfo:o.requestInfo})},w={h1:()=>null},G=l(function({loaderData:s}){const i=s.exercise.exerciseNumber.toString().padStart(2,"0");return p({watchPaths:[`./exercises/${i}/FINISHED.mdx`]}),e.jsx("div",{className:"flex max-w-full flex-grow flex-col",children:e.jsxs("main",{className:"flex flex-grow flex-col sm:grid sm:h-full sm:min-h-[800px] sm:grid-cols-1 sm:grid-rows-2 md:min-h-[unset] lg:grid-cols-2 lg:grid-rows-1",children:[e.jsxs("div",{className:"relative flex flex-col sm:col-span-1 sm:row-span-1 sm:h-full lg:border-r",children:[e.jsx("h1",{className:"h-14 border-b pl-10 pr-5 text-sm font-medium leading-tight",children:e.jsx("div",{className:"flex h-14 flex-wrap items-center justify-between gap-x-2 py-2",children:e.jsxs("div",{className:"flex items-center justify-start gap-x-2",children:[e.jsx(n,{to:`/${i}`,className:"hover:underline",children:`${i}. ${s.exercise.title}`}),e.jsx("span",{children:"/"}),e.jsx("span",{children:"Elaboration"})]})})}),e.jsx("article",{className:"shadow-on-scrollbox h-full w-full max-w-none flex-1 scroll-pt-6 space-y-6 overflow-y-auto p-2 scrollbar-thin scrollbar-thumb-scrollbar sm:p-10 sm:pt-8",id:s.articleId,children:s.exercise.finishedCode?e.jsx(a,{epicVideoInfosPromise:s.epicVideoInfosPromise,children:e.jsx("div",{className:"prose dark:prose-invert sm:prose-lg",children:e.jsx(u,{code:s.exercise.finishedCode,components:w})})}):"No finished instructions yet..."}),e.jsx(m,{elementQuery:`#${s.articleId}`}),e.jsx(j,{type:"finished",exerciseNumber:s.exercise.exerciseNumber,className:"h-14 border-t px-6"}),e.jsxs("div",{className:"flex h-16 justify-between border-b-4 border-t lg:border-b-0",children:[e.jsx("div",{}),e.jsx(b,{file:s.exerciseFinished.file,relativePath:s.exerciseFinished.relativePath}),e.jsx(h,{prev:s.prevStepLink,next:s.nextStepLink})]})]}),e.jsx(E,{exerciseFormEmbedUrl:s.exerciseFormEmbedUrl,exerciseTitle:s.exercise.title})]})})});function E({exerciseFormEmbedUrl:r,exerciseTitle:s}){const i=g(),[o,t]=c.useState(!1);return N()?e.jsxs("div",{className:"relative min-h-full sm:min-h-[unset] sm:flex-shrink-0",children:[o?null:e.jsx("div",{className:"absolute inset-0 z-10 flex items-center justify-center",children:e.jsx(f,{children:e.jsxs("span",{children:["Loading ",s," Elaboration form"]})})}),e.jsx("iframe",{onLoad:()=>t(!0),onError:()=>t(!0),title:"Elaboration",src:r,className:d("absolute inset-0 flex h-full w-full transition-opacity duration-300",o?"opacity-100":"opacity-0"),style:{colorScheme:i}})]}):e.jsx("div",{className:"relative flex-shrink-0",children:e.jsx("div",{className:"absolute inset-0 z-10 flex items-center justify-center text-body-md text-foreground-destructive",children:e.jsx(x,{name:"WifiNoConnection",size:"xl",children:e.jsxs("span",{children:["Unable to load the ",e.jsx("a",{href:r,className:"underline",children:`${s} feedback form`})," when offline"]})})})})}export{G as default,_ as meta};
2
- //# sourceMappingURL=_exerciseNumber_.finished-Ce6wQJ7W.js.map
@@ -1,2 +0,0 @@
1
- import{c as P,r as c,l as W,L as h,A as z,w as Q,a as Z,O as J}from"./chunk-QMGIS6GS-CG5cA6CX.js";import{j as e}from"./jsx-runtime-EKYJJIwR.js";import{E as X}from"./index-_jNKXw67.js";import{G as ee}from"./error-boundary-B8bEOgxp.js";import{N as re}from"./nav-chevrons-Cxzx0j13.js";import{u as te}from"./revalidation-ws-CkOwoVmm.js";import{M as oe,L as N,E as ne}from"./mdx-BrER1Z2t.js";import{P as se}from"./progress-DKsShYpv.js";import{S as R}from"./set-playground-Bx0yIjpY.js";import{b as ie,a as O,I as C,i as ae,e as le}from"./misc-COGqV2fm.js";import{g as ce}from"./seo-t5J-DRxw.js";import{E as pe}from"./epic-video-Buv6ZzQr.js";import{S as E,j as A,u as ue,R as de,d as fe,e as me,h as D,P as k,f as g,A as _,g as I,k as xe,D as he,C as ve,l as ge}from"./tooltip-Cm7A1uIP.js";import{a as Pe}from"./index-5iWKMrsc.js";import{P as je,h as Ne,R as be,u as Se,F as Ce}from"./index-7Ba6ptu2.js";import"./index-Bp_2FjuO.js";import"./progress-bar-Cww9t8Vn.js";import"./pe-DoDyGTeN.js";import"./index-CZ8q0Nf8.js";import"./online-CyV51Rml.js";import"./loading-WTUNhoIS.js";import"./user-BQ8D2Fty.js";import"./workshop-config-5VcXxeyp.js";const L=c.createContext(null);function Ee(){const t=c.useContext(L);if(!t)throw new Error("useStepContext must be used within a StepContext.Provider");return t}function we({children:t,inBrowserBrowserRef:r}){return e.jsx(L.Provider,{value:{inBrowserBrowserRef:r},children:t})}const ye={DiffLink:w,PrevDiffLink:Ae,NextDiffLink:Re,InlineFile:De,LinkToApp:_e};function Oe({inBrowserBrowserRef:t}){const r=P();return r.exerciseStepApp.instructionsCode?e.jsx(we,{inBrowserBrowserRef:t,children:e.jsx(pe,{epicVideoInfosPromise:r.epicVideoInfosPromise,children:e.jsx("div",{className:"prose dark:prose-invert sm:prose-lg",children:e.jsx(oe,{code:r.exerciseStepApp.instructionsCode,components:ye})})})}):null}function F(t,r,n){const o=new URLSearchParams(t);return n===null?o.delete(r):o.set(r,n),o}function Re({app:t=0,fullPage:r=!1,children:n}){return e.jsx(w,{app1:t,app2:t+1,fullPage:r,children:n})}function Ae({app:t=-1,fullPage:r=!1,children:n}){return e.jsx(w,{app1:t,app2:t+1,fullPage:r,children:n})}function w({app1:t=0,app2:r=1,children:n,fullPage:o=!1,to:i}){const s=P();if(!i&&!t&&!r)return e.jsx("callout-danger",{className:"notification",children:e.jsx("div",{className:"title",children:"DiffLink Error: invalid input"})});function a(d){if(typeof d=="number"){const m=s.exerciseIndex+d;return s.allApps[m]?.name}if(!d)return null;for(const{name:m,stepName:f}of s.allApps)if(d===m||d===f)return m;return null}if(i){const d=new URLSearchParams(i);t=d.get("app1"),r=d.get("app2")}const l=a(t),u=a(r);if(!l||!u)return e.jsxs("callout-danger",{className:"notification",children:[e.jsx("div",{className:"title",children:"DiffLink Error: invalid input"}),!l&&e.jsxs("div",{children:['app1: "',t,'" is not a valid app name']}),!u&&e.jsxs("div",{children:['app2: "',r,'" is not a valid app name']})]});i||(i=`app1=${l}&app2=${u}`);const p=o?`/diff?${i}`:`?${decodeURIComponent(F(new URLSearchParams,"preview",`diff&${i}`).toString())}`;return n||(n=e.jsxs("span",{children:["Go to Diff ",o?"":"Preview"," from: ",e.jsx("code",{children:l})," to:"," ",e.jsx("code",{children:u})]})),e.jsx(h,{to:p,children:n})}function De({file:t,type:r="playground",children:n=e.jsx("code",{children:t}),...o}){const i=P(),s=i[r]||i[i.type],a=e.jsxs("div",{className:"launch-editor-button-wrapper flex underline underline-offset-4",children:[n," ",e.jsx("svg",{height:24,width:24,children:e.jsx("use",{href:`${ae}#Keyboard`})})]});return ENV.EPICSHOP_DEPLOYED&&s?e.jsx("div",{className:"inline-block grow",children:e.jsx(N,{appFile:t,appName:s.name,...o,children:a})}):s?e.jsx("div",{className:"inline-block grow",children:e.jsx(N,{appFile:t,appName:s.name,...o,children:a})}):r==="playground"?e.jsx(E,{content:"You must 'Set to Playground' before opening a file",children:e.jsx("div",{className:"inline-block grow cursor-not-allowed",children:a})}):e.jsx(e.Fragment,{children:"children"})}function ke(t){return t==="problem"?"problem":t==="solution"?"solution":"playground"}function _e({to:t,children:r=e.jsx("code",{children:t.toString()}),...n}){const[o]=W(),i=`?${F(o,"pathname",t.toString()).toString()}`,s=P(),a=ke(o.get("preview")),l=Pe(),u=s[a],p=u?.dev.type==="script"?ie({domain:l.domain,port:u.dev.portNumber}):s.playground?.dev.type==="browser"?s.playground.dev.pathname:null,{inBrowserBrowserRef:d}=Ee(),m=p?p.slice(0,-1)+t.toString():null;return e.jsxs("div",{className:"inline-flex items-center justify-between gap-1",children:[e.jsx(h,{to:i,...n,className:O(n.className,{"cursor-not-allowed":ENV.EPICSHOP_DEPLOYED}),title:ENV.EPICSHOP_DEPLOYED?"Cannot link to app in deployed version":void 0,onClick:f=>{ENV.EPICSHOP_DEPLOYED&&f.preventDefault(),n.onClick?.(f),d.current?.handleExtrnalNavigation(t.toString())},children:r}),m?e.jsx(E,{content:"Open in new tab",children:e.jsx("a",{href:m,target:"_blank",rel:"noreferrer",className:O("flex aspect-square items-center justify-center",{"cursor-not-allowed":ENV.EPICSHOP_DEPLOYED}),title:ENV.EPICSHOP_DEPLOYED?"Cannot link to app in deployed version":"Open in new tab",onClick:f=>{ENV.EPICSHOP_DEPLOYED&&f.preventDefault()},children:e.jsx(C,{name:"ExternalLink"})})}):null]})}var b="Popover",[$,gr]=fe(b,[A]),j=A(),[Ie,x]=$(b),T=t=>{const{__scopePopover:r,children:n,open:o,defaultOpen:i,onOpenChange:s,modal:a=!1}=t,l=j(r),u=c.useRef(null),[p,d]=c.useState(!1),[m,f]=ue({prop:o,defaultProp:i??!1,onChange:s,caller:b});return e.jsx(de,{...l,children:e.jsx(Ie,{scope:r,contentId:me(),triggerRef:u,open:m,onOpenChange:f,onOpenToggle:c.useCallback(()=>f(S=>!S),[f]),hasCustomAnchor:p,onCustomAnchorAdd:c.useCallback(()=>d(!0),[]),onCustomAnchorRemove:c.useCallback(()=>d(!1),[]),modal:a,children:n})})};T.displayName=b;var M="PopoverAnchor",Le=c.forwardRef((t,r)=>{const{__scopePopover:n,...o}=t,i=x(M,n),s=j(n),{onCustomAnchorAdd:a,onCustomAnchorRemove:l}=i;return c.useEffect(()=>(a(),()=>l()),[a,l]),e.jsx(_,{...s,...o,ref:r})});Le.displayName=M;var H="PopoverTrigger",U=c.forwardRef((t,r)=>{const{__scopePopover:n,...o}=t,i=x(H,n),s=j(n),a=D(r,i.triggerRef),l=e.jsx(k.button,{type:"button","aria-haspopup":"dialog","aria-expanded":i.open,"aria-controls":i.contentId,"data-state":q(i.open),...o,ref:a,onClick:g(t.onClick,i.onOpenToggle)});return i.hasCustomAnchor?l:e.jsx(_,{asChild:!0,...s,children:l})});U.displayName=H;var y="PopoverPortal",[Fe,$e]=$(y,{forceMount:void 0}),V=t=>{const{__scopePopover:r,forceMount:n,children:o,container:i}=t,s=x(y,r);return e.jsx(Fe,{scope:r,forceMount:n,children:e.jsx(I,{present:n||s.open,children:e.jsx(je,{asChild:!0,container:i,children:o})})})};V.displayName=y;var v="PopoverContent",B=c.forwardRef((t,r)=>{const n=$e(v,t.__scopePopover),{forceMount:o=n.forceMount,...i}=t,s=x(v,t.__scopePopover);return e.jsx(I,{present:o||s.open,children:s.modal?e.jsx(Me,{...i,ref:r}):e.jsx(He,{...i,ref:r})})});B.displayName=v;var Te=xe("PopoverContent.RemoveScroll"),Me=c.forwardRef((t,r)=>{const n=x(v,t.__scopePopover),o=c.useRef(null),i=D(r,o),s=c.useRef(!1);return c.useEffect(()=>{const a=o.current;if(a)return Ne(a)},[]),e.jsx(be,{as:Te,allowPinchZoom:!0,children:e.jsx(Y,{...t,ref:i,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:g(t.onCloseAutoFocus,a=>{a.preventDefault(),s.current||n.triggerRef.current?.focus()}),onPointerDownOutside:g(t.onPointerDownOutside,a=>{const l=a.detail.originalEvent,u=l.button===0&&l.ctrlKey===!0,p=l.button===2||u;s.current=p},{checkForDefaultPrevented:!1}),onFocusOutside:g(t.onFocusOutside,a=>a.preventDefault(),{checkForDefaultPrevented:!1})})})}),He=c.forwardRef((t,r)=>{const n=x(v,t.__scopePopover),o=c.useRef(!1),i=c.useRef(!1);return e.jsx(Y,{...t,ref:r,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:s=>{t.onCloseAutoFocus?.(s),s.defaultPrevented||(o.current||n.triggerRef.current?.focus(),s.preventDefault()),o.current=!1,i.current=!1},onInteractOutside:s=>{t.onInteractOutside?.(s),s.defaultPrevented||(o.current=!0,s.detail.originalEvent.type==="pointerdown"&&(i.current=!0));const a=s.target;n.triggerRef.current?.contains(a)&&s.preventDefault(),s.detail.originalEvent.type==="focusin"&&i.current&&s.preventDefault()}})}),Y=c.forwardRef((t,r)=>{const{__scopePopover:n,trapFocus:o,onOpenAutoFocus:i,onCloseAutoFocus:s,disableOutsidePointerEvents:a,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:p,onInteractOutside:d,...m}=t,f=x(v,n),S=j(n);return Se(),e.jsx(Ce,{asChild:!0,loop:!0,trapped:o,onMountAutoFocus:i,onUnmountAutoFocus:s,children:e.jsx(he,{asChild:!0,disableOutsidePointerEvents:a,onInteractOutside:d,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:p,onDismiss:()=>f.onOpenChange(!1),children:e.jsx(ve,{"data-state":q(f.open),role:"dialog",id:f.contentId,...S,...m,ref:r,style:{...m.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),G="PopoverClose",Ue=c.forwardRef((t,r)=>{const{__scopePopover:n,...o}=t,i=x(G,n);return e.jsx(k.button,{type:"button",...o,ref:r,onClick:g(t.onClick,()=>i.onOpenChange(!1))})});Ue.displayName=G;var Ve="PopoverArrow",Be=c.forwardRef((t,r)=>{const{__scopePopover:n,...o}=t,i=j(n);return e.jsx(ge,{...i,...o,ref:r})});Be.displayName=Ve;function q(t){return t?"open":"closed"}var Ye=T,Ge=U,qe=V,Ke=B;function We({diffFilesPromise:t}){const r=P(),[n,o]=c.useState(!1),i=c.useRef(null);function s(){o(!1)}const a=r.playground?.appName;return e.jsx(e.Fragment,{children:e.jsxs(Ye,{open:n,onOpenChange:o,children:[e.jsx(Ge,{asChild:!0,children:e.jsxs("button",{className:"flex h-full items-center gap-1 border-r px-6 py-3 font-mono text-sm uppercase","aria-label":"Relevant Files",children:[e.jsx(C,{name:"Files"}),"Files"]})}),e.jsx(qe,{children:e.jsx(Ke,{ref:i,className:"slideRightContent lg:slideUpContent invert-theme z-10 select-none rounded bg-background px-9 py-8 text-foreground",align:"start",sideOffset:5,children:e.jsxs("div",{className:"launch-editor-wrapper",children:[e.jsx("strong",{className:"inline-block px-2 pb-4 font-semibold uppercase",children:"Relevant Files"}),r.problem&&r.playground?.appName!==r.problem.name?e.jsx("div",{className:"mb-2 rounded p-1 font-mono font-medium",children:e.jsx(R,{appName:r.problem.name})}):null,e.jsx("div",{id:"files",children:e.jsx(c.Suspense,{fallback:e.jsx(E,{content:"Loading diff",children:e.jsx("div",{className:"flex justify-center",children:e.jsx(C,{name:"Refresh",className:"h-8 w-8 animate-spin"})})}),children:e.jsx(z,{resolve:t,errorElement:e.jsx("div",{className:"text-foreground-destructive",children:"Something went wrong."}),children:l=>{if(!l)return e.jsx("p",{className:"text-foreground-destructive",children:"Unable to determine diff"});if(typeof l=="string")return e.jsx("p",{className:"text-foreground-destructive",children:l});if(!l.length)return e.jsx("p",{children:"No files changed"});const u=a||ENV.EPICSHOP_GITHUB_ROOT?{}:{title:"You must 'Set to Playground' before opening a file",className:"not-allowed"};return e.jsxs("ul",{...u,children:[l.length>1&&!ENV.EPICSHOP_DEPLOYED?e.jsx("div",{className:"mb-2 border-b border-b-gray-50 border-opacity-50 pb-2 font-sans",children:e.jsx(N,{appFile:l.map(p=>`${p.path},${p.line},1`),appName:"playground",onUpdate:s,children:e.jsx("p",{children:"Open All Files"})})}):null,l.map(p=>e.jsx("li",{"data-state":p.status,children:e.jsx(N,{appFile:`${p.path},${p.line},1`,appName:ENV.EPICSHOP_DEPLOYED?r.problem?.name??"playground":"playground",onUpdate:s,children:e.jsx("code",{children:p.path})})},p.path))]})}})})})]})})})]})})}function K(t,r){const n=t?.exerciseStepApp.exerciseNumber.toString().padStart(2,"0")??"00",o=t?.exerciseStepApp.stepNumber.toString().padStart(2,"0")??"00",i={problem:"💪",solution:"🏁"}[t?.type??"problem"],s=t?.[t.type]?.title??"N/A";return{emoji:i,stepNumber:o,title:s,exerciseNumber:n,exerciseTitle:t?.exerciseTitle??"Unknown exercise",workshopTitle:r,type:t?.type??"problem"}}const Pr=({data:t,matches:r,params:n})=>{const o=r.find(p=>p?.id==="root")?.data;if(!t||!o)return[{title:"🦉 | Error"}];const{emoji:i,stepNumber:s,title:a,exerciseNumber:l,exerciseTitle:u}=K(t);return ce({title:`${i} | ${s}. ${a} | ${l}. ${u} | ${o.workshopTitle}`,description:`${n.type} step for exercise ${l}. ${u}`,ogTitle:a,ogDescription:`${u} step ${Number(s)} ${n.type}`,instructor:o.instructor,requestInfo:o.requestInfo})},jr=Q(function({loaderData:r}){const n=c.useRef(null),o=K(r);return te({watchPaths:[`${r.exerciseStepApp.relativePath}/README.mdx`]}),e.jsx("div",{className:"flex max-w-full flex-grow flex-col",children:e.jsxs("main",{className:"flex flex-grow flex-col sm:grid sm:h-full sm:min-h-[800px] sm:grid-cols-1 sm:grid-rows-2 md:min-h-[unset] lg:grid-cols-2 lg:grid-rows-1",children:[e.jsxs("div",{className:"relative flex flex-col sm:col-span-1 sm:row-span-1 sm:h-full lg:border-r",children:[e.jsx("h1",{className:"h-14 border-b pl-10 pr-5 text-sm font-medium leading-tight",children:e.jsxs("div",{className:"flex h-14 flex-wrap items-center justify-between gap-x-2 py-2",children:[e.jsxs("div",{className:"flex items-center justify-start gap-x-2 uppercase",children:[e.jsxs(h,{to:le(r.exerciseStepApp.exerciseNumber),className:"hover:underline",children:[o.exerciseNumber,". ",o.exerciseTitle]}),"/",e.jsxs(h,{to:".",className:"hover:underline",children:[o.stepNumber,". ",o.title," (",o.emoji," ",o.type,")"]})]}),r.problem&&r.playground?.appName!==r.problem.name?e.jsx("div",{className:"hidden md:block",children:e.jsx(R,{appName:r.problem.name})}):null]})}),e.jsxs("article",{id:r.articleId,className:"shadow-on-scrollbox flex h-full w-full max-w-none flex-1 scroll-pt-6 flex-col justify-between space-y-6 overflow-y-auto p-2 scrollbar-thin scrollbar-thumb-scrollbar sm:p-10 sm:pt-8",children:[r.exerciseStepApp.instructionsCode?e.jsx(Oe,{inBrowserBrowserRef:n}):e.jsx("div",{className:"flex h-full items-center justify-center text-lg",children:e.jsx("p",{children:"No instructions yet..."})}),e.jsxs("div",{className:"mt-auto flex justify-between",children:[r.prevStepLink?e.jsx(h,{to:r.prevStepLink.to,"aria-label":"Previous Step",prefetch:"intent",children:"← Previous"}):e.jsx("span",{}),r.nextStepLink?e.jsx(h,{to:r.nextStepLink.to,"aria-label":"Next Step",prefetch:"intent",children:"Next →"}):e.jsx("span",{})]})]},r.articleId),e.jsx(X,{elementQuery:`#${r.articleId}`},`scroll-${r.articleId}`),r.type==="solution"?e.jsx(se,{type:"step",exerciseNumber:r.exerciseStepApp.exerciseNumber,stepNumber:r.exerciseStepApp.stepNumber,className:"h-14 border-t px-6"}):null,e.jsxs("div",{className:"flex h-16 justify-between border-b-4 border-t lg:border-b-0",children:[e.jsx("div",{children:e.jsx("div",{className:"h-full",children:e.jsx(We,{diffFilesPromise:r.diffFiles})})}),e.jsx(ne,{appName:r.exerciseStepApp.name,relativePath:r.exerciseStepApp.relativePath}),e.jsx(re,{prev:r.prevStepLink?{to:r.prevStepLink.to,"aria-label":"Previous Step"}:null,next:r.nextStepLink?{to:r.nextStepLink.to,"aria-label":"Next Step"}:null})]})]}),e.jsx(J,{})]})})}),Nr=Z(function(){return e.jsx(ee,{statusHandlers:{404:()=>e.jsx("p",{children:"Sorry, we couldn't find an app here."})}})});export{Nr as ErrorBoundary,jr as default,Pr as meta};
2
- //# sourceMappingURL=_layout-C-qRb0Ym.js.map
@@ -1,2 +0,0 @@
1
- import{j as t}from"./jsx-runtime-EKYJJIwR.js";import{r as f,R as u}from"./chunk-QMGIS6GS-CG5cA6CX.js";import{d as F,u as M,e as z,P as j,f as B,g as de,h as U,i as pe}from"./tooltip-Cm7A1uIP.js";import{f as ue,u as fe}from"./index-CZ8q0Nf8.js";import{c as k,I as R}from"./misc-COGqV2fm.js";var _="Collapsible",[me,q]=F(_),[xe,V]=me(_),Y=f.forwardRef((e,s)=>{const{__scopeCollapsible:o,open:n,defaultOpen:r,disabled:a,onOpenChange:c,...i}=e,[d,p]=M({prop:n,defaultProp:r??!1,onChange:c,caller:_});return t.jsx(xe,{scope:o,disabled:a,contentId:z(),open:d,onOpenToggle:f.useCallback(()=>p(m=>!m),[p]),children:t.jsx(j.div,{"data-state":H(d),"data-disabled":a?"":void 0,...i,ref:s})})});Y.displayName=_;var J="CollapsibleTrigger",Q=f.forwardRef((e,s)=>{const{__scopeCollapsible:o,...n}=e,r=V(J,o);return t.jsx(j.button,{type:"button","aria-controls":r.contentId,"aria-expanded":r.open||!1,"data-state":H(r.open),"data-disabled":r.disabled?"":void 0,disabled:r.disabled,...n,ref:s,onClick:B(e.onClick,r.onOpenToggle)})});Q.displayName=J;var L="CollapsibleContent",W=f.forwardRef((e,s)=>{const{forceMount:o,...n}=e,r=V(L,e.__scopeCollapsible);return t.jsx(de,{present:o||r.open,children:({present:a})=>t.jsx(ve,{...n,ref:s,present:a})})});W.displayName=L;var ve=f.forwardRef((e,s)=>{const{__scopeCollapsible:o,present:n,children:r,...a}=e,c=V(L,o),[i,d]=f.useState(n),p=f.useRef(null),m=U(s,p),x=f.useRef(0),A=x.current,C=f.useRef(0),N=C.current,b=c.open||i,g=f.useRef(b),h=f.useRef(void 0);return f.useEffect(()=>{const l=requestAnimationFrame(()=>g.current=!1);return()=>cancelAnimationFrame(l)},[]),pe(()=>{const l=p.current;if(l){h.current=h.current||{transitionDuration:l.style.transitionDuration,animationName:l.style.animationName},l.style.transitionDuration="0s",l.style.animationName="none";const I=l.getBoundingClientRect();x.current=I.height,C.current=I.width,g.current||(l.style.transitionDuration=h.current.transitionDuration,l.style.animationName=h.current.animationName),d(n)}},[c.open,n]),t.jsx(j.div,{"data-state":H(c.open),"data-disabled":c.disabled?"":void 0,id:c.contentId,hidden:!b,...a,ref:m,style:{"--radix-collapsible-content-height":A?`${A}px`:void 0,"--radix-collapsible-content-width":N?`${N}px`:void 0,...e.style},children:b&&r})});function H(e){return e?"open":"closed"}var Ce=Y,be=Q,ge=W,v="Accordion",he=["Home","End","ArrowDown","ArrowUp","ArrowLeft","ArrowRight"],[$,Ae,Ie]=ue(v),[P,$e]=F(v,[Ie,q]),G=q(),X=u.forwardRef((e,s)=>{const{type:o,...n}=e,r=n,a=n;return t.jsx($.Provider,{scope:e.__scopeAccordion,children:o==="multiple"?t.jsx(we,{...a,ref:s}):t.jsx(Ne,{...r,ref:s})})});X.displayName=v;var[Z,Re]=P(v),[ee,je]=P(v,{collapsible:!1}),Ne=u.forwardRef((e,s)=>{const{value:o,defaultValue:n,onValueChange:r=()=>{},collapsible:a=!1,...c}=e,[i,d]=M({prop:o,defaultProp:n??"",onChange:r,caller:v});return t.jsx(Z,{scope:e.__scopeAccordion,value:u.useMemo(()=>i?[i]:[],[i]),onItemOpen:d,onItemClose:u.useCallback(()=>a&&d(""),[a,d]),children:t.jsx(ee,{scope:e.__scopeAccordion,collapsible:a,children:t.jsx(oe,{...c,ref:s})})})}),we=u.forwardRef((e,s)=>{const{value:o,defaultValue:n,onValueChange:r=()=>{},...a}=e,[c,i]=M({prop:o,defaultProp:n??[],onChange:r,caller:v}),d=u.useCallback(m=>i((x=[])=>[...x,m]),[i]),p=u.useCallback(m=>i((x=[])=>x.filter(A=>A!==m)),[i]);return t.jsx(Z,{scope:e.__scopeAccordion,value:c,onItemOpen:d,onItemClose:p,children:t.jsx(ee,{scope:e.__scopeAccordion,collapsible:!0,children:t.jsx(oe,{...a,ref:s})})})}),[_e,y]=P(v),oe=u.forwardRef((e,s)=>{const{__scopeAccordion:o,disabled:n,dir:r,orientation:a="vertical",...c}=e,i=u.useRef(null),d=U(i,s),p=Ae(o),x=fe(r)==="ltr",A=B(e.onKeyDown,C=>{if(!he.includes(C.key))return;const N=C.target,b=p().filter(T=>!T.ref.current?.disabled),g=b.findIndex(T=>T.ref.current===N),h=b.length;if(g===-1)return;C.preventDefault();let l=g;const I=0,E=h-1,S=()=>{l=g+1,l>E&&(l=I)},D=()=>{l=g-1,l<I&&(l=E)};switch(C.key){case"Home":l=I;break;case"End":l=E;break;case"ArrowRight":a==="horizontal"&&(x?S():D());break;case"ArrowDown":a==="vertical"&&S();break;case"ArrowLeft":a==="horizontal"&&(x?D():S());break;case"ArrowUp":a==="vertical"&&D();break}const le=l%h;b[le].ref.current?.focus()});return t.jsx(_e,{scope:o,disabled:n,direction:r,orientation:a,children:t.jsx($.Slot,{scope:o,children:t.jsx(j.div,{...c,"data-orientation":a,ref:d,onKeyDown:n?void 0:A})})})}),w="AccordionItem",[Pe,K]=P(w),te=u.forwardRef((e,s)=>{const{__scopeAccordion:o,value:n,...r}=e,a=y(w,o),c=Re(w,o),i=G(o),d=z(),p=n&&c.value.includes(n)||!1,m=a.disabled||e.disabled;return t.jsx(Pe,{scope:o,open:p,disabled:m,triggerId:d,children:t.jsx(Ce,{"data-orientation":a.orientation,"data-state":ie(p),...i,...r,ref:s,disabled:m,open:p,onOpenChange:x=>{x?c.onItemOpen(n):c.onItemClose(n)}})})});te.displayName=w;var ne="AccordionHeader",re=u.forwardRef((e,s)=>{const{__scopeAccordion:o,...n}=e,r=y(v,o),a=K(ne,o);return t.jsx(j.h3,{"data-orientation":r.orientation,"data-state":ie(a.open),"data-disabled":a.disabled?"":void 0,...n,ref:s})});re.displayName=ne;var O="AccordionTrigger",ae=u.forwardRef((e,s)=>{const{__scopeAccordion:o,...n}=e,r=y(v,o),a=K(O,o),c=je(O,o),i=G(o);return t.jsx($.ItemSlot,{scope:o,children:t.jsx(be,{"aria-disabled":a.open&&!c.collapsible||void 0,"data-orientation":r.orientation,id:a.triggerId,...i,...n,ref:s})})});ae.displayName=O;var se="AccordionContent",ce=u.forwardRef((e,s)=>{const{__scopeAccordion:o,...n}=e,r=y(v,o),a=K(se,o),c=G(o);return t.jsx(ge,{role:"region","aria-labelledby":a.triggerId,"data-orientation":r.orientation,...c,...n,ref:s,style:{"--radix-accordion-content-height":"var(--radix-collapsible-content-height)","--radix-accordion-content-width":"var(--radix-collapsible-content-width)",...e.style}})});ce.displayName=se;function ie(e){return e?"open":"closed"}var Ge=X,ye=te,Ee=re,Se=ae,De=ce;const Ke=({title:e,children:s,variant:o,icon:n,forceMount:r=!1})=>{const a=()=>{switch(o){case"changed":return t.jsx(R,{name:"Modified","aria-label":"Modified",className:"text-[#fb923c]"});case"renamed":return t.jsx(R,{name:"Renamed","aria-label":"Renamed",className:"text-[#fb923c]"});case"added":return t.jsx(R,{name:"Added","aria-label":"Added",className:"text-[#10b981]"});case"deleted":return t.jsx(R,{name:"Deleted","aria-label":"Deleted",className:"text-[#ef4444]"});default:return t.jsx(R,{name:"Modified","aria-label":"Modified",className:"text-[#fb923c]"})}},c=()=>{switch(o){case"changed":return"modified";default:return o}},i=e.replace(/\\\\/g,"\\");return t.jsxs(ye,{value:e,children:[t.jsxs(Te,{variant:c(),children:[n||a()," ",i]}),t.jsx(Oe,{forceMount:r,className:k("prose max-w-none whitespace-pre-wrap dark:prose-invert prose-pre:m-0 prose-pre:mb-1 prose-pre:rounded-none",{"radix-state-closed:hidden":r}),children:s})]})},Te=({ref:e,children:s,className:o,variant:n,...r})=>t.jsx(Ee,{className:"flex",asChild:!0,children:t.jsxs(Se,{className:k("group flex w-full items-center justify-between border-b p-4 pr-3 font-mono text-sm font-medium leading-none hover:bg-foreground/20",o),...r,ref:e,children:[t.jsx("div",{className:"flex items-center gap-1.5",children:s}),t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsx("span",{className:"font-mono text-xs font-normal uppercase text-muted-foreground",children:n}),t.jsx(R,{name:"TriangleDownSmall",className:"transition group-radix-state-open:rotate-180","aria-hidden":!0})]})]})}),Oe=({ref:e,children:s,className:o,...n})=>t.jsx(De,{className:k("",o),...n,ref:e,children:t.jsx("div",{children:s})});export{Ke as A,Ge as R};
2
- //# sourceMappingURL=accordion-PSsenYUI.js.map
@@ -1,2 +0,0 @@
1
- import{w as d,L as i,F as m}from"./chunk-QMGIS6GS-CG5cA6CX.js";import{j as e}from"./jsx-runtime-EKYJJIwR.js";import{B as x}from"./button-cFpvwtjC.js";import{I as r}from"./misc-COGqV2fm.js";import{S as o}from"./tooltip-Cm7A1uIP.js";import{u,a as h}from"./user-BQ8D2Fty.js";import{u as l}from"./workshop-config-5VcXxeyp.js";import"./index-Bp_2FjuO.js";const L={getSitemapEntries:()=>null};function p(){const{product:{host:t}}=l();return`https://${t}/discord`}const k=d(function(){const s=u(),a=l(),n=h(),c=p();return e.jsxs("main",{className:"container flex h-full w-full max-w-3xl flex-grow flex-col items-center justify-center gap-4",children:[s.imageUrlLarge?e.jsx("img",{className:"h-36 w-36 rounded-full",alt:n?.displayName??s.name??s.email,src:s.imageUrlLarge}):e.jsx(r,{name:"User",className:"flex-shrink-0",size:"lg"}),e.jsx("h1",{className:"mb-1 text-2xl",children:"Your Account"}),e.jsx("p",{className:"text-center text-gray-700 dark:text-gray-300",children:s.name?`Hi ${n?.displayName??s.name}, your device is logged in with ${s.email}.`:`Your device is logged in with ${s.email}.`}),n?e.jsx(e.Fragment,{children:e.jsxs("p",{className:"text-center text-gray-700 dark:text-gray-300",children:["And you are connected to discord as"," ",e.jsx("a",{href:`https://discord.com/users/${n.id}`,target:"_blank",rel:"noopener noreferrer",className:"underline",children:n.displayName}),"."]})}):e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs(i,{to:c,className:"inline-flex items-center gap-2 underline",children:[e.jsx(r,{name:"Discord",size:"lg"}),"Connect Discord"]}),e.jsx(o,{content:"This will give you access to the exclusive Discord channels for Epic Web",children:e.jsx(r,{name:"Question",tabIndex:0})})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(m,{method:"post",children:e.jsx(x,{varient:"mono",name:"intent",value:"logout",children:"Log device out"})}),e.jsx(o,{content:e.jsxs("div",{children:["Note: it is your ",e.jsx("i",{className:"italic",children:"device"})," that's logged in, not your browser.",e.jsx("br",{}),"So all browsers on this device will be logged in with the same account on this device."]}),children:e.jsx(r,{name:"Question",tabIndex:0})})]}),e.jsx("hr",{className:"w-full"}),e.jsxs("ul",{className:"flex list-inside list-disc flex-col gap-2 self-start",children:[e.jsx("li",{children:e.jsxs(i,{to:`https://${a.product.host}/profile`,className:"inline-flex gap-1 underline",children:[e.jsx("span",{children:"Manage your account"}),e.jsx(r,{name:"ExternalLink"})]})}),e.jsx("li",{children:e.jsx(i,{to:"/preferences",className:"underline",children:"Manage your preferences"})}),e.jsx("li",{children:e.jsx(i,{to:"/onboarding",className:"underline",children:"Review onboarding"})}),e.jsx("li",{children:e.jsx(i,{to:"/support",className:"underline",children:"Get support"})})]})]})});export{k as default,L as handle};
2
- //# sourceMappingURL=account-Jl0f1Zst.js.map
@@ -1,2 +0,0 @@
1
- import{w as t,c as s,r as p}from"./chunk-QMGIS6GS-CG5cA6CX.js";import{j as e}from"./jsx-runtime-EKYJJIwR.js";import{P as i}from"./preview-CMOIed2z.js";import"./misc-COGqV2fm.js";import"./button-cFpvwtjC.js";import"./loading-WTUNhoIS.js";import"./index-5iWKMrsc.js";import"./tooltip-Cm7A1uIP.js";import"./index-Bp_2FjuO.js";import"./pe-DoDyGTeN.js";import"./progress-bar-Cww9t8Vn.js";const d=t(function(){const{appInfo:r}=s(),o=p.useRef(null);return e.jsx(i,{appInfo:r,inBrowserBrowserRef:o})});export{d as default};
2
- //# sourceMappingURL=app-KDd3xjI9.js.map