@epic-web/workshop-app 4.6.6 → 4.7.1

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 (809) hide show
  1. package/build/client/assets/{_-COWH0sBh.js → _-Bd2gNcck.js} +2 -2
  2. package/build/client/assets/{_-COWH0sBh.js.map → _-Bd2gNcck.js.map} +1 -1
  3. package/build/client/assets/{_exerciseNumber-wyz3vbhs.js → _exerciseNumber-CFOo2dQj.js} +2 -2
  4. package/build/client/assets/{_exerciseNumber-wyz3vbhs.js.map → _exerciseNumber-CFOo2dQj.js.map} +1 -1
  5. package/build/client/assets/{_exerciseNumber_._stepNumber-C37pli7_.js → _exerciseNumber_._stepNumber-DCbWNWpZ.js} +2 -2
  6. package/build/client/assets/{_exerciseNumber_._stepNumber-C37pli7_.js.map → _exerciseNumber_._stepNumber-DCbWNWpZ.js.map} +1 -1
  7. package/build/client/assets/_exerciseNumber_.finished-P7xMAtl1.js +2 -0
  8. package/build/client/assets/_exerciseNumber_.finished-P7xMAtl1.js.map +1 -0
  9. package/build/client/assets/_layout-Bdd3mpVx.js +2 -0
  10. package/build/client/assets/_layout-Bdd3mpVx.js.map +1 -0
  11. package/build/client/assets/_layout-DHBLG7Ti.js +6 -0
  12. package/build/client/assets/_layout-DHBLG7Ti.js.map +1 -0
  13. package/build/client/assets/_layout-DaZNLfOL.js +2 -0
  14. package/build/client/assets/{_layout-BR-Qyofe.js.map → _layout-DaZNLfOL.js.map} +1 -1
  15. package/build/client/assets/{_layout-D0zbQZjf.js → _layout-rEQoj43V.js} +2 -2
  16. package/build/client/assets/{_layout-D0zbQZjf.js.map → _layout-rEQoj43V.js.map} +1 -1
  17. package/build/client/assets/{account-DesvwOeg.js → account-CnLkZd_O.js} +2 -2
  18. package/build/client/assets/{account-DesvwOeg.js.map → account-CnLkZd_O.js.map} +1 -1
  19. package/build/client/assets/{button-BfWwrI9B.js → button-CyZl24U2.js} +2 -2
  20. package/build/client/assets/{button-BfWwrI9B.js.map → button-CyZl24U2.js.map} +1 -1
  21. package/build/client/assets/{client-hints-BKxdo5Js.js → client-hints-BE5mB4r0.js} +2 -2
  22. package/build/client/assets/{client-hints-BKxdo5Js.js.map → client-hints-BE5mB4r0.js.map} +1 -1
  23. package/build/client/assets/components-BMzmvxYw.js +166 -0
  24. package/build/client/assets/components-BMzmvxYw.js.map +1 -0
  25. package/build/client/assets/diff-P5f7-8E4.js +2 -0
  26. package/build/client/assets/diff-P5f7-8E4.js.map +1 -0
  27. package/build/client/assets/diff-PfwTHr6-.js +2 -0
  28. package/build/client/assets/{diff-KDzcgGYL.js.map → diff-PfwTHr6-.js.map} +1 -1
  29. package/build/client/assets/{discord-0kv66Q6F.js → discord-COPE8EOZ.js} +2 -2
  30. package/build/client/assets/{discord-0kv66Q6F.js.map → discord-COPE8EOZ.js.map} +1 -1
  31. package/build/client/assets/discord-DIog7bBO.js +2 -0
  32. package/build/client/assets/discord-DIog7bBO.js.map +1 -0
  33. package/build/client/assets/entry.client-B0vV2fsa.js +43 -0
  34. package/build/client/assets/entry.client-B0vV2fsa.js.map +1 -0
  35. package/build/client/assets/{epic-video-BwtXsHGU.js → epic-video-CYnG2ziQ.js} +128 -128
  36. package/build/client/assets/epic-video-CYnG2ziQ.js.map +1 -0
  37. package/build/client/assets/{error-boundary-Bcric_4t.js → error-boundary-DxfVshQ5.js} +2 -2
  38. package/build/client/assets/{error-boundary-Bcric_4t.js.map → error-boundary-DxfVshQ5.js.map} +1 -1
  39. package/build/client/assets/finished-DP5ynR5u.js +2 -0
  40. package/build/client/assets/finished-DP5ynR5u.js.map +1 -0
  41. package/build/client/assets/index-4E9_Sx3m.js +42 -0
  42. package/build/client/assets/index-4E9_Sx3m.js.map +1 -0
  43. package/build/client/assets/{index-Bg9MMnnf.js → index-90bzTYUX.js} +2 -2
  44. package/build/client/assets/index-90bzTYUX.js.map +1 -0
  45. package/build/client/assets/{index-BQRtqn3g.js → index-BXefr1BB.js} +2 -2
  46. package/build/client/assets/{index-BQRtqn3g.js.map → index-BXefr1BB.js.map} +1 -1
  47. package/build/client/assets/index-Czg1ruVn.js +37 -0
  48. package/build/client/assets/index-Czg1ruVn.js.map +1 -0
  49. package/build/client/assets/{index-9nNr0Zqr.js → index-D6ukHE4T.js} +2 -2
  50. package/build/client/assets/{index-9nNr0Zqr.js.map → index-D6ukHE4T.js.map} +1 -1
  51. package/build/client/assets/index-Doi37489.js +3 -0
  52. package/build/client/assets/index-Doi37489.js.map +1 -0
  53. package/build/client/assets/{loading-C9f_vBoM.js → loading-CNWJVymJ.js} +2 -2
  54. package/build/client/assets/{loading-C9f_vBoM.js.map → loading-CNWJVymJ.js.map} +1 -1
  55. package/build/client/assets/{login-D8zyjBAb.js → login-DxG854vQ.js} +2 -2
  56. package/build/client/assets/{login-D8zyjBAb.js.map → login-DxG854vQ.js.map} +1 -1
  57. package/build/client/assets/manifest-805aa13a.js +1 -0
  58. package/build/client/assets/mdx-CR7Me1v_.js +2 -0
  59. package/build/client/assets/{mdx-BYvGbvEr.js.map → mdx-CR7Me1v_.js.map} +1 -1
  60. package/build/client/assets/misc-CypjEQkt.js +2 -0
  61. package/build/client/assets/misc-CypjEQkt.js.map +1 -0
  62. package/build/client/assets/{nav-chevrons-DOYtx9XE.js → nav-chevrons-BYKwyIgG.js} +2 -2
  63. package/build/client/assets/{nav-chevrons-DOYtx9XE.js.map → nav-chevrons-BYKwyIgG.js.map} +1 -1
  64. package/build/client/assets/{onboarding-euWyXpCL.js → onboarding-b9lcdh4n.js} +2 -2
  65. package/build/client/assets/{onboarding-euWyXpCL.js.map → onboarding-b9lcdh4n.js.map} +1 -1
  66. package/build/client/assets/{presence-BJPzwbUy.js → presence-DXXVJbaH.js} +2 -2
  67. package/build/client/assets/{presence-BJPzwbUy.js.map → presence-DXXVJbaH.js.map} +1 -1
  68. package/build/client/assets/progress-B_mReZVE.js +2 -0
  69. package/build/client/assets/progress-B_mReZVE.js.map +1 -0
  70. package/build/client/assets/{progress-bar-7LK87ZMh.js → progress-bar-DCrt7X4t.js} +2 -2
  71. package/build/client/assets/{progress-bar-7LK87ZMh.js.map → progress-bar-DCrt7X4t.js.map} +1 -1
  72. package/build/client/assets/{request-info-Dyls4H67.js → request-info-CUT0ULYN.js} +2 -2
  73. package/build/client/assets/{request-info-Dyls4H67.js.map → request-info-CUT0ULYN.js.map} +1 -1
  74. package/build/client/assets/{root-BQ7V6fP4.js → root-bgHbi7rA.js} +4 -4
  75. package/build/client/assets/root-bgHbi7rA.js.map +1 -0
  76. package/build/client/assets/{support-DUAHYT3r.js → support-DrY-qRGh.js} +2 -2
  77. package/build/client/assets/{support-DUAHYT3r.js.map → support-DrY-qRGh.js.map} +1 -1
  78. package/build/client/assets/tailwind-D2vjZZFL.css +1 -0
  79. package/build/client/assets/tooltip-CfmIzAYi.js +2 -0
  80. package/build/client/assets/tooltip-CfmIzAYi.js.map +1 -0
  81. package/build/client/assets/{use-event-source-aW6X9lN1.js → use-event-source-ySol3hbz.js} +2 -2
  82. package/build/client/assets/{use-event-source-aW6X9lN1.js.map → use-event-source-ySol3hbz.js.map} +1 -1
  83. package/build/client/assets/{user-73ocDYRe.js → user-C4QTtQw5.js} +2 -2
  84. package/build/client/assets/{user-73ocDYRe.js.map → user-C4QTtQw5.js.map} +1 -1
  85. package/build/server/index.js +840 -607
  86. package/build/server/index.js.map +1 -1
  87. package/node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js +65 -3
  88. package/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js +65 -3
  89. package/node_modules/@babel/runtime/package.json +1 -28
  90. package/node_modules/@conform-to/dom/dom.d.ts +17 -5
  91. package/node_modules/@conform-to/dom/form.d.ts +221 -122
  92. package/node_modules/@conform-to/dom/index.d.ts +24 -2
  93. package/node_modules/@conform-to/dom/intent.d.ts +92 -60
  94. package/node_modules/@conform-to/dom/package.json +1 -1
  95. package/node_modules/@conform-to/dom/parse.d.ts +47 -27
  96. package/node_modules/@conform-to/dom/types.d.ts +17 -14
  97. package/node_modules/@conform-to/dom/util.d.ts +4 -1
  98. package/node_modules/@conform-to/react/context.d.ts +187 -59
  99. package/node_modules/@conform-to/react/context.js +3 -5
  100. package/node_modules/@conform-to/react/context.mjs +4 -6
  101. package/node_modules/@conform-to/react/experimental.d.ts +0 -0
  102. package/node_modules/@conform-to/react/hooks.d.ts +53 -24
  103. package/node_modules/@conform-to/react/index.d.ts +28 -4
  104. package/node_modules/@conform-to/react/integrations.js +14 -1
  105. package/node_modules/@conform-to/react/integrations.mjs +14 -1
  106. package/node_modules/@conform-to/react/package.json +2 -2
  107. package/node_modules/@conform-to/zod/coercion.d.ts +14 -4
  108. package/node_modules/@conform-to/zod/constraint.d.ts +3 -1
  109. package/node_modules/@conform-to/zod/package.json +2 -2
  110. package/node_modules/@conform-to/zod/parse.d.ts +43 -25
  111. package/node_modules/@floating-ui/core/dist/floating-ui.core.browser.min.mjs +1 -1
  112. package/node_modules/@floating-ui/core/dist/floating-ui.core.browser.mjs +14 -3
  113. package/node_modules/@floating-ui/core/dist/floating-ui.core.d.mts +51 -51
  114. package/node_modules/@floating-ui/core/dist/floating-ui.core.d.ts +51 -51
  115. package/node_modules/@floating-ui/core/dist/floating-ui.core.esm.js +14 -3
  116. package/node_modules/@floating-ui/core/dist/floating-ui.core.mjs +14 -3
  117. package/node_modules/@floating-ui/core/dist/floating-ui.core.umd.js +14 -3
  118. package/node_modules/@floating-ui/core/dist/floating-ui.core.umd.min.js +1 -1
  119. package/node_modules/@floating-ui/core/package.json +2 -2
  120. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.browser.min.mjs +1 -1
  121. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.browser.mjs +12 -11
  122. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.d.mts +11 -8
  123. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.d.ts +11 -8
  124. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.esm.js +1 -12
  125. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs +1 -12
  126. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.umd.js +12 -11
  127. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.umd.min.js +1 -1
  128. package/node_modules/@floating-ui/dom/package.json +2 -2
  129. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.d.mts +12 -4
  130. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.d.ts +12 -4
  131. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.esm.js +1 -0
  132. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs +1 -0
  133. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.umd.js +1 -0
  134. package/node_modules/@floating-ui/react-dom/package.json +1 -1
  135. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.d.mts +11 -6
  136. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.d.ts +11 -6
  137. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.d.mts +2 -0
  138. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.d.ts +2 -0
  139. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.esm.js +13 -1
  140. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs +13 -1
  141. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.umd.js +13 -0
  142. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.umd.min.js +1 -1
  143. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.d.ts +2 -0
  144. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.esm.js +13 -1
  145. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.umd.js +13 -0
  146. package/node_modules/@floating-ui/utils/package.json +1 -1
  147. package/node_modules/@radix-ui/number/dist/index.d.mts +2 -2
  148. package/node_modules/@radix-ui/number/dist/index.d.ts +2 -2
  149. package/node_modules/@radix-ui/number/dist/index.js +28 -10
  150. package/node_modules/@radix-ui/number/dist/index.js.map +7 -1
  151. package/node_modules/@radix-ui/number/dist/index.mjs +6 -7
  152. package/node_modules/@radix-ui/number/dist/index.mjs.map +7 -1
  153. package/node_modules/@radix-ui/number/package.json +1 -4
  154. package/node_modules/@radix-ui/primitive/dist/index.d.mts +2 -2
  155. package/node_modules/@radix-ui/primitive/dist/index.d.ts +2 -2
  156. package/node_modules/@radix-ui/primitive/dist/index.js +33 -13
  157. package/node_modules/@radix-ui/primitive/dist/index.js.map +7 -1
  158. package/node_modules/@radix-ui/primitive/dist/index.mjs +11 -10
  159. package/node_modules/@radix-ui/primitive/dist/index.mjs.map +7 -1
  160. package/node_modules/@radix-ui/primitive/package.json +1 -4
  161. package/node_modules/@radix-ui/react-accordion/dist/index.d.mts +40 -28
  162. package/node_modules/@radix-ui/react-accordion/dist/index.d.ts +40 -28
  163. package/node_modules/@radix-ui/react-accordion/dist/index.js +324 -316
  164. package/node_modules/@radix-ui/react-accordion/dist/index.js.map +7 -1
  165. package/node_modules/@radix-ui/react-accordion/dist/index.mjs +293 -300
  166. package/node_modules/@radix-ui/react-accordion/dist/index.mjs.map +7 -1
  167. package/node_modules/@radix-ui/react-accordion/package.json +12 -13
  168. package/node_modules/@radix-ui/react-arrow/dist/index.d.mts +8 -8
  169. package/node_modules/@radix-ui/react-arrow/dist/index.d.ts +8 -8
  170. package/node_modules/@radix-ui/react-arrow/dist/index.js +57 -37
  171. package/node_modules/@radix-ui/react-arrow/dist/index.js.map +7 -1
  172. package/node_modules/@radix-ui/react-arrow/dist/index.mjs +25 -30
  173. package/node_modules/@radix-ui/react-arrow/dist/index.mjs.map +7 -1
  174. package/node_modules/@radix-ui/react-arrow/package.json +4 -5
  175. package/node_modules/@radix-ui/react-collapsible/dist/index.d.mts +27 -16
  176. package/node_modules/@radix-ui/react-collapsible/dist/index.d.ts +27 -16
  177. package/node_modules/@radix-ui/react-collapsible/dist/index.js +176 -167
  178. package/node_modules/@radix-ui/react-collapsible/dist/index.js.map +7 -1
  179. package/node_modules/@radix-ui/react-collapsible/dist/index.mjs +143 -153
  180. package/node_modules/@radix-ui/react-collapsible/dist/index.mjs.map +7 -1
  181. package/node_modules/@radix-ui/react-collapsible/package.json +11 -12
  182. package/node_modules/@radix-ui/react-collection/dist/index.d.mts +27 -15
  183. package/node_modules/@radix-ui/react-collection/dist/index.d.ts +27 -15
  184. package/node_modules/@radix-ui/react-collection/dist/index.js +99 -112
  185. package/node_modules/@radix-ui/react-collection/dist/index.js.map +7 -1
  186. package/node_modules/@radix-ui/react-collection/dist/index.mjs +68 -106
  187. package/node_modules/@radix-ui/react-collection/dist/index.mjs.map +7 -1
  188. package/node_modules/@radix-ui/react-collection/package.json +7 -8
  189. package/node_modules/@radix-ui/react-compose-refs/dist/index.d.mts +5 -4
  190. package/node_modules/@radix-ui/react-compose-refs/dist/index.d.ts +5 -4
  191. package/node_modules/@radix-ui/react-compose-refs/dist/index.js +47 -30
  192. package/node_modules/@radix-ui/react-compose-refs/dist/index.js.map +7 -1
  193. package/node_modules/@radix-ui/react-compose-refs/dist/index.mjs +16 -27
  194. package/node_modules/@radix-ui/react-compose-refs/dist/index.mjs.map +7 -1
  195. package/node_modules/@radix-ui/react-compose-refs/package.json +2 -5
  196. package/node_modules/@radix-ui/react-context/dist/index.d.mts +10 -8
  197. package/node_modules/@radix-ui/react-context/dist/index.d.ts +10 -8
  198. package/node_modules/@radix-ui/react-context/dist/index.js +104 -123
  199. package/node_modules/@radix-ui/react-context/dist/index.js.map +7 -1
  200. package/node_modules/@radix-ui/react-context/dist/index.mjs +73 -120
  201. package/node_modules/@radix-ui/react-context/dist/index.mjs.map +7 -1
  202. package/node_modules/@radix-ui/react-context/package.json +2 -5
  203. package/node_modules/@radix-ui/react-direction/dist/index.d.mts +6 -5
  204. package/node_modules/@radix-ui/react-direction/dist/index.d.ts +6 -5
  205. package/node_modules/@radix-ui/react-direction/dist/index.js +47 -24
  206. package/node_modules/@radix-ui/react-direction/dist/index.js.map +7 -1
  207. package/node_modules/@radix-ui/react-direction/dist/index.mjs +16 -20
  208. package/node_modules/@radix-ui/react-direction/dist/index.mjs.map +7 -1
  209. package/node_modules/@radix-ui/react-direction/package.json +2 -5
  210. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.d.mts +10 -10
  211. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.d.ts +10 -10
  212. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +230 -270
  213. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.js.map +7 -1
  214. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs +199 -261
  215. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs.map +7 -1
  216. package/node_modules/@radix-ui/react-dismissable-layer/package.json +9 -10
  217. package/node_modules/@radix-ui/react-focus-guards/dist/index.d.mts +4 -4
  218. package/node_modules/@radix-ui/react-focus-guards/dist/index.d.ts +4 -4
  219. package/node_modules/@radix-ui/react-focus-guards/dist/index.js +63 -39
  220. package/node_modules/@radix-ui/react-focus-guards/dist/index.js.map +7 -1
  221. package/node_modules/@radix-ui/react-focus-guards/dist/index.mjs +32 -34
  222. package/node_modules/@radix-ui/react-focus-guards/dist/index.mjs.map +7 -1
  223. package/node_modules/@radix-ui/react-focus-guards/package.json +2 -5
  224. package/node_modules/@radix-ui/react-focus-scope/dist/index.d.mts +8 -8
  225. package/node_modules/@radix-ui/react-focus-scope/dist/index.d.ts +8 -8
  226. package/node_modules/@radix-ui/react-focus-scope/dist/index.js +228 -282
  227. package/node_modules/@radix-ui/react-focus-scope/dist/index.js.map +7 -1
  228. package/node_modules/@radix-ui/react-focus-scope/dist/index.mjs +197 -275
  229. package/node_modules/@radix-ui/react-focus-scope/dist/index.mjs.map +7 -1
  230. package/node_modules/@radix-ui/react-focus-scope/package.json +6 -7
  231. package/node_modules/@radix-ui/react-id/dist/index.d.mts +2 -2
  232. package/node_modules/@radix-ui/react-id/dist/index.d.ts +2 -2
  233. package/node_modules/@radix-ui/react-id/dist/index.js +47 -26
  234. package/node_modules/@radix-ui/react-id/dist/index.js.map +7 -1
  235. package/node_modules/@radix-ui/react-id/dist/index.mjs +14 -22
  236. package/node_modules/@radix-ui/react-id/dist/index.mjs.map +7 -1
  237. package/node_modules/@radix-ui/react-id/package.json +3 -4
  238. package/node_modules/@radix-ui/react-popover/dist/index.d.mts +48 -37
  239. package/node_modules/@radix-ui/react-popover/dist/index.d.ts +48 -37
  240. package/node_modules/@radix-ui/react-popover/dist/index.js +319 -311
  241. package/node_modules/@radix-ui/react-popover/dist/index.js.map +7 -1
  242. package/node_modules/@radix-ui/react-popover/dist/index.mjs +288 -291
  243. package/node_modules/@radix-ui/react-popover/dist/index.mjs.map +7 -1
  244. package/node_modules/@radix-ui/react-popover/package.json +17 -18
  245. package/node_modules/@radix-ui/react-popper/dist/index.d.mts +36 -25
  246. package/node_modules/@radix-ui/react-popper/dist/index.d.ts +36 -25
  247. package/node_modules/@radix-ui/react-popper/dist/index.js +305 -321
  248. package/node_modules/@radix-ui/react-popper/dist/index.js.map +7 -1
  249. package/node_modules/@radix-ui/react-popper/dist/index.mjs +284 -305
  250. package/node_modules/@radix-ui/react-popper/dist/index.mjs.map +7 -1
  251. package/node_modules/@radix-ui/react-popper/package.json +12 -13
  252. package/node_modules/@radix-ui/react-portal/dist/index.d.mts +9 -9
  253. package/node_modules/@radix-ui/react-portal/dist/index.d.ts +9 -9
  254. package/node_modules/@radix-ui/react-portal/dist/index.js +52 -34
  255. package/node_modules/@radix-ui/react-portal/dist/index.js.map +7 -1
  256. package/node_modules/@radix-ui/react-portal/dist/index.mjs +21 -27
  257. package/node_modules/@radix-ui/react-portal/dist/index.mjs.map +7 -1
  258. package/node_modules/@radix-ui/react-portal/package.json +5 -5
  259. package/node_modules/@radix-ui/react-presence/dist/index.d.mts +5 -4
  260. package/node_modules/@radix-ui/react-presence/dist/index.d.ts +5 -4
  261. package/node_modules/@radix-ui/react-presence/dist/index.js +147 -132
  262. package/node_modules/@radix-ui/react-presence/dist/index.js.map +7 -1
  263. package/node_modules/@radix-ui/react-presence/dist/index.mjs +116 -129
  264. package/node_modules/@radix-ui/react-presence/dist/index.mjs.map +7 -1
  265. package/node_modules/@radix-ui/react-presence/package.json +5 -6
  266. package/node_modules/@radix-ui/react-primitive/dist/index.d.mts +8 -9
  267. package/node_modules/@radix-ui/react-primitive/dist/index.d.ts +8 -9
  268. package/node_modules/@radix-ui/react-primitive/dist/index.js +73 -100
  269. package/node_modules/@radix-ui/react-primitive/dist/index.js.map +7 -1
  270. package/node_modules/@radix-ui/react-primitive/dist/index.mjs +42 -93
  271. package/node_modules/@radix-ui/react-primitive/dist/index.mjs.map +7 -1
  272. package/node_modules/@radix-ui/react-primitive/package.json +4 -5
  273. package/node_modules/@radix-ui/react-roving-focus/dist/index.d.mts +25 -13
  274. package/node_modules/@radix-ui/react-roving-focus/dist/index.d.ts +25 -13
  275. package/node_modules/@radix-ui/react-roving-focus/dist/index.js +239 -247
  276. package/node_modules/@radix-ui/react-roving-focus/dist/index.js.map +7 -1
  277. package/node_modules/@radix-ui/react-roving-focus/dist/index.mjs +209 -238
  278. package/node_modules/@radix-ui/react-roving-focus/dist/index.mjs.map +7 -1
  279. package/node_modules/@radix-ui/react-roving-focus/package.json +12 -13
  280. package/node_modules/@radix-ui/react-select/dist/index.d.mts +77 -65
  281. package/node_modules/@radix-ui/react-select/dist/index.d.ts +77 -65
  282. package/node_modules/@radix-ui/react-select/dist/index.js +1107 -1235
  283. package/node_modules/@radix-ui/react-select/dist/index.js.map +7 -1
  284. package/node_modules/@radix-ui/react-select/dist/index.mjs +1076 -1197
  285. package/node_modules/@radix-ui/react-select/dist/index.mjs.map +7 -1
  286. package/node_modules/@radix-ui/react-select/package.json +23 -24
  287. package/node_modules/@radix-ui/react-slot/dist/index.d.mts +9 -7
  288. package/node_modules/@radix-ui/react-slot/dist/index.d.ts +9 -7
  289. package/node_modules/@radix-ui/react-slot/dist/index.js +107 -87
  290. package/node_modules/@radix-ui/react-slot/dist/index.js.map +7 -1
  291. package/node_modules/@radix-ui/react-slot/dist/index.mjs +76 -80
  292. package/node_modules/@radix-ui/react-slot/dist/index.mjs.map +7 -1
  293. package/node_modules/@radix-ui/react-slot/package.json +3 -4
  294. package/node_modules/@radix-ui/react-tabs/dist/index.d.mts +32 -21
  295. package/node_modules/@radix-ui/react-tabs/dist/index.d.ts +32 -21
  296. package/node_modules/@radix-ui/react-tabs/dist/index.js +217 -184
  297. package/node_modules/@radix-ui/react-tabs/dist/index.js.map +7 -1
  298. package/node_modules/@radix-ui/react-tabs/dist/index.mjs +185 -169
  299. package/node_modules/@radix-ui/react-tabs/dist/index.mjs.map +7 -1
  300. package/node_modules/@radix-ui/react-tabs/package.json +11 -12
  301. package/node_modules/@radix-ui/react-toast/dist/index.d.mts +43 -32
  302. package/node_modules/@radix-ui/react-toast/dist/index.d.ts +43 -32
  303. package/node_modules/@radix-ui/react-toast/dist/index.js +645 -715
  304. package/node_modules/@radix-ui/react-toast/dist/index.js.map +7 -1
  305. package/node_modules/@radix-ui/react-toast/dist/index.mjs +614 -695
  306. package/node_modules/@radix-ui/react-toast/dist/index.mjs.map +7 -1
  307. package/node_modules/@radix-ui/react-toast/package.json +15 -16
  308. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.d.mts +2 -2
  309. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.d.ts +2 -2
  310. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.js +42 -23
  311. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.js.map +7 -1
  312. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs +11 -21
  313. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs.map +7 -1
  314. package/node_modules/@radix-ui/react-use-callback-ref/package.json +2 -5
  315. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.d.mts +4 -3
  316. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.d.ts +4 -3
  317. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +75 -52
  318. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.js.map +7 -1
  319. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs +44 -50
  320. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs.map +7 -1
  321. package/node_modules/@radix-ui/react-use-controllable-state/package.json +3 -4
  322. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.d.mts +2 -2
  323. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.d.ts +2 -2
  324. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js +50 -29
  325. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js.map +7 -1
  326. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs +17 -25
  327. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs.map +7 -1
  328. package/node_modules/@radix-ui/react-use-escape-keydown/package.json +3 -4
  329. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.d.mts +4 -3
  330. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.d.ts +4 -3
  331. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.js +38 -17
  332. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.js.map +7 -1
  333. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs +7 -15
  334. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs.map +7 -1
  335. package/node_modules/@radix-ui/react-use-layout-effect/package.json +2 -5
  336. package/node_modules/@radix-ui/react-use-previous/dist/index.d.mts +2 -2
  337. package/node_modules/@radix-ui/react-use-previous/dist/index.d.ts +2 -2
  338. package/node_modules/@radix-ui/react-use-previous/dist/index.js +45 -26
  339. package/node_modules/@radix-ui/react-use-previous/dist/index.js.map +7 -1
  340. package/node_modules/@radix-ui/react-use-previous/dist/index.mjs +14 -24
  341. package/node_modules/@radix-ui/react-use-previous/dist/index.mjs.map +7 -1
  342. package/node_modules/@radix-ui/react-use-previous/package.json +2 -5
  343. package/node_modules/@radix-ui/react-use-rect/dist/index.d.mts +4 -3
  344. package/node_modules/@radix-ui/react-use-rect/dist/index.d.ts +4 -3
  345. package/node_modules/@radix-ui/react-use-rect/dist/index.js +52 -32
  346. package/node_modules/@radix-ui/react-use-rect/dist/index.js.map +7 -1
  347. package/node_modules/@radix-ui/react-use-rect/dist/index.mjs +19 -28
  348. package/node_modules/@radix-ui/react-use-rect/dist/index.mjs.map +7 -1
  349. package/node_modules/@radix-ui/react-use-rect/package.json +3 -4
  350. package/node_modules/@radix-ui/react-use-size/dist/index.d.mts +2 -2
  351. package/node_modules/@radix-ui/react-use-size/dist/index.d.ts +2 -2
  352. package/node_modules/@radix-ui/react-use-size/dist/index.js +70 -57
  353. package/node_modules/@radix-ui/react-use-size/dist/index.js.map +7 -1
  354. package/node_modules/@radix-ui/react-use-size/dist/index.mjs +39 -55
  355. package/node_modules/@radix-ui/react-use-size/dist/index.mjs.map +7 -1
  356. package/node_modules/@radix-ui/react-use-size/package.json +3 -4
  357. package/node_modules/@radix-ui/react-visually-hidden/dist/index.d.mts +8 -8
  358. package/node_modules/@radix-ui/react-visually-hidden/dist/index.d.ts +8 -8
  359. package/node_modules/@radix-ui/react-visually-hidden/dist/index.js +64 -41
  360. package/node_modules/@radix-ui/react-visually-hidden/dist/index.js.map +7 -1
  361. package/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs +33 -35
  362. package/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs.map +7 -1
  363. package/node_modules/@radix-ui/react-visually-hidden/package.json +4 -5
  364. package/node_modules/@radix-ui/rect/dist/index.d.mts +3 -3
  365. package/node_modules/@radix-ui/rect/dist/index.d.ts +3 -3
  366. package/node_modules/@radix-ui/rect/dist/index.js +69 -66
  367. package/node_modules/@radix-ui/rect/dist/index.js.map +7 -1
  368. package/node_modules/@radix-ui/rect/dist/index.mjs +47 -63
  369. package/node_modules/@radix-ui/rect/dist/index.mjs.map +7 -1
  370. package/node_modules/@radix-ui/rect/package.json +1 -4
  371. package/node_modules/@remix-run/react/CHANGELOG.md +18 -0
  372. package/node_modules/@remix-run/react/dist/_virtual/_rollupPluginBabelHelpers.js +1 -1
  373. package/node_modules/@remix-run/react/dist/browser.js +14 -3
  374. package/node_modules/@remix-run/react/dist/components.d.ts +9 -0
  375. package/node_modules/@remix-run/react/dist/components.js +23 -19
  376. package/node_modules/@remix-run/react/dist/data.js +1 -1
  377. package/node_modules/@remix-run/react/dist/entry.d.ts +1 -0
  378. package/node_modules/@remix-run/react/dist/errorBoundaries.d.ts +5 -2
  379. package/node_modules/@remix-run/react/dist/errorBoundaries.js +26 -5
  380. package/node_modules/@remix-run/react/dist/errors.js +1 -1
  381. package/node_modules/@remix-run/react/dist/esm/_virtual/_rollupPluginBabelHelpers.js +1 -1
  382. package/node_modules/@remix-run/react/dist/esm/browser.js +14 -3
  383. package/node_modules/@remix-run/react/dist/esm/components.js +24 -20
  384. package/node_modules/@remix-run/react/dist/esm/data.js +1 -1
  385. package/node_modules/@remix-run/react/dist/esm/errorBoundaries.js +26 -5
  386. package/node_modules/@remix-run/react/dist/esm/errors.js +1 -1
  387. package/node_modules/@remix-run/react/dist/esm/fallback.js +1 -1
  388. package/node_modules/@remix-run/react/dist/esm/fog-of-war.js +226 -0
  389. package/node_modules/@remix-run/react/dist/esm/index.js +1 -1
  390. package/node_modules/@remix-run/react/dist/esm/invariant.js +1 -1
  391. package/node_modules/@remix-run/react/dist/esm/links.js +2 -2
  392. package/node_modules/@remix-run/react/dist/esm/markup.js +1 -1
  393. package/node_modules/@remix-run/react/dist/esm/routeModules.js +1 -1
  394. package/node_modules/@remix-run/react/dist/esm/routes.js +1 -1
  395. package/node_modules/@remix-run/react/dist/esm/scroll-restoration.js +1 -1
  396. package/node_modules/@remix-run/react/dist/esm/server.js +1 -1
  397. package/node_modules/@remix-run/react/dist/esm/single-fetch.js +1 -1
  398. package/node_modules/@remix-run/react/dist/fallback.js +1 -1
  399. package/node_modules/@remix-run/react/dist/fog-of-war.d.ts +37 -0
  400. package/node_modules/@remix-run/react/dist/fog-of-war.js +254 -0
  401. package/node_modules/@remix-run/react/dist/index.js +1 -1
  402. package/node_modules/@remix-run/react/dist/invariant.js +1 -1
  403. package/node_modules/@remix-run/react/dist/links.js +2 -2
  404. package/node_modules/@remix-run/react/dist/markup.js +1 -1
  405. package/node_modules/@remix-run/react/dist/routeModules.js +1 -1
  406. package/node_modules/@remix-run/react/dist/routes.d.ts +1 -1
  407. package/node_modules/@remix-run/react/dist/routes.js +1 -1
  408. package/node_modules/@remix-run/react/dist/scroll-restoration.js +1 -1
  409. package/node_modules/@remix-run/react/dist/server.js +1 -1
  410. package/node_modules/@remix-run/react/dist/single-fetch.js +1 -1
  411. package/node_modules/@remix-run/react/package.json +8 -8
  412. package/node_modules/@remix-run/router/CHANGELOG.md +9 -0
  413. package/node_modules/@remix-run/router/dist/index.d.ts +1 -1
  414. package/node_modules/@remix-run/router/dist/router.cjs.js +467 -80
  415. package/node_modules/@remix-run/router/dist/router.cjs.js.map +1 -1
  416. package/node_modules/@remix-run/router/dist/router.d.ts +11 -1
  417. package/node_modules/@remix-run/router/dist/router.js +457 -76
  418. package/node_modules/@remix-run/router/dist/router.js.map +1 -1
  419. package/node_modules/@remix-run/router/dist/router.umd.js +467 -80
  420. package/node_modules/@remix-run/router/dist/router.umd.js.map +1 -1
  421. package/node_modules/@remix-run/router/dist/router.umd.min.js +2 -2
  422. package/node_modules/@remix-run/router/dist/router.umd.min.js.map +1 -1
  423. package/node_modules/@remix-run/router/dist/utils.d.ts +9 -1
  424. package/node_modules/@remix-run/router/index.ts +1 -0
  425. package/node_modules/@remix-run/router/package.json +1 -1
  426. package/node_modules/@remix-run/router/router.ts +586 -73
  427. package/node_modules/@remix-run/router/utils.ts +51 -8
  428. package/node_modules/@remix-run/server-runtime/CHANGELOG.md +17 -0
  429. package/node_modules/@remix-run/server-runtime/dist/cookies.js +1 -1
  430. package/node_modules/@remix-run/server-runtime/dist/data.js +1 -1
  431. package/node_modules/@remix-run/server-runtime/dist/deprecations.js +1 -1
  432. package/node_modules/@remix-run/server-runtime/dist/dev.js +1 -1
  433. package/node_modules/@remix-run/server-runtime/dist/entry.d.ts +1 -0
  434. package/node_modules/@remix-run/server-runtime/dist/entry.js +1 -1
  435. package/node_modules/@remix-run/server-runtime/dist/errors.js +1 -1
  436. package/node_modules/@remix-run/server-runtime/dist/esm/cookies.js +1 -1
  437. package/node_modules/@remix-run/server-runtime/dist/esm/data.js +1 -1
  438. package/node_modules/@remix-run/server-runtime/dist/esm/deprecations.js +1 -1
  439. package/node_modules/@remix-run/server-runtime/dist/esm/dev.js +1 -1
  440. package/node_modules/@remix-run/server-runtime/dist/esm/entry.js +1 -1
  441. package/node_modules/@remix-run/server-runtime/dist/esm/errors.js +1 -1
  442. package/node_modules/@remix-run/server-runtime/dist/esm/formData.js +1 -1
  443. package/node_modules/@remix-run/server-runtime/dist/esm/headers.js +1 -1
  444. package/node_modules/@remix-run/server-runtime/dist/esm/index.js +1 -1
  445. package/node_modules/@remix-run/server-runtime/dist/esm/invariant.js +1 -1
  446. package/node_modules/@remix-run/server-runtime/dist/esm/markup.js +1 -1
  447. package/node_modules/@remix-run/server-runtime/dist/esm/mode.js +1 -1
  448. package/node_modules/@remix-run/server-runtime/dist/esm/responses.js +1 -1
  449. package/node_modules/@remix-run/server-runtime/dist/esm/routeMatching.js +1 -1
  450. package/node_modules/@remix-run/server-runtime/dist/esm/routes.js +1 -1
  451. package/node_modules/@remix-run/server-runtime/dist/esm/server.js +76 -11
  452. package/node_modules/@remix-run/server-runtime/dist/esm/serverHandoff.js +1 -1
  453. package/node_modules/@remix-run/server-runtime/dist/esm/sessions/cookieStorage.js +1 -1
  454. package/node_modules/@remix-run/server-runtime/dist/esm/sessions/memoryStorage.js +1 -1
  455. package/node_modules/@remix-run/server-runtime/dist/esm/sessions.js +1 -1
  456. package/node_modules/@remix-run/server-runtime/dist/esm/single-fetch.js +17 -8
  457. package/node_modules/@remix-run/server-runtime/dist/esm/upload/errors.js +1 -1
  458. package/node_modules/@remix-run/server-runtime/dist/esm/upload/memoryUploadHandler.js +1 -1
  459. package/node_modules/@remix-run/server-runtime/dist/esm/warnings.js +1 -1
  460. package/node_modules/@remix-run/server-runtime/dist/formData.js +1 -1
  461. package/node_modules/@remix-run/server-runtime/dist/headers.js +1 -1
  462. package/node_modules/@remix-run/server-runtime/dist/index.js +1 -1
  463. package/node_modules/@remix-run/server-runtime/dist/invariant.js +1 -1
  464. package/node_modules/@remix-run/server-runtime/dist/markup.js +1 -1
  465. package/node_modules/@remix-run/server-runtime/dist/mode.js +1 -1
  466. package/node_modules/@remix-run/server-runtime/dist/responses.js +1 -1
  467. package/node_modules/@remix-run/server-runtime/dist/routeMatching.js +1 -1
  468. package/node_modules/@remix-run/server-runtime/dist/routes.js +1 -1
  469. package/node_modules/@remix-run/server-runtime/dist/server.js +70 -5
  470. package/node_modules/@remix-run/server-runtime/dist/serverHandoff.js +1 -1
  471. package/node_modules/@remix-run/server-runtime/dist/sessions/cookieStorage.js +1 -1
  472. package/node_modules/@remix-run/server-runtime/dist/sessions/memoryStorage.js +1 -1
  473. package/node_modules/@remix-run/server-runtime/dist/sessions.js +1 -1
  474. package/node_modules/@remix-run/server-runtime/dist/single-fetch.d.ts +3 -0
  475. package/node_modules/@remix-run/server-runtime/dist/single-fetch.js +18 -7
  476. package/node_modules/@remix-run/server-runtime/dist/upload/errors.js +1 -1
  477. package/node_modules/@remix-run/server-runtime/dist/upload/memoryUploadHandler.js +1 -1
  478. package/node_modules/@remix-run/server-runtime/dist/warnings.js +1 -1
  479. package/node_modules/@remix-run/server-runtime/package.json +3 -3
  480. package/node_modules/deep-eql/index.js +10 -5
  481. package/node_modules/deep-eql/package.json +1 -1
  482. package/node_modules/framer-motion/dist/cjs/{dom-entry-DSxBucW4.js → dom-entry-GDJJhIpT.js} +59 -106
  483. package/node_modules/framer-motion/dist/cjs/dom-entry.js +1 -1
  484. package/node_modules/framer-motion/dist/cjs/index.js +123 -36
  485. package/node_modules/framer-motion/dist/dom.js +1 -1
  486. package/node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs +3 -3
  487. package/node_modules/framer-motion/dist/es/motion/features/animation/index.mjs +6 -3
  488. package/node_modules/framer-motion/dist/es/motion/index.mjs +33 -13
  489. package/node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs +6 -3
  490. package/node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs +54 -3
  491. package/node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs +5 -2
  492. package/node_modules/framer-motion/dist/es/projection-entry.mjs +11 -0
  493. package/node_modules/framer-motion/dist/es/render/VisualElement.mjs +30 -78
  494. package/node_modules/framer-motion/dist/es/render/utils/animation-state.mjs +5 -1
  495. package/node_modules/framer-motion/dist/es/render/utils/motion-values.mjs +1 -1
  496. package/node_modules/framer-motion/dist/es/utils/mix/color.mjs +8 -2
  497. package/node_modules/framer-motion/dist/es/utils/mix/complex.mjs +1 -3
  498. package/node_modules/framer-motion/dist/es/utils/mix/immediate.mjs +5 -0
  499. package/node_modules/framer-motion/dist/es/value/index.mjs +1 -1
  500. package/node_modules/framer-motion/dist/es/value/types/color/rgba.mjs +1 -1
  501. package/node_modules/framer-motion/dist/framer-motion.dev.js +175 -134
  502. package/node_modules/framer-motion/dist/framer-motion.js +1 -1
  503. package/node_modules/framer-motion/dist/index.d.ts +78 -78
  504. package/node_modules/framer-motion/dist/three-entry.d.ts +59 -72
  505. package/node_modules/framer-motion/package.json +14 -28
  506. package/node_modules/react-remove-scroll/dist/es2015/SideEffect.js +15 -4
  507. package/node_modules/react-remove-scroll/dist/es2015/UI.js +2 -2
  508. package/node_modules/react-remove-scroll/dist/es2015/handleScroll.js +12 -4
  509. package/node_modules/react-remove-scroll/dist/es2015/types.d.ts +10 -2
  510. package/node_modules/react-remove-scroll/dist/es2019/SideEffect.js +15 -4
  511. package/node_modules/react-remove-scroll/dist/es2019/UI.js +2 -2
  512. package/node_modules/react-remove-scroll/dist/es2019/handleScroll.js +12 -4
  513. package/node_modules/react-remove-scroll/dist/es2019/types.d.ts +10 -2
  514. package/node_modules/react-remove-scroll/dist/es5/SideEffect.js +15 -4
  515. package/node_modules/react-remove-scroll/dist/es5/UI.js +2 -2
  516. package/node_modules/react-remove-scroll/dist/es5/handleScroll.js +12 -4
  517. package/node_modules/react-remove-scroll/dist/es5/types.d.ts +10 -2
  518. package/node_modules/react-remove-scroll/dist/index.js +93 -0
  519. package/node_modules/react-remove-scroll/package.json +4 -3
  520. package/node_modules/react-router/CHANGELOG.md +14 -0
  521. package/node_modules/react-router/dist/index.d.ts +4 -1
  522. package/node_modules/react-router/dist/index.js +3 -2
  523. package/node_modules/react-router/dist/index.js.map +1 -1
  524. package/node_modules/react-router/dist/main.js +1 -1
  525. package/node_modules/react-router/dist/react-router.development.js +3 -2
  526. package/node_modules/react-router/dist/react-router.development.js.map +1 -1
  527. package/node_modules/react-router/dist/react-router.production.min.js +2 -2
  528. package/node_modules/react-router/dist/react-router.production.min.js.map +1 -1
  529. package/node_modules/react-router/dist/umd/react-router.development.js +3 -2
  530. package/node_modules/react-router/dist/umd/react-router.development.js.map +1 -1
  531. package/node_modules/react-router/dist/umd/react-router.production.min.js +2 -2
  532. package/node_modules/react-router/dist/umd/react-router.production.min.js.map +1 -1
  533. package/node_modules/react-router/package.json +3 -3
  534. package/node_modules/react-router-dom/CHANGELOG.md +17 -0
  535. package/node_modules/react-router-dom/dist/dom.d.ts +29 -16
  536. package/node_modules/react-router-dom/dist/index.d.ts +18 -6
  537. package/node_modules/react-router-dom/dist/index.js +3 -1
  538. package/node_modules/react-router-dom/dist/index.js.map +1 -1
  539. package/node_modules/react-router-dom/dist/main.js +1 -1
  540. package/node_modules/react-router-dom/dist/react-router-dom.development.js +29 -1
  541. package/node_modules/react-router-dom/dist/react-router-dom.development.js.map +1 -1
  542. package/node_modules/react-router-dom/dist/react-router-dom.production.min.js +2 -2
  543. package/node_modules/react-router-dom/dist/react-router-dom.production.min.js.map +1 -1
  544. package/node_modules/react-router-dom/dist/server.js +4 -1
  545. package/node_modules/react-router-dom/dist/server.mjs +4 -1
  546. package/node_modules/react-router-dom/dist/umd/react-router-dom.development.js +29 -1
  547. package/node_modules/react-router-dom/dist/umd/react-router-dom.development.js.map +1 -1
  548. package/node_modules/react-router-dom/dist/umd/react-router-dom.production.min.js +2 -2
  549. package/node_modules/react-router-dom/dist/umd/react-router-dom.production.min.js.map +1 -1
  550. package/node_modules/react-router-dom/package.json +3 -3
  551. package/node_modules/react-router-dom/server.js +4 -1
  552. package/node_modules/react-router-dom/server.mjs +4 -1
  553. package/node_modules/{@remix-run/server-runtime/node_modules/source-map → source-map}/README.md +32 -112
  554. package/node_modules/source-map/dist/source-map.debug.js +3234 -0
  555. package/node_modules/source-map/dist/source-map.js +3233 -0
  556. package/node_modules/source-map/dist/source-map.min.js +2 -0
  557. package/node_modules/source-map/dist/source-map.min.js.map +1 -0
  558. package/node_modules/source-map/lib/array-set.js +121 -0
  559. package/node_modules/{@remix-run/server-runtime/node_modules/source-map → source-map}/lib/base64-vlq.js +40 -11
  560. package/node_modules/source-map/lib/base64.js +67 -0
  561. package/node_modules/{@remix-run/server-runtime/node_modules/source-map → source-map}/lib/binary-search.js +19 -15
  562. package/node_modules/source-map/lib/mapping-list.js +79 -0
  563. package/node_modules/source-map/lib/quick-sort.js +114 -0
  564. package/node_modules/source-map/lib/source-map-consumer.js +1145 -0
  565. package/node_modules/{@remix-run/server-runtime/node_modules/source-map → source-map}/lib/source-map-generator.js +169 -157
  566. package/node_modules/source-map/lib/source-node.js +413 -0
  567. package/node_modules/{@remix-run/server-runtime/node_modules/source-map → source-map}/lib/util.js +51 -109
  568. package/node_modules/{@remix-run/server-runtime/node_modules/source-map → source-map}/package.json +9 -27
  569. package/node_modules/source-map/source-map.d.ts +98 -0
  570. package/node_modules/source-map/source-map.js +8 -0
  571. package/node_modules/turbo-stream/dist/flatten.d.ts +1 -1
  572. package/node_modules/turbo-stream/dist/flatten.js +44 -9
  573. package/node_modules/turbo-stream/dist/turbo-stream.js +11 -2
  574. package/node_modules/turbo-stream/dist/turbo-stream.mjs +58 -7
  575. package/node_modules/turbo-stream/dist/unflatten.js +2 -0
  576. package/node_modules/turbo-stream/dist/utils.d.ts +1 -0
  577. package/node_modules/turbo-stream/dist/utils.js +2 -1
  578. package/node_modules/turbo-stream/package.json +1 -1
  579. package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/index.d.ts +1 -0
  580. package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/package.json +2 -1
  581. package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/readme.md +1 -0
  582. package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/is-literal.d.ts +6 -4
  583. package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/merge-deep.d.ts +8 -9
  584. package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/omit-deep.d.ts +3 -3
  585. package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/paths.d.ts +14 -8
  586. package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/schema.d.ts +12 -12
  587. package/node_modules/type-fest/source/simplify-deep.d.ts +115 -0
  588. package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/simplify.d.ts +1 -1
  589. package/package.json +4 -4
  590. package/build/client/assets/_exerciseNumber_.finished-DNtyBHjg.js +0 -2
  591. package/build/client/assets/_exerciseNumber_.finished-DNtyBHjg.js.map +0 -1
  592. package/build/client/assets/_layout-BR-Qyofe.js +0 -2
  593. package/build/client/assets/_layout-CNgYirUN.js +0 -2
  594. package/build/client/assets/_layout-CNgYirUN.js.map +0 -1
  595. package/build/client/assets/_layout-xu6a9He_.js +0 -2
  596. package/build/client/assets/_layout-xu6a9He_.js.map +0 -1
  597. package/build/client/assets/components-C5xBZAiL.js +0 -119
  598. package/build/client/assets/components-C5xBZAiL.js.map +0 -1
  599. package/build/client/assets/diff-BKsbFB6w.js +0 -42
  600. package/build/client/assets/diff-BKsbFB6w.js.map +0 -1
  601. package/build/client/assets/diff-KDzcgGYL.js +0 -2
  602. package/build/client/assets/discord-Xp0X4-Fl.js +0 -2
  603. package/build/client/assets/discord-Xp0X4-Fl.js.map +0 -1
  604. package/build/client/assets/entry.client-0j1eoieD.js +0 -80
  605. package/build/client/assets/entry.client-0j1eoieD.js.map +0 -1
  606. package/build/client/assets/epic-video-BwtXsHGU.js.map +0 -1
  607. package/build/client/assets/finished-Cu9PZd5Q.js +0 -2
  608. package/build/client/assets/finished-Cu9PZd5Q.js.map +0 -1
  609. package/build/client/assets/index-Bg9MMnnf.js.map +0 -1
  610. package/build/client/assets/index-D6ygCrVn.js +0 -37
  611. package/build/client/assets/index-D6ygCrVn.js.map +0 -1
  612. package/build/client/assets/index-r90CY6Wk.js +0 -8
  613. package/build/client/assets/index-r90CY6Wk.js.map +0 -1
  614. package/build/client/assets/manifest-b31ba37c.js +0 -1
  615. package/build/client/assets/mdx-BYvGbvEr.js +0 -2
  616. package/build/client/assets/misc-DNgC2Frq.js +0 -2
  617. package/build/client/assets/misc-DNgC2Frq.js.map +0 -1
  618. package/build/client/assets/progress-CF9Xwfxf.js +0 -2
  619. package/build/client/assets/progress-CF9Xwfxf.js.map +0 -1
  620. package/build/client/assets/root-BQ7V6fP4.js.map +0 -1
  621. package/build/client/assets/tailwind-Ck4g-nq0.css +0 -1
  622. package/build/client/assets/tooltip-Kw0lYWBI.js +0 -2
  623. package/build/client/assets/tooltip-Kw0lYWBI.js.map +0 -1
  624. package/node_modules/@babel/runtime/helpers/AsyncGenerator.js +0 -64
  625. package/node_modules/@babel/runtime/helpers/esm/AsyncGenerator.js +0 -64
  626. package/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimitLoose.js +0 -10
  627. package/node_modules/@babel/runtime/helpers/esm/slicedToArrayLoose.js +0 -8
  628. package/node_modules/@babel/runtime/helpers/iterableToArrayLimitLoose.js +0 -10
  629. package/node_modules/@babel/runtime/helpers/slicedToArrayLoose.js +0 -8
  630. package/node_modules/@conform-to/dom/rollup.config.js +0 -100
  631. package/node_modules/@conform-to/react/rollup.config.js +0 -102
  632. package/node_modules/@conform-to/zod/rollup.config.js +0 -100
  633. package/node_modules/@radix-ui/number/dist/index.d.ts.map +0 -1
  634. package/node_modules/@radix-ui/primitive/dist/index.d.ts.map +0 -1
  635. package/node_modules/@radix-ui/react-accordion/dist/index.d.ts.map +0 -1
  636. package/node_modules/@radix-ui/react-arrow/dist/index.d.ts.map +0 -1
  637. package/node_modules/@radix-ui/react-collapsible/dist/index.d.ts.map +0 -1
  638. package/node_modules/@radix-ui/react-collection/dist/index.d.ts.map +0 -1
  639. package/node_modules/@radix-ui/react-compose-refs/dist/index.d.ts.map +0 -1
  640. package/node_modules/@radix-ui/react-context/dist/index.d.ts.map +0 -1
  641. package/node_modules/@radix-ui/react-direction/dist/index.d.ts.map +0 -1
  642. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.d.ts.map +0 -1
  643. package/node_modules/@radix-ui/react-focus-guards/dist/index.d.ts.map +0 -1
  644. package/node_modules/@radix-ui/react-focus-scope/dist/index.d.ts.map +0 -1
  645. package/node_modules/@radix-ui/react-id/dist/index.d.ts.map +0 -1
  646. package/node_modules/@radix-ui/react-popover/dist/index.d.ts.map +0 -1
  647. package/node_modules/@radix-ui/react-popper/dist/index.d.ts.map +0 -1
  648. package/node_modules/@radix-ui/react-portal/dist/index.d.ts.map +0 -1
  649. package/node_modules/@radix-ui/react-presence/dist/index.d.ts.map +0 -1
  650. package/node_modules/@radix-ui/react-primitive/dist/index.d.ts.map +0 -1
  651. package/node_modules/@radix-ui/react-roving-focus/dist/index.d.ts.map +0 -1
  652. package/node_modules/@radix-ui/react-select/dist/index.d.ts.map +0 -1
  653. package/node_modules/@radix-ui/react-slot/dist/index.d.ts.map +0 -1
  654. package/node_modules/@radix-ui/react-tabs/dist/index.d.ts.map +0 -1
  655. package/node_modules/@radix-ui/react-toast/dist/index.d.ts.map +0 -1
  656. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.d.ts.map +0 -1
  657. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.d.ts.map +0 -1
  658. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.d.ts.map +0 -1
  659. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.d.ts.map +0 -1
  660. package/node_modules/@radix-ui/react-use-previous/dist/index.d.ts.map +0 -1
  661. package/node_modules/@radix-ui/react-use-rect/dist/index.d.ts.map +0 -1
  662. package/node_modules/@radix-ui/react-use-size/dist/index.d.ts.map +0 -1
  663. package/node_modules/@radix-ui/react-visually-hidden/dist/index.d.ts.map +0 -1
  664. package/node_modules/@radix-ui/rect/dist/index.d.ts.map +0 -1
  665. package/node_modules/@remix-run/server-runtime/node_modules/source-map/dist/source-map.js +0 -1
  666. package/node_modules/@remix-run/server-runtime/node_modules/source-map/lib/array-set.js +0 -100
  667. package/node_modules/@remix-run/server-runtime/node_modules/source-map/lib/base64.js +0 -18
  668. package/node_modules/@remix-run/server-runtime/node_modules/source-map/lib/mapping-list.js +0 -80
  669. package/node_modules/@remix-run/server-runtime/node_modules/source-map/lib/source-map-consumer.js +0 -1237
  670. package/node_modules/@remix-run/server-runtime/node_modules/source-map/lib/source-node.js +0 -404
  671. package/node_modules/@remix-run/server-runtime/node_modules/source-map/source-map.d.ts +0 -369
  672. package/node_modules/@remix-run/server-runtime/node_modules/source-map/source-map.js +0 -8
  673. package/node_modules/framer-motion/dist/projection.dev.js +0 -6659
  674. /package/node_modules/{@remix-run/server-runtime/node_modules/source-map → source-map}/LICENSE +0 -0
  675. /package/node_modules/{@remix-run/server-runtime/node_modules/source-map → source-map}/lib/mappings.wasm +0 -0
  676. /package/node_modules/{@remix-run/server-runtime/node_modules/source-map → source-map}/lib/read-wasm.js +0 -0
  677. /package/node_modules/{@remix-run/server-runtime/node_modules/source-map → source-map}/lib/wasm.js +0 -0
  678. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/and.d.ts +0 -0
  679. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/array-indices.d.ts +0 -0
  680. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/array-slice.d.ts +0 -0
  681. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/array-splice.d.ts +0 -0
  682. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/array-values.d.ts +0 -0
  683. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/async-return-type.d.ts +0 -0
  684. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/asyncify.d.ts +0 -0
  685. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/basic.d.ts +0 -0
  686. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/camel-case.d.ts +0 -0
  687. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/camel-cased-properties-deep.d.ts +0 -0
  688. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/camel-cased-properties.d.ts +0 -0
  689. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/conditional-except.d.ts +0 -0
  690. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/conditional-keys.d.ts +0 -0
  691. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/conditional-pick-deep.d.ts +0 -0
  692. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/conditional-pick.d.ts +0 -0
  693. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/conditional-simplify.d.ts +0 -0
  694. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/delimiter-case.d.ts +0 -0
  695. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/delimiter-cased-properties-deep.d.ts +0 -0
  696. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/delimiter-cased-properties.d.ts +0 -0
  697. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/distributed-omit.d.ts +0 -0
  698. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/distributed-pick.d.ts +0 -0
  699. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/empty-object.d.ts +0 -0
  700. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/enforce-optional.d.ts +0 -0
  701. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/entries.d.ts +0 -0
  702. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/entry.d.ts +0 -0
  703. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/exact.d.ts +0 -0
  704. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/except.d.ts +0 -0
  705. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/fixed-length-array.d.ts +0 -0
  706. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/get.d.ts +0 -0
  707. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/global-this.d.ts +0 -0
  708. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/greater-than-or-equal.d.ts +0 -0
  709. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/greater-than.d.ts +0 -0
  710. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/has-optional-keys.d.ts +0 -0
  711. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/has-readonly-keys.d.ts +0 -0
  712. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/has-required-keys.d.ts +0 -0
  713. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/has-writable-keys.d.ts +0 -0
  714. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/if-any.d.ts +0 -0
  715. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/if-empty-object.d.ts +0 -0
  716. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/if-never.d.ts +0 -0
  717. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/if-null.d.ts +0 -0
  718. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/if-unknown.d.ts +0 -0
  719. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/includes.d.ts +0 -0
  720. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/int-range.d.ts +0 -0
  721. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/internal.d.ts +0 -0
  722. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/invariant-of.d.ts +0 -0
  723. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/is-any.d.ts +0 -0
  724. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/is-equal.d.ts +0 -0
  725. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/is-float.d.ts +0 -0
  726. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/is-integer.d.ts +0 -0
  727. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/is-never.d.ts +0 -0
  728. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/is-null.d.ts +0 -0
  729. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/is-unknown.d.ts +0 -0
  730. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/iterable-element.d.ts +0 -0
  731. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/join.d.ts +0 -0
  732. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/jsonifiable.d.ts +0 -0
  733. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/jsonify.d.ts +0 -0
  734. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/kebab-case.d.ts +0 -0
  735. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/kebab-cased-properties-deep.d.ts +0 -0
  736. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/kebab-cased-properties.d.ts +0 -0
  737. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/keys-of-union.d.ts +0 -0
  738. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/last-array-element.d.ts +0 -0
  739. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/less-than-or-equal.d.ts +0 -0
  740. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/less-than.d.ts +0 -0
  741. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/literal-to-primitive-deep.d.ts +0 -0
  742. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/literal-to-primitive.d.ts +0 -0
  743. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/literal-union.d.ts +0 -0
  744. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/merge-exclusive.d.ts +0 -0
  745. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/merge.d.ts +0 -0
  746. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/multidimensional-array.d.ts +0 -0
  747. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/multidimensional-readonly-array.d.ts +0 -0
  748. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/non-empty-object.d.ts +0 -0
  749. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/numeric.d.ts +0 -0
  750. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/observable-like.d.ts +0 -0
  751. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/omit-index-signature.d.ts +0 -0
  752. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/opaque.d.ts +0 -0
  753. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/optional-keys-of.d.ts +0 -0
  754. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/or.d.ts +0 -0
  755. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/override-properties.d.ts +0 -0
  756. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/package-json.d.ts +0 -0
  757. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/partial-deep.d.ts +0 -0
  758. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/partial-on-undefined-deep.d.ts +0 -0
  759. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/pascal-case.d.ts +0 -0
  760. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/pascal-cased-properties-deep.d.ts +0 -0
  761. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/pascal-cased-properties.d.ts +0 -0
  762. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/pick-deep.d.ts +0 -0
  763. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/pick-index-signature.d.ts +0 -0
  764. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/primitive.d.ts +0 -0
  765. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/promisable.d.ts +0 -0
  766. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/readonly-deep.d.ts +0 -0
  767. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/readonly-keys-of.d.ts +0 -0
  768. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/readonly-tuple.d.ts +0 -0
  769. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/replace.d.ts +0 -0
  770. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/require-all-or-none.d.ts +0 -0
  771. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/require-at-least-one.d.ts +0 -0
  772. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/require-exactly-one.d.ts +0 -0
  773. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/require-one-or-none.d.ts +0 -0
  774. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/required-deep.d.ts +0 -0
  775. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/required-keys-of.d.ts +0 -0
  776. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/screaming-snake-case.d.ts +0 -0
  777. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/set-field-type.d.ts +0 -0
  778. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/set-non-nullable.d.ts +0 -0
  779. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/set-optional.d.ts +0 -0
  780. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/set-parameter-type.d.ts +0 -0
  781. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/set-readonly.d.ts +0 -0
  782. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/set-required.d.ts +0 -0
  783. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/set-return-type.d.ts +0 -0
  784. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/shared-union-fields-deep.d.ts +0 -0
  785. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/single-key-object.d.ts +0 -0
  786. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/snake-case.d.ts +0 -0
  787. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/snake-cased-properties-deep.d.ts +0 -0
  788. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/snake-cased-properties.d.ts +0 -0
  789. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/split-words.d.ts +0 -0
  790. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/split.d.ts +0 -0
  791. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/spread.d.ts +0 -0
  792. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/string-key-of.d.ts +0 -0
  793. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/string-slice.d.ts +0 -0
  794. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/stringified.d.ts +0 -0
  795. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/subtract.d.ts +0 -0
  796. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/sum.d.ts +0 -0
  797. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/tagged-union.d.ts +0 -0
  798. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/trim.d.ts +0 -0
  799. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/tsconfig-json.d.ts +0 -0
  800. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/tuple-to-union.d.ts +0 -0
  801. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/typed-array.d.ts +0 -0
  802. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/undefined-on-partial-deep.d.ts +0 -0
  803. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/union-to-intersection.d.ts +0 -0
  804. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/unknown-array.d.ts +0 -0
  805. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/unknown-record.d.ts +0 -0
  806. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/value-of.d.ts +0 -0
  807. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/writable-deep.d.ts +0 -0
  808. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/writable-keys-of.d.ts +0 -0
  809. /package/node_modules/{remix-utils/node_modules/type-fest → type-fest}/source/writable.d.ts +0 -0
@@ -1,2 +1,2 @@
1
- import{c as m,u as y,r as l,j as w}from"./index-D6ygCrVn.js";const h={vertical:"scrollTop",horizontal:"scrollLeft"};function v({elementQuery:r,direction:S="vertical",...d}){const e=`position:${r}`,p=m(),f=y(),a=h[S],i=l.useCallback(()=>{const t=document.querySelector(r);if(!t)return;let o={};try{const s=JSON.parse(sessionStorage.getItem(e)||"{}");typeof s=="object"&&s!==null&&(o=s)}catch(s){console.warn("Error parsing scroll positions from sessionStorage:",s)}const n={...o,[f.key]:t[a]};sessionStorage.setItem(e,JSON.stringify(n))},[e,r,f.key]);l.useEffect(()=>{if(p.state==="idle"){const t=document.querySelector(r);if(!t)return;try{const n=JSON.parse(sessionStorage.getItem(e)||"{}")[window.history.state.key];typeof n=="number"&&(t[a]=n)}catch(o){console.error(o),sessionStorage.removeItem(e)}}else i()},[e,r,p.state,i]),l.useEffect(()=>(window.addEventListener("pagehide",i),()=>{window.removeEventListener("pagehide",i)}),[i]);function g(t,o,n){const s=document.querySelector(o);if(!s){console.warn(`Element not found: ${o}. Cannot restore scroll.`);return}if(!window.history.state||!window.history.state.key){const c=Math.random().toString(32).slice(2);window.history.replaceState({key:c},"")}try{const u=JSON.parse(sessionStorage.getItem(t)||"{}")[window.history.state.key];typeof u=="number"&&(s[n]=u)}catch(c){console.error(c),sessionStorage.removeItem(t)}}return w.jsx("script",{...d,suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:`(${g})(${JSON.stringify(e)}, ${JSON.stringify(r)}, ${JSON.stringify(a)})`}})}export{v as E};
2
- //# sourceMappingURL=index-9nNr0Zqr.js.map
1
+ import{c as m,u as y,r as l,j as w}from"./index-Czg1ruVn.js";const h={vertical:"scrollTop",horizontal:"scrollLeft"};function v({elementQuery:r,direction:S="vertical",...d}){const e=`position:${r}`,p=m(),f=y(),a=h[S],i=l.useCallback(()=>{const t=document.querySelector(r);if(!t)return;let o={};try{const s=JSON.parse(sessionStorage.getItem(e)||"{}");typeof s=="object"&&s!==null&&(o=s)}catch(s){console.warn("Error parsing scroll positions from sessionStorage:",s)}const n={...o,[f.key]:t[a]};sessionStorage.setItem(e,JSON.stringify(n))},[e,r,f.key]);l.useEffect(()=>{if(p.state==="idle"){const t=document.querySelector(r);if(!t)return;try{const n=JSON.parse(sessionStorage.getItem(e)||"{}")[window.history.state.key];typeof n=="number"&&(t[a]=n)}catch(o){console.error(o),sessionStorage.removeItem(e)}}else i()},[e,r,p.state,i]),l.useEffect(()=>(window.addEventListener("pagehide",i),()=>{window.removeEventListener("pagehide",i)}),[i]);function g(t,o,n){const s=document.querySelector(o);if(!s){console.warn(`Element not found: ${o}. Cannot restore scroll.`);return}if(!window.history.state||!window.history.state.key){const c=Math.random().toString(32).slice(2);window.history.replaceState({key:c},"")}try{const u=JSON.parse(sessionStorage.getItem(t)||"{}")[window.history.state.key];typeof u=="number"&&(s[n]=u)}catch(c){console.error(c),sessionStorage.removeItem(t)}}return w.jsx("script",{...d,suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:`(${g})(${JSON.stringify(e)}, ${JSON.stringify(r)}, ${JSON.stringify(a)})`}})}export{v as E};
2
+ //# sourceMappingURL=index-D6ukHE4T.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-9nNr0Zqr.js","sources":["../../../../../node_modules/@epic-web/restore-scroll/dist/index.js"],"sourcesContent":["import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { useCallback, useEffect } from 'react';\nimport { useLocation, useNavigation } from 'react-router-dom';\nconst DIRECTION = {\n vertical: 'scrollTop',\n horizontal: 'scrollLeft',\n};\nexport function ElementScrollRestoration({ elementQuery, direction = 'vertical', ...props }) {\n const STORAGE_KEY = `position:${elementQuery}`;\n const navigation = useNavigation();\n const location = useLocation();\n const scrollAttribute = DIRECTION[direction];\n const updatePositions = useCallback(() => {\n const element = document.querySelector(elementQuery);\n if (!element)\n return;\n let positions = {};\n try {\n const rawPositions = JSON.parse(sessionStorage.getItem(STORAGE_KEY) || '{}');\n if (typeof rawPositions === 'object' && rawPositions !== null) {\n positions = rawPositions;\n }\n }\n catch (error) {\n console.warn(`Error parsing scroll positions from sessionStorage:`, error);\n }\n const newPositions = {\n ...positions,\n [location.key]: element[scrollAttribute],\n };\n sessionStorage.setItem(STORAGE_KEY, JSON.stringify(newPositions));\n }, [STORAGE_KEY, elementQuery, location.key]);\n useEffect(() => {\n if (navigation.state === 'idle') {\n const element = document.querySelector(elementQuery);\n if (!element)\n return;\n try {\n const positions = JSON.parse(sessionStorage.getItem(STORAGE_KEY) || '{}');\n const stored = positions[window.history.state.key];\n if (typeof stored === 'number') {\n element[scrollAttribute] = stored;\n }\n }\n catch (error) {\n console.error(error);\n sessionStorage.removeItem(STORAGE_KEY);\n }\n }\n else {\n updatePositions();\n }\n }, [STORAGE_KEY, elementQuery, navigation.state, updatePositions]);\n useEffect(() => {\n window.addEventListener('pagehide', updatePositions);\n return () => {\n window.removeEventListener('pagehide', updatePositions);\n };\n }, [updatePositions]);\n function restoreScroll(storageKey, elementQuery, scrollAttribute) {\n const element = document.querySelector(elementQuery);\n if (!element) {\n console.warn(`Element not found: ${elementQuery}. Cannot restore scroll.`);\n return;\n }\n if (!window.history.state || !window.history.state.key) {\n const key = Math.random().toString(32).slice(2);\n window.history.replaceState({ key }, '');\n }\n try {\n const positions = JSON.parse(sessionStorage.getItem(storageKey) || '{}');\n const stored = positions[window.history.state.key];\n if (typeof stored === 'number') {\n element[scrollAttribute] = stored;\n }\n }\n catch (error) {\n console.error(error);\n sessionStorage.removeItem(storageKey);\n }\n }\n return (_jsx(\"script\", { ...props, suppressHydrationWarning: true, dangerouslySetInnerHTML: {\n __html: `(${restoreScroll})(${JSON.stringify(STORAGE_KEY)}, ${JSON.stringify(elementQuery)}, ${JSON.stringify(scrollAttribute)})`,\n } }));\n}\n"],"names":["DIRECTION","ElementScrollRestoration","elementQuery","direction","props","STORAGE_KEY","navigation","useNavigation","location","useLocation","scrollAttribute","updatePositions","useCallback","element","positions","rawPositions","error","newPositions","useEffect","stored","restoreScroll","storageKey","key","_jsx"],"mappings":"6DAGA,MAAMA,EAAY,CACd,SAAU,YACV,WAAY,YAChB,EACO,SAASC,EAAyB,CAAE,aAAAC,EAAc,UAAAC,EAAY,WAAY,GAAGC,CAAK,EAAI,CACzF,MAAMC,EAAc,YAAYH,CAAY,GACtCI,EAAaC,IACbC,EAAWC,IACXC,EAAkBV,EAAUG,CAAS,EACrCQ,EAAkBC,EAAAA,YAAY,IAAM,CACtC,MAAMC,EAAU,SAAS,cAAcX,CAAY,EACnD,GAAI,CAACW,EACD,OACJ,IAAIC,EAAY,CAAA,EAChB,GAAI,CACA,MAAMC,EAAe,KAAK,MAAM,eAAe,QAAQV,CAAW,GAAK,IAAI,EACvE,OAAOU,GAAiB,UAAYA,IAAiB,OACrDD,EAAYC,EAEnB,OACMC,EAAO,CACV,QAAQ,KAAK,sDAAuDA,CAAK,CAC5E,CACD,MAAMC,EAAe,CACjB,GAAGH,EACH,CAACN,EAAS,GAAG,EAAGK,EAAQH,CAAe,CACnD,EACQ,eAAe,QAAQL,EAAa,KAAK,UAAUY,CAAY,CAAC,CACnE,EAAE,CAACZ,EAAaH,EAAcM,EAAS,GAAG,CAAC,EAC5CU,EAAAA,UAAU,IAAM,CACZ,GAAIZ,EAAW,QAAU,OAAQ,CAC7B,MAAMO,EAAU,SAAS,cAAcX,CAAY,EACnD,GAAI,CAACW,EACD,OACJ,GAAI,CAEA,MAAMM,EADY,KAAK,MAAM,eAAe,QAAQd,CAAW,GAAK,IAAI,EAC/C,OAAO,QAAQ,MAAM,GAAG,EAC7C,OAAOc,GAAW,WAClBN,EAAQH,CAAe,EAAIS,EAElC,OACMH,EAAO,CACV,QAAQ,MAAMA,CAAK,EACnB,eAAe,WAAWX,CAAW,CACxC,CACJ,MAEGM,GAEZ,EAAO,CAACN,EAAaH,EAAcI,EAAW,MAAOK,CAAe,CAAC,EACjEO,EAAAA,UAAU,KACN,OAAO,iBAAiB,WAAYP,CAAe,EAC5C,IAAM,CACT,OAAO,oBAAoB,WAAYA,CAAe,CAClE,GACO,CAACA,CAAe,CAAC,EACpB,SAASS,EAAcC,EAAYnB,EAAcQ,EAAiB,CAC9D,MAAMG,EAAU,SAAS,cAAcX,CAAY,EACnD,GAAI,CAACW,EAAS,CACV,QAAQ,KAAK,sBAAsBX,CAAY,0BAA0B,EACzE,MACH,CACD,GAAI,CAAC,OAAO,QAAQ,OAAS,CAAC,OAAO,QAAQ,MAAM,IAAK,CACpD,MAAMoB,EAAM,KAAK,OAAQ,EAAC,SAAS,EAAE,EAAE,MAAM,CAAC,EAC9C,OAAO,QAAQ,aAAa,CAAE,IAAAA,CAAK,EAAE,EAAE,CAC1C,CACD,GAAI,CAEA,MAAMH,EADY,KAAK,MAAM,eAAe,QAAQE,CAAU,GAAK,IAAI,EAC9C,OAAO,QAAQ,MAAM,GAAG,EAC7C,OAAOF,GAAW,WAClBN,EAAQH,CAAe,EAAIS,EAElC,OACMH,EAAO,CACV,QAAQ,MAAMA,CAAK,EACnB,eAAe,WAAWK,CAAU,CACvC,CACJ,CACD,OAAQE,EAAAA,IAAK,SAAU,CAAE,GAAGnB,EAAO,yBAA0B,GAAM,wBAAyB,CACpF,OAAQ,IAAIgB,CAAa,KAAK,KAAK,UAAUf,CAAW,CAAC,KAAK,KAAK,UAAUH,CAAY,CAAC,KAAK,KAAK,UAAUQ,CAAe,CAAC,GACjI,CAAA,CAAE,CACX","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index-D6ukHE4T.js","sources":["../../../../../node_modules/@epic-web/restore-scroll/dist/index.js"],"sourcesContent":["import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { useCallback, useEffect } from 'react';\nimport { useLocation, useNavigation } from 'react-router-dom';\nconst DIRECTION = {\n vertical: 'scrollTop',\n horizontal: 'scrollLeft',\n};\nexport function ElementScrollRestoration({ elementQuery, direction = 'vertical', ...props }) {\n const STORAGE_KEY = `position:${elementQuery}`;\n const navigation = useNavigation();\n const location = useLocation();\n const scrollAttribute = DIRECTION[direction];\n const updatePositions = useCallback(() => {\n const element = document.querySelector(elementQuery);\n if (!element)\n return;\n let positions = {};\n try {\n const rawPositions = JSON.parse(sessionStorage.getItem(STORAGE_KEY) || '{}');\n if (typeof rawPositions === 'object' && rawPositions !== null) {\n positions = rawPositions;\n }\n }\n catch (error) {\n console.warn(`Error parsing scroll positions from sessionStorage:`, error);\n }\n const newPositions = {\n ...positions,\n [location.key]: element[scrollAttribute],\n };\n sessionStorage.setItem(STORAGE_KEY, JSON.stringify(newPositions));\n }, [STORAGE_KEY, elementQuery, location.key]);\n useEffect(() => {\n if (navigation.state === 'idle') {\n const element = document.querySelector(elementQuery);\n if (!element)\n return;\n try {\n const positions = JSON.parse(sessionStorage.getItem(STORAGE_KEY) || '{}');\n const stored = positions[window.history.state.key];\n if (typeof stored === 'number') {\n element[scrollAttribute] = stored;\n }\n }\n catch (error) {\n console.error(error);\n sessionStorage.removeItem(STORAGE_KEY);\n }\n }\n else {\n updatePositions();\n }\n }, [STORAGE_KEY, elementQuery, navigation.state, updatePositions]);\n useEffect(() => {\n window.addEventListener('pagehide', updatePositions);\n return () => {\n window.removeEventListener('pagehide', updatePositions);\n };\n }, [updatePositions]);\n function restoreScroll(storageKey, elementQuery, scrollAttribute) {\n const element = document.querySelector(elementQuery);\n if (!element) {\n console.warn(`Element not found: ${elementQuery}. Cannot restore scroll.`);\n return;\n }\n if (!window.history.state || !window.history.state.key) {\n const key = Math.random().toString(32).slice(2);\n window.history.replaceState({ key }, '');\n }\n try {\n const positions = JSON.parse(sessionStorage.getItem(storageKey) || '{}');\n const stored = positions[window.history.state.key];\n if (typeof stored === 'number') {\n element[scrollAttribute] = stored;\n }\n }\n catch (error) {\n console.error(error);\n sessionStorage.removeItem(storageKey);\n }\n }\n return (_jsx(\"script\", { ...props, suppressHydrationWarning: true, dangerouslySetInnerHTML: {\n __html: `(${restoreScroll})(${JSON.stringify(STORAGE_KEY)}, ${JSON.stringify(elementQuery)}, ${JSON.stringify(scrollAttribute)})`,\n } }));\n}\n"],"names":["DIRECTION","ElementScrollRestoration","elementQuery","direction","props","STORAGE_KEY","navigation","useNavigation","location","useLocation","scrollAttribute","updatePositions","useCallback","element","positions","rawPositions","error","newPositions","useEffect","stored","restoreScroll","storageKey","key","_jsx"],"mappings":"6DAGA,MAAMA,EAAY,CACd,SAAU,YACV,WAAY,YAChB,EACO,SAASC,EAAyB,CAAE,aAAAC,EAAc,UAAAC,EAAY,WAAY,GAAGC,CAAK,EAAI,CACzF,MAAMC,EAAc,YAAYH,CAAY,GACtCI,EAAaC,IACbC,EAAWC,IACXC,EAAkBV,EAAUG,CAAS,EACrCQ,EAAkBC,EAAAA,YAAY,IAAM,CACtC,MAAMC,EAAU,SAAS,cAAcX,CAAY,EACnD,GAAI,CAACW,EACD,OACJ,IAAIC,EAAY,CAAA,EAChB,GAAI,CACA,MAAMC,EAAe,KAAK,MAAM,eAAe,QAAQV,CAAW,GAAK,IAAI,EACvE,OAAOU,GAAiB,UAAYA,IAAiB,OACrDD,EAAYC,EAEnB,OACMC,EAAO,CACV,QAAQ,KAAK,sDAAuDA,CAAK,CAC5E,CACD,MAAMC,EAAe,CACjB,GAAGH,EACH,CAACN,EAAS,GAAG,EAAGK,EAAQH,CAAe,CACnD,EACQ,eAAe,QAAQL,EAAa,KAAK,UAAUY,CAAY,CAAC,CACnE,EAAE,CAACZ,EAAaH,EAAcM,EAAS,GAAG,CAAC,EAC5CU,EAAAA,UAAU,IAAM,CACZ,GAAIZ,EAAW,QAAU,OAAQ,CAC7B,MAAMO,EAAU,SAAS,cAAcX,CAAY,EACnD,GAAI,CAACW,EACD,OACJ,GAAI,CAEA,MAAMM,EADY,KAAK,MAAM,eAAe,QAAQd,CAAW,GAAK,IAAI,EAC/C,OAAO,QAAQ,MAAM,GAAG,EAC7C,OAAOc,GAAW,WAClBN,EAAQH,CAAe,EAAIS,EAElC,OACMH,EAAO,CACV,QAAQ,MAAMA,CAAK,EACnB,eAAe,WAAWX,CAAW,CACxC,CACJ,MAEGM,GAEZ,EAAO,CAACN,EAAaH,EAAcI,EAAW,MAAOK,CAAe,CAAC,EACjEO,EAAAA,UAAU,KACN,OAAO,iBAAiB,WAAYP,CAAe,EAC5C,IAAM,CACT,OAAO,oBAAoB,WAAYA,CAAe,CAClE,GACO,CAACA,CAAe,CAAC,EACpB,SAASS,EAAcC,EAAYnB,EAAcQ,EAAiB,CAC9D,MAAMG,EAAU,SAAS,cAAcX,CAAY,EACnD,GAAI,CAACW,EAAS,CACV,QAAQ,KAAK,sBAAsBX,CAAY,0BAA0B,EACzE,MACH,CACD,GAAI,CAAC,OAAO,QAAQ,OAAS,CAAC,OAAO,QAAQ,MAAM,IAAK,CACpD,MAAMoB,EAAM,KAAK,OAAQ,EAAC,SAAS,EAAE,EAAE,MAAM,CAAC,EAC9C,OAAO,QAAQ,aAAa,CAAE,IAAAA,CAAK,EAAE,EAAE,CAC1C,CACD,GAAI,CAEA,MAAMH,EADY,KAAK,MAAM,eAAe,QAAQE,CAAU,GAAK,IAAI,EAC9C,OAAO,QAAQ,MAAM,GAAG,EAC7C,OAAOF,GAAW,WAClBN,EAAQH,CAAe,EAAIS,EAElC,OACMH,EAAO,CACV,QAAQ,MAAMA,CAAK,EACnB,eAAe,WAAWK,CAAU,CACvC,CACJ,CACD,OAAQE,EAAAA,IAAK,SAAU,CAAE,GAAGnB,EAAO,yBAA0B,GAAM,wBAAyB,CACpF,OAAQ,IAAIgB,CAAa,KAAK,KAAK,UAAUf,CAAW,CAAC,KAAK,KAAK,UAAUH,CAAY,CAAC,KAAK,KAAK,UAAUQ,CAAe,CAAC,GACjI,CAAA,CAAE,CACX","x_google_ignoreList":[0]}
@@ -0,0 +1,3 @@
1
+ import{R as e}from"./index-Czg1ruVn.js";import{R as It}from"./components-BMzmvxYw.js";var Yt=a=>{switch(a){case"success":return Ht;case"info":return Dt;case"warning":return At;case"error":return Lt;default:return null}},jt=Array(12).fill(0),Pt=({visible:a})=>e.createElement("div",{className:"sonner-loading-wrapper","data-visible":a},e.createElement("div",{className:"sonner-spinner"},jt.map((r,o)=>e.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${o}`})))),Ht=e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},e.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),At=e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},e.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),Dt=e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},e.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),Lt=e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},e.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),$t=()=>{let[a,r]=e.useState(document.hidden);return e.useEffect(()=>{let o=()=>{r(document.hidden)};return document.addEventListener("visibilitychange",o),()=>window.removeEventListener("visibilitychange",o)},[]),a},ht=1,Ot=class{constructor(){this.subscribe=a=>(this.subscribers.push(a),()=>{let r=this.subscribers.indexOf(a);this.subscribers.splice(r,1)}),this.publish=a=>{this.subscribers.forEach(r=>r(a))},this.addToast=a=>{this.publish(a),this.toasts=[...this.toasts,a]},this.create=a=>{var r;let{message:o,...g}=a,v=typeof(a==null?void 0:a.id)=="number"||((r=a.id)==null?void 0:r.length)>0?a.id:ht++,m=this.toasts.find(f=>f.id===v),b=a.dismissible===void 0?!0:a.dismissible;return m?this.toasts=this.toasts.map(f=>f.id===v?(this.publish({...f,...a,id:v,title:o}),{...f,...a,id:v,dismissible:b,title:o}):f):this.addToast({title:o,...g,dismissible:b,id:v}),v},this.dismiss=a=>(a||this.toasts.forEach(r=>{this.subscribers.forEach(o=>o({id:r.id,dismiss:!0}))}),this.subscribers.forEach(r=>r({id:a,dismiss:!0})),a),this.message=(a,r)=>this.create({...r,message:a}),this.error=(a,r)=>this.create({...r,message:a,type:"error"}),this.success=(a,r)=>this.create({...r,type:"success",message:a}),this.info=(a,r)=>this.create({...r,type:"info",message:a}),this.warning=(a,r)=>this.create({...r,type:"warning",message:a}),this.loading=(a,r)=>this.create({...r,type:"loading",message:a}),this.promise=(a,r)=>{if(!r)return;let o;r.loading!==void 0&&(o=this.create({...r,promise:a,type:"loading",message:r.loading,description:typeof r.description!="function"?r.description:void 0}));let g=a instanceof Promise?a:a(),v=o!==void 0;return g.then(async m=>{if(Vt(m)&&!m.ok){v=!1;let b=typeof r.error=="function"?await r.error(`HTTP error! status: ${m.status}`):r.error,f=typeof r.description=="function"?await r.description(`HTTP error! status: ${m.status}`):r.description;this.create({id:o,type:"error",message:b,description:f})}else if(r.success!==void 0){v=!1;let b=typeof r.success=="function"?await r.success(m):r.success,f=typeof r.description=="function"?await r.description(m):r.description;this.create({id:o,type:"success",message:b,description:f})}}).catch(async m=>{if(r.error!==void 0){v=!1;let b=typeof r.error=="function"?await r.error(m):r.error,f=typeof r.description=="function"?await r.description(m):r.description;this.create({id:o,type:"error",message:b,description:f})}}).finally(()=>{var m;v&&(this.dismiss(o),o=void 0),(m=r.finally)==null||m.call(r)}),o},this.custom=(a,r)=>{let o=(r==null?void 0:r.id)||ht++;return this.create({jsx:a(o),id:o,...r}),o},this.subscribers=[],this.toasts=[]}},y=new Ot,Ut=(a,r)=>{let o=(r==null?void 0:r.id)||ht++;return y.addToast({title:a,...r,id:o}),o},Vt=a=>a&&typeof a=="object"&&"ok"in a&&typeof a.ok=="boolean"&&"status"in a&&typeof a.status=="number",Wt=Ut,Kt=()=>y.toasts,ne=Object.assign(Wt,{success:y.success,info:y.info,warning:y.warning,error:y.error,custom:y.custom,message:y.message,promise:y.promise,dismiss:y.dismiss,loading:y.loading},{getHistory:Kt});function Ft(a,{insertAt:r}={}){if(typeof document>"u")return;let o=document.head||document.getElementsByTagName("head")[0],g=document.createElement("style");g.type="text/css",r==="top"&&o.firstChild?o.insertBefore(g,o.firstChild):o.appendChild(g),g.styleSheet?g.styleSheet.cssText=a:g.appendChild(document.createTextNode(a))}Ft(`:where(html[dir="ltr"]),:where([data-sonner-toaster][dir="ltr"]){--toast-icon-margin-start: -3px;--toast-icon-margin-end: 4px;--toast-svg-margin-start: -1px;--toast-svg-margin-end: 0px;--toast-button-margin-start: auto;--toast-button-margin-end: 0;--toast-close-button-start: 0;--toast-close-button-end: unset;--toast-close-button-transform: translate(-35%, -35%)}:where(html[dir="rtl"]),:where([data-sonner-toaster][dir="rtl"]){--toast-icon-margin-start: 4px;--toast-icon-margin-end: -3px;--toast-svg-margin-start: 0px;--toast-svg-margin-end: -1px;--toast-button-margin-start: 0;--toast-button-margin-end: auto;--toast-close-button-start: unset;--toast-close-button-end: 0;--toast-close-button-transform: translate(35%, -35%)}:where([data-sonner-toaster]){position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1: hsl(0, 0%, 99%);--gray2: hsl(0, 0%, 97.3%);--gray3: hsl(0, 0%, 95.1%);--gray4: hsl(0, 0%, 93%);--gray5: hsl(0, 0%, 90.9%);--gray6: hsl(0, 0%, 88.7%);--gray7: hsl(0, 0%, 85.8%);--gray8: hsl(0, 0%, 78%);--gray9: hsl(0, 0%, 56.1%);--gray10: hsl(0, 0%, 52.3%);--gray11: hsl(0, 0%, 43.5%);--gray12: hsl(0, 0%, 9%);--border-radius: 8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:none;z-index:999999999}:where([data-sonner-toaster][data-x-position="right"]){right:max(var(--offset),env(safe-area-inset-right))}:where([data-sonner-toaster][data-x-position="left"]){left:max(var(--offset),env(safe-area-inset-left))}:where([data-sonner-toaster][data-x-position="center"]){left:50%;transform:translate(-50%)}:where([data-sonner-toaster][data-y-position="top"]){top:max(var(--offset),env(safe-area-inset-top))}:where([data-sonner-toaster][data-y-position="bottom"]){bottom:max(var(--offset),env(safe-area-inset-bottom))}:where([data-sonner-toast]){--y: translateY(100%);--lift-amount: calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);filter:blur(0);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:none;overflow-wrap:anywhere}:where([data-sonner-toast][data-styled="true"]){padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000001a;width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}:where([data-sonner-toast]:focus-visible){box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast][data-y-position="top"]){top:0;--y: translateY(-100%);--lift: 1;--lift-amount: calc(1 * var(--gap))}:where([data-sonner-toast][data-y-position="bottom"]){bottom:0;--y: translateY(100%);--lift: -1;--lift-amount: calc(var(--lift) * var(--gap))}:where([data-sonner-toast]) :where([data-description]){font-weight:400;line-height:1.4;color:inherit}:where([data-sonner-toast]) :where([data-title]){font-weight:500;line-height:1.5;color:inherit}:where([data-sonner-toast]) :where([data-icon]){display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}:where([data-sonner-toast][data-promise="true"]) :where([data-icon])>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}:where([data-sonner-toast]) :where([data-icon])>*{flex-shrink:0}:where([data-sonner-toast]) :where([data-icon]) svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}:where([data-sonner-toast]) :where([data-content]){display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;cursor:pointer;outline:none;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}:where([data-sonner-toast]) :where([data-button]):focus-visible{box-shadow:0 0 0 2px #0006}:where([data-sonner-toast]) :where([data-button]):first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}:where([data-sonner-toast]) :where([data-cancel]){color:var(--normal-text);background:rgba(0,0,0,.08)}:where([data-sonner-toast][data-theme="dark"]) :where([data-cancel]){background:rgba(255,255,255,.3)}:where([data-sonner-toast]) :where([data-close-button]){position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;background:var(--gray1);color:var(--gray12);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}:where([data-sonner-toast]) :where([data-close-button]):focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast]) :where([data-disabled="true"]){cursor:not-allowed}:where([data-sonner-toast]):hover :where([data-close-button]):hover{background:var(--gray2);border-color:var(--gray5)}:where([data-sonner-toast][data-swiping="true"]):before{content:"";position:absolute;left:0;right:0;height:100%;z-index:-1}:where([data-sonner-toast][data-y-position="top"][data-swiping="true"]):before{bottom:50%;transform:scaleY(3) translateY(50%)}:where([data-sonner-toast][data-y-position="bottom"][data-swiping="true"]):before{top:50%;transform:scaleY(3) translateY(-50%)}:where([data-sonner-toast][data-swiping="false"][data-removed="true"]):before{content:"";position:absolute;inset:0;transform:scaleY(2)}:where([data-sonner-toast]):after{content:"";position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}:where([data-sonner-toast][data-mounted="true"]){--y: translateY(0);opacity:1}:where([data-sonner-toast][data-expanded="false"][data-front="false"]){--scale: var(--toasts-before) * .05 + 1;--y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}:where([data-sonner-toast])>*{transition:opacity .4s}:where([data-sonner-toast][data-expanded="false"][data-front="false"][data-styled="true"])>*{opacity:0}:where([data-sonner-toast][data-visible="false"]){opacity:0;pointer-events:none}:where([data-sonner-toast][data-mounted="true"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}:where([data-sonner-toast][data-removed="true"][data-front="true"][data-swipe-out="false"]){--y: translateY(calc(var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="false"]){--y: translateY(40%);opacity:0;transition:transform .5s,opacity .2s}:where([data-sonner-toast][data-removed="true"][data-front="false"]):before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount, 0px));transition:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation:swipe-out .2s ease-out forwards}@keyframes swipe-out{0%{transform:translateY(calc(var(--lift) * var(--offset) + var(--swipe-amount)));opacity:1}to{transform:translateY(calc(var(--lift) * var(--offset) + var(--swipe-amount) + var(--lift) * -100%));opacity:0}}@media (max-width: 600px){[data-sonner-toaster]{position:fixed;--mobile-offset: 16px;right:var(--mobile-offset);left:var(--mobile-offset);width:100%}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset)}[data-sonner-toaster][data-y-position=bottom]{bottom:20px}[data-sonner-toaster][data-y-position=top]{top:20px}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset);right:var(--mobile-offset);transform:none}}[data-sonner-toaster][data-theme=light]{--normal-bg: #fff;--normal-border: var(--gray4);--normal-text: var(--gray12);--success-bg: hsl(143, 85%, 96%);--success-border: hsl(145, 92%, 91%);--success-text: hsl(140, 100%, 27%);--info-bg: hsl(208, 100%, 97%);--info-border: hsl(221, 91%, 91%);--info-text: hsl(210, 92%, 45%);--warning-bg: hsl(49, 100%, 97%);--warning-border: hsl(49, 91%, 91%);--warning-text: hsl(31, 92%, 45%);--error-bg: hsl(359, 100%, 97%);--error-border: hsl(359, 100%, 94%);--error-text: hsl(360, 100%, 45%)}[data-sonner-toaster][data-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg: #fff;--normal-border: var(--gray3);--normal-text: var(--gray12)}[data-sonner-toaster][data-theme=dark]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1);--success-bg: hsl(150, 100%, 6%);--success-border: hsl(147, 100%, 12%);--success-text: hsl(150, 86%, 65%);--info-bg: hsl(215, 100%, 6%);--info-border: hsl(223, 100%, 12%);--info-text: hsl(216, 87%, 65%);--warning-bg: hsl(64, 100%, 6%);--warning-border: hsl(60, 100%, 12%);--warning-text: hsl(46, 87%, 65%);--error-bg: hsl(358, 76%, 10%);--error-border: hsl(357, 89%, 16%);--error-text: hsl(358, 100%, 81%)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size: 16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:nth-child(1){animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}
2
+ `);function tt(a){return a.label!==void 0}var Xt=3,Jt="32px",qt=4e3,Qt=356,Zt=14,_t=20,Gt=200;function te(...a){return a.filter(Boolean).join(" ")}var ee=a=>{var r,o,g,v,m,b,f,S,X,J;let{invert:et,toast:t,unstyled:h,interacting:L,setHeights:k,visibleToasts:at,heights:Y,index:M,toasts:rt,expanded:$,removeToast:w,defaultRichColors:O,closeButton:q,style:Q,cancelButtonStyle:nt,actionButtonStyle:ot,className:z="",descriptionClassName:Z="",duration:U,position:st,gap:j,loadingIcon:B,expandByDefault:V,classNames:s,icons:E,closeButtonAriaLabel:it="Close toast",pauseWhenPageIsHidden:i,cn:d}=a,[u,N]=e.useState(!1),[I,p]=e.useState(!1),[lt,W]=e.useState(!1),[K,F]=e.useState(!1),[xt,dt]=e.useState(0),[Et,mt]=e.useState(0),ft=e.useRef(null),P=e.useRef(null),kt=M===0,Nt=M+1<=at,x=t.type,H=t.dismissible!==!1,Tt=t.className||"",Ct=t.descriptionClassName||"",_=e.useMemo(()=>Y.findIndex(n=>n.toastId===t.id)||0,[Y,t.id]),St=e.useMemo(()=>{var n;return(n=t.closeButton)!=null?n:q},[t.closeButton,q]),pt=e.useMemo(()=>t.duration||U||qt,[t.duration,U]),ct=e.useRef(0),A=e.useRef(0),gt=e.useRef(0),D=e.useRef(null),[vt,Bt]=st.split("-"),bt=e.useMemo(()=>Y.reduce((n,c,l)=>l>=_?n:n+c.height,0),[Y,_]),yt=$t(),Mt=t.invert||et,ut=x==="loading";A.current=e.useMemo(()=>_*j+bt,[_,bt]),e.useEffect(()=>{N(!0)},[]),e.useLayoutEffect(()=>{if(!u)return;let n=P.current,c=n.style.height;n.style.height="auto";let l=n.getBoundingClientRect().height;n.style.height=c,mt(l),k(T=>T.find(C=>C.toastId===t.id)?T.map(C=>C.toastId===t.id?{...C,height:l}:C):[{toastId:t.id,height:l,position:t.position},...T])},[u,t.title,t.description,k,t.id]);let R=e.useCallback(()=>{p(!0),dt(A.current),k(n=>n.filter(c=>c.toastId!==t.id)),setTimeout(()=>{w(t)},Gt)},[t,w,k,A]);e.useEffect(()=>{if(t.promise&&x==="loading"||t.duration===1/0||t.type==="loading")return;let n,c=pt;return $||L||i&&yt?(()=>{if(gt.current<ct.current){let l=new Date().getTime()-ct.current;c=c-l}gt.current=new Date().getTime()})():c!==1/0&&(ct.current=new Date().getTime(),n=setTimeout(()=>{var l;(l=t.onAutoClose)==null||l.call(t,t),R()},c)),()=>clearTimeout(n)},[$,L,V,t,pt,R,t.promise,x,i,yt]),e.useEffect(()=>{let n=P.current;if(n){let c=n.getBoundingClientRect().height;return mt(c),k(l=>[{toastId:t.id,height:c,position:t.position},...l]),()=>k(l=>l.filter(T=>T.toastId!==t.id))}},[k,t.id]),e.useEffect(()=>{t.delete&&R()},[R,t.delete]);function zt(){return E!=null&&E.loading?e.createElement("div",{className:"sonner-loader","data-visible":x==="loading"},E.loading):B?e.createElement("div",{className:"sonner-loader","data-visible":x==="loading"},B):e.createElement(Pt,{visible:x==="loading"})}return e.createElement("li",{"aria-live":t.important?"assertive":"polite","aria-atomic":"true",role:"status",tabIndex:0,ref:P,className:d(z,Tt,s==null?void 0:s.toast,(r=t==null?void 0:t.classNames)==null?void 0:r.toast,s==null?void 0:s.default,s==null?void 0:s[x],(o=t==null?void 0:t.classNames)==null?void 0:o[x]),"data-sonner-toast":"","data-rich-colors":(g=t.richColors)!=null?g:O,"data-styled":!(t.jsx||t.unstyled||h),"data-mounted":u,"data-promise":!!t.promise,"data-removed":I,"data-visible":Nt,"data-y-position":vt,"data-x-position":Bt,"data-index":M,"data-front":kt,"data-swiping":lt,"data-dismissible":H,"data-type":x,"data-invert":Mt,"data-swipe-out":K,"data-expanded":!!($||V&&u),style:{"--index":M,"--toasts-before":M,"--z-index":rt.length-M,"--offset":`${I?xt:A.current}px`,"--initial-height":V?"auto":`${Et}px`,...Q,...t.style},onPointerDown:n=>{ut||!H||(ft.current=new Date,dt(A.current),n.target.setPointerCapture(n.pointerId),n.target.tagName!=="BUTTON"&&(W(!0),D.current={x:n.clientX,y:n.clientY}))},onPointerUp:()=>{var n,c,l,T;if(K||!H)return;D.current=null;let C=Number(((n=P.current)==null?void 0:n.style.getPropertyValue("--swipe-amount").replace("px",""))||0),G=new Date().getTime()-((c=ft.current)==null?void 0:c.getTime()),Rt=Math.abs(C)/G;if(Math.abs(C)>=_t||Rt>.11){dt(A.current),(l=t.onDismiss)==null||l.call(t,t),R(),F(!0);return}(T=P.current)==null||T.style.setProperty("--swipe-amount","0px"),W(!1)},onPointerMove:n=>{var c;if(!D.current||!H)return;let l=n.clientY-D.current.y,T=n.clientX-D.current.x,C=(vt==="top"?Math.min:Math.max)(0,l),G=n.pointerType==="touch"?10:2;Math.abs(C)>G?(c=P.current)==null||c.style.setProperty("--swipe-amount",`${l}px`):Math.abs(T)>G&&(D.current=null)}},St&&!t.jsx?e.createElement("button",{"aria-label":it,"data-disabled":ut,"data-close-button":!0,onClick:ut||!H?()=>{}:()=>{var n;R(),(n=t.onDismiss)==null||n.call(t,t)},className:d(s==null?void 0:s.closeButton,(v=t==null?void 0:t.classNames)==null?void 0:v.closeButton)},e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},e.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),e.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"}))):null,t.jsx||e.isValidElement(t.title)?t.jsx||t.title:e.createElement(e.Fragment,null,x||t.icon||t.promise?e.createElement("div",{"data-icon":"",className:d(s==null?void 0:s.icon,(m=t==null?void 0:t.classNames)==null?void 0:m.icon)},t.promise||t.type==="loading"&&!t.icon?t.icon||zt():null,t.type!=="loading"?t.icon||(E==null?void 0:E[x])||Yt(x):null):null,e.createElement("div",{"data-content":"",className:d(s==null?void 0:s.content,(b=t==null?void 0:t.classNames)==null?void 0:b.content)},e.createElement("div",{"data-title":"",className:d(s==null?void 0:s.title,(f=t==null?void 0:t.classNames)==null?void 0:f.title)},t.title),t.description?e.createElement("div",{"data-description":"",className:d(Z,Ct,s==null?void 0:s.description,(S=t==null?void 0:t.classNames)==null?void 0:S.description)},t.description):null),e.isValidElement(t.cancel)?t.cancel:t.cancel&&tt(t.cancel)?e.createElement("button",{"data-button":!0,"data-cancel":!0,style:t.cancelButtonStyle||nt,onClick:n=>{var c,l;tt(t.cancel)&&H&&((l=(c=t.cancel).onClick)==null||l.call(c,n),R())},className:d(s==null?void 0:s.cancelButton,(X=t==null?void 0:t.classNames)==null?void 0:X.cancelButton)},t.cancel.label):null,e.isValidElement(t.action)?t.action:t.action&&tt(t.action)?e.createElement("button",{"data-button":!0,"data-action":!0,style:t.actionButtonStyle||ot,onClick:n=>{var c,l;tt(t.action)&&(n.defaultPrevented||((l=(c=t.action).onClick)==null||l.call(c,n),R()))},className:d(s==null?void 0:s.actionButton,(J=t==null?void 0:t.classNames)==null?void 0:J.actionButton)},t.action.label):null))};function wt(){if(typeof window>"u"||typeof document>"u")return"ltr";let a=document.documentElement.getAttribute("dir");return a==="auto"||!a?window.getComputedStyle(document.documentElement).direction:a}var oe=a=>{let{invert:r,position:o="bottom-right",hotkey:g=["altKey","KeyT"],expand:v,closeButton:m,className:b,offset:f,theme:S="light",richColors:X,duration:J,style:et,visibleToasts:t=Xt,toastOptions:h,dir:L=wt(),gap:k=Zt,loadingIcon:at,icons:Y,containerAriaLabel:M="Notifications",pauseWhenPageIsHidden:rt,cn:$=te}=a,[w,O]=e.useState([]),q=e.useMemo(()=>Array.from(new Set([o].concat(w.filter(i=>i.position).map(i=>i.position)))),[w,o]),[Q,nt]=e.useState([]),[ot,z]=e.useState(!1),[Z,U]=e.useState(!1),[st,j]=e.useState(S!=="system"?S:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),B=e.useRef(null),V=g.join("+").replace(/Key/g,"").replace(/Digit/g,""),s=e.useRef(null),E=e.useRef(!1),it=e.useCallback(i=>{var d;(d=w.find(u=>u.id===i.id))!=null&&d.delete||y.dismiss(i.id),O(u=>u.filter(({id:N})=>N!==i.id))},[w]);return e.useEffect(()=>y.subscribe(i=>{if(i.dismiss){O(d=>d.map(u=>u.id===i.id?{...u,delete:!0}:u));return}setTimeout(()=>{It.flushSync(()=>{O(d=>{let u=d.findIndex(N=>N.id===i.id);return u!==-1?[...d.slice(0,u),{...d[u],...i},...d.slice(u+1)]:[i,...d]})})})}),[]),e.useEffect(()=>{if(S!=="system"){j(S);return}S==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?j("dark"):j("light")),typeof window<"u"&&window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",({matches:i})=>{j(i?"dark":"light")})},[S]),e.useEffect(()=>{w.length<=1&&z(!1)},[w]),e.useEffect(()=>{let i=d=>{var u,N;g.every(I=>d[I]||d.code===I)&&(z(!0),(u=B.current)==null||u.focus()),d.code==="Escape"&&(document.activeElement===B.current||(N=B.current)!=null&&N.contains(document.activeElement))&&z(!1)};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},[g]),e.useEffect(()=>{if(B.current)return()=>{s.current&&(s.current.focus({preventScroll:!0}),s.current=null,E.current=!1)}},[B.current]),w.length?e.createElement("section",{"aria-label":`${M} ${V}`,tabIndex:-1},q.map((i,d)=>{var u;let[N,I]=i.split("-");return e.createElement("ol",{key:i,dir:L==="auto"?wt():L,tabIndex:-1,ref:B,className:b,"data-sonner-toaster":!0,"data-theme":st,"data-y-position":N,"data-x-position":I,style:{"--front-toast-height":`${((u=Q[0])==null?void 0:u.height)||0}px`,"--offset":typeof f=="number"?`${f}px`:f||Jt,"--width":`${Qt}px`,"--gap":`${k}px`,...et},onBlur:p=>{E.current&&!p.currentTarget.contains(p.relatedTarget)&&(E.current=!1,s.current&&(s.current.focus({preventScroll:!0}),s.current=null))},onFocus:p=>{p.target instanceof HTMLElement&&p.target.dataset.dismissible==="false"||E.current||(E.current=!0,s.current=p.relatedTarget)},onMouseEnter:()=>z(!0),onMouseMove:()=>z(!0),onMouseLeave:()=>{Z||z(!1)},onPointerDown:p=>{p.target instanceof HTMLElement&&p.target.dataset.dismissible==="false"||U(!0)},onPointerUp:()=>U(!1)},w.filter(p=>!p.position&&d===0||p.position===i).map((p,lt)=>{var W,K;return e.createElement(ee,{key:p.id,icons:Y,index:lt,toast:p,defaultRichColors:X,duration:(W=h==null?void 0:h.duration)!=null?W:J,className:h==null?void 0:h.className,descriptionClassName:h==null?void 0:h.descriptionClassName,invert:r,visibleToasts:t,closeButton:(K=h==null?void 0:h.closeButton)!=null?K:m,interacting:Z,position:i,style:h==null?void 0:h.style,unstyled:h==null?void 0:h.unstyled,classNames:h==null?void 0:h.classNames,cancelButtonStyle:h==null?void 0:h.cancelButtonStyle,actionButtonStyle:h==null?void 0:h.actionButtonStyle,removeToast:it,toasts:w.filter(F=>F.position==p.position),heights:Q.filter(F=>F.position==p.position),setHeights:nt,expandByDefault:v,gap:k,loadingIcon:at,expanded:ot,pauseWhenPageIsHidden:rt,cn:$})}))})):null};export{ne as J,oe as T};
3
+ //# sourceMappingURL=index-Doi37489.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-Doi37489.js","sources":["../../../../../node_modules/sonner/dist/index.mjs"],"sourcesContent":["\"use client\";import e from\"react\";import Gt from\"react-dom\";import E from\"react\";var Ct=s=>{switch(s){case\"success\":return $t;case\"info\":return _t;case\"warning\":return Wt;case\"error\":return Ut;default:return null}},Ft=Array(12).fill(0),It=({visible:s})=>E.createElement(\"div\",{className:\"sonner-loading-wrapper\",\"data-visible\":s},E.createElement(\"div\",{className:\"sonner-spinner\"},Ft.map((o,t)=>E.createElement(\"div\",{className:\"sonner-loading-bar\",key:`spinner-bar-${t}`})))),$t=E.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 20 20\",fill:\"currentColor\",height:\"20\",width:\"20\"},E.createElement(\"path\",{fillRule:\"evenodd\",d:\"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z\",clipRule:\"evenodd\"})),Wt=E.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 24 24\",fill:\"currentColor\",height:\"20\",width:\"20\"},E.createElement(\"path\",{fillRule:\"evenodd\",d:\"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z\",clipRule:\"evenodd\"})),_t=E.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 20 20\",fill:\"currentColor\",height:\"20\",width:\"20\"},E.createElement(\"path\",{fillRule:\"evenodd\",d:\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z\",clipRule:\"evenodd\"})),Ut=E.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 20 20\",fill:\"currentColor\",height:\"20\",width:\"20\"},E.createElement(\"path\",{fillRule:\"evenodd\",d:\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z\",clipRule:\"evenodd\"}));import kt from\"react\";var Dt=()=>{let[s,o]=kt.useState(document.hidden);return kt.useEffect(()=>{let t=()=>{o(document.hidden)};return document.addEventListener(\"visibilitychange\",t),()=>window.removeEventListener(\"visibilitychange\",t)},[]),s};var ct=1,ut=class{constructor(){this.subscribe=o=>(this.subscribers.push(o),()=>{let t=this.subscribers.indexOf(o);this.subscribers.splice(t,1)});this.publish=o=>{this.subscribers.forEach(t=>t(o))};this.addToast=o=>{this.publish(o),this.toasts=[...this.toasts,o]};this.create=o=>{var b;let{message:t,...n}=o,h=typeof(o==null?void 0:o.id)==\"number\"||((b=o.id)==null?void 0:b.length)>0?o.id:ct++,u=this.toasts.find(d=>d.id===h),g=o.dismissible===void 0?!0:o.dismissible;return u?this.toasts=this.toasts.map(d=>d.id===h?(this.publish({...d,...o,id:h,title:t}),{...d,...o,id:h,dismissible:g,title:t}):d):this.addToast({title:t,...n,dismissible:g,id:h}),h};this.dismiss=o=>(o||this.toasts.forEach(t=>{this.subscribers.forEach(n=>n({id:t.id,dismiss:!0}))}),this.subscribers.forEach(t=>t({id:o,dismiss:!0})),o);this.message=(o,t)=>this.create({...t,message:o});this.error=(o,t)=>this.create({...t,message:o,type:\"error\"});this.success=(o,t)=>this.create({...t,type:\"success\",message:o});this.info=(o,t)=>this.create({...t,type:\"info\",message:o});this.warning=(o,t)=>this.create({...t,type:\"warning\",message:o});this.loading=(o,t)=>this.create({...t,type:\"loading\",message:o});this.promise=(o,t)=>{if(!t)return;let n;t.loading!==void 0&&(n=this.create({...t,promise:o,type:\"loading\",message:t.loading,description:typeof t.description!=\"function\"?t.description:void 0}));let h=o instanceof Promise?o:o(),u=n!==void 0;return h.then(async g=>{if(Ot(g)&&!g.ok){u=!1;let b=typeof t.error==\"function\"?await t.error(`HTTP error! status: ${g.status}`):t.error,d=typeof t.description==\"function\"?await t.description(`HTTP error! status: ${g.status}`):t.description;this.create({id:n,type:\"error\",message:b,description:d})}else if(t.success!==void 0){u=!1;let b=typeof t.success==\"function\"?await t.success(g):t.success,d=typeof t.description==\"function\"?await t.description(g):t.description;this.create({id:n,type:\"success\",message:b,description:d})}}).catch(async g=>{if(t.error!==void 0){u=!1;let b=typeof t.error==\"function\"?await t.error(g):t.error,d=typeof t.description==\"function\"?await t.description(g):t.description;this.create({id:n,type:\"error\",message:b,description:d})}}).finally(()=>{var g;u&&(this.dismiss(n),n=void 0),(g=t.finally)==null||g.call(t)}),n};this.custom=(o,t)=>{let n=(t==null?void 0:t.id)||ct++;return this.create({jsx:o(n),id:n,...t}),n};this.subscribers=[],this.toasts=[]}},v=new ut,Vt=(s,o)=>{let t=(o==null?void 0:o.id)||ct++;return v.addToast({title:s,...o,id:t}),t},Ot=s=>s&&typeof s==\"object\"&&\"ok\"in s&&typeof s.ok==\"boolean\"&&\"status\"in s&&typeof s.status==\"number\",Kt=Vt,Xt=()=>v.toasts,Jt=Object.assign(Kt,{success:v.success,info:v.info,warning:v.warning,error:v.error,custom:v.custom,message:v.message,promise:v.promise,dismiss:v.dismiss,loading:v.loading},{getHistory:Xt});function ft(s,{insertAt:o}={}){if(!s||typeof document==\"undefined\")return;let t=document.head||document.getElementsByTagName(\"head\")[0],n=document.createElement(\"style\");n.type=\"text/css\",o===\"top\"&&t.firstChild?t.insertBefore(n,t.firstChild):t.appendChild(n),n.styleSheet?n.styleSheet.cssText=s:n.appendChild(document.createTextNode(s))}ft(`:where(html[dir=\"ltr\"]),:where([data-sonner-toaster][dir=\"ltr\"]){--toast-icon-margin-start: -3px;--toast-icon-margin-end: 4px;--toast-svg-margin-start: -1px;--toast-svg-margin-end: 0px;--toast-button-margin-start: auto;--toast-button-margin-end: 0;--toast-close-button-start: 0;--toast-close-button-end: unset;--toast-close-button-transform: translate(-35%, -35%)}:where(html[dir=\"rtl\"]),:where([data-sonner-toaster][dir=\"rtl\"]){--toast-icon-margin-start: 4px;--toast-icon-margin-end: -3px;--toast-svg-margin-start: 0px;--toast-svg-margin-end: -1px;--toast-button-margin-start: 0;--toast-button-margin-end: auto;--toast-close-button-start: unset;--toast-close-button-end: 0;--toast-close-button-transform: translate(35%, -35%)}:where([data-sonner-toaster]){position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1: hsl(0, 0%, 99%);--gray2: hsl(0, 0%, 97.3%);--gray3: hsl(0, 0%, 95.1%);--gray4: hsl(0, 0%, 93%);--gray5: hsl(0, 0%, 90.9%);--gray6: hsl(0, 0%, 88.7%);--gray7: hsl(0, 0%, 85.8%);--gray8: hsl(0, 0%, 78%);--gray9: hsl(0, 0%, 56.1%);--gray10: hsl(0, 0%, 52.3%);--gray11: hsl(0, 0%, 43.5%);--gray12: hsl(0, 0%, 9%);--border-radius: 8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:none;z-index:999999999}:where([data-sonner-toaster][data-x-position=\"right\"]){right:max(var(--offset),env(safe-area-inset-right))}:where([data-sonner-toaster][data-x-position=\"left\"]){left:max(var(--offset),env(safe-area-inset-left))}:where([data-sonner-toaster][data-x-position=\"center\"]){left:50%;transform:translate(-50%)}:where([data-sonner-toaster][data-y-position=\"top\"]){top:max(var(--offset),env(safe-area-inset-top))}:where([data-sonner-toaster][data-y-position=\"bottom\"]){bottom:max(var(--offset),env(safe-area-inset-bottom))}:where([data-sonner-toast]){--y: translateY(100%);--lift-amount: calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);filter:blur(0);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:none;overflow-wrap:anywhere}:where([data-sonner-toast][data-styled=\"true\"]){padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000001a;width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}:where([data-sonner-toast]:focus-visible){box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast][data-y-position=\"top\"]){top:0;--y: translateY(-100%);--lift: 1;--lift-amount: calc(1 * var(--gap))}:where([data-sonner-toast][data-y-position=\"bottom\"]){bottom:0;--y: translateY(100%);--lift: -1;--lift-amount: calc(var(--lift) * var(--gap))}:where([data-sonner-toast]) :where([data-description]){font-weight:400;line-height:1.4;color:inherit}:where([data-sonner-toast]) :where([data-title]){font-weight:500;line-height:1.5;color:inherit}:where([data-sonner-toast]) :where([data-icon]){display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}:where([data-sonner-toast][data-promise=\"true\"]) :where([data-icon])>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}:where([data-sonner-toast]) :where([data-icon])>*{flex-shrink:0}:where([data-sonner-toast]) :where([data-icon]) svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}:where([data-sonner-toast]) :where([data-content]){display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;cursor:pointer;outline:none;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}:where([data-sonner-toast]) :where([data-button]):focus-visible{box-shadow:0 0 0 2px #0006}:where([data-sonner-toast]) :where([data-button]):first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}:where([data-sonner-toast]) :where([data-cancel]){color:var(--normal-text);background:rgba(0,0,0,.08)}:where([data-sonner-toast][data-theme=\"dark\"]) :where([data-cancel]){background:rgba(255,255,255,.3)}:where([data-sonner-toast]) :where([data-close-button]){position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;background:var(--gray1);color:var(--gray12);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}:where([data-sonner-toast]) :where([data-close-button]):focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast]) :where([data-disabled=\"true\"]){cursor:not-allowed}:where([data-sonner-toast]):hover :where([data-close-button]):hover{background:var(--gray2);border-color:var(--gray5)}:where([data-sonner-toast][data-swiping=\"true\"]):before{content:\"\";position:absolute;left:0;right:0;height:100%;z-index:-1}:where([data-sonner-toast][data-y-position=\"top\"][data-swiping=\"true\"]):before{bottom:50%;transform:scaleY(3) translateY(50%)}:where([data-sonner-toast][data-y-position=\"bottom\"][data-swiping=\"true\"]):before{top:50%;transform:scaleY(3) translateY(-50%)}:where([data-sonner-toast][data-swiping=\"false\"][data-removed=\"true\"]):before{content:\"\";position:absolute;inset:0;transform:scaleY(2)}:where([data-sonner-toast]):after{content:\"\";position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}:where([data-sonner-toast][data-mounted=\"true\"]){--y: translateY(0);opacity:1}:where([data-sonner-toast][data-expanded=\"false\"][data-front=\"false\"]){--scale: var(--toasts-before) * .05 + 1;--y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}:where([data-sonner-toast])>*{transition:opacity .4s}:where([data-sonner-toast][data-expanded=\"false\"][data-front=\"false\"][data-styled=\"true\"])>*{opacity:0}:where([data-sonner-toast][data-visible=\"false\"]){opacity:0;pointer-events:none}:where([data-sonner-toast][data-mounted=\"true\"][data-expanded=\"true\"]){--y: translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}:where([data-sonner-toast][data-removed=\"true\"][data-front=\"true\"][data-swipe-out=\"false\"]){--y: translateY(calc(var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed=\"true\"][data-front=\"false\"][data-swipe-out=\"false\"][data-expanded=\"true\"]){--y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed=\"true\"][data-front=\"false\"][data-swipe-out=\"false\"][data-expanded=\"false\"]){--y: translateY(40%);opacity:0;transition:transform .5s,opacity .2s}:where([data-sonner-toast][data-removed=\"true\"][data-front=\"false\"]):before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount, 0px));transition:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation:swipe-out .2s ease-out forwards}@keyframes swipe-out{0%{transform:translateY(calc(var(--lift) * var(--offset) + var(--swipe-amount)));opacity:1}to{transform:translateY(calc(var(--lift) * var(--offset) + var(--swipe-amount) + var(--lift) * -100%));opacity:0}}@media (max-width: 600px){[data-sonner-toaster]{position:fixed;--mobile-offset: 16px;right:var(--mobile-offset);left:var(--mobile-offset);width:100%}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset)}[data-sonner-toaster][data-y-position=bottom]{bottom:20px}[data-sonner-toaster][data-y-position=top]{top:20px}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset);right:var(--mobile-offset);transform:none}}[data-sonner-toaster][data-theme=light]{--normal-bg: #fff;--normal-border: var(--gray4);--normal-text: var(--gray12);--success-bg: hsl(143, 85%, 96%);--success-border: hsl(145, 92%, 91%);--success-text: hsl(140, 100%, 27%);--info-bg: hsl(208, 100%, 97%);--info-border: hsl(221, 91%, 91%);--info-text: hsl(210, 92%, 45%);--warning-bg: hsl(49, 100%, 97%);--warning-border: hsl(49, 91%, 91%);--warning-text: hsl(31, 92%, 45%);--error-bg: hsl(359, 100%, 97%);--error-border: hsl(359, 100%, 94%);--error-text: hsl(360, 100%, 45%)}[data-sonner-toaster][data-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg: #fff;--normal-border: var(--gray3);--normal-text: var(--gray12)}[data-sonner-toaster][data-theme=dark]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1);--success-bg: hsl(150, 100%, 6%);--success-border: hsl(147, 100%, 12%);--success-text: hsl(150, 86%, 65%);--info-bg: hsl(215, 100%, 6%);--info-border: hsl(223, 100%, 12%);--info-text: hsl(216, 87%, 65%);--warning-bg: hsl(64, 100%, 6%);--warning-border: hsl(60, 100%, 12%);--warning-text: hsl(46, 87%, 65%);--error-bg: hsl(358, 76%, 10%);--error-border: hsl(357, 89%, 16%);--error-text: hsl(358, 100%, 81%)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size: 16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:nth-child(1){animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}\n`);function U(s){return s.label!==void 0}var qt=3,Qt=\"32px\",Zt=4e3,te=356,ee=14,oe=20,ae=200;function ne(...s){return s.filter(Boolean).join(\" \")}var se=s=>{var yt,xt,vt,wt,Tt,St,Rt,Et,Nt,Pt;let{invert:o,toast:t,unstyled:n,interacting:h,setHeights:u,visibleToasts:g,heights:b,index:d,toasts:q,expanded:$,removeToast:V,defaultRichColors:Q,closeButton:i,style:O,cancelButtonStyle:K,actionButtonStyle:Z,className:tt=\"\",descriptionClassName:et=\"\",duration:X,position:ot,gap:w,loadingIcon:j,expandByDefault:W,classNames:r,icons:I,closeButtonAriaLabel:at=\"Close toast\",pauseWhenPageIsHidden:k,cn:T}=s,[z,nt]=e.useState(!1),[D,H]=e.useState(!1),[st,N]=e.useState(!1),[M,rt]=e.useState(!1),[c,m]=e.useState(0),[y,S]=e.useState(0),A=e.useRef(null),l=e.useRef(null),_=d===0,J=d+1<=g,x=t.type,P=t.dismissible!==!1,Mt=t.className||\"\",At=t.descriptionClassName||\"\",G=e.useMemo(()=>b.findIndex(a=>a.toastId===t.id)||0,[b,t.id]),Lt=e.useMemo(()=>{var a;return(a=t.closeButton)!=null?a:i},[t.closeButton,i]),mt=e.useMemo(()=>t.duration||X||Zt,[t.duration,X]),it=e.useRef(0),Y=e.useRef(0),pt=e.useRef(0),F=e.useRef(null),[gt,zt]=ot.split(\"-\"),ht=e.useMemo(()=>b.reduce((a,f,p)=>p>=G?a:a+f.height,0),[b,G]),bt=Dt(),jt=t.invert||o,lt=x===\"loading\";Y.current=e.useMemo(()=>G*w+ht,[G,ht]),e.useEffect(()=>{nt(!0)},[]),e.useLayoutEffect(()=>{if(!z)return;let a=l.current,f=a.style.height;a.style.height=\"auto\";let p=a.getBoundingClientRect().height;a.style.height=f,S(p),u(B=>B.find(R=>R.toastId===t.id)?B.map(R=>R.toastId===t.id?{...R,height:p}:R):[{toastId:t.id,height:p,position:t.position},...B])},[z,t.title,t.description,u,t.id]);let L=e.useCallback(()=>{H(!0),m(Y.current),u(a=>a.filter(f=>f.toastId!==t.id)),setTimeout(()=>{V(t)},ae)},[t,V,u,Y]);e.useEffect(()=>{if(t.promise&&x===\"loading\"||t.duration===1/0||t.type===\"loading\")return;let a,f=mt;return $||h||k&&bt?(()=>{if(pt.current<it.current){let C=new Date().getTime()-it.current;f=f-C}pt.current=new Date().getTime()})():(()=>{f!==1/0&&(it.current=new Date().getTime(),a=setTimeout(()=>{var C;(C=t.onAutoClose)==null||C.call(t,t),L()},f))})(),()=>clearTimeout(a)},[$,h,W,t,mt,L,t.promise,x,k,bt]),e.useEffect(()=>{let a=l.current;if(a){let f=a.getBoundingClientRect().height;return S(f),u(p=>[{toastId:t.id,height:f,position:t.position},...p]),()=>u(p=>p.filter(B=>B.toastId!==t.id))}},[u,t.id]),e.useEffect(()=>{t.delete&&L()},[L,t.delete]);function Yt(){return I!=null&&I.loading?e.createElement(\"div\",{className:\"sonner-loader\",\"data-visible\":x===\"loading\"},I.loading):j?e.createElement(\"div\",{className:\"sonner-loader\",\"data-visible\":x===\"loading\"},j):e.createElement(It,{visible:x===\"loading\"})}return e.createElement(\"li\",{\"aria-live\":t.important?\"assertive\":\"polite\",\"aria-atomic\":\"true\",role:\"status\",tabIndex:0,ref:l,className:T(tt,Mt,r==null?void 0:r.toast,(yt=t==null?void 0:t.classNames)==null?void 0:yt.toast,r==null?void 0:r.default,r==null?void 0:r[x],(xt=t==null?void 0:t.classNames)==null?void 0:xt[x]),\"data-sonner-toast\":\"\",\"data-rich-colors\":(vt=t.richColors)!=null?vt:Q,\"data-styled\":!(t.jsx||t.unstyled||n),\"data-mounted\":z,\"data-promise\":!!t.promise,\"data-removed\":D,\"data-visible\":J,\"data-y-position\":gt,\"data-x-position\":zt,\"data-index\":d,\"data-front\":_,\"data-swiping\":st,\"data-dismissible\":P,\"data-type\":x,\"data-invert\":jt,\"data-swipe-out\":M,\"data-expanded\":!!($||W&&z),style:{\"--index\":d,\"--toasts-before\":d,\"--z-index\":q.length-d,\"--offset\":`${D?c:Y.current}px`,\"--initial-height\":W?\"auto\":`${y}px`,...O,...t.style},onPointerDown:a=>{lt||!P||(A.current=new Date,m(Y.current),a.target.setPointerCapture(a.pointerId),a.target.tagName!==\"BUTTON\"&&(N(!0),F.current={x:a.clientX,y:a.clientY}))},onPointerUp:()=>{var B,C,R,dt;if(M||!P)return;F.current=null;let a=Number(((B=l.current)==null?void 0:B.style.getPropertyValue(\"--swipe-amount\").replace(\"px\",\"\"))||0),f=new Date().getTime()-((C=A.current)==null?void 0:C.getTime()),p=Math.abs(a)/f;if(Math.abs(a)>=oe||p>.11){m(Y.current),(R=t.onDismiss)==null||R.call(t,t),L(),rt(!0);return}(dt=l.current)==null||dt.style.setProperty(\"--swipe-amount\",\"0px\"),N(!1)},onPointerMove:a=>{var Bt;if(!F.current||!P)return;let f=a.clientY-F.current.y,p=a.clientX-F.current.x,C=(gt===\"top\"?Math.min:Math.max)(0,f),R=a.pointerType===\"touch\"?10:2;Math.abs(C)>R?(Bt=l.current)==null||Bt.style.setProperty(\"--swipe-amount\",`${f}px`):Math.abs(p)>R&&(F.current=null)}},Lt&&!t.jsx?e.createElement(\"button\",{\"aria-label\":at,\"data-disabled\":lt,\"data-close-button\":!0,onClick:lt||!P?()=>{}:()=>{var a;L(),(a=t.onDismiss)==null||a.call(t,t)},className:T(r==null?void 0:r.closeButton,(wt=t==null?void 0:t.classNames)==null?void 0:wt.closeButton)},e.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"12\",height:\"12\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\"},e.createElement(\"line\",{x1:\"18\",y1:\"6\",x2:\"6\",y2:\"18\"}),e.createElement(\"line\",{x1:\"6\",y1:\"6\",x2:\"18\",y2:\"18\"}))):null,t.jsx||e.isValidElement(t.title)?t.jsx||t.title:e.createElement(e.Fragment,null,x||t.icon||t.promise?e.createElement(\"div\",{\"data-icon\":\"\",className:T(r==null?void 0:r.icon,(Tt=t==null?void 0:t.classNames)==null?void 0:Tt.icon)},t.promise||t.type===\"loading\"&&!t.icon?t.icon||Yt():null,t.type!==\"loading\"?t.icon||(I==null?void 0:I[x])||Ct(x):null):null,e.createElement(\"div\",{\"data-content\":\"\",className:T(r==null?void 0:r.content,(St=t==null?void 0:t.classNames)==null?void 0:St.content)},e.createElement(\"div\",{\"data-title\":\"\",className:T(r==null?void 0:r.title,(Rt=t==null?void 0:t.classNames)==null?void 0:Rt.title)},t.title),t.description?e.createElement(\"div\",{\"data-description\":\"\",className:T(et,At,r==null?void 0:r.description,(Et=t==null?void 0:t.classNames)==null?void 0:Et.description)},t.description):null),e.isValidElement(t.cancel)?t.cancel:t.cancel&&U(t.cancel)?e.createElement(\"button\",{\"data-button\":!0,\"data-cancel\":!0,style:t.cancelButtonStyle||K,onClick:a=>{var f,p;U(t.cancel)&&P&&((p=(f=t.cancel).onClick)==null||p.call(f,a),L())},className:T(r==null?void 0:r.cancelButton,(Nt=t==null?void 0:t.classNames)==null?void 0:Nt.cancelButton)},t.cancel.label):null,e.isValidElement(t.action)?t.action:t.action&&U(t.action)?e.createElement(\"button\",{\"data-button\":!0,\"data-action\":!0,style:t.actionButtonStyle||Z,onClick:a=>{var f,p;U(t.action)&&(a.defaultPrevented||((p=(f=t.action).onClick)==null||p.call(f,a),L()))},className:T(r==null?void 0:r.actionButton,(Pt=t==null?void 0:t.classNames)==null?void 0:Pt.actionButton)},t.action.label):null))};function Ht(){if(typeof window==\"undefined\"||typeof document==\"undefined\")return\"ltr\";let s=document.documentElement.getAttribute(\"dir\");return s===\"auto\"||!s?window.getComputedStyle(document.documentElement).direction:s}function we(){let[s,o]=e.useState([]);return e.useEffect(()=>v.subscribe(t=>{o(n=>{if(\"dismiss\"in t&&t.dismiss)return n.filter(u=>u.id!==t.id);let h=n.findIndex(u=>u.id===t.id);if(h!==-1){let u=[...n];return u[h]={...u[h],...t},u}else return[t,...n]})}),[]),{toasts:s}}var Te=s=>{let{invert:o,position:t=\"bottom-right\",hotkey:n=[\"altKey\",\"KeyT\"],expand:h,closeButton:u,className:g,offset:b,theme:d=\"light\",richColors:q,duration:$,style:V,visibleToasts:Q=qt,toastOptions:i,dir:O=Ht(),gap:K=ee,loadingIcon:Z,icons:tt,containerAriaLabel:et=\"Notifications\",pauseWhenPageIsHidden:X,cn:ot=ne}=s,[w,j]=e.useState([]),W=e.useMemo(()=>Array.from(new Set([t].concat(w.filter(c=>c.position).map(c=>c.position)))),[w,t]),[r,I]=e.useState([]),[at,k]=e.useState(!1),[T,z]=e.useState(!1),[nt,D]=e.useState(d!==\"system\"?d:typeof window!=\"undefined\"&&window.matchMedia&&window.matchMedia(\"(prefers-color-scheme: dark)\").matches?\"dark\":\"light\"),H=e.useRef(null),st=n.join(\"+\").replace(/Key/g,\"\").replace(/Digit/g,\"\"),N=e.useRef(null),M=e.useRef(!1),rt=e.useCallback(c=>{var m;(m=w.find(y=>y.id===c.id))!=null&&m.delete||v.dismiss(c.id),j(y=>y.filter(({id:S})=>S!==c.id))},[w]);return e.useEffect(()=>v.subscribe(c=>{if(c.dismiss){j(m=>m.map(y=>y.id===c.id?{...y,delete:!0}:y));return}setTimeout(()=>{Gt.flushSync(()=>{j(m=>{let y=m.findIndex(S=>S.id===c.id);return y!==-1?[...m.slice(0,y),{...m[y],...c},...m.slice(y+1)]:[c,...m]})})})}),[]),e.useEffect(()=>{if(d!==\"system\"){D(d);return}d===\"system\"&&(window.matchMedia&&window.matchMedia(\"(prefers-color-scheme: dark)\").matches?D(\"dark\"):D(\"light\")),typeof window!=\"undefined\"&&window.matchMedia(\"(prefers-color-scheme: dark)\").addEventListener(\"change\",({matches:c})=>{D(c?\"dark\":\"light\")})},[d]),e.useEffect(()=>{w.length<=1&&k(!1)},[w]),e.useEffect(()=>{let c=m=>{var S,A;n.every(l=>m[l]||m.code===l)&&(k(!0),(S=H.current)==null||S.focus()),m.code===\"Escape\"&&(document.activeElement===H.current||(A=H.current)!=null&&A.contains(document.activeElement))&&k(!1)};return document.addEventListener(\"keydown\",c),()=>document.removeEventListener(\"keydown\",c)},[n]),e.useEffect(()=>{if(H.current)return()=>{N.current&&(N.current.focus({preventScroll:!0}),N.current=null,M.current=!1)}},[H.current]),w.length?e.createElement(\"section\",{\"aria-label\":`${et} ${st}`,tabIndex:-1},W.map((c,m)=>{var A;let[y,S]=c.split(\"-\");return e.createElement(\"ol\",{key:c,dir:O===\"auto\"?Ht():O,tabIndex:-1,ref:H,className:g,\"data-sonner-toaster\":!0,\"data-theme\":nt,\"data-y-position\":y,\"data-x-position\":S,style:{\"--front-toast-height\":`${((A=r[0])==null?void 0:A.height)||0}px`,\"--offset\":typeof b==\"number\"?`${b}px`:b||Qt,\"--width\":`${te}px`,\"--gap\":`${K}px`,...V},onBlur:l=>{M.current&&!l.currentTarget.contains(l.relatedTarget)&&(M.current=!1,N.current&&(N.current.focus({preventScroll:!0}),N.current=null))},onFocus:l=>{l.target instanceof HTMLElement&&l.target.dataset.dismissible===\"false\"||M.current||(M.current=!0,N.current=l.relatedTarget)},onMouseEnter:()=>k(!0),onMouseMove:()=>k(!0),onMouseLeave:()=>{T||k(!1)},onPointerDown:l=>{l.target instanceof HTMLElement&&l.target.dataset.dismissible===\"false\"||z(!0)},onPointerUp:()=>z(!1)},w.filter(l=>!l.position&&m===0||l.position===c).map((l,_)=>{var J,x;return e.createElement(se,{key:l.id,icons:tt,index:_,toast:l,defaultRichColors:q,duration:(J=i==null?void 0:i.duration)!=null?J:$,className:i==null?void 0:i.className,descriptionClassName:i==null?void 0:i.descriptionClassName,invert:o,visibleToasts:Q,closeButton:(x=i==null?void 0:i.closeButton)!=null?x:u,interacting:T,position:c,style:i==null?void 0:i.style,unstyled:i==null?void 0:i.unstyled,classNames:i==null?void 0:i.classNames,cancelButtonStyle:i==null?void 0:i.cancelButtonStyle,actionButtonStyle:i==null?void 0:i.actionButtonStyle,removeToast:rt,toasts:w.filter(P=>P.position==l.position),heights:r.filter(P=>P.position==l.position),setHeights:I,expandByDefault:h,gap:K,loadingIcon:Z,expanded:at,pauseWhenPageIsHidden:X,cn:ot})}))})):null};export{Te as Toaster,Jt as toast,we as useSonner};\n//# sourceMappingURL=index.mjs.map"],"names":["Ct","s","$t","_t","Wt","Ut","Ft","It","E","o","t","Dt","kt","ct","ut","b","n","h","u","d","g","Ot","v","Vt","Kt","Xt","Jt","ft","U","qt","Qt","Zt","te","ee","oe","ae","ne","se","yt","xt","vt","wt","Tt","St","Rt","Et","Nt","Pt","q","V","Q","i","O","K","Z","tt","et","X","ot","w","j","W","r","I","at","k","T","z","nt","e","D","H","st","N","M","rt","c","m","y","S","A","l","_","J","P","Mt","At","G","a","Lt","mt","it","Y","pt","F","gt","zt","ht","f","p","bt","jt","lt","B","R","L","C","Yt","dt","Bt","Ht","Te","$","Gt","x"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- import{j as r,r as n}from"./index-D6ygCrVn.js";import{u as d}from"./client-hints-BKxdo5Js.js";function x({children:t="Loading"}){const{reducedMotion:e}=d();return e==="reduce"?r.jsx("div",{className:"animate-pulse",children:t}):r.jsxs("div",{className:"flex items-center gap-2 font-mono text-sm font-medium uppercase",role:"status",children:[r.jsx("div",{"aria-hidden":"true",children:r.jsx(u,{})}),t,r.jsx("div",{"aria-hidden":"true",children:r.jsx(u,{})})]})}const o="█<▓█ ▒░/▒░ █░>▒▓/ █▒▒ ▓▒▓/█<░▒ ▓/░>",i=()=>o[Math.floor(Math.random()*o.length)];function u(){const[t,e]=n.useState(o[0]),[s,c]=n.useState(o[1]);return f(()=>{e(i()),c(i())},80),r.jsxs("span",{children:[t,s]})}function f(t,e=1e3){const s=n.useRef(null);n.useEffect(()=>{s.current=t},[t]),n.useEffect(()=>{function c(){var a;(a=s.current)==null||a.call(s)}if(e!==null){const a=setInterval(c,e);return()=>clearInterval(a)}},[e])}export{x as L};
2
- //# sourceMappingURL=loading-C9f_vBoM.js.map
1
+ import{j as r,r as n}from"./index-Czg1ruVn.js";import{u as d}from"./client-hints-BE5mB4r0.js";function x({children:t="Loading"}){const{reducedMotion:e}=d();return e==="reduce"?r.jsx("div",{className:"animate-pulse",children:t}):r.jsxs("div",{className:"flex items-center gap-2 font-mono text-sm font-medium uppercase",role:"status",children:[r.jsx("div",{"aria-hidden":"true",children:r.jsx(u,{})}),t,r.jsx("div",{"aria-hidden":"true",children:r.jsx(u,{})})]})}const o="█<▓█ ▒░/▒░ █░>▒▓/ █▒▒ ▓▒▓/█<░▒ ▓/░>",i=()=>o[Math.floor(Math.random()*o.length)];function u(){const[t,e]=n.useState(o[0]),[s,c]=n.useState(o[1]);return f(()=>{e(i()),c(i())},80),r.jsxs("span",{children:[t,s]})}function f(t,e=1e3){const s=n.useRef(null);n.useEffect(()=>{s.current=t},[t]),n.useEffect(()=>{function c(){var a;(a=s.current)==null||a.call(s)}if(e!==null){const a=setInterval(c,e);return()=>clearInterval(a)}},[e])}export{x as L};
2
+ //# sourceMappingURL=loading-CNWJVymJ.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"loading-C9f_vBoM.js","sources":["../../../app/components/loading.tsx"],"sourcesContent":["// originally this was based on baffle-react, but it was unnecessarily bloated\n// and very out-dated. I've replaced it with a simple Characters component that\n// does the same thing we were using baffle-react for\nimport { useEffect, useRef, useState } from 'react'\nimport { useHints } from '#app/utils/client-hints.tsx'\n\nexport function Loading({\n\tchildren = 'Loading',\n}: {\n\tchildren?: React.ReactNode\n}) {\n\tconst { reducedMotion } = useHints()\n\tif (reducedMotion === 'reduce') {\n\t\treturn <div className=\"animate-pulse\">{children}</div>\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName=\"flex items-center gap-2 font-mono text-sm font-medium uppercase\"\n\t\t\trole=\"status\"\n\t\t>\n\t\t\t<div aria-hidden=\"true\">\n\t\t\t\t<Characters />\n\t\t\t</div>\n\t\t\t{children}\n\t\t\t<div aria-hidden=\"true\">\n\t\t\t\t<Characters />\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n\nconst characters = '█<▓█ ▒░/▒░ █░>▒▓/ █▒▒ ▓▒▓/█<░▒ ▓/░>'\nconst randomCharacter = () =>\n\tcharacters[Math.floor(Math.random() * characters.length)]\nexport function Characters() {\n\tconst [char1, setChar1] = useState(characters[0])\n\tconst [char2, setChar2] = useState(characters[1])\n\n\tuseInterval(() => {\n\t\tsetChar1(randomCharacter())\n\t\tsetChar2(randomCharacter())\n\t}, 80)\n\n\treturn (\n\t\t<span>\n\t\t\t{char1}\n\t\t\t{char2}\n\t\t</span>\n\t)\n}\n\nfunction useInterval(callback: () => void, delay: number | null = 1000) {\n\tconst savedCallback = useRef<() => void>(null)\n\n\t// Remember the latest function.\n\tuseEffect(() => {\n\t\tsavedCallback.current = callback\n\t}, [callback])\n\n\t// Set up the interval.\n\tuseEffect(() => {\n\t\tfunction tick() {\n\t\t\tsavedCallback.current?.()\n\t\t}\n\t\tif (delay !== null) {\n\t\t\tconst id = setInterval(tick, delay)\n\t\t\treturn () => clearInterval(id)\n\t\t}\n\t}, [delay])\n}\n"],"names":["Loading","children","reducedMotion","useHints","jsx","jsxs","Characters","characters","randomCharacter","char1","setChar1","useState","char2","setChar2","useInterval","callback","delay","savedCallback","useRef","useEffect","tick","_a","id"],"mappings":"8FAMO,SAASA,EAAQ,CACvB,SAAAC,EAAW,SACZ,EAEG,CACI,KAAA,CAAE,cAAAC,GAAkBC,IAC1B,OAAID,IAAkB,SACbE,EAAAA,IAAA,MAAA,CAAI,UAAU,gBAAiB,SAAAH,CAAS,CAAA,EAIhDI,EAAA,KAAC,MAAA,CACA,UAAU,kEACV,KAAK,SAEL,SAAA,CAAAD,MAAC,MAAI,CAAA,cAAY,OAChB,SAAAA,MAACE,GAAW,CAAA,EACb,EACCL,QACA,MAAI,CAAA,cAAY,OAChB,SAAAG,MAACE,GAAW,CAAA,EACb,CAAA,CAAA,CAAA,CAGH,CAEA,MAAMC,EAAa,sCACbC,EAAkB,IACvBD,EAAW,KAAK,MAAM,KAAK,SAAWA,EAAW,MAAM,CAAC,EAClD,SAASD,GAAa,CAC5B,KAAM,CAACG,EAAOC,CAAQ,EAAIC,EAAS,SAAAJ,EAAW,CAAC,CAAC,EAC1C,CAACK,EAAOC,CAAQ,EAAIF,EAAS,SAAAJ,EAAW,CAAC,CAAC,EAEhD,OAAAO,EAAY,IAAM,CACjBJ,EAASF,GAAiB,EAC1BK,EAASL,GAAiB,GACxB,EAAE,SAGH,OACC,CAAA,SAAA,CAAAC,EACAG,CACF,CAAA,CAAA,CAEF,CAEA,SAASE,EAAYC,EAAsBC,EAAuB,IAAM,CACjE,MAAAC,EAAgBC,SAAmB,IAAI,EAG7CC,EAAAA,UAAU,IAAM,CACfF,EAAc,QAAUF,CAAA,EACtB,CAACA,CAAQ,CAAC,EAGbI,EAAAA,UAAU,IAAM,CACf,SAASC,GAAO,QACfC,EAAAJ,EAAc,UAAd,MAAAI,EAAA,KAAAJ,EACD,CACA,GAAID,IAAU,KAAM,CACb,MAAAM,EAAK,YAAYF,EAAMJ,CAAK,EAC3B,MAAA,IAAM,cAAcM,CAAE,CAC9B,CAAA,EACE,CAACN,CAAK,CAAC,CACX"}
1
+ {"version":3,"file":"loading-CNWJVymJ.js","sources":["../../../app/components/loading.tsx"],"sourcesContent":["// originally this was based on baffle-react, but it was unnecessarily bloated\n// and very out-dated. I've replaced it with a simple Characters component that\n// does the same thing we were using baffle-react for\nimport { useEffect, useRef, useState } from 'react'\nimport { useHints } from '#app/utils/client-hints.tsx'\n\nexport function Loading({\n\tchildren = 'Loading',\n}: {\n\tchildren?: React.ReactNode\n}) {\n\tconst { reducedMotion } = useHints()\n\tif (reducedMotion === 'reduce') {\n\t\treturn <div className=\"animate-pulse\">{children}</div>\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName=\"flex items-center gap-2 font-mono text-sm font-medium uppercase\"\n\t\t\trole=\"status\"\n\t\t>\n\t\t\t<div aria-hidden=\"true\">\n\t\t\t\t<Characters />\n\t\t\t</div>\n\t\t\t{children}\n\t\t\t<div aria-hidden=\"true\">\n\t\t\t\t<Characters />\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n\nconst characters = '█<▓█ ▒░/▒░ █░>▒▓/ █▒▒ ▓▒▓/█<░▒ ▓/░>'\nconst randomCharacter = () =>\n\tcharacters[Math.floor(Math.random() * characters.length)]\nexport function Characters() {\n\tconst [char1, setChar1] = useState(characters[0])\n\tconst [char2, setChar2] = useState(characters[1])\n\n\tuseInterval(() => {\n\t\tsetChar1(randomCharacter())\n\t\tsetChar2(randomCharacter())\n\t}, 80)\n\n\treturn (\n\t\t<span>\n\t\t\t{char1}\n\t\t\t{char2}\n\t\t</span>\n\t)\n}\n\nfunction useInterval(callback: () => void, delay: number | null = 1000) {\n\tconst savedCallback = useRef<() => void>(null)\n\n\t// Remember the latest function.\n\tuseEffect(() => {\n\t\tsavedCallback.current = callback\n\t}, [callback])\n\n\t// Set up the interval.\n\tuseEffect(() => {\n\t\tfunction tick() {\n\t\t\tsavedCallback.current?.()\n\t\t}\n\t\tif (delay !== null) {\n\t\t\tconst id = setInterval(tick, delay)\n\t\t\treturn () => clearInterval(id)\n\t\t}\n\t}, [delay])\n}\n"],"names":["Loading","children","reducedMotion","useHints","jsx","jsxs","Characters","characters","randomCharacter","char1","setChar1","useState","char2","setChar2","useInterval","callback","delay","savedCallback","useRef","useEffect","tick","_a","id"],"mappings":"8FAMO,SAASA,EAAQ,CACvB,SAAAC,EAAW,SACZ,EAEG,CACI,KAAA,CAAE,cAAAC,GAAkBC,IAC1B,OAAID,IAAkB,SACbE,EAAAA,IAAA,MAAA,CAAI,UAAU,gBAAiB,SAAAH,CAAS,CAAA,EAIhDI,EAAA,KAAC,MAAA,CACA,UAAU,kEACV,KAAK,SAEL,SAAA,CAAAD,MAAC,MAAI,CAAA,cAAY,OAChB,SAAAA,MAACE,GAAW,CAAA,EACb,EACCL,QACA,MAAI,CAAA,cAAY,OAChB,SAAAG,MAACE,GAAW,CAAA,EACb,CAAA,CAAA,CAAA,CAGH,CAEA,MAAMC,EAAa,sCACbC,EAAkB,IACvBD,EAAW,KAAK,MAAM,KAAK,SAAWA,EAAW,MAAM,CAAC,EAClD,SAASD,GAAa,CAC5B,KAAM,CAACG,EAAOC,CAAQ,EAAIC,EAAS,SAAAJ,EAAW,CAAC,CAAC,EAC1C,CAACK,EAAOC,CAAQ,EAAIF,EAAS,SAAAJ,EAAW,CAAC,CAAC,EAEhD,OAAAO,EAAY,IAAM,CACjBJ,EAASF,GAAiB,EAC1BK,EAASL,GAAiB,GACxB,EAAE,SAGH,OACC,CAAA,SAAA,CAAAC,EACAG,CACF,CAAA,CAAA,CAEF,CAEA,SAASE,EAAYC,EAAsBC,EAAuB,IAAM,CACjE,MAAAC,EAAgBC,SAAmB,IAAI,EAG7CC,EAAAA,UAAU,IAAM,CACfF,EAAc,QAAUF,CAAA,EACtB,CAACA,CAAQ,CAAC,EAGbI,EAAAA,UAAU,IAAM,CACf,SAASC,GAAO,QACfC,EAAAJ,EAAc,UAAd,MAAAI,EAAA,KAAAJ,EACD,CACA,GAAID,IAAU,KAAM,CACb,MAAAM,EAAK,YAAYF,EAAMJ,CAAK,EAC3B,MAAA,IAAM,cAAcM,CAAE,CAC9B,CAAA,EACE,CAACN,CAAK,CAAC,CACX"}
@@ -1,2 +1,2 @@
1
- import{r as i,d as h,e as C,j as e}from"./index-D6ygCrVn.js";import{u as j}from"./use-event-source-aW6X9lN1.js";import{a as g,B as v}from"./button-BfWwrI9B.js";import{L as R}from"./loading-C9f_vBoM.js";import{z as t}from"./request-info-Dyls4H67.js";import{a as L}from"./components-C5xBZAiL.js";import"./clsx-B-dksMZM.js";import"./client-hints-BKxdo5Js.js";const r={USER_CODE_RECEIVED:"USER_CODE_RECEIVED",AUTH_RESOLVED:"AUTH_RESOLVED",AUTH_REJECTED:"AUTH_REJECTED"},S=t.object({type:t.literal(r.USER_CODE_RECEIVED),code:t.string(),url:t.string()}),b=t.object({type:t.literal(r.AUTH_RESOLVED)}),w=t.object({type:t.literal(r.AUTH_REJECTED),error:t.string().optional().default("Unknown error")}),y=t.union([S,b,w]);function F(){var x;const s=L(),[u,E]=i.useState(!1),[n,f]=i.useState(null),[l,m]=i.useState(null),c=h(),d=C(),o=j("/login-sse");return i.useEffect(()=>{if(!o)return;const p=JSON.parse(o),a=y.safeParse(p);if(!a.success){console.error(a.error.flatten());return}switch(a.data.type){case r.USER_CODE_RECEIVED:{m(a.data);break}case r.AUTH_RESOLVED:{d.revalidate(),c("/");break}case r.AUTH_REJECTED:{f(a.data.error);break}}},[o,c,d]),e.jsx("main",{className:"flex h-full w-full flex-grow flex-col items-center justify-center p-10 text-center",children:e.jsxs("div",{className:"flex flex-col items-center",children:[e.jsx(_,{className:"h-16 w-16"}),e.jsx("h1",{className:"pt-5 text-2xl font-semibold md:text-3xl",children:"Authenticate with EpicWeb.dev"}),e.jsx("h2",{className:"max-w-sm pt-3 text-base text-gray-700 dark:text-gray-300",children:"If you have purchased Epic Web, you'll be able to watch videos, track progress, and more!"}),e.jsxs("div",{className:"flex w-full flex-col items-center pt-5",children:[l?e.jsxs("div",{className:"flex w-full flex-col items-center gap-3",children:[e.jsxs("div",{className:"my-2 flex w-full flex-col items-center gap-2",children:[e.jsx("p",{className:"text-lg",children:"Your verification code is: "}),e.jsx("div",{className:"mb-3 w-full bg-gray-100 px-5 py-3 text-lg font-bold dark:bg-black/40",children:e.jsx("code",{children:l.code})})]}),e.jsx(g,{varient:"primary",to:l.url,target:"_blank",rel:"noreferrer",onClick:()=>E(!0),children:"Continue"}),u?e.jsx("div",{className:"pt-5 opacity-60",children:e.jsx(R,{children:"Waiting for confirmation"})}):null]}):e.jsx(s.Form,{method:"POST",children:e.jsx(v,{varient:"primary",type:"submit",children:s.state==="idle"&&((x=s.data)==null?void 0:x.status)!=="pending"?"Retrieve Code":"Retrieving Code..."})}),n?e.jsxs("div",{className:"mt-4 text-red-500",children:["There was an error: ",e.jsx("pre",{children:n})]}):null]})]})})}function _({className:s=""}){return e.jsxs("svg",{className:s,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",children:[e.jsx("path",{d:"M12.438 11.5677C12.0131 11.8026 11.5249 12.0534 10.9784 12.3047C8.80704 13.3031 5.70429 14.314 1.986 14.3555L1.55773 14.3603L1.48003 13.9391C1.36509 13.316 1.29793 12.6714 1.29793 12.006C1.29793 6.10441 6.09863 1.30372 12.0002 1.30372C13.6287 1.30372 15.1745 1.66961 16.5585 2.32369L17.9801 1.59897C16.2189 0.582162 14.1769 0 12.0002 0C5.38709 0 0 5.38709 0 12.0002C0 14.6402 0.858474 17.0847 2.31072 19.0692C4.79741 18.6457 6.35749 17.6495 6.35749 17.6495C6.35749 17.6495 5.36137 19.2075 4.93785 21.6946C6.92114 23.1439 9.36321 24.0005 12.0002 24.0005C18.6134 24.0005 24.0005 18.6134 24.0005 12.0002C24.0005 9.82732 23.4199 7.78762 22.4053 6.02738L21.6818 7.44613C22.3364 8.83057 22.7025 10.3769 22.7025 12.006C22.7025 17.9076 17.9018 22.7083 12.0002 22.7083C11.3345 22.7083 10.6959 22.6411 10.0681 22.5264L9.646 22.4493L9.65079 22.0203C9.6923 18.2991 10.7031 15.1964 11.7016 13.0257C11.9527 12.4797 12.2033 11.9921 12.438 11.5677Z",fill:"url(#epicGradient)"}),e.jsx("path",{d:"M18.2525 9.31052L15.4992 8.50683L14.6953 5.74778L23.8291 0.171387L18.2525 9.31052Z",fill:"currentColor"}),e.jsx("defs",{children:e.jsxs("linearGradient",{id:"epicGradient",x1:"16.9703",y1:"7.03022",x2:"7.05798",y2:"16.948",gradientUnits:"userSpaceOnUse",children:[e.jsx("stop",{stopColor:"#4F75FF"}),e.jsx("stop",{offset:"1",stopColor:"#30AFFF"})]})})]})}export{F as default};
2
- //# sourceMappingURL=login-D8zyjBAb.js.map
1
+ import{r as i,d as h,e as C,j as e}from"./index-Czg1ruVn.js";import{u as j}from"./use-event-source-ySol3hbz.js";import{a as g,B as v}from"./button-CyZl24U2.js";import{L as R}from"./loading-CNWJVymJ.js";import{z as t}from"./request-info-CUT0ULYN.js";import{a as L}from"./components-BMzmvxYw.js";import"./clsx-B-dksMZM.js";import"./client-hints-BE5mB4r0.js";const r={USER_CODE_RECEIVED:"USER_CODE_RECEIVED",AUTH_RESOLVED:"AUTH_RESOLVED",AUTH_REJECTED:"AUTH_REJECTED"},S=t.object({type:t.literal(r.USER_CODE_RECEIVED),code:t.string(),url:t.string()}),b=t.object({type:t.literal(r.AUTH_RESOLVED)}),w=t.object({type:t.literal(r.AUTH_REJECTED),error:t.string().optional().default("Unknown error")}),y=t.union([S,b,w]);function F(){var x;const s=L(),[u,E]=i.useState(!1),[n,f]=i.useState(null),[l,m]=i.useState(null),c=h(),d=C(),o=j("/login-sse");return i.useEffect(()=>{if(!o)return;const p=JSON.parse(o),a=y.safeParse(p);if(!a.success){console.error(a.error.flatten());return}switch(a.data.type){case r.USER_CODE_RECEIVED:{m(a.data);break}case r.AUTH_RESOLVED:{d.revalidate(),c("/");break}case r.AUTH_REJECTED:{f(a.data.error);break}}},[o,c,d]),e.jsx("main",{className:"flex h-full w-full flex-grow flex-col items-center justify-center p-10 text-center",children:e.jsxs("div",{className:"flex flex-col items-center",children:[e.jsx(_,{className:"h-16 w-16"}),e.jsx("h1",{className:"pt-5 text-2xl font-semibold md:text-3xl",children:"Authenticate with EpicWeb.dev"}),e.jsx("h2",{className:"max-w-sm pt-3 text-base text-gray-700 dark:text-gray-300",children:"If you have purchased Epic Web, you'll be able to watch videos, track progress, and more!"}),e.jsxs("div",{className:"flex w-full flex-col items-center pt-5",children:[l?e.jsxs("div",{className:"flex w-full flex-col items-center gap-3",children:[e.jsxs("div",{className:"my-2 flex w-full flex-col items-center gap-2",children:[e.jsx("p",{className:"text-lg",children:"Your verification code is: "}),e.jsx("div",{className:"mb-3 w-full bg-gray-100 px-5 py-3 text-lg font-bold dark:bg-black/40",children:e.jsx("code",{children:l.code})})]}),e.jsx(g,{varient:"primary",to:l.url,target:"_blank",rel:"noreferrer",onClick:()=>E(!0),children:"Continue"}),u?e.jsx("div",{className:"pt-5 opacity-60",children:e.jsx(R,{children:"Waiting for confirmation"})}):null]}):e.jsx(s.Form,{method:"POST",children:e.jsx(v,{varient:"primary",type:"submit",children:s.state==="idle"&&((x=s.data)==null?void 0:x.status)!=="pending"?"Retrieve Code":"Retrieving Code..."})}),n?e.jsxs("div",{className:"mt-4 text-red-500",children:["There was an error: ",e.jsx("pre",{children:n})]}):null]})]})})}function _({className:s=""}){return e.jsxs("svg",{className:s,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",children:[e.jsx("path",{d:"M12.438 11.5677C12.0131 11.8026 11.5249 12.0534 10.9784 12.3047C8.80704 13.3031 5.70429 14.314 1.986 14.3555L1.55773 14.3603L1.48003 13.9391C1.36509 13.316 1.29793 12.6714 1.29793 12.006C1.29793 6.10441 6.09863 1.30372 12.0002 1.30372C13.6287 1.30372 15.1745 1.66961 16.5585 2.32369L17.9801 1.59897C16.2189 0.582162 14.1769 0 12.0002 0C5.38709 0 0 5.38709 0 12.0002C0 14.6402 0.858474 17.0847 2.31072 19.0692C4.79741 18.6457 6.35749 17.6495 6.35749 17.6495C6.35749 17.6495 5.36137 19.2075 4.93785 21.6946C6.92114 23.1439 9.36321 24.0005 12.0002 24.0005C18.6134 24.0005 24.0005 18.6134 24.0005 12.0002C24.0005 9.82732 23.4199 7.78762 22.4053 6.02738L21.6818 7.44613C22.3364 8.83057 22.7025 10.3769 22.7025 12.006C22.7025 17.9076 17.9018 22.7083 12.0002 22.7083C11.3345 22.7083 10.6959 22.6411 10.0681 22.5264L9.646 22.4493L9.65079 22.0203C9.6923 18.2991 10.7031 15.1964 11.7016 13.0257C11.9527 12.4797 12.2033 11.9921 12.438 11.5677Z",fill:"url(#epicGradient)"}),e.jsx("path",{d:"M18.2525 9.31052L15.4992 8.50683L14.6953 5.74778L23.8291 0.171387L18.2525 9.31052Z",fill:"currentColor"}),e.jsx("defs",{children:e.jsxs("linearGradient",{id:"epicGradient",x1:"16.9703",y1:"7.03022",x2:"7.05798",y2:"16.948",gradientUnits:"userSpaceOnUse",children:[e.jsx("stop",{stopColor:"#4F75FF"}),e.jsx("stop",{offset:"1",stopColor:"#30AFFF"})]})})]})}export{F as default};
2
+ //# sourceMappingURL=login-DxG854vQ.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"login-D8zyjBAb.js","sources":["../../../app/utils/auth-events.ts","../../../app/routes/login-sse.tsx","../../../app/routes/_app+/login.tsx"],"sourcesContent":["export const EVENTS = {\n\tUSER_CODE_RECEIVED: 'USER_CODE_RECEIVED',\n\tAUTH_RESOLVED: 'AUTH_RESOLVED',\n\tAUTH_REJECTED: 'AUTH_REJECTED',\n} as const\nexport type EventTypes = keyof typeof EVENTS\n","import { type LoaderFunctionArgs } from '@remix-run/node'\nimport { eventStream } from 'remix-utils/sse/server'\nimport { z } from 'zod'\nimport { EVENTS } from '#app/utils/auth-events.ts'\nimport { authEmitter } from '#app/utils/auth.server.ts'\nimport { ensureUndeployed } from '#app/utils/misc.tsx'\n\nconst CodeReceivedEventSchema = z.object({\n\ttype: z.literal(EVENTS.USER_CODE_RECEIVED),\n\tcode: z.string(),\n\turl: z.string(),\n})\nconst AuthResolvedEventSchema = z.object({\n\ttype: z.literal(EVENTS.AUTH_RESOLVED),\n})\nconst AuthRejectedEventSchema = z.object({\n\ttype: z.literal(EVENTS.AUTH_REJECTED),\n\terror: z.string().optional().default('Unknown error'),\n})\nexport const EventSchema = z.union([\n\tCodeReceivedEventSchema,\n\tAuthResolvedEventSchema,\n\tAuthRejectedEventSchema,\n])\n\nexport async function loader({ request }: LoaderFunctionArgs) {\n\tensureUndeployed()\n\treturn eventStream(request.signal, function setup(send) {\n\t\tfunction handleCodeReceived(data: any) {\n\t\t\tsend({\n\t\t\t\tdata: JSON.stringify(\n\t\t\t\t\tCodeReceivedEventSchema.parse({\n\t\t\t\t\t\ttype: EVENTS.USER_CODE_RECEIVED,\n\t\t\t\t\t\t...data,\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t})\n\t\t}\n\t\tfunction handleAuthResolved() {\n\t\t\tsend({ data: JSON.stringify({ type: EVENTS.AUTH_RESOLVED }) })\n\t\t}\n\t\tfunction handleAuthRejected(data: any) {\n\t\t\tconst result = AuthRejectedEventSchema.safeParse(data)\n\t\t\tif (result.success) {\n\t\t\t\tsend({ data: JSON.stringify(result.data) })\n\t\t\t} else {\n\t\t\t\tconsole.error('Error parsing auth rejected event', result.error, data)\n\t\t\t}\n\t\t}\n\t\tauthEmitter.on(EVENTS.USER_CODE_RECEIVED, handleCodeReceived)\n\t\tauthEmitter.on(EVENTS.AUTH_RESOLVED, handleAuthResolved)\n\t\tauthEmitter.on(EVENTS.AUTH_REJECTED, handleAuthRejected)\n\t\treturn () => {\n\t\t\tauthEmitter.off(EVENTS.USER_CODE_RECEIVED, handleCodeReceived)\n\t\t\tauthEmitter.off(EVENTS.AUTH_RESOLVED, handleAuthResolved)\n\t\t\tauthEmitter.off(EVENTS.AUTH_REJECTED, handleAuthRejected)\n\t\t}\n\t})\n}\n","import { getAuthInfo } from '@epic-web/workshop-utils/db.server'\nimport { json, redirect } from '@remix-run/node'\nimport { useFetcher, useNavigate, useRevalidator } from '@remix-run/react'\nimport { useEffect, useState } from 'react'\nimport { useEventSource } from 'remix-utils/sse/react'\nimport { Button, ButtonLink } from '#app/components/button.tsx'\nimport { Loading } from '#app/components/loading.tsx'\nimport { EVENTS } from '#app/utils/auth-events.ts'\nimport { registerDevice } from '#app/utils/auth.server.ts'\nimport { ensureUndeployed } from '#app/utils/misc.tsx'\nimport { EventSchema } from '../login-sse.tsx'\n\nexport async function loader() {\n\tensureUndeployed()\n\tconst isAuthenticated = Boolean(await getAuthInfo())\n\tif (isAuthenticated) throw redirect('/account')\n\treturn json({})\n}\n\nexport async function action() {\n\tensureUndeployed()\n\tvoid registerDevice()\n\treturn json({ status: 'pending' } as const)\n}\n\nexport default function Login() {\n\tconst loginFetcher = useFetcher<typeof action>()\n\tconst [clickedVerificationLink, setClickedVerificationLink] = useState(false)\n\tconst [authError, setAuthError] = useState<null | string>(null)\n\tconst [userCodeInfo, setUserCodeInfo] = useState<null | {\n\t\tcode: string\n\t\turl: string\n\t}>(null)\n\tconst navigate = useNavigate()\n\tconst revalidator = useRevalidator()\n\tconst lastMessage = useEventSource(`/login-sse`)\n\tuseEffect(() => {\n\t\tif (!lastMessage) return\n\n\t\tconst parsed = JSON.parse(lastMessage)\n\t\tconst result = EventSchema.safeParse(parsed)\n\t\tif (!result.success) {\n\t\t\tconsole.error(result.error.flatten())\n\t\t\treturn\n\t\t}\n\t\tswitch (result.data.type) {\n\t\t\tcase EVENTS.USER_CODE_RECEIVED: {\n\t\t\t\tsetUserCodeInfo(result.data)\n\t\t\t\tbreak\n\t\t\t}\n\t\t\tcase EVENTS.AUTH_RESOLVED: {\n\t\t\t\trevalidator.revalidate()\n\t\t\t\tnavigate('/')\n\t\t\t\tbreak\n\t\t\t}\n\t\t\tcase EVENTS.AUTH_REJECTED: {\n\t\t\t\tsetAuthError(result.data.error)\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t}, [lastMessage, navigate, revalidator])\n\n\treturn (\n\t\t<main className=\"flex h-full w-full flex-grow flex-col items-center justify-center p-10 text-center\">\n\t\t\t<div className=\"flex flex-col items-center\">\n\t\t\t\t<Logo className=\"h-16 w-16\" />\n\t\t\t\t<h1 className=\"pt-5 text-2xl font-semibold md:text-3xl\">\n\t\t\t\t\tAuthenticate with EpicWeb.dev\n\t\t\t\t</h1>\n\t\t\t\t<h2 className=\"max-w-sm pt-3 text-base text-gray-700 dark:text-gray-300\">\n\t\t\t\t\tIf you have purchased Epic Web, you'll be able to watch videos, track\n\t\t\t\t\tprogress, and more!\n\t\t\t\t</h2>\n\t\t\t\t<div className=\"flex w-full flex-col items-center pt-5\">\n\t\t\t\t\t{userCodeInfo ? (\n\t\t\t\t\t\t<div className=\"flex w-full flex-col items-center gap-3\">\n\t\t\t\t\t\t\t<div className=\"my-2 flex w-full flex-col items-center gap-2\">\n\t\t\t\t\t\t\t\t<p className=\"text-lg\">Your verification code is: </p>\n\t\t\t\t\t\t\t\t<div className=\"mb-3 w-full bg-gray-100 px-5 py-3 text-lg font-bold dark:bg-black/40\">\n\t\t\t\t\t\t\t\t\t<code>{userCodeInfo.code}</code>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<ButtonLink\n\t\t\t\t\t\t\t\tvarient=\"primary\"\n\t\t\t\t\t\t\t\tto={userCodeInfo.url}\n\t\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\t\trel=\"noreferrer\"\n\t\t\t\t\t\t\t\tonClick={() => setClickedVerificationLink(true)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tContinue\n\t\t\t\t\t\t\t</ButtonLink>\n\t\t\t\t\t\t\t{clickedVerificationLink ? (\n\t\t\t\t\t\t\t\t<div className=\"pt-5 opacity-60\">\n\t\t\t\t\t\t\t\t\t<Loading>Waiting for confirmation</Loading>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<loginFetcher.Form method=\"POST\">\n\t\t\t\t\t\t\t<Button varient=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t\t{loginFetcher.state === 'idle' &&\n\t\t\t\t\t\t\t\tloginFetcher.data?.status !== 'pending'\n\t\t\t\t\t\t\t\t\t? `Retrieve Code`\n\t\t\t\t\t\t\t\t\t: `Retrieving Code...`}\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</loginFetcher.Form>\n\t\t\t\t\t)}\n\t\t\t\t\t{authError ? (\n\t\t\t\t\t\t<div className=\"mt-4 text-red-500\">\n\t\t\t\t\t\t\tThere was an error: <pre>{authError}</pre>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : null}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</main>\n\t)\n}\n\nfunction Logo({ className = '' }) {\n\t// svg sprites do not support gradients\n\treturn (\n\t\t<svg\n\t\t\tclassName={className}\n\t\t\tviewBox=\"0 0 24 24\"\n\t\t\tfill=\"none\"\n\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\taria-hidden=\"true\"\n\t\t>\n\t\t\t<path\n\t\t\t\td=\"M12.438 11.5677C12.0131 11.8026 11.5249 12.0534 10.9784 12.3047C8.80704 13.3031 5.70429 14.314 1.986 14.3555L1.55773 14.3603L1.48003 13.9391C1.36509 13.316 1.29793 12.6714 1.29793 12.006C1.29793 6.10441 6.09863 1.30372 12.0002 1.30372C13.6287 1.30372 15.1745 1.66961 16.5585 2.32369L17.9801 1.59897C16.2189 0.582162 14.1769 0 12.0002 0C5.38709 0 0 5.38709 0 12.0002C0 14.6402 0.858474 17.0847 2.31072 19.0692C4.79741 18.6457 6.35749 17.6495 6.35749 17.6495C6.35749 17.6495 5.36137 19.2075 4.93785 21.6946C6.92114 23.1439 9.36321 24.0005 12.0002 24.0005C18.6134 24.0005 24.0005 18.6134 24.0005 12.0002C24.0005 9.82732 23.4199 7.78762 22.4053 6.02738L21.6818 7.44613C22.3364 8.83057 22.7025 10.3769 22.7025 12.006C22.7025 17.9076 17.9018 22.7083 12.0002 22.7083C11.3345 22.7083 10.6959 22.6411 10.0681 22.5264L9.646 22.4493L9.65079 22.0203C9.6923 18.2991 10.7031 15.1964 11.7016 13.0257C11.9527 12.4797 12.2033 11.9921 12.438 11.5677Z\"\n\t\t\t\tfill=\"url(#epicGradient)\"\n\t\t\t/>\n\t\t\t<path\n\t\t\t\td=\"M18.2525 9.31052L15.4992 8.50683L14.6953 5.74778L23.8291 0.171387L18.2525 9.31052Z\"\n\t\t\t\tfill=\"currentColor\"\n\t\t\t/>\n\t\t\t<defs>\n\t\t\t\t<linearGradient\n\t\t\t\t\tid=\"epicGradient\"\n\t\t\t\t\tx1=\"16.9703\"\n\t\t\t\t\ty1=\"7.03022\"\n\t\t\t\t\tx2=\"7.05798\"\n\t\t\t\t\ty2=\"16.948\"\n\t\t\t\t\tgradientUnits=\"userSpaceOnUse\"\n\t\t\t\t>\n\t\t\t\t\t<stop stopColor=\"#4F75FF\" />\n\t\t\t\t\t<stop offset=\"1\" stopColor=\"#30AFFF\" />\n\t\t\t\t</linearGradient>\n\t\t\t</defs>\n\t\t</svg>\n\t)\n}\n"],"names":["EVENTS","CodeReceivedEventSchema","z","object","type","literal","USER_CODE_RECEIVED","code","string","url","AuthResolvedEventSchema","AUTH_RESOLVED","AuthRejectedEventSchema","AUTH_REJECTED","error","optional","default","EventSchema","union","Login","loginFetcher","useFetcher","clickedVerificationLink","setClickedVerificationLink","useState","authError","setAuthError","userCodeInfo","setUserCodeInfo","navigate","useNavigate","revalidator","useRevalidator","lastMessage","useEventSource","useEffect","parsed","JSON","parse","result","safeParse","success","console","flatten","data","revalidate","className","children","jsxs","jsx","Logo","ButtonLink","varient","to","target","rel","onClick","Loading","Form","method","Button","state","status","viewBox","fill","xmlns","d","id","x1","y1","x2","y2","gradientUnits","stopColor","offset"],"mappings":"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"}
1
+ {"version":3,"file":"login-DxG854vQ.js","sources":["../../../app/utils/auth-events.ts","../../../app/routes/login-sse.tsx","../../../app/routes/_app+/login.tsx"],"sourcesContent":["export const EVENTS = {\n\tUSER_CODE_RECEIVED: 'USER_CODE_RECEIVED',\n\tAUTH_RESOLVED: 'AUTH_RESOLVED',\n\tAUTH_REJECTED: 'AUTH_REJECTED',\n} as const\nexport type EventTypes = keyof typeof EVENTS\n","import { type LoaderFunctionArgs } from '@remix-run/node'\nimport { eventStream } from 'remix-utils/sse/server'\nimport { z } from 'zod'\nimport { EVENTS } from '#app/utils/auth-events.ts'\nimport { authEmitter } from '#app/utils/auth.server.ts'\nimport { ensureUndeployed } from '#app/utils/misc.tsx'\n\nconst CodeReceivedEventSchema = z.object({\n\ttype: z.literal(EVENTS.USER_CODE_RECEIVED),\n\tcode: z.string(),\n\turl: z.string(),\n})\nconst AuthResolvedEventSchema = z.object({\n\ttype: z.literal(EVENTS.AUTH_RESOLVED),\n})\nconst AuthRejectedEventSchema = z.object({\n\ttype: z.literal(EVENTS.AUTH_REJECTED),\n\terror: z.string().optional().default('Unknown error'),\n})\nexport const EventSchema = z.union([\n\tCodeReceivedEventSchema,\n\tAuthResolvedEventSchema,\n\tAuthRejectedEventSchema,\n])\n\nexport async function loader({ request }: LoaderFunctionArgs) {\n\tensureUndeployed()\n\treturn eventStream(request.signal, function setup(send) {\n\t\tfunction handleCodeReceived(data: any) {\n\t\t\tsend({\n\t\t\t\tdata: JSON.stringify(\n\t\t\t\t\tCodeReceivedEventSchema.parse({\n\t\t\t\t\t\ttype: EVENTS.USER_CODE_RECEIVED,\n\t\t\t\t\t\t...data,\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t})\n\t\t}\n\t\tfunction handleAuthResolved() {\n\t\t\tsend({ data: JSON.stringify({ type: EVENTS.AUTH_RESOLVED }) })\n\t\t}\n\t\tfunction handleAuthRejected(data: any) {\n\t\t\tconst result = AuthRejectedEventSchema.safeParse(data)\n\t\t\tif (result.success) {\n\t\t\t\tsend({ data: JSON.stringify(result.data) })\n\t\t\t} else {\n\t\t\t\tconsole.error('Error parsing auth rejected event', result.error, data)\n\t\t\t}\n\t\t}\n\t\tauthEmitter.on(EVENTS.USER_CODE_RECEIVED, handleCodeReceived)\n\t\tauthEmitter.on(EVENTS.AUTH_RESOLVED, handleAuthResolved)\n\t\tauthEmitter.on(EVENTS.AUTH_REJECTED, handleAuthRejected)\n\t\treturn () => {\n\t\t\tauthEmitter.off(EVENTS.USER_CODE_RECEIVED, handleCodeReceived)\n\t\t\tauthEmitter.off(EVENTS.AUTH_RESOLVED, handleAuthResolved)\n\t\t\tauthEmitter.off(EVENTS.AUTH_REJECTED, handleAuthRejected)\n\t\t}\n\t})\n}\n","import { getAuthInfo } from '@epic-web/workshop-utils/db.server'\nimport { json, redirect } from '@remix-run/node'\nimport { useFetcher, useNavigate, useRevalidator } from '@remix-run/react'\nimport { useEffect, useState } from 'react'\nimport { useEventSource } from 'remix-utils/sse/react'\nimport { Button, ButtonLink } from '#app/components/button.tsx'\nimport { Loading } from '#app/components/loading.tsx'\nimport { EVENTS } from '#app/utils/auth-events.ts'\nimport { registerDevice } from '#app/utils/auth.server.ts'\nimport { ensureUndeployed } from '#app/utils/misc.tsx'\nimport { EventSchema } from '../login-sse.tsx'\n\nexport async function loader() {\n\tensureUndeployed()\n\tconst isAuthenticated = Boolean(await getAuthInfo())\n\tif (isAuthenticated) throw redirect('/account')\n\treturn json({})\n}\n\nexport async function action() {\n\tensureUndeployed()\n\tvoid registerDevice()\n\treturn json({ status: 'pending' } as const)\n}\n\nexport default function Login() {\n\tconst loginFetcher = useFetcher<typeof action>()\n\tconst [clickedVerificationLink, setClickedVerificationLink] = useState(false)\n\tconst [authError, setAuthError] = useState<null | string>(null)\n\tconst [userCodeInfo, setUserCodeInfo] = useState<null | {\n\t\tcode: string\n\t\turl: string\n\t}>(null)\n\tconst navigate = useNavigate()\n\tconst revalidator = useRevalidator()\n\tconst lastMessage = useEventSource(`/login-sse`)\n\tuseEffect(() => {\n\t\tif (!lastMessage) return\n\n\t\tconst parsed = JSON.parse(lastMessage)\n\t\tconst result = EventSchema.safeParse(parsed)\n\t\tif (!result.success) {\n\t\t\tconsole.error(result.error.flatten())\n\t\t\treturn\n\t\t}\n\t\tswitch (result.data.type) {\n\t\t\tcase EVENTS.USER_CODE_RECEIVED: {\n\t\t\t\tsetUserCodeInfo(result.data)\n\t\t\t\tbreak\n\t\t\t}\n\t\t\tcase EVENTS.AUTH_RESOLVED: {\n\t\t\t\trevalidator.revalidate()\n\t\t\t\tnavigate('/')\n\t\t\t\tbreak\n\t\t\t}\n\t\t\tcase EVENTS.AUTH_REJECTED: {\n\t\t\t\tsetAuthError(result.data.error)\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t}, [lastMessage, navigate, revalidator])\n\n\treturn (\n\t\t<main className=\"flex h-full w-full flex-grow flex-col items-center justify-center p-10 text-center\">\n\t\t\t<div className=\"flex flex-col items-center\">\n\t\t\t\t<Logo className=\"h-16 w-16\" />\n\t\t\t\t<h1 className=\"pt-5 text-2xl font-semibold md:text-3xl\">\n\t\t\t\t\tAuthenticate with EpicWeb.dev\n\t\t\t\t</h1>\n\t\t\t\t<h2 className=\"max-w-sm pt-3 text-base text-gray-700 dark:text-gray-300\">\n\t\t\t\t\tIf you have purchased Epic Web, you'll be able to watch videos, track\n\t\t\t\t\tprogress, and more!\n\t\t\t\t</h2>\n\t\t\t\t<div className=\"flex w-full flex-col items-center pt-5\">\n\t\t\t\t\t{userCodeInfo ? (\n\t\t\t\t\t\t<div className=\"flex w-full flex-col items-center gap-3\">\n\t\t\t\t\t\t\t<div className=\"my-2 flex w-full flex-col items-center gap-2\">\n\t\t\t\t\t\t\t\t<p className=\"text-lg\">Your verification code is: </p>\n\t\t\t\t\t\t\t\t<div className=\"mb-3 w-full bg-gray-100 px-5 py-3 text-lg font-bold dark:bg-black/40\">\n\t\t\t\t\t\t\t\t\t<code>{userCodeInfo.code}</code>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<ButtonLink\n\t\t\t\t\t\t\t\tvarient=\"primary\"\n\t\t\t\t\t\t\t\tto={userCodeInfo.url}\n\t\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\t\trel=\"noreferrer\"\n\t\t\t\t\t\t\t\tonClick={() => setClickedVerificationLink(true)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tContinue\n\t\t\t\t\t\t\t</ButtonLink>\n\t\t\t\t\t\t\t{clickedVerificationLink ? (\n\t\t\t\t\t\t\t\t<div className=\"pt-5 opacity-60\">\n\t\t\t\t\t\t\t\t\t<Loading>Waiting for confirmation</Loading>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<loginFetcher.Form method=\"POST\">\n\t\t\t\t\t\t\t<Button varient=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t\t{loginFetcher.state === 'idle' &&\n\t\t\t\t\t\t\t\tloginFetcher.data?.status !== 'pending'\n\t\t\t\t\t\t\t\t\t? `Retrieve Code`\n\t\t\t\t\t\t\t\t\t: `Retrieving Code...`}\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</loginFetcher.Form>\n\t\t\t\t\t)}\n\t\t\t\t\t{authError ? (\n\t\t\t\t\t\t<div className=\"mt-4 text-red-500\">\n\t\t\t\t\t\t\tThere was an error: <pre>{authError}</pre>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : null}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</main>\n\t)\n}\n\nfunction Logo({ className = '' }) {\n\t// svg sprites do not support gradients\n\treturn (\n\t\t<svg\n\t\t\tclassName={className}\n\t\t\tviewBox=\"0 0 24 24\"\n\t\t\tfill=\"none\"\n\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\taria-hidden=\"true\"\n\t\t>\n\t\t\t<path\n\t\t\t\td=\"M12.438 11.5677C12.0131 11.8026 11.5249 12.0534 10.9784 12.3047C8.80704 13.3031 5.70429 14.314 1.986 14.3555L1.55773 14.3603L1.48003 13.9391C1.36509 13.316 1.29793 12.6714 1.29793 12.006C1.29793 6.10441 6.09863 1.30372 12.0002 1.30372C13.6287 1.30372 15.1745 1.66961 16.5585 2.32369L17.9801 1.59897C16.2189 0.582162 14.1769 0 12.0002 0C5.38709 0 0 5.38709 0 12.0002C0 14.6402 0.858474 17.0847 2.31072 19.0692C4.79741 18.6457 6.35749 17.6495 6.35749 17.6495C6.35749 17.6495 5.36137 19.2075 4.93785 21.6946C6.92114 23.1439 9.36321 24.0005 12.0002 24.0005C18.6134 24.0005 24.0005 18.6134 24.0005 12.0002C24.0005 9.82732 23.4199 7.78762 22.4053 6.02738L21.6818 7.44613C22.3364 8.83057 22.7025 10.3769 22.7025 12.006C22.7025 17.9076 17.9018 22.7083 12.0002 22.7083C11.3345 22.7083 10.6959 22.6411 10.0681 22.5264L9.646 22.4493L9.65079 22.0203C9.6923 18.2991 10.7031 15.1964 11.7016 13.0257C11.9527 12.4797 12.2033 11.9921 12.438 11.5677Z\"\n\t\t\t\tfill=\"url(#epicGradient)\"\n\t\t\t/>\n\t\t\t<path\n\t\t\t\td=\"M18.2525 9.31052L15.4992 8.50683L14.6953 5.74778L23.8291 0.171387L18.2525 9.31052Z\"\n\t\t\t\tfill=\"currentColor\"\n\t\t\t/>\n\t\t\t<defs>\n\t\t\t\t<linearGradient\n\t\t\t\t\tid=\"epicGradient\"\n\t\t\t\t\tx1=\"16.9703\"\n\t\t\t\t\ty1=\"7.03022\"\n\t\t\t\t\tx2=\"7.05798\"\n\t\t\t\t\ty2=\"16.948\"\n\t\t\t\t\tgradientUnits=\"userSpaceOnUse\"\n\t\t\t\t>\n\t\t\t\t\t<stop stopColor=\"#4F75FF\" />\n\t\t\t\t\t<stop offset=\"1\" stopColor=\"#30AFFF\" />\n\t\t\t\t</linearGradient>\n\t\t\t</defs>\n\t\t</svg>\n\t)\n}\n"],"names":["EVENTS","CodeReceivedEventSchema","z","object","type","literal","USER_CODE_RECEIVED","code","string","url","AuthResolvedEventSchema","AUTH_RESOLVED","AuthRejectedEventSchema","AUTH_REJECTED","error","optional","default","EventSchema","union","Login","loginFetcher","useFetcher","clickedVerificationLink","setClickedVerificationLink","useState","authError","setAuthError","userCodeInfo","setUserCodeInfo","navigate","useNavigate","revalidator","useRevalidator","lastMessage","useEventSource","useEffect","parsed","JSON","parse","result","safeParse","success","console","flatten","data","revalidate","className","children","jsxs","jsx","Logo","ButtonLink","varient","to","target","rel","onClick","Loading","Form","method","Button","state","status","viewBox","fill","xmlns","d","id","x1","y1","x2","y2","gradientUnits","stopColor","offset"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ window.__remixManifest={"entry":{"module":"/assets/entry.client-B0vV2fsa.js","imports":["/assets/index-Czg1ruVn.js","/assets/components-BMzmvxYw.js"],"css":[]},"routes":{"root":{"id":"root","path":"","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":true,"module":"/assets/root-bgHbi7rA.js","imports":["/assets/index-Czg1ruVn.js","/assets/components-BMzmvxYw.js","/assets/clsx-B-dksMZM.js","/assets/misc-CypjEQkt.js","/assets/request-info-CUT0ULYN.js","/assets/tooltip-CfmIzAYi.js","/assets/client-hints-BE5mB4r0.js","/assets/error-boundary-DxfVshQ5.js","/assets/progress-bar-DCrt7X4t.js","/assets/index-Doi37489.js","/assets/index-90bzTYUX.js","/assets/presence-DXXVJbaH.js","/assets/seo-Bu3_n5my.js"],"css":[]},"routes/$":{"id":"routes/$","parentId":"root","path":"*","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":true,"module":"/assets/_-Bd2gNcck.js","imports":["/assets/index-Czg1ruVn.js","/assets/clsx-B-dksMZM.js","/assets/components-BMzmvxYw.js","/assets/misc-CypjEQkt.js","/assets/error-boundary-DxfVshQ5.js"],"css":[]},"routes/_app+/_layout":{"id":"routes/_app+/_layout","parentId":"root","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/_layout-DHBLG7Ti.js","imports":["/assets/index-Czg1ruVn.js","/assets/clsx-B-dksMZM.js","/assets/components-BMzmvxYw.js","/assets/misc-CypjEQkt.js","/assets/tooltip-CfmIzAYi.js","/assets/request-info-CUT0ULYN.js","/assets/client-hints-BE5mB4r0.js","/assets/index-4E9_Sx3m.js","/assets/user-C4QTtQw5.js","/assets/presence-DXXVJbaH.js","/assets/progress-B_mReZVE.js","/assets/index-90bzTYUX.js"],"css":[]},"routes/_app+/_exercises+/_layout":{"id":"routes/_app+/_exercises+/_layout","parentId":"routes/_app+/_layout","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/_layout-DaZNLfOL.js","imports":["/assets/index-Czg1ruVn.js"],"css":[]},"routes/_app+/_exercises+/$exerciseNumber":{"id":"routes/_app+/_exercises+/$exerciseNumber","parentId":"routes/_app+/_exercises+/_layout","path":":exerciseNumber","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":true,"module":"/assets/_exerciseNumber-CFOo2dQj.js","imports":["/assets/index-Czg1ruVn.js","/assets/components-BMzmvxYw.js","/assets/clsx-B-dksMZM.js","/assets/misc-CypjEQkt.js","/assets/request-info-CUT0ULYN.js","/assets/tooltip-CfmIzAYi.js","/assets/client-hints-BE5mB4r0.js","/assets/index-90bzTYUX.js","/assets/loading-CNWJVymJ.js","/assets/epic-video-CYnG2ziQ.js","/assets/progress-bar-DCrt7X4t.js","/assets/index-D6ukHE4T.js","/assets/mdx-CR7Me1v_.js","/assets/progress-B_mReZVE.js","/assets/seo-Bu3_n5my.js"],"css":["/assets/epic-video-DUnRvy1A.css"]},"routes/_app+/_exercises+/$exerciseNumber_.$stepNumber":{"id":"routes/_app+/_exercises+/$exerciseNumber_.$stepNumber","parentId":"routes/_app+/_exercises+/_layout","path":":exerciseNumber/:stepNumber","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":true,"module":"/assets/_exerciseNumber_._stepNumber-DCbWNWpZ.js","imports":["/assets/index-Czg1ruVn.js","/assets/clsx-B-dksMZM.js","/assets/components-BMzmvxYw.js","/assets/misc-CypjEQkt.js"],"css":[]},"routes/_app+/_exercises+/$exerciseNumber_.$stepNumber.$type+/_layout":{"id":"routes/_app+/_exercises+/$exerciseNumber_.$stepNumber.$type+/_layout","parentId":"routes/_app+/_exercises+/$exerciseNumber_.$stepNumber","path":":type","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":true,"module":"/assets/_layout-Bdd3mpVx.js","imports":["/assets/index-Czg1ruVn.js","/assets/clsx-B-dksMZM.js","/assets/components-BMzmvxYw.js","/assets/misc-CypjEQkt.js","/assets/tooltip-CfmIzAYi.js","/assets/request-info-CUT0ULYN.js","/assets/client-hints-BE5mB4r0.js","/assets/index-90bzTYUX.js","/assets/loading-CNWJVymJ.js","/assets/epic-video-CYnG2ziQ.js","/assets/progress-bar-DCrt7X4t.js","/assets/index-4E9_Sx3m.js","/assets/mdx-CR7Me1v_.js","/assets/user-C4QTtQw5.js","/assets/index-D6ukHE4T.js","/assets/diff-P5f7-8E4.js","/assets/error-boundary-DxfVshQ5.js","/assets/nav-chevrons-BYKwyIgG.js","/assets/progress-B_mReZVE.js","/assets/seo-Bu3_n5my.js","/assets/discord-COPE8EOZ.js","/assets/index-Doi37489.js","/assets/button-CyZl24U2.js","/assets/use-event-source-ySol3hbz.js"],"css":["/assets/epic-video-DUnRvy1A.css"]},"routes/_app+/_exercises+/$exerciseNumber_.$stepNumber.index":{"id":"routes/_app+/_exercises+/$exerciseNumber_.$stepNumber.index","parentId":"routes/_app+/_exercises+/$exerciseNumber_.$stepNumber","index":true,"hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/_exerciseNumber_._stepNumber.index-l0sNRNKZ.js","imports":[],"css":[]},"routes/_app+/_exercises+/$exerciseNumber_.finished":{"id":"routes/_app+/_exercises+/$exerciseNumber_.finished","parentId":"routes/_app+/_exercises+/_layout","path":":exerciseNumber/finished","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/_exerciseNumber_.finished-P7xMAtl1.js","imports":["/assets/index-Czg1ruVn.js","/assets/components-BMzmvxYw.js","/assets/clsx-B-dksMZM.js","/assets/misc-CypjEQkt.js","/assets/request-info-CUT0ULYN.js","/assets/tooltip-CfmIzAYi.js","/assets/client-hints-BE5mB4r0.js","/assets/index-90bzTYUX.js","/assets/loading-CNWJVymJ.js","/assets/epic-video-CYnG2ziQ.js","/assets/progress-bar-DCrt7X4t.js","/assets/index-D6ukHE4T.js","/assets/nav-chevrons-BYKwyIgG.js","/assets/mdx-CR7Me1v_.js","/assets/progress-B_mReZVE.js","/assets/seo-Bu3_n5my.js"],"css":["/assets/epic-video-DUnRvy1A.css"]},"routes/_app+/account":{"id":"routes/_app+/account","parentId":"routes/_app+/_layout","path":"account","hasAction":true,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/account-CnLkZd_O.js","imports":["/assets/index-Czg1ruVn.js","/assets/clsx-B-dksMZM.js","/assets/components-BMzmvxYw.js","/assets/request-info-CUT0ULYN.js","/assets/button-CyZl24U2.js","/assets/misc-CypjEQkt.js","/assets/user-C4QTtQw5.js","/assets/presence-DXXVJbaH.js"],"css":[]},"routes/_app+/app.$appName+/$":{"id":"routes/_app+/app.$appName+/$","parentId":"routes/_app+/_layout","path":"app/:appName/*","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/_-l0sNRNKZ.js","imports":[],"css":[]},"routes/_app+/app.$appName+/api.$":{"id":"routes/_app+/app.$appName+/api.$","parentId":"routes/_app+/_layout","path":"app/:appName/api/*","hasAction":true,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/api._-l0sNRNKZ.js","imports":[],"css":[]},"routes/_app+/app.$appName+/epic_ws[.js]":{"id":"routes/_app+/app.$appName+/epic_ws[.js]","parentId":"routes/_app+/_layout","path":"app/:appName/epic_ws.js","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/epic_ws_.js_-l0sNRNKZ.js","imports":[],"css":[]},"routes/_app+/app.$appName+/index":{"id":"routes/_app+/app.$appName+/index","parentId":"routes/_app+/_layout","path":"app/:appName/","index":true,"hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/index-l0sNRNKZ.js","imports":[],"css":[]},"routes/_app+/app.$appName+/test.$testName":{"id":"routes/_app+/app.$appName+/test.$testName","parentId":"routes/_app+/_layout","path":"app/:appName/test/:testName","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/test._testName-l0sNRNKZ.js","imports":[],"css":[]},"routes/_app+/discord":{"id":"routes/_app+/discord","parentId":"routes/_app+/_layout","path":"discord","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/discord-DIog7bBO.js","imports":["/assets/index-Czg1ruVn.js","/assets/clsx-B-dksMZM.js","/assets/components-BMzmvxYw.js","/assets/misc-CypjEQkt.js","/assets/user-C4QTtQw5.js","/assets/discord-COPE8EOZ.js"],"css":[]},"routes/_app+/finished":{"id":"routes/_app+/finished","parentId":"routes/_app+/_layout","path":"finished","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/finished-DP5ynR5u.js","imports":["/assets/index-Czg1ruVn.js","/assets/components-BMzmvxYw.js","/assets/clsx-B-dksMZM.js","/assets/misc-CypjEQkt.js","/assets/request-info-CUT0ULYN.js","/assets/tooltip-CfmIzAYi.js","/assets/client-hints-BE5mB4r0.js","/assets/index-90bzTYUX.js","/assets/loading-CNWJVymJ.js","/assets/epic-video-CYnG2ziQ.js","/assets/progress-bar-DCrt7X4t.js","/assets/index-D6ukHE4T.js","/assets/nav-chevrons-BYKwyIgG.js","/assets/mdx-CR7Me1v_.js","/assets/seo-Bu3_n5my.js","/assets/progress-B_mReZVE.js"],"css":["/assets/epic-video-DUnRvy1A.css"]},"routes/_app+/index":{"id":"routes/_app+/index","parentId":"routes/_app+/_layout","index":true,"hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":true,"module":"/assets/index-BXefr1BB.js","imports":["/assets/index-Czg1ruVn.js","/assets/components-BMzmvxYw.js","/assets/clsx-B-dksMZM.js","/assets/misc-CypjEQkt.js","/assets/request-info-CUT0ULYN.js","/assets/tooltip-CfmIzAYi.js","/assets/client-hints-BE5mB4r0.js","/assets/index-90bzTYUX.js","/assets/loading-CNWJVymJ.js","/assets/epic-video-CYnG2ziQ.js","/assets/progress-bar-DCrt7X4t.js","/assets/index-D6ukHE4T.js","/assets/error-boundary-DxfVshQ5.js","/assets/mdx-CR7Me1v_.js","/assets/progress-B_mReZVE.js"],"css":["/assets/epic-video-DUnRvy1A.css"]},"routes/_app+/login":{"id":"routes/_app+/login","parentId":"routes/_app+/_layout","path":"login","hasAction":true,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/login-DxG854vQ.js","imports":["/assets/index-Czg1ruVn.js","/assets/clsx-B-dksMZM.js","/assets/components-BMzmvxYw.js","/assets/request-info-CUT0ULYN.js","/assets/client-hints-BE5mB4r0.js","/assets/use-event-source-ySol3hbz.js","/assets/button-CyZl24U2.js","/assets/loading-CNWJVymJ.js"],"css":[]},"routes/_app+/support":{"id":"routes/_app+/support","parentId":"routes/_app+/_layout","path":"support","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/support-DrY-qRGh.js","imports":["/assets/index-Czg1ruVn.js","/assets/components-BMzmvxYw.js"],"css":[]},"routes/admin+/_layout":{"id":"routes/admin+/_layout","parentId":"root","path":"admin","hasAction":true,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/_layout-rEQoj43V.js","imports":["/assets/index-Czg1ruVn.js","/assets/clsx-B-dksMZM.js","/assets/components-BMzmvxYw.js","/assets/misc-CypjEQkt.js","/assets/tooltip-CfmIzAYi.js","/assets/progress-B_mReZVE.js"],"css":[]},"routes/admin+/apps":{"id":"routes/admin+/apps","parentId":"routes/admin+/_layout","path":"apps","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/apps-l0sNRNKZ.js","imports":[],"css":[]},"routes/apps":{"id":"routes/apps","parentId":"root","path":"apps","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/apps-DP2rzg_V.js","imports":[],"css":[]},"routes/diff":{"id":"routes/diff","parentId":"root","path":"diff","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/diff-PfwTHr6-.js","imports":["/assets/index-Czg1ruVn.js","/assets/clsx-B-dksMZM.js","/assets/components-BMzmvxYw.js","/assets/misc-CypjEQkt.js","/assets/tooltip-CfmIzAYi.js","/assets/request-info-CUT0ULYN.js","/assets/client-hints-BE5mB4r0.js","/assets/index-90bzTYUX.js","/assets/loading-CNWJVymJ.js","/assets/epic-video-CYnG2ziQ.js","/assets/progress-bar-DCrt7X4t.js","/assets/index-4E9_Sx3m.js","/assets/mdx-CR7Me1v_.js","/assets/diff-P5f7-8E4.js","/assets/nav-chevrons-BYKwyIgG.js"],"css":["/assets/epic-video-DUnRvy1A.css"]},"routes/discord.callback":{"id":"routes/discord.callback","parentId":"root","path":"discord/callback","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","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/exercises-l0sNRNKZ.js","imports":[],"css":[]},"routes/launch-editor":{"id":"routes/launch-editor","parentId":"root","path":"launch-editor","hasAction":true,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/launch-editor-l0sNRNKZ.js","imports":[],"css":[]},"routes/login-sse":{"id":"routes/login-sse","parentId":"root","path":"login-sse","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/login-sse-l0sNRNKZ.js","imports":[],"css":[]},"routes/og":{"id":"routes/og","parentId":"root","path":"og","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/og-l0sNRNKZ.js","imports":[],"css":[]},"routes/onboarding":{"id":"routes/onboarding","parentId":"root","path":"onboarding","hasAction":true,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/onboarding-b9lcdh4n.js","imports":["/assets/index-Czg1ruVn.js","/assets/clsx-B-dksMZM.js","/assets/components-BMzmvxYw.js","/assets/misc-CypjEQkt.js","/assets/request-info-CUT0ULYN.js","/assets/tooltip-CfmIzAYi.js","/assets/client-hints-BE5mB4r0.js","/assets/index-90bzTYUX.js","/assets/loading-CNWJVymJ.js","/assets/button-CyZl24U2.js","/assets/epic-video-CYnG2ziQ.js"],"css":["/assets/epic-video-DUnRvy1A.css"]},"routes/processes":{"id":"routes/processes","parentId":"root","path":"processes","hasAction":false,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/processes-l0sNRNKZ.js","imports":[],"css":[]},"routes/progress":{"id":"routes/progress","parentId":"root","path":"progress","hasAction":true,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/progress-l0sNRNKZ.js","imports":[],"css":[]},"routes/set-playground":{"id":"routes/set-playground","parentId":"root","path":"set-playground","hasAction":true,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/set-playground-l0sNRNKZ.js","imports":[],"css":[]},"routes/start":{"id":"routes/start","parentId":"root","path":"start","hasAction":true,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/start-l0sNRNKZ.js","imports":[],"css":[]},"routes/test":{"id":"routes/test","parentId":"root","path":"test","hasAction":true,"hasLoader":true,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/test-l0sNRNKZ.js","imports":[],"css":[]},"routes/theme/index":{"id":"routes/theme/index","parentId":"root","path":"theme","hasAction":true,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/index-K6Dvbx-E.js","imports":[],"css":[]},"routes/update-mdx-cache":{"id":"routes/update-mdx-cache","parentId":"root","path":"update-mdx-cache","hasAction":true,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/update-mdx-cache-l0sNRNKZ.js","imports":[],"css":[]},"routes/video-player/index":{"id":"routes/video-player/index","parentId":"root","path":"video-player","hasAction":true,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasErrorBoundary":false,"module":"/assets/index-DP2rzg_V.js","imports":[],"css":[]}},"url":"/assets/manifest-805aa13a.js","version":"805aa13a"};
@@ -0,0 +1,2 @@
1
+ var Qt=Object.defineProperty;var Lt=n=>{throw TypeError(n)};var te=(n,e,i)=>e in n?Qt(n,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):n[e]=i;var O=(n,e,i)=>te(n,typeof e!="symbol"?e+"":e,i),xt=(n,e,i)=>e.has(n)||Lt("Cannot "+i);var t=(n,e,i)=>(xt(n,e,"read from private field"),i?i.call(n):e.get(n)),b=(n,e,i)=>e.has(n)?Lt("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(n):e.set(n,i),f=(n,e,i,s)=>(xt(n,e,"write to private field"),s?s.call(n,i):e.set(n,i),i),u=(n,e,i)=>(xt(n,e,"access private method"),i);var mt=(n,e,i,s)=>({set _(o){f(n,e,o,i)},get _(){return t(n,e,s)}});import{j as p,r as at}from"./index-Czg1ruVn.js";import{c as St}from"./clsx-B-dksMZM.js";import{b as ee,L as kt,a as ie,r as se,u as ne}from"./components-BMzmvxYw.js";import{V as re,D as oe}from"./epic-video-CYnG2ziQ.js";import{I as ae,c as he,H as ht,A as le}from"./misc-CypjEQkt.js";import{s as ce}from"./progress-bar-DCrt7X4t.js";import{S as ue}from"./tooltip-CfmIzAYi.js";import{u as fe}from"./request-info-CUT0ULYN.js";function de(){const n=ee("root");if(!n)throw new Error("useApps requires a data object from the root loader");return n.apps}function Ut(n){const e=ie();return at.useEffect(()=>{e.state==="idle"&&e.data!=null&&(n==null||n("fetcher-done"))},[e,n]),e}function pe({file:n,appFile:e,appName:i,syncTo:s,line:o,column:r,children:a,onUpdate:h}){var W;const c=Ut(h),m=typeof e=="string"?[e]:e,F=n?"file":e?"appFile":"",w=s!=null&&s.file?"file":s!=null&&s.appFile?"appFile":"";return p.jsxs(c.Form,{action:"/launch-editor",method:"POST",className:"flex items-center",children:[ce,p.jsx("input",{type:"hidden",name:"line",value:o}),p.jsx("input",{type:"hidden",name:"column",value:r}),p.jsx("input",{type:"hidden",name:"type",value:F}),p.jsx("input",{type:"hidden",name:"file",value:n}),p.jsx("input",{type:"hidden",name:"appName",value:i}),m==null?void 0:m.map(_=>p.jsx("input",{type:"hidden",name:"appFile",value:_},_)),s?p.jsxs(p.Fragment,{children:[p.jsx("input",{type:"hidden",name:"syncTo.type",value:w}),p.jsx("input",{type:"hidden",name:"syncTo.file",value:s.file}),p.jsx("input",{type:"hidden",name:"syncTo.appName",value:s.appName}),p.jsx("input",{type:"hidden",name:"syncTo.appFile",value:s.appFile})]}):null,p.jsx("button",{type:"submit",className:St("launch_button",c.state==="idle"?null:"cursor-progress",((W=c.data)==null?void 0:W.status)==="error"?"cursor-not-allowed":null),children:a})]})}function ge({file:n,appFile:e,appName:i,line:s,children:o}){const r=de(),a=fe();if(Array.isArray(e))return p.jsx("div",{children:"Cannot open more than one file"});if(n){const m=F=>F.replace(/\\/g,"/");return p.jsx("a",{className:"launch_button !no-underline",href:m(n).replace(m(ENV.EPICSHOP_CONTEXT_CWD),ENV.EPICSHOP_GITHUB_ROOT)+(s?`#L${s}`:""),rel:"noreferrer",target:"_blank",children:o})}const h=r.find(m=>m.name===i),c=[...(h==null?void 0:h.relativePath.split(a.separator))??[],e+(s?`#L${s}`:"")].join("/");return p.jsx("a",{className:"launch_button !no-underline",href:`${ENV.EPICSHOP_GITHUB_ROOT}/${c}`,rel:"noreferrer",target:"_blank",children:o})}function Le({appFile:n="README.mdx",appName:e,file:i,relativePath:s}){const o=Ut(),r=h=>{if(!h.altKey||ENV.EPICSHOP_DEPLOYED)return;h.preventDefault();const c=new FormData,m=i?"file":"appFile";c.append(m,i??n),c.append("type",m),e&&c.append("appName",e),o.submit(c,{method:"POST",action:"/launch-editor"})},a=ENV.EPICSHOP_GITHUB_ROOT.replace(/\/tree\/|\/blob\//,"/edit/");return p.jsxs(kt,{className:"self-center font-mono text-sm",onClick:r,target:"_blank",to:`${a}/${s}/${n}`.replace(/\\/g,"/"),children:[p.jsx("span",{className:"block md:hidden",children:"Edit on GitHub"}),p.jsx("span",{className:"hidden md:block",children:"Edit this page on GitHub"})]})}const Vt=ENV.EPICSHOP_DEPLOYED?ENV.EPICSHOP_GITHUB_ROOT?ge:({children:n})=>p.jsx(ue,{content:"Cannot open files in deployed app",children:p.jsx("button",{className:"launch_button cursor-not-allowed",children:n})}):pe,lt=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,Bt=new Set,At=typeof process=="object"&&process?process:{},$t=(n,e,i,s)=>{typeof At.emitWarning=="function"?At.emitWarning(n,e,i,s):console.error(`[${i}] ${e}: ${n}`)};let yt=globalThis.AbortController,It=globalThis.AbortSignal;var Mt;if(typeof yt>"u"){It=class{constructor(){O(this,"onabort");O(this,"_onabort",[]);O(this,"reason");O(this,"aborted",!1)}addEventListener(s,o){this._onabort.push(o)}},yt=class{constructor(){O(this,"signal",new It);e()}abort(s){var o,r;if(!this.signal.aborted){this.signal.reason=s,this.signal.aborted=!0;for(const a of this.signal._onabort)a(s);(r=(o=this.signal).onabort)==null||r.call(o,s)}}};let n=((Mt=At.env)==null?void 0:Mt.LRU_CACHE_IGNORE_AC_WARNING)!=="1";const e=()=>{n&&(n=!1,$t("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e))}}const me=n=>!Bt.has(n),Q=n=>n&&n===Math.floor(n)&&n>0&&isFinite(n),qt=n=>Q(n)?n<=Math.pow(2,8)?Uint8Array:n<=Math.pow(2,16)?Uint16Array:n<=Math.pow(2,32)?Uint32Array:n<=Number.MAX_SAFE_INTEGER?bt:null:null;class bt extends Array{constructor(e){super(e),this.fill(0)}}var ct;const nt=class nt{constructor(e,i){O(this,"heap");O(this,"length");if(!t(nt,ct))throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new i(e),this.length=0}static create(e){const i=qt(e);if(!i)return[];f(nt,ct,!0);const s=new nt(e,i);return f(nt,ct,!1),s}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}};ct=new WeakMap,b(nt,ct,!1);let Ft=nt;var Gt,Ht,U,I,V,B,ut,A,$,v,E,g,N,M,z,C,q,T,X,Y,G,K,it,R,l,Ct,rt,Z,pt,H,Xt,ot,ft,gt,tt,et,Tt,wt,_t,S,Dt,dt;const Nt=class Nt{constructor(e){b(this,l);b(this,U);b(this,I);b(this,V);b(this,B);b(this,ut);O(this,"ttl");O(this,"ttlResolution");O(this,"ttlAutopurge");O(this,"updateAgeOnGet");O(this,"updateAgeOnHas");O(this,"allowStale");O(this,"noDisposeOnSet");O(this,"noUpdateTTL");O(this,"maxEntrySize");O(this,"sizeCalculation");O(this,"noDeleteOnFetchRejection");O(this,"noDeleteOnStaleGet");O(this,"allowStaleOnFetchAbort");O(this,"allowStaleOnFetchRejection");O(this,"ignoreFetchAbort");b(this,A);b(this,$);b(this,v);b(this,E);b(this,g);b(this,N);b(this,M);b(this,z);b(this,C);b(this,q);b(this,T);b(this,X);b(this,Y);b(this,G);b(this,K);b(this,it);b(this,R);b(this,rt,()=>{});b(this,Z,()=>{});b(this,pt,()=>{});b(this,H,()=>!1);b(this,ot,e=>{});b(this,ft,(e,i,s)=>{});b(this,gt,(e,i,s,o)=>{if(s||o)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0});O(this,Gt,"LRUCache");const{max:i=0,ttl:s,ttlResolution:o=1,ttlAutopurge:r,updateAgeOnGet:a,updateAgeOnHas:h,allowStale:c,dispose:m,disposeAfter:F,noDisposeOnSet:w,noUpdateTTL:W,maxSize:_=0,maxEntrySize:P=0,sizeCalculation:x,fetchMethod:j,noDeleteOnFetchRejection:d,noDeleteOnStaleGet:y,allowStaleOnFetchRejection:L,allowStaleOnFetchAbort:D,ignoreFetchAbort:k}=e;if(i!==0&&!Q(i))throw new TypeError("max option must be a nonnegative integer");const st=i?qt(i):Array;if(!st)throw new Error("invalid max value: "+i);if(f(this,U,i),f(this,I,_),this.maxEntrySize=P||t(this,I),this.sizeCalculation=x,this.sizeCalculation){if(!t(this,I)&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(j!==void 0&&typeof j!="function")throw new TypeError("fetchMethod must be a function if specified");if(f(this,ut,j),f(this,it,!!j),f(this,v,new Map),f(this,E,new Array(i).fill(void 0)),f(this,g,new Array(i).fill(void 0)),f(this,N,new st(i)),f(this,M,new st(i)),f(this,z,0),f(this,C,0),f(this,q,Ft.create(i)),f(this,A,0),f(this,$,0),typeof m=="function"&&f(this,V,m),typeof F=="function"?(f(this,B,F),f(this,T,[])):(f(this,B,void 0),f(this,T,void 0)),f(this,K,!!t(this,V)),f(this,R,!!t(this,B)),this.noDisposeOnSet=!!w,this.noUpdateTTL=!!W,this.noDeleteOnFetchRejection=!!d,this.allowStaleOnFetchRejection=!!L,this.allowStaleOnFetchAbort=!!D,this.ignoreFetchAbort=!!k,this.maxEntrySize!==0){if(t(this,I)!==0&&!Q(t(this,I)))throw new TypeError("maxSize must be a positive integer if specified");if(!Q(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");u(this,l,Xt).call(this)}if(this.allowStale=!!c,this.noDeleteOnStaleGet=!!y,this.updateAgeOnGet=!!a,this.updateAgeOnHas=!!h,this.ttlResolution=Q(o)||o===0?o:1,this.ttlAutopurge=!!r,this.ttl=s||0,this.ttl){if(!Q(this.ttl))throw new TypeError("ttl must be a positive integer if specified");u(this,l,Ct).call(this)}if(t(this,U)===0&&this.ttl===0&&t(this,I)===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!t(this,U)&&!t(this,I)){const J="LRU_CACHE_UNBOUNDED";me(J)&&(Bt.add(J),$t("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",J,Nt))}}static unsafeExposeInternals(e){return{starts:t(e,Y),ttls:t(e,G),sizes:t(e,X),keyMap:t(e,v),keyList:t(e,E),valList:t(e,g),next:t(e,N),prev:t(e,M),get head(){return t(e,z)},get tail(){return t(e,C)},free:t(e,q),isBackgroundFetch:i=>{var s;return u(s=e,l,S).call(s,i)},backgroundFetch:(i,s,o,r)=>{var a;return u(a=e,l,_t).call(a,i,s,o,r)},moveToTail:i=>{var s;return u(s=e,l,dt).call(s,i)},indexes:i=>{var s;return u(s=e,l,tt).call(s,i)},rindexes:i=>{var s;return u(s=e,l,et).call(s,i)},isStale:i=>{var s;return t(s=e,H).call(s,i)}}}get max(){return t(this,U)}get maxSize(){return t(this,I)}get calculatedSize(){return t(this,$)}get size(){return t(this,A)}get fetchMethod(){return t(this,ut)}get dispose(){return t(this,V)}get disposeAfter(){return t(this,B)}getRemainingTTL(e){return t(this,v).has(e)?1/0:0}*entries(){for(const e of u(this,l,tt).call(this))t(this,g)[e]!==void 0&&t(this,E)[e]!==void 0&&!u(this,l,S).call(this,t(this,g)[e])&&(yield[t(this,E)[e],t(this,g)[e]])}*rentries(){for(const e of u(this,l,et).call(this))t(this,g)[e]!==void 0&&t(this,E)[e]!==void 0&&!u(this,l,S).call(this,t(this,g)[e])&&(yield[t(this,E)[e],t(this,g)[e]])}*keys(){for(const e of u(this,l,tt).call(this)){const i=t(this,E)[e];i!==void 0&&!u(this,l,S).call(this,t(this,g)[e])&&(yield i)}}*rkeys(){for(const e of u(this,l,et).call(this)){const i=t(this,E)[e];i!==void 0&&!u(this,l,S).call(this,t(this,g)[e])&&(yield i)}}*values(){for(const e of u(this,l,tt).call(this))t(this,g)[e]!==void 0&&!u(this,l,S).call(this,t(this,g)[e])&&(yield t(this,g)[e])}*rvalues(){for(const e of u(this,l,et).call(this))t(this,g)[e]!==void 0&&!u(this,l,S).call(this,t(this,g)[e])&&(yield t(this,g)[e])}[(Ht=Symbol.iterator,Gt=Symbol.toStringTag,Ht)](){return this.entries()}find(e,i={}){for(const s of u(this,l,tt).call(this)){const o=t(this,g)[s],r=u(this,l,S).call(this,o)?o.__staleWhileFetching:o;if(r!==void 0&&e(r,t(this,E)[s],this))return this.get(t(this,E)[s],i)}}forEach(e,i=this){for(const s of u(this,l,tt).call(this)){const o=t(this,g)[s],r=u(this,l,S).call(this,o)?o.__staleWhileFetching:o;r!==void 0&&e.call(i,r,t(this,E)[s],this)}}rforEach(e,i=this){for(const s of u(this,l,et).call(this)){const o=t(this,g)[s],r=u(this,l,S).call(this,o)?o.__staleWhileFetching:o;r!==void 0&&e.call(i,r,t(this,E)[s],this)}}purgeStale(){let e=!1;for(const i of u(this,l,et).call(this,{allowStale:!0}))t(this,H).call(this,i)&&(this.delete(t(this,E)[i]),e=!0);return e}info(e){const i=t(this,v).get(e);if(i===void 0)return;const s=t(this,g)[i],o=u(this,l,S).call(this,s)?s.__staleWhileFetching:s;if(o===void 0)return;const r={value:o};if(t(this,G)&&t(this,Y)){const a=t(this,G)[i],h=t(this,Y)[i];if(a&&h){const c=a-(lt.now()-h);r.ttl=c,r.start=Date.now()}}return t(this,X)&&(r.size=t(this,X)[i]),r}dump(){const e=[];for(const i of u(this,l,tt).call(this,{allowStale:!0})){const s=t(this,E)[i],o=t(this,g)[i],r=u(this,l,S).call(this,o)?o.__staleWhileFetching:o;if(r===void 0||s===void 0)continue;const a={value:r};if(t(this,G)&&t(this,Y)){a.ttl=t(this,G)[i];const h=lt.now()-t(this,Y)[i];a.start=Math.floor(Date.now()-h)}t(this,X)&&(a.size=t(this,X)[i]),e.unshift([s,a])}return e}load(e){this.clear();for(const[i,s]of e){if(s.start){const o=Date.now()-s.start;s.start=lt.now()-o}this.set(i,s.value,s)}}set(e,i,s={}){var W,_,P,x,j;if(i===void 0)return this.delete(e),this;const{ttl:o=this.ttl,start:r,noDisposeOnSet:a=this.noDisposeOnSet,sizeCalculation:h=this.sizeCalculation,status:c}=s;let{noUpdateTTL:m=this.noUpdateTTL}=s;const F=t(this,gt).call(this,e,i,s.size||0,h);if(this.maxEntrySize&&F>this.maxEntrySize)return c&&(c.set="miss",c.maxEntrySizeExceeded=!0),this.delete(e),this;let w=t(this,A)===0?void 0:t(this,v).get(e);if(w===void 0)w=t(this,A)===0?t(this,C):t(this,q).length!==0?t(this,q).pop():t(this,A)===t(this,U)?u(this,l,wt).call(this,!1):t(this,A),t(this,E)[w]=e,t(this,g)[w]=i,t(this,v).set(e,w),t(this,N)[t(this,C)]=w,t(this,M)[w]=t(this,C),f(this,C,w),mt(this,A)._++,t(this,ft).call(this,w,F,c),c&&(c.set="add"),m=!1;else{u(this,l,dt).call(this,w);const d=t(this,g)[w];if(i!==d){if(t(this,it)&&u(this,l,S).call(this,d)){d.__abortController.abort(new Error("replaced"));const{__staleWhileFetching:y}=d;y!==void 0&&!a&&(t(this,K)&&((W=t(this,V))==null||W.call(this,y,e,"set")),t(this,R)&&((_=t(this,T))==null||_.push([y,e,"set"])))}else a||(t(this,K)&&((P=t(this,V))==null||P.call(this,d,e,"set")),t(this,R)&&((x=t(this,T))==null||x.push([d,e,"set"])));if(t(this,ot).call(this,w),t(this,ft).call(this,w,F,c),t(this,g)[w]=i,c){c.set="replace";const y=d&&u(this,l,S).call(this,d)?d.__staleWhileFetching:d;y!==void 0&&(c.oldValue=y)}}else c&&(c.set="update")}if(o!==0&&!t(this,G)&&u(this,l,Ct).call(this),t(this,G)&&(m||t(this,pt).call(this,w,o,r),c&&t(this,Z).call(this,c,w)),!a&&t(this,R)&&t(this,T)){const d=t(this,T);let y;for(;y=d==null?void 0:d.shift();)(j=t(this,B))==null||j.call(this,...y)}return this}pop(){var e;try{for(;t(this,A);){const i=t(this,g)[t(this,z)];if(u(this,l,wt).call(this,!0),u(this,l,S).call(this,i)){if(i.__staleWhileFetching)return i.__staleWhileFetching}else if(i!==void 0)return i}}finally{if(t(this,R)&&t(this,T)){const i=t(this,T);let s;for(;s=i==null?void 0:i.shift();)(e=t(this,B))==null||e.call(this,...s)}}}has(e,i={}){const{updateAgeOnHas:s=this.updateAgeOnHas,status:o}=i,r=t(this,v).get(e);if(r!==void 0){const a=t(this,g)[r];if(u(this,l,S).call(this,a)&&a.__staleWhileFetching===void 0)return!1;if(t(this,H).call(this,r))o&&(o.has="stale",t(this,Z).call(this,o,r));else return s&&t(this,rt).call(this,r),o&&(o.has="hit",t(this,Z).call(this,o,r)),!0}else o&&(o.has="miss");return!1}peek(e,i={}){const{allowStale:s=this.allowStale}=i,o=t(this,v).get(e);if(o===void 0||!s&&t(this,H).call(this,o))return;const r=t(this,g)[o];return u(this,l,S).call(this,r)?r.__staleWhileFetching:r}async fetch(e,i={}){const{allowStale:s=this.allowStale,updateAgeOnGet:o=this.updateAgeOnGet,noDeleteOnStaleGet:r=this.noDeleteOnStaleGet,ttl:a=this.ttl,noDisposeOnSet:h=this.noDisposeOnSet,size:c=0,sizeCalculation:m=this.sizeCalculation,noUpdateTTL:F=this.noUpdateTTL,noDeleteOnFetchRejection:w=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:W=this.allowStaleOnFetchRejection,ignoreFetchAbort:_=this.ignoreFetchAbort,allowStaleOnFetchAbort:P=this.allowStaleOnFetchAbort,context:x,forceRefresh:j=!1,status:d,signal:y}=i;if(!t(this,it))return d&&(d.fetch="get"),this.get(e,{allowStale:s,updateAgeOnGet:o,noDeleteOnStaleGet:r,status:d});const L={allowStale:s,updateAgeOnGet:o,noDeleteOnStaleGet:r,ttl:a,noDisposeOnSet:h,size:c,sizeCalculation:m,noUpdateTTL:F,noDeleteOnFetchRejection:w,allowStaleOnFetchRejection:W,allowStaleOnFetchAbort:P,ignoreFetchAbort:_,status:d,signal:y};let D=t(this,v).get(e);if(D===void 0){d&&(d.fetch="miss");const k=u(this,l,_t).call(this,e,D,L,x);return k.__returned=k}else{const k=t(this,g)[D];if(u(this,l,S).call(this,k)){const Wt=s&&k.__staleWhileFetching!==void 0;return d&&(d.fetch="inflight",Wt&&(d.returnedStale=!0)),Wt?k.__staleWhileFetching:k.__returned=k}const st=t(this,H).call(this,D);if(!j&&!st)return d&&(d.fetch="hit"),u(this,l,dt).call(this,D),o&&t(this,rt).call(this,D),d&&t(this,Z).call(this,d,D),k;const J=u(this,l,_t).call(this,e,D,L,x),Rt=J.__staleWhileFetching!==void 0&&s;return d&&(d.fetch=st?"stale":"refresh",Rt&&st&&(d.returnedStale=!0)),Rt?J.__staleWhileFetching:J.__returned=J}}get(e,i={}){const{allowStale:s=this.allowStale,updateAgeOnGet:o=this.updateAgeOnGet,noDeleteOnStaleGet:r=this.noDeleteOnStaleGet,status:a}=i,h=t(this,v).get(e);if(h!==void 0){const c=t(this,g)[h],m=u(this,l,S).call(this,c);return a&&t(this,Z).call(this,a,h),t(this,H).call(this,h)?(a&&(a.get="stale"),m?(a&&s&&c.__staleWhileFetching!==void 0&&(a.returnedStale=!0),s?c.__staleWhileFetching:void 0):(r||this.delete(e),a&&s&&(a.returnedStale=!0),s?c:void 0)):(a&&(a.get="hit"),m?c.__staleWhileFetching:(u(this,l,dt).call(this,h),o&&t(this,rt).call(this,h),c))}else a&&(a.get="miss")}delete(e){var s,o,r,a;let i=!1;if(t(this,A)!==0){const h=t(this,v).get(e);if(h!==void 0)if(i=!0,t(this,A)===1)this.clear();else{t(this,ot).call(this,h);const c=t(this,g)[h];if(u(this,l,S).call(this,c)?c.__abortController.abort(new Error("deleted")):(t(this,K)||t(this,R))&&(t(this,K)&&((s=t(this,V))==null||s.call(this,c,e,"delete")),t(this,R)&&((o=t(this,T))==null||o.push([c,e,"delete"]))),t(this,v).delete(e),t(this,E)[h]=void 0,t(this,g)[h]=void 0,h===t(this,C))f(this,C,t(this,M)[h]);else if(h===t(this,z))f(this,z,t(this,N)[h]);else{const m=t(this,M)[h];t(this,N)[m]=t(this,N)[h];const F=t(this,N)[h];t(this,M)[F]=t(this,M)[h]}mt(this,A)._--,t(this,q).push(h)}}if(t(this,R)&&((r=t(this,T))!=null&&r.length)){const h=t(this,T);let c;for(;c=h==null?void 0:h.shift();)(a=t(this,B))==null||a.call(this,...c)}return i}clear(){var e,i,s;for(const o of u(this,l,et).call(this,{allowStale:!0})){const r=t(this,g)[o];if(u(this,l,S).call(this,r))r.__abortController.abort(new Error("deleted"));else{const a=t(this,E)[o];t(this,K)&&((e=t(this,V))==null||e.call(this,r,a,"delete")),t(this,R)&&((i=t(this,T))==null||i.push([r,a,"delete"]))}}if(t(this,v).clear(),t(this,g).fill(void 0),t(this,E).fill(void 0),t(this,G)&&t(this,Y)&&(t(this,G).fill(0),t(this,Y).fill(0)),t(this,X)&&t(this,X).fill(0),f(this,z,0),f(this,C,0),t(this,q).length=0,f(this,$,0),f(this,A,0),t(this,R)&&t(this,T)){const o=t(this,T);let r;for(;r=o==null?void 0:o.shift();)(s=t(this,B))==null||s.call(this,...r)}}};U=new WeakMap,I=new WeakMap,V=new WeakMap,B=new WeakMap,ut=new WeakMap,A=new WeakMap,$=new WeakMap,v=new WeakMap,E=new WeakMap,g=new WeakMap,N=new WeakMap,M=new WeakMap,z=new WeakMap,C=new WeakMap,q=new WeakMap,T=new WeakMap,X=new WeakMap,Y=new WeakMap,G=new WeakMap,K=new WeakMap,it=new WeakMap,R=new WeakMap,l=new WeakSet,Ct=function(){const e=new bt(t(this,U)),i=new bt(t(this,U));f(this,G,e),f(this,Y,i),f(this,pt,(r,a,h=lt.now())=>{if(i[r]=a!==0?h:0,e[r]=a,a!==0&&this.ttlAutopurge){const c=setTimeout(()=>{t(this,H).call(this,r)&&this.delete(t(this,E)[r])},a+1);c.unref&&c.unref()}}),f(this,rt,r=>{i[r]=e[r]!==0?lt.now():0}),f(this,Z,(r,a)=>{if(e[a]){const h=e[a],c=i[a];if(!h||!c)return;r.ttl=h,r.start=c,r.now=s||o();const m=r.now-c;r.remainingTTL=h-m}});let s=0;const o=()=>{const r=lt.now();if(this.ttlResolution>0){s=r;const a=setTimeout(()=>s=0,this.ttlResolution);a.unref&&a.unref()}return r};this.getRemainingTTL=r=>{const a=t(this,v).get(r);if(a===void 0)return 0;const h=e[a],c=i[a];if(!h||!c)return 1/0;const m=(s||o())-c;return h-m},f(this,H,r=>{const a=i[r],h=e[r];return!!h&&!!a&&(s||o())-a>h})},rt=new WeakMap,Z=new WeakMap,pt=new WeakMap,H=new WeakMap,Xt=function(){const e=new bt(t(this,U));f(this,$,0),f(this,X,e),f(this,ot,i=>{f(this,$,t(this,$)-e[i]),e[i]=0}),f(this,gt,(i,s,o,r)=>{if(u(this,l,S).call(this,s))return 0;if(!Q(o))if(r){if(typeof r!="function")throw new TypeError("sizeCalculation must be a function");if(o=r(s,i),!Q(o))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return o}),f(this,ft,(i,s,o)=>{if(e[i]=s,t(this,I)){const r=t(this,I)-e[i];for(;t(this,$)>r;)u(this,l,wt).call(this,!0)}f(this,$,t(this,$)+e[i]),o&&(o.entrySize=s,o.totalCalculatedSize=t(this,$))})},ot=new WeakMap,ft=new WeakMap,gt=new WeakMap,tt=function*({allowStale:e=this.allowStale}={}){if(t(this,A))for(let i=t(this,C);!(!u(this,l,Tt).call(this,i)||((e||!t(this,H).call(this,i))&&(yield i),i===t(this,z)));)i=t(this,M)[i]},et=function*({allowStale:e=this.allowStale}={}){if(t(this,A))for(let i=t(this,z);!(!u(this,l,Tt).call(this,i)||((e||!t(this,H).call(this,i))&&(yield i),i===t(this,C)));)i=t(this,N)[i]},Tt=function(e){return e!==void 0&&t(this,v).get(t(this,E)[e])===e},wt=function(e){var r,a;const i=t(this,z),s=t(this,E)[i],o=t(this,g)[i];return t(this,it)&&u(this,l,S).call(this,o)?o.__abortController.abort(new Error("evicted")):(t(this,K)||t(this,R))&&(t(this,K)&&((r=t(this,V))==null||r.call(this,o,s,"evict")),t(this,R)&&((a=t(this,T))==null||a.push([o,s,"evict"]))),t(this,ot).call(this,i),e&&(t(this,E)[i]=void 0,t(this,g)[i]=void 0,t(this,q).push(i)),t(this,A)===1?(f(this,z,f(this,C,0)),t(this,q).length=0):f(this,z,t(this,N)[i]),t(this,v).delete(s),mt(this,A)._--,i},_t=function(e,i,s,o){const r=i===void 0?void 0:t(this,g)[i];if(u(this,l,S).call(this,r))return r;const a=new yt,{signal:h}=s;h==null||h.addEventListener("abort",()=>a.abort(h.reason),{signal:a.signal});const c={signal:a.signal,options:s,context:o},m=(x,j=!1)=>{const{aborted:d}=a.signal,y=s.ignoreFetchAbort&&x!==void 0;if(s.status&&(d&&!j?(s.status.fetchAborted=!0,s.status.fetchError=a.signal.reason,y&&(s.status.fetchAbortIgnored=!0)):s.status.fetchResolved=!0),d&&!y&&!j)return w(a.signal.reason);const L=_;return t(this,g)[i]===_&&(x===void 0?L.__staleWhileFetching?t(this,g)[i]=L.__staleWhileFetching:this.delete(e):(s.status&&(s.status.fetchUpdated=!0),this.set(e,x,c.options))),x},F=x=>(s.status&&(s.status.fetchRejected=!0,s.status.fetchError=x),w(x)),w=x=>{const{aborted:j}=a.signal,d=j&&s.allowStaleOnFetchAbort,y=d||s.allowStaleOnFetchRejection,L=y||s.noDeleteOnFetchRejection,D=_;if(t(this,g)[i]===_&&(!L||D.__staleWhileFetching===void 0?this.delete(e):d||(t(this,g)[i]=D.__staleWhileFetching)),y)return s.status&&D.__staleWhileFetching!==void 0&&(s.status.returnedStale=!0),D.__staleWhileFetching;if(D.__returned===D)throw x},W=(x,j)=>{var y;const d=(y=t(this,ut))==null?void 0:y.call(this,e,r,c);d&&d instanceof Promise&&d.then(L=>x(L===void 0?void 0:L),j),a.signal.addEventListener("abort",()=>{(!s.ignoreFetchAbort||s.allowStaleOnFetchAbort)&&(x(void 0),s.allowStaleOnFetchAbort&&(x=L=>m(L,!0)))})};s.status&&(s.status.fetchDispatched=!0);const _=new Promise(W).then(m,F),P=Object.assign(_,{__abortController:a,__staleWhileFetching:r,__returned:void 0});return i===void 0?(this.set(e,P,{...c.options,status:void 0}),i=t(this,v).get(e)):t(this,g)[i]=P,P},S=function(e){if(!t(this,it))return!1;const i=e;return!!i&&i instanceof Promise&&i.hasOwnProperty("__staleWhileFetching")&&i.__abortController instanceof yt},Dt=function(e,i){t(this,M)[i]=e,t(this,N)[e]=i},dt=function(e){e!==t(this,C)&&(e===t(this,z)?f(this,z,t(this,N)[e]):u(this,l,Dt).call(this,t(this,M)[e],t(this,N)[e]),u(this,l,Dt).call(this,t(this,C),e),f(this,C,e))};let jt=Nt;var Et={};Object.defineProperty(Et,"__esModule",{value:!0});Et.getMDXComponent=ye;Et.getMDXExport=Kt;var be=Pt(at),we=Pt(p),_e=Pt(se);function Yt(n){if(typeof WeakMap!="function")return null;var e=new WeakMap,i=new WeakMap;return(Yt=function(s){return s?i:e})(n)}function Pt(n,e){if(n&&n.__esModule)return n;if(n===null||typeof n!="object"&&typeof n!="function")return{default:n};var i=Yt(e);if(i&&i.has(n))return i.get(n);var s={__proto__:null},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var r in n)if(r!=="default"&&{}.hasOwnProperty.call(n,r)){var a=o?Object.getOwnPropertyDescriptor(n,r):null;a&&(a.get||a.set)?Object.defineProperty(s,r,a):s[r]=n[r]}return s.default=n,i&&i.set(n,s),s}function ye(n,e){return Kt(n,e).default}function Kt(n,e){const i={React:be,ReactDOM:_e,_jsx_runtime:we,...e};return new Function(...Object.keys(i),n)(...Object.values(i))}var Se=Et;const Ot=n=>n.replace(/\\/g,"/");function Zt(n,e,i){const[,s]=n.replace(/\\|\//g,e).split(`${i==="playground"?"example":"exercises"}${e}`);return s}const zt="border-border bg-[var(--shiki-background)] hover:bg-foreground/20 active:bg-foreground/30 box-content block rounded border-2 px-2 py-0.5 font-mono text-xs font-semibold outline-none transition duration-300 ease-in-out";function Ee({"data-buttons":n,"data-filename":e,"data-fullpath":i,"data-sep":s="/","data-start":o,"data-type":r}){var W;const a=ne();if(r==="other"||!n||!e||!i)return null;const h=Ot(((W=a[a.type])==null?void 0:W.fullPath)??""),c=!i.startsWith(h),m=ENV.EPICSHOP_DEPLOYED?["problem","solution"]:["problem","solution","playground"],F=n.split(","),w=m.filter(_=>F.includes(_));return p.jsx(p.Fragment,{children:w.map(_=>{var d;const P=a[_];if(_==="playground"){const y=a.playground&&a.playground.appName!==((d=a.problem)==null?void 0:d.name);if(!P||y||c)return p.jsxs("button",{className:St(zt,"cursor-not-allowed"),title:y?"Playground is not set to the right app":c?"This file is from different app":"You must 'Set to Playground' before opening a file",children:[p.jsx("span",{className:"uppercase",children:"Open"})," in ",_]},_)}if(!P||!P.fullPath)return null;const x=[Ot(P.fullPath),Ot(e)].join(s),j=Zt(x,s,_);return p.jsx(Vt,{file:x,line:Number(o??1),children:p.jsxs("span",{title:j,className:zt,children:[p.jsx("span",{className:"uppercase",children:"Open"})," in ",_]})},_)})})}function xe(){const[n,e]=at.useState(!1);return at.useEffect(()=>{if(n){const i=setTimeout(()=>e(!1),1500);return()=>clearTimeout(i)}},[n]),p.jsx("button",{className:he(zt,"w-12 uppercase"),onClick:i=>{var r,a,h;e(!0);const o=((h=(a=(r=i.currentTarget.parentElement)==null?void 0:r.parentElement)==null?void 0:a.querySelector("pre"))==null?void 0:h.textContent)||"";navigator.clipboard.writeText(o)},children:n?"copied":"copy"})}function Oe({children:n,...e}){const{"data-buttons":i,"data-filename":s,"data-fullpath":o,"data-nocopy":r,"data-sep":a}=e,h=r===void 0;function c(){if(o&&a)return!s||s.includes("..")?{"data-filename":Zt(o,a)}:{"data-filename":s.replace(/\//g,a)}}return p.jsxs("div",{className:"group relative",children:[p.jsxs("div",{className:"absolute right-0 top-0 z-50 m-2 flex items-baseline justify-end gap-4 opacity-0 transition duration-300 ease-in-out focus-within:opacity-100 group-hover:opacity-100",children:[i?p.jsx(Ee,{...e}):null,h?p.jsx(xe,{}):null]}),p.jsx("pre",{...e,className:St("scrollbar-thin scrollbar-thumb-scrollbar",e.className??""),...c(),children:n})]})}const ve={h1:n=>p.jsx(ht,{...n,as:"h1"}),h2:n=>p.jsx(ht,{...n,as:"h2"}),h3:n=>p.jsx(ht,{...n,as:"h3"}),h4:n=>p.jsx(ht,{...n,as:"h4"}),h5:n=>p.jsx(ht,{...n,as:"h5"}),h6:n=>p.jsx(ht,{...n,as:"h6"}),a:le,p:n=>p.jsx("div",{...n}),pre:n=>p.jsx("pre",{...n,className:St("scrollbar-thin scrollbar-thumb-scrollbar",n.className??"")}),LaunchEditor:Vt,VideoEmbed:re,EpicVideo:oe};function Ae(n){const e=Se.getMDXComponent(n);function i({components:s,...o}){const r=at.useMemo(()=>({...ve,...s}),[s]);return p.jsx(e,{components:r,...o})}return i}const vt=new jt({max:1e3});function Fe(n){return at.useMemo(()=>{if(vt.has(n))return vt.get(n);const e=Ae(n);return vt.set(n,e),e},[n])}function Ge({code:n,components:e}){const i=Fe(n),s=at.useMemo(()=>({Icon:ae,pre:Oe,Link:kt,...e}),[e]);return p.jsx(i,{components:s})}export{Le as E,Vt as L,Ge as M};
2
+ //# sourceMappingURL=mdx-CR7Me1v_.js.map