@epic-web/workshop-app 5.1.0 → 5.1.2

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 (2187) hide show
  1. package/build/client/assets/_-CWSCXcBv.js +2 -0
  2. package/build/client/assets/_-CWSCXcBv.js.map +1 -0
  3. package/build/client/assets/_exerciseNumber-DarnXgbX.js +2 -0
  4. package/build/client/assets/_exerciseNumber-DarnXgbX.js.map +1 -0
  5. package/build/client/assets/_exerciseNumber_._stepNumber-BA2Xhzqs.js +2 -0
  6. package/build/client/assets/_exerciseNumber_._stepNumber-BA2Xhzqs.js.map +1 -0
  7. package/build/client/assets/_exerciseNumber_.finished-DEzaS_Ji.js +2 -0
  8. package/build/client/assets/_exerciseNumber_.finished-DEzaS_Ji.js.map +1 -0
  9. package/build/client/assets/_layout-88n0To1b.js +2 -0
  10. package/build/client/assets/_layout-88n0To1b.js.map +1 -0
  11. package/build/client/assets/_layout-BTrPWpBz.js +2 -0
  12. package/build/client/assets/_layout-BTrPWpBz.js.map +1 -0
  13. package/build/client/assets/_layout-T2hZtl0D.js +6 -0
  14. package/build/client/assets/_layout-T2hZtl0D.js.map +1 -0
  15. package/build/client/assets/_layout-gyrNluke.js +2 -0
  16. package/build/client/assets/_layout-gyrNluke.js.map +1 -0
  17. package/build/client/assets/accordion-DC885Li1.js +2 -0
  18. package/build/client/assets/accordion-DC885Li1.js.map +1 -0
  19. package/build/client/assets/account-CPFwPYf1.js +2 -0
  20. package/build/client/assets/account-CPFwPYf1.js.map +1 -0
  21. package/build/client/assets/app-CM8yuYni.js +2 -0
  22. package/build/client/assets/app-CM8yuYni.js.map +1 -0
  23. package/build/client/assets/button-DQ001ob0.js +2 -0
  24. package/build/client/assets/button-DQ001ob0.js.map +1 -0
  25. package/build/client/assets/components-9EGYHTc_.js +158 -0
  26. package/build/client/assets/components-9EGYHTc_.js.map +1 -0
  27. package/build/client/assets/diff-assn_bSK.js +2 -0
  28. package/build/client/assets/diff-assn_bSK.js.map +1 -0
  29. package/build/client/assets/diff-jlCv3hv0.js +2 -0
  30. package/build/client/assets/diff-jlCv3hv0.js.map +1 -0
  31. package/build/client/assets/discord-CHsbqaqM.js +2 -0
  32. package/build/client/assets/discord-CHsbqaqM.js.map +1 -0
  33. package/build/client/assets/discord-DoeazikD.js +2 -0
  34. package/build/client/assets/discord-DoeazikD.js.map +1 -0
  35. package/build/client/assets/entry.client-BTYTUpFV.js +44 -0
  36. package/build/client/assets/entry.client-BTYTUpFV.js.map +1 -0
  37. package/build/client/assets/epic-video-GDpD7_Qt.js +3053 -0
  38. package/build/client/assets/epic-video-GDpD7_Qt.js.map +1 -0
  39. package/build/client/assets/error-boundary-1-dmC941.js +2 -0
  40. package/build/client/assets/error-boundary-1-dmC941.js.map +1 -0
  41. package/build/client/assets/finished-DVV0zwmP.js +2 -0
  42. package/build/client/assets/finished-DVV0zwmP.js.map +1 -0
  43. package/build/client/assets/index-BCxBKsqT.js +2 -0
  44. package/build/client/assets/index-BCxBKsqT.js.map +1 -0
  45. package/build/client/assets/index-BFGhCX_U.js +38 -0
  46. package/build/client/assets/index-BFGhCX_U.js.map +1 -0
  47. package/build/client/assets/index-BuA_RWlU.js +2 -0
  48. package/build/client/assets/index-BuA_RWlU.js.map +1 -0
  49. package/build/client/assets/index-BuoaxPEj.js +42 -0
  50. package/build/client/assets/index-BuoaxPEj.js.map +1 -0
  51. package/build/client/assets/index-DJF1fiZI.js +2 -0
  52. package/build/client/assets/index-DJF1fiZI.js.map +1 -0
  53. package/build/client/assets/index-DRH72MzK.js +3 -0
  54. package/build/client/assets/index-DRH72MzK.js.map +1 -0
  55. package/build/client/assets/index-KgMLc41c.js +2 -0
  56. package/build/client/assets/index-KgMLc41c.js.map +1 -0
  57. package/build/client/assets/index-_J-F_Dnc.js +36 -0
  58. package/build/client/assets/index-_J-F_Dnc.js.map +1 -0
  59. package/build/client/assets/loading-Dk0n07O3.js +2 -0
  60. package/build/client/assets/loading-Dk0n07O3.js.map +1 -0
  61. package/build/client/assets/login-pZYDEC_l.js +2 -0
  62. package/build/client/assets/login-pZYDEC_l.js.map +1 -0
  63. package/build/client/assets/manifest-3338a6ab.js +1 -0
  64. package/build/client/assets/mdx-hW1uYjc1.js +2 -0
  65. package/build/client/assets/mdx-hW1uYjc1.js.map +1 -0
  66. package/build/client/assets/misc-BJtHv_Jh.js +2 -0
  67. package/build/client/assets/misc-BJtHv_Jh.js.map +1 -0
  68. package/build/client/assets/nav-chevrons-CgbSMLeb.js +2 -0
  69. package/build/client/assets/nav-chevrons-CgbSMLeb.js.map +1 -0
  70. package/build/client/assets/onboarding-DCuSqnkZ.js +2 -0
  71. package/build/client/assets/onboarding-DCuSqnkZ.js.map +1 -0
  72. package/build/client/assets/pe-ChIwTk8v.js +2 -0
  73. package/build/client/assets/pe-ChIwTk8v.js.map +1 -0
  74. package/build/client/assets/presence-CdyMdOKk.js +28 -0
  75. package/build/client/assets/presence-CdyMdOKk.js.map +1 -0
  76. package/build/client/assets/preview-CW_12I0i.js +2 -0
  77. package/build/client/assets/preview-CW_12I0i.js.map +1 -0
  78. package/build/client/assets/product-C1ynnrN_.js +2 -0
  79. package/build/client/assets/product-C1ynnrN_.js.map +1 -0
  80. package/build/client/assets/progress-DAB3nDa2.js +2 -0
  81. package/build/client/assets/progress-DAB3nDa2.js.map +1 -0
  82. package/build/client/assets/progress-bar-Cj5R4Zk7.js +2 -0
  83. package/build/client/assets/progress-bar-Cj5R4Zk7.js.map +1 -0
  84. package/build/client/assets/request-info-DCIQLE6H.js +2 -0
  85. package/build/client/assets/request-info-DCIQLE6H.js.map +1 -0
  86. package/build/client/assets/revalidation-ws-DU-PzW-_.js +2 -0
  87. package/build/client/assets/revalidation-ws-DU-PzW-_.js.map +1 -0
  88. package/build/client/assets/root-DojjHZlY.js +11 -0
  89. package/build/client/assets/root-DojjHZlY.js.map +1 -0
  90. package/build/client/assets/set-playground-DgnOJqFN.js +2 -0
  91. package/build/client/assets/set-playground-DgnOJqFN.js.map +1 -0
  92. package/build/client/assets/support-BNS-kEhc.js +2 -0
  93. package/build/client/assets/support-BNS-kEhc.js.map +1 -0
  94. package/build/client/assets/tailwind-B5AAMtGC.css +1 -0
  95. package/build/client/assets/test-DJ7oeeeg.js +2 -0
  96. package/build/client/assets/test-DJ7oeeeg.js.map +1 -0
  97. package/build/client/assets/tests-Bw1rCopV.js +4 -0
  98. package/build/client/assets/tests-Bw1rCopV.js.map +1 -0
  99. package/build/client/assets/tooltip-BgynKV2c.js +2 -0
  100. package/build/client/assets/tooltip-BgynKV2c.js.map +1 -0
  101. package/build/client/assets/use-event-source-x59d4R2Z.js +2 -0
  102. package/build/client/assets/use-event-source-x59d4R2Z.js.map +1 -0
  103. package/build/client/assets/user-BBryXlM_.js +2 -0
  104. package/build/client/assets/user-BBryXlM_.js.map +1 -0
  105. package/build/client/assets/workshop-config-DJY2cXU_.js +2 -0
  106. package/build/client/assets/workshop-config-DJY2cXU_.js.map +1 -0
  107. package/build/server/index.js +110 -2346
  108. package/build/server/index.js.map +1 -1
  109. package/dist/server/index.js +7 -12
  110. package/package.json +68 -95
  111. package/build/client/assets/_-ZHCWB__B.js +0 -2
  112. package/build/client/assets/_-ZHCWB__B.js.map +0 -1
  113. package/build/client/assets/_exerciseNumber-BFTlBdr4.js +0 -2
  114. package/build/client/assets/_exerciseNumber-BFTlBdr4.js.map +0 -1
  115. package/build/client/assets/_exerciseNumber_._stepNumber-_687iGFh.js +0 -2
  116. package/build/client/assets/_exerciseNumber_._stepNumber-_687iGFh.js.map +0 -1
  117. package/build/client/assets/_exerciseNumber_.finished-BEfn-nJi.js +0 -2
  118. package/build/client/assets/_exerciseNumber_.finished-BEfn-nJi.js.map +0 -1
  119. package/build/client/assets/_layout-BLJr2x2F.js +0 -2
  120. package/build/client/assets/_layout-BLJr2x2F.js.map +0 -1
  121. package/build/client/assets/_layout-BriOqd2R.js +0 -2
  122. package/build/client/assets/_layout-BriOqd2R.js.map +0 -1
  123. package/build/client/assets/_layout-Cfbi6StB.js +0 -2
  124. package/build/client/assets/_layout-Cfbi6StB.js.map +0 -1
  125. package/build/client/assets/_layout-frPHZWgR.js +0 -6
  126. package/build/client/assets/_layout-frPHZWgR.js.map +0 -1
  127. package/build/client/assets/accordion-DuE9VejZ.js +0 -2
  128. package/build/client/assets/accordion-DuE9VejZ.js.map +0 -1
  129. package/build/client/assets/account-DDuV9rZX.js +0 -2
  130. package/build/client/assets/account-DDuV9rZX.js.map +0 -1
  131. package/build/client/assets/app-wbMCZEiv.js +0 -2
  132. package/build/client/assets/app-wbMCZEiv.js.map +0 -1
  133. package/build/client/assets/button-CMkJ8p0a.js +0 -2
  134. package/build/client/assets/button-CMkJ8p0a.js.map +0 -1
  135. package/build/client/assets/components-DZ8XIeZ3.js +0 -166
  136. package/build/client/assets/components-DZ8XIeZ3.js.map +0 -1
  137. package/build/client/assets/diff-B6thd_Sf.js +0 -2
  138. package/build/client/assets/diff-B6thd_Sf.js.map +0 -1
  139. package/build/client/assets/diff-BEk79KPK.js +0 -2
  140. package/build/client/assets/diff-BEk79KPK.js.map +0 -1
  141. package/build/client/assets/discord-C9bVfiZ6.js +0 -2
  142. package/build/client/assets/discord-C9bVfiZ6.js.map +0 -1
  143. package/build/client/assets/discord-DYeU0QX6.js +0 -2
  144. package/build/client/assets/discord-DYeU0QX6.js.map +0 -1
  145. package/build/client/assets/entry.client-CW5CUf_W.js +0 -43
  146. package/build/client/assets/entry.client-CW5CUf_W.js.map +0 -1
  147. package/build/client/assets/epic-video-bs7WmhbC.js +0 -2988
  148. package/build/client/assets/epic-video-bs7WmhbC.js.map +0 -1
  149. package/build/client/assets/error-boundary-BcGxKpte.js +0 -2
  150. package/build/client/assets/error-boundary-BcGxKpte.js.map +0 -1
  151. package/build/client/assets/finished-C2dgX1d-.js +0 -2
  152. package/build/client/assets/finished-C2dgX1d-.js.map +0 -1
  153. package/build/client/assets/index-BczhSZ3e.js +0 -2
  154. package/build/client/assets/index-BczhSZ3e.js.map +0 -1
  155. package/build/client/assets/index-BjNhezSK.js +0 -42
  156. package/build/client/assets/index-BjNhezSK.js.map +0 -1
  157. package/build/client/assets/index-BvihEwfB.js +0 -36
  158. package/build/client/assets/index-BvihEwfB.js.map +0 -1
  159. package/build/client/assets/index-C2yr7Uiu.js +0 -2
  160. package/build/client/assets/index-C2yr7Uiu.js.map +0 -1
  161. package/build/client/assets/index-CuV1bRbu.js +0 -2
  162. package/build/client/assets/index-CuV1bRbu.js.map +0 -1
  163. package/build/client/assets/index-DBrRQJxF.js +0 -2
  164. package/build/client/assets/index-DBrRQJxF.js.map +0 -1
  165. package/build/client/assets/index-DF_XBInP.js +0 -37
  166. package/build/client/assets/index-DF_XBInP.js.map +0 -1
  167. package/build/client/assets/index-YtpQLUzj.js +0 -3
  168. package/build/client/assets/index-YtpQLUzj.js.map +0 -1
  169. package/build/client/assets/loading-Br41_Pbf.js +0 -2
  170. package/build/client/assets/loading-Br41_Pbf.js.map +0 -1
  171. package/build/client/assets/login-kjV7hrVt.js +0 -2
  172. package/build/client/assets/login-kjV7hrVt.js.map +0 -1
  173. package/build/client/assets/manifest-77ab30ae.js +0 -1
  174. package/build/client/assets/mdx-CRxPouxB.js +0 -2
  175. package/build/client/assets/mdx-CRxPouxB.js.map +0 -1
  176. package/build/client/assets/misc-BE75ioh8.js +0 -2
  177. package/build/client/assets/misc-BE75ioh8.js.map +0 -1
  178. package/build/client/assets/nav-chevrons-DYiI8EMU.js +0 -2
  179. package/build/client/assets/nav-chevrons-DYiI8EMU.js.map +0 -1
  180. package/build/client/assets/onboarding-B4Z_yevk.js +0 -2
  181. package/build/client/assets/onboarding-B4Z_yevk.js.map +0 -1
  182. package/build/client/assets/pe-CvPIToj6.js +0 -2
  183. package/build/client/assets/pe-CvPIToj6.js.map +0 -1
  184. package/build/client/assets/presence-Dd98AJ_5.js +0 -28
  185. package/build/client/assets/presence-Dd98AJ_5.js.map +0 -1
  186. package/build/client/assets/preview-DZcdG4kw.js +0 -2
  187. package/build/client/assets/preview-DZcdG4kw.js.map +0 -1
  188. package/build/client/assets/product-mjsTrqXs.js +0 -2
  189. package/build/client/assets/product-mjsTrqXs.js.map +0 -1
  190. package/build/client/assets/progress-Co-59mG2.js +0 -2
  191. package/build/client/assets/progress-Co-59mG2.js.map +0 -1
  192. package/build/client/assets/progress-bar-F8_2mvYp.js +0 -2
  193. package/build/client/assets/progress-bar-F8_2mvYp.js.map +0 -1
  194. package/build/client/assets/request-info-DGnmXtfj.js +0 -2
  195. package/build/client/assets/request-info-DGnmXtfj.js.map +0 -1
  196. package/build/client/assets/revalidation-ws-DcvYvzyj.js +0 -2
  197. package/build/client/assets/revalidation-ws-DcvYvzyj.js.map +0 -1
  198. package/build/client/assets/root-Cl86OUog.js +0 -11
  199. package/build/client/assets/root-Cl86OUog.js.map +0 -1
  200. package/build/client/assets/set-playground-pMKmtPtz.js +0 -2
  201. package/build/client/assets/set-playground-pMKmtPtz.js.map +0 -1
  202. package/build/client/assets/support-B0E_F4Zh.js +0 -2
  203. package/build/client/assets/support-B0E_F4Zh.js.map +0 -1
  204. package/build/client/assets/tailwind-B9pSujyx.css +0 -1
  205. package/build/client/assets/test-B6zIK2V6.js +0 -2
  206. package/build/client/assets/test-B6zIK2V6.js.map +0 -1
  207. package/build/client/assets/tests-BeAEgPAw.js +0 -4
  208. package/build/client/assets/tests-BeAEgPAw.js.map +0 -1
  209. package/build/client/assets/tooltip-6-WS-Xux.js +0 -2
  210. package/build/client/assets/tooltip-6-WS-Xux.js.map +0 -1
  211. package/build/client/assets/use-event-source-CCGBLG92.js +0 -2
  212. package/build/client/assets/use-event-source-CCGBLG92.js.map +0 -1
  213. package/build/client/assets/user-Boua6jiU.js +0 -2
  214. package/build/client/assets/user-Boua6jiU.js.map +0 -1
  215. package/build/client/assets/workshop-config-Ce9sSc3I.js +0 -2
  216. package/build/client/assets/workshop-config-Ce9sSc3I.js.map +0 -1
  217. package/node_modules/@babel/runtime/LICENSE +0 -22
  218. package/node_modules/@babel/runtime/README.md +0 -19
  219. package/node_modules/@babel/runtime/helpers/AwaitValue.js +0 -4
  220. package/node_modules/@babel/runtime/helpers/OverloadYield.js +0 -4
  221. package/node_modules/@babel/runtime/helpers/applyDecoratedDescriptor.js +0 -9
  222. package/node_modules/@babel/runtime/helpers/applyDecs.js +0 -236
  223. package/node_modules/@babel/runtime/helpers/applyDecs2203.js +0 -184
  224. package/node_modules/@babel/runtime/helpers/applyDecs2203R.js +0 -191
  225. package/node_modules/@babel/runtime/helpers/applyDecs2301.js +0 -222
  226. package/node_modules/@babel/runtime/helpers/applyDecs2305.js +0 -133
  227. package/node_modules/@babel/runtime/helpers/applyDecs2311.js +0 -124
  228. package/node_modules/@babel/runtime/helpers/arrayLikeToArray.js +0 -6
  229. package/node_modules/@babel/runtime/helpers/arrayWithHoles.js +0 -4
  230. package/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js +0 -5
  231. package/node_modules/@babel/runtime/helpers/assertClassBrand.js +0 -5
  232. package/node_modules/@babel/runtime/helpers/assertThisInitialized.js +0 -5
  233. package/node_modules/@babel/runtime/helpers/asyncGeneratorDelegate.js +0 -24
  234. package/node_modules/@babel/runtime/helpers/asyncIterator.js +0 -45
  235. package/node_modules/@babel/runtime/helpers/asyncToGenerator.js +0 -26
  236. package/node_modules/@babel/runtime/helpers/awaitAsyncGenerator.js +0 -5
  237. package/node_modules/@babel/runtime/helpers/callSuper.js +0 -7
  238. package/node_modules/@babel/runtime/helpers/checkInRHS.js +0 -6
  239. package/node_modules/@babel/runtime/helpers/checkPrivateRedeclaration.js +0 -4
  240. package/node_modules/@babel/runtime/helpers/classApplyDescriptorDestructureSet.js +0 -10
  241. package/node_modules/@babel/runtime/helpers/classApplyDescriptorGet.js +0 -4
  242. package/node_modules/@babel/runtime/helpers/classApplyDescriptorSet.js +0 -7
  243. package/node_modules/@babel/runtime/helpers/classCallCheck.js +0 -4
  244. package/node_modules/@babel/runtime/helpers/classCheckPrivateStaticAccess.js +0 -5
  245. package/node_modules/@babel/runtime/helpers/classCheckPrivateStaticFieldDescriptor.js +0 -4
  246. package/node_modules/@babel/runtime/helpers/classExtractFieldDescriptor.js +0 -5
  247. package/node_modules/@babel/runtime/helpers/classNameTDZError.js +0 -4
  248. package/node_modules/@babel/runtime/helpers/classPrivateFieldDestructureSet.js +0 -7
  249. package/node_modules/@babel/runtime/helpers/classPrivateFieldGet.js +0 -7
  250. package/node_modules/@babel/runtime/helpers/classPrivateFieldGet2.js +0 -5
  251. package/node_modules/@babel/runtime/helpers/classPrivateFieldInitSpec.js +0 -5
  252. package/node_modules/@babel/runtime/helpers/classPrivateFieldLooseBase.js +0 -5
  253. package/node_modules/@babel/runtime/helpers/classPrivateFieldLooseKey.js +0 -5
  254. package/node_modules/@babel/runtime/helpers/classPrivateFieldSet.js +0 -7
  255. package/node_modules/@babel/runtime/helpers/classPrivateFieldSet2.js +0 -5
  256. package/node_modules/@babel/runtime/helpers/classPrivateGetter.js +0 -5
  257. package/node_modules/@babel/runtime/helpers/classPrivateMethodGet.js +0 -5
  258. package/node_modules/@babel/runtime/helpers/classPrivateMethodInitSpec.js +0 -5
  259. package/node_modules/@babel/runtime/helpers/classPrivateMethodSet.js +0 -4
  260. package/node_modules/@babel/runtime/helpers/classPrivateSetter.js +0 -5
  261. package/node_modules/@babel/runtime/helpers/classStaticPrivateFieldDestructureSet.js +0 -7
  262. package/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecGet.js +0 -7
  263. package/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecSet.js +0 -7
  264. package/node_modules/@babel/runtime/helpers/classStaticPrivateMethodGet.js +0 -5
  265. package/node_modules/@babel/runtime/helpers/classStaticPrivateMethodSet.js +0 -4
  266. package/node_modules/@babel/runtime/helpers/construct.js +0 -10
  267. package/node_modules/@babel/runtime/helpers/createClass.js +0 -13
  268. package/node_modules/@babel/runtime/helpers/createForOfIteratorHelper.js +0 -50
  269. package/node_modules/@babel/runtime/helpers/createForOfIteratorHelperLoose.js +0 -19
  270. package/node_modules/@babel/runtime/helpers/createSuper.js +0 -16
  271. package/node_modules/@babel/runtime/helpers/decorate.js +0 -250
  272. package/node_modules/@babel/runtime/helpers/defaults.js +0 -9
  273. package/node_modules/@babel/runtime/helpers/defineAccessor.js +0 -8
  274. package/node_modules/@babel/runtime/helpers/defineEnumerableProperties.js +0 -12
  275. package/node_modules/@babel/runtime/helpers/defineProperty.js +0 -10
  276. package/node_modules/@babel/runtime/helpers/dispose.js +0 -28
  277. package/node_modules/@babel/runtime/helpers/esm/AwaitValue.js +0 -4
  278. package/node_modules/@babel/runtime/helpers/esm/OverloadYield.js +0 -4
  279. package/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js +0 -9
  280. package/node_modules/@babel/runtime/helpers/esm/applyDecs.js +0 -236
  281. package/node_modules/@babel/runtime/helpers/esm/applyDecs2203.js +0 -184
  282. package/node_modules/@babel/runtime/helpers/esm/applyDecs2203R.js +0 -191
  283. package/node_modules/@babel/runtime/helpers/esm/applyDecs2301.js +0 -222
  284. package/node_modules/@babel/runtime/helpers/esm/applyDecs2305.js +0 -133
  285. package/node_modules/@babel/runtime/helpers/esm/applyDecs2311.js +0 -124
  286. package/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js +0 -6
  287. package/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js +0 -4
  288. package/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js +0 -5
  289. package/node_modules/@babel/runtime/helpers/esm/assertClassBrand.js +0 -5
  290. package/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js +0 -5
  291. package/node_modules/@babel/runtime/helpers/esm/asyncGeneratorDelegate.js +0 -24
  292. package/node_modules/@babel/runtime/helpers/esm/asyncIterator.js +0 -45
  293. package/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js +0 -26
  294. package/node_modules/@babel/runtime/helpers/esm/awaitAsyncGenerator.js +0 -5
  295. package/node_modules/@babel/runtime/helpers/esm/callSuper.js +0 -7
  296. package/node_modules/@babel/runtime/helpers/esm/checkInRHS.js +0 -6
  297. package/node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js +0 -4
  298. package/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorDestructureSet.js +0 -10
  299. package/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorGet.js +0 -4
  300. package/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorSet.js +0 -7
  301. package/node_modules/@babel/runtime/helpers/esm/classCallCheck.js +0 -4
  302. package/node_modules/@babel/runtime/helpers/esm/classCheckPrivateStaticAccess.js +0 -5
  303. package/node_modules/@babel/runtime/helpers/esm/classCheckPrivateStaticFieldDescriptor.js +0 -4
  304. package/node_modules/@babel/runtime/helpers/esm/classExtractFieldDescriptor.js +0 -5
  305. package/node_modules/@babel/runtime/helpers/esm/classNameTDZError.js +0 -4
  306. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldDestructureSet.js +0 -7
  307. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet.js +0 -7
  308. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet2.js +0 -5
  309. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js +0 -5
  310. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseBase.js +0 -5
  311. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseKey.js +0 -5
  312. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet.js +0 -7
  313. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet2.js +0 -5
  314. package/node_modules/@babel/runtime/helpers/esm/classPrivateGetter.js +0 -5
  315. package/node_modules/@babel/runtime/helpers/esm/classPrivateMethodGet.js +0 -5
  316. package/node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js +0 -5
  317. package/node_modules/@babel/runtime/helpers/esm/classPrivateMethodSet.js +0 -4
  318. package/node_modules/@babel/runtime/helpers/esm/classPrivateSetter.js +0 -5
  319. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldDestructureSet.js +0 -7
  320. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecGet.js +0 -7
  321. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecSet.js +0 -7
  322. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodGet.js +0 -5
  323. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodSet.js +0 -4
  324. package/node_modules/@babel/runtime/helpers/esm/construct.js +0 -10
  325. package/node_modules/@babel/runtime/helpers/esm/createClass.js +0 -13
  326. package/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js +0 -50
  327. package/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelperLoose.js +0 -19
  328. package/node_modules/@babel/runtime/helpers/esm/createSuper.js +0 -16
  329. package/node_modules/@babel/runtime/helpers/esm/decorate.js +0 -250
  330. package/node_modules/@babel/runtime/helpers/esm/defaults.js +0 -9
  331. package/node_modules/@babel/runtime/helpers/esm/defineAccessor.js +0 -8
  332. package/node_modules/@babel/runtime/helpers/esm/defineEnumerableProperties.js +0 -12
  333. package/node_modules/@babel/runtime/helpers/esm/defineProperty.js +0 -10
  334. package/node_modules/@babel/runtime/helpers/esm/dispose.js +0 -28
  335. package/node_modules/@babel/runtime/helpers/esm/extends.js +0 -10
  336. package/node_modules/@babel/runtime/helpers/esm/get.js +0 -11
  337. package/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js +0 -6
  338. package/node_modules/@babel/runtime/helpers/esm/identity.js +0 -4
  339. package/node_modules/@babel/runtime/helpers/esm/importDeferProxy.js +0 -27
  340. package/node_modules/@babel/runtime/helpers/esm/inherits.js +0 -14
  341. package/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js +0 -5
  342. package/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js +0 -9
  343. package/node_modules/@babel/runtime/helpers/esm/initializerWarningHelper.js +0 -4
  344. package/node_modules/@babel/runtime/helpers/esm/instanceof.js +0 -4
  345. package/node_modules/@babel/runtime/helpers/esm/interopRequireDefault.js +0 -6
  346. package/node_modules/@babel/runtime/helpers/esm/interopRequireWildcard.js +0 -27
  347. package/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js +0 -8
  348. package/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js +0 -9
  349. package/node_modules/@babel/runtime/helpers/esm/iterableToArray.js +0 -4
  350. package/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js +0 -28
  351. package/node_modules/@babel/runtime/helpers/esm/jsx.js +0 -22
  352. package/node_modules/@babel/runtime/helpers/esm/maybeArrayLike.js +0 -9
  353. package/node_modules/@babel/runtime/helpers/esm/newArrowCheck.js +0 -4
  354. package/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js +0 -4
  355. package/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js +0 -4
  356. package/node_modules/@babel/runtime/helpers/esm/nullishReceiverError.js +0 -4
  357. package/node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js +0 -4
  358. package/node_modules/@babel/runtime/helpers/esm/objectSpread.js +0 -14
  359. package/node_modules/@babel/runtime/helpers/esm/objectSpread2.js +0 -23
  360. package/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js +0 -13
  361. package/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +0 -10
  362. package/node_modules/@babel/runtime/helpers/esm/package.json +0 -3
  363. package/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js +0 -8
  364. package/node_modules/@babel/runtime/helpers/esm/readOnlyError.js +0 -4
  365. package/node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js +0 -304
  366. package/node_modules/@babel/runtime/helpers/esm/set.js +0 -22
  367. package/node_modules/@babel/runtime/helpers/esm/setFunctionName.js +0 -12
  368. package/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +0 -6
  369. package/node_modules/@babel/runtime/helpers/esm/skipFirstGeneratorNext.js +0 -7
  370. package/node_modules/@babel/runtime/helpers/esm/slicedToArray.js +0 -8
  371. package/node_modules/@babel/runtime/helpers/esm/superPropBase.js +0 -6
  372. package/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js +0 -8
  373. package/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteralLoose.js +0 -4
  374. package/node_modules/@babel/runtime/helpers/esm/tdz.js +0 -4
  375. package/node_modules/@babel/runtime/helpers/esm/temporalRef.js +0 -6
  376. package/node_modules/@babel/runtime/helpers/esm/temporalUndefined.js +0 -2
  377. package/node_modules/@babel/runtime/helpers/esm/toArray.js +0 -8
  378. package/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js +0 -8
  379. package/node_modules/@babel/runtime/helpers/esm/toPrimitive.js +0 -12
  380. package/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js +0 -7
  381. package/node_modules/@babel/runtime/helpers/esm/toSetter.js +0 -10
  382. package/node_modules/@babel/runtime/helpers/esm/typeof.js +0 -10
  383. package/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js +0 -9
  384. package/node_modules/@babel/runtime/helpers/esm/using.js +0 -12
  385. package/node_modules/@babel/runtime/helpers/esm/usingCtx.js +0 -47
  386. package/node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js +0 -69
  387. package/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js +0 -27
  388. package/node_modules/@babel/runtime/helpers/esm/wrapRegExp.js +0 -51
  389. package/node_modules/@babel/runtime/helpers/esm/writeOnlyError.js +0 -4
  390. package/node_modules/@babel/runtime/helpers/extends.js +0 -10
  391. package/node_modules/@babel/runtime/helpers/get.js +0 -11
  392. package/node_modules/@babel/runtime/helpers/getPrototypeOf.js +0 -6
  393. package/node_modules/@babel/runtime/helpers/identity.js +0 -4
  394. package/node_modules/@babel/runtime/helpers/importDeferProxy.js +0 -27
  395. package/node_modules/@babel/runtime/helpers/inherits.js +0 -14
  396. package/node_modules/@babel/runtime/helpers/inheritsLoose.js +0 -5
  397. package/node_modules/@babel/runtime/helpers/initializerDefineProperty.js +0 -9
  398. package/node_modules/@babel/runtime/helpers/initializerWarningHelper.js +0 -4
  399. package/node_modules/@babel/runtime/helpers/instanceof.js +0 -4
  400. package/node_modules/@babel/runtime/helpers/interopRequireDefault.js +0 -6
  401. package/node_modules/@babel/runtime/helpers/interopRequireWildcard.js +0 -27
  402. package/node_modules/@babel/runtime/helpers/isNativeFunction.js +0 -8
  403. package/node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js +0 -9
  404. package/node_modules/@babel/runtime/helpers/iterableToArray.js +0 -4
  405. package/node_modules/@babel/runtime/helpers/iterableToArrayLimit.js +0 -28
  406. package/node_modules/@babel/runtime/helpers/jsx.js +0 -22
  407. package/node_modules/@babel/runtime/helpers/maybeArrayLike.js +0 -9
  408. package/node_modules/@babel/runtime/helpers/newArrowCheck.js +0 -4
  409. package/node_modules/@babel/runtime/helpers/nonIterableRest.js +0 -4
  410. package/node_modules/@babel/runtime/helpers/nonIterableSpread.js +0 -4
  411. package/node_modules/@babel/runtime/helpers/nullishReceiverError.js +0 -4
  412. package/node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js +0 -4
  413. package/node_modules/@babel/runtime/helpers/objectSpread.js +0 -14
  414. package/node_modules/@babel/runtime/helpers/objectSpread2.js +0 -23
  415. package/node_modules/@babel/runtime/helpers/objectWithoutProperties.js +0 -13
  416. package/node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js +0 -10
  417. package/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js +0 -8
  418. package/node_modules/@babel/runtime/helpers/readOnlyError.js +0 -4
  419. package/node_modules/@babel/runtime/helpers/regeneratorRuntime.js +0 -304
  420. package/node_modules/@babel/runtime/helpers/set.js +0 -22
  421. package/node_modules/@babel/runtime/helpers/setFunctionName.js +0 -12
  422. package/node_modules/@babel/runtime/helpers/setPrototypeOf.js +0 -6
  423. package/node_modules/@babel/runtime/helpers/skipFirstGeneratorNext.js +0 -7
  424. package/node_modules/@babel/runtime/helpers/slicedToArray.js +0 -8
  425. package/node_modules/@babel/runtime/helpers/superPropBase.js +0 -6
  426. package/node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js +0 -8
  427. package/node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js +0 -4
  428. package/node_modules/@babel/runtime/helpers/tdz.js +0 -4
  429. package/node_modules/@babel/runtime/helpers/temporalRef.js +0 -6
  430. package/node_modules/@babel/runtime/helpers/temporalUndefined.js +0 -2
  431. package/node_modules/@babel/runtime/helpers/toArray.js +0 -8
  432. package/node_modules/@babel/runtime/helpers/toConsumableArray.js +0 -8
  433. package/node_modules/@babel/runtime/helpers/toPrimitive.js +0 -12
  434. package/node_modules/@babel/runtime/helpers/toPropertyKey.js +0 -7
  435. package/node_modules/@babel/runtime/helpers/toSetter.js +0 -10
  436. package/node_modules/@babel/runtime/helpers/typeof.js +0 -10
  437. package/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js +0 -9
  438. package/node_modules/@babel/runtime/helpers/using.js +0 -12
  439. package/node_modules/@babel/runtime/helpers/usingCtx.js +0 -47
  440. package/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js +0 -69
  441. package/node_modules/@babel/runtime/helpers/wrapNativeSuper.js +0 -27
  442. package/node_modules/@babel/runtime/helpers/wrapRegExp.js +0 -51
  443. package/node_modules/@babel/runtime/helpers/writeOnlyError.js +0 -4
  444. package/node_modules/@babel/runtime/package.json +0 -1038
  445. package/node_modules/@babel/runtime/regenerator/index.js +0 -15
  446. package/node_modules/@conform-to/dom/LICENSE +0 -21
  447. package/node_modules/@conform-to/dom/README +0 -37
  448. package/node_modules/@conform-to/dom/_virtual/_rollupPluginBabelHelpers.js +0 -58
  449. package/node_modules/@conform-to/dom/_virtual/_rollupPluginBabelHelpers.mjs +0 -51
  450. package/node_modules/@conform-to/dom/dom.d.ts +0 -55
  451. package/node_modules/@conform-to/dom/dom.js +0 -104
  452. package/node_modules/@conform-to/dom/dom.mjs +0 -95
  453. package/node_modules/@conform-to/dom/form.d.ts +0 -246
  454. package/node_modules/@conform-to/dom/form.js +0 -582
  455. package/node_modules/@conform-to/dom/form.mjs +0 -578
  456. package/node_modules/@conform-to/dom/formdata.d.ts +0 -61
  457. package/node_modules/@conform-to/dom/formdata.js +0 -214
  458. package/node_modules/@conform-to/dom/formdata.mjs +0 -200
  459. package/node_modules/@conform-to/dom/index.d.ts +0 -26
  460. package/node_modules/@conform-to/dom/index.js +0 -20
  461. package/node_modules/@conform-to/dom/index.mjs +0 -4
  462. package/node_modules/@conform-to/dom/intent.d.ts +0 -114
  463. package/node_modules/@conform-to/dom/intent.js +0 -136
  464. package/node_modules/@conform-to/dom/intent.mjs +0 -126
  465. package/node_modules/@conform-to/dom/package.json +0 -59
  466. package/node_modules/@conform-to/dom/parse.d.ts +0 -50
  467. package/node_modules/@conform-to/dom/parse.js +0 -43
  468. package/node_modules/@conform-to/dom/parse.mjs +0 -37
  469. package/node_modules/@conform-to/dom/submission.d.ts +0 -135
  470. package/node_modules/@conform-to/dom/submission.js +0 -305
  471. package/node_modules/@conform-to/dom/submission.mjs +0 -288
  472. package/node_modules/@conform-to/dom/types.d.ts +0 -23
  473. package/node_modules/@conform-to/dom/util.d.ts +0 -6
  474. package/node_modules/@conform-to/dom/util.js +0 -19
  475. package/node_modules/@conform-to/dom/util.mjs +0 -13
  476. package/node_modules/@conform-to/react/LICENSE +0 -21
  477. package/node_modules/@conform-to/react/README +0 -37
  478. package/node_modules/@conform-to/react/_virtual/_rollupPluginBabelHelpers.js +0 -87
  479. package/node_modules/@conform-to/react/_virtual/_rollupPluginBabelHelpers.mjs +0 -78
  480. package/node_modules/@conform-to/react/context.d.ts +0 -200
  481. package/node_modules/@conform-to/react/context.js +0 -256
  482. package/node_modules/@conform-to/react/context.mjs +0 -241
  483. package/node_modules/@conform-to/react/experimental.d.ts +0 -0
  484. package/node_modules/@conform-to/react/helpers.d.ts +0 -208
  485. package/node_modules/@conform-to/react/helpers.js +0 -222
  486. package/node_modules/@conform-to/react/helpers.mjs +0 -211
  487. package/node_modules/@conform-to/react/hooks.d.ts +0 -63
  488. package/node_modules/@conform-to/react/hooks.js +0 -88
  489. package/node_modules/@conform-to/react/hooks.mjs +0 -79
  490. package/node_modules/@conform-to/react/index.d.ts +0 -29
  491. package/node_modules/@conform-to/react/index.js +0 -30
  492. package/node_modules/@conform-to/react/index.mjs +0 -5
  493. package/node_modules/@conform-to/react/integrations.d.ts +0 -45
  494. package/node_modules/@conform-to/react/integrations.js +0 -298
  495. package/node_modules/@conform-to/react/integrations.mjs +0 -284
  496. package/node_modules/@conform-to/react/package.json +0 -69
  497. package/node_modules/@conform-to/zod/LICENSE +0 -21
  498. package/node_modules/@conform-to/zod/README +0 -37
  499. package/node_modules/@conform-to/zod/_virtual/_rollupPluginBabelHelpers.js +0 -58
  500. package/node_modules/@conform-to/zod/_virtual/_rollupPluginBabelHelpers.mjs +0 -51
  501. package/node_modules/@conform-to/zod/coercion.d.ts +0 -37
  502. package/node_modules/@conform-to/zod/coercion.js +0 -171
  503. package/node_modules/@conform-to/zod/coercion.mjs +0 -164
  504. package/node_modules/@conform-to/zod/constraint.d.ts +0 -5
  505. package/node_modules/@conform-to/zod/constraint.js +0 -103
  506. package/node_modules/@conform-to/zod/constraint.mjs +0 -99
  507. package/node_modules/@conform-to/zod/index.d.ts +0 -2
  508. package/node_modules/@conform-to/zod/index.js +0 -12
  509. package/node_modules/@conform-to/zod/index.mjs +0 -2
  510. package/node_modules/@conform-to/zod/package.json +0 -61
  511. package/node_modules/@conform-to/zod/parse.d.ts +0 -46
  512. package/node_modules/@conform-to/zod/parse.js +0 -64
  513. package/node_modules/@conform-to/zod/parse.mjs +0 -59
  514. package/node_modules/@epic-web/client-hints/README.md +0 -221
  515. package/node_modules/@epic-web/client-hints/dist/color-scheme.d.ts +0 -12
  516. package/node_modules/@epic-web/client-hints/dist/color-scheme.js +0 -25
  517. package/node_modules/@epic-web/client-hints/dist/index.d.ts +0 -6
  518. package/node_modules/@epic-web/client-hints/dist/index.js +0 -79
  519. package/node_modules/@epic-web/client-hints/dist/reduced-motion.d.ts +0 -12
  520. package/node_modules/@epic-web/client-hints/dist/reduced-motion.js +0 -25
  521. package/node_modules/@epic-web/client-hints/dist/time-zone.d.ts +0 -5
  522. package/node_modules/@epic-web/client-hints/dist/time-zone.js +0 -5
  523. package/node_modules/@epic-web/client-hints/dist/utils.d.ts +0 -9
  524. package/node_modules/@epic-web/client-hints/dist/utils.js +0 -1
  525. package/node_modules/@epic-web/client-hints/package.json +0 -71
  526. package/node_modules/@epic-web/restore-scroll/README.md +0 -108
  527. package/node_modules/@epic-web/restore-scroll/dist/index.d.ts +0 -7
  528. package/node_modules/@epic-web/restore-scroll/dist/index.js +0 -85
  529. package/node_modules/@epic-web/restore-scroll/package.json +0 -64
  530. package/node_modules/@floating-ui/core/LICENSE +0 -20
  531. package/node_modules/@floating-ui/core/README.md +0 -4
  532. package/node_modules/@floating-ui/core/dist/floating-ui.core.browser.min.mjs +0 -1
  533. package/node_modules/@floating-ui/core/dist/floating-ui.core.browser.mjs +0 -1164
  534. package/node_modules/@floating-ui/core/dist/floating-ui.core.d.mts +0 -521
  535. package/node_modules/@floating-ui/core/dist/floating-ui.core.d.ts +0 -521
  536. package/node_modules/@floating-ui/core/dist/floating-ui.core.esm.js +0 -1036
  537. package/node_modules/@floating-ui/core/dist/floating-ui.core.mjs +0 -1036
  538. package/node_modules/@floating-ui/core/dist/floating-ui.core.umd.js +0 -1183
  539. package/node_modules/@floating-ui/core/dist/floating-ui.core.umd.min.js +0 -1
  540. package/node_modules/@floating-ui/core/package.json +0 -63
  541. package/node_modules/@floating-ui/dom/LICENSE +0 -20
  542. package/node_modules/@floating-ui/dom/README.md +0 -4
  543. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.browser.min.mjs +0 -1
  544. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.browser.mjs +0 -853
  545. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.d.mts +0 -356
  546. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.d.ts +0 -356
  547. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.esm.js +0 -704
  548. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs +0 -704
  549. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.umd.js +0 -872
  550. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.umd.min.js +0 -1
  551. package/node_modules/@floating-ui/dom/package.json +0 -71
  552. package/node_modules/@floating-ui/react-dom/LICENSE +0 -20
  553. package/node_modules/@floating-ui/react-dom/README.md +0 -3
  554. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.d.mts +0 -307
  555. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.d.ts +0 -307
  556. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.esm.js +0 -363
  557. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs +0 -363
  558. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.umd.js +0 -414
  559. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.umd.min.js +0 -1
  560. package/node_modules/@floating-ui/react-dom/package.json +0 -77
  561. package/node_modules/@floating-ui/utils/LICENSE +0 -20
  562. package/node_modules/@floating-ui/utils/README.md +0 -4
  563. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.d.mts +0 -103
  564. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.d.ts +0 -103
  565. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.d.mts +0 -45
  566. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.d.ts +0 -45
  567. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.esm.js +0 -139
  568. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs +0 -139
  569. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.umd.js +0 -165
  570. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.umd.min.js +0 -1
  571. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.esm.js +0 -138
  572. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs +0 -138
  573. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.umd.js +0 -169
  574. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.umd.min.js +0 -1
  575. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.d.ts +0 -45
  576. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.esm.js +0 -139
  577. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.umd.js +0 -165
  578. package/node_modules/@floating-ui/utils/dom/package.json +0 -6
  579. package/node_modules/@floating-ui/utils/package.json +0 -70
  580. package/node_modules/@radix-ui/number/README.md +0 -13
  581. package/node_modules/@radix-ui/number/dist/index.d.mts +0 -3
  582. package/node_modules/@radix-ui/number/dist/index.d.ts +0 -3
  583. package/node_modules/@radix-ui/number/dist/index.js +0 -31
  584. package/node_modules/@radix-ui/number/dist/index.js.map +0 -7
  585. package/node_modules/@radix-ui/number/dist/index.mjs +0 -8
  586. package/node_modules/@radix-ui/number/dist/index.mjs.map +0 -7
  587. package/node_modules/@radix-ui/number/package.json +0 -38
  588. package/node_modules/@radix-ui/primitive/README.md +0 -13
  589. package/node_modules/@radix-ui/primitive/dist/index.d.mts +0 -5
  590. package/node_modules/@radix-ui/primitive/dist/index.d.ts +0 -5
  591. package/node_modules/@radix-ui/primitive/dist/index.js +0 -36
  592. package/node_modules/@radix-ui/primitive/dist/index.js.map +0 -7
  593. package/node_modules/@radix-ui/primitive/dist/index.mjs +0 -13
  594. package/node_modules/@radix-ui/primitive/dist/index.mjs.map +0 -7
  595. package/node_modules/@radix-ui/primitive/package.json +0 -38
  596. package/node_modules/@radix-ui/react-accordion/README.md +0 -13
  597. package/node_modules/@radix-ui/react-accordion/dist/index.d.mts +0 -125
  598. package/node_modules/@radix-ui/react-accordion/dist/index.d.ts +0 -125
  599. package/node_modules/@radix-ui/react-accordion/dist/index.js +0 -350
  600. package/node_modules/@radix-ui/react-accordion/dist/index.js.map +0 -7
  601. package/node_modules/@radix-ui/react-accordion/dist/index.mjs +0 -318
  602. package/node_modules/@radix-ui/react-accordion/dist/index.mjs.map +0 -7
  603. package/node_modules/@radix-ui/react-accordion/package.json +0 -63
  604. package/node_modules/@radix-ui/react-arrow/README.md +0 -13
  605. package/node_modules/@radix-ui/react-arrow/dist/index.d.mts +0 -10
  606. package/node_modules/@radix-ui/react-arrow/dist/index.d.ts +0 -10
  607. package/node_modules/@radix-ui/react-arrow/dist/index.js +0 -60
  608. package/node_modules/@radix-ui/react-arrow/dist/index.js.map +0 -7
  609. package/node_modules/@radix-ui/react-arrow/dist/index.mjs +0 -27
  610. package/node_modules/@radix-ui/react-arrow/dist/index.mjs.map +0 -7
  611. package/node_modules/@radix-ui/react-arrow/package.json +0 -55
  612. package/node_modules/@radix-ui/react-collapsible/README.md +0 -13
  613. package/node_modules/@radix-ui/react-collapsible/dist/index.d.mts +0 -43
  614. package/node_modules/@radix-ui/react-collapsible/dist/index.d.ts +0 -43
  615. package/node_modules/@radix-ui/react-collapsible/dist/index.js +0 -186
  616. package/node_modules/@radix-ui/react-collapsible/dist/index.js.map +0 -7
  617. package/node_modules/@radix-ui/react-collapsible/dist/index.mjs +0 -154
  618. package/node_modules/@radix-ui/react-collapsible/dist/index.mjs.map +0 -7
  619. package/node_modules/@radix-ui/react-collapsible/package.json +0 -62
  620. package/node_modules/@radix-ui/react-collection/README.md +0 -13
  621. package/node_modules/@radix-ui/react-collection/dist/index.d.mts +0 -34
  622. package/node_modules/@radix-ui/react-collection/dist/index.d.ts +0 -34
  623. package/node_modules/@radix-ui/react-collection/dist/index.js +0 -104
  624. package/node_modules/@radix-ui/react-collection/dist/index.js.map +0 -7
  625. package/node_modules/@radix-ui/react-collection/dist/index.mjs +0 -72
  626. package/node_modules/@radix-ui/react-collection/dist/index.mjs.map +0 -7
  627. package/node_modules/@radix-ui/react-collection/package.json +0 -58
  628. package/node_modules/@radix-ui/react-compose-refs/README.md +0 -13
  629. package/node_modules/@radix-ui/react-compose-refs/dist/index.d.mts +0 -15
  630. package/node_modules/@radix-ui/react-compose-refs/dist/index.d.ts +0 -15
  631. package/node_modules/@radix-ui/react-compose-refs/dist/index.js +0 -53
  632. package/node_modules/@radix-ui/react-compose-refs/dist/index.js.map +0 -7
  633. package/node_modules/@radix-ui/react-compose-refs/dist/index.mjs +0 -20
  634. package/node_modules/@radix-ui/react-compose-refs/dist/index.mjs.map +0 -7
  635. package/node_modules/@radix-ui/react-compose-refs/package.json +0 -47
  636. package/node_modules/@radix-ui/react-context/README.md +0 -13
  637. package/node_modules/@radix-ui/react-context/dist/index.d.mts +0 -28
  638. package/node_modules/@radix-ui/react-context/dist/index.d.ts +0 -28
  639. package/node_modules/@radix-ui/react-context/dist/index.js +0 -114
  640. package/node_modules/@radix-ui/react-context/dist/index.js.map +0 -7
  641. package/node_modules/@radix-ui/react-context/dist/index.mjs +0 -81
  642. package/node_modules/@radix-ui/react-context/dist/index.mjs.map +0 -7
  643. package/node_modules/@radix-ui/react-context/package.json +0 -47
  644. package/node_modules/@radix-ui/react-direction/README.md +0 -13
  645. package/node_modules/@radix-ui/react-direction/dist/index.d.mts +0 -12
  646. package/node_modules/@radix-ui/react-direction/dist/index.d.ts +0 -12
  647. package/node_modules/@radix-ui/react-direction/dist/index.js +0 -52
  648. package/node_modules/@radix-ui/react-direction/dist/index.js.map +0 -7
  649. package/node_modules/@radix-ui/react-direction/dist/index.mjs +0 -19
  650. package/node_modules/@radix-ui/react-direction/dist/index.mjs.map +0 -7
  651. package/node_modules/@radix-ui/react-direction/package.json +0 -47
  652. package/node_modules/@radix-ui/react-dismissable-layer/README.md +0 -13
  653. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.d.mts +0 -51
  654. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.d.ts +0 -51
  655. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +0 -253
  656. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.js.map +0 -7
  657. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs +0 -221
  658. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs.map +0 -7
  659. package/node_modules/@radix-ui/react-dismissable-layer/package.json +0 -62
  660. package/node_modules/@radix-ui/react-focus-guards/README.md +0 -13
  661. package/node_modules/@radix-ui/react-focus-guards/dist/index.d.mts +0 -9
  662. package/node_modules/@radix-ui/react-focus-guards/dist/index.d.ts +0 -9
  663. package/node_modules/@radix-ui/react-focus-guards/dist/index.js +0 -69
  664. package/node_modules/@radix-ui/react-focus-guards/dist/index.js.map +0 -7
  665. package/node_modules/@radix-ui/react-focus-guards/dist/index.mjs +0 -37
  666. package/node_modules/@radix-ui/react-focus-guards/dist/index.mjs.map +0 -7
  667. package/node_modules/@radix-ui/react-focus-guards/package.json +0 -47
  668. package/node_modules/@radix-ui/react-focus-scope/README.md +0 -13
  669. package/node_modules/@radix-ui/react-focus-scope/dist/index.d.mts +0 -32
  670. package/node_modules/@radix-ui/react-focus-scope/dist/index.d.ts +0 -32
  671. package/node_modules/@radix-ui/react-focus-scope/dist/index.js +0 -246
  672. package/node_modules/@radix-ui/react-focus-scope/dist/index.js.map +0 -7
  673. package/node_modules/@radix-ui/react-focus-scope/dist/index.mjs +0 -214
  674. package/node_modules/@radix-ui/react-focus-scope/dist/index.mjs.map +0 -7
  675. package/node_modules/@radix-ui/react-focus-scope/package.json +0 -57
  676. package/node_modules/@radix-ui/react-id/README.md +0 -13
  677. package/node_modules/@radix-ui/react-id/dist/index.d.mts +0 -3
  678. package/node_modules/@radix-ui/react-id/dist/index.d.ts +0 -3
  679. package/node_modules/@radix-ui/react-id/dist/index.js +0 -49
  680. package/node_modules/@radix-ui/react-id/dist/index.js.map +0 -7
  681. package/node_modules/@radix-ui/react-id/dist/index.mjs +0 -16
  682. package/node_modules/@radix-ui/react-id/dist/index.mjs.map +0 -7
  683. package/node_modules/@radix-ui/react-id/package.json +0 -50
  684. package/node_modules/@radix-ui/react-popover/README.md +0 -13
  685. package/node_modules/@radix-ui/react-popover/dist/index.d.mts +0 -95
  686. package/node_modules/@radix-ui/react-popover/dist/index.d.ts +0 -95
  687. package/node_modules/@radix-ui/react-popover/dist/index.js +0 -350
  688. package/node_modules/@radix-ui/react-popover/dist/index.js.map +0 -7
  689. package/node_modules/@radix-ui/react-popover/dist/index.mjs +0 -318
  690. package/node_modules/@radix-ui/react-popover/dist/index.mjs.map +0 -7
  691. package/node_modules/@radix-ui/react-popover/package.json +0 -69
  692. package/node_modules/@radix-ui/react-popper/README.md +0 -13
  693. package/node_modules/@radix-ui/react-popper/dist/index.d.mts +0 -56
  694. package/node_modules/@radix-ui/react-popper/dist/index.d.ts +0 -56
  695. package/node_modules/@radix-ui/react-popper/dist/index.js +0 -325
  696. package/node_modules/@radix-ui/react-popper/dist/index.js.map +0 -7
  697. package/node_modules/@radix-ui/react-popper/dist/index.mjs +0 -303
  698. package/node_modules/@radix-ui/react-popper/dist/index.mjs.map +0 -7
  699. package/node_modules/@radix-ui/react-popper/package.json +0 -64
  700. package/node_modules/@radix-ui/react-portal/README.md +0 -13
  701. package/node_modules/@radix-ui/react-portal/dist/index.d.mts +0 -14
  702. package/node_modules/@radix-ui/react-portal/dist/index.d.ts +0 -14
  703. package/node_modules/@radix-ui/react-portal/dist/index.js +0 -55
  704. package/node_modules/@radix-ui/react-portal/dist/index.js.map +0 -7
  705. package/node_modules/@radix-ui/react-portal/dist/index.mjs +0 -23
  706. package/node_modules/@radix-ui/react-portal/dist/index.mjs.map +0 -7
  707. package/node_modules/@radix-ui/react-portal/package.json +0 -56
  708. package/node_modules/@radix-ui/react-presence/README.md +0 -13
  709. package/node_modules/@radix-ui/react-presence/dist/index.d.mts +0 -11
  710. package/node_modules/@radix-ui/react-presence/dist/index.d.ts +0 -11
  711. package/node_modules/@radix-ui/react-presence/dist/index.js +0 -158
  712. package/node_modules/@radix-ui/react-presence/dist/index.js.map +0 -7
  713. package/node_modules/@radix-ui/react-presence/dist/index.mjs +0 -126
  714. package/node_modules/@radix-ui/react-presence/dist/index.mjs.map +0 -7
  715. package/node_modules/@radix-ui/react-presence/package.json +0 -56
  716. package/node_modules/@radix-ui/react-primitive/README.md +0 -13
  717. package/node_modules/@radix-ui/react-primitive/dist/index.d.mts +0 -52
  718. package/node_modules/@radix-ui/react-primitive/dist/index.d.ts +0 -52
  719. package/node_modules/@radix-ui/react-primitive/dist/index.js +0 -78
  720. package/node_modules/@radix-ui/react-primitive/dist/index.js.map +0 -7
  721. package/node_modules/@radix-ui/react-primitive/dist/index.mjs +0 -45
  722. package/node_modules/@radix-ui/react-primitive/dist/index.mjs.map +0 -7
  723. package/node_modules/@radix-ui/react-primitive/package.json +0 -58
  724. package/node_modules/@radix-ui/react-roving-focus/README.md +0 -13
  725. package/node_modules/@radix-ui/react-roving-focus/dist/index.d.mts +0 -55
  726. package/node_modules/@radix-ui/react-roving-focus/dist/index.d.ts +0 -55
  727. package/node_modules/@radix-ui/react-roving-focus/dist/index.js +0 -260
  728. package/node_modules/@radix-ui/react-roving-focus/dist/index.js.map +0 -7
  729. package/node_modules/@radix-ui/react-roving-focus/dist/index.mjs +0 -228
  730. package/node_modules/@radix-ui/react-roving-focus/dist/index.mjs.map +0 -7
  731. package/node_modules/@radix-ui/react-roving-focus/package.json +0 -63
  732. package/node_modules/@radix-ui/react-select/README.md +0 -13
  733. package/node_modules/@radix-ui/react-select/dist/index.d.mts +0 -144
  734. package/node_modules/@radix-ui/react-select/dist/index.d.ts +0 -144
  735. package/node_modules/@radix-ui/react-select/dist/index.js +0 -1182
  736. package/node_modules/@radix-ui/react-select/dist/index.js.map +0 -7
  737. package/node_modules/@radix-ui/react-select/dist/index.mjs +0 -1150
  738. package/node_modules/@radix-ui/react-select/dist/index.mjs.map +0 -7
  739. package/node_modules/@radix-ui/react-select/package.json +0 -75
  740. package/node_modules/@radix-ui/react-slot/README.md +0 -13
  741. package/node_modules/@radix-ui/react-slot/dist/index.d.mts +0 -13
  742. package/node_modules/@radix-ui/react-slot/dist/index.d.ts +0 -13
  743. package/node_modules/@radix-ui/react-slot/dist/index.js +0 -118
  744. package/node_modules/@radix-ui/react-slot/dist/index.js.map +0 -7
  745. package/node_modules/@radix-ui/react-slot/dist/index.mjs +0 -85
  746. package/node_modules/@radix-ui/react-slot/dist/index.mjs.map +0 -7
  747. package/node_modules/@radix-ui/react-slot/package.json +0 -50
  748. package/node_modules/@radix-ui/react-tabs/README.md +0 -13
  749. package/node_modules/@radix-ui/react-tabs/dist/index.d.mts +0 -66
  750. package/node_modules/@radix-ui/react-tabs/dist/index.d.ts +0 -66
  751. package/node_modules/@radix-ui/react-tabs/dist/index.js +0 -231
  752. package/node_modules/@radix-ui/react-tabs/dist/index.js.map +0 -7
  753. package/node_modules/@radix-ui/react-tabs/dist/index.mjs +0 -199
  754. package/node_modules/@radix-ui/react-tabs/dist/index.mjs.map +0 -7
  755. package/node_modules/@radix-ui/react-tabs/package.json +0 -62
  756. package/node_modules/@radix-ui/react-toast/README.md +0 -13
  757. package/node_modules/@radix-ui/react-toast/dist/index.d.mts +0 -130
  758. package/node_modules/@radix-ui/react-toast/dist/index.d.ts +0 -130
  759. package/node_modules/@radix-ui/react-toast/dist/index.js +0 -681
  760. package/node_modules/@radix-ui/react-toast/dist/index.js.map +0 -7
  761. package/node_modules/@radix-ui/react-toast/dist/index.mjs +0 -649
  762. package/node_modules/@radix-ui/react-toast/dist/index.mjs.map +0 -7
  763. package/node_modules/@radix-ui/react-toast/package.json +0 -66
  764. package/node_modules/@radix-ui/react-use-callback-ref/README.md +0 -13
  765. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.d.mts +0 -7
  766. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.d.ts +0 -7
  767. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.js +0 -46
  768. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.js.map +0 -7
  769. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs +0 -13
  770. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs.map +0 -7
  771. package/node_modules/@radix-ui/react-use-callback-ref/package.json +0 -47
  772. package/node_modules/@radix-ui/react-use-controllable-state/README.md +0 -13
  773. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.d.mts +0 -10
  774. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.d.ts +0 -10
  775. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +0 -80
  776. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.js.map +0 -7
  777. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs +0 -47
  778. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs.map +0 -7
  779. package/node_modules/@radix-ui/react-use-controllable-state/package.json +0 -50
  780. package/node_modules/@radix-ui/react-use-escape-keydown/README.md +0 -13
  781. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.d.mts +0 -6
  782. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.d.ts +0 -6
  783. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js +0 -52
  784. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js.map +0 -7
  785. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs +0 -19
  786. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs.map +0 -7
  787. package/node_modules/@radix-ui/react-use-escape-keydown/package.json +0 -50
  788. package/node_modules/@radix-ui/react-use-layout-effect/README.md +0 -13
  789. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.d.mts +0 -12
  790. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.d.ts +0 -12
  791. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.js +0 -41
  792. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.js.map +0 -7
  793. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs +0 -8
  794. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs.map +0 -7
  795. package/node_modules/@radix-ui/react-use-layout-effect/package.json +0 -47
  796. package/node_modules/@radix-ui/react-use-previous/README.md +0 -13
  797. package/node_modules/@radix-ui/react-use-previous/dist/index.d.mts +0 -3
  798. package/node_modules/@radix-ui/react-use-previous/dist/index.d.ts +0 -3
  799. package/node_modules/@radix-ui/react-use-previous/dist/index.js +0 -49
  800. package/node_modules/@radix-ui/react-use-previous/dist/index.js.map +0 -7
  801. package/node_modules/@radix-ui/react-use-previous/dist/index.mjs +0 -16
  802. package/node_modules/@radix-ui/react-use-previous/dist/index.mjs.map +0 -7
  803. package/node_modules/@radix-ui/react-use-previous/package.json +0 -47
  804. package/node_modules/@radix-ui/react-use-rect/README.md +0 -13
  805. package/node_modules/@radix-ui/react-use-rect/dist/index.d.mts +0 -9
  806. package/node_modules/@radix-ui/react-use-rect/dist/index.d.ts +0 -9
  807. package/node_modules/@radix-ui/react-use-rect/dist/index.js +0 -54
  808. package/node_modules/@radix-ui/react-use-rect/dist/index.js.map +0 -7
  809. package/node_modules/@radix-ui/react-use-rect/dist/index.mjs +0 -21
  810. package/node_modules/@radix-ui/react-use-rect/dist/index.mjs.map +0 -7
  811. package/node_modules/@radix-ui/react-use-rect/package.json +0 -50
  812. package/node_modules/@radix-ui/react-use-size/README.md +0 -13
  813. package/node_modules/@radix-ui/react-use-size/dist/index.d.mts +0 -6
  814. package/node_modules/@radix-ui/react-use-size/dist/index.d.ts +0 -6
  815. package/node_modules/@radix-ui/react-use-size/dist/index.js +0 -74
  816. package/node_modules/@radix-ui/react-use-size/dist/index.js.map +0 -7
  817. package/node_modules/@radix-ui/react-use-size/dist/index.mjs +0 -41
  818. package/node_modules/@radix-ui/react-use-size/dist/index.mjs.map +0 -7
  819. package/node_modules/@radix-ui/react-use-size/package.json +0 -53
  820. package/node_modules/@radix-ui/react-visually-hidden/README.md +0 -13
  821. package/node_modules/@radix-ui/react-visually-hidden/dist/index.d.mts +0 -10
  822. package/node_modules/@radix-ui/react-visually-hidden/dist/index.d.ts +0 -10
  823. package/node_modules/@radix-ui/react-visually-hidden/dist/index.js +0 -70
  824. package/node_modules/@radix-ui/react-visually-hidden/dist/index.js.map +0 -7
  825. package/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs +0 -37
  826. package/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs.map +0 -7
  827. package/node_modules/@radix-ui/react-visually-hidden/package.json +0 -55
  828. package/node_modules/@radix-ui/rect/README.md +0 -13
  829. package/node_modules/@radix-ui/rect/dist/index.d.mts +0 -16
  830. package/node_modules/@radix-ui/rect/dist/index.d.ts +0 -16
  831. package/node_modules/@radix-ui/rect/dist/index.js +0 -73
  832. package/node_modules/@radix-ui/rect/dist/index.js.map +0 -7
  833. package/node_modules/@radix-ui/rect/dist/index.mjs +0 -50
  834. package/node_modules/@radix-ui/rect/dist/index.mjs.map +0 -7
  835. package/node_modules/@radix-ui/rect/package.json +0 -38
  836. package/node_modules/@remix-run/react/CHANGELOG.md +0 -964
  837. package/node_modules/@remix-run/react/LICENSE.md +0 -22
  838. package/node_modules/@remix-run/react/README.md +0 -13
  839. package/node_modules/@remix-run/react/dist/_virtual/_rollupPluginBabelHelpers.js +0 -30
  840. package/node_modules/@remix-run/react/dist/browser.d.ts +0 -37
  841. package/node_modules/@remix-run/react/dist/browser.js +0 -268
  842. package/node_modules/@remix-run/react/dist/components.d.ts +0 -137
  843. package/node_modules/@remix-run/react/dist/components.js +0 -911
  844. package/node_modules/@remix-run/react/dist/data.d.ts +0 -15
  845. package/node_modules/@remix-run/react/dist/data.js +0 -280
  846. package/node_modules/@remix-run/react/dist/entry.d.ts +0 -51
  847. package/node_modules/@remix-run/react/dist/errorBoundaries.d.ts +0 -36
  848. package/node_modules/@remix-run/react/dist/errorBoundaries.js +0 -186
  849. package/node_modules/@remix-run/react/dist/errors.d.ts +0 -2
  850. package/node_modules/@remix-run/react/dist/errors.js +0 -53
  851. package/node_modules/@remix-run/react/dist/esm/_virtual/_rollupPluginBabelHelpers.js +0 -26
  852. package/node_modules/@remix-run/react/dist/esm/browser.js +0 -308
  853. package/node_modules/@remix-run/react/dist/esm/components.js +0 -878
  854. package/node_modules/@remix-run/react/dist/esm/data.js +0 -267
  855. package/node_modules/@remix-run/react/dist/esm/errorBoundaries.js +0 -160
  856. package/node_modules/@remix-run/react/dist/esm/errors.js +0 -49
  857. package/node_modules/@remix-run/react/dist/esm/fallback.js +0 -35
  858. package/node_modules/@remix-run/react/dist/esm/fog-of-war.js +0 -226
  859. package/node_modules/@remix-run/react/dist/esm/index.js +0 -17
  860. package/node_modules/@remix-run/react/dist/esm/invariant.js +0 -17
  861. package/node_modules/@remix-run/react/dist/esm/links.js +0 -258
  862. package/node_modules/@remix-run/react/dist/esm/markup.js +0 -34
  863. package/node_modules/@remix-run/react/dist/esm/routeModules.js +0 -89
  864. package/node_modules/@remix-run/react/dist/esm/routes.js +0 -411
  865. package/node_modules/@remix-run/react/dist/esm/scroll-restoration.js +0 -84
  866. package/node_modules/@remix-run/react/dist/esm/server.js +0 -93
  867. package/node_modules/@remix-run/react/dist/esm/single-fetch.js +0 -309
  868. package/node_modules/@remix-run/react/dist/fallback.d.ts +0 -2
  869. package/node_modules/@remix-run/react/dist/fallback.js +0 -59
  870. package/node_modules/@remix-run/react/dist/fog-of-war.d.ts +0 -37
  871. package/node_modules/@remix-run/react/dist/fog-of-war.js +0 -254
  872. package/node_modules/@remix-run/react/dist/index.d.ts +0 -16
  873. package/node_modules/@remix-run/react/dist/index.js +0 -227
  874. package/node_modules/@remix-run/react/dist/invariant.d.ts +0 -2
  875. package/node_modules/@remix-run/react/dist/invariant.js +0 -19
  876. package/node_modules/@remix-run/react/dist/links.d.ts +0 -128
  877. package/node_modules/@remix-run/react/dist/links.js +0 -268
  878. package/node_modules/@remix-run/react/dist/markup.d.ts +0 -5
  879. package/node_modules/@remix-run/react/dist/markup.js +0 -39
  880. package/node_modules/@remix-run/react/dist/routeModules.d.ts +0 -132
  881. package/node_modules/@remix-run/react/dist/routeModules.js +0 -111
  882. package/node_modules/@remix-run/react/dist/routes.d.ts +0 -32
  883. package/node_modules/@remix-run/react/dist/routes.js +0 -438
  884. package/node_modules/@remix-run/react/dist/scroll-restoration.d.ts +0 -12
  885. package/node_modules/@remix-run/react/dist/scroll-restoration.js +0 -108
  886. package/node_modules/@remix-run/react/dist/server.d.ts +0 -14
  887. package/node_modules/@remix-run/react/dist/server.js +0 -117
  888. package/node_modules/@remix-run/react/dist/single-fetch.d.ts +0 -34
  889. package/node_modules/@remix-run/react/dist/single-fetch.js +0 -339
  890. package/node_modules/@remix-run/react/dist/warnings.d.ts +0 -1
  891. package/node_modules/@remix-run/react/future/single-fetch.d.ts +0 -73
  892. package/node_modules/@remix-run/react/package.json +0 -59
  893. package/node_modules/@remix-run/router/CHANGELOG.md +0 -747
  894. package/node_modules/@remix-run/router/LICENSE.md +0 -23
  895. package/node_modules/@remix-run/router/README.md +0 -135
  896. package/node_modules/@remix-run/router/dist/history.d.ts +0 -250
  897. package/node_modules/@remix-run/router/dist/index.d.ts +0 -9
  898. package/node_modules/@remix-run/router/dist/router.cjs.js +0 -5407
  899. package/node_modules/@remix-run/router/dist/router.cjs.js.map +0 -1
  900. package/node_modules/@remix-run/router/dist/router.d.ts +0 -523
  901. package/node_modules/@remix-run/router/dist/router.js +0 -4856
  902. package/node_modules/@remix-run/router/dist/router.js.map +0 -1
  903. package/node_modules/@remix-run/router/dist/router.umd.js +0 -5413
  904. package/node_modules/@remix-run/router/dist/router.umd.js.map +0 -1
  905. package/node_modules/@remix-run/router/dist/router.umd.min.js +0 -12
  906. package/node_modules/@remix-run/router/dist/router.umd.min.js.map +0 -1
  907. package/node_modules/@remix-run/router/dist/utils.d.ts +0 -528
  908. package/node_modules/@remix-run/router/history.ts +0 -746
  909. package/node_modules/@remix-run/router/index.ts +0 -101
  910. package/node_modules/@remix-run/router/package.json +0 -33
  911. package/node_modules/@remix-run/router/router.ts +0 -5760
  912. package/node_modules/@remix-run/router/utils.ts +0 -1673
  913. package/node_modules/@remix-run/server-runtime/CHANGELOG.md +0 -1023
  914. package/node_modules/@remix-run/server-runtime/LICENSE.md +0 -22
  915. package/node_modules/@remix-run/server-runtime/README.md +0 -26
  916. package/node_modules/@remix-run/server-runtime/dist/build.d.ts +0 -39
  917. package/node_modules/@remix-run/server-runtime/dist/cookies.d.ts +0 -69
  918. package/node_modules/@remix-run/server-runtime/dist/cookies.js +0 -173
  919. package/node_modules/@remix-run/server-runtime/dist/crypto.d.ts +0 -2
  920. package/node_modules/@remix-run/server-runtime/dist/data.d.ts +0 -33
  921. package/node_modules/@remix-run/server-runtime/dist/data.js +0 -138
  922. package/node_modules/@remix-run/server-runtime/dist/deprecations.d.ts +0 -1
  923. package/node_modules/@remix-run/server-runtime/dist/deprecations.js +0 -19
  924. package/node_modules/@remix-run/server-runtime/dist/dev.d.ts +0 -10
  925. package/node_modules/@remix-run/server-runtime/dist/dev.js +0 -53
  926. package/node_modules/@remix-run/server-runtime/dist/entry.d.ts +0 -43
  927. package/node_modules/@remix-run/server-runtime/dist/entry.js +0 -22
  928. package/node_modules/@remix-run/server-runtime/dist/errors.d.ts +0 -51
  929. package/node_modules/@remix-run/server-runtime/dist/errors.js +0 -122
  930. package/node_modules/@remix-run/server-runtime/dist/esm/cookies.js +0 -168
  931. package/node_modules/@remix-run/server-runtime/dist/esm/data.js +0 -133
  932. package/node_modules/@remix-run/server-runtime/dist/esm/deprecations.js +0 -15
  933. package/node_modules/@remix-run/server-runtime/dist/esm/dev.js +0 -46
  934. package/node_modules/@remix-run/server-runtime/dist/esm/entry.js +0 -18
  935. package/node_modules/@remix-run/server-runtime/dist/esm/errors.js +0 -115
  936. package/node_modules/@remix-run/server-runtime/dist/esm/formData.js +0 -55
  937. package/node_modules/@remix-run/server-runtime/dist/esm/headers.js +0 -90
  938. package/node_modules/@remix-run/server-runtime/dist/esm/index.js +0 -21
  939. package/node_modules/@remix-run/server-runtime/dist/esm/invariant.js +0 -18
  940. package/node_modules/@remix-run/server-runtime/dist/esm/markup.js +0 -29
  941. package/node_modules/@remix-run/server-runtime/dist/esm/mode.js +0 -24
  942. package/node_modules/@remix-run/server-runtime/dist/esm/responses.js +0 -123
  943. package/node_modules/@remix-run/server-runtime/dist/esm/routeMatching.js +0 -23
  944. package/node_modules/@remix-run/server-runtime/dist/esm/routes.js +0 -81
  945. package/node_modules/@remix-run/server-runtime/dist/esm/server.js +0 -524
  946. package/node_modules/@remix-run/server-runtime/dist/esm/serverHandoff.js +0 -20
  947. package/node_modules/@remix-run/server-runtime/dist/esm/sessions/cookieStorage.js +0 -51
  948. package/node_modules/@remix-run/server-runtime/dist/esm/sessions/memoryStorage.js +0 -61
  949. package/node_modules/@remix-run/server-runtime/dist/esm/sessions.js +0 -145
  950. package/node_modules/@remix-run/server-runtime/dist/esm/single-fetch.js +0 -450
  951. package/node_modules/@remix-run/server-runtime/dist/esm/upload/errors.js +0 -19
  952. package/node_modules/@remix-run/server-runtime/dist/esm/upload/memoryUploadHandler.js +0 -50
  953. package/node_modules/@remix-run/server-runtime/dist/esm/warnings.js +0 -19
  954. package/node_modules/@remix-run/server-runtime/dist/formData.d.ts +0 -15
  955. package/node_modules/@remix-run/server-runtime/dist/formData.js +0 -60
  956. package/node_modules/@remix-run/server-runtime/dist/headers.d.ts +0 -3
  957. package/node_modules/@remix-run/server-runtime/dist/headers.js +0 -94
  958. package/node_modules/@remix-run/server-runtime/dist/index.d.ts +0 -14
  959. package/node_modules/@remix-run/server-runtime/dist/index.js +0 -50
  960. package/node_modules/@remix-run/server-runtime/dist/interface.d.ts +0 -6
  961. package/node_modules/@remix-run/server-runtime/dist/invariant.d.ts +0 -2
  962. package/node_modules/@remix-run/server-runtime/dist/invariant.js +0 -22
  963. package/node_modules/@remix-run/server-runtime/dist/jsonify.d.ts +0 -33
  964. package/node_modules/@remix-run/server-runtime/dist/links.d.ts +0 -104
  965. package/node_modules/@remix-run/server-runtime/dist/markup.d.ts +0 -1
  966. package/node_modules/@remix-run/server-runtime/dist/markup.js +0 -33
  967. package/node_modules/@remix-run/server-runtime/dist/mode.d.ts +0 -9
  968. package/node_modules/@remix-run/server-runtime/dist/mode.js +0 -29
  969. package/node_modules/@remix-run/server-runtime/dist/reexport.d.ts +0 -14
  970. package/node_modules/@remix-run/server-runtime/dist/responses.d.ts +0 -47
  971. package/node_modules/@remix-run/server-runtime/dist/responses.js +0 -135
  972. package/node_modules/@remix-run/server-runtime/dist/routeMatching.d.ts +0 -8
  973. package/node_modules/@remix-run/server-runtime/dist/routeMatching.js +0 -27
  974. package/node_modules/@remix-run/server-runtime/dist/routeModules.d.ts +0 -214
  975. package/node_modules/@remix-run/server-runtime/dist/routes.d.ts +0 -31
  976. package/node_modules/@remix-run/server-runtime/dist/routes.js +0 -86
  977. package/node_modules/@remix-run/server-runtime/dist/serialize.d.ts +0 -25
  978. package/node_modules/@remix-run/server-runtime/dist/server.d.ts +0 -5
  979. package/node_modules/@remix-run/server-runtime/dist/server.js +0 -528
  980. package/node_modules/@remix-run/server-runtime/dist/serverHandoff.d.ts +0 -12
  981. package/node_modules/@remix-run/server-runtime/dist/serverHandoff.js +0 -24
  982. package/node_modules/@remix-run/server-runtime/dist/sessions/cookieStorage.d.ts +0 -23
  983. package/node_modules/@remix-run/server-runtime/dist/sessions/cookieStorage.js +0 -55
  984. package/node_modules/@remix-run/server-runtime/dist/sessions/memoryStorage.d.ts +0 -20
  985. package/node_modules/@remix-run/server-runtime/dist/sessions/memoryStorage.js +0 -65
  986. package/node_modules/@remix-run/server-runtime/dist/sessions.d.ts +0 -143
  987. package/node_modules/@remix-run/server-runtime/dist/sessions.js +0 -152
  988. package/node_modules/@remix-run/server-runtime/dist/single-fetch.d.ts +0 -90
  989. package/node_modules/@remix-run/server-runtime/dist/single-fetch.js +0 -468
  990. package/node_modules/@remix-run/server-runtime/dist/typecheck.d.ts +0 -4
  991. package/node_modules/@remix-run/server-runtime/dist/upload/errors.d.ts +0 -5
  992. package/node_modules/@remix-run/server-runtime/dist/upload/errors.js +0 -23
  993. package/node_modules/@remix-run/server-runtime/dist/upload/memoryUploadHandler.d.ts +0 -21
  994. package/node_modules/@remix-run/server-runtime/dist/upload/memoryUploadHandler.js +0 -54
  995. package/node_modules/@remix-run/server-runtime/dist/warnings.d.ts +0 -1
  996. package/node_modules/@remix-run/server-runtime/dist/warnings.js +0 -23
  997. package/node_modules/@remix-run/server-runtime/package.json +0 -51
  998. package/node_modules/@types/cookie/LICENSE +0 -21
  999. package/node_modules/@types/cookie/README.md +0 -15
  1000. package/node_modules/@types/cookie/index.d.ts +0 -154
  1001. package/node_modules/@types/cookie/package.json +0 -30
  1002. package/node_modules/@web3-storage/multipart-parser/README.md +0 -37
  1003. package/node_modules/@web3-storage/multipart-parser/cjs/src/index.js +0 -218
  1004. package/node_modules/@web3-storage/multipart-parser/cjs/src/search.js +0 -269
  1005. package/node_modules/@web3-storage/multipart-parser/cjs/src/utils.js +0 -37
  1006. package/node_modules/@web3-storage/multipart-parser/esm/package.json +0 -4
  1007. package/node_modules/@web3-storage/multipart-parser/esm/src/index.js +0 -219
  1008. package/node_modules/@web3-storage/multipart-parser/esm/src/search.js +0 -269
  1009. package/node_modules/@web3-storage/multipart-parser/esm/src/utils.js +0 -28
  1010. package/node_modules/@web3-storage/multipart-parser/index.js +0 -1
  1011. package/node_modules/@web3-storage/multipart-parser/package.json +0 -44
  1012. package/node_modules/@web3-storage/multipart-parser/src/index.js +0 -257
  1013. package/node_modules/@web3-storage/multipart-parser/src/search.js +0 -329
  1014. package/node_modules/@web3-storage/multipart-parser/src/utils.js +0 -43
  1015. package/node_modules/@web3-storage/multipart-parser/test/test.spec.js +0 -65
  1016. package/node_modules/@web3-storage/multipart-parser/tsconfig.json +0 -41
  1017. package/node_modules/@web3-storage/multipart-parser/types/index.d.ts +0 -15
  1018. package/node_modules/@web3-storage/multipart-parser/types/index.d.ts.map +0 -1
  1019. package/node_modules/@web3-storage/multipart-parser/types/search.d.ts +0 -36
  1020. package/node_modules/@web3-storage/multipart-parser/types/search.d.ts.map +0 -1
  1021. package/node_modules/@web3-storage/multipart-parser/types/utils.d.ts +0 -18
  1022. package/node_modules/@web3-storage/multipart-parser/types/utils.d.ts.map +0 -1
  1023. package/node_modules/aria-hidden/LICENSE +0 -21
  1024. package/node_modules/aria-hidden/README.md +0 -99
  1025. package/node_modules/aria-hidden/dist/es2015/index.d.ts +0 -29
  1026. package/node_modules/aria-hidden/dist/es2015/index.js +0 -166
  1027. package/node_modules/aria-hidden/dist/es2019/index.d.ts +0 -29
  1028. package/node_modules/aria-hidden/dist/es2019/index.js +0 -155
  1029. package/node_modules/aria-hidden/dist/es5/index.d.ts +0 -29
  1030. package/node_modules/aria-hidden/dist/es5/index.js +0 -173
  1031. package/node_modules/aria-hidden/package.json +0 -70
  1032. package/node_modules/assertion-error/LICENSE +0 -21
  1033. package/node_modules/assertion-error/README.md +0 -68
  1034. package/node_modules/assertion-error/index.d.ts +0 -27
  1035. package/node_modules/assertion-error/index.js +0 -60
  1036. package/node_modules/assertion-error/package.json +0 -32
  1037. package/node_modules/chai/CODEOWNERS +0 -1
  1038. package/node_modules/chai/CODE_OF_CONDUCT.md +0 -58
  1039. package/node_modules/chai/CONTRIBUTING.md +0 -218
  1040. package/node_modules/chai/History.md +0 -1059
  1041. package/node_modules/chai/LICENSE +0 -21
  1042. package/node_modules/chai/README.md +0 -154
  1043. package/node_modules/chai/ReleaseNotes.md +0 -737
  1044. package/node_modules/chai/chai.js +0 -4018
  1045. package/node_modules/chai/eslint.config.js +0 -12
  1046. package/node_modules/chai/index.js +0 -1
  1047. package/node_modules/chai/lib/chai/assertion.js +0 -164
  1048. package/node_modules/chai/lib/chai/config.js +0 -114
  1049. package/node_modules/chai/lib/chai/core/assertions.js +0 -3933
  1050. package/node_modules/chai/lib/chai/interface/assert.js +0 -3012
  1051. package/node_modules/chai/lib/chai/interface/expect.js +0 -55
  1052. package/node_modules/chai/lib/chai/interface/should.js +0 -221
  1053. package/node_modules/chai/lib/chai/utils/addChainableMethod.js +0 -147
  1054. package/node_modules/chai/lib/chai/utils/addLengthGuard.js +0 -60
  1055. package/node_modules/chai/lib/chai/utils/addMethod.js +0 -67
  1056. package/node_modules/chai/lib/chai/utils/addProperty.js +0 -71
  1057. package/node_modules/chai/lib/chai/utils/compareByInspect.js +0 -26
  1058. package/node_modules/chai/lib/chai/utils/expectTypes.js +0 -50
  1059. package/node_modules/chai/lib/chai/utils/flag.js +0 -33
  1060. package/node_modules/chai/lib/chai/utils/getActual.js +0 -20
  1061. package/node_modules/chai/lib/chai/utils/getEnumerableProperties.js +0 -25
  1062. package/node_modules/chai/lib/chai/utils/getMessage.js +0 -46
  1063. package/node_modules/chai/lib/chai/utils/getOperator.js +0 -58
  1064. package/node_modules/chai/lib/chai/utils/getOwnEnumerableProperties.js +0 -24
  1065. package/node_modules/chai/lib/chai/utils/getOwnEnumerablePropertySymbols.js +0 -26
  1066. package/node_modules/chai/lib/chai/utils/getProperties.js +0 -38
  1067. package/node_modules/chai/lib/chai/utils/index.js +0 -107
  1068. package/node_modules/chai/lib/chai/utils/inspect.js +0 -31
  1069. package/node_modules/chai/lib/chai/utils/isNaN.js +0 -26
  1070. package/node_modules/chai/lib/chai/utils/isProxyEnabled.js +0 -24
  1071. package/node_modules/chai/lib/chai/utils/objDisplay.js +0 -46
  1072. package/node_modules/chai/lib/chai/utils/overwriteChainableMethod.js +0 -68
  1073. package/node_modules/chai/lib/chai/utils/overwriteMethod.js +0 -91
  1074. package/node_modules/chai/lib/chai/utils/overwriteProperty.js +0 -90
  1075. package/node_modules/chai/lib/chai/utils/proxify.js +0 -147
  1076. package/node_modules/chai/lib/chai/utils/test.js +0 -24
  1077. package/node_modules/chai/lib/chai/utils/transferFlags.js +0 -43
  1078. package/node_modules/chai/lib/chai/utils/type-detect.js +0 -20
  1079. package/node_modules/chai/lib/chai.js +0 -65
  1080. package/node_modules/chai/package.json +0 -61
  1081. package/node_modules/chai/register-assert.cjs +0 -3
  1082. package/node_modules/chai/register-assert.js +0 -3
  1083. package/node_modules/chai/register-expect.cjs +0 -3
  1084. package/node_modules/chai/register-expect.js +0 -3
  1085. package/node_modules/chai/register-should.cjs +0 -3
  1086. package/node_modules/chai/register-should.js +0 -3
  1087. package/node_modules/chai/web-test-runner.config.js +0 -20
  1088. package/node_modules/chai-dom/.eslintrc +0 -22
  1089. package/node_modules/chai-dom/.travis.yml +0 -15
  1090. package/node_modules/chai-dom/LICENSE +0 -24
  1091. package/node_modules/chai-dom/README.md +0 -267
  1092. package/node_modules/chai-dom/bower.json +0 -31
  1093. package/node_modules/chai-dom/chai-dom.js +0 -429
  1094. package/node_modules/chai-dom/package.json +0 -44
  1095. package/node_modules/chai-dom/test/.eslintrc +0 -12
  1096. package/node_modules/chai-dom/test/index.html +0 -27
  1097. package/node_modules/chai-dom/test/tests.js +0 -1124
  1098. package/node_modules/chai-dom/testem.js +0 -31
  1099. package/node_modules/check-error/LICENSE +0 -19
  1100. package/node_modules/check-error/README.md +0 -144
  1101. package/node_modules/check-error/index.js +0 -135
  1102. package/node_modules/check-error/package.json +0 -66
  1103. package/node_modules/clsx/clsx.d.mts +0 -6
  1104. package/node_modules/clsx/clsx.d.ts +0 -10
  1105. package/node_modules/clsx/dist/clsx.js +0 -1
  1106. package/node_modules/clsx/dist/clsx.min.js +0 -1
  1107. package/node_modules/clsx/dist/clsx.mjs +0 -1
  1108. package/node_modules/clsx/dist/lite.js +0 -1
  1109. package/node_modules/clsx/dist/lite.mjs +0 -1
  1110. package/node_modules/clsx/license +0 -9
  1111. package/node_modules/clsx/package.json +0 -60
  1112. package/node_modules/clsx/readme.md +0 -154
  1113. package/node_modules/cookie/HISTORY.md +0 -147
  1114. package/node_modules/cookie/LICENSE +0 -24
  1115. package/node_modules/cookie/README.md +0 -317
  1116. package/node_modules/cookie/SECURITY.md +0 -25
  1117. package/node_modules/cookie/index.js +0 -274
  1118. package/node_modules/cookie/package.json +0 -44
  1119. package/node_modules/deep-eql/LICENSE +0 -19
  1120. package/node_modules/deep-eql/README.md +0 -93
  1121. package/node_modules/deep-eql/index.js +0 -513
  1122. package/node_modules/deep-eql/package.json +0 -73
  1123. package/node_modules/detect-node-es/LICENSE +0 -21
  1124. package/node_modules/detect-node-es/Readme.md +0 -39
  1125. package/node_modules/detect-node-es/es5/browser.js +0 -2
  1126. package/node_modules/detect-node-es/es5/node.d.ts +0 -4
  1127. package/node_modules/detect-node-es/es5/node.js +0 -2
  1128. package/node_modules/detect-node-es/esm/browser.js +0 -2
  1129. package/node_modules/detect-node-es/esm/node.js +0 -2
  1130. package/node_modules/detect-node-es/package.json +0 -29
  1131. package/node_modules/framer-motion/LICENSE.md +0 -21
  1132. package/node_modules/framer-motion/README.md +0 -105
  1133. package/node_modules/framer-motion/dist/cjs/dom-entry-GDJJhIpT.js +0 -5959
  1134. package/node_modules/framer-motion/dist/cjs/dom-entry.js +0 -53
  1135. package/node_modules/framer-motion/dist/cjs/index.js +0 -6566
  1136. package/node_modules/framer-motion/dist/dom-entry.d.ts +0 -964
  1137. package/node_modules/framer-motion/dist/dom.js +0 -1
  1138. package/node_modules/framer-motion/dist/es/animation/GroupPlaybackControls.mjs +0 -80
  1139. package/node_modules/framer-motion/dist/es/animation/animate.mjs +0 -83
  1140. package/node_modules/framer-motion/dist/es/animation/animators/AcceleratedAnimation.mjs +0 -295
  1141. package/node_modules/framer-motion/dist/es/animation/animators/BaseAnimation.mjs +0 -84
  1142. package/node_modules/framer-motion/dist/es/animation/animators/MainThreadAnimation.mjs +0 -382
  1143. package/node_modules/framer-motion/dist/es/animation/animators/drivers/driver-frameloop.mjs +0 -17
  1144. package/node_modules/framer-motion/dist/es/animation/animators/utils/can-animate.mjs +0 -40
  1145. package/node_modules/framer-motion/dist/es/animation/animators/waapi/easing.mjs +0 -40
  1146. package/node_modules/framer-motion/dist/es/animation/animators/waapi/index.mjs +0 -23
  1147. package/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/get-final-keyframe.mjs +0 -12
  1148. package/node_modules/framer-motion/dist/es/animation/generators/inertia.mjs +0 -87
  1149. package/node_modules/framer-motion/dist/es/animation/generators/keyframes.mjs +0 -51
  1150. package/node_modules/framer-motion/dist/es/animation/generators/spring/find.mjs +0 -89
  1151. package/node_modules/framer-motion/dist/es/animation/generators/spring/index.mjs +0 -131
  1152. package/node_modules/framer-motion/dist/es/animation/generators/utils/calc-duration.mjs +0 -17
  1153. package/node_modules/framer-motion/dist/es/animation/generators/utils/velocity.mjs +0 -9
  1154. package/node_modules/framer-motion/dist/es/animation/hooks/animation-controls.mjs +0 -80
  1155. package/node_modules/framer-motion/dist/es/animation/hooks/use-animate.mjs +0 -17
  1156. package/node_modules/framer-motion/dist/es/animation/hooks/use-animated-state.mjs +0 -62
  1157. package/node_modules/framer-motion/dist/es/animation/hooks/use-animation.mjs +0 -41
  1158. package/node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs +0 -112
  1159. package/node_modules/framer-motion/dist/es/animation/interfaces/single-value.mjs +0 -11
  1160. package/node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs +0 -80
  1161. package/node_modules/framer-motion/dist/es/animation/interfaces/visual-element-variant.mjs +0 -66
  1162. package/node_modules/framer-motion/dist/es/animation/interfaces/visual-element.mjs +0 -29
  1163. package/node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.mjs +0 -6
  1164. package/node_modules/framer-motion/dist/es/animation/optimized-appear/get-appear-id.mjs +0 -7
  1165. package/node_modules/framer-motion/dist/es/animation/optimized-appear/handoff.mjs +0 -83
  1166. package/node_modules/framer-motion/dist/es/animation/optimized-appear/start.mjs +0 -80
  1167. package/node_modules/framer-motion/dist/es/animation/optimized-appear/store-id.mjs +0 -3
  1168. package/node_modules/framer-motion/dist/es/animation/optimized-appear/store.mjs +0 -3
  1169. package/node_modules/framer-motion/dist/es/animation/sequence/create.mjs +0 -230
  1170. package/node_modules/framer-motion/dist/es/animation/sequence/utils/calc-time.mjs +0 -21
  1171. package/node_modules/framer-motion/dist/es/animation/sequence/utils/edit.mjs +0 -31
  1172. package/node_modules/framer-motion/dist/es/animation/sequence/utils/sort.mjs +0 -14
  1173. package/node_modules/framer-motion/dist/es/animation/utils/create-visual-element.mjs +0 -32
  1174. package/node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs +0 -40
  1175. package/node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs +0 -30
  1176. package/node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs +0 -7
  1177. package/node_modules/framer-motion/dist/es/animation/utils/is-dom-keyframes.mjs +0 -5
  1178. package/node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs +0 -5
  1179. package/node_modules/framer-motion/dist/es/animation/utils/is-none.mjs +0 -15
  1180. package/node_modules/framer-motion/dist/es/animation/utils/stagger.mjs +0 -26
  1181. package/node_modules/framer-motion/dist/es/animation/utils/transitions.mjs +0 -15
  1182. package/node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs +0 -76
  1183. package/node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs +0 -57
  1184. package/node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs +0 -169
  1185. package/node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs +0 -66
  1186. package/node_modules/framer-motion/dist/es/components/AnimateSharedLayout.mjs +0 -15
  1187. package/node_modules/framer-motion/dist/es/components/LayoutGroup/index.mjs +0 -31
  1188. package/node_modules/framer-motion/dist/es/components/LazyMotion/index.mjs +0 -67
  1189. package/node_modules/framer-motion/dist/es/components/MotionConfig/index.mjs +0 -43
  1190. package/node_modules/framer-motion/dist/es/components/Reorder/Group.mjs +0 -52
  1191. package/node_modules/framer-motion/dist/es/components/Reorder/Item.mjs +0 -33
  1192. package/node_modules/framer-motion/dist/es/components/Reorder/index.mjs +0 -9
  1193. package/node_modules/framer-motion/dist/es/components/Reorder/utils/check-reorder.mjs +0 -24
  1194. package/node_modules/framer-motion/dist/es/context/DeprecatedLayoutGroupContext.mjs +0 -10
  1195. package/node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs +0 -5
  1196. package/node_modules/framer-motion/dist/es/context/LazyContext.mjs +0 -5
  1197. package/node_modules/framer-motion/dist/es/context/MotionConfigContext.mjs +0 -12
  1198. package/node_modules/framer-motion/dist/es/context/MotionContext/create.mjs +0 -13
  1199. package/node_modules/framer-motion/dist/es/context/MotionContext/index.mjs +0 -5
  1200. package/node_modules/framer-motion/dist/es/context/MotionContext/utils.mjs +0 -17
  1201. package/node_modules/framer-motion/dist/es/context/PresenceContext.mjs +0 -8
  1202. package/node_modules/framer-motion/dist/es/context/ReorderContext.mjs +0 -5
  1203. package/node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.mjs +0 -8
  1204. package/node_modules/framer-motion/dist/es/debug/record.mjs +0 -7
  1205. package/node_modules/framer-motion/dist/es/dom-entry.mjs +0 -25
  1206. package/node_modules/framer-motion/dist/es/easing/anticipate.mjs +0 -5
  1207. package/node_modules/framer-motion/dist/es/easing/back.mjs +0 -9
  1208. package/node_modules/framer-motion/dist/es/easing/circ.mjs +0 -8
  1209. package/node_modules/framer-motion/dist/es/easing/cubic-bezier.mjs +0 -51
  1210. package/node_modules/framer-motion/dist/es/easing/ease.mjs +0 -7
  1211. package/node_modules/framer-motion/dist/es/easing/modifiers/mirror.mjs +0 -5
  1212. package/node_modules/framer-motion/dist/es/easing/modifiers/reverse.mjs +0 -5
  1213. package/node_modules/framer-motion/dist/es/easing/utils/create-generator-easing.mjs +0 -18
  1214. package/node_modules/framer-motion/dist/es/easing/utils/get-easing-for-segment.mjs +0 -8
  1215. package/node_modules/framer-motion/dist/es/easing/utils/is-bezier-definition.mjs +0 -3
  1216. package/node_modules/framer-motion/dist/es/easing/utils/is-easing-array.mjs +0 -5
  1217. package/node_modules/framer-motion/dist/es/easing/utils/map.mjs +0 -37
  1218. package/node_modules/framer-motion/dist/es/events/add-dom-event.mjs +0 -6
  1219. package/node_modules/framer-motion/dist/es/events/add-pointer-event.mjs +0 -8
  1220. package/node_modules/framer-motion/dist/es/events/event-info.mjs +0 -15
  1221. package/node_modules/framer-motion/dist/es/events/use-dom-event.mjs +0 -34
  1222. package/node_modules/framer-motion/dist/es/events/utils/is-primary-pointer.mjs +0 -18
  1223. package/node_modules/framer-motion/dist/es/frameloop/batcher.mjs +0 -65
  1224. package/node_modules/framer-motion/dist/es/frameloop/frame.mjs +0 -6
  1225. package/node_modules/framer-motion/dist/es/frameloop/index-legacy.mjs +0 -20
  1226. package/node_modules/framer-motion/dist/es/frameloop/microtask.mjs +0 -5
  1227. package/node_modules/framer-motion/dist/es/frameloop/render-step.mjs +0 -104
  1228. package/node_modules/framer-motion/dist/es/frameloop/sync-time.mjs +0 -31
  1229. package/node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs +0 -484
  1230. package/node_modules/framer-motion/dist/es/gestures/drag/index.mjs +0 -27
  1231. package/node_modules/framer-motion/dist/es/gestures/drag/use-drag-controls.mjs +0 -88
  1232. package/node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.mjs +0 -129
  1233. package/node_modules/framer-motion/dist/es/gestures/drag/utils/lock.mjs +0 -53
  1234. package/node_modules/framer-motion/dist/es/gestures/focus.mjs +0 -41
  1235. package/node_modules/framer-motion/dist/es/gestures/hover.mjs +0 -33
  1236. package/node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs +0 -156
  1237. package/node_modules/framer-motion/dist/es/gestures/pan/index.mjs +0 -50
  1238. package/node_modules/framer-motion/dist/es/gestures/press.mjs +0 -130
  1239. package/node_modules/framer-motion/dist/es/gestures/utils/is-node-or-child.mjs +0 -20
  1240. package/node_modules/framer-motion/dist/es/index.mjs +0 -101
  1241. package/node_modules/framer-motion/dist/es/motion/features/Feature.mjs +0 -9
  1242. package/node_modules/framer-motion/dist/es/motion/features/animation/exit.mjs +0 -31
  1243. package/node_modules/framer-motion/dist/es/motion/features/animation/index.mjs +0 -41
  1244. package/node_modules/framer-motion/dist/es/motion/features/animations.mjs +0 -13
  1245. package/node_modules/framer-motion/dist/es/motion/features/definitions.mjs +0 -28
  1246. package/node_modules/framer-motion/dist/es/motion/features/drag.mjs +0 -17
  1247. package/node_modules/framer-motion/dist/es/motion/features/gestures.mjs +0 -21
  1248. package/node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs +0 -133
  1249. package/node_modules/framer-motion/dist/es/motion/features/layout.mjs +0 -11
  1250. package/node_modules/framer-motion/dist/es/motion/features/load-features.mjs +0 -12
  1251. package/node_modules/framer-motion/dist/es/motion/features/viewport/index.mjs +0 -72
  1252. package/node_modules/framer-motion/dist/es/motion/features/viewport/observers.mjs +0 -49
  1253. package/node_modules/framer-motion/dist/es/motion/index.mjs +0 -97
  1254. package/node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs +0 -11
  1255. package/node_modules/framer-motion/dist/es/motion/utils/is-motion-component.mjs +0 -12
  1256. package/node_modules/framer-motion/dist/es/motion/utils/symbol.mjs +0 -3
  1257. package/node_modules/framer-motion/dist/es/motion/utils/unwrap-motion-component.mjs +0 -17
  1258. package/node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs +0 -36
  1259. package/node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs +0 -127
  1260. package/node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs +0 -81
  1261. package/node_modules/framer-motion/dist/es/motion/utils/valid-prop.mjs +0 -57
  1262. package/node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs +0 -93
  1263. package/node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs +0 -33
  1264. package/node_modules/framer-motion/dist/es/projection/geometry/copy.mjs +0 -20
  1265. package/node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs +0 -122
  1266. package/node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs +0 -41
  1267. package/node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs +0 -54
  1268. package/node_modules/framer-motion/dist/es/projection/geometry/models.mjs +0 -17
  1269. package/node_modules/framer-motion/dist/es/projection/geometry/utils.mjs +0 -25
  1270. package/node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs +0 -13
  1271. package/node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs +0 -27
  1272. package/node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs +0 -1562
  1273. package/node_modules/framer-motion/dist/es/projection/node/group.mjs +0 -24
  1274. package/node_modules/framer-motion/dist/es/projection/node/state.mjs +0 -19
  1275. package/node_modules/framer-motion/dist/es/projection/shared/stack.mjs +0 -112
  1276. package/node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs +0 -41
  1277. package/node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs +0 -35
  1278. package/node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs +0 -6
  1279. package/node_modules/framer-motion/dist/es/projection/styles/transform.mjs +0 -49
  1280. package/node_modules/framer-motion/dist/es/projection/use-instant-layout-transition.mjs +0 -14
  1281. package/node_modules/framer-motion/dist/es/projection/use-reset-projection.mjs +0 -14
  1282. package/node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs +0 -5
  1283. package/node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs +0 -26
  1284. package/node_modules/framer-motion/dist/es/projection/utils/measure.mjs +0 -17
  1285. package/node_modules/framer-motion/dist/es/projection-entry.mjs +0 -11
  1286. package/node_modules/framer-motion/dist/es/render/VisualElement.mjs +0 -496
  1287. package/node_modules/framer-motion/dist/es/render/dom/DOMKeyframesResolver.mjs +0 -130
  1288. package/node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs +0 -28
  1289. package/node_modules/framer-motion/dist/es/render/dom/create-visual-element.mjs +0 -15
  1290. package/node_modules/framer-motion/dist/es/render/dom/features-animation.mjs +0 -14
  1291. package/node_modules/framer-motion/dist/es/render/dom/features-max.mjs +0 -14
  1292. package/node_modules/framer-motion/dist/es/render/dom/motion-minimal.mjs +0 -9
  1293. package/node_modules/framer-motion/dist/es/render/dom/motion-proxy.mjs +0 -47
  1294. package/node_modules/framer-motion/dist/es/render/dom/motion.mjs +0 -42
  1295. package/node_modules/framer-motion/dist/es/render/dom/resize/handle-element.mjs +0 -64
  1296. package/node_modules/framer-motion/dist/es/render/dom/resize/handle-window.mjs +0 -30
  1297. package/node_modules/framer-motion/dist/es/render/dom/resize/index.mjs +0 -8
  1298. package/node_modules/framer-motion/dist/es/render/dom/scroll/index.mjs +0 -36
  1299. package/node_modules/framer-motion/dist/es/render/dom/scroll/info.mjs +0 -56
  1300. package/node_modules/framer-motion/dist/es/render/dom/scroll/observe.mjs +0 -18
  1301. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/edge.mjs +0 -45
  1302. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/index.mjs +0 -59
  1303. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/inset.mjs +0 -45
  1304. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/offset.mjs +0 -35
  1305. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/presets.mjs +0 -20
  1306. package/node_modules/framer-motion/dist/es/render/dom/scroll/on-scroll-handler.mjs +0 -48
  1307. package/node_modules/framer-motion/dist/es/render/dom/scroll/supports.mjs +0 -5
  1308. package/node_modules/framer-motion/dist/es/render/dom/scroll/track.mjs +0 -84
  1309. package/node_modules/framer-motion/dist/es/render/dom/use-render.mjs +0 -33
  1310. package/node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs +0 -6
  1311. package/node_modules/framer-motion/dist/es/render/dom/utils/create-config.mjs +0 -19
  1312. package/node_modules/framer-motion/dist/es/render/dom/utils/css-variables-conversion.mjs +0 -42
  1313. package/node_modules/framer-motion/dist/es/render/dom/utils/filter-props.mjs +0 -59
  1314. package/node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs +0 -13
  1315. package/node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs +0 -30
  1316. package/node_modules/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs +0 -5
  1317. package/node_modules/framer-motion/dist/es/render/dom/utils/resolve-element.mjs +0 -28
  1318. package/node_modules/framer-motion/dist/es/render/dom/utils/unit-conversion.mjs +0 -65
  1319. package/node_modules/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs +0 -15
  1320. package/node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs +0 -30
  1321. package/node_modules/framer-motion/dist/es/render/dom/value-types/dimensions.mjs +0 -15
  1322. package/node_modules/framer-motion/dist/es/render/dom/value-types/find.mjs +0 -15
  1323. package/node_modules/framer-motion/dist/es/render/dom/value-types/get-as-type.mjs +0 -10
  1324. package/node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs +0 -74
  1325. package/node_modules/framer-motion/dist/es/render/dom/value-types/test.mjs +0 -6
  1326. package/node_modules/framer-motion/dist/es/render/dom/value-types/type-auto.mjs +0 -9
  1327. package/node_modules/framer-motion/dist/es/render/dom/value-types/type-int.mjs +0 -8
  1328. package/node_modules/framer-motion/dist/es/render/dom/viewport/index.mjs +0 -43
  1329. package/node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.mjs +0 -59
  1330. package/node_modules/framer-motion/dist/es/render/html/config-motion.mjs +0 -12
  1331. package/node_modules/framer-motion/dist/es/render/html/use-props.mjs +0 -57
  1332. package/node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs +0 -74
  1333. package/node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs +0 -45
  1334. package/node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs +0 -8
  1335. package/node_modules/framer-motion/dist/es/render/html/utils/make-none-animatable.mjs +0 -30
  1336. package/node_modules/framer-motion/dist/es/render/html/utils/render.mjs +0 -9
  1337. package/node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs +0 -20
  1338. package/node_modules/framer-motion/dist/es/render/html/utils/transform.mjs +0 -28
  1339. package/node_modules/framer-motion/dist/es/render/store.mjs +0 -3
  1340. package/node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.mjs +0 -47
  1341. package/node_modules/framer-motion/dist/es/render/svg/config-motion.mjs +0 -40
  1342. package/node_modules/framer-motion/dist/es/render/svg/lowercase-elements.mjs +0 -33
  1343. package/node_modules/framer-motion/dist/es/render/svg/use-props.mjs +0 -24
  1344. package/node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs +0 -52
  1345. package/node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs +0 -30
  1346. package/node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.mjs +0 -8
  1347. package/node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs +0 -3
  1348. package/node_modules/framer-motion/dist/es/render/svg/utils/path.mjs +0 -32
  1349. package/node_modules/framer-motion/dist/es/render/svg/utils/render.mjs +0 -12
  1350. package/node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs +0 -19
  1351. package/node_modules/framer-motion/dist/es/render/svg/utils/transform-origin.mjs +0 -18
  1352. package/node_modules/framer-motion/dist/es/render/utils/KeyframesResolver.mjs +0 -164
  1353. package/node_modules/framer-motion/dist/es/render/utils/animation-state.mjs +0 -328
  1354. package/node_modules/framer-motion/dist/es/render/utils/compare-by-depth.mjs +0 -3
  1355. package/node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs +0 -24
  1356. package/node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs +0 -13
  1357. package/node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs +0 -8
  1358. package/node_modules/framer-motion/dist/es/render/utils/motion-values.mjs +0 -67
  1359. package/node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs +0 -8
  1360. package/node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs +0 -36
  1361. package/node_modules/framer-motion/dist/es/render/utils/setters.mjs +0 -27
  1362. package/node_modules/framer-motion/dist/es/render/utils/variant-props.mjs +0 -12
  1363. package/node_modules/framer-motion/dist/es/utils/GlobalConfig.mjs +0 -6
  1364. package/node_modules/framer-motion/dist/es/utils/array.mjs +0 -21
  1365. package/node_modules/framer-motion/dist/es/utils/clamp.mjs +0 -9
  1366. package/node_modules/framer-motion/dist/es/utils/delay.mjs +0 -20
  1367. package/node_modules/framer-motion/dist/es/utils/distance.mjs +0 -9
  1368. package/node_modules/framer-motion/dist/es/utils/errors.mjs +0 -18
  1369. package/node_modules/framer-motion/dist/es/utils/get-context-window.mjs +0 -6
  1370. package/node_modules/framer-motion/dist/es/utils/hsla-to-rgba.mjs +0 -42
  1371. package/node_modules/framer-motion/dist/es/utils/interpolate.mjs +0 -75
  1372. package/node_modules/framer-motion/dist/es/utils/is-browser.mjs +0 -3
  1373. package/node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs +0 -6
  1374. package/node_modules/framer-motion/dist/es/utils/is-ref-object.mjs +0 -7
  1375. package/node_modules/framer-motion/dist/es/utils/is-zero-value-string.mjs +0 -6
  1376. package/node_modules/framer-motion/dist/es/utils/memo.mjs +0 -10
  1377. package/node_modules/framer-motion/dist/es/utils/mix/color.mjs +0 -47
  1378. package/node_modules/framer-motion/dist/es/utils/mix/complex.mjs +0 -94
  1379. package/node_modules/framer-motion/dist/es/utils/mix/immediate.mjs +0 -5
  1380. package/node_modules/framer-motion/dist/es/utils/mix/index.mjs +0 -14
  1381. package/node_modules/framer-motion/dist/es/utils/mix/number.mjs +0 -26
  1382. package/node_modules/framer-motion/dist/es/utils/mix/visibility.mjs +0 -16
  1383. package/node_modules/framer-motion/dist/es/utils/noop.mjs +0 -3
  1384. package/node_modules/framer-motion/dist/es/utils/offsets/default.mjs +0 -9
  1385. package/node_modules/framer-motion/dist/es/utils/offsets/fill.mjs +0 -12
  1386. package/node_modules/framer-motion/dist/es/utils/offsets/time.mjs +0 -5
  1387. package/node_modules/framer-motion/dist/es/utils/pipe.mjs +0 -11
  1388. package/node_modules/framer-motion/dist/es/utils/progress.mjs +0 -18
  1389. package/node_modules/framer-motion/dist/es/utils/reduced-motion/index.mjs +0 -19
  1390. package/node_modules/framer-motion/dist/es/utils/reduced-motion/state.mjs +0 -5
  1391. package/node_modules/framer-motion/dist/es/utils/reduced-motion/use-reduced-motion-config.mjs +0 -19
  1392. package/node_modules/framer-motion/dist/es/utils/reduced-motion/use-reduced-motion.mjs +0 -47
  1393. package/node_modules/framer-motion/dist/es/utils/resolve-value.mjs +0 -11
  1394. package/node_modules/framer-motion/dist/es/utils/shallow-compare.mjs +0 -14
  1395. package/node_modules/framer-motion/dist/es/utils/subscription-manager.mjs +0 -40
  1396. package/node_modules/framer-motion/dist/es/utils/time-conversion.mjs +0 -10
  1397. package/node_modules/framer-motion/dist/es/utils/transform.mjs +0 -21
  1398. package/node_modules/framer-motion/dist/es/utils/use-animation-frame.mjs +0 -21
  1399. package/node_modules/framer-motion/dist/es/utils/use-constant.mjs +0 -18
  1400. package/node_modules/framer-motion/dist/es/utils/use-cycle.mjs +0 -47
  1401. package/node_modules/framer-motion/dist/es/utils/use-force-update.mjs +0 -19
  1402. package/node_modules/framer-motion/dist/es/utils/use-in-view.mjs +0 -23
  1403. package/node_modules/framer-motion/dist/es/utils/use-instant-transition-state.mjs +0 -5
  1404. package/node_modules/framer-motion/dist/es/utils/use-instant-transition.mjs +0 -41
  1405. package/node_modules/framer-motion/dist/es/utils/use-is-mounted.mjs +0 -15
  1406. package/node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs +0 -6
  1407. package/node_modules/framer-motion/dist/es/utils/use-motion-value-event.mjs +0 -13
  1408. package/node_modules/framer-motion/dist/es/utils/use-unmount-effect.mjs +0 -7
  1409. package/node_modules/framer-motion/dist/es/utils/velocity-per-second.mjs +0 -11
  1410. package/node_modules/framer-motion/dist/es/utils/warn-once.mjs +0 -11
  1411. package/node_modules/framer-motion/dist/es/utils/wrap.mjs +0 -6
  1412. package/node_modules/framer-motion/dist/es/value/index.mjs +0 -319
  1413. package/node_modules/framer-motion/dist/es/value/scroll/use-element-scroll.mjs +0 -14
  1414. package/node_modules/framer-motion/dist/es/value/scroll/use-viewport-scroll.mjs +0 -14
  1415. package/node_modules/framer-motion/dist/es/value/types/color/hex.mjs +0 -40
  1416. package/node_modules/framer-motion/dist/es/value/types/color/hsla.mjs +0 -22
  1417. package/node_modules/framer-motion/dist/es/value/types/color/index.mjs +0 -28
  1418. package/node_modules/framer-motion/dist/es/value/types/color/rgba.mjs +0 -25
  1419. package/node_modules/framer-motion/dist/es/value/types/color/utils.mjs +0 -23
  1420. package/node_modules/framer-motion/dist/es/value/types/complex/filter.mjs +0 -30
  1421. package/node_modules/framer-motion/dist/es/value/types/complex/index.mjs +0 -90
  1422. package/node_modules/framer-motion/dist/es/value/types/numbers/index.mjs +0 -17
  1423. package/node_modules/framer-motion/dist/es/value/types/numbers/units.mjs +0 -19
  1424. package/node_modules/framer-motion/dist/es/value/types/utils.mjs +0 -15
  1425. package/node_modules/framer-motion/dist/es/value/use-combine-values.mjs +0 -37
  1426. package/node_modules/framer-motion/dist/es/value/use-computed.mjs +0 -19
  1427. package/node_modules/framer-motion/dist/es/value/use-inverted-scale.mjs +0 -52
  1428. package/node_modules/framer-motion/dist/es/value/use-motion-template.mjs +0 -45
  1429. package/node_modules/framer-motion/dist/es/value/use-motion-value.mjs +0 -38
  1430. package/node_modules/framer-motion/dist/es/value/use-scroll.mjs +0 -39
  1431. package/node_modules/framer-motion/dist/es/value/use-spring.mjs +0 -80
  1432. package/node_modules/framer-motion/dist/es/value/use-time.mjs +0 -10
  1433. package/node_modules/framer-motion/dist/es/value/use-transform.mjs +0 -29
  1434. package/node_modules/framer-motion/dist/es/value/use-velocity.mjs +0 -35
  1435. package/node_modules/framer-motion/dist/es/value/use-will-change/index.mjs +0 -50
  1436. package/node_modules/framer-motion/dist/es/value/use-will-change/is.mjs +0 -7
  1437. package/node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs +0 -3
  1438. package/node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs +0 -16
  1439. package/node_modules/framer-motion/dist/framer-motion.dev.js +0 -12433
  1440. package/node_modules/framer-motion/dist/framer-motion.js +0 -1
  1441. package/node_modules/framer-motion/dist/index.d.ts +0 -5278
  1442. package/node_modules/framer-motion/dist/three-entry.d.ts +0 -2954
  1443. package/node_modules/framer-motion/dom/README.md +0 -1
  1444. package/node_modules/framer-motion/dom/package.json +0 -6
  1445. package/node_modules/framer-motion/package.json +0 -108
  1446. package/node_modules/get-func-name/LICENSE +0 -19
  1447. package/node_modules/get-func-name/README.md +0 -123
  1448. package/node_modules/get-func-name/get-func-name.js +0 -1
  1449. package/node_modules/get-func-name/index.js +0 -52
  1450. package/node_modules/get-func-name/package.json +0 -85
  1451. package/node_modules/get-nonce/LICENSE +0 -21
  1452. package/node_modules/get-nonce/README.md +0 -54
  1453. package/node_modules/get-nonce/dist/es2015/index.d.ts +0 -2
  1454. package/node_modules/get-nonce/dist/es2015/index.js +0 -13
  1455. package/node_modules/get-nonce/dist/es5/index.d.ts +0 -2
  1456. package/node_modules/get-nonce/dist/es5/index.js +0 -15
  1457. package/node_modules/get-nonce/package.json +0 -68
  1458. package/node_modules/invariant/LICENSE +0 -21
  1459. package/node_modules/invariant/README.md +0 -37
  1460. package/node_modules/invariant/browser.js +0 -49
  1461. package/node_modules/invariant/invariant.js +0 -51
  1462. package/node_modules/invariant/invariant.js.flow +0 -7
  1463. package/node_modules/invariant/package.json +0 -35
  1464. package/node_modules/js-tokens/LICENSE +0 -21
  1465. package/node_modules/js-tokens/README.md +0 -240
  1466. package/node_modules/js-tokens/index.js +0 -23
  1467. package/node_modules/js-tokens/package.json +0 -30
  1468. package/node_modules/loose-envify/LICENSE +0 -21
  1469. package/node_modules/loose-envify/README.md +0 -45
  1470. package/node_modules/loose-envify/cli.js +0 -16
  1471. package/node_modules/loose-envify/custom.js +0 -4
  1472. package/node_modules/loose-envify/index.js +0 -3
  1473. package/node_modules/loose-envify/loose-envify.js +0 -36
  1474. package/node_modules/loose-envify/package.json +0 -36
  1475. package/node_modules/loose-envify/replace.js +0 -65
  1476. package/node_modules/loupe/LICENSE +0 -9
  1477. package/node_modules/loupe/README.md +0 -63
  1478. package/node_modules/loupe/lib/arguments.d.ts +0 -3
  1479. package/node_modules/loupe/lib/arguments.d.ts.map +0 -1
  1480. package/node_modules/loupe/lib/arguments.js +0 -7
  1481. package/node_modules/loupe/lib/array.d.ts +0 -3
  1482. package/node_modules/loupe/lib/array.d.ts.map +0 -1
  1483. package/node_modules/loupe/lib/array.js +0 -16
  1484. package/node_modules/loupe/lib/bigint.d.ts +0 -3
  1485. package/node_modules/loupe/lib/bigint.d.ts.map +0 -1
  1486. package/node_modules/loupe/lib/bigint.js +0 -7
  1487. package/node_modules/loupe/lib/class.d.ts +0 -5
  1488. package/node_modules/loupe/lib/class.d.ts.map +0 -1
  1489. package/node_modules/loupe/lib/class.js +0 -15
  1490. package/node_modules/loupe/lib/date.d.ts +0 -3
  1491. package/node_modules/loupe/lib/date.d.ts.map +0 -1
  1492. package/node_modules/loupe/lib/date.js +0 -11
  1493. package/node_modules/loupe/lib/error.d.ts +0 -3
  1494. package/node_modules/loupe/lib/error.d.ts.map +0 -1
  1495. package/node_modules/loupe/lib/error.js +0 -29
  1496. package/node_modules/loupe/lib/function.d.ts +0 -7
  1497. package/node_modules/loupe/lib/function.d.ts.map +0 -1
  1498. package/node_modules/loupe/lib/function.js +0 -9
  1499. package/node_modules/loupe/lib/helpers.d.ts +0 -7
  1500. package/node_modules/loupe/lib/helpers.d.ts.map +0 -1
  1501. package/node_modules/loupe/lib/helpers.js +0 -159
  1502. package/node_modules/loupe/lib/html.d.ts +0 -5
  1503. package/node_modules/loupe/lib/html.d.ts.map +0 -1
  1504. package/node_modules/loupe/lib/html.js +0 -34
  1505. package/node_modules/loupe/lib/index.d.ts +0 -7
  1506. package/node_modules/loupe/lib/index.d.ts.map +0 -1
  1507. package/node_modules/loupe/lib/index.js +0 -161
  1508. package/node_modules/loupe/lib/map.d.ts +0 -3
  1509. package/node_modules/loupe/lib/map.d.ts.map +0 -1
  1510. package/node_modules/loupe/lib/map.js +0 -24
  1511. package/node_modules/loupe/lib/number.d.ts +0 -3
  1512. package/node_modules/loupe/lib/number.d.ts.map +0 -1
  1513. package/node_modules/loupe/lib/number.js +0 -17
  1514. package/node_modules/loupe/lib/object.d.ts +0 -3
  1515. package/node_modules/loupe/lib/object.d.ts.map +0 -1
  1516. package/node_modules/loupe/lib/object.js +0 -22
  1517. package/node_modules/loupe/lib/promise.d.ts +0 -5
  1518. package/node_modules/loupe/lib/promise.d.ts.map +0 -1
  1519. package/node_modules/loupe/lib/promise.js +0 -18
  1520. package/node_modules/loupe/lib/regexp.d.ts +0 -3
  1521. package/node_modules/loupe/lib/regexp.d.ts.map +0 -1
  1522. package/node_modules/loupe/lib/regexp.js +0 -7
  1523. package/node_modules/loupe/lib/set.d.ts +0 -3
  1524. package/node_modules/loupe/lib/set.d.ts.map +0 -1
  1525. package/node_modules/loupe/lib/set.js +0 -15
  1526. package/node_modules/loupe/lib/string.d.ts +0 -3
  1527. package/node_modules/loupe/lib/string.d.ts.map +0 -1
  1528. package/node_modules/loupe/lib/string.js +0 -24
  1529. package/node_modules/loupe/lib/symbol.d.ts +0 -2
  1530. package/node_modules/loupe/lib/symbol.d.ts.map +0 -1
  1531. package/node_modules/loupe/lib/symbol.js +0 -6
  1532. package/node_modules/loupe/lib/typedarray.d.ts +0 -5
  1533. package/node_modules/loupe/lib/typedarray.d.ts.map +0 -1
  1534. package/node_modules/loupe/lib/typedarray.js +0 -38
  1535. package/node_modules/loupe/lib/types.d.ts +0 -15
  1536. package/node_modules/loupe/lib/types.d.ts.map +0 -1
  1537. package/node_modules/loupe/lib/types.js +0 -1
  1538. package/node_modules/loupe/loupe.js +0 -644
  1539. package/node_modules/loupe/package.json +0 -126
  1540. package/node_modules/pathval/LICENSE +0 -16
  1541. package/node_modules/pathval/README.md +0 -147
  1542. package/node_modules/pathval/index.js +0 -292
  1543. package/node_modules/pathval/package.json +0 -73
  1544. package/node_modules/pathval/pathval.js +0 -1
  1545. package/node_modules/react-remove-scroll/LICENSE +0 -21
  1546. package/node_modules/react-remove-scroll/README.md +0 -152
  1547. package/node_modules/react-remove-scroll/UI/UI.d.ts +0 -1
  1548. package/node_modules/react-remove-scroll/UI/package.json +0 -8
  1549. package/node_modules/react-remove-scroll/dist/es2015/Combination.d.ts +0 -3
  1550. package/node_modules/react-remove-scroll/dist/es2015/Combination.js +0 -7
  1551. package/node_modules/react-remove-scroll/dist/es2015/SideEffect.d.ts +0 -5
  1552. package/node_modules/react-remove-scroll/dist/es2015/SideEffect.js +0 -157
  1553. package/node_modules/react-remove-scroll/dist/es2015/UI.d.ts +0 -7
  1554. package/node_modules/react-remove-scroll/dist/es2015/UI.js +0 -36
  1555. package/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.d.ts +0 -3
  1556. package/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js +0 -19
  1557. package/node_modules/react-remove-scroll/dist/es2015/handleScroll.d.ts +0 -3
  1558. package/node_modules/react-remove-scroll/dist/es2015/handleScroll.js +0 -104
  1559. package/node_modules/react-remove-scroll/dist/es2015/index.d.ts +0 -2
  1560. package/node_modules/react-remove-scroll/dist/es2015/index.js +0 -2
  1561. package/node_modules/react-remove-scroll/dist/es2015/medium.d.ts +0 -2
  1562. package/node_modules/react-remove-scroll/dist/es2015/medium.js +0 -2
  1563. package/node_modules/react-remove-scroll/dist/es2015/pinchAndZoom.d.ts +0 -8
  1564. package/node_modules/react-remove-scroll/dist/es2015/pinchAndZoom.js +0 -33
  1565. package/node_modules/react-remove-scroll/dist/es2015/sidecar.d.ts +0 -2
  1566. package/node_modules/react-remove-scroll/dist/es2015/sidecar.js +0 -4
  1567. package/node_modules/react-remove-scroll/dist/es2015/types.d.ts +0 -98
  1568. package/node_modules/react-remove-scroll/dist/es2015/types.js +0 -1
  1569. package/node_modules/react-remove-scroll/dist/es2019/Combination.d.ts +0 -3
  1570. package/node_modules/react-remove-scroll/dist/es2019/Combination.js +0 -6
  1571. package/node_modules/react-remove-scroll/dist/es2019/SideEffect.d.ts +0 -5
  1572. package/node_modules/react-remove-scroll/dist/es2019/SideEffect.js +0 -155
  1573. package/node_modules/react-remove-scroll/dist/es2019/UI.d.ts +0 -7
  1574. package/node_modules/react-remove-scroll/dist/es2019/UI.js +0 -41
  1575. package/node_modules/react-remove-scroll/dist/es2019/aggresiveCapture.d.ts +0 -3
  1576. package/node_modules/react-remove-scroll/dist/es2019/aggresiveCapture.js +0 -19
  1577. package/node_modules/react-remove-scroll/dist/es2019/handleScroll.d.ts +0 -3
  1578. package/node_modules/react-remove-scroll/dist/es2019/handleScroll.js +0 -92
  1579. package/node_modules/react-remove-scroll/dist/es2019/index.d.ts +0 -2
  1580. package/node_modules/react-remove-scroll/dist/es2019/index.js +0 -2
  1581. package/node_modules/react-remove-scroll/dist/es2019/medium.d.ts +0 -2
  1582. package/node_modules/react-remove-scroll/dist/es2019/medium.js +0 -2
  1583. package/node_modules/react-remove-scroll/dist/es2019/pinchAndZoom.d.ts +0 -8
  1584. package/node_modules/react-remove-scroll/dist/es2019/pinchAndZoom.js +0 -33
  1585. package/node_modules/react-remove-scroll/dist/es2019/sidecar.d.ts +0 -2
  1586. package/node_modules/react-remove-scroll/dist/es2019/sidecar.js +0 -4
  1587. package/node_modules/react-remove-scroll/dist/es2019/types.d.ts +0 -98
  1588. package/node_modules/react-remove-scroll/dist/es2019/types.js +0 -1
  1589. package/node_modules/react-remove-scroll/dist/es5/Combination.d.ts +0 -3
  1590. package/node_modules/react-remove-scroll/dist/es5/Combination.js +0 -9
  1591. package/node_modules/react-remove-scroll/dist/es5/SideEffect.d.ts +0 -5
  1592. package/node_modules/react-remove-scroll/dist/es5/SideEffect.js +0 -163
  1593. package/node_modules/react-remove-scroll/dist/es5/UI.d.ts +0 -7
  1594. package/node_modules/react-remove-scroll/dist/es5/UI.js +0 -39
  1595. package/node_modules/react-remove-scroll/dist/es5/aggresiveCapture.d.ts +0 -3
  1596. package/node_modules/react-remove-scroll/dist/es5/aggresiveCapture.js +0 -22
  1597. package/node_modules/react-remove-scroll/dist/es5/handleScroll.d.ts +0 -3
  1598. package/node_modules/react-remove-scroll/dist/es5/handleScroll.js +0 -109
  1599. package/node_modules/react-remove-scroll/dist/es5/index.d.ts +0 -2
  1600. package/node_modules/react-remove-scroll/dist/es5/index.js +0 -6
  1601. package/node_modules/react-remove-scroll/dist/es5/medium.d.ts +0 -2
  1602. package/node_modules/react-remove-scroll/dist/es5/medium.js +0 -5
  1603. package/node_modules/react-remove-scroll/dist/es5/pinchAndZoom.d.ts +0 -8
  1604. package/node_modules/react-remove-scroll/dist/es5/pinchAndZoom.js +0 -37
  1605. package/node_modules/react-remove-scroll/dist/es5/sidecar.d.ts +0 -2
  1606. package/node_modules/react-remove-scroll/dist/es5/sidecar.js +0 -6
  1607. package/node_modules/react-remove-scroll/dist/es5/types.d.ts +0 -98
  1608. package/node_modules/react-remove-scroll/dist/es5/types.js +0 -2
  1609. package/node_modules/react-remove-scroll/dist/index.js +0 -93
  1610. package/node_modules/react-remove-scroll/package.json +0 -97
  1611. package/node_modules/react-remove-scroll/sidecar/package.json +0 -7
  1612. package/node_modules/react-remove-scroll/sidecar/sidecar.d.ts +0 -5
  1613. package/node_modules/react-remove-scroll-bar/README.md +0 -52
  1614. package/node_modules/react-remove-scroll-bar/constants/package.json +0 -8
  1615. package/node_modules/react-remove-scroll-bar/dist/es2015/component.d.ts +0 -13
  1616. package/node_modules/react-remove-scroll-bar/dist/es2015/component.js +0 -53
  1617. package/node_modules/react-remove-scroll-bar/dist/es2015/constants.d.ts +0 -8
  1618. package/node_modules/react-remove-scroll-bar/dist/es2015/constants.js +0 -8
  1619. package/node_modules/react-remove-scroll-bar/dist/es2015/index.d.ts +0 -4
  1620. package/node_modules/react-remove-scroll-bar/dist/es2015/index.js +0 -4
  1621. package/node_modules/react-remove-scroll-bar/dist/es2015/utils.d.ts +0 -14
  1622. package/node_modules/react-remove-scroll-bar/dist/es2015/utils.js +0 -29
  1623. package/node_modules/react-remove-scroll-bar/dist/es2019/component.d.ts +0 -13
  1624. package/node_modules/react-remove-scroll-bar/dist/es2019/component.js +0 -85
  1625. package/node_modules/react-remove-scroll-bar/dist/es2019/constants.d.ts +0 -8
  1626. package/node_modules/react-remove-scroll-bar/dist/es2019/constants.js +0 -8
  1627. package/node_modules/react-remove-scroll-bar/dist/es2019/index.d.ts +0 -4
  1628. package/node_modules/react-remove-scroll-bar/dist/es2019/index.js +0 -4
  1629. package/node_modules/react-remove-scroll-bar/dist/es2019/utils.d.ts +0 -14
  1630. package/node_modules/react-remove-scroll-bar/dist/es2019/utils.js +0 -28
  1631. package/node_modules/react-remove-scroll-bar/dist/es5/component.d.ts +0 -13
  1632. package/node_modules/react-remove-scroll-bar/dist/es5/component.js +0 -59
  1633. package/node_modules/react-remove-scroll-bar/dist/es5/constants.d.ts +0 -8
  1634. package/node_modules/react-remove-scroll-bar/dist/es5/constants.js +0 -11
  1635. package/node_modules/react-remove-scroll-bar/dist/es5/index.d.ts +0 -4
  1636. package/node_modules/react-remove-scroll-bar/dist/es5/index.js +0 -12
  1637. package/node_modules/react-remove-scroll-bar/dist/es5/utils.d.ts +0 -14
  1638. package/node_modules/react-remove-scroll-bar/dist/es5/utils.js +0 -33
  1639. package/node_modules/react-remove-scroll-bar/package.json +0 -85
  1640. package/node_modules/react-router/CHANGELOG.md +0 -723
  1641. package/node_modules/react-router/LICENSE.md +0 -23
  1642. package/node_modules/react-router/README.md +0 -16
  1643. package/node_modules/react-router/dist/index.d.ts +0 -29
  1644. package/node_modules/react-router/dist/index.js +0 -1456
  1645. package/node_modules/react-router/dist/index.js.map +0 -1
  1646. package/node_modules/react-router/dist/lib/components.d.ts +0 -157
  1647. package/node_modules/react-router/dist/lib/context.d.ts +0 -102
  1648. package/node_modules/react-router/dist/lib/hooks.d.ts +0 -181
  1649. package/node_modules/react-router/dist/main.js +0 -19
  1650. package/node_modules/react-router/dist/react-router.development.js +0 -1352
  1651. package/node_modules/react-router/dist/react-router.development.js.map +0 -1
  1652. package/node_modules/react-router/dist/react-router.production.min.js +0 -12
  1653. package/node_modules/react-router/dist/react-router.production.min.js.map +0 -1
  1654. package/node_modules/react-router/dist/umd/react-router.development.js +0 -1574
  1655. package/node_modules/react-router/dist/umd/react-router.development.js.map +0 -1
  1656. package/node_modules/react-router/dist/umd/react-router.production.min.js +0 -12
  1657. package/node_modules/react-router/dist/umd/react-router.production.min.js.map +0 -1
  1658. package/node_modules/react-router/package.json +0 -44
  1659. package/node_modules/react-router-dom/CHANGELOG.md +0 -866
  1660. package/node_modules/react-router-dom/LICENSE.md +0 -23
  1661. package/node_modules/react-router-dom/README.md +0 -5
  1662. package/node_modules/react-router-dom/dist/dom.d.ts +0 -117
  1663. package/node_modules/react-router-dom/dist/index.d.ts +0 -331
  1664. package/node_modules/react-router-dom/dist/index.js +0 -1447
  1665. package/node_modules/react-router-dom/dist/index.js.map +0 -1
  1666. package/node_modules/react-router-dom/dist/main.js +0 -19
  1667. package/node_modules/react-router-dom/dist/react-router-dom.development.js +0 -1514
  1668. package/node_modules/react-router-dom/dist/react-router-dom.development.js.map +0 -1
  1669. package/node_modules/react-router-dom/dist/react-router-dom.production.min.js +0 -12
  1670. package/node_modules/react-router-dom/dist/react-router-dom.production.min.js.map +0 -1
  1671. package/node_modules/react-router-dom/dist/server.d.ts +0 -31
  1672. package/node_modules/react-router-dom/dist/server.js +0 -322
  1673. package/node_modules/react-router-dom/dist/server.mjs +0 -297
  1674. package/node_modules/react-router-dom/dist/umd/react-router-dom.development.js +0 -1813
  1675. package/node_modules/react-router-dom/dist/umd/react-router-dom.development.js.map +0 -1
  1676. package/node_modules/react-router-dom/dist/umd/react-router-dom.production.min.js +0 -12
  1677. package/node_modules/react-router-dom/dist/umd/react-router-dom.production.min.js.map +0 -1
  1678. package/node_modules/react-router-dom/package.json +0 -49
  1679. package/node_modules/react-router-dom/server.d.ts +0 -31
  1680. package/node_modules/react-router-dom/server.js +0 -322
  1681. package/node_modules/react-router-dom/server.mjs +0 -297
  1682. package/node_modules/react-style-singleton/README.md +0 -41
  1683. package/node_modules/react-style-singleton/dist/es2015/component.d.ts +0 -21
  1684. package/node_modules/react-style-singleton/dist/es2015/component.js +0 -16
  1685. package/node_modules/react-style-singleton/dist/es2015/hook.d.ts +0 -23
  1686. package/node_modules/react-style-singleton/dist/es2015/hook.js +0 -22
  1687. package/node_modules/react-style-singleton/dist/es2015/index.d.ts +0 -3
  1688. package/node_modules/react-style-singleton/dist/es2015/index.js +0 -3
  1689. package/node_modules/react-style-singleton/dist/es2015/singleton.d.ts +0 -4
  1690. package/node_modules/react-style-singleton/dist/es2015/singleton.js +0 -48
  1691. package/node_modules/react-style-singleton/dist/es2019/component.d.ts +0 -21
  1692. package/node_modules/react-style-singleton/dist/es2019/component.js +0 -15
  1693. package/node_modules/react-style-singleton/dist/es2019/hook.d.ts +0 -23
  1694. package/node_modules/react-style-singleton/dist/es2019/hook.js +0 -22
  1695. package/node_modules/react-style-singleton/dist/es2019/index.d.ts +0 -3
  1696. package/node_modules/react-style-singleton/dist/es2019/index.js +0 -3
  1697. package/node_modules/react-style-singleton/dist/es2019/singleton.d.ts +0 -4
  1698. package/node_modules/react-style-singleton/dist/es2019/singleton.js +0 -48
  1699. package/node_modules/react-style-singleton/dist/es5/component.d.ts +0 -21
  1700. package/node_modules/react-style-singleton/dist/es5/component.js +0 -20
  1701. package/node_modules/react-style-singleton/dist/es5/hook.d.ts +0 -23
  1702. package/node_modules/react-style-singleton/dist/es5/hook.js +0 -27
  1703. package/node_modules/react-style-singleton/dist/es5/index.d.ts +0 -3
  1704. package/node_modules/react-style-singleton/dist/es5/index.js +0 -9
  1705. package/node_modules/react-style-singleton/dist/es5/singleton.d.ts +0 -4
  1706. package/node_modules/react-style-singleton/dist/es5/singleton.js +0 -52
  1707. package/node_modules/react-style-singleton/dist/index.js +0 -1
  1708. package/node_modules/react-style-singleton/package.json +0 -87
  1709. package/node_modules/regenerator-runtime/LICENSE +0 -21
  1710. package/node_modules/regenerator-runtime/README.md +0 -31
  1711. package/node_modules/regenerator-runtime/package.json +0 -19
  1712. package/node_modules/regenerator-runtime/path.js +0 -11
  1713. package/node_modules/regenerator-runtime/runtime.js +0 -761
  1714. package/node_modules/remix-utils/.eslintrc.cjs +0 -54
  1715. package/node_modules/remix-utils/LICENSE +0 -21
  1716. package/node_modules/remix-utils/README.md +0 -2149
  1717. package/node_modules/remix-utils/build/client/cache-assets.d.ts +0 -22
  1718. package/node_modules/remix-utils/build/client/cache-assets.js +0 -66
  1719. package/node_modules/remix-utils/build/common/promise.d.ts +0 -87
  1720. package/node_modules/remix-utils/build/common/promise.js +0 -112
  1721. package/node_modules/remix-utils/build/common/timers.d.ts +0 -27
  1722. package/node_modules/remix-utils/build/common/timers.js +0 -47
  1723. package/node_modules/remix-utils/build/react/authenticity-token.d.ts +0 -50
  1724. package/node_modules/remix-utils/build/react/authenticity-token.js +0 -54
  1725. package/node_modules/remix-utils/build/react/client-only.d.ts +0 -27
  1726. package/node_modules/remix-utils/build/react/client-only.js +0 -20
  1727. package/node_modules/remix-utils/build/react/existing-search-params.d.ts +0 -34
  1728. package/node_modules/remix-utils/build/react/existing-search-params.js +0 -32
  1729. package/node_modules/remix-utils/build/react/external-scripts.d.ts +0 -91
  1730. package/node_modules/remix-utils/build/react/external-scripts.js +0 -106
  1731. package/node_modules/remix-utils/build/react/fetcher-type.d.ts +0 -31
  1732. package/node_modules/remix-utils/build/react/fetcher-type.js +0 -53
  1733. package/node_modules/remix-utils/build/react/handle-conventions.d.ts +0 -10
  1734. package/node_modules/remix-utils/build/react/handle-conventions.js +0 -1
  1735. package/node_modules/remix-utils/build/react/honeypot.d.ts +0 -11
  1736. package/node_modules/remix-utils/build/react/honeypot.js +0 -16
  1737. package/node_modules/remix-utils/build/react/server-only.d.ts +0 -25
  1738. package/node_modules/remix-utils/build/react/server-only.js +0 -18
  1739. package/node_modules/remix-utils/build/react/use-debounce-fetcher.d.ts +0 -28
  1740. package/node_modules/remix-utils/build/react/use-debounce-fetcher.js +0 -27
  1741. package/node_modules/remix-utils/build/react/use-debounce-submit.d.ts +0 -7
  1742. package/node_modules/remix-utils/build/react/use-debounce-submit.js +0 -41
  1743. package/node_modules/remix-utils/build/react/use-delegated-anchors.d.ts +0 -6
  1744. package/node_modules/remix-utils/build/react/use-delegated-anchors.js +0 -69
  1745. package/node_modules/remix-utils/build/react/use-event-source.d.ts +0 -17
  1746. package/node_modules/remix-utils/build/react/use-event-source.js +0 -37
  1747. package/node_modules/remix-utils/build/react/use-global-navigation-state.d.ts +0 -33
  1748. package/node_modules/remix-utils/build/react/use-global-navigation-state.js +0 -67
  1749. package/node_modules/remix-utils/build/react/use-hydrated.d.ts +0 -18
  1750. package/node_modules/remix-utils/build/react/use-hydrated.js +0 -24
  1751. package/node_modules/remix-utils/build/react/use-locales.d.ts +0 -24
  1752. package/node_modules/remix-utils/build/react/use-locales.js +0 -56
  1753. package/node_modules/remix-utils/build/react/use-should-hydrate.d.ts +0 -21
  1754. package/node_modules/remix-utils/build/react/use-should-hydrate.js +0 -44
  1755. package/node_modules/remix-utils/build/server/cors.d.ts +0 -101
  1756. package/node_modules/remix-utils/build/server/cors.js +0 -179
  1757. package/node_modules/remix-utils/build/server/csrf.d.ts +0 -85
  1758. package/node_modules/remix-utils/build/server/csrf.js +0 -121
  1759. package/node_modules/remix-utils/build/server/event-stream.d.ts +0 -27
  1760. package/node_modules/remix-utils/build/server/event-stream.js +0 -44
  1761. package/node_modules/remix-utils/build/server/get-client-ip-address.d.ts +0 -29
  1762. package/node_modules/remix-utils/build/server/get-client-ip-address.js +0 -51
  1763. package/node_modules/remix-utils/build/server/get-client-locales.d.ts +0 -18
  1764. package/node_modules/remix-utils/build/server/get-client-locales.js +0 -18
  1765. package/node_modules/remix-utils/build/server/get-headers.d.ts +0 -6
  1766. package/node_modules/remix-utils/build/server/get-headers.js +0 -11
  1767. package/node_modules/remix-utils/build/server/honeypot.d.ts +0 -32
  1768. package/node_modules/remix-utils/build/server/honeypot.js +0 -96
  1769. package/node_modules/remix-utils/build/server/is-prefetch.d.ts +0 -16
  1770. package/node_modules/remix-utils/build/server/is-prefetch.js +0 -11
  1771. package/node_modules/remix-utils/build/server/json-hash.d.ts +0 -6
  1772. package/node_modules/remix-utils/build/server/json-hash.js +0 -16
  1773. package/node_modules/remix-utils/build/server/named-action.d.ts +0 -19
  1774. package/node_modules/remix-utils/build/server/named-action.js +0 -62
  1775. package/node_modules/remix-utils/build/server/parse-accept-header.d.ts +0 -12
  1776. package/node_modules/remix-utils/build/server/parse-accept-header.js +0 -17
  1777. package/node_modules/remix-utils/build/server/preload-route-assets.d.ts +0 -80
  1778. package/node_modules/remix-utils/build/server/preload-route-assets.js +0 -120
  1779. package/node_modules/remix-utils/build/server/redirect-back.d.ts +0 -18
  1780. package/node_modules/remix-utils/build/server/redirect-back.js +0 -29
  1781. package/node_modules/remix-utils/build/server/respond-to.d.ts +0 -40
  1782. package/node_modules/remix-utils/build/server/respond-to.js +0 -22
  1783. package/node_modules/remix-utils/build/server/responses.d.ts +0 -100
  1784. package/node_modules/remix-utils/build/server/responses.js +0 -167
  1785. package/node_modules/remix-utils/build/server/rolling-cookie.d.ts +0 -4
  1786. package/node_modules/remix-utils/build/server/rolling-cookie.js +0 -9
  1787. package/node_modules/remix-utils/build/server/safe-redirect.d.ts +0 -10
  1788. package/node_modules/remix-utils/build/server/safe-redirect.js +0 -22
  1789. package/node_modules/remix-utils/build/server/sec-fetch.d.ts +0 -43
  1790. package/node_modules/remix-utils/build/server/sec-fetch.js +0 -67
  1791. package/node_modules/remix-utils/build/server/typed-cookie.d.ts +0 -17
  1792. package/node_modules/remix-utils/build/server/typed-cookie.js +0 -58
  1793. package/node_modules/remix-utils/build/server/typed-session.d.ts +0 -59
  1794. package/node_modules/remix-utils/build/server/typed-session.js +0 -88
  1795. package/node_modules/remix-utils/package.json +0 -182
  1796. package/node_modules/remix-utils/scripts/check-pkg-exports.ts +0 -61
  1797. package/node_modules/set-cookie-parser/LICENSE +0 -21
  1798. package/node_modules/set-cookie-parser/README.md +0 -199
  1799. package/node_modules/set-cookie-parser/lib/set-cookie.js +0 -226
  1800. package/node_modules/set-cookie-parser/package.json +0 -43
  1801. package/node_modules/source-map/LICENSE +0 -28
  1802. package/node_modules/source-map/README.md +0 -742
  1803. package/node_modules/source-map/dist/source-map.debug.js +0 -3234
  1804. package/node_modules/source-map/dist/source-map.js +0 -3233
  1805. package/node_modules/source-map/dist/source-map.min.js +0 -2
  1806. package/node_modules/source-map/dist/source-map.min.js.map +0 -1
  1807. package/node_modules/source-map/lib/array-set.js +0 -121
  1808. package/node_modules/source-map/lib/base64-vlq.js +0 -140
  1809. package/node_modules/source-map/lib/base64.js +0 -67
  1810. package/node_modules/source-map/lib/binary-search.js +0 -111
  1811. package/node_modules/source-map/lib/mapping-list.js +0 -79
  1812. package/node_modules/source-map/lib/mappings.wasm +0 -0
  1813. package/node_modules/source-map/lib/quick-sort.js +0 -114
  1814. package/node_modules/source-map/lib/read-wasm.js +0 -49
  1815. package/node_modules/source-map/lib/source-map-consumer.js +0 -1145
  1816. package/node_modules/source-map/lib/source-map-generator.js +0 -425
  1817. package/node_modules/source-map/lib/source-node.js +0 -413
  1818. package/node_modules/source-map/lib/util.js +0 -488
  1819. package/node_modules/source-map/lib/wasm.js +0 -107
  1820. package/node_modules/source-map/package.json +0 -73
  1821. package/node_modules/source-map/source-map.d.ts +0 -98
  1822. package/node_modules/source-map/source-map.js +0 -8
  1823. package/node_modules/tailwind-merge/LICENSE.md +0 -21
  1824. package/node_modules/tailwind-merge/README.md +0 -38
  1825. package/node_modules/tailwind-merge/dist/bundle-cjs.js +0 -2595
  1826. package/node_modules/tailwind-merge/dist/bundle-cjs.js.map +0 -1
  1827. package/node_modules/tailwind-merge/dist/bundle-mjs.mjs +0 -2583
  1828. package/node_modules/tailwind-merge/dist/bundle-mjs.mjs.map +0 -1
  1829. package/node_modules/tailwind-merge/dist/es5/bundle-cjs.js +0 -2645
  1830. package/node_modules/tailwind-merge/dist/es5/bundle-cjs.js.map +0 -1
  1831. package/node_modules/tailwind-merge/dist/es5/bundle-mjs.mjs +0 -2633
  1832. package/node_modules/tailwind-merge/dist/es5/bundle-mjs.mjs.map +0 -1
  1833. package/node_modules/tailwind-merge/dist/types.d.ts +0 -2143
  1834. package/node_modules/tailwind-merge/package.json +0 -95
  1835. package/node_modules/tailwind-merge/src/index.ts +0 -14
  1836. package/node_modules/tailwind-merge/src/lib/class-utils.ts +0 -215
  1837. package/node_modules/tailwind-merge/src/lib/config-utils.ts +0 -14
  1838. package/node_modules/tailwind-merge/src/lib/create-tailwind-merge.ts +0 -50
  1839. package/node_modules/tailwind-merge/src/lib/default-config.ts +0 -1865
  1840. package/node_modules/tailwind-merge/src/lib/extend-tailwind-merge.ts +0 -26
  1841. package/node_modules/tailwind-merge/src/lib/from-theme.ts +0 -13
  1842. package/node_modules/tailwind-merge/src/lib/lru-cache.ts +0 -52
  1843. package/node_modules/tailwind-merge/src/lib/merge-classlist.ts +0 -99
  1844. package/node_modules/tailwind-merge/src/lib/merge-configs.ts +0 -72
  1845. package/node_modules/tailwind-merge/src/lib/modifier-utils.ts +0 -95
  1846. package/node_modules/tailwind-merge/src/lib/tw-join.ts +0 -50
  1847. package/node_modules/tailwind-merge/src/lib/tw-merge.ts +0 -4
  1848. package/node_modules/tailwind-merge/src/lib/types.ts +0 -412
  1849. package/node_modules/tailwind-merge/src/lib/validators.ts +0 -104
  1850. package/node_modules/tslib/CopyrightNotice.txt +0 -15
  1851. package/node_modules/tslib/LICENSE.txt +0 -12
  1852. package/node_modules/tslib/README.md +0 -164
  1853. package/node_modules/tslib/SECURITY.md +0 -41
  1854. package/node_modules/tslib/modules/index.d.ts +0 -37
  1855. package/node_modules/tslib/modules/index.js +0 -68
  1856. package/node_modules/tslib/modules/package.json +0 -3
  1857. package/node_modules/tslib/package.json +0 -47
  1858. package/node_modules/tslib/tslib.d.ts +0 -453
  1859. package/node_modules/tslib/tslib.es6.html +0 -1
  1860. package/node_modules/tslib/tslib.es6.js +0 -374
  1861. package/node_modules/tslib/tslib.es6.mjs +0 -373
  1862. package/node_modules/tslib/tslib.html +0 -1
  1863. package/node_modules/tslib/tslib.js +0 -424
  1864. package/node_modules/turbo-stream/LICENSE +0 -7
  1865. package/node_modules/turbo-stream/README.md +0 -31
  1866. package/node_modules/turbo-stream/dist/flatten.d.ts +0 -2
  1867. package/node_modules/turbo-stream/dist/flatten.js +0 -172
  1868. package/node_modules/turbo-stream/dist/turbo-stream.d.ts +0 -12
  1869. package/node_modules/turbo-stream/dist/turbo-stream.js +0 -202
  1870. package/node_modules/turbo-stream/dist/turbo-stream.mjs +0 -530
  1871. package/node_modules/turbo-stream/dist/unflatten.d.ts +0 -2
  1872. package/node_modules/turbo-stream/dist/unflatten.js +0 -127
  1873. package/node_modules/turbo-stream/dist/utils.d.ts +0 -43
  1874. package/node_modules/turbo-stream/dist/utils.js +0 -55
  1875. package/node_modules/turbo-stream/package.json +0 -50
  1876. package/node_modules/type-fest/index.d.ts +0 -160
  1877. package/node_modules/type-fest/package.json +0 -72
  1878. package/node_modules/type-fest/readme.md +0 -992
  1879. package/node_modules/type-fest/source/and.d.ts +0 -25
  1880. package/node_modules/type-fest/source/array-indices.d.ts +0 -23
  1881. package/node_modules/type-fest/source/array-slice.d.ts +0 -107
  1882. package/node_modules/type-fest/source/array-splice.d.ts +0 -97
  1883. package/node_modules/type-fest/source/array-values.d.ts +0 -22
  1884. package/node_modules/type-fest/source/async-return-type.d.ts +0 -23
  1885. package/node_modules/type-fest/source/asyncify.d.ts +0 -32
  1886. package/node_modules/type-fest/source/basic.d.ts +0 -68
  1887. package/node_modules/type-fest/source/camel-case.d.ts +0 -80
  1888. package/node_modules/type-fest/source/camel-cased-properties-deep.d.ts +0 -87
  1889. package/node_modules/type-fest/source/camel-cased-properties.d.ts +0 -36
  1890. package/node_modules/type-fest/source/conditional-except.d.ts +0 -45
  1891. package/node_modules/type-fest/source/conditional-keys.d.ts +0 -47
  1892. package/node_modules/type-fest/source/conditional-pick-deep.d.ts +0 -104
  1893. package/node_modules/type-fest/source/conditional-pick.d.ts +0 -44
  1894. package/node_modules/type-fest/source/conditional-simplify.d.ts +0 -32
  1895. package/node_modules/type-fest/source/delimiter-case.d.ts +0 -99
  1896. package/node_modules/type-fest/source/delimiter-cased-properties-deep.d.ts +0 -84
  1897. package/node_modules/type-fest/source/delimiter-cased-properties.d.ts +0 -37
  1898. package/node_modules/type-fest/source/distributed-omit.d.ts +0 -89
  1899. package/node_modules/type-fest/source/distributed-pick.d.ts +0 -85
  1900. package/node_modules/type-fest/source/empty-object.d.ts +0 -46
  1901. package/node_modules/type-fest/source/enforce-optional.d.ts +0 -47
  1902. package/node_modules/type-fest/source/entries.d.ts +0 -62
  1903. package/node_modules/type-fest/source/entry.d.ts +0 -65
  1904. package/node_modules/type-fest/source/exact.d.ts +0 -63
  1905. package/node_modules/type-fest/source/except.d.ts +0 -80
  1906. package/node_modules/type-fest/source/fixed-length-array.d.ts +0 -43
  1907. package/node_modules/type-fest/source/get.d.ts +0 -191
  1908. package/node_modules/type-fest/source/global-this.d.ts +0 -21
  1909. package/node_modules/type-fest/source/greater-than-or-equal.d.ts +0 -22
  1910. package/node_modules/type-fest/source/greater-than.d.ts +0 -51
  1911. package/node_modules/type-fest/source/has-optional-keys.d.ts +0 -21
  1912. package/node_modules/type-fest/source/has-readonly-keys.d.ts +0 -21
  1913. package/node_modules/type-fest/source/has-required-keys.d.ts +0 -59
  1914. package/node_modules/type-fest/source/has-writable-keys.d.ts +0 -21
  1915. package/node_modules/type-fest/source/if-any.d.ts +0 -24
  1916. package/node_modules/type-fest/source/if-empty-object.d.ts +0 -26
  1917. package/node_modules/type-fest/source/if-never.d.ts +0 -24
  1918. package/node_modules/type-fest/source/if-null.d.ts +0 -24
  1919. package/node_modules/type-fest/source/if-unknown.d.ts +0 -24
  1920. package/node_modules/type-fest/source/includes.d.ts +0 -22
  1921. package/node_modules/type-fest/source/int-range.d.ts +0 -53
  1922. package/node_modules/type-fest/source/internal.d.ts +0 -783
  1923. package/node_modules/type-fest/source/invariant-of.d.ts +0 -78
  1924. package/node_modules/type-fest/source/is-any.d.ts +0 -29
  1925. package/node_modules/type-fest/source/is-equal.d.ts +0 -31
  1926. package/node_modules/type-fest/source/is-float.d.ts +0 -33
  1927. package/node_modules/type-fest/source/is-integer.d.ts +0 -48
  1928. package/node_modules/type-fest/source/is-literal.d.ts +0 -258
  1929. package/node_modules/type-fest/source/is-never.d.ts +0 -42
  1930. package/node_modules/type-fest/source/is-null.d.ts +0 -20
  1931. package/node_modules/type-fest/source/is-unknown.d.ts +0 -52
  1932. package/node_modules/type-fest/source/iterable-element.d.ts +0 -54
  1933. package/node_modules/type-fest/source/join.d.ts +0 -68
  1934. package/node_modules/type-fest/source/jsonifiable.d.ts +0 -37
  1935. package/node_modules/type-fest/source/jsonify.d.ts +0 -121
  1936. package/node_modules/type-fest/source/kebab-case.d.ts +0 -38
  1937. package/node_modules/type-fest/source/kebab-cased-properties-deep.d.ts +0 -47
  1938. package/node_modules/type-fest/source/kebab-cased-properties.d.ts +0 -30
  1939. package/node_modules/type-fest/source/keys-of-union.d.ts +0 -40
  1940. package/node_modules/type-fest/source/last-array-element.d.ts +0 -38
  1941. package/node_modules/type-fest/source/less-than-or-equal.d.ts +0 -22
  1942. package/node_modules/type-fest/source/less-than.d.ts +0 -22
  1943. package/node_modules/type-fest/source/literal-to-primitive-deep.d.ts +0 -36
  1944. package/node_modules/type-fest/source/literal-to-primitive.d.ts +0 -36
  1945. package/node_modules/type-fest/source/literal-union.d.ts +0 -35
  1946. package/node_modules/type-fest/source/merge-deep.d.ts +0 -486
  1947. package/node_modules/type-fest/source/merge-exclusive.d.ts +0 -41
  1948. package/node_modules/type-fest/source/merge.d.ts +0 -48
  1949. package/node_modules/type-fest/source/multidimensional-array.d.ts +0 -44
  1950. package/node_modules/type-fest/source/multidimensional-readonly-array.d.ts +0 -48
  1951. package/node_modules/type-fest/source/non-empty-object.d.ts +0 -35
  1952. package/node_modules/type-fest/source/numeric.d.ts +0 -222
  1953. package/node_modules/type-fest/source/observable-like.d.ts +0 -63
  1954. package/node_modules/type-fest/source/omit-deep.d.ts +0 -140
  1955. package/node_modules/type-fest/source/omit-index-signature.d.ts +0 -107
  1956. package/node_modules/type-fest/source/opaque.d.ts +0 -252
  1957. package/node_modules/type-fest/source/optional-keys-of.d.ts +0 -38
  1958. package/node_modules/type-fest/source/or.d.ts +0 -25
  1959. package/node_modules/type-fest/source/override-properties.d.ts +0 -36
  1960. package/node_modules/type-fest/source/package-json.d.ts +0 -676
  1961. package/node_modules/type-fest/source/partial-deep.d.ts +0 -109
  1962. package/node_modules/type-fest/source/partial-on-undefined-deep.d.ts +0 -71
  1963. package/node_modules/type-fest/source/pascal-case.d.ts +0 -38
  1964. package/node_modules/type-fest/source/pascal-cased-properties-deep.d.ts +0 -55
  1965. package/node_modules/type-fest/source/pascal-cased-properties.d.ts +0 -35
  1966. package/node_modules/type-fest/source/paths.d.ts +0 -85
  1967. package/node_modules/type-fest/source/pick-deep.d.ts +0 -149
  1968. package/node_modules/type-fest/source/pick-index-signature.d.ts +0 -102
  1969. package/node_modules/type-fest/source/primitive.d.ts +0 -13
  1970. package/node_modules/type-fest/source/promisable.d.ts +0 -25
  1971. package/node_modules/type-fest/source/readonly-deep.d.ts +0 -81
  1972. package/node_modules/type-fest/source/readonly-keys-of.d.ts +0 -29
  1973. package/node_modules/type-fest/source/readonly-tuple.d.ts +0 -41
  1974. package/node_modules/type-fest/source/replace.d.ts +0 -67
  1975. package/node_modules/type-fest/source/require-all-or-none.d.ts +0 -42
  1976. package/node_modules/type-fest/source/require-at-least-one.d.ts +0 -34
  1977. package/node_modules/type-fest/source/require-exactly-one.d.ts +0 -34
  1978. package/node_modules/type-fest/source/require-one-or-none.d.ts +0 -37
  1979. package/node_modules/type-fest/source/required-deep.d.ts +0 -78
  1980. package/node_modules/type-fest/source/required-keys-of.d.ts +0 -29
  1981. package/node_modules/type-fest/source/schema.d.ts +0 -71
  1982. package/node_modules/type-fest/source/screaming-snake-case.d.ts +0 -33
  1983. package/node_modules/type-fest/source/set-field-type.d.ts +0 -37
  1984. package/node_modules/type-fest/source/set-non-nullable.d.ts +0 -39
  1985. package/node_modules/type-fest/source/set-optional.d.ts +0 -35
  1986. package/node_modules/type-fest/source/set-parameter-type.d.ts +0 -117
  1987. package/node_modules/type-fest/source/set-readonly.d.ts +0 -38
  1988. package/node_modules/type-fest/source/set-required.d.ts +0 -40
  1989. package/node_modules/type-fest/source/set-return-type.d.ts +0 -29
  1990. package/node_modules/type-fest/source/shared-union-fields-deep.d.ts +0 -168
  1991. package/node_modules/type-fest/source/simplify-deep.d.ts +0 -115
  1992. package/node_modules/type-fest/source/simplify.d.ts +0 -58
  1993. package/node_modules/type-fest/source/single-key-object.d.ts +0 -29
  1994. package/node_modules/type-fest/source/snake-case.d.ts +0 -38
  1995. package/node_modules/type-fest/source/snake-cased-properties-deep.d.ts +0 -47
  1996. package/node_modules/type-fest/source/snake-cased-properties.d.ts +0 -30
  1997. package/node_modules/type-fest/source/split-words.d.ts +0 -57
  1998. package/node_modules/type-fest/source/split.d.ts +0 -29
  1999. package/node_modules/type-fest/source/spread.d.ts +0 -85
  2000. package/node_modules/type-fest/source/string-key-of.d.ts +0 -25
  2001. package/node_modules/type-fest/source/string-slice.d.ts +0 -37
  2002. package/node_modules/type-fest/source/stringified.d.ts +0 -23
  2003. package/node_modules/type-fest/source/subtract.d.ts +0 -70
  2004. package/node_modules/type-fest/source/sum.d.ts +0 -70
  2005. package/node_modules/type-fest/source/tagged-union.d.ts +0 -51
  2006. package/node_modules/type-fest/source/trim.d.ts +0 -27
  2007. package/node_modules/type-fest/source/tsconfig-json.d.ts +0 -1198
  2008. package/node_modules/type-fest/source/tuple-to-union.d.ts +0 -51
  2009. package/node_modules/type-fest/source/typed-array.d.ts +0 -17
  2010. package/node_modules/type-fest/source/undefined-on-partial-deep.d.ts +0 -81
  2011. package/node_modules/type-fest/source/union-to-intersection.d.ts +0 -61
  2012. package/node_modules/type-fest/source/unknown-array.d.ts +0 -25
  2013. package/node_modules/type-fest/source/unknown-record.d.ts +0 -31
  2014. package/node_modules/type-fest/source/value-of.d.ts +0 -42
  2015. package/node_modules/type-fest/source/writable-deep.d.ts +0 -83
  2016. package/node_modules/type-fest/source/writable-keys-of.d.ts +0 -30
  2017. package/node_modules/type-fest/source/writable.d.ts +0 -68
  2018. package/node_modules/use-callback-ref/LICENSE +0 -21
  2019. package/node_modules/use-callback-ref/README.md +0 -170
  2020. package/node_modules/use-callback-ref/dist/es2015/assignRef.d.ts +0 -15
  2021. package/node_modules/use-callback-ref/dist/es2015/assignRef.js +0 -22
  2022. package/node_modules/use-callback-ref/dist/es2015/createRef.d.ts +0 -10
  2023. package/node_modules/use-callback-ref/dist/es2015/createRef.js +0 -23
  2024. package/node_modules/use-callback-ref/dist/es2015/index.d.ts +0 -8
  2025. package/node_modules/use-callback-ref/dist/es2015/index.js +0 -12
  2026. package/node_modules/use-callback-ref/dist/es2015/mergeRef.d.ts +0 -16
  2027. package/node_modules/use-callback-ref/dist/es2015/mergeRef.js +0 -18
  2028. package/node_modules/use-callback-ref/dist/es2015/refToCallback.d.ts +0 -24
  2029. package/node_modules/use-callback-ref/dist/es2015/refToCallback.js +0 -48
  2030. package/node_modules/use-callback-ref/dist/es2015/transformRef.d.ts +0 -11
  2031. package/node_modules/use-callback-ref/dist/es2015/transformRef.js +0 -14
  2032. package/node_modules/use-callback-ref/dist/es2015/types.d.ts +0 -5
  2033. package/node_modules/use-callback-ref/dist/es2015/types.js +0 -1
  2034. package/node_modules/use-callback-ref/dist/es2015/useMergeRef.d.ts +0 -17
  2035. package/node_modules/use-callback-ref/dist/es2015/useMergeRef.js +0 -45
  2036. package/node_modules/use-callback-ref/dist/es2015/useRef.d.ts +0 -16
  2037. package/node_modules/use-callback-ref/dist/es2015/useRef.js +0 -39
  2038. package/node_modules/use-callback-ref/dist/es2015/useTransformRef.d.ts +0 -15
  2039. package/node_modules/use-callback-ref/dist/es2015/useTransformRef.js +0 -18
  2040. package/node_modules/use-callback-ref/dist/es2019/assignRef.d.ts +0 -15
  2041. package/node_modules/use-callback-ref/dist/es2019/assignRef.js +0 -22
  2042. package/node_modules/use-callback-ref/dist/es2019/createRef.d.ts +0 -10
  2043. package/node_modules/use-callback-ref/dist/es2019/createRef.js +0 -23
  2044. package/node_modules/use-callback-ref/dist/es2019/index.d.ts +0 -8
  2045. package/node_modules/use-callback-ref/dist/es2019/index.js +0 -12
  2046. package/node_modules/use-callback-ref/dist/es2019/mergeRef.d.ts +0 -16
  2047. package/node_modules/use-callback-ref/dist/es2019/mergeRef.js +0 -18
  2048. package/node_modules/use-callback-ref/dist/es2019/refToCallback.d.ts +0 -24
  2049. package/node_modules/use-callback-ref/dist/es2019/refToCallback.js +0 -48
  2050. package/node_modules/use-callback-ref/dist/es2019/transformRef.d.ts +0 -11
  2051. package/node_modules/use-callback-ref/dist/es2019/transformRef.js +0 -14
  2052. package/node_modules/use-callback-ref/dist/es2019/types.d.ts +0 -5
  2053. package/node_modules/use-callback-ref/dist/es2019/types.js +0 -1
  2054. package/node_modules/use-callback-ref/dist/es2019/useMergeRef.d.ts +0 -17
  2055. package/node_modules/use-callback-ref/dist/es2019/useMergeRef.js +0 -43
  2056. package/node_modules/use-callback-ref/dist/es2019/useRef.d.ts +0 -16
  2057. package/node_modules/use-callback-ref/dist/es2019/useRef.js +0 -39
  2058. package/node_modules/use-callback-ref/dist/es2019/useTransformRef.d.ts +0 -15
  2059. package/node_modules/use-callback-ref/dist/es2019/useTransformRef.js +0 -18
  2060. package/node_modules/use-callback-ref/dist/es5/assignRef.d.ts +0 -15
  2061. package/node_modules/use-callback-ref/dist/es5/assignRef.js +0 -26
  2062. package/node_modules/use-callback-ref/dist/es5/createRef.d.ts +0 -10
  2063. package/node_modules/use-callback-ref/dist/es5/createRef.js +0 -27
  2064. package/node_modules/use-callback-ref/dist/es5/index.d.ts +0 -8
  2065. package/node_modules/use-callback-ref/dist/es5/index.js +0 -24
  2066. package/node_modules/use-callback-ref/dist/es5/mergeRef.d.ts +0 -16
  2067. package/node_modules/use-callback-ref/dist/es5/mergeRef.js +0 -22
  2068. package/node_modules/use-callback-ref/dist/es5/refToCallback.d.ts +0 -24
  2069. package/node_modules/use-callback-ref/dist/es5/refToCallback.js +0 -53
  2070. package/node_modules/use-callback-ref/dist/es5/transformRef.d.ts +0 -11
  2071. package/node_modules/use-callback-ref/dist/es5/transformRef.js +0 -18
  2072. package/node_modules/use-callback-ref/dist/es5/types.d.ts +0 -5
  2073. package/node_modules/use-callback-ref/dist/es5/types.js +0 -2
  2074. package/node_modules/use-callback-ref/dist/es5/useMergeRef.d.ts +0 -17
  2075. package/node_modules/use-callback-ref/dist/es5/useMergeRef.js +0 -50
  2076. package/node_modules/use-callback-ref/dist/es5/useRef.d.ts +0 -16
  2077. package/node_modules/use-callback-ref/dist/es5/useRef.js +0 -43
  2078. package/node_modules/use-callback-ref/dist/es5/useTransformRef.d.ts +0 -15
  2079. package/node_modules/use-callback-ref/dist/es5/useTransformRef.js +0 -22
  2080. package/node_modules/use-callback-ref/package.json +0 -84
  2081. package/node_modules/use-sidecar/LICENSE +0 -21
  2082. package/node_modules/use-sidecar/README.md +0 -349
  2083. package/node_modules/use-sidecar/dist/es2015/config.d.ts +0 -5
  2084. package/node_modules/use-sidecar/dist/es2015/config.js +0 -6
  2085. package/node_modules/use-sidecar/dist/es2015/env.d.ts +0 -4
  2086. package/node_modules/use-sidecar/dist/es2015/env.js +0 -5
  2087. package/node_modules/use-sidecar/dist/es2015/exports.d.ts +0 -3
  2088. package/node_modules/use-sidecar/dist/es2015/exports.js +0 -18
  2089. package/node_modules/use-sidecar/dist/es2015/hoc.d.ts +0 -3
  2090. package/node_modules/use-sidecar/dist/es2015/hoc.js +0 -15
  2091. package/node_modules/use-sidecar/dist/es2015/hook.d.ts +0 -2
  2092. package/node_modules/use-sidecar/dist/es2015/hook.js +0 -41
  2093. package/node_modules/use-sidecar/dist/es2015/index.d.ts +0 -7
  2094. package/node_modules/use-sidecar/dist/es2015/index.js +0 -6
  2095. package/node_modules/use-sidecar/dist/es2015/medium.d.ts +0 -3
  2096. package/node_modules/use-sidecar/dist/es2015/medium.js +0 -78
  2097. package/node_modules/use-sidecar/dist/es2015/renderProp.d.ts +0 -8
  2098. package/node_modules/use-sidecar/dist/es2015/renderProp.js +0 -35
  2099. package/node_modules/use-sidecar/dist/es2015/types.d.ts +0 -47
  2100. package/node_modules/use-sidecar/dist/es2015/types.js +0 -1
  2101. package/node_modules/use-sidecar/dist/es2019/config.d.ts +0 -5
  2102. package/node_modules/use-sidecar/dist/es2019/config.js +0 -6
  2103. package/node_modules/use-sidecar/dist/es2019/env.d.ts +0 -4
  2104. package/node_modules/use-sidecar/dist/es2019/env.js +0 -5
  2105. package/node_modules/use-sidecar/dist/es2019/exports.d.ts +0 -3
  2106. package/node_modules/use-sidecar/dist/es2019/exports.js +0 -16
  2107. package/node_modules/use-sidecar/dist/es2019/hoc.d.ts +0 -3
  2108. package/node_modules/use-sidecar/dist/es2019/hoc.js +0 -14
  2109. package/node_modules/use-sidecar/dist/es2019/hook.d.ts +0 -2
  2110. package/node_modules/use-sidecar/dist/es2019/hook.js +0 -41
  2111. package/node_modules/use-sidecar/dist/es2019/index.d.ts +0 -7
  2112. package/node_modules/use-sidecar/dist/es2019/index.js +0 -6
  2113. package/node_modules/use-sidecar/dist/es2019/medium.d.ts +0 -3
  2114. package/node_modules/use-sidecar/dist/es2019/medium.js +0 -78
  2115. package/node_modules/use-sidecar/dist/es2019/renderProp.d.ts +0 -8
  2116. package/node_modules/use-sidecar/dist/es2019/renderProp.js +0 -28
  2117. package/node_modules/use-sidecar/dist/es2019/types.d.ts +0 -47
  2118. package/node_modules/use-sidecar/dist/es2019/types.js +0 -1
  2119. package/node_modules/use-sidecar/dist/es5/config.d.ts +0 -5
  2120. package/node_modules/use-sidecar/dist/es5/config.js +0 -10
  2121. package/node_modules/use-sidecar/dist/es5/env.d.ts +0 -4
  2122. package/node_modules/use-sidecar/dist/es5/env.js +0 -8
  2123. package/node_modules/use-sidecar/dist/es5/exports.d.ts +0 -3
  2124. package/node_modules/use-sidecar/dist/es5/exports.js +0 -22
  2125. package/node_modules/use-sidecar/dist/es5/hoc.d.ts +0 -3
  2126. package/node_modules/use-sidecar/dist/es5/hoc.js +0 -19
  2127. package/node_modules/use-sidecar/dist/es5/hook.d.ts +0 -2
  2128. package/node_modules/use-sidecar/dist/es5/hook.js +0 -45
  2129. package/node_modules/use-sidecar/dist/es5/index.d.ts +0 -7
  2130. package/node_modules/use-sidecar/dist/es5/index.js +0 -16
  2131. package/node_modules/use-sidecar/dist/es5/medium.d.ts +0 -3
  2132. package/node_modules/use-sidecar/dist/es5/medium.js +0 -83
  2133. package/node_modules/use-sidecar/dist/es5/renderProp.d.ts +0 -8
  2134. package/node_modules/use-sidecar/dist/es5/renderProp.js +0 -39
  2135. package/node_modules/use-sidecar/dist/es5/types.d.ts +0 -47
  2136. package/node_modules/use-sidecar/dist/es5/types.js +0 -2
  2137. package/node_modules/use-sidecar/package.json +0 -89
  2138. package/node_modules/zod/LICENSE +0 -21
  2139. package/node_modules/zod/README.md +0 -2876
  2140. package/node_modules/zod/index.d.ts +0 -2
  2141. package/node_modules/zod/lib/ZodError.d.ts +0 -164
  2142. package/node_modules/zod/lib/ZodError.js +0 -137
  2143. package/node_modules/zod/lib/__tests__/Mocker.d.ts +0 -17
  2144. package/node_modules/zod/lib/__tests__/Mocker.js +0 -57
  2145. package/node_modules/zod/lib/benchmarks/datetime.d.ts +0 -5
  2146. package/node_modules/zod/lib/benchmarks/datetime.js +0 -54
  2147. package/node_modules/zod/lib/benchmarks/discriminatedUnion.d.ts +0 -5
  2148. package/node_modules/zod/lib/benchmarks/discriminatedUnion.js +0 -79
  2149. package/node_modules/zod/lib/benchmarks/index.d.ts +0 -1
  2150. package/node_modules/zod/lib/benchmarks/index.js +0 -59
  2151. package/node_modules/zod/lib/benchmarks/ipv4.d.ts +0 -5
  2152. package/node_modules/zod/lib/benchmarks/ipv4.js +0 -54
  2153. package/node_modules/zod/lib/benchmarks/object.d.ts +0 -5
  2154. package/node_modules/zod/lib/benchmarks/object.js +0 -70
  2155. package/node_modules/zod/lib/benchmarks/primitives.d.ts +0 -5
  2156. package/node_modules/zod/lib/benchmarks/primitives.js +0 -170
  2157. package/node_modules/zod/lib/benchmarks/realworld.d.ts +0 -5
  2158. package/node_modules/zod/lib/benchmarks/realworld.js +0 -56
  2159. package/node_modules/zod/lib/benchmarks/string.d.ts +0 -5
  2160. package/node_modules/zod/lib/benchmarks/string.js +0 -55
  2161. package/node_modules/zod/lib/benchmarks/union.d.ts +0 -5
  2162. package/node_modules/zod/lib/benchmarks/union.js +0 -79
  2163. package/node_modules/zod/lib/errors.d.ts +0 -5
  2164. package/node_modules/zod/lib/errors.js +0 -17
  2165. package/node_modules/zod/lib/external.d.ts +0 -6
  2166. package/node_modules/zod/lib/external.js +0 -18
  2167. package/node_modules/zod/lib/helpers/enumUtil.d.ts +0 -8
  2168. package/node_modules/zod/lib/helpers/enumUtil.js +0 -2
  2169. package/node_modules/zod/lib/helpers/errorUtil.d.ts +0 -9
  2170. package/node_modules/zod/lib/helpers/errorUtil.js +0 -8
  2171. package/node_modules/zod/lib/helpers/parseUtil.d.ts +0 -78
  2172. package/node_modules/zod/lib/helpers/parseUtil.js +0 -125
  2173. package/node_modules/zod/lib/helpers/partialUtil.d.ts +0 -8
  2174. package/node_modules/zod/lib/helpers/partialUtil.js +0 -2
  2175. package/node_modules/zod/lib/helpers/typeAliases.d.ts +0 -2
  2176. package/node_modules/zod/lib/helpers/typeAliases.js +0 -2
  2177. package/node_modules/zod/lib/helpers/util.d.ts +0 -82
  2178. package/node_modules/zod/lib/helpers/util.js +0 -142
  2179. package/node_modules/zod/lib/index.d.ts +0 -4
  2180. package/node_modules/zod/lib/index.js +0 -29
  2181. package/node_modules/zod/lib/index.mjs +0 -4236
  2182. package/node_modules/zod/lib/index.umd.js +0 -4351
  2183. package/node_modules/zod/lib/locales/en.d.ts +0 -3
  2184. package/node_modules/zod/lib/locales/en.js +0 -129
  2185. package/node_modules/zod/lib/types.d.ts +0 -1127
  2186. package/node_modules/zod/lib/types.js +0 -3677
  2187. package/node_modules/zod/package.json +0 -119
@@ -1,37 +1,17 @@
1
1
  import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
2
  import { PassThrough } from "stream";
3
- import { createReadableStreamFromReadable, redirect, json as json$1, createCookieSessionStorage, defer } from "@remix-run/node";
4
- import { RemixServer, Link, useRouteError, useParams, isRouteErrorResponse, useNavigation, useFetchers, useRouteLoaderData, useRevalidator, useLocation, json, redirect as redirect$1, useFetcher, useLoaderData, Outlet, Meta, Links, ScrollRestoration, Scripts, NavLink, Form, Await, useSearchParams, useSubmit, useNavigate } from "@remix-run/react";
3
+ import { createReadableStreamFromReadable, json as json$1, createCookieSessionStorage, redirect as redirect$1, defer } from "@remix-run/node";
4
+ import { RemixServer, Link, useRouteError, useParams, isRouteErrorResponse, useNavigation, useFetchers, useRouteLoaderData, useRevalidator, useLocation, json, redirect, useFetcher, useLoaderData, Outlet, Meta, Links, ScrollRestoration, Scripts, NavLink, Form, Await, useSearchParams, useSubmit, useNavigate } from "@remix-run/react";
5
5
  import { isbot } from "isbot";
6
6
  import { renderToPipeableStream, renderToStaticMarkup } from "react-dom/server";
7
- import path$1 from "node:path";
8
- import os from "os";
9
- import path from "path";
10
- import * as C from "@epic-web/cachified";
11
- import { verboseReporter } from "@epic-web/cachified";
12
- import { remember } from "@epic-web/remember";
13
- import fsExtra from "fs-extra";
14
- import { LRUCache } from "lru-cache";
15
- import md5 from "md5-hex";
7
+ import path from "node:path";
8
+ import { makeSingletonCache, cachified, fsCache, deleteCache, compiledCodeCache, diffFilesCache, diffCodeCache, shouldForceFresh, getAllFileCacheEntries, ogCache } from "@epic-web/workshop-utils/cache.server";
9
+ import { getPreferences, getAuthInfo, readOnboardingData, getDiscordMember, getUserInfo, requireAuthInfo, DiscordMemberSchema, setDiscordMember, deleteDiscordInfo, deleteDb, setPresencePreferences, PlayerPreferencesSchema, setPlayerPreferences, setAuthInfo, markOnboardingVideoWatched } from "@epic-web/workshop-utils/db.server";
16
10
  import { z } from "zod";
17
- import fs$1 from "node:fs";
18
- import chokidar from "chokidar";
19
- import "@total-typescript/ts-reset";
20
- import closeWithGrace from "close-with-grace";
21
- import { execa } from "execa";
22
- import { isGitIgnored, globby } from "globby";
23
- import fs from "fs";
24
- import { remarkCodeBlocksShiki } from "@kentcdodds/md-temp";
25
- import { bundleMDX } from "mdx-bundler";
26
- import PQueue from "p-queue";
27
- import remarkAutolinkHeadings from "remark-autolink-headings";
28
- import emoji from "remark-emoji";
29
- import gfm from "remark-gfm";
30
- import { visit } from "unist-util-visit";
31
- import child_process, { spawn } from "child_process";
32
- import net from "node:net";
33
- import chalk from "chalk";
34
- import fkill from "fkill";
11
+ import { getWorkshopInstructions, getWorkshopFinished, getExercises, getApps, getPlaygroundAppName, extractNumbersAndTypeFromAppNameOrPath, getAppFromFile, getAppByName, isProblemApp, isPlaygroundApp, isExerciseStepApp, getExercise, isSolutionApp, isExampleApp, getRelativePath as getRelativePath$1, workshopRoot, modifiedTimes, getForceFreshForDir, setPlayground, requireExerciseApp, requireExercise, getExerciseApp, getAppDisplayName, getNextExerciseApp, getPrevExerciseApp, getAppPageRoute } from "@epic-web/workshop-utils/apps.server";
12
+ import { getWorkshopConfig } from "@epic-web/workshop-utils/config.server";
13
+ import { getEnv } from "@epic-web/workshop-utils/env.server";
14
+ import { makeTimings, getServerTimeHeader, combineServerTimings, time } from "@epic-web/workshop-utils/timing.server";
35
15
  import { cssBundleHref } from "@remix-run/css-bundle";
36
16
  import { promiseHash } from "remix-utils/promise";
37
17
  import { useSpinDelay } from "spin-delay";
@@ -54,24 +34,35 @@ import { safeRedirect } from "remix-utils/safe-redirect";
54
34
  import { ServerOnly } from "remix-utils/server-only";
55
35
  import * as cookie from "cookie";
56
36
  import cookie__default from "cookie";
37
+ import md5 from "md5-hex";
57
38
  import { createId } from "@paralleldrive/cuid2";
58
39
  import { usePartySocket } from "partysocket/react";
59
40
  import { motion, useAnimationControls } from "framer-motion";
60
41
  import { useHydrated } from "remix-utils/use-hydrated";
61
42
  import * as DialogPrimitive from "@radix-ui/react-dialog";
62
43
  import { invariantResponse, invariant } from "@epic-web/invariant";
44
+ import path$1 from "path";
63
45
  import etag from "etag";
46
+ import fsExtra from "fs-extra";
64
47
  import mimeTypes from "mime-types";
48
+ import fs from "fs";
49
+ import { getDirModifiedTime, modifiedMoreRecentlyThan } from "@epic-web/workshop-utils/modified-time.server";
65
50
  import * as esbuild from "esbuild";
66
51
  import { ElementScrollRestoration } from "@epic-web/restore-scroll";
67
52
  import RealMuxPlayer from "@mux/mux-player-react";
53
+ import child_process from "child_process";
54
+ import os from "os";
68
55
  import shellQuote from "shell-quote";
56
+ import { LRUCache } from "lru-cache";
69
57
  import * as mdxBundler from "mdx-bundler/client/index.js";
70
58
  import * as Select from "@radix-ui/react-select";
59
+ import { compileMarkdownString } from "@epic-web/workshop-utils/compile-mdx.server";
60
+ import { execa } from "execa";
71
61
  import ignore from "ignore";
72
62
  import parseGitDiff from "parse-git-diff";
73
63
  import { bundledLanguagesInfo } from "shiki/langs";
74
64
  import * as Popover from "@radix-ui/react-popover";
65
+ import { stopPort, runAppDev, waitOnApp, closeProcess, isAppRunning, isPortAvailable, getTestProcessEntry, isTestRunning, clearTestProcessEntry, runAppTests, getProcesses } from "@epic-web/workshop-utils/process-manager.server";
75
66
  import * as Tabs from "@radix-ui/react-tabs";
76
67
  import * as Accordion from "@radix-ui/react-accordion";
77
68
  import dayjs from "dayjs";
@@ -82,6 +73,7 @@ import AnsiToHTML from "ansi-to-html";
82
73
  import { useEventSource } from "remix-utils/sse/react";
83
74
  import { eventStream } from "remix-utils/sse/server";
84
75
  import { EventEmitter } from "events";
76
+ import { remember } from "@epic-web/remember";
85
77
  import { Issuer } from "openid-client";
86
78
  import inspector from "node:inspector";
87
79
  import { Resvg } from "@resvg/resvg-js";
@@ -122,405 +114,6 @@ const entryServer = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineP
122
114
  __proto__: null,
123
115
  default: handleRequest
124
116
  }, Symbol.toStringTag, { value: "Module" }));
125
- function makeTimings(type, desc) {
126
- const timings = {
127
- [type]: [{ desc, start: performance.now() }]
128
- };
129
- Object.defineProperty(timings, "toString", {
130
- value() {
131
- return getServerTimeHeader(timings);
132
- },
133
- enumerable: false
134
- });
135
- return timings;
136
- }
137
- function createTimer(type, desc) {
138
- const start = performance.now();
139
- return {
140
- end(timings) {
141
- let timingType = timings[type];
142
- if (!timingType) {
143
- timingType = timings[type] = [];
144
- }
145
- timingType.push({ desc, time: performance.now() - start });
146
- }
147
- };
148
- }
149
- async function time(fn, {
150
- type,
151
- desc,
152
- timings
153
- }) {
154
- const timer = createTimer(type, desc);
155
- const promise = typeof fn === "function" ? fn() : fn;
156
- if (!timings) return promise;
157
- const result = await promise;
158
- timer.end(timings);
159
- return result;
160
- }
161
- function getServerTimeHeader(timings) {
162
- if (!timings) return "";
163
- return Object.entries(timings).map(([key, timingInfos]) => {
164
- const dur = timingInfos.reduce((acc, timingInfo) => {
165
- const time2 = timingInfo.time ?? performance.now() - timingInfo.start;
166
- return acc + time2;
167
- }, 0).toFixed(1);
168
- const desc = timingInfos.map((t) => t.desc).filter(Boolean).join(" & ");
169
- return [
170
- key.replaceAll(/(:| |@|=|;|,|\/|\\|\{|\})/g, "_"),
171
- desc ? `desc=${JSON.stringify(desc)}` : null,
172
- `dur=${dur}`
173
- ].filter(Boolean).join(";");
174
- }).join(",");
175
- }
176
- function combineServerTimings(headers1, headers2) {
177
- const newHeaders = new Headers(headers1);
178
- newHeaders.append("Server-Timing", headers2.get("Server-Timing") ?? "");
179
- return newHeaders.get("Server-Timing") ?? "";
180
- }
181
- function cachifiedTimingReporter(timings, timingKey) {
182
- if (!timings) return;
183
- return ({ key }) => {
184
- timingKey = timingKey ?? key;
185
- const cacheRetrievalTimer = createTimer(
186
- `cache:${timingKey}`,
187
- `${timingKey} cache retrieval`
188
- );
189
- let getFreshValueTimer;
190
- return (event) => {
191
- switch (event.name) {
192
- case "getFreshValueStart":
193
- getFreshValueTimer = createTimer(
194
- `getFreshValue:${timingKey}`,
195
- `request forced to wait for a fresh ${timingKey} value`
196
- );
197
- break;
198
- case "getFreshValueSuccess":
199
- getFreshValueTimer == null ? void 0 : getFreshValueTimer.end(timings);
200
- break;
201
- case "done":
202
- cacheRetrievalTimer.end(timings);
203
- break;
204
- }
205
- };
206
- };
207
- }
208
- const solutionAppCache = makeSingletonCache("SolutionAppCache");
209
- const problemAppCache = makeSingletonCache("ProblemAppCache");
210
- const exampleAppCache = makeSingletonCache("ExampleAppCache");
211
- const playgroundAppCache = makeSingletonCache("PlaygroundAppCache");
212
- const appsCache = makeSingletonCache("AppsCache");
213
- const diffCodeCache = makeSingletonCache("DiffCodeCache");
214
- const diffFilesCache = makeSingletonCache("DiffFilesCache");
215
- const compiledMarkdownCache = makeSingletonCache(
216
- "CompiledMarkdownCache"
217
- );
218
- const compiledCodeCache = makeSingletonCache("CompiledCodeCache");
219
- const ogCache = makeSingletonCache("OgCache");
220
- const compiledInstructionMarkdownCache = makeSingletonFsCache("CompiledInstructionMarkdownCache");
221
- const dirModifiedTimeCache = makeSingletonCache(
222
- "DirModifiedTimeCache"
223
- );
224
- const cacheDir = path.join(os.homedir(), ".epicshop", "cache");
225
- const fsCache = makeSingletonFsCache("FsCache");
226
- async function getAllFileCacheEntries() {
227
- const files = await fsExtra.readdir(cacheDir);
228
- const entries = await Promise.all(
229
- files.map(async (file) => {
230
- const filePath = path.join(cacheDir, file);
231
- const data = await fsExtra.readJSON(filePath);
232
- return data;
233
- }).filter(Boolean)
234
- );
235
- return entries;
236
- }
237
- async function deleteCache() {
238
- if (process.env.EPICSHOP_DEPLOYED) return null;
239
- try {
240
- if (await fsExtra.exists(cacheDir)) {
241
- await fsExtra.remove(cacheDir);
242
- }
243
- } catch (error) {
244
- console.error(`Error deleting the cache in ${cacheDir}`, error);
245
- }
246
- }
247
- function makeSingletonCache(name) {
248
- return remember(name, () => {
249
- const lruInstance = new LRUCache({
250
- max: 1e3
251
- });
252
- const lru = {
253
- name,
254
- set: (key, value) => {
255
- const ttl = C.totalTtl(value.metadata);
256
- lruInstance.set(key, value, {
257
- ttl: ttl === Infinity ? void 0 : ttl,
258
- start: value.metadata.createdTime
259
- });
260
- return value;
261
- },
262
- get: (key) => lruInstance.get(key),
263
- delete: (key) => lruInstance.delete(key)
264
- };
265
- return lru;
266
- });
267
- }
268
- function makeSingletonFsCache(name) {
269
- return remember(name, () => {
270
- const cacheDir2 = path.join(os.homedir(), ".epicshop", "cache", name);
271
- const fsCache2 = {
272
- name: `Filesystem cache (${name})`,
273
- async get(key) {
274
- try {
275
- const filePath = path.join(cacheDir2, md5(key));
276
- const data = await fsExtra.readJSON(filePath);
277
- if (data.entry) return data.entry;
278
- return null;
279
- } catch (error) {
280
- if (error instanceof Error && "code" in error && error.code === "ENOENT") {
281
- return null;
282
- }
283
- throw error;
284
- }
285
- },
286
- async set(key, entry2) {
287
- const filePath = path.join(cacheDir2, md5(key));
288
- await fsExtra.ensureDir(path.dirname(filePath));
289
- await fsExtra.writeJSON(filePath, { key, entry: entry2 });
290
- },
291
- async delete(key) {
292
- const filePath = path.join(cacheDir2, md5(key));
293
- await fsExtra.remove(filePath);
294
- }
295
- };
296
- return fsCache2;
297
- });
298
- }
299
- async function cachified({
300
- request,
301
- timings,
302
- key,
303
- timingKey = key.length > 18 ? `${key.slice(0, 7)}...${key.slice(-8)}` : key,
304
- ...options
305
- }) {
306
- const forceFresh = await shouldForceFresh({
307
- forceFresh: options.forceFresh,
308
- request,
309
- key
310
- });
311
- return C.cachified(
312
- {
313
- ...options,
314
- key,
315
- forceFresh
316
- },
317
- C.mergeReporters(
318
- cachifiedTimingReporter(timings, timingKey),
319
- process.env.EPICSHOP_DEBUG_CACHE ? verboseReporter() : void 0
320
- )
321
- );
322
- }
323
- async function shouldForceFresh({
324
- forceFresh,
325
- request,
326
- key
327
- }) {
328
- if (typeof forceFresh === "boolean") return forceFresh;
329
- if (typeof forceFresh === "string" && key) {
330
- return forceFresh.split(",").includes(key);
331
- }
332
- if (!request) return false;
333
- const fresh = new URL(request.url).searchParams.get("fresh");
334
- if (typeof fresh !== "string") return false;
335
- if (fresh === "") return true;
336
- if (!key) return false;
337
- return fresh.split(",").includes(key);
338
- }
339
- const DiscordMemberSchema = z.object({
340
- avatarURL: z.string().nullable().optional(),
341
- displayName: z.string(),
342
- id: z.string()
343
- });
344
- const TokenSetSchema = z.object({
345
- access_token: z.string(),
346
- token_type: z.string(),
347
- scope: z.string()
348
- });
349
- const PlayerPreferencesSchema = z.object({
350
- volumeRate: z.number().optional(),
351
- playbackRate: z.number().optional(),
352
- autoplay: z.boolean().optional(),
353
- subtitle: z.object({
354
- id: z.string().nullable().default(null),
355
- mode: z.literal("disabled").or(z.literal("hidden")).or(z.literal("showing")).nullable().default("disabled")
356
- }).optional().default({}),
357
- muted: z.boolean().optional(),
358
- theater: z.boolean().optional(),
359
- defaultView: z.string().optional(),
360
- activeSidebarTab: z.number().optional()
361
- }).optional().default({});
362
- const PresencePreferencesSchema = z.object({
363
- optOut: z.boolean()
364
- }).optional().default({ optOut: false });
365
- const AuthInfoSchema = z.object({
366
- tokenSet: TokenSetSchema,
367
- email: z.string(),
368
- name: z.string().nullable().optional()
369
- }).transform((d) => ({ ...d, id: md5(d.email) }));
370
- const DataSchema = z.object({
371
- onboarding: z.object({
372
- tourVideosWatched: z.array(z.string()).default([])
373
- }).passthrough().optional().default({ tourVideosWatched: [] }),
374
- preferences: z.object({
375
- player: PlayerPreferencesSchema,
376
- presence: PresencePreferencesSchema
377
- }).optional().default({}),
378
- authInfo: AuthInfoSchema.optional(),
379
- discordMember: DiscordMemberSchema.optional()
380
- });
381
- const appDir = path.join(os.homedir(), ".epicshop");
382
- const dbPath = path.join(appDir, "data.json");
383
- async function deleteDb() {
384
- if (process.env.EPICSHOP_DEPLOYED) return null;
385
- try {
386
- if (await fsExtra.exists(dbPath)) {
387
- await fsExtra.remove(dbPath);
388
- }
389
- } catch (error) {
390
- console.error(`Error deleting the database in ${dbPath}`, error);
391
- }
392
- }
393
- async function readDb() {
394
- if (process.env.EPICSHOP_DEPLOYED) return null;
395
- try {
396
- if (await fsExtra.exists(dbPath)) {
397
- const db = DataSchema.parse(await fsExtra.readJSON(dbPath));
398
- return db;
399
- }
400
- } catch (error) {
401
- console.error(
402
- `Error reading the database in ${dbPath}, moving it to a .bkp file to avoid parsing errors in the future`,
403
- error
404
- );
405
- void fsExtra.move(dbPath, `${dbPath}.bkp`).catch(() => {
406
- });
407
- }
408
- return null;
409
- }
410
- async function getAuthInfo() {
411
- const data = await readDb();
412
- return (data == null ? void 0 : data.authInfo) ?? null;
413
- }
414
- async function getUserInfo() {
415
- var _a, _b;
416
- const db = await readDb();
417
- if (!(db == null ? void 0 : db.authInfo)) return null;
418
- return {
419
- id: db.authInfo.id,
420
- name: ((_a = db.discordMember) == null ? void 0 : _a.displayName) ?? db.authInfo.name ?? null,
421
- email: db.authInfo.email,
422
- avatarUrl: ((_b = db.discordMember) == null ? void 0 : _b.avatarURL) ?? getGravatar({ email: db.authInfo.email, size: 288 })
423
- };
424
- }
425
- function getGravatar({ email, size }) {
426
- const gravatarOptions = new URLSearchParams({
427
- size: size.toString(),
428
- default: "identicon"
429
- });
430
- const gravatarUrl = `https://www.gravatar.com/avatar/${md5(
431
- email
432
- )}?${gravatarOptions.toString()}`;
433
- return gravatarUrl;
434
- }
435
- async function requireAuthInfo({
436
- request,
437
- redirectTo
438
- }) {
439
- const authInfo = await getAuthInfo();
440
- if (!authInfo) {
441
- const requestUrl = new URL(request.url);
442
- redirectTo = redirectTo === null ? null : redirectTo ?? `${requestUrl.pathname}${requestUrl.search}`;
443
- const loginParams = redirectTo ? new URLSearchParams({ redirectTo }) : null;
444
- const loginRedirect = ["/login", loginParams == null ? void 0 : loginParams.toString()].filter(Boolean).join("?");
445
- throw redirect(loginRedirect);
446
- }
447
- return authInfo;
448
- }
449
- async function setAuthInfo({
450
- tokenSet,
451
- email = "unknown@example.com",
452
- name
453
- }) {
454
- const data = await readDb();
455
- const authInfo = AuthInfoSchema.parse({ tokenSet, email, name });
456
- await fsExtra.ensureDir(appDir);
457
- await fsExtra.writeJSON(dbPath, { ...data, authInfo });
458
- return authInfo;
459
- }
460
- async function getPreferences() {
461
- const data = await readDb();
462
- return (data == null ? void 0 : data.preferences) ?? null;
463
- }
464
- async function setPlayerPreferences(playerPreferences) {
465
- const data = await readDb();
466
- const updatedData = {
467
- ...data,
468
- preferences: { ...data == null ? void 0 : data.preferences, player: playerPreferences }
469
- };
470
- await fsExtra.ensureDir(appDir);
471
- await fsExtra.writeJSON(dbPath, updatedData);
472
- return updatedData.preferences.player;
473
- }
474
- async function setPresencePreferences(presnecePreferences) {
475
- const data = await readDb();
476
- const updatedData = {
477
- ...data,
478
- preferences: { ...data == null ? void 0 : data.preferences, presence: presnecePreferences }
479
- };
480
- await fsExtra.ensureDir(appDir);
481
- await fsExtra.writeJSON(dbPath, updatedData);
482
- return updatedData.preferences.presence;
483
- }
484
- async function getDiscordMember() {
485
- const data = await readDb();
486
- return (data == null ? void 0 : data.discordMember) ?? null;
487
- }
488
- async function setDiscordMember(discordMember) {
489
- const data = await readDb();
490
- const updatedData = {
491
- ...data,
492
- discordMember
493
- };
494
- await fsExtra.ensureDir(appDir);
495
- await fsExtra.writeJSON(dbPath, updatedData);
496
- return updatedData.discordMember;
497
- }
498
- async function deleteDiscordInfo() {
499
- const data = await readDb();
500
- data == null ? true : delete data.discordMember;
501
- await fsExtra.ensureDir(appDir);
502
- await fsExtra.writeJSON(dbPath, data);
503
- }
504
- async function readOnboardingData() {
505
- const data = await readDb();
506
- return (data == null ? void 0 : data.onboarding) ?? null;
507
- }
508
- async function markOnboardingVideoWatched(videoUrl) {
509
- const data = await readDb();
510
- const updatedData = {
511
- ...data,
512
- onboarding: {
513
- ...data == null ? void 0 : data.onboarding,
514
- tourVideosWatched: [
515
- ...(data == null ? void 0 : data.onboarding.tourVideosWatched) ?? [],
516
- videoUrl
517
- ].filter(Boolean)
518
- }
519
- };
520
- await fsExtra.ensureDir(appDir);
521
- await fsExtra.writeJSON(dbPath, updatedData);
522
- return updatedData.onboarding;
523
- }
524
117
  const partykitRoom = "epic-web-presence";
525
118
  const partykitBaseUrl = `https://epic-web-presence.kentcdodds.partykit.dev/parties/main/${partykitRoom}`;
526
119
  const UserSchema = z.object({
@@ -600,1835 +193,6 @@ function uniqueUsers(users) {
600
193
  return true;
601
194
  });
602
195
  }
603
- function trimCodeBlocks() {
604
- return async function transformer(tree) {
605
- visit(tree, "element", (preNode) => {
606
- if (preNode.tagName !== "pre" || !preNode.children.length) {
607
- return;
608
- }
609
- const codeNode = preNode.children[0];
610
- if (!codeNode || codeNode.type !== "element" || codeNode.tagName !== "code") {
611
- return;
612
- }
613
- const [codeStringNode] = codeNode.children;
614
- if (!codeStringNode) return;
615
- if (codeStringNode.type !== "text") {
616
- console.warn(
617
- `trimCodeBlocks: Unexpected: codeStringNode type is not "text": ${codeStringNode.type}`
618
- );
619
- return;
620
- }
621
- codeStringNode.value = codeStringNode.value.trimEnd();
622
- });
623
- };
624
- }
625
- function removePreContainerDivs() {
626
- return async function preContainerDivsTransformer(tree) {
627
- visit(
628
- tree,
629
- { type: "element", tagName: "pre" },
630
- function visitor(node, index, parent) {
631
- if ((parent == null ? void 0 : parent.type) !== "element") return;
632
- if (parent.tagName !== "div") return;
633
- if (parent.children.length !== 1 && index === 0) return;
634
- Object.assign(parent, node);
635
- }
636
- );
637
- };
638
- }
639
- const rehypePlugins = [
640
- trimCodeBlocks,
641
- remarkCodeBlocksShiki,
642
- removePreContainerDivs
643
- ];
644
- const verboseLog = process.env.EPICSHOP_VERBOSE_LOG === "true" ? console.log : () => {
645
- };
646
- async function compileMdx(file, {
647
- request,
648
- timings,
649
- forceFresh
650
- } = {}) {
651
- const stat = await fs.promises.stat(file).catch((error) => ({ error }));
652
- if ("error" in stat) {
653
- throw new Error(`File stat cannot be read: ${stat.error}`);
654
- }
655
- const key = `file:${file}`;
656
- forceFresh = await shouldForceFresh({ forceFresh, request, key });
657
- const existingCacheEntry = await compiledInstructionMarkdownCache.get(key);
658
- if (!forceFresh && existingCacheEntry) {
659
- forceFresh = stat.mtimeMs > existingCacheEntry.metadata.createdTime;
660
- }
661
- return cachified({
662
- key,
663
- cache: compiledInstructionMarkdownCache,
664
- request,
665
- timings,
666
- forceFresh,
667
- getFreshValue: () => compileMdxImpl(file)
668
- });
669
- }
670
- async function compileMdxImpl(file) {
671
- let title = null;
672
- const epicVideoEmbeds = [];
673
- try {
674
- verboseLog(`Compiling ${file}`);
675
- const bundleResult = await queuedBundleMDX({
676
- file,
677
- cwd: path.dirname(file),
678
- mdxOptions(options) {
679
- options.remarkPlugins = [
680
- ...options.remarkPlugins ?? [],
681
- [remarkAutolinkHeadings, { behavior: "wrap" }],
682
- gfm,
683
- () => (tree) => {
684
- visit(tree, "heading", (node) => {
685
- if (title) return;
686
- if (node.depth === 1) {
687
- visit(node, "text", (textNode) => {
688
- title = textNode.value.trim();
689
- });
690
- }
691
- });
692
- title = title ? title.replace(/^\d+\. /, "").trim() : null;
693
- },
694
- () => (tree) => {
695
- visit(tree, "mdxJsxFlowElement", (jsxEl) => {
696
- if (jsxEl.name !== "EpicVideo") return;
697
- const urlAttr = jsxEl.attributes.find(
698
- // @ts-expect-error no idea why this started being an issue suddenly 🤷‍♂️
699
- (a) => a.type === "mdxJsxAttribute" && a.name === "url"
700
- );
701
- if (!urlAttr) return;
702
- let url = urlAttr.value;
703
- if (typeof url !== "string") return;
704
- if (url.endsWith("/")) url = url.slice(0, -1);
705
- epicVideoEmbeds.push(url);
706
- });
707
- },
708
- emoji
709
- ];
710
- options.rehypePlugins = [
711
- ...options.rehypePlugins ?? [],
712
- ...rehypePlugins
713
- ];
714
- options.mdxExtensions = [".mdx", ".md"];
715
- options.format = "mdx";
716
- options.development = false;
717
- return options;
718
- }
719
- });
720
- if (!bundleResult) throw new Error(`Timeout for file: ${file}`);
721
- const result = { code: bundleResult.code, title, epicVideoEmbeds };
722
- return result;
723
- } catch (error) {
724
- console.error(`Compilation error for file: `, file, error);
725
- throw error;
726
- } finally {
727
- verboseLog(`Successfully compiled ${file}`);
728
- }
729
- }
730
- async function compileMarkdownString(markdownString) {
731
- return cachified({
732
- key: markdownString,
733
- cache: compiledMarkdownCache,
734
- ttl: 1e3 * 60 * 60 * 24,
735
- getFreshValue: async () => {
736
- try {
737
- verboseLog(`Compiling string`, markdownString);
738
- const result = await queuedBundleMDX({
739
- source: markdownString,
740
- mdxOptions(options) {
741
- options.rehypePlugins = [
742
- ...options.rehypePlugins ?? [],
743
- ...rehypePlugins
744
- ];
745
- options.development = false;
746
- return options;
747
- }
748
- });
749
- if (!result) throw new Error(`Timed out compiling markdown string`);
750
- return result.code;
751
- } catch (error) {
752
- console.error(`Compilation error for code: `, markdownString, error);
753
- throw error;
754
- } finally {
755
- verboseLog(`Successfully compiled string`, markdownString);
756
- }
757
- }
758
- });
759
- }
760
- let _queue$1 = null;
761
- async function getQueue$1() {
762
- if (_queue$1) return _queue$1;
763
- _queue$1 = new PQueue({
764
- concurrency: 1,
765
- throwOnTimeout: true,
766
- timeout: 1e3 * 60
767
- });
768
- return _queue$1;
769
- }
770
- async function queuedBundleMDX(...args) {
771
- const queue = await getQueue$1();
772
- const result = await queue.add(() => bundleMDX(...args));
773
- return result;
774
- }
775
- const workshopRoot$1 = process.env.EPICSHOP_CONTEXT_CWD ?? process.cwd();
776
- const rootPkgJson = path$1.join(workshopRoot$1, "package.json");
777
- const StackBlitzConfigSchema = z.object({
778
- // we default this to `${exerciseTitle} (${type})`
779
- title: z.string().optional(),
780
- // stackblitz defaults this to dev automatically
781
- startScript: z.string().optional(),
782
- // if no value is provided, then stackblitz defaults this to whatever
783
- // looks best based on the width of the screen
784
- view: z.union([z.literal("editor"), z.literal("preview"), z.literal("both")]).optional(),
785
- file: z.string().optional()
786
- });
787
- const InstructorSchema = z.object({
788
- name: z.string().optional(),
789
- avatar: z.string().optional(),
790
- "𝕏": z.string().optional(),
791
- xHandle: z.string().optional()
792
- });
793
- const WorkshopConfigSchema = z.object({
794
- title: z.string(),
795
- subtitle: z.string().optional(),
796
- instructor: InstructorSchema.optional(),
797
- epicWorkshopHost: z.string().optional(),
798
- epicWorkshopSlug: z.string().optional(),
799
- product: z.object({
800
- host: z.string().default("www.epicweb.dev"),
801
- displayName: z.string().default("EpicWeb.dev"),
802
- displayNameShort: z.string().default("Epic Web"),
803
- logo: z.string().default("/logo.svg"),
804
- slug: z.string().optional(),
805
- discordChannelId: z.string().default("1161045224907341972"),
806
- discordTags: z.array(z.string()).optional()
807
- }).default({}),
808
- onboardingVideo: z.string().default(
809
- "https://www.epicweb.dev/tips/get-started-with-the-epic-workshop-app"
810
- ),
811
- githubRepo: z.string(),
812
- githubRoot: z.string(),
813
- stackBlitzConfig: StackBlitzConfigSchema.optional(),
814
- forms: z.object({
815
- workshop: z.string().default(
816
- "https://docs.google.com/forms/d/e/1FAIpQLSdRmj9p8-5zyoqRzxp3UpqSbC3aFkweXvvJIKes0a5s894gzg/viewform?hl=en&embedded=true&entry.2123647600={workshopTitle}"
817
- ),
818
- exercise: z.string().default(
819
- "https://docs.google.com/forms/d/e/1FAIpQLSf3o9xyjQepTlOTH5Z7ZwkeSTdXh6YWI_RGc9KiyD3oUN0p6w/viewform?hl=en&embedded=true&entry.1836176234={workshopTitle}&entry.428900931={exerciseTitle}"
820
- )
821
- }).default({}),
822
- testTab: z.object({
823
- enabled: z.boolean().default(true)
824
- }).default({}),
825
- scripts: z.object({
826
- postupdate: z.string().optional()
827
- }).optional(),
828
- initialRoute: z.string().optional().default("/")
829
- }).transform((data) => {
830
- return {
831
- ...data,
832
- product: {
833
- ...data.product,
834
- displayNameShort: data.product.displayNameShort ?? data.product.displayName,
835
- // for backwards compatibility
836
- host: data.product.host ?? data.epicWorkshopHost,
837
- slug: data.product.slug ?? data.epicWorkshopSlug
838
- }
839
- };
840
- });
841
- const configCache = {
842
- config: null,
843
- modified: 0
844
- };
845
- function getWorkshopConfig() {
846
- if (configCache.config && configCache.modified > fs$1.statSync(rootPkgJson).mtimeMs) {
847
- return configCache.config;
848
- }
849
- const packageJsonPath = path$1.join(workshopRoot$1, "package.json");
850
- let packageJson;
851
- try {
852
- const packageJsonContent = fs$1.readFileSync(packageJsonPath, "utf8");
853
- packageJson = JSON.parse(packageJsonContent);
854
- } catch (error) {
855
- console.error(`Error reading or parsing package.json:`, error);
856
- if (error instanceof Error && error.message.includes("ENOENT")) {
857
- throw new Error(
858
- `package.json not found at ${packageJsonPath}. Please ensure you're running the command from the correct directory.`
859
- );
860
- } else if (error instanceof SyntaxError) {
861
- throw new Error(
862
- `Invalid JSON in package.json at ${packageJsonPath}. Please check the file for syntax errors.`
863
- );
864
- }
865
- throw new Error(
866
- `Could not find and parse package.json at ${packageJsonPath}`
867
- );
868
- }
869
- const epicshopConfig = packageJson.epicshop || {};
870
- if (epicshopConfig.githubRepo) {
871
- epicshopConfig.githubRoot = `${epicshopConfig.githubRepo.replace(/\/$/, "")}/tree/main`;
872
- } else if (epicshopConfig.githubRoot) {
873
- epicshopConfig.githubRepo = epicshopConfig.githubRoot.replace(
874
- /\/(blob|tree)\/.*$/,
875
- ""
876
- );
877
- epicshopConfig.githubRoot = `${epicshopConfig.githubRepo}/tree/main`;
878
- } else {
879
- throw new Error(
880
- "Either githubRepo or githubRoot is required in the epicshop configuration"
881
- );
882
- }
883
- try {
884
- const parsedConfig = WorkshopConfigSchema.parse(epicshopConfig);
885
- configCache.config = parsedConfig;
886
- configCache.modified = fs$1.statSync(rootPkgJson).mtimeMs;
887
- return parsedConfig;
888
- } catch (error) {
889
- if (error instanceof z.ZodError) {
890
- const flattenedErrors = error.flatten();
891
- const errorMessages = Object.entries(flattenedErrors.fieldErrors).map(([field, errors]) => `${field}: ${errors == null ? void 0 : errors.join(", ")}`).concat(flattenedErrors.formErrors);
892
- throw new Error(
893
- `Invalid epicshop configuration in ${packageJsonPath}:
894
- ${errorMessages.join("\n")}`
895
- );
896
- }
897
- throw error;
898
- }
899
- }
900
- async function getStackBlitzUrl({
901
- fullPath,
902
- title,
903
- type
904
- }) {
905
- var _a;
906
- const workshopConfig = getWorkshopConfig();
907
- const appConfig = await getAppConfig(fullPath);
908
- if (appConfig.stackBlitzConfig === null) return null;
909
- let githubRootUrlString = workshopConfig.githubRoot;
910
- const githubRootUrl = new URL(
911
- githubRootUrlString.replace(/\/blob\//, "/tree/")
912
- );
913
- const githubPart = githubRootUrl.pathname;
914
- const stackBlitzConfig = {
915
- ...appConfig.stackBlitzConfig,
916
- title: ((_a = appConfig.stackBlitzConfig) == null ? void 0 : _a.title) ?? `${title} (${type})`
917
- };
918
- const params = new URLSearchParams(stackBlitzConfig);
919
- const relativePath = fullPath.replace(`${workshopRoot$1}${path$1.sep}`, "");
920
- const stackBlitzUrl = new URL(
921
- `/github${githubPart}/${relativePath}?${params}`,
922
- "https://stackblitz.com"
923
- );
924
- return stackBlitzUrl.toString();
925
- }
926
- async function getAppConfig(fullPath) {
927
- var _a, _b;
928
- const workshopConfig = getWorkshopConfig();
929
- let epicshopConfig = {};
930
- let scripts = {};
931
- const packageJsonPath = path$1.join(fullPath, "package.json");
932
- const packageJsonExists = await fs$1.promises.access(packageJsonPath, fs$1.constants.F_OK).then(() => true).catch(() => false);
933
- if (packageJsonExists) {
934
- const pkg = JSON.parse(
935
- await fs$1.promises.readFile(path$1.join(fullPath, "package.json"), "utf8")
936
- );
937
- epicshopConfig = pkg.epicshop ?? {};
938
- scripts = pkg.scripts ?? {};
939
- }
940
- const AppConfigSchema = z.object({
941
- stackBlitzConfig: StackBlitzConfigSchema.nullable().optional().transform((appStackBlitzConfig) => {
942
- if (appStackBlitzConfig === null) return null;
943
- return {
944
- ...workshopConfig.stackBlitzConfig,
945
- ...appStackBlitzConfig
946
- };
947
- }),
948
- testTab: z.object({
949
- enabled: z.boolean().optional().default(((_a = workshopConfig.testTab) == null ? void 0 : _a.enabled) ?? true)
950
- }).default({}),
951
- scripts: z.object({
952
- test: z.string().optional(),
953
- dev: z.string().optional()
954
- }).default({}),
955
- initialRoute: z.string().optional().default(workshopConfig.initialRoute)
956
- });
957
- const appConfig = {
958
- stackBlitzConfig: epicshopConfig.stackBlitzConfig,
959
- testTab: {
960
- enabled: (_b = epicshopConfig.testTab) == null ? void 0 : _b.enabled
961
- },
962
- scripts: {
963
- test: scripts.test,
964
- dev: scripts.dev
965
- },
966
- initialRoute: epicshopConfig.initialRoute
967
- };
968
- try {
969
- return AppConfigSchema.parse(appConfig);
970
- } catch (error) {
971
- if (error instanceof z.ZodError) {
972
- const flattenedErrors = error.flatten();
973
- const errorMessages = Object.entries(flattenedErrors.fieldErrors).map(([field, errors]) => `${field}: ${errors == null ? void 0 : errors.join(", ")}`).concat(flattenedErrors.formErrors);
974
- throw new Error(
975
- `Invalid app configuration for ${fullPath}:
976
- ${errorMessages.join("\n")}`
977
- );
978
- }
979
- throw error;
980
- }
981
- }
982
- const schema = z.object({
983
- NODE_ENV: z.enum(["production", "development", "test"]).default("development"),
984
- EPICSHOP_GITHUB_REPO: z.string(),
985
- EPICSHOP_GITHUB_ROOT: z.string(),
986
- EPICSHOP_CONTEXT_CWD: z.string()
987
- });
988
- function init$1() {
989
- const parsed = schema.safeParse(process.env);
990
- if (!parsed.success) {
991
- console.error(
992
- "❌ Invalid environment variables:",
993
- parsed.error.flatten().fieldErrors
994
- );
995
- throw new Error("Invalid environment variables");
996
- }
997
- }
998
- function getEnv() {
999
- return {
1000
- MODE: process.env.NODE_ENV,
1001
- EPICSHOP_CONTEXT_CWD: process.env.EPICSHOP_CONTEXT_CWD,
1002
- EPICSHOP_GITHUB_REPO: process.env.EPICSHOP_GITHUB_REPO,
1003
- EPICSHOP_GITHUB_ROOT: process.env.EPICSHOP_GITHUB_ROOT,
1004
- EPICSHOP_DEPLOYED: process.env.EPICSHOP_DEPLOYED === "true" || process.env.EPICSHOP_DEPLOYED === "1"
1005
- };
1006
- }
1007
- async function getDirModifiedTime(dir, { forceFresh = false } = {}) {
1008
- const result = await cachified({
1009
- key: dir,
1010
- cache: dirModifiedTimeCache,
1011
- ttl: 200,
1012
- forceFresh,
1013
- getFreshValue: () => getDirModifiedTimeImpl(dir)
1014
- });
1015
- return result;
1016
- }
1017
- async function getDirModifiedTimeImpl(dir) {
1018
- const isIgnored = await isGitIgnored({ cwd: dir });
1019
- const files = await fs$1.promises.readdir(dir, { withFileTypes: true }).catch(() => []);
1020
- const modifiedTimes2 = [];
1021
- for (const file of files) {
1022
- if (isIgnored(file.name)) continue;
1023
- const filePath = path$1.join(dir, file.name);
1024
- if (file.isDirectory()) {
1025
- modifiedTimes2.push(await getDirModifiedTime(filePath));
1026
- } else {
1027
- try {
1028
- const { mtimeMs } = await fs$1.promises.stat(filePath);
1029
- modifiedTimes2.push(mtimeMs);
1030
- } catch {
1031
- }
1032
- }
1033
- }
1034
- try {
1035
- const { mtimeMs } = await fs$1.promises.stat(dir);
1036
- modifiedTimes2.push(mtimeMs);
1037
- } catch {
1038
- }
1039
- return Math.max(-1, ...modifiedTimes2);
1040
- }
1041
- async function modifiedMoreRecentlyThan(time2, ...dirs) {
1042
- const modifiedTimePromises = dirs.map((dir) => getDirModifiedTime(dir));
1043
- const allFinishedPromise = Promise.all(modifiedTimePromises);
1044
- const firstMoreRecentPromise = modifiedTimePromises.map(
1045
- (p) => p.then((t) => t > time2 ? true : allFinishedPromise.then(() => false))
1046
- );
1047
- const firstMoreRecent = await Promise.race(firstMoreRecentPromise);
1048
- return firstMoreRecent;
1049
- }
1050
- let _queue = null;
1051
- function getQueue() {
1052
- if (_queue) return _queue;
1053
- _queue = new PQueue({
1054
- concurrency: 10,
1055
- throwOnTimeout: true,
1056
- timeout: 1e3 * 60
1057
- });
1058
- return _queue;
1059
- }
1060
- async function queuedGetDirModifiedTime(...args) {
1061
- const queue = getQueue();
1062
- const result = await queue.add(() => getDirModifiedTime(...args));
1063
- return result || -1;
1064
- }
1065
- function getErrorMessage$1(error) {
1066
- if (typeof error === "string") return error;
1067
- if (error && typeof error === "object" && "message" in error && typeof error.message === "string") {
1068
- return error.message;
1069
- }
1070
- console.error("Unable to get error message for error", error);
1071
- return "Unknown Error";
1072
- }
1073
- const isDeployed$1 = process.env.EPICSHOP_DEPLOYED === "true" || process.env.EPICSHOP_DEPLOYED === "1";
1074
- const devProcesses = remember("dev_processes", getDevProcessesMap);
1075
- const testProcesses = remember("test_processes", getTestProcessesMap);
1076
- function getDevProcessesMap() {
1077
- var _a;
1078
- const procs = /* @__PURE__ */ new Map();
1079
- (_a = global.__process_dev_close_with_grace_return__) == null ? void 0 : _a.uninstall();
1080
- global.__process_dev_close_with_grace_return__ = closeWithGrace(async () => {
1081
- for (const [name, proc] of procs.entries()) {
1082
- console.log("closing", name);
1083
- proc.process.kill();
1084
- }
1085
- });
1086
- return procs;
1087
- }
1088
- function getTestProcessesMap() {
1089
- var _a;
1090
- const procs = /* @__PURE__ */ new Map();
1091
- (_a = global.__process_test_close_with_grace_return__) == null ? void 0 : _a.uninstall();
1092
- global.__process_test_close_with_grace_return__ = closeWithGrace(async () => {
1093
- for (const [id, proc] of procs.entries()) {
1094
- if (proc.process) {
1095
- console.log("closing", id);
1096
- proc.process.kill();
1097
- }
1098
- }
1099
- });
1100
- return procs;
1101
- }
1102
- const colors = [
1103
- "blue",
1104
- "green",
1105
- "yellow",
1106
- "red",
1107
- "magenta",
1108
- "redBright",
1109
- "greenBright",
1110
- "yellowBright",
1111
- "blueBright",
1112
- "magentaBright"
1113
- ];
1114
- async function runAppDev(app) {
1115
- if (isDeployed$1) throw new Error("cannot run apps in deployed mode");
1116
- const key = app.name;
1117
- if (devProcesses.has(key)) {
1118
- return { status: "process-running", running: true };
1119
- }
1120
- if (app.dev.type !== "script") {
1121
- return { status: "error", error: "no-server" };
1122
- }
1123
- const { portNumber } = app.dev;
1124
- if (!await isPortAvailable(portNumber)) {
1125
- return { status: "port-unavailable", running: false, portNumber };
1126
- }
1127
- const availableColors = colors.filter(
1128
- (color2) => Array.from(devProcesses.values()).every((p) => p.color !== color2)
1129
- );
1130
- const color = availableColors[devProcesses.size % availableColors.length] ?? "blue";
1131
- const appProcess = spawn("npm", ["run", "dev", "--silent"], {
1132
- cwd: app.fullPath,
1133
- shell: true,
1134
- stdio: ["ignore", "pipe", "pipe"],
1135
- env: {
1136
- ...process.env,
1137
- // TODO: support specifying the env
1138
- NODE_ENV: "development",
1139
- // TODO: support specifying the port
1140
- PORT: String(portNumber),
1141
- APP_SERVER_PORT: String(portNumber),
1142
- // let it pick a random port...
1143
- REMIX_DEV_SERVER_WS_PORT: ""
1144
- }
1145
- });
1146
- const prefix = chalk[color](
1147
- `[${app.name.replace(/^exercises\./, "")}:${portNumber}]`
1148
- );
1149
- function handleStdOutData(data) {
1150
- console.log(
1151
- data.toString("utf-8").split("\n").map((line) => `${prefix} ${line}`).join("\n")
1152
- );
1153
- }
1154
- appProcess.stdout.on("data", handleStdOutData);
1155
- function handleStdErrData(data) {
1156
- console.error(
1157
- data.toString("utf-8").split("\n").map((line) => `${prefix} ${line}`).join("\n")
1158
- );
1159
- }
1160
- appProcess.stderr.on("data", handleStdErrData);
1161
- devProcesses.set(key, { color, process: appProcess, port: portNumber });
1162
- appProcess.on("exit", (code) => {
1163
- appProcess.stdout.off("data", handleStdOutData);
1164
- appProcess.stderr.off("data", handleStdErrData);
1165
- console.log(`${prefix} exited (${code})`);
1166
- devProcesses.delete(key);
1167
- });
1168
- return { status: "process-started", running: true };
1169
- }
1170
- async function runAppTests(app) {
1171
- if (isDeployed$1) throw new Error("cannot run tests in deployed mode");
1172
- const key = app.name;
1173
- if (app.test.type !== "script") {
1174
- return { status: "error", error: "no-test" };
1175
- }
1176
- const testProcess = spawn("npm", ["run", "test", "--silent"], {
1177
- cwd: app.fullPath,
1178
- shell: true,
1179
- stdio: ["ignore", "pipe", "pipe"],
1180
- env: {
1181
- ...process.env,
1182
- // TODO: support specifying the env
1183
- NODE_ENV: "development",
1184
- // TODO: support specifying the port
1185
- PORT: app.dev.type === "script" ? String(app.dev.portNumber) : void 0,
1186
- APP_SERVER_PORT: app.dev.type === "script" ? String(app.dev.portNumber) : void 0,
1187
- // let it pick a random port...
1188
- REMIX_DEV_SERVER_WS_PORT: ""
1189
- }
1190
- });
1191
- const output = [];
1192
- const entry2 = { process: testProcess, output };
1193
- function handleStdOutData(data) {
1194
- output.push({
1195
- type: "stdout",
1196
- content: data.toString("utf-8"),
1197
- timestamp: Date.now()
1198
- });
1199
- }
1200
- testProcess.stdout.on("data", handleStdOutData);
1201
- function handleStdErrData(data) {
1202
- output.push({
1203
- type: "stderr",
1204
- content: data.toString("utf-8"),
1205
- timestamp: Date.now()
1206
- });
1207
- }
1208
- testProcess.stderr.on("data", handleStdErrData);
1209
- testProcess.on("exit", (code) => {
1210
- testProcess.stdout.off("data", handleStdOutData);
1211
- testProcess.stderr.off("data", handleStdErrData);
1212
- entry2.process = null;
1213
- entry2.exitCode = code;
1214
- });
1215
- testProcesses.set(key, entry2);
1216
- return testProcess;
1217
- }
1218
- async function waitOnApp(app) {
1219
- if (app.dev.type === "script") {
1220
- const startTime = Date.now();
1221
- const retryInterval = 100;
1222
- const timeout = 2e4;
1223
- let lastError;
1224
- while (Date.now() - startTime < timeout) {
1225
- try {
1226
- await fetch(`http://localhost:${app.dev.portNumber}`, {
1227
- method: "HEAD",
1228
- headers: { Accept: "*/*" }
1229
- });
1230
- return { status: "success" };
1231
- } catch (error) {
1232
- lastError = error;
1233
- await new Promise((resolve) => setTimeout(resolve, retryInterval));
1234
- }
1235
- }
1236
- return { status: "error", error: getErrorMessage$1(lastError) };
1237
- }
1238
- return null;
1239
- }
1240
- function isPortAvailable(port2) {
1241
- return new Promise((resolve) => {
1242
- const server = net.createServer();
1243
- server.unref();
1244
- server.on("error", () => resolve(false));
1245
- server.listen(Number(port2), () => {
1246
- server.close(() => {
1247
- resolve(true);
1248
- });
1249
- });
1250
- });
1251
- }
1252
- function isAppRunning(app) {
1253
- try {
1254
- const devProcess = devProcesses.get(app.name);
1255
- if (!devProcess) return false;
1256
- devProcess.process.kill(0);
1257
- return true;
1258
- } catch {
1259
- return false;
1260
- }
1261
- }
1262
- function isTestRunning(app) {
1263
- try {
1264
- const testProcess = testProcesses.get(app.name);
1265
- if (!testProcess) return false;
1266
- if (testProcess.process === null) return false;
1267
- testProcess.process.kill(0);
1268
- return true;
1269
- } catch {
1270
- return false;
1271
- }
1272
- }
1273
- function getTestProcessEntry(app) {
1274
- return testProcesses.get(app.name);
1275
- }
1276
- function clearTestProcessEntry(app) {
1277
- return testProcesses.delete(app.name);
1278
- }
1279
- function getProcesses() {
1280
- return { devProcesses, testProcesses };
1281
- }
1282
- async function closeProcess(key) {
1283
- if (isDeployed$1) throw new Error("cannot close processes in deployed mode");
1284
- const proc = devProcesses.get(key);
1285
- if (proc) {
1286
- const exitedPromise = new Promise(
1287
- (resolve) => proc.process.on("exit", resolve)
1288
- );
1289
- if (process.platform === "win32") {
1290
- const { execa: execa2 } = await import("execa");
1291
- await execa2("taskkill", ["/pid", String(proc.process.pid), "/f", "/t"]);
1292
- } else {
1293
- proc.process.kill();
1294
- }
1295
- await Promise.race([
1296
- new Promise((resolve) => setTimeout(resolve, 500)),
1297
- exitedPromise
1298
- ]);
1299
- await stopPort(proc.port);
1300
- devProcesses.delete(key);
1301
- }
1302
- }
1303
- const sleep = (t) => new Promise((resolve) => setTimeout(resolve, t));
1304
- async function stopPort(port2) {
1305
- if (isDeployed$1) throw new Error("cannot stop ports in deployed mode");
1306
- await fkill(`:${port2}`, { force: true, silent: true });
1307
- await waitForPortToBeAvailable(port2);
1308
- }
1309
- async function waitForPortToBeAvailable(port2) {
1310
- const timeout = Date.now() + 1e4;
1311
- let portAvailable = false;
1312
- do {
1313
- portAvailable = await isPortAvailable(port2);
1314
- await sleep(100);
1315
- } while (!portAvailable && Date.now() < timeout);
1316
- if (!portAvailable) {
1317
- console.error("Timed out waiting for the port to become available");
1318
- }
1319
- }
1320
- global.__epicshop_apps_initialized__ ?? (global.__epicshop_apps_initialized__ = false);
1321
- const workshopRoot = process.env.EPICSHOP_CONTEXT_CWD = process.env.EPICSHOP_CONTEXT_CWD ?? process.cwd();
1322
- const playgroundAppNameInfoPath = path$1.join(
1323
- workshopRoot,
1324
- "node_modules",
1325
- ".cache",
1326
- "epicshop",
1327
- "playground.json"
1328
- );
1329
- const BaseAppSchema = z.object({
1330
- /** a unique identifier for the app */
1331
- name: z.string(),
1332
- /** the title of the app used for display (comes from the package.json title prop) */
1333
- title: z.string(),
1334
- /** used when displaying the list of files to match the list of apps in the file system (comes the name of the directory of the app) */
1335
- dirName: z.string(),
1336
- fullPath: z.string(),
1337
- relativePath: z.string(),
1338
- instructionsCode: z.string().optional(),
1339
- epicVideoEmbeds: z.array(z.string()).optional(),
1340
- test: z.union([
1341
- z.object({
1342
- type: z.literal("browser"),
1343
- pathname: z.string(),
1344
- testFiles: z.array(z.string())
1345
- }),
1346
- z.object({ type: z.literal("script"), script: z.string() }),
1347
- z.object({ type: z.literal("none") })
1348
- ]),
1349
- dev: z.union([
1350
- z.object({ type: z.literal("browser"), pathname: z.string() }),
1351
- z.object({
1352
- type: z.literal("script"),
1353
- portNumber: z.number(),
1354
- initialRoute: z.string()
1355
- }),
1356
- z.object({ type: z.literal("none") })
1357
- ]),
1358
- stackBlitzUrl: z.string().nullable()
1359
- });
1360
- const BaseExerciseStepAppSchema = BaseAppSchema.extend({
1361
- exerciseNumber: z.number(),
1362
- stepNumber: z.number()
1363
- });
1364
- const ProblemAppSchema = BaseExerciseStepAppSchema.extend({
1365
- type: z.literal("problem"),
1366
- solutionName: z.string().nullable()
1367
- });
1368
- const SolutionAppSchema = BaseExerciseStepAppSchema.extend({
1369
- type: z.literal("solution"),
1370
- problemName: z.string().nullable()
1371
- });
1372
- const ExampleAppSchema = BaseAppSchema.extend({
1373
- type: z.literal("example")
1374
- });
1375
- const PlaygroundAppSchema = BaseAppSchema.extend({
1376
- type: z.literal("playground"),
1377
- appName: z.string(),
1378
- isUpToDate: z.boolean()
1379
- });
1380
- z.object({
1381
- /** a unique identifier for the exercise */
1382
- exerciseNumber: z.number(),
1383
- /** used when displaying the list of files to match the list of apps in the file system (comes the name of the directory of the app) */
1384
- dirName: z.string(),
1385
- /** the title of the app used for display (comes from the first h1 in the README) */
1386
- title: z.string(),
1387
- instructionsCode: z.string().optional(),
1388
- finishedCode: z.string().optional(),
1389
- instructionsEpicVideoEmbeds: z.array(z.string()).optional(),
1390
- finishedEpicVideoEmbeds: z.array(z.string()).optional(),
1391
- steps: z.array(
1392
- z.union([
1393
- z.object({
1394
- stepNumber: z.number(),
1395
- problem: ProblemAppSchema,
1396
- solution: SolutionAppSchema
1397
- }),
1398
- z.object({
1399
- stepNumber: z.number(),
1400
- problem: ProblemAppSchema,
1401
- solution: z.never().optional()
1402
- }),
1403
- z.object({
1404
- stepNumber: z.number(),
1405
- problem: z.never().optional(),
1406
- solution: SolutionAppSchema
1407
- })
1408
- ])
1409
- ),
1410
- problems: z.array(ProblemAppSchema),
1411
- solutions: z.array(SolutionAppSchema)
1412
- });
1413
- const ExerciseStepAppSchema = z.union([ProblemAppSchema, SolutionAppSchema]);
1414
- const AppSchema = z.union([
1415
- ExerciseStepAppSchema,
1416
- PlaygroundAppSchema,
1417
- ExampleAppSchema
1418
- ]);
1419
- function isApp(app) {
1420
- return AppSchema.safeParse(app).success;
1421
- }
1422
- function isProblemApp(app) {
1423
- return ProblemAppSchema.safeParse(app).success;
1424
- }
1425
- function isSolutionApp(app) {
1426
- return SolutionAppSchema.safeParse(app).success;
1427
- }
1428
- function isPlaygroundApp(app) {
1429
- return isApp(app) && app.type === "playground";
1430
- }
1431
- function isExampleApp(app) {
1432
- return isApp(app) && app.type === "example";
1433
- }
1434
- function isExerciseStepApp(app) {
1435
- return isProblemApp(app) || isSolutionApp(app);
1436
- }
1437
- function exists(file) {
1438
- return fs$1.promises.access(file, fs$1.constants.F_OK).then(
1439
- () => true,
1440
- () => false
1441
- );
1442
- }
1443
- async function firstToExist(...files) {
1444
- const results = await Promise.all(files.map(exists));
1445
- const index = results.findIndex(Boolean);
1446
- return index === -1 ? null : files[index];
1447
- }
1448
- const modifiedTimes = remember(
1449
- "modified_times",
1450
- () => /* @__PURE__ */ new Map()
1451
- );
1452
- async function init() {
1453
- if (global.__epicshop_apps_initialized__) return;
1454
- global.__epicshop_apps_initialized__ = true;
1455
- const config = getWorkshopConfig();
1456
- process.env.EPICSHOP_GITHUB_REPO = config.githubRepo;
1457
- process.env.EPICSHOP_GITHUB_ROOT = config.githubRoot;
1458
- init$1();
1459
- global.ENV = getEnv();
1460
- if (!ENV.EPICSHOP_DEPLOYED && process.env.EPICSHOP_ENABLE_WATCHER === "true") {
1461
- const isIgnored = await isGitIgnored({ cwd: workshopRoot });
1462
- const filesToWatch = ["README.mdx", "FINISHED.mdx", "package.json"];
1463
- const chok = chokidar.watch(["examples", "playground", "exercises"], {
1464
- cwd: workshopRoot,
1465
- ignoreInitial: true,
1466
- ignored(filePath, stats) {
1467
- if (isIgnored(filePath)) return true;
1468
- if (filePath.includes(".git")) return true;
1469
- if (stats == null ? void 0 : stats.isDirectory()) {
1470
- if (filePath.endsWith("playground")) return false;
1471
- const pathParts = filePath.split(path$1.sep);
1472
- if (pathParts.at(-2) === "examples") return false;
1473
- if (pathParts.at(-3) === "exercises") return false;
1474
- if (pathParts.at(-2) === "exercises") return false;
1475
- if (pathParts.at(-1) === "exercises") return false;
1476
- return true;
1477
- }
1478
- return (stats == null ? void 0 : stats.isFile()) ? !filesToWatch.some((file) => filePath.endsWith(file)) : false;
1479
- }
1480
- });
1481
- chok.on("all", (_event, filePath) => {
1482
- setModifiedTimesForAppDirs(path$1.join(workshopRoot, filePath));
1483
- });
1484
- closeWithGrace(() => chok.close());
1485
- }
1486
- }
1487
- function getForceFresh$1(cacheEntry) {
1488
- if (!cacheEntry) return true;
1489
- const latestModifiedTime = Math.max(...Array.from(modifiedTimes.values()));
1490
- if (!latestModifiedTime) return void 0;
1491
- return latestModifiedTime > cacheEntry.metadata.createdTime ? true : void 0;
1492
- }
1493
- function setModifiedTimesForAppDirs(...filePaths) {
1494
- const now = Date.now();
1495
- for (const filePath of filePaths) {
1496
- const appDir2 = getAppPathFromFilePath(filePath);
1497
- if (appDir2) {
1498
- modifiedTimes.set(appDir2, now);
1499
- } else {
1500
- console.warn(`filePath ${filePath} does not match any app dir`);
1501
- }
1502
- }
1503
- }
1504
- function getForceFreshForDir(cacheEntry, ...dirs) {
1505
- const truthyDirs = dirs.filter(Boolean);
1506
- for (const d of truthyDirs) {
1507
- if (!path$1.isAbsolute(d)) {
1508
- throw new Error(`Trying to get force fresh for non-absolute path: ${d}`);
1509
- }
1510
- }
1511
- if (!cacheEntry) return true;
1512
- const latestModifiedTime = truthyDirs.reduce((latest, dir) => {
1513
- const modifiedTime = modifiedTimes.get(dir);
1514
- return modifiedTime && modifiedTime > latest ? modifiedTime : latest;
1515
- }, 0);
1516
- if (!latestModifiedTime) return void 0;
1517
- return latestModifiedTime > cacheEntry.metadata.createdTime ? true : void 0;
1518
- }
1519
- async function readDir(dir) {
1520
- if (await exists(dir)) {
1521
- return fs$1.promises.readdir(dir);
1522
- }
1523
- return [];
1524
- }
1525
- async function compileMdxIfExists(filepath, { request } = {}) {
1526
- filepath = filepath.replace(/\\/g, "/");
1527
- if (await exists(filepath)) {
1528
- const compiled = await compileMdx(filepath, { request }).catch((error) => {
1529
- console.error(`Error compiling ${filepath}:`, error);
1530
- return null;
1531
- });
1532
- return compiled;
1533
- }
1534
- return null;
1535
- }
1536
- function getAppDirInfo(appDir2) {
1537
- const regex = /^(?<stepNumber>\d+)\.(problem|solution)(\.(?<subtitle>.*))?$/;
1538
- const match = regex.exec(appDir2);
1539
- if (!(match == null ? void 0 : match.groups)) {
1540
- console.info(
1541
- `Ignoring directory "${appDir2}" which does not match regex "${regex}"`,
1542
- new Error().stack
1543
- );
1544
- return null;
1545
- }
1546
- const { stepNumber: stepNumberString, subtitle } = match.groups;
1547
- const stepNumber = Number(stepNumberString);
1548
- if (!stepNumber || !Number.isFinite(stepNumber)) {
1549
- throw new Error(
1550
- `Cannot identify the stepNumber for app directory "${appDir2}" with regex "${regex}"`
1551
- );
1552
- }
1553
- const type = match[2];
1554
- return { stepNumber, type, subtitle };
1555
- }
1556
- function extractExerciseNumber(dir) {
1557
- var _a, _b;
1558
- const regex = /^(?<number>\d+)\./;
1559
- const number = (_b = (_a = regex.exec(dir)) == null ? void 0 : _a.groups) == null ? void 0 : _b.number;
1560
- if (!number) {
1561
- return null;
1562
- }
1563
- return Number(number);
1564
- }
1565
- async function getExercises({
1566
- timings,
1567
- request
1568
- } = {}) {
1569
- const apps = await getApps({ request, timings });
1570
- const exerciseDirs = await readDir(path$1.join(workshopRoot, "exercises"));
1571
- const exercises = [];
1572
- for (const dirName of exerciseDirs) {
1573
- const exerciseNumber = extractExerciseNumber(dirName);
1574
- if (!exerciseNumber) continue;
1575
- const compiledReadme = await compileMdxIfExists(
1576
- path$1.join(workshopRoot, "exercises", dirName, "README.mdx"),
1577
- { request }
1578
- );
1579
- const compiledFinished = await compileMdxIfExists(
1580
- path$1.join(workshopRoot, "exercises", dirName, "FINISHED.mdx"),
1581
- { request }
1582
- );
1583
- const steps = [];
1584
- const exerciseApps = apps.filter(isExerciseStepApp).filter((app) => app.exerciseNumber === exerciseNumber);
1585
- for (const app of exerciseApps) {
1586
- steps[app.stepNumber - 1] = {
1587
- ...steps[app.stepNumber - 1],
1588
- [app.type]: app,
1589
- stepNumber: app.stepNumber
1590
- };
1591
- }
1592
- exercises.push({
1593
- exerciseNumber,
1594
- dirName,
1595
- instructionsCode: compiledReadme == null ? void 0 : compiledReadme.code,
1596
- finishedCode: compiledFinished == null ? void 0 : compiledFinished.code,
1597
- title: (compiledReadme == null ? void 0 : compiledReadme.title) ?? dirName,
1598
- instructionsEpicVideoEmbeds: compiledReadme == null ? void 0 : compiledReadme.epicVideoEmbeds,
1599
- finishedEpicVideoEmbeds: compiledFinished == null ? void 0 : compiledFinished.epicVideoEmbeds,
1600
- steps,
1601
- problems: apps.filter(isProblemApp).filter((app) => app.exerciseNumber === exerciseNumber),
1602
- solutions: apps.filter(isSolutionApp).filter((app) => app.exerciseNumber === exerciseNumber)
1603
- });
1604
- }
1605
- return exercises;
1606
- }
1607
- let appCallCount = 0;
1608
- async function getApps({
1609
- timings,
1610
- request,
1611
- forceFresh
1612
- } = {}) {
1613
- await init();
1614
- const key = "apps";
1615
- const apps = await cachified({
1616
- key,
1617
- cache: appsCache,
1618
- timings,
1619
- timingKey: `apps_${appCallCount++}`,
1620
- request,
1621
- // This entire cache is to avoid a single request getting a fresh value
1622
- // multiple times unnecessarily (because getApps is called many times)
1623
- ttl: 1e3 * 60 * 60 * 24,
1624
- forceFresh: forceFresh ?? getForceFresh$1(appsCache.get(key)),
1625
- getFreshValue: async () => {
1626
- const [playgroundApp, problemApps, solutionApps, exampleApps] = await Promise.all([
1627
- time(() => getPlaygroundApp({ request, timings }), {
1628
- type: "getPlaygroundApp",
1629
- timings
1630
- }),
1631
- time(() => getProblemApps({ request, timings }), {
1632
- type: "getProblemApps",
1633
- timings
1634
- }),
1635
- time(() => getSolutionApps({ request, timings }), {
1636
- type: "getSolutionApps",
1637
- timings
1638
- }),
1639
- time(() => getExampleApps({ request, timings }), {
1640
- type: "getExampleApps",
1641
- timings
1642
- })
1643
- ]);
1644
- const sortedApps = [
1645
- playgroundApp,
1646
- ...problemApps,
1647
- ...solutionApps,
1648
- ...exampleApps
1649
- ].filter(Boolean).sort((a, b) => {
1650
- if (isPlaygroundApp(a)) {
1651
- if (isPlaygroundApp(b)) return a.name.localeCompare(b.name);
1652
- else return 1;
1653
- }
1654
- if (isPlaygroundApp(b)) return 1;
1655
- if (isExampleApp(a)) {
1656
- if (isExampleApp(b)) return a.name.localeCompare(b.name);
1657
- else return 1;
1658
- }
1659
- if (isExampleApp(b)) return -1;
1660
- if (a.type === b.type) {
1661
- if (a.exerciseNumber === b.exerciseNumber) {
1662
- return a.stepNumber - b.stepNumber;
1663
- } else {
1664
- return a.exerciseNumber - b.exerciseNumber;
1665
- }
1666
- }
1667
- if (isProblemApp(a)) {
1668
- if (a.exerciseNumber === b.exerciseNumber) {
1669
- return a.stepNumber <= b.stepNumber ? 1 : -1;
1670
- } else {
1671
- return a.exerciseNumber <= b.exerciseNumber ? 1 : -1;
1672
- }
1673
- }
1674
- if (isSolutionApp(a)) {
1675
- if (a.exerciseNumber === b.exerciseNumber) {
1676
- return a.stepNumber < b.stepNumber ? -1 : 1;
1677
- } else {
1678
- return a.exerciseNumber < b.exerciseNumber ? -1 : 1;
1679
- }
1680
- }
1681
- console.error("unhandled sorting case", a, b);
1682
- return 0;
1683
- });
1684
- return sortedApps;
1685
- }
1686
- });
1687
- return apps;
1688
- }
1689
- const AppIdInfoSchema = z.object({
1690
- exerciseNumber: z.string(),
1691
- stepNumber: z.string(),
1692
- type: z.union([z.literal("problem"), z.literal("solution")])
1693
- });
1694
- function extractNumbersAndTypeFromAppNameOrPath(fullPathOrAppName) {
1695
- var _a;
1696
- const info = {};
1697
- if (fullPathOrAppName.includes(path$1.sep)) {
1698
- const relativePath = fullPathOrAppName.replace(
1699
- path$1.join(workshopRoot, "exercises", path$1.sep),
1700
- ""
1701
- );
1702
- const [exerciseNumberPart, stepNumberPart] = relativePath.split(path$1.sep);
1703
- if (!exerciseNumberPart || !stepNumberPart) return null;
1704
- const exerciseNumber = exerciseNumberPart.split(".")[0];
1705
- const stepNumber = stepNumberPart.split(".")[0];
1706
- const type = (_a = stepNumberPart.split(".")[1]) == null ? void 0 : _a.split(".")[0];
1707
- info.exerciseNumber = exerciseNumber;
1708
- info.stepNumber = stepNumber;
1709
- info.type = type;
1710
- } else {
1711
- const [exerciseNumber, stepNumber, type] = fullPathOrAppName.split(".");
1712
- info.exerciseNumber = exerciseNumber;
1713
- info.stepNumber = stepNumber;
1714
- info.type = type;
1715
- }
1716
- const result = AppIdInfoSchema.safeParse(info);
1717
- if (result.success) return result.data;
1718
- return null;
1719
- }
1720
- async function getProblemDirs() {
1721
- const exercisesDir = path$1.join(workshopRoot, "exercises");
1722
- const problemDirs = [];
1723
- const exerciseSubDirs = await readDir(exercisesDir);
1724
- for (const subDir of exerciseSubDirs) {
1725
- const fullSubDir = path$1.join(exercisesDir, subDir);
1726
- const subDirContents = await readDir(fullSubDir).catch(() => null);
1727
- if (!subDirContents) continue;
1728
- const problemSubDirs = subDirContents.filter((dir) => dir.includes(".problem")).map((dir) => path$1.join(fullSubDir, dir));
1729
- problemDirs.push(...problemSubDirs);
1730
- }
1731
- return problemDirs;
1732
- }
1733
- async function getSolutionDirs() {
1734
- const exercisesDir = path$1.join(workshopRoot, "exercises");
1735
- const solutionDirs = [];
1736
- const exerciseSubDirs = await readDir(exercisesDir);
1737
- for (const subDir of exerciseSubDirs) {
1738
- const fullSubDir = path$1.join(exercisesDir, subDir);
1739
- const subDirContents = await readDir(fullSubDir).catch(() => null);
1740
- if (!subDirContents) continue;
1741
- const solutionSubDirs = subDirContents.filter((dir) => dir.includes(".solution")).map((dir) => path$1.join(fullSubDir, dir));
1742
- solutionDirs.push(...solutionSubDirs);
1743
- }
1744
- return solutionDirs;
1745
- }
1746
- function getPathname(fullPath) {
1747
- const appName = getAppName(fullPath);
1748
- return `/app/${appName}/`;
1749
- }
1750
- function getAppName(fullPath) {
1751
- if (/playground\/?$/.test(fullPath)) return "playground";
1752
- if (/examples\/.+\/?$/.test(fullPath)) {
1753
- const restOfPath = fullPath.replace(
1754
- `${workshopRoot}${path$1.sep}examples${path$1.sep}`,
1755
- ""
1756
- );
1757
- return `example.${restOfPath.split(path$1.sep).join("__sep__")}`;
1758
- }
1759
- const appIdInfo = extractNumbersAndTypeFromAppNameOrPath(fullPath);
1760
- if (appIdInfo) {
1761
- const { exerciseNumber, stepNumber, type } = appIdInfo;
1762
- return `${exerciseNumber}.${stepNumber}.${type}`;
1763
- } else {
1764
- const relativePath = fullPath.replace(`${workshopRoot}${path$1.sep}`, "");
1765
- return relativePath.split(path$1.sep).join("__sep__");
1766
- }
1767
- }
1768
- async function getFullPathFromAppName(appName) {
1769
- if (appName === "playground") return path$1.join(workshopRoot, "playground");
1770
- if (appName.startsWith(".example")) {
1771
- const relativePath = appName.replace(".example", "").split("__sep__").join(path$1.sep);
1772
- return path$1.join(workshopRoot, "examples", relativePath);
1773
- }
1774
- if (appName.includes("__sep__")) {
1775
- const relativePath = appName.replaceAll("__sep__", path$1.sep);
1776
- return path$1.join(workshopRoot, relativePath);
1777
- }
1778
- const [exerciseNumber, stepNumber, type] = appName.split(".");
1779
- const appDirs = type === "problem" ? await getProblemDirs() : type === "solution" ? await getSolutionDirs() : [];
1780
- const dir = appDirs.find((dir2) => {
1781
- const info = extractNumbersAndTypeFromAppNameOrPath(dir2);
1782
- if (!info) return false;
1783
- return info.exerciseNumber === exerciseNumber && info.stepNumber === stepNumber;
1784
- });
1785
- return dir ?? appName;
1786
- }
1787
- async function findSolutionDir({
1788
- fullPath
1789
- }) {
1790
- const dirName = path$1.basename(fullPath);
1791
- if (dirName.includes(".problem")) {
1792
- const info = getAppDirInfo(dirName);
1793
- if (!info) return null;
1794
- const { stepNumber } = info;
1795
- const paddedStepNumber = stepNumber.toString().padStart(2, "0");
1796
- const parentDir = path$1.dirname(fullPath);
1797
- const siblingDirs = await fs$1.promises.readdir(parentDir);
1798
- const solutionDir = siblingDirs.find(
1799
- (dir) => dir.startsWith(`${paddedStepNumber}.solution`)
1800
- );
1801
- if (solutionDir) {
1802
- return path$1.join(parentDir, solutionDir);
1803
- }
1804
- } else if (fullPath.endsWith("playground")) {
1805
- const appName = await getPlaygroundAppName();
1806
- if (appName) {
1807
- return findSolutionDir({
1808
- fullPath: await getFullPathFromAppName(appName)
1809
- });
1810
- }
1811
- }
1812
- return null;
1813
- }
1814
- async function findProblemDir({
1815
- fullPath
1816
- }) {
1817
- const dirName = path$1.basename(fullPath);
1818
- if (dirName.includes(".solution")) {
1819
- const info = getAppDirInfo(dirName);
1820
- if (!info) return null;
1821
- const { stepNumber } = info;
1822
- const paddedStepNumber = stepNumber.toString().padStart(2, "0");
1823
- const parentDir = path$1.dirname(fullPath);
1824
- const siblingDirs = await fs$1.promises.readdir(parentDir);
1825
- const problemDir = siblingDirs.find(
1826
- (dir) => dir.endsWith("problem") && dir.includes(paddedStepNumber)
1827
- );
1828
- if (problemDir) {
1829
- return path$1.join(parentDir, problemDir);
1830
- }
1831
- } else if (fullPath.endsWith("playground")) {
1832
- const appName = await getPlaygroundAppName();
1833
- if (appName) {
1834
- return findProblemDir({ fullPath: await getFullPathFromAppName(appName) });
1835
- }
1836
- }
1837
- return null;
1838
- }
1839
- async function getTestInfo({
1840
- fullPath
1841
- }) {
1842
- const {
1843
- testTab: { enabled },
1844
- scripts: { test: testScript }
1845
- } = await getAppConfig(fullPath);
1846
- if (enabled === false) return { type: "none" };
1847
- if (testScript) {
1848
- return { type: "script", script: testScript };
1849
- }
1850
- const testAppFullPath = await findSolutionDir({ fullPath }) ?? fullPath;
1851
- const dirList = await fs$1.promises.readdir(testAppFullPath);
1852
- const testFiles = dirList.filter((item) => item.includes(".test."));
1853
- if (testFiles.length) {
1854
- return {
1855
- type: "browser",
1856
- pathname: `${getPathname(fullPath)}test/`,
1857
- testFiles
1858
- };
1859
- }
1860
- return { type: "none" };
1861
- }
1862
- async function getDevInfo({
1863
- fullPath,
1864
- portNumber
1865
- }) {
1866
- const {
1867
- scripts: { dev: devScript },
1868
- initialRoute
1869
- } = await getAppConfig(fullPath);
1870
- const hasDevScript = Boolean(devScript);
1871
- if (hasDevScript) {
1872
- return { type: "script", portNumber, initialRoute };
1873
- }
1874
- const indexFiles = (await fsExtra.readdir(fullPath)).filter(
1875
- (file) => file.startsWith("index.")
1876
- );
1877
- if (indexFiles.length) {
1878
- return { type: "browser", pathname: getPathname(fullPath) };
1879
- } else {
1880
- return { type: "none" };
1881
- }
1882
- }
1883
- async function getPlaygroundApp({
1884
- timings,
1885
- request
1886
- } = {}) {
1887
- const playgroundDir = path$1.join(workshopRoot, "playground");
1888
- const baseAppName = await getPlaygroundAppName();
1889
- const key = `playground-${baseAppName}`;
1890
- const baseAppFullPath = baseAppName ? await getFullPathFromAppName(baseAppName) : null;
1891
- const playgroundCacheEntry = playgroundAppCache.get(key);
1892
- return cachified({
1893
- key,
1894
- cache: playgroundAppCache,
1895
- ttl: 1e3 * 60 * 60 * 24,
1896
- timings,
1897
- timingKey: playgroundDir.replace(`${playgroundDir}${path$1.sep}`, ""),
1898
- request,
1899
- forceFresh: getForceFreshForDir(
1900
- playgroundCacheEntry,
1901
- playgroundDir,
1902
- baseAppFullPath
1903
- ),
1904
- getFreshValue: async () => {
1905
- if (!await exists(playgroundDir)) return null;
1906
- if (!baseAppName) return null;
1907
- const dirName = path$1.basename(playgroundDir);
1908
- const name = getAppName(playgroundDir);
1909
- const portNumber = 4e3;
1910
- const [compiledReadme, test, dev] = await Promise.all([
1911
- compileMdxIfExists(path$1.join(playgroundDir, "README.mdx"), { request }),
1912
- getTestInfo({ fullPath: playgroundDir }),
1913
- getDevInfo({ fullPath: playgroundDir, portNumber })
1914
- ]);
1915
- const appModifiedTime = await queuedGetDirModifiedTime(
1916
- await getFullPathFromAppName(baseAppName)
1917
- );
1918
- const playgroundAppModifiedTime = await queuedGetDirModifiedTime(playgroundDir);
1919
- const type = "playground";
1920
- const title = (compiledReadme == null ? void 0 : compiledReadme.title) ?? name;
1921
- return {
1922
- name,
1923
- appName: baseAppName,
1924
- type,
1925
- isUpToDate: appModifiedTime <= playgroundAppModifiedTime,
1926
- fullPath: playgroundDir,
1927
- relativePath: playgroundDir.replace(`${workshopRoot}${path$1.sep}`, ""),
1928
- title,
1929
- epicVideoEmbeds: compiledReadme == null ? void 0 : compiledReadme.epicVideoEmbeds,
1930
- dirName,
1931
- instructionsCode: compiledReadme == null ? void 0 : compiledReadme.code,
1932
- test,
1933
- dev,
1934
- stackBlitzUrl: await getStackBlitzUrl({
1935
- fullPath: playgroundDir,
1936
- title,
1937
- type
1938
- })
1939
- };
1940
- }
1941
- }).catch((error) => {
1942
- console.error(error);
1943
- return null;
1944
- });
1945
- }
1946
- async function getExampleAppFromPath(fullPath, index, request) {
1947
- const dirName = path$1.basename(fullPath);
1948
- const compiledReadme = await compileMdxIfExists(
1949
- path$1.join(fullPath, "README.mdx"),
1950
- { request }
1951
- );
1952
- const name = getAppName(fullPath);
1953
- const portNumber = 8e3 + index;
1954
- const type = "example";
1955
- const title = (compiledReadme == null ? void 0 : compiledReadme.title) ?? name;
1956
- return {
1957
- name,
1958
- type,
1959
- fullPath,
1960
- relativePath: fullPath.replace(`${workshopRoot}${path$1.sep}`, ""),
1961
- title,
1962
- epicVideoEmbeds: compiledReadme == null ? void 0 : compiledReadme.epicVideoEmbeds,
1963
- dirName,
1964
- instructionsCode: compiledReadme == null ? void 0 : compiledReadme.code,
1965
- test: await getTestInfo({ fullPath }),
1966
- dev: await getDevInfo({ fullPath, portNumber }),
1967
- stackBlitzUrl: await getStackBlitzUrl({
1968
- fullPath,
1969
- title,
1970
- type
1971
- })
1972
- };
1973
- }
1974
- async function getExampleApps({
1975
- timings,
1976
- request
1977
- } = {}) {
1978
- const examplesDir = path$1.join(workshopRoot, "examples");
1979
- const exampleDirs = (await readDir(examplesDir)).map(
1980
- (p) => path$1.join(examplesDir, p)
1981
- );
1982
- const exampleApps = [];
1983
- for (const exampleDir of exampleDirs) {
1984
- const index = exampleDirs.indexOf(exampleDir);
1985
- const key = `${exampleDir}-${index}`;
1986
- const exampleApp = await cachified({
1987
- key,
1988
- cache: exampleAppCache,
1989
- ttl: 1e3 * 60 * 60 * 24,
1990
- timings,
1991
- timingKey: exampleDir.replace(`${examplesDir}${path$1.sep}`, ""),
1992
- request,
1993
- forceFresh: getForceFreshForDir(exampleAppCache.get(key), exampleDir),
1994
- getFreshValue: async () => {
1995
- return getExampleAppFromPath(exampleDir, index, request).catch(
1996
- (error) => {
1997
- console.error(error);
1998
- return null;
1999
- }
2000
- );
2001
- }
2002
- });
2003
- if (exampleApp) exampleApps.push(exampleApp);
2004
- }
2005
- return exampleApps;
2006
- }
2007
- async function getSolutionAppFromPath(fullPath, request) {
2008
- const dirName = path$1.basename(fullPath);
2009
- const parentDirName = path$1.basename(path$1.dirname(fullPath));
2010
- const exerciseNumber = extractExerciseNumber(parentDirName);
2011
- if (!exerciseNumber) return null;
2012
- const name = getAppName(fullPath);
2013
- const info = getAppDirInfo(dirName);
2014
- if (!info) return null;
2015
- const { stepNumber } = info;
2016
- const portNumber = 7e3 + (exerciseNumber - 1) * 10 + stepNumber;
2017
- const compiledReadme = await compileMdxIfExists(
2018
- path$1.join(fullPath, "README.mdx"),
2019
- { request }
2020
- );
2021
- const problemDir = await findProblemDir({
2022
- fullPath
2023
- });
2024
- const problemName = problemDir ? getAppName(problemDir) : null;
2025
- const [test, dev] = await Promise.all([
2026
- getTestInfo({ fullPath }),
2027
- getDevInfo({ fullPath, portNumber })
2028
- ]);
2029
- const title = (compiledReadme == null ? void 0 : compiledReadme.title) ?? name;
2030
- return {
2031
- name,
2032
- title,
2033
- epicVideoEmbeds: compiledReadme == null ? void 0 : compiledReadme.epicVideoEmbeds,
2034
- type: "solution",
2035
- problemName,
2036
- exerciseNumber,
2037
- stepNumber,
2038
- dirName,
2039
- fullPath,
2040
- relativePath: fullPath.replace(`${workshopRoot}${path$1.sep}`, ""),
2041
- instructionsCode: compiledReadme == null ? void 0 : compiledReadme.code,
2042
- test,
2043
- dev,
2044
- stackBlitzUrl: await getStackBlitzUrl({
2045
- fullPath,
2046
- title,
2047
- type: "solution"
2048
- })
2049
- };
2050
- }
2051
- async function getSolutionApps({
2052
- timings,
2053
- request
2054
- } = {}) {
2055
- const exercisesDir = path$1.join(workshopRoot, "exercises");
2056
- const solutionDirs = await getSolutionDirs();
2057
- const solutionApps = [];
2058
- for (const solutionDir of solutionDirs) {
2059
- const solutionApp = await cachified({
2060
- key: solutionDir,
2061
- cache: solutionAppCache,
2062
- timings,
2063
- timingKey: solutionDir.replace(`${exercisesDir}${path$1.sep}`, ""),
2064
- request,
2065
- ttl: 1e3 * 60 * 60 * 24,
2066
- forceFresh: getForceFreshForDir(
2067
- solutionAppCache.get(solutionDir),
2068
- solutionDir
2069
- ),
2070
- getFreshValue: async () => {
2071
- return getSolutionAppFromPath(solutionDir, request).catch((error) => {
2072
- console.error(error);
2073
- return null;
2074
- });
2075
- }
2076
- });
2077
- if (solutionApp) solutionApps.push(solutionApp);
2078
- }
2079
- return solutionApps;
2080
- }
2081
- async function getProblemAppFromPath(fullPath, request) {
2082
- const dirName = path$1.basename(fullPath);
2083
- const parentDirName = path$1.basename(path$1.dirname(fullPath));
2084
- const exerciseNumber = extractExerciseNumber(parentDirName);
2085
- if (!exerciseNumber) return null;
2086
- const name = getAppName(fullPath);
2087
- const info = getAppDirInfo(dirName);
2088
- if (!info) return null;
2089
- const { stepNumber } = info;
2090
- const portNumber = 6e3 + (exerciseNumber - 1) * 10 + stepNumber;
2091
- const compiledReadme = await compileMdxIfExists(
2092
- path$1.join(fullPath, "README.mdx"),
2093
- { request }
2094
- );
2095
- const solutionDir = await findSolutionDir({
2096
- fullPath
2097
- });
2098
- const solutionName = solutionDir ? getAppName(solutionDir) : null;
2099
- const [test, dev] = await Promise.all([
2100
- getTestInfo({ fullPath }),
2101
- getDevInfo({ fullPath, portNumber })
2102
- ]);
2103
- const title = (compiledReadme == null ? void 0 : compiledReadme.title) ?? name;
2104
- return {
2105
- solutionName,
2106
- name,
2107
- title,
2108
- epicVideoEmbeds: compiledReadme == null ? void 0 : compiledReadme.epicVideoEmbeds,
2109
- type: "problem",
2110
- exerciseNumber,
2111
- stepNumber,
2112
- dirName,
2113
- fullPath,
2114
- relativePath: fullPath.replace(`${workshopRoot}${path$1.sep}`, ""),
2115
- instructionsCode: compiledReadme == null ? void 0 : compiledReadme.code,
2116
- test,
2117
- dev,
2118
- stackBlitzUrl: await getStackBlitzUrl({
2119
- fullPath,
2120
- title,
2121
- type: "problem"
2122
- })
2123
- };
2124
- }
2125
- async function getProblemApps({
2126
- timings,
2127
- request
2128
- } = {}) {
2129
- const exercisesDir = path$1.join(workshopRoot, "exercises");
2130
- const problemDirs = await getProblemDirs();
2131
- const problemApps = [];
2132
- for (const problemDir of problemDirs) {
2133
- const solutionDir = await findSolutionDir({ fullPath: problemDir });
2134
- const problemApp = await cachified({
2135
- key: problemDir,
2136
- cache: problemAppCache,
2137
- timings,
2138
- timingKey: problemDir.replace(`${exercisesDir}${path$1.sep}`, ""),
2139
- request,
2140
- ttl: 1e3 * 60 * 60 * 24,
2141
- forceFresh: getForceFreshForDir(
2142
- problemAppCache.get(problemDir),
2143
- problemDir,
2144
- solutionDir
2145
- ),
2146
- getFreshValue: async () => {
2147
- return getProblemAppFromPath(problemDir).catch((error) => {
2148
- console.error(error);
2149
- return null;
2150
- });
2151
- }
2152
- });
2153
- if (problemApp) problemApps.push(problemApp);
2154
- }
2155
- return problemApps;
2156
- }
2157
- async function getExercise(exerciseNumber, { request, timings } = {}) {
2158
- const exercises = await getExercises({ request, timings });
2159
- return exercises.find((s) => s.exerciseNumber === Number(exerciseNumber));
2160
- }
2161
- async function requireExercise(exerciseNumber, { request, timings } = {}) {
2162
- const exercise = await getExercise(exerciseNumber, { request, timings });
2163
- if (!exercise) {
2164
- throw new Response("Not found", {
2165
- status: 404,
2166
- headers: { "Server-Timing": getServerTimeHeader(timings) }
2167
- });
2168
- }
2169
- return exercise;
2170
- }
2171
- async function requireExerciseApp(params, { request, timings } = {}) {
2172
- const app = await getExerciseApp(params, { request, timings });
2173
- if (!app) {
2174
- throw new Response("Not found", { status: 404 });
2175
- }
2176
- return app;
2177
- }
2178
- const ExerciseAppParamsSchema$1 = z.object({
2179
- type: z.union([z.literal("problem"), z.literal("solution")]),
2180
- exerciseNumber: z.coerce.number().finite(),
2181
- stepNumber: z.coerce.number().finite()
2182
- });
2183
- async function getExerciseApp(params, { request, timings } = {}) {
2184
- const result = ExerciseAppParamsSchema$1.safeParse(params);
2185
- if (!result.success) {
2186
- return null;
2187
- }
2188
- const { type, exerciseNumber, stepNumber } = result.data;
2189
- const apps = (await getApps({ request, timings })).filter(isExerciseStepApp);
2190
- const exerciseApp = apps.find((app) => {
2191
- if (isExampleApp(app)) return false;
2192
- return app.exerciseNumber === exerciseNumber && app.stepNumber === stepNumber && app.type === type;
2193
- });
2194
- if (!exerciseApp) {
2195
- return null;
2196
- }
2197
- return exerciseApp;
2198
- }
2199
- async function getAppByName(name, { request, timings } = {}) {
2200
- const apps = await getApps({ request, timings });
2201
- return apps.find((a) => a.name === name);
2202
- }
2203
- async function getNextExerciseApp(app, { request, timings } = {}) {
2204
- const apps = (await getApps({ request, timings })).filter(isExerciseStepApp);
2205
- const index = apps.findIndex((a) => a.name === app.name);
2206
- if (index === -1) {
2207
- throw new Error(`Could not find app ${app.name}`);
2208
- }
2209
- const nextApp = apps[index + 1];
2210
- return nextApp ? nextApp : null;
2211
- }
2212
- async function getPrevExerciseApp(app, { request, timings } = {}) {
2213
- const apps = (await getApps({ request, timings })).filter(isExerciseStepApp);
2214
- const index = apps.findIndex((a) => a.name === app.name);
2215
- if (index === -1) {
2216
- throw new Error(`Could not find app ${app.name}`);
2217
- }
2218
- const prevApp = apps[index - 1];
2219
- return prevApp ? prevApp : null;
2220
- }
2221
- function getAppPageRoute(app, {
2222
- subroute,
2223
- searchParams
2224
- } = {}) {
2225
- const exerciseNumber = app.exerciseNumber.toString().padStart(2, "0");
2226
- const stepNumber = app.stepNumber.toString().padStart(2, "0");
2227
- const baseUrl = `/exercise/${exerciseNumber}/${stepNumber}/${app.type}`;
2228
- const subrouteUrl = subroute ? `/${subroute}` : "";
2229
- if (searchParams) {
2230
- searchParams.delete("app1");
2231
- searchParams.delete("app2");
2232
- }
2233
- const searchString = searchParams == null ? void 0 : searchParams.toString();
2234
- return `${baseUrl}${subrouteUrl}${searchString ? `?${searchString}` : ""}`;
2235
- }
2236
- async function getAppFromFile(filePath) {
2237
- const apps = await getApps();
2238
- return apps.find((app) => filePath.startsWith(app.fullPath));
2239
- }
2240
- async function setPlayground(srcDir, { reset } = {}) {
2241
- const destDir = path$1.join(workshopRoot, "playground");
2242
- const isIgnored = await isGitIgnored({ cwd: srcDir });
2243
- const playgroundApp = await getAppByName("playground");
2244
- const playgroundWasRunning = playgroundApp ? isAppRunning(playgroundApp) : false;
2245
- if (playgroundApp && reset) {
2246
- await closeProcess(playgroundApp.name);
2247
- await fsExtra.remove(destDir);
2248
- }
2249
- const setPlaygroundTimestamp = Date.now();
2250
- const preSetPlaygroundPath = await firstToExist(
2251
- path$1.join(srcDir, "epicshop", "pre-set-playground.js"),
2252
- path$1.join(workshopRoot, "epicshop", "pre-set-playground.js")
2253
- );
2254
- if (preSetPlaygroundPath) {
2255
- await execa("node", [preSetPlaygroundPath], {
2256
- cwd: workshopRoot,
2257
- stdio: "inherit",
2258
- env: {
2259
- EPICSHOP_PLAYGROUND_TIMESTAMP: setPlaygroundTimestamp.toString(),
2260
- EPICSHOP_PLAYGROUND_DEST_DIR: destDir,
2261
- EPICSHOP_PLAYGROUND_SRC_DIR: srcDir,
2262
- EPICSHOP_PLAYGROUND_WAS_RUNNING: playgroundWasRunning.toString()
2263
- }
2264
- });
2265
- }
2266
- const basename2 = path$1.basename(srcDir);
2267
- await fsExtra.remove(path$1.join(destDir, "node_modules"));
2268
- await fsExtra.copy(srcDir, destDir, {
2269
- filter: async (srcFile, destFile) => {
2270
- if (srcFile.includes(`${basename2}${path$1.sep}build`) || srcFile.includes(`${basename2}${path$1.sep}public${path$1.sep}build`)) {
2271
- return false;
2272
- }
2273
- if (srcFile === srcDir) return true;
2274
- if (srcFile.includes("node_modules")) return true;
2275
- if (srcFile.endsWith(".env")) return true;
2276
- if (isIgnored(srcFile)) return false;
2277
- try {
2278
- const isDir = (await fsExtra.stat(srcFile)).isDirectory();
2279
- if (isDir) return true;
2280
- const destIsDir = (await fsExtra.stat(destFile)).isDirectory();
2281
- if (destIsDir) return true;
2282
- const currentContents = await fsExtra.readFile(destFile);
2283
- const newContents = await fsExtra.readFile(srcFile);
2284
- if (currentContents.equals(newContents)) return false;
2285
- return true;
2286
- } catch {
2287
- return true;
2288
- }
2289
- }
2290
- });
2291
- async function getFiles(dir) {
2292
- const dirPath = dir.replace(/\\/g, "/");
2293
- const files = await globby([`${dirPath}/**/*`, "!**/build/**/*"], {
2294
- onlyFiles: false,
2295
- dot: true
2296
- });
2297
- return files.map((f) => f.replace(dirPath, ""));
2298
- }
2299
- const srcFiles = await getFiles(srcDir);
2300
- const destFiles = await getFiles(destDir);
2301
- const filesToDelete = destFiles.filter(
2302
- (fileName) => !srcFiles.includes(fileName)
2303
- );
2304
- for (const fileToDelete of filesToDelete) {
2305
- await fsExtra.remove(path$1.join(destDir, fileToDelete));
2306
- }
2307
- const appName = getAppName(srcDir);
2308
- await fsExtra.ensureDir(path$1.dirname(playgroundAppNameInfoPath));
2309
- await fsExtra.writeJSON(playgroundAppNameInfoPath, { appName });
2310
- const playgroundIsStillRunning = playgroundApp ? isAppRunning(playgroundApp) : false;
2311
- const restartPlayground = playgroundWasRunning && !playgroundIsStillRunning;
2312
- const postSetPlaygroundPath = await firstToExist(
2313
- path$1.join(srcDir, "epicshop", "post-set-playground.js"),
2314
- path$1.join(workshopRoot, "epicshop", "post-set-playground.js")
2315
- );
2316
- if (postSetPlaygroundPath) {
2317
- await execa("node", [postSetPlaygroundPath], {
2318
- cwd: workshopRoot,
2319
- stdio: "inherit",
2320
- env: {
2321
- EPICSHOP_PLAYGROUND_TIMESTAMP: setPlaygroundTimestamp.toString(),
2322
- EPICSHOP_PLAYGROUND_SRC_DIR: srcDir,
2323
- EPICSHOP_PLAYGROUND_DEST_DIR: destDir,
2324
- EPICSHOP_PLAYGROUND_WAS_RUNNING: playgroundWasRunning.toString(),
2325
- EPICSHOP_PLAYGROUND_IS_STILL_RUNNING: playgroundIsStillRunning.toString(),
2326
- EPICSHOP_PLAYGROUND_RESTART_PLAYGROUND: restartPlayground.toString()
2327
- }
2328
- });
2329
- }
2330
- modifiedTimes.set(destDir, Date.now());
2331
- if (playgroundApp && restartPlayground) {
2332
- await runAppDev(playgroundApp);
2333
- await waitOnApp(playgroundApp);
2334
- }
2335
- }
2336
- async function getPlaygroundAppName() {
2337
- if (!await exists(playgroundAppNameInfoPath)) {
2338
- return null;
2339
- }
2340
- try {
2341
- const jsonString = await fs$1.promises.readFile(
2342
- playgroundAppNameInfoPath,
2343
- "utf8"
2344
- );
2345
- const { appName } = JSON.parse(jsonString);
2346
- if (typeof appName !== "string") return null;
2347
- return appName;
2348
- } catch {
2349
- return null;
2350
- }
2351
- }
2352
- function getAppDisplayName(a, allApps) {
2353
- let displayName = `${a.title} (${a.type})`;
2354
- if (isExerciseStepApp(a)) {
2355
- const typeLabel = { problem: "💪", solution: "🏁" }[a.type];
2356
- displayName = `${a.exerciseNumber}.${a.stepNumber} ${a.title} (${typeLabel} ${a.type})`;
2357
- } else if (isPlaygroundApp(a)) {
2358
- const playgroundAppBasis = allApps.find(
2359
- (otherApp) => a.appName === otherApp.name
2360
- );
2361
- if (playgroundAppBasis) {
2362
- const basisDisplayName = getAppDisplayName(playgroundAppBasis, allApps);
2363
- displayName = `🛝 ${basisDisplayName}`;
2364
- } else {
2365
- displayName = `🛝 ${a.appName}`;
2366
- }
2367
- } else if (isExampleApp(a)) {
2368
- displayName = `📚 ${a.title} (example)`;
2369
- }
2370
- return displayName;
2371
- }
2372
- async function getWorkshopInstructions({
2373
- request
2374
- } = {}) {
2375
- const readmeFilepath = path$1.join(workshopRoot, "exercises", "README.mdx");
2376
- const compiled = await compileMdx(readmeFilepath, { request }).then(
2377
- (r) => ({ ...r, status: "success" }),
2378
- (e) => {
2379
- console.error(
2380
- `There was an error compiling the workshop readme`,
2381
- readmeFilepath,
2382
- e
2383
- );
2384
- return { status: "error", error: getErrorMessage$1(e) };
2385
- }
2386
- );
2387
- return { compiled, file: readmeFilepath, relativePath: "exercises" };
2388
- }
2389
- async function getWorkshopFinished({
2390
- request
2391
- } = {}) {
2392
- const finishedFilepath = path$1.join(workshopRoot, "exercises", "FINISHED.mdx");
2393
- const compiled = await compileMdx(finishedFilepath, { request }).then(
2394
- (r) => ({ ...r, status: "success" }),
2395
- (e) => {
2396
- console.error(
2397
- `There was an error compiling the workshop finished.mdx`,
2398
- finishedFilepath,
2399
- e
2400
- );
2401
- return { status: "error", error: getErrorMessage$1(e) };
2402
- }
2403
- );
2404
- return {
2405
- compiled,
2406
- file: finishedFilepath,
2407
- relativePath: "exercises/finished.mdx"
2408
- };
2409
- }
2410
- const exercisesPath = path$1.join(workshopRoot, "exercises/");
2411
- const playgroundPath = path$1.join(workshopRoot, "playground/");
2412
- function getRelativePath$1(filePath) {
2413
- return path$1.normalize(filePath).replace(playgroundPath, `playground${path$1.sep}`).replace(exercisesPath, "");
2414
- }
2415
- function getAppPathFromFilePath(filePath) {
2416
- const [, withinWorkshopRootHalf] = filePath.split(workshopRoot);
2417
- if (!withinWorkshopRootHalf) {
2418
- return null;
2419
- }
2420
- const [part1, part2, part3] = withinWorkshopRootHalf.split(path$1.sep).filter(Boolean);
2421
- if (part1 === "playground") {
2422
- return path$1.join(workshopRoot, "playground");
2423
- }
2424
- if (part1 === "examples" && part2) {
2425
- return path$1.join(workshopRoot, "examples", part2);
2426
- }
2427
- if (part1 === "exercises" && part2 && part3) {
2428
- return path$1.join(workshopRoot, "exercises", part2, part3);
2429
- }
2430
- return null;
2431
- }
2432
196
  function Confetti({ id }) {
2433
197
  if (!id) return null;
2434
198
  return /* @__PURE__ */ jsx(ClientOnly, { children: () => /* @__PURE__ */ jsx(
@@ -2750,18 +514,18 @@ function getErrorMessage(error, defaultMessage = "Unknown Error") {
2750
514
  return defaultMessage;
2751
515
  }
2752
516
  function formatColors() {
2753
- const colors2 = [];
517
+ const colors = [];
2754
518
  for (const [key, color] of Object.entries(extendedTheme.colors)) {
2755
519
  if (typeof color === "string") {
2756
- colors2.push(key);
520
+ colors.push(key);
2757
521
  } else {
2758
522
  const colorGroup = Object.keys(color).map(
2759
523
  (subKey) => subKey === "DEFAULT" ? "" : subKey
2760
524
  );
2761
- colors2.push({ [key]: colorGroup });
525
+ colors.push({ [key]: colorGroup });
2762
526
  }
2763
527
  }
2764
- return colors2;
528
+ return colors;
2765
529
  }
2766
530
  const customTwMerge = extendTailwindMerge({
2767
531
  extend: {
@@ -3010,7 +774,7 @@ function usePERedirectInput() {
3010
774
  function ensureProgressiveEnhancement(formData, responseInit) {
3011
775
  const redirectTo = formData.get(PE_REDIRECT_INPUT_NAME);
3012
776
  if (typeof redirectTo === "string") {
3013
- throw redirect$1(safeRedirect(redirectTo), responseInit == null ? void 0 : responseInit());
777
+ throw redirect(safeRedirect(redirectTo), responseInit == null ? void 0 : responseInit());
3014
778
  }
3015
779
  }
3016
780
  function jsonWithPE(formData, ...args) {
@@ -3114,7 +878,7 @@ const route43 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePrope
3114
878
  useTheme
3115
879
  }, Symbol.toStringTag, { value: "Module" }));
3116
880
  const appStylesheetUrl = "/assets/app-b7uXHF5m.css";
3117
- const tailwindStylesheetUrl = "/assets/tailwind-B9pSujyx.css";
881
+ const tailwindStylesheetUrl = "/assets/tailwind-B5AAMtGC.css";
3118
882
  const cookieName = "EpicShop_confetti";
3119
883
  function getConfetti(request) {
3120
884
  const cookieHeader = request.headers.get("cookie");
@@ -3704,10 +1468,10 @@ const toastSessionStorage = createCookieSessionStorage({
3704
1468
  secure: process.env.NODE_ENV === "production"
3705
1469
  }
3706
1470
  });
3707
- async function redirectWithToast(url, toast2, init2) {
3708
- return redirect(url, {
3709
- ...init2,
3710
- headers: combineHeaders(init2 == null ? void 0 : init2.headers, await createToastHeaders(toast2))
1471
+ async function redirectWithToast(url, toast2, init) {
1472
+ return redirect$1(url, {
1473
+ ...init,
1474
+ headers: combineHeaders(init == null ? void 0 : init.headers, await createToastHeaders(toast2))
3711
1475
  });
3712
1476
  }
3713
1477
  async function createToastHeaders(optionalToast) {
@@ -3769,7 +1533,7 @@ async function loader$y({ request }) {
3769
1533
  const onboarding = await readOnboardingData();
3770
1534
  if (!ENV.EPICSHOP_DEPLOYED && !(onboarding == null ? void 0 : onboarding.tourVideosWatched.includes(onboardingVideo))) {
3771
1535
  if (new URL(request.url).pathname !== "/onboarding") {
3772
- throw redirect("/onboarding");
1536
+ throw redirect$1("/onboarding");
3773
1537
  }
3774
1538
  }
3775
1539
  const theme = getTheme(request);
@@ -3813,7 +1577,7 @@ async function loader$y({ request }) {
3813
1577
  hints: getHints(request),
3814
1578
  path: new URL(request.url).pathname,
3815
1579
  session: { theme },
3816
- separator: path$1.sep
1580
+ separator: path.sep
3817
1581
  },
3818
1582
  toast: toast2,
3819
1583
  confettiId,
@@ -5702,7 +3466,7 @@ async function loader$v({ request }) {
5702
3466
  if (parseResult.data.status === "error") {
5703
3467
  console.error(`There was an error connecting Discord`);
5704
3468
  console.error(parseResult.data.error);
5705
- return redirect("/account?error");
3469
+ return redirect$1("/account?error");
5706
3470
  }
5707
3471
  const member = parseResult.data.member;
5708
3472
  await setDiscordMember(member);
@@ -5753,7 +3517,7 @@ async function action$9({ request }) {
5753
3517
  type: "success"
5754
3518
  });
5755
3519
  }
5756
- return redirect("/account");
3520
+ return redirect$1("/account");
5757
3521
  }
5758
3522
  function Account() {
5759
3523
  const data = useLoaderData();
@@ -5858,7 +3622,7 @@ async function getForceFresh(filePath, cacheEntry) {
5858
3622
  if (!cacheEntry) return true;
5859
3623
  const app = await getAppFromFile(filePath);
5860
3624
  if (!app) return true;
5861
- const appModified = await queuedGetDirModifiedTime(app.fullPath);
3625
+ const appModified = await getDirModifiedTime(app.fullPath);
5862
3626
  const cacheModified = cacheEntry.metadata.createdTime;
5863
3627
  return !cacheModified || appModified > cacheModified || void 0;
5864
3628
  }
@@ -5883,7 +3647,7 @@ async function compileTs(filePath, fullPath, {
5883
3647
  // app than the one we're serving the file from. We do this so the tests
5884
3648
  // can live in the solution directory, but be run against the problem
5885
3649
  resolveDir: fullPath,
5886
- sourcefile: path.basename(filePath),
3650
+ sourcefile: path$1.basename(filePath),
5887
3651
  loader: "tsx"
5888
3652
  },
5889
3653
  define: {
@@ -5949,13 +3713,13 @@ async function loader$t({ request, params }) {
5949
3713
  throw new Response(`Apps not found`, { status: 404 });
5950
3714
  }
5951
3715
  if (app.dev.type === "script") {
5952
- return redirect(getBaseUrl({ request, port: app.dev.portNumber }));
3716
+ return redirect$1(getBaseUrl({ request, port: app.dev.portNumber }));
5953
3717
  }
5954
3718
  const splat = params["*"];
5955
3719
  invariantResponse(splat, "splat required");
5956
3720
  const filePath = await firstExisting(
5957
- path.join(app.fullPath, splat),
5958
- path.join(fileApp.fullPath, splat)
3721
+ path$1.join(app.fullPath, splat),
3722
+ path$1.join(fileApp.fullPath, splat)
5959
3723
  );
5960
3724
  if (!filePath) {
5961
3725
  throw new Response("File not found", { status: 404 });
@@ -6041,9 +3805,9 @@ async function getApiModule({ request, params }) {
6041
3805
  throw new Response(`Apps not found`, { status: 404 });
6042
3806
  }
6043
3807
  if (app.dev.type === "script") {
6044
- throw redirect(getBaseUrl({ request, port: app.dev.portNumber }));
3808
+ throw redirect$1(getBaseUrl({ request, port: app.dev.portNumber }));
6045
3809
  }
6046
- const apiFiles = (await fsExtra.readdir(app.fullPath)).filter((file) => /^api\.server\.(ts|tsx|js|jsx)$/.test(file)).map((f) => path$1.join(app.fullPath, f));
3810
+ const apiFiles = (await fsExtra.readdir(app.fullPath)).filter((file) => /^api\.server\.(ts|tsx|js|jsx)$/.test(file)).map((f) => path.join(app.fullPath, f));
6047
3811
  const apiFile = apiFiles[0];
6048
3812
  if (!apiFile) {
6049
3813
  throw new Response(
@@ -6114,7 +3878,7 @@ async function loader$r({ request, params }) {
6114
3878
  throw new Response(`Apps not found`, { status: 404 });
6115
3879
  }
6116
3880
  if (app.dev.type === "script") {
6117
- return redirect(getBaseUrl({ request, port: app.dev.portNumber }));
3881
+ return redirect$1(getBaseUrl({ request, port: app.dev.portNumber }));
6118
3882
  }
6119
3883
  const relevantPaths = Array.from(/* @__PURE__ */ new Set([app.fullPath, fileApp.fullPath]));
6120
3884
  const watchParams = new URLSearchParams();
@@ -6187,7 +3951,7 @@ async function loader$q({ request, params }) {
6187
3951
  throw new Response(`Apps not found`, { status: 404 });
6188
3952
  }
6189
3953
  if (app.dev.type === "script") {
6190
- return redirect(getBaseUrl({ request, port: app.dev.portNumber }), {
3954
+ return redirect$1(getBaseUrl({ request, port: app.dev.portNumber }), {
6191
3955
  headers: { "Server-Timing": getServerTimeHeader(timings) }
6192
3956
  });
6193
3957
  }
@@ -6197,7 +3961,7 @@ async function loader$q({ request, params }) {
6197
3961
  { status: 400 }
6198
3962
  );
6199
3963
  }
6200
- const htmlFile = path.join(app.fullPath, "index.html");
3964
+ const htmlFile = path$1.join(app.fullPath, "index.html");
6201
3965
  const hasHtml = await fsExtra.pathExists(htmlFile);
6202
3966
  if (hasHtml) {
6203
3967
  const html2 = await fsExtra.readFile(htmlFile);
@@ -6345,7 +4109,7 @@ import(${JSON.stringify(testScriptPath)}).then(
6345
4109
  `
6346
4110
  );
6347
4111
  const testScriptTag = userHasAccess ? `<script type="module">${testScriptSrc}<\/script>` : `<h1>Access Denied</h1><p>You must login or register for the workshop to run the tests</p>`;
6348
- const htmlFile = path.join(app.fullPath, "index.html");
4112
+ const htmlFile = path$1.join(app.fullPath, "index.html");
6349
4113
  const hasHtml = await fsExtra.pathExists(htmlFile);
6350
4114
  if (hasHtml) {
6351
4115
  const html2 = (await fsExtra.readFile(htmlFile)).toString();
@@ -7255,8 +5019,8 @@ function useApps() {
7255
5019
  }
7256
5020
  function readablePath(filePath = "") {
7257
5021
  const relative = getRelativePath$1(filePath);
7258
- const name = path.basename(relative);
7259
- const dir = path.dirname(relative);
5022
+ const name = path$1.basename(relative);
5023
+ const dir = path$1.dirname(relative);
7260
5024
  return `'${name}' from:
7261
5025
  '${dir}'`;
7262
5026
  }
@@ -7345,7 +5109,7 @@ function addWorkspaceToArgumentsIfExists(args, workspace) {
7345
5109
  return args;
7346
5110
  }
7347
5111
  function getArgumentsForLineNumber(editor, fileName, lineNumber, colNumber, workspace) {
7348
- const editorBasename = path.basename(editor).replace(/\.(exe|cmd|bat)$/i, "");
5112
+ const editorBasename = path$1.basename(editor).replace(/\.(exe|cmd|bat)$/i, "");
7349
5113
  switch (editorBasename) {
7350
5114
  case "atom":
7351
5115
  case "Atom":
@@ -7428,7 +5192,7 @@ function guessEditor() {
7428
5192
  for (let i = 0; i < runningProcesses.length; i++) {
7429
5193
  const processPath = (_a = runningProcesses[i]) == null ? void 0 : _a.trim();
7430
5194
  if (!processPath) continue;
7431
- const processName = path.basename(processPath);
5195
+ const processName = path$1.basename(processPath);
7432
5196
  if (COMMON_EDITORS_WIN.includes(processName)) {
7433
5197
  return [processPath];
7434
5198
  }
@@ -7477,7 +5241,7 @@ async function launchEditor(pathList, lineNumber = 1, colNumber = 1) {
7477
5241
  const { fileList, errorsList } = pathList.reduce(
7478
5242
  (acc, fileName) => {
7479
5243
  if (process.platform === "linux" && fileName.startsWith("/mnt/") && /Microsoft/i.test(os.release())) {
7480
- fileName = path.relative("", fileName);
5244
+ fileName = path$1.relative("", fileName);
7481
5245
  }
7482
5246
  if (process.platform === "win32" && !WINDOWS_FILE_NAME_WHITELIST.test(
7483
5247
  // replacing characters we know are fine (because heck if I'm going to edit that regex above 🙃)
@@ -7486,7 +5250,7 @@ async function launchEditor(pathList, lineNumber = 1, colNumber = 1) {
7486
5250
  acc.errorsList.push(fileName);
7487
5251
  } else {
7488
5252
  if (!fs.existsSync(fileName)) {
7489
- fsExtra.ensureDirSync(path.dirname(fileName));
5253
+ fsExtra.ensureDirSync(path$1.dirname(fileName));
7490
5254
  fsExtra.writeFileSync(fileName, "", "utf8");
7491
5255
  }
7492
5256
  acc.fileList.push(fileName.trim());
@@ -7651,7 +5415,7 @@ async function action$6({ request }) {
7651
5415
  );
7652
5416
  }
7653
5417
  return {
7654
- filepath: path.join(fileDescriptorApp.fullPath, filePath),
5418
+ filepath: path$1.join(fileDescriptorApp.fullPath, filePath),
7655
5419
  line: Number(line),
7656
5420
  column: Number(column)
7657
5421
  };
@@ -7670,7 +5434,7 @@ async function action$6({ request }) {
7670
5434
  `Trying to sync to a file that does not appear at index ${index}`
7671
5435
  );
7672
5436
  }
7673
- await fsExtra.ensureDir(path.dirname(destFile.filepath));
5437
+ await fsExtra.ensureDir(path$1.dirname(destFile.filepath));
7674
5438
  await fsExtra.promises.copyFile(originFile.filepath, destFile.filepath);
7675
5439
  }
7676
5440
  }
@@ -8058,7 +5822,7 @@ async function loader$n({ request, params }) {
8058
5822
  if (!exercise) {
8059
5823
  throw new Response("Not found", { status: 404 });
8060
5824
  }
8061
- const readmeFilepath = path.join(
5825
+ const readmeFilepath = path$1.join(
8062
5826
  workshopRoot,
8063
5827
  "exercises",
8064
5828
  exercise.dirName,
@@ -8301,19 +6065,19 @@ function NavChevrons({
8301
6065
  ) : null
8302
6066
  ] });
8303
6067
  }
8304
- const epicshopTempDir = path.join(os.tmpdir(), "epicshop");
6068
+ const epicshopTempDir = path$1.join(os.tmpdir(), "epicshop");
8305
6069
  const isDeployed = ENV.EPICSHOP_DEPLOYED;
8306
- const diffTmpDir = path.join(epicshopTempDir, "diff");
6070
+ const diffTmpDir = path$1.join(epicshopTempDir, "diff");
8307
6071
  function diffPathToRelative(filePath) {
8308
- let normalizedPath = path.normalize(filePath).replace(/^("|')|("|')$/g, "");
6072
+ let normalizedPath = path$1.normalize(filePath).replace(/^("|')|("|')$/g, "");
8309
6073
  if (normalizedPath.startsWith("a\\") || normalizedPath.startsWith("b\\") || normalizedPath.startsWith("a/") || normalizedPath.startsWith("b/")) {
8310
6074
  normalizedPath = normalizedPath.slice(2);
8311
6075
  }
8312
6076
  const [workshopRootDirname, appId, id, ...relativePath] = normalizedPath.replace(
8313
- process.platform === "win32" || normalizedPath.startsWith(path.sep) ? `${diffTmpDir}${path.sep}` : `${diffTmpDir.slice(1)}${path.sep}`,
6077
+ process.platform === "win32" || normalizedPath.startsWith(path$1.sep) ? `${diffTmpDir}${path$1.sep}` : `${diffTmpDir.slice(1)}${path$1.sep}`,
8314
6078
  ""
8315
- ).split(path.sep);
8316
- return relativePath.join(path.sep);
6079
+ ).split(path$1.sep);
6080
+ return relativePath.join(path$1.sep);
8317
6081
  }
8318
6082
  function getLanguage(ext) {
8319
6083
  var _a;
@@ -8331,7 +6095,7 @@ function getFileCodeblocks(file, filePathApp1, filePathApp2, type) {
8331
6095
  const filepath = diffPathToRelative(
8332
6096
  file.type === "RenamedFile" ? file.pathAfter : file.path
8333
6097
  );
8334
- const extension = path.extname(filepath).slice(1);
6098
+ const extension = path$1.extname(filepath).slice(1);
8335
6099
  const lang = getLanguage(extension);
8336
6100
  const pathToCopy = file.type === "RenamedFile" ? file.pathBefore : file.path;
8337
6101
  const relativePath = diffPathToRelative(pathToCopy);
@@ -8440,7 +6204,7 @@ async function copyUnignoredFiles(srcDir, destDir, ignoreList) {
8440
6204
  await fsExtra.copy(srcDir, destDir, {
8441
6205
  filter: async (file) => {
8442
6206
  if (file === srcDir) return true;
8443
- return !ig.ignores(path.relative(srcDir, file));
6207
+ return !ig.ignores(path$1.relative(srcDir, file));
8444
6208
  }
8445
6209
  });
8446
6210
  }
@@ -8448,15 +6212,15 @@ async function copyUnignoredFiles(srcDir, destDir, ignoreList) {
8448
6212
  }
8449
6213
  async function prepareForDiff(app1, app2) {
8450
6214
  const id = Math.random().toString(36).slice(2);
8451
- const app1CopyPath = path.join(
6215
+ const app1CopyPath = path$1.join(
8452
6216
  diffTmpDir,
8453
- path.basename(workshopRoot),
6217
+ path$1.basename(workshopRoot),
8454
6218
  app1.name,
8455
6219
  id
8456
6220
  );
8457
- const app2CopyPath = path.join(
6221
+ const app2CopyPath = path$1.join(
8458
6222
  diffTmpDir,
8459
- path.basename(workshopRoot),
6223
+ path$1.basename(workshopRoot),
8460
6224
  app2.name,
8461
6225
  id
8462
6226
  );
@@ -8465,13 +6229,13 @@ async function prepareForDiff(app1, app2) {
8465
6229
  const { name: name2, ...rest2 } = pkg2;
8466
6230
  return JSON.stringify(rest1) === JSON.stringify(rest2);
8467
6231
  };
8468
- const app1PkgJson = app1.dev.type === "script" ? await fsExtra.readJSON(path.join(app1.fullPath, "package.json")) : {};
8469
- const app2PkgJson = app1.dev.type === "script" ? await fsExtra.readJSON(path.join(app2.fullPath, "package.json")) : {};
6232
+ const app1PkgJson = app1.dev.type === "script" ? await fsExtra.readJSON(path$1.join(app1.fullPath, "package.json")) : {};
6233
+ const app2PkgJson = app1.dev.type === "script" ? await fsExtra.readJSON(path$1.join(app2.fullPath, "package.json")) : {};
8470
6234
  const pkgJsonIgnore = comparePkgJson(app1PkgJson, app2PkgJson) ? ["package.json"] : [];
8471
6235
  const workshopIgnore = [
8472
- ...await getDiffIgnore(path.join(workshopRoot, ".gitignore")),
6236
+ ...await getDiffIgnore(path$1.join(workshopRoot, ".gitignore")),
8473
6237
  ...await getDiffIgnore(
8474
- path.join(workshopRoot, "epicshop", ".diffignore")
6238
+ path$1.join(workshopRoot, "epicshop", ".diffignore")
8475
6239
  )
8476
6240
  ];
8477
6241
  await Promise.all([
@@ -8479,18 +6243,18 @@ async function prepareForDiff(app1, app2) {
8479
6243
  ...DEFAULT_IGNORE_PATTERNS,
8480
6244
  ...pkgJsonIgnore,
8481
6245
  ...workshopIgnore,
8482
- ...await getDiffIgnore(path.join(app1.fullPath, ".gitignore")),
6246
+ ...await getDiffIgnore(path$1.join(app1.fullPath, ".gitignore")),
8483
6247
  ...await getDiffIgnore(
8484
- path.join(app1.fullPath, "epicshop", ".diffignore")
6248
+ path$1.join(app1.fullPath, "epicshop", ".diffignore")
8485
6249
  )
8486
6250
  ]),
8487
6251
  copyUnignoredFiles(app2.fullPath, app2CopyPath, [
8488
6252
  ...DEFAULT_IGNORE_PATTERNS,
8489
6253
  ...pkgJsonIgnore,
8490
6254
  ...workshopIgnore,
8491
- ...await getDiffIgnore(path.join(app2.fullPath, ".gitignore")),
6255
+ ...await getDiffIgnore(path$1.join(app2.fullPath, ".gitignore")),
8492
6256
  ...await getDiffIgnore(
8493
- path.join(app2.fullPath, "epicshop", ".diffignore")
6257
+ path$1.join(app2.fullPath, "epicshop", ".diffignore")
8494
6258
  )
8495
6259
  ])
8496
6260
  ]);
@@ -8631,11 +6395,11 @@ async function getDiffCodeImpl(app1, app2) {
8631
6395
  const pathToCopy = file.type === "RenamedFile" ? file.pathBefore : file.path;
8632
6396
  const relativePath = diffPathToRelative(pathToCopy);
8633
6397
  if (app1TestFiles.includes(relativePath)) continue;
8634
- const filePathApp1 = path.join(app1.fullPath, relativePath);
6398
+ const filePathApp1 = path$1.join(app1.fullPath, relativePath);
8635
6399
  const pathToApp2 = file.type === "RenamedFile" ? file.pathAfter : file.path;
8636
6400
  const relativePathApp2 = diffPathToRelative(pathToApp2);
8637
6401
  if (app2TestFiles.includes(relativePathApp2)) continue;
8638
- const filePathApp2 = path.join(app2.fullPath, relativePathApp2);
6402
+ const filePathApp2 = path$1.join(app2.fullPath, relativePathApp2);
8639
6403
  switch (file.type) {
8640
6404
  case "ChangedFile": {
8641
6405
  markdownLines.push(`
@@ -8948,7 +6712,7 @@ function DiffLink({
8948
6712
  /* @__PURE__ */ jsx("callout-danger", { className: "notification", children: /* @__PURE__ */ jsx("div", { className: "title", children: "DiffLink Error: invalid input" }) })
8949
6713
  );
8950
6714
  }
8951
- function getAppName2(input) {
6715
+ function getAppName(input) {
8952
6716
  var _a;
8953
6717
  if (typeof input === "number") {
8954
6718
  const stepIndex = data.exerciseIndex + input;
@@ -8967,8 +6731,8 @@ function DiffLink({
8967
6731
  app1 = params.get("app1");
8968
6732
  app2 = params.get("app2");
8969
6733
  }
8970
- const app1Name = getAppName2(app1);
8971
- const app2Name = getAppName2(app2);
6734
+ const app1Name = getAppName(app1);
6735
+ const app2Name = getAppName(app2);
8972
6736
  if (!app1Name || !app2Name) {
8973
6737
  return (
8974
6738
  // @ts-expect-error 🤷‍♂️
@@ -9183,13 +6947,13 @@ function pageTitle(data, workshopTitle) {
9183
6947
  var _a;
9184
6948
  const exerciseNumber = (data == null ? void 0 : data.exerciseStepApp.exerciseNumber.toString().padStart(2, "0")) ?? "00";
9185
6949
  const stepNumber = (data == null ? void 0 : data.exerciseStepApp.stepNumber.toString().padStart(2, "0")) ?? "00";
9186
- const emoji2 = {
6950
+ const emoji = {
9187
6951
  problem: "💪",
9188
6952
  solution: "🏁"
9189
6953
  }[(data == null ? void 0 : data.type) ?? "problem"];
9190
6954
  const title = ((_a = data == null ? void 0 : data[data.type]) == null ? void 0 : _a.title) ?? "N/A";
9191
6955
  return {
9192
- emoji: emoji2,
6956
+ emoji,
9193
6957
  stepNumber,
9194
6958
  title,
9195
6959
  exerciseNumber,
@@ -9206,9 +6970,9 @@ const meta$3 = ({
9206
6970
  var _a;
9207
6971
  const rootData = (_a = matches.find((m) => m.id === "root")) == null ? void 0 : _a.data;
9208
6972
  if (!data || !rootData) return [{ title: "🦉 | Error" }];
9209
- const { emoji: emoji2, stepNumber, title, exerciseNumber, exerciseTitle } = pageTitle(data);
6973
+ const { emoji, stepNumber, title, exerciseNumber, exerciseTitle } = pageTitle(data);
9210
6974
  return getSeoMetaTags({
9211
- title: `${emoji2} | ${stepNumber}. ${title} | ${exerciseNumber}. ${exerciseTitle} | ${rootData.workshopTitle}`,
6975
+ title: `${emoji} | ${stepNumber}. ${title} | ${exerciseNumber}. ${exerciseTitle} | ${rootData.workshopTitle}`,
9212
6976
  description: `${params.type} step for exercise ${exerciseNumber}. ${exerciseTitle}`,
9213
6977
  ogTitle: title,
9214
6978
  ogDescription: `${exerciseTitle} step ${Number(stepNumber)} ${params.type}`,
@@ -9231,7 +6995,7 @@ async function loader$l({ request, params }) {
9231
6995
  const pathnameParam = reqUrl.searchParams.get("pathname");
9232
6996
  if (pathnameParam === "" || pathnameParam === "/") {
9233
6997
  reqUrl.searchParams.delete("pathname");
9234
- throw redirect(reqUrl.toString());
6998
+ throw redirect$1(reqUrl.toString());
9235
6999
  }
9236
7000
  const problemApp = await getExerciseApp(
9237
7001
  { ...params, type: "problem" },
@@ -11428,7 +9192,7 @@ async function loader$i({ request, params }) {
11428
9192
  const pathnameParam = reqUrl.searchParams.get("pathname");
11429
9193
  if (pathnameParam === "" || pathnameParam === "/") {
11430
9194
  reqUrl.searchParams.delete("pathname");
11431
- throw redirect(reqUrl.toString());
9195
+ throw redirect$1(reqUrl.toString());
11432
9196
  }
11433
9197
  const problemApp = await getExerciseApp(
11434
9198
  { ...params, type: "problem" },
@@ -11770,7 +9534,7 @@ async function loader$g({ params }) {
11770
9534
  (a) => isProblemApp(a) ? a : null
11771
9535
  );
11772
9536
  if (problemApp) {
11773
- return redirect(
9537
+ return redirect$1(
11774
9538
  `/exercise/${params.exerciseNumber}/${params.stepNumber}/problem`
11775
9539
  );
11776
9540
  }
@@ -11779,7 +9543,7 @@ async function loader$g({ params }) {
11779
9543
  type: "solution"
11780
9544
  }).then((a) => isSolutionApp(a) ? a : null);
11781
9545
  if (solutionApp) {
11782
- return redirect(
9546
+ return redirect$1(
11783
9547
  `/exercise/${params.exerciseNumber}/${params.stepNumber}/solution`
11784
9548
  );
11785
9549
  }
@@ -11823,7 +9587,7 @@ async function loader$f({ request, params }) {
11823
9587
  timings,
11824
9588
  request
11825
9589
  });
11826
- const finishedFilepath = path.join(
9590
+ const finishedFilepath = path$1.join(
11827
9591
  workshopRoot,
11828
9592
  "exercises",
11829
9593
  exercise.dirName,
@@ -12366,7 +10130,7 @@ const handle$3 = {
12366
10130
  async function loader$b() {
12367
10131
  ensureUndeployed();
12368
10132
  const isAuthenticated = Boolean(await getAuthInfo());
12369
- if (isAuthenticated) throw redirect("/account");
10133
+ if (isAuthenticated) throw redirect$1("/account");
12370
10134
  return json$1({});
12371
10135
  }
12372
10136
  async function action$2() {
@@ -12552,7 +10316,7 @@ async function clearData() {
12552
10316
  }
12553
10317
  async function clearCaches() {
12554
10318
  if (ENV.EPICSHOP_DEPLOYED) return;
12555
- await fsExtra.remove(path$1.join(workshopRoot, "node_modules", ".cache"));
10319
+ await fsExtra.remove(path.join(workshopRoot, "node_modules", ".cache"));
12556
10320
  await deleteCache();
12557
10321
  }
12558
10322
  async function startInspector() {
@@ -12588,7 +10352,7 @@ async function loader$a({ request }) {
12588
10352
  (a, i, ar) => ar.findIndex((b) => a.name === b.name) === i
12589
10353
  );
12590
10354
  const processes = {};
12591
- const testProcesses2 = {};
10355
+ const testProcesses = {};
12592
10356
  for (const [
12593
10357
  name,
12594
10358
  { port: port2, process: process2, color }
@@ -12599,13 +10363,13 @@ async function loader$a({ request }) {
12599
10363
  name,
12600
10364
  { process: process2, exitCode }
12601
10365
  ] of getProcesses().testProcesses.entries()) {
12602
- testProcesses2[name] = { pid: process2 == null ? void 0 : process2.pid, exitCode };
10366
+ testProcesses[name] = { pid: process2 == null ? void 0 : process2.pid, exitCode };
12603
10367
  }
12604
10368
  return json$1(
12605
10369
  {
12606
10370
  apps,
12607
10371
  processes,
12608
- testProcesses: testProcesses2,
10372
+ testProcesses,
12609
10373
  inspectorRunning: global.__inspector_open__
12610
10374
  },
12611
10375
  {
@@ -12753,7 +10517,7 @@ function AdminLayout() {
12753
10517
  function Pinger({
12754
10518
  status
12755
10519
  }) {
12756
- const colors2 = {
10520
+ const colors = {
12757
10521
  running: {
12758
10522
  pinger: "bg-green-400",
12759
10523
  circle: "bg-green-500"
@@ -12771,16 +10535,16 @@ function Pinger({
12771
10535
  }
12772
10536
  }[status];
12773
10537
  return /* @__PURE__ */ jsxs("span", { className: "relative flex h-3 w-3", children: [
12774
- colors2.pinger ? /* @__PURE__ */ jsx(
10538
+ colors.pinger ? /* @__PURE__ */ jsx(
12775
10539
  "span",
12776
10540
  {
12777
- className: `absolute inline-flex h-full w-full animate-ping rounded-full ${colors2.pinger} opacity-75`
10541
+ className: `absolute inline-flex h-full w-full animate-ping rounded-full ${colors.pinger} opacity-75`
12778
10542
  }
12779
10543
  ) : null,
12780
10544
  /* @__PURE__ */ jsx(
12781
10545
  "span",
12782
10546
  {
12783
- className: `relative inline-flex h-3 w-3 rounded-full ${colors2.circle}`
10547
+ className: `relative inline-flex h-3 w-3 rounded-full ${colors.circle}`
12784
10548
  }
12785
10549
  )
12786
10550
  ] });
@@ -13054,8 +10818,8 @@ async function getOgImg(jsx2, { request, timings }) {
13054
10818
  const data = pngData.asPng();
13055
10819
  return data;
13056
10820
  }
13057
- async function getEmoji(emoji2, { request, timings }) {
13058
- const emojiCode = emojiToCodePoints(emoji2);
10821
+ async function getEmoji(emoji, { request, timings }) {
10822
+ const emojiCode = emojiToCodePoints(emoji);
13059
10823
  if (!emojiCode) return null;
13060
10824
  const emojiUrl = `https://cdn.jsdelivr.net/gh/jdecked/twemoji@15/assets/svg/${emojiCode}.svg`;
13061
10825
  return cachified({
@@ -13070,10 +10834,10 @@ async function getEmoji(emoji2, { request, timings }) {
13070
10834
  }
13071
10835
  });
13072
10836
  }
13073
- function emojiToCodePoints(emoji2) {
10837
+ function emojiToCodePoints(emoji) {
13074
10838
  const codePoints = [];
13075
- for (let i = 0; i < emoji2.length; i++) {
13076
- const codePoint = emoji2.codePointAt(i);
10839
+ for (let i = 0; i < emoji.length; i++) {
10840
+ const codePoint = emoji.codePointAt(i);
13077
10841
  if (!codePoint) continue;
13078
10842
  codePoints.push(codePoint.toString(16));
13079
10843
  if (codePoint > 65535) {
@@ -13281,8 +11045,8 @@ async function action({ request }) {
13281
11045
  invariantResponse(intent === "complete", "Invalid intent");
13282
11046
  const { onboardingVideo } = getWorkshopConfig();
13283
11047
  await markOnboardingVideoWatched(onboardingVideo);
13284
- if (authInfo) throw redirect("/");
13285
- else throw redirect("/login");
11048
+ if (authInfo) throw redirect$1("/");
11049
+ else throw redirect$1("/login");
13286
11050
  }
13287
11051
  function Onboarding() {
13288
11052
  const data = useLoaderData();
@@ -13317,14 +11081,14 @@ async function loader$2() {
13317
11081
  ] of getProcesses().devProcesses.entries()) {
13318
11082
  processes[name] = { port: port2, pid: process2.pid, color };
13319
11083
  }
13320
- const testProcesses2 = {};
11084
+ const testProcesses = {};
13321
11085
  for (const [
13322
11086
  name,
13323
11087
  { process: process2, exitCode, output }
13324
11088
  ] of getProcesses().testProcesses.entries()) {
13325
- testProcesses2[name] = { pid: process2 == null ? void 0 : process2.pid, exitCode, output };
11089
+ testProcesses[name] = { pid: process2 == null ? void 0 : process2.pid, exitCode, output };
13326
11090
  }
13327
- return json$1({ processes, testProcesses: testProcesses2 });
11091
+ return json$1({ processes, testProcesses });
13328
11092
  }
13329
11093
  const route36 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
13330
11094
  __proto__: null,
@@ -13352,11 +11116,11 @@ const route40 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePrope
13352
11116
  __proto__: null,
13353
11117
  loader
13354
11118
  }, Symbol.toStringTag, { value: "Module" }));
13355
- const serverManifest = { "entry": { "module": "/assets/entry.client-CW5CUf_W.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js"], "css": [] }, "routes": { "root": { "id": "root", "parentId": void 0, "path": "", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/root-Cl86OUog.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/request-info-DGnmXtfj.js", "/assets/tooltip-6-WS-Xux.js", "/assets/pe-CvPIToj6.js", "/assets/error-boundary-BcGxKpte.js", "/assets/progress-bar-F8_2mvYp.js", "/assets/index-YtpQLUzj.js", "/assets/index-BvihEwfB.js", "/assets/presence-Dd98AJ_5.js", "/assets/seo-pBpFCWsy.js"], "css": [] }, "routes/$": { "id": "routes/$", "parentId": "root", "path": "*", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_-ZHCWB__B.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/error-boundary-BcGxKpte.js"], "css": [] }, "routes/_app+/_layout": { "id": "routes/_app+/_layout", "parentId": "root", "path": void 0, "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_layout-frPHZWgR.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/request-info-DGnmXtfj.js", "/assets/tooltip-6-WS-Xux.js", "/assets/pe-CvPIToj6.js", "/assets/index-BvihEwfB.js", "/assets/workshop-config-Ce9sSc3I.js", "/assets/product-mjsTrqXs.js", "/assets/revalidation-ws-DcvYvzyj.js", "/assets/index-BjNhezSK.js", "/assets/user-Boua6jiU.js", "/assets/presence-Dd98AJ_5.js", "/assets/progress-Co-59mG2.js"], "css": [] }, "routes/_app+/account": { "id": "routes/_app+/account", "parentId": "routes/_app+/_layout", "path": "account", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/account-DDuV9rZX.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/request-info-DGnmXtfj.js", "/assets/button-CMkJ8p0a.js", "/assets/tooltip-6-WS-Xux.js", "/assets/user-Boua6jiU.js", "/assets/presence-Dd98AJ_5.js"], "css": [] }, "routes/_app+/app.$appName+/$": { "id": "routes/_app+/app.$appName+/$", "parentId": "routes/_app+/_layout", "path": "app/:appName/*", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/api.$": { "id": "routes/_app+/app.$appName+/api.$", "parentId": "routes/_app+/_layout", "path": "app/:appName/api/*", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/api._-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/epic_ws[.js]": { "id": "routes/_app+/app.$appName+/epic_ws[.js]", "parentId": "routes/_app+/_layout", "path": "app/:appName/epic_ws.js", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/epic_ws_.js_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/index": { "id": "routes/_app+/app.$appName+/index", "parentId": "routes/_app+/_layout", "path": "app/:appName/", "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/index-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/test.$testName": { "id": "routes/_app+/app.$appName+/test.$testName", "parentId": "routes/_app+/_layout", "path": "app/:appName/test/:testName", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test._testName-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/test.epic_ws[.js]": { "id": "routes/_app+/app.$appName+/test.epic_ws[.js]", "parentId": "routes/_app+/_layout", "path": "app/:appName/test/epic_ws.js", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test.epic_ws_.js_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.epic_ws[.js]": { "id": "routes/_app+/app.epic_ws[.js]", "parentId": "routes/_app+/_layout", "path": "app/epic_ws.js", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/app.epic_ws_.js_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/discord": { "id": "routes/_app+/discord", "parentId": "routes/_app+/_layout", "path": "discord", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/discord-DYeU0QX6.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/user-Boua6jiU.js", "/assets/discord-C9bVfiZ6.js"], "css": [] }, "routes/_app+/exercise+/_layout": { "id": "routes/_app+/exercise+/_layout", "parentId": "routes/_app+/_layout", "path": "exercise", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_layout-Cfbi6StB.js", "imports": ["/assets/index-DF_XBInP.js"], "css": [] }, "routes/_app+/exercise+/$exerciseNumber": { "id": "routes/_app+/exercise+/$exerciseNumber", "parentId": "routes/_app+/exercise+/_layout", "path": ":exerciseNumber", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_exerciseNumber-BFTlBdr4.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/request-info-DGnmXtfj.js", "/assets/tooltip-6-WS-Xux.js", "/assets/pe-CvPIToj6.js", "/assets/index-BvihEwfB.js", "/assets/loading-Br41_Pbf.js", "/assets/user-Boua6jiU.js", "/assets/workshop-config-Ce9sSc3I.js", "/assets/epic-video-bs7WmhbC.js", "/assets/progress-bar-F8_2mvYp.js", "/assets/index-DBrRQJxF.js", "/assets/revalidation-ws-DcvYvzyj.js", "/assets/mdx-CRxPouxB.js", "/assets/progress-Co-59mG2.js", "/assets/seo-pBpFCWsy.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber", "parentId": "routes/_app+/exercise+/_layout", "path": ":exerciseNumber/:stepNumber", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_exerciseNumber_._stepNumber-_687iGFh.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js"], "css": [] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber", "path": ":type", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_layout-BriOqd2R.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/request-info-DGnmXtfj.js", "/assets/tooltip-6-WS-Xux.js", "/assets/pe-CvPIToj6.js", "/assets/index-BvihEwfB.js", "/assets/loading-Br41_Pbf.js", "/assets/user-Boua6jiU.js", "/assets/workshop-config-Ce9sSc3I.js", "/assets/epic-video-bs7WmhbC.js", "/assets/progress-bar-F8_2mvYp.js", "/assets/index-BjNhezSK.js", "/assets/index-BczhSZ3e.js", "/assets/index-DBrRQJxF.js", "/assets/error-boundary-BcGxKpte.js", "/assets/nav-chevrons-DYiI8EMU.js", "/assets/revalidation-ws-DcvYvzyj.js", "/assets/mdx-CRxPouxB.js", "/assets/progress-Co-59mG2.js", "/assets/set-playground-pMKmtPtz.js", "/assets/seo-pBpFCWsy.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/app": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/app", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "path": "app", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/app-wbMCZEiv.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/request-info-DGnmXtfj.js", "/assets/tooltip-6-WS-Xux.js", "/assets/pe-CvPIToj6.js", "/assets/index-BvihEwfB.js", "/assets/button-CMkJ8p0a.js", "/assets/loading-Br41_Pbf.js", "/assets/progress-bar-F8_2mvYp.js", "/assets/preview-DZcdG4kw.js"], "css": [] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/index": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/index", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/index-C2yr7Uiu.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/tooltip-6-WS-Xux.js", "/assets/index-BjNhezSK.js", "/assets/index-BczhSZ3e.js", "/assets/request-info-DGnmXtfj.js", "/assets/pe-CvPIToj6.js", "/assets/index-BvihEwfB.js", "/assets/loading-Br41_Pbf.js", "/assets/user-Boua6jiU.js", "/assets/workshop-config-Ce9sSc3I.js", "/assets/epic-video-bs7WmhbC.js", "/assets/progress-bar-F8_2mvYp.js", "/assets/accordion-DuE9VejZ.js", "/assets/mdx-CRxPouxB.js", "/assets/revalidation-ws-DcvYvzyj.js", "/assets/use-event-source-CCGBLG92.js", "/assets/set-playground-pMKmtPtz.js", "/assets/button-CMkJ8p0a.js", "/assets/diff-B6thd_Sf.js", "/assets/error-boundary-BcGxKpte.js", "/assets/discord-C9bVfiZ6.js", "/assets/index-YtpQLUzj.js", "/assets/tests-BeAEgPAw.js", "/assets/preview-DZcdG4kw.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/test": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/test", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "path": "test", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test-B6zIK2V6.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/request-info-DGnmXtfj.js", "/assets/tooltip-6-WS-Xux.js", "/assets/pe-CvPIToj6.js", "/assets/index-BvihEwfB.js", "/assets/loading-Br41_Pbf.js", "/assets/user-Boua6jiU.js", "/assets/workshop-config-Ce9sSc3I.js", "/assets/index-BjNhezSK.js", "/assets/index-BczhSZ3e.js", "/assets/progress-bar-F8_2mvYp.js", "/assets/epic-video-bs7WmhbC.js", "/assets/accordion-DuE9VejZ.js", "/assets/use-event-source-CCGBLG92.js", "/assets/set-playground-pMKmtPtz.js", "/assets/tests-BeAEgPAw.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.index": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.index", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_exerciseNumber_._stepNumber.index-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/exercise+/$exerciseNumber_.finished": { "id": "routes/_app+/exercise+/$exerciseNumber_.finished", "parentId": "routes/_app+/exercise+/_layout", "path": ":exerciseNumber/finished", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_exerciseNumber_.finished-BEfn-nJi.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/request-info-DGnmXtfj.js", "/assets/tooltip-6-WS-Xux.js", "/assets/pe-CvPIToj6.js", "/assets/index-BvihEwfB.js", "/assets/loading-Br41_Pbf.js", "/assets/user-Boua6jiU.js", "/assets/workshop-config-Ce9sSc3I.js", "/assets/epic-video-bs7WmhbC.js", "/assets/progress-bar-F8_2mvYp.js", "/assets/index-DBrRQJxF.js", "/assets/nav-chevrons-DYiI8EMU.js", "/assets/revalidation-ws-DcvYvzyj.js", "/assets/mdx-CRxPouxB.js", "/assets/progress-Co-59mG2.js", "/assets/seo-pBpFCWsy.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/finished": { "id": "routes/_app+/finished", "parentId": "routes/_app+/_layout", "path": "finished", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/finished-C2dgX1d-.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/request-info-DGnmXtfj.js", "/assets/tooltip-6-WS-Xux.js", "/assets/pe-CvPIToj6.js", "/assets/index-BvihEwfB.js", "/assets/loading-Br41_Pbf.js", "/assets/user-Boua6jiU.js", "/assets/workshop-config-Ce9sSc3I.js", "/assets/epic-video-bs7WmhbC.js", "/assets/progress-bar-F8_2mvYp.js", "/assets/index-DBrRQJxF.js", "/assets/nav-chevrons-DYiI8EMU.js", "/assets/revalidation-ws-DcvYvzyj.js", "/assets/mdx-CRxPouxB.js", "/assets/seo-pBpFCWsy.js", "/assets/progress-Co-59mG2.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/index": { "id": "routes/_app+/index", "parentId": "routes/_app+/_layout", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/index-CuV1bRbu.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/request-info-DGnmXtfj.js", "/assets/tooltip-6-WS-Xux.js", "/assets/pe-CvPIToj6.js", "/assets/index-BvihEwfB.js", "/assets/loading-Br41_Pbf.js", "/assets/user-Boua6jiU.js", "/assets/workshop-config-Ce9sSc3I.js", "/assets/epic-video-bs7WmhbC.js", "/assets/progress-bar-F8_2mvYp.js", "/assets/index-DBrRQJxF.js", "/assets/error-boundary-BcGxKpte.js", "/assets/mdx-CRxPouxB.js", "/assets/progress-Co-59mG2.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/login": { "id": "routes/_app+/login", "parentId": "routes/_app+/_layout", "path": "login", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/login-kjV7hrVt.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/request-info-DGnmXtfj.js", "/assets/tooltip-6-WS-Xux.js", "/assets/pe-CvPIToj6.js", "/assets/index-BvihEwfB.js", "/assets/workshop-config-Ce9sSc3I.js", "/assets/use-event-source-CCGBLG92.js", "/assets/button-CMkJ8p0a.js", "/assets/loading-Br41_Pbf.js", "/assets/product-mjsTrqXs.js"], "css": [] }, "routes/_app+/support": { "id": "routes/_app+/support", "parentId": "routes/_app+/_layout", "path": "support", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/support-B0E_F4Zh.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js"], "css": [] }, "routes/admin+/_layout": { "id": "routes/admin+/_layout", "parentId": "root", "path": "admin", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_layout-BLJr2x2F.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/pe-CvPIToj6.js", "/assets/tooltip-6-WS-Xux.js", "/assets/progress-Co-59mG2.js"], "css": [] }, "routes/admin+/apps": { "id": "routes/admin+/apps", "parentId": "routes/admin+/_layout", "path": "apps", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/apps-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/admin+/cache": { "id": "routes/admin+/cache", "parentId": "routes/admin+/_layout", "path": "cache", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/cache-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/apps": { "id": "routes/apps", "parentId": "root", "path": "apps", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/apps-DP2rzg_V.js", "imports": [], "css": [] }, "routes/diff": { "id": "routes/diff", "parentId": "root", "path": "diff", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/diff-BEk79KPK.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/tooltip-6-WS-Xux.js", "/assets/index-BjNhezSK.js", "/assets/index-BczhSZ3e.js", "/assets/request-info-DGnmXtfj.js", "/assets/pe-CvPIToj6.js", "/assets/index-BvihEwfB.js", "/assets/loading-Br41_Pbf.js", "/assets/user-Boua6jiU.js", "/assets/workshop-config-Ce9sSc3I.js", "/assets/epic-video-bs7WmhbC.js", "/assets/progress-bar-F8_2mvYp.js", "/assets/accordion-DuE9VejZ.js", "/assets/mdx-CRxPouxB.js", "/assets/revalidation-ws-DcvYvzyj.js", "/assets/diff-B6thd_Sf.js", "/assets/nav-chevrons-DYiI8EMU.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/discord.callback": { "id": "routes/discord.callback", "parentId": "root", "path": "discord/callback", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/discord.callback-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/exercises": { "id": "routes/exercises", "parentId": "root", "path": "exercises", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/exercises-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/launch-editor": { "id": "routes/launch-editor", "parentId": "root", "path": "launch-editor", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/launch-editor-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/login-sse": { "id": "routes/login-sse", "parentId": "root", "path": "login-sse", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/login-sse-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/og": { "id": "routes/og", "parentId": "root", "path": "og", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/og-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/onboarding": { "id": "routes/onboarding", "parentId": "root", "path": "onboarding", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/onboarding-B4Z_yevk.js", "imports": ["/assets/index-DF_XBInP.js", "/assets/components-DZ8XIeZ3.js", "/assets/misc-BE75ioh8.js", "/assets/request-info-DGnmXtfj.js", "/assets/tooltip-6-WS-Xux.js", "/assets/pe-CvPIToj6.js", "/assets/index-BvihEwfB.js", "/assets/loading-Br41_Pbf.js", "/assets/user-Boua6jiU.js", "/assets/workshop-config-Ce9sSc3I.js", "/assets/button-CMkJ8p0a.js", "/assets/epic-video-bs7WmhbC.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/processes": { "id": "routes/processes", "parentId": "root", "path": "processes", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/processes-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/progress": { "id": "routes/progress", "parentId": "root", "path": "progress", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/progress-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/robots[.]txt": { "id": "routes/robots[.]txt", "parentId": "root", "path": "robots.txt", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/robots_._txt-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/set-playground": { "id": "routes/set-playground", "parentId": "root", "path": "set-playground", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/set-playground-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/sitemap[.]xml": { "id": "routes/sitemap[.]xml", "parentId": "root", "path": "sitemap.xml", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/sitemap_._xml-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/start": { "id": "routes/start", "parentId": "root", "path": "start", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/start-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/test": { "id": "routes/test", "parentId": "root", "path": "test", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/theme/index": { "id": "routes/theme/index", "parentId": "root", "path": "theme", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/index-DP2rzg_V.js", "imports": [], "css": [] }, "routes/video-player/index": { "id": "routes/video-player/index", "parentId": "root", "path": "video-player", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/index-K6Dvbx-E.js", "imports": [], "css": [] } }, "url": "/assets/manifest-77ab30ae.js", "version": "77ab30ae" };
11119
+ const serverManifest = { "entry": { "module": "/assets/entry.client-BTYTUpFV.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/components-9EGYHTc_.js"], "css": [] }, "routes": { "root": { "id": "root", "parentId": void 0, "path": "", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/root-DojjHZlY.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/components-9EGYHTc_.js", "/assets/misc-BJtHv_Jh.js", "/assets/pe-ChIwTk8v.js", "/assets/error-boundary-1-dmC941.js", "/assets/progress-bar-Cj5R4Zk7.js", "/assets/index-DRH72MzK.js", "/assets/tooltip-BgynKV2c.js", "/assets/index-_J-F_Dnc.js", "/assets/presence-CdyMdOKk.js", "/assets/seo-pBpFCWsy.js", "/assets/request-info-DCIQLE6H.js"], "css": [] }, "routes/$": { "id": "routes/$", "parentId": "root", "path": "*", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_-CWSCXcBv.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/error-boundary-1-dmC941.js", "/assets/misc-BJtHv_Jh.js", "/assets/components-9EGYHTc_.js"], "css": [] }, "routes/_app+/_layout": { "id": "routes/_app+/_layout", "parentId": "root", "path": void 0, "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_layout-T2hZtl0D.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/pe-ChIwTk8v.js", "/assets/product-C1ynnrN_.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/tooltip-BgynKV2c.js", "/assets/index-BuoaxPEj.js", "/assets/user-BBryXlM_.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/presence-CdyMdOKk.js", "/assets/progress-DAB3nDa2.js", "/assets/index-_J-F_Dnc.js", "/assets/components-9EGYHTc_.js", "/assets/request-info-DCIQLE6H.js"], "css": [] }, "routes/_app+/account": { "id": "routes/_app+/account", "parentId": "routes/_app+/_layout", "path": "account", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/account-CPFwPYf1.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/button-DQ001ob0.js", "/assets/misc-BJtHv_Jh.js", "/assets/tooltip-BgynKV2c.js", "/assets/user-BBryXlM_.js", "/assets/presence-CdyMdOKk.js", "/assets/components-9EGYHTc_.js", "/assets/request-info-DCIQLE6H.js"], "css": [] }, "routes/_app+/app.$appName+/$": { "id": "routes/_app+/app.$appName+/$", "parentId": "routes/_app+/_layout", "path": "app/:appName/*", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/api.$": { "id": "routes/_app+/app.$appName+/api.$", "parentId": "routes/_app+/_layout", "path": "app/:appName/api/*", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/api._-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/epic_ws[.js]": { "id": "routes/_app+/app.$appName+/epic_ws[.js]", "parentId": "routes/_app+/_layout", "path": "app/:appName/epic_ws.js", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/epic_ws_.js_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/index": { "id": "routes/_app+/app.$appName+/index", "parentId": "routes/_app+/_layout", "path": "app/:appName/", "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/index-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/test.$testName": { "id": "routes/_app+/app.$appName+/test.$testName", "parentId": "routes/_app+/_layout", "path": "app/:appName/test/:testName", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test._testName-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.$appName+/test.epic_ws[.js]": { "id": "routes/_app+/app.$appName+/test.epic_ws[.js]", "parentId": "routes/_app+/_layout", "path": "app/:appName/test/epic_ws.js", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test.epic_ws_.js_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/app.epic_ws[.js]": { "id": "routes/_app+/app.epic_ws[.js]", "parentId": "routes/_app+/_layout", "path": "app/epic_ws.js", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/app.epic_ws_.js_-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/discord": { "id": "routes/_app+/discord", "parentId": "routes/_app+/_layout", "path": "discord", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/discord-DoeazikD.js", "imports": ["/assets/discord-CHsbqaqM.js", "/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/components-9EGYHTc_.js", "/assets/user-BBryXlM_.js"], "css": [] }, "routes/_app+/exercise+/_layout": { "id": "routes/_app+/exercise+/_layout", "parentId": "routes/_app+/_layout", "path": "exercise", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_layout-88n0To1b.js", "imports": ["/assets/index-BFGhCX_U.js"], "css": [] }, "routes/_app+/exercise+/$exerciseNumber": { "id": "routes/_app+/exercise+/$exerciseNumber", "parentId": "routes/_app+/exercise+/_layout", "path": ":exerciseNumber", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_exerciseNumber-DarnXgbX.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-hW1uYjc1.js", "/assets/progress-DAB3nDa2.js", "/assets/misc-BJtHv_Jh.js", "/assets/seo-pBpFCWsy.js", "/assets/components-9EGYHTc_.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-BBryXlM_.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber", "parentId": "routes/_app+/exercise+/_layout", "path": ":exerciseNumber/:stepNumber", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_exerciseNumber_._stepNumber-BA2Xhzqs.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/components-9EGYHTc_.js"], "css": [] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber", "path": ":type", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/_layout-BTrPWpBz.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/error-boundary-1-dmC941.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-hW1uYjc1.js", "/assets/progress-DAB3nDa2.js", "/assets/set-playground-DgnOJqFN.js", "/assets/seo-pBpFCWsy.js", "/assets/misc-BJtHv_Jh.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/tooltip-BgynKV2c.js", "/assets/request-info-DCIQLE6H.js", "/assets/components-9EGYHTc_.js", "/assets/index-BuoaxPEj.js", "/assets/progress-bar-Cj5R4Zk7.js", "/assets/pe-ChIwTk8v.js", "/assets/index-BuA_RWlU.js", "/assets/index-_J-F_Dnc.js", "/assets/loading-Dk0n07O3.js", "/assets/user-BBryXlM_.js", "/assets/workshop-config-DJY2cXU_.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/app": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/app", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "path": "app", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/app-CM8yuYni.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/preview-CW_12I0i.js", "/assets/components-9EGYHTc_.js", "/assets/misc-BJtHv_Jh.js", "/assets/request-info-DCIQLE6H.js", "/assets/button-DQ001ob0.js", "/assets/loading-Dk0n07O3.js", "/assets/index-_J-F_Dnc.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": [] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/index": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/index", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/index-DJF1fiZI.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/tooltip-BgynKV2c.js", "/assets/index-BuA_RWlU.js", "/assets/misc-BJtHv_Jh.js", "/assets/diff-assn_bSK.js", "/assets/error-boundary-1-dmC941.js", "/assets/loading-Dk0n07O3.js", "/assets/discord-CHsbqaqM.js", "/assets/components-9EGYHTc_.js", "/assets/index-DRH72MzK.js", "/assets/set-playground-DgnOJqFN.js", "/assets/tests-Bw1rCopV.js", "/assets/preview-CW_12I0i.js", "/assets/index-BuoaxPEj.js", "/assets/accordion-DC885Li1.js", "/assets/mdx-hW1uYjc1.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/pe-ChIwTk8v.js", "/assets/user-BBryXlM_.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/use-event-source-x59d4R2Z.js", "/assets/button-DQ001ob0.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/test": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/test", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.$type+/_layout", "path": "test", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test-DJ7oeeeg.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/tests-Bw1rCopV.js", "/assets/components-9EGYHTc_.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/misc-BJtHv_Jh.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-BBryXlM_.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/accordion-DC885Li1.js", "/assets/index-BuA_RWlU.js", "/assets/index-BuoaxPEj.js", "/assets/use-event-source-x59d4R2Z.js", "/assets/set-playground-DgnOJqFN.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.index": { "id": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber.index", "parentId": "routes/_app+/exercise+/$exerciseNumber_.$stepNumber", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_exerciseNumber_._stepNumber.index-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/_app+/exercise+/$exerciseNumber_.finished": { "id": "routes/_app+/exercise+/$exerciseNumber_.finished", "parentId": "routes/_app+/exercise+/_layout", "path": ":exerciseNumber/finished", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_exerciseNumber_.finished-DEzaS_Ji.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/loading-Dk0n07O3.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-hW1uYjc1.js", "/assets/progress-DAB3nDa2.js", "/assets/misc-BJtHv_Jh.js", "/assets/seo-pBpFCWsy.js", "/assets/components-9EGYHTc_.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/user-BBryXlM_.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/finished": { "id": "routes/_app+/finished", "parentId": "routes/_app+/_layout", "path": "finished", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/finished-DVV0zwmP.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/loading-Dk0n07O3.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/revalidation-ws-DU-PzW-_.js", "/assets/mdx-hW1uYjc1.js", "/assets/misc-BJtHv_Jh.js", "/assets/seo-pBpFCWsy.js", "/assets/progress-DAB3nDa2.js", "/assets/components-9EGYHTc_.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/user-BBryXlM_.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/index": { "id": "routes/_app+/index", "parentId": "routes/_app+/_layout", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "/assets/index-KgMLc41c.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/index-BCxBKsqT.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/error-boundary-1-dmC941.js", "/assets/mdx-hW1uYjc1.js", "/assets/misc-BJtHv_Jh.js", "/assets/progress-DAB3nDa2.js", "/assets/components-9EGYHTc_.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-BBryXlM_.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/_app+/login": { "id": "routes/_app+/login", "parentId": "routes/_app+/_layout", "path": "login", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/login-pZYDEC_l.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/use-event-source-x59d4R2Z.js", "/assets/button-DQ001ob0.js", "/assets/loading-Dk0n07O3.js", "/assets/product-C1ynnrN_.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/request-info-DCIQLE6H.js", "/assets/components-9EGYHTc_.js", "/assets/misc-BJtHv_Jh.js", "/assets/index-_J-F_Dnc.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js"], "css": [] }, "routes/_app+/support": { "id": "routes/_app+/support", "parentId": "routes/_app+/_layout", "path": "support", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/support-BNS-kEhc.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/components-9EGYHTc_.js"], "css": [] }, "routes/admin+/_layout": { "id": "routes/admin+/_layout", "parentId": "root", "path": "admin", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/_layout-gyrNluke.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/tooltip-BgynKV2c.js", "/assets/progress-DAB3nDa2.js", "/assets/components-9EGYHTc_.js", "/assets/pe-ChIwTk8v.js"], "css": [] }, "routes/admin+/apps": { "id": "routes/admin+/apps", "parentId": "routes/admin+/_layout", "path": "apps", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/apps-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/admin+/cache": { "id": "routes/admin+/cache", "parentId": "routes/admin+/_layout", "path": "cache", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/cache-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/apps": { "id": "routes/apps", "parentId": "root", "path": "apps", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/apps-DP2rzg_V.js", "imports": [], "css": [] }, "routes/diff": { "id": "routes/diff", "parentId": "root", "path": "diff", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/diff-jlCv3hv0.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/misc-BJtHv_Jh.js", "/assets/diff-assn_bSK.js", "/assets/nav-chevrons-CgbSMLeb.js", "/assets/components-9EGYHTc_.js", "/assets/accordion-DC885Li1.js", "/assets/tooltip-BgynKV2c.js", "/assets/index-BuA_RWlU.js", "/assets/index-BuoaxPEj.js", "/assets/mdx-hW1uYjc1.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-BBryXlM_.js", "/assets/workshop-config-DJY2cXU_.js", "/assets/progress-bar-Cj5R4Zk7.js", "/assets/revalidation-ws-DU-PzW-_.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/discord.callback": { "id": "routes/discord.callback", "parentId": "root", "path": "discord/callback", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/discord.callback-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/exercises": { "id": "routes/exercises", "parentId": "root", "path": "exercises", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/exercises-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/launch-editor": { "id": "routes/launch-editor", "parentId": "root", "path": "launch-editor", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/launch-editor-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/login-sse": { "id": "routes/login-sse", "parentId": "root", "path": "login-sse", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/login-sse-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/og": { "id": "routes/og", "parentId": "root", "path": "og", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/og-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/onboarding": { "id": "routes/onboarding", "parentId": "root", "path": "onboarding", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/onboarding-DCuSqnkZ.js", "imports": ["/assets/index-BFGhCX_U.js", "/assets/button-DQ001ob0.js", "/assets/epic-video-GDpD7_Qt.js", "/assets/components-9EGYHTc_.js", "/assets/misc-BJtHv_Jh.js", "/assets/index-_J-F_Dnc.js", "/assets/request-info-DCIQLE6H.js", "/assets/tooltip-BgynKV2c.js", "/assets/pe-ChIwTk8v.js", "/assets/loading-Dk0n07O3.js", "/assets/user-BBryXlM_.js", "/assets/workshop-config-DJY2cXU_.js"], "css": ["/assets/epic-video-DUnRvy1A.css"] }, "routes/processes": { "id": "routes/processes", "parentId": "root", "path": "processes", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/processes-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/progress": { "id": "routes/progress", "parentId": "root", "path": "progress", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/progress-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/robots[.]txt": { "id": "routes/robots[.]txt", "parentId": "root", "path": "robots.txt", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/robots_._txt-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/set-playground": { "id": "routes/set-playground", "parentId": "root", "path": "set-playground", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/set-playground-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/sitemap[.]xml": { "id": "routes/sitemap[.]xml", "parentId": "root", "path": "sitemap.xml", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/sitemap_._xml-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/start": { "id": "routes/start", "parentId": "root", "path": "start", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/start-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/test": { "id": "routes/test", "parentId": "root", "path": "test", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/test-l0sNRNKZ.js", "imports": [], "css": [] }, "routes/theme/index": { "id": "routes/theme/index", "parentId": "root", "path": "theme", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/index-DP2rzg_V.js", "imports": [], "css": [] }, "routes/video-player/index": { "id": "routes/video-player/index", "parentId": "root", "path": "video-player", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "/assets/index-K6Dvbx-E.js", "imports": [], "css": [] } }, "url": "/assets/manifest-3338a6ab.js", "version": "3338a6ab" };
13356
11120
  const mode = "production";
13357
11121
  const assetsBuildDirectory = "build/client";
13358
11122
  const basename = "/";
13359
- const future = { "v3_fetcherPersist": false, "v3_relativeSplatPath": false, "v3_throwAbortReason": false, "unstable_singleFetch": false, "unstable_fogOfWar": false };
11123
+ const future = { "v3_fetcherPersist": true, "v3_relativeSplatPath": true, "v3_throwAbortReason": true, "unstable_singleFetch": false, "unstable_lazyRouteDiscovery": true, "unstable_optimizeDeps": true };
13360
11124
  const isSpaMode = false;
13361
11125
  const publicPath = "/";
13362
11126
  const entry = { module: entryServer };