pisper 0.5.39-linux-x64.0 → 0.5.39

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 (318) hide show
  1. package/README.en.md +67 -0
  2. package/README.md +53 -53
  3. package/bin/pisper.mjs +48 -0
  4. package/lib/install.mjs +392 -0
  5. package/lib/npm-platform.mjs +41 -0
  6. package/lib/npm-update.mjs +165 -0
  7. package/lib/platform.mjs +43 -0
  8. package/lib/postinstall.mjs +3 -0
  9. package/package.json +36 -14
  10. package/updater.pubkey +1 -0
  11. package/web/.vite/manifest.json +2606 -0
  12. package/web/assets/AnimatedList-_pbK4tS3.js +1 -0
  13. package/web/assets/AppOverlays-DK_RBSUi.js +1 -0
  14. package/web/assets/AppSelect-v2NUOzRf.js +1 -0
  15. package/web/assets/AppShortcuts-D66c2bOM.js +1 -0
  16. package/web/assets/AssetsPage-DFD-JHLO.js +1 -0
  17. package/web/assets/ChannelsPage-S1iZpd8M.js +1 -0
  18. package/web/assets/ChatDockView-wwQKATRH.js +2 -0
  19. package/web/assets/ChatHistoryPage-BNckgbvE.js +1 -0
  20. package/web/assets/ChatPage-COE_4ulo.js +4 -0
  21. package/web/assets/ClickSpark-BhxL8WOQ.js +1 -0
  22. package/web/assets/ConfigPage-BsLy5y6L.js +1 -0
  23. package/web/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  24. package/web/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  25. package/web/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  26. package/web/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  27. package/web/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  28. package/web/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  29. package/web/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  30. package/web/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  31. package/web/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  32. package/web/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  33. package/web/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  34. package/web/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  35. package/web/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  36. package/web/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  37. package/web/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  38. package/web/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  39. package/web/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  40. package/web/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  41. package/web/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  42. package/web/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  43. package/web/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  44. package/web/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  45. package/web/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  46. package/web/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  47. package/web/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  48. package/web/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  49. package/web/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  50. package/web/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  51. package/web/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  52. package/web/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  53. package/web/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  54. package/web/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  55. package/web/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  56. package/web/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  57. package/web/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  58. package/web/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  59. package/web/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  60. package/web/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  61. package/web/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  62. package/web/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  63. package/web/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  64. package/web/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  65. package/web/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  66. package/web/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  67. package/web/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  68. package/web/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  69. package/web/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  70. package/web/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  71. package/web/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  72. package/web/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  73. package/web/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  74. package/web/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  75. package/web/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  76. package/web/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  77. package/web/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  78. package/web/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  79. package/web/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  80. package/web/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  81. package/web/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  82. package/web/assets/MarkdownMessage-ickiT81L.js +2 -0
  83. package/web/assets/MemoryPage-BryPFpf3.js +1 -0
  84. package/web/assets/MobileViewportStabilizer-CYh5obIv.js +1 -0
  85. package/web/assets/PageHeader-D7ZcsXHZ.js +1 -0
  86. package/web/assets/PluginsPage-By294e2k.js +1 -0
  87. package/web/assets/PreviewPages-gdxrspfV.js +1 -0
  88. package/web/assets/SchedulesPage-S6X-heBQ.js +1 -0
  89. package/web/assets/ShinyText-fuaKxKqJ.js +1 -0
  90. package/web/assets/SkillsPage-nP6Ilb53.js +1 -0
  91. package/web/assets/StarOrbit-BlI6MhVr.js +1 -0
  92. package/web/assets/TerminalPanel-Bb_Kf0kq.js +18 -0
  93. package/web/assets/TerminalPanel-BrP-ENHg.css +1 -0
  94. package/web/assets/Threads-DPFx-jxG.js +1 -0
  95. package/web/assets/WelcomeEffects-C9iQOeK6.js +1 -0
  96. package/web/assets/WorkflowsPage-DlZwTBcP.js +1 -0
  97. package/web/assets/WorkspacePicker-D766UTlt.js +1 -0
  98. package/web/assets/abort-signal-D0GPd1Mw.js +1 -0
  99. package/web/assets/alert-B7D8joCd.js +1 -0
  100. package/web/assets/andromeeda-vGVdxbeo.js +1 -0
  101. package/web/assets/angular-html-17rlCfBS.js +1 -0
  102. package/web/assets/angular-ts-it3MaXWH.js +1 -0
  103. package/web/assets/api-CmPTEiOc.js +3 -0
  104. package/web/assets/arrow-right-KWvgbo3p.js +1 -0
  105. package/web/assets/astro-BEVDzCov.js +1 -0
  106. package/web/assets/aurora-x-CDeNXAV0.js +1 -0
  107. package/web/assets/ayu-dark-DluEY0Gj.js +1 -0
  108. package/web/assets/ayu-light-C3h-C4tm.js +1 -0
  109. package/web/assets/ayu-mirage-Bqwy1Gya.js +1 -0
  110. package/web/assets/blade-B3yUZIOx.js +1 -0
  111. package/web/assets/brand-DIEc3fK8.js +1 -0
  112. package/web/assets/button-XhIEgIsg.js +1 -0
  113. package/web/assets/c-aGSZMVdM.js +1 -0
  114. package/web/assets/catppuccin-frappe-C9Q5zVZY.js +1 -0
  115. package/web/assets/catppuccin-latte-CtsyrtPq.js +1 -0
  116. package/web/assets/catppuccin-macchiato-R8nAf1vR.js +1 -0
  117. package/web/assets/catppuccin-mocha-DjuaAJKi.js +1 -0
  118. package/web/assets/chat-api-B4XafR63.js +1 -0
  119. package/web/assets/check-jIXqkGKr.js +1 -0
  120. package/web/assets/chevron-down-DT6AXwTP.js +1 -0
  121. package/web/assets/circle-dot-rl11gaty.js +1 -0
  122. package/web/assets/client-store-TRnjrXTz.js +1 -0
  123. package/web/assets/code-xml-Z4K2ea1N.js +1 -0
  124. package/web/assets/coffee-ouOQ86EC.js +1 -0
  125. package/web/assets/collapsible-DjbBeRo0.js +1 -0
  126. package/web/assets/config-search-DdUjL2D7.js +1 -0
  127. package/web/assets/copy-DS-8Hh_R.js +1 -0
  128. package/web/assets/cpp-Bm3vm43L.js +1 -0
  129. package/web/assets/css-CWcS1xXm.js +1 -0
  130. package/web/assets/csv-Dx-8-gkx.js +1 -0
  131. package/web/assets/dark-plus-Cs2F2srj.js +1 -0
  132. package/web/assets/dist-CISIC3_f.js +1 -0
  133. package/web/assets/dist-DOR8kAEV.js +1 -0
  134. package/web/assets/dracula-BHWKrbxM.js +1 -0
  135. package/web/assets/dracula-soft-5eyTD99u.js +1 -0
  136. package/web/assets/earth-DR_clkZ9.js +1 -0
  137. package/web/assets/embedded-D2rqyswH.js +269 -0
  138. package/web/assets/es2015-0VLo_afz.js +41 -0
  139. package/web/assets/everforest-dark-sB-x3p7T.js +1 -0
  140. package/web/assets/everforest-light-Df2xbC6M.js +1 -0
  141. package/web/assets/field-C8yUX8Pf.js +1 -0
  142. package/web/assets/file-C8GNXmhJ.js +1 -0
  143. package/web/assets/file-code-corner-BKkXAMHR.js +1 -0
  144. package/web/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2 +0 -0
  145. package/web/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2 +0 -0
  146. package/web/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2 +0 -0
  147. package/web/assets/geist-latin-wght-normal-BgDaEnEv.woff2 +0 -0
  148. package/web/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2 +0 -0
  149. package/web/assets/github-dark-C-LZuMrd.js +1 -0
  150. package/web/assets/github-dark-default-DXG-b-1a.js +1 -0
  151. package/web/assets/github-dark-dimmed-Bx1FflLF.js +1 -0
  152. package/web/assets/github-dark-high-contrast-B_tTalzw.js +1 -0
  153. package/web/assets/github-light-EUqPIrTm.js +1 -0
  154. package/web/assets/github-light-default-BXViO-2h.js +1 -0
  155. package/web/assets/github-light-high-contrast-B68TUdTA.js +1 -0
  156. package/web/assets/glsl-TOBAB6bO.js +1 -0
  157. package/web/assets/graphql-BEmIBNve.js +1 -0
  158. package/web/assets/gruvbox-dark-hard-C820rvS2.js +1 -0
  159. package/web/assets/gruvbox-dark-medium-BPjhmG05.js +1 -0
  160. package/web/assets/gruvbox-dark-soft-MrdJrrXF.js +1 -0
  161. package/web/assets/gruvbox-light-hard-BC_s9l72.js +1 -0
  162. package/web/assets/gruvbox-light-medium-BAWPOn9u.js +1 -0
  163. package/web/assets/gruvbox-light-soft-BSMLrYjP.js +1 -0
  164. package/web/assets/haml-CDWtFtU9.js +1 -0
  165. package/web/assets/handlebars-BNtjo3pL.js +1 -0
  166. package/web/assets/horizon-CE9ld1lL.js +1 -0
  167. package/web/assets/horizon-bright-DSNQnXHK.js +1 -0
  168. package/web/assets/houston-CsvMBhTu.js +1 -0
  169. package/web/assets/html-BVyvp26C.js +1 -0
  170. package/web/assets/html-derivative-BseLpURQ.js +1 -0
  171. package/web/assets/http-CkCfSMV9.js +1 -0
  172. package/web/assets/hurl-syYMt6Rn.js +1 -0
  173. package/web/assets/image-Dh7-wI1d.js +1 -0
  174. package/web/assets/imba-DsUTQ-LC.js +1 -0
  175. package/web/assets/index-BvVJkBr0.js +40 -0
  176. package/web/assets/index-DTit-2OA.css +2 -0
  177. package/web/assets/input-D1QFzNMx.js +1 -0
  178. package/web/assets/java-duG_UTKe.js +1 -0
  179. package/web/assets/javascript-DWVbOe4X.js +1 -0
  180. package/web/assets/jinja-Boj4niAz.js +1 -0
  181. package/web/assets/jison-CHwnC1Pv.js +1 -0
  182. package/web/assets/json-qhed-kSA.js +1 -0
  183. package/web/assets/json5-BR5RXkoi.js +1 -0
  184. package/web/assets/jsonc-CYpm1nAK.js +1 -0
  185. package/web/assets/jsonl-CmCQp5Yx.js +1 -0
  186. package/web/assets/jsx-fcCEM_-L.js +1 -0
  187. package/web/assets/julia-VoF7UKfw.js +1 -0
  188. package/web/assets/kanagawa-dragon-Bozd7klA.js +1 -0
  189. package/web/assets/kanagawa-lotus-BmuOG9ZW.js +1 -0
  190. package/web/assets/kanagawa-wave-BML5mF2J.js +1 -0
  191. package/web/assets/laserwave-C_8bwKvT.js +1 -0
  192. package/web/assets/less-DVTAwKKz.js +1 -0
  193. package/web/assets/light-plus-DVQuIRkW.js +1 -0
  194. package/web/assets/link-2-CaZP6GWi.js +1 -0
  195. package/web/assets/loader-circle-72TYCcVQ.js +1 -0
  196. package/web/assets/markdown-BYOwaDjH.js +1 -0
  197. package/web/assets/marko-Cupn1xhw.js +1 -0
  198. package/web/assets/material-theme-Bm3Qr25_.js +1 -0
  199. package/web/assets/material-theme-darker-2IIEA8gg.js +1 -0
  200. package/web/assets/material-theme-lighter-uhdI0v04.js +1 -0
  201. package/web/assets/material-theme-ocean-CHQ94UKr.js +1 -0
  202. package/web/assets/material-theme-palenight-B5W6OYN7.js +1 -0
  203. package/web/assets/mdc-4FfK5iWR.js +1 -0
  204. package/web/assets/mdx-DQZ5AkYe.js +1 -0
  205. package/web/assets/message-circle-Bc_EzZop.js +1 -0
  206. package/web/assets/min-dark-BSWPekZh.js +1 -0
  207. package/web/assets/min-light-DDpmG2fV.js +1 -0
  208. package/web/assets/mobile-remote-fallback-JvG4VcPg.js +1 -0
  209. package/web/assets/mobile-runtime-recovery-DBq1Dp1R.js +1 -0
  210. package/web/assets/monokai-B_bV9PQ9.js +1 -0
  211. package/web/assets/night-owl-DhmEMT88.js +1 -0
  212. package/web/assets/night-owl-light-eJ-hLW7d.js +1 -0
  213. package/web/assets/nord-Cb4Vim4T.js +1 -0
  214. package/web/assets/one-dark-pro-CLwyXe_n.js +1 -0
  215. package/web/assets/one-light-D7Lr4KcI.js +1 -0
  216. package/web/assets/panel-left-CVuoi3zo.js +1 -0
  217. package/web/assets/panel-top-CA2GX1Rj.js +1 -0
  218. package/web/assets/paperclip-BMRj9kRG.js +1 -0
  219. package/web/assets/pencil-CxA1IK0x.js +1 -0
  220. package/web/assets/php-CUREQQ7f.js +1 -0
  221. package/web/assets/pick-system-directory-BnIFt85A.js +1 -0
  222. package/web/assets/plastic-DQwYfKfQ.js +1 -0
  223. package/web/assets/play-N6mg4pFl.js +1 -0
  224. package/web/assets/poimandres-DRFjx7u4.js +1 -0
  225. package/web/assets/postcss-BXeXVLqQ.js +1 -0
  226. package/web/assets/progress-493FBtJ4.js +6 -0
  227. package/web/assets/pug-CQyGKZpv.js +1 -0
  228. package/web/assets/python-gzcpVVnB.js +1 -0
  229. package/web/assets/r-C5FwQflr.js +1 -0
  230. package/web/assets/react-bits-DQli9s7O.css +1 -0
  231. package/web/assets/red-DX1BQOs8.js +1 -0
  232. package/web/assets/regexp--aR2_iz7.js +1 -0
  233. package/web/assets/rolldown-runtime-B0Z9INg1.js +1 -0
  234. package/web/assets/rose-pine-aMsaMD1D.js +1 -0
  235. package/web/assets/rose-pine-dawn-8PwUyIlP.js +1 -0
  236. package/web/assets/rose-pine-moon-DO-qXg-I.js +1 -0
  237. package/web/assets/sass-DXrisJhu.js +1 -0
  238. package/web/assets/save-CVL5N6eP.js +1 -0
  239. package/web/assets/scroll-area-CrWpxKGa.js +1 -0
  240. package/web/assets/scss-Davl4E3T.js +1 -0
  241. package/web/assets/send-DcLH_sg0.js +1 -0
  242. package/web/assets/separator-COSHUqEJ.js +1 -0
  243. package/web/assets/shellscript-CLZ0U2zV.js +1 -0
  244. package/web/assets/shield-check-BQHFfxVy.js +1 -0
  245. package/web/assets/shortcuts-BIzphxhz.js +1 -0
  246. package/web/assets/slack-dark-DnToyrRv.js +1 -0
  247. package/web/assets/slack-ochin-B2OO5cIa.js +1 -0
  248. package/web/assets/smithy-Dgaz7aur.js +1 -0
  249. package/web/assets/snazzy-light-4G7pJPwS.js +1 -0
  250. package/web/assets/solarized-dark-UdsmMDCL.js +1 -0
  251. package/web/assets/solarized-light-C1IUL_tW.js +1 -0
  252. package/web/assets/speech-session-UGYrCHlP.js +3 -0
  253. package/web/assets/speech-stream-text-Cwsgaoku.js +2 -0
  254. package/web/assets/speech-text-Js_tr4qo.js +1 -0
  255. package/web/assets/sql-b92rrcVl.js +1 -0
  256. package/web/assets/square-BZ3Bi3O-.js +1 -0
  257. package/web/assets/square-terminal-DpCa0gzM.js +1 -0
  258. package/web/assets/storage-BE5DCCG3.js +1 -0
  259. package/web/assets/stylus-B6D30XZt.js +1 -0
  260. package/web/assets/svelte-BfstjgUc.js +1 -0
  261. package/web/assets/synthwave-84-nFMaYfgc.js +1 -0
  262. package/web/assets/tag-Csd134FL.js +1 -0
  263. package/web/assets/tokyo-night-oM2G3aXe.js +1 -0
  264. package/web/assets/tool-labels-BJhLig5u.js +1 -0
  265. package/web/assets/tooltip-BIOYQmnq.js +1 -0
  266. package/web/assets/trash-2-mhzzyC6i.js +1 -0
  267. package/web/assets/ts-tags-Cckpt1jI.js +1 -0
  268. package/web/assets/tsx-JMDX3aQ7.js +1 -0
  269. package/web/assets/typescript-BAz-bF8J.js +1 -0
  270. package/web/assets/use-animation-visibility-C-GENY2Z.js +1 -0
  271. package/web/assets/use-i18n-B2uTAjsJ.js +1 -0
  272. package/web/assets/use-mobile-DikQ1IYz.js +1 -0
  273. package/web/assets/usePagePrimaryAction-Bw0OFTDZ.js +1 -0
  274. package/web/assets/utils-C8uzG5AZ.js +1 -0
  275. package/web/assets/vendor-dockview-D5adAaCg.css +1 -0
  276. package/web/assets/vendor-dockview-yY5mBM3U.js +1 -0
  277. package/web/assets/vendor-markdown-K9KdiImV.js +130 -0
  278. package/web/assets/vendor-markdown-plugins-DEcVZfaU.css +1 -0
  279. package/web/assets/vendor-markdown-plugins-Wv1dLaAO.js +263 -0
  280. package/web/assets/vendor-motion-XxgxfZSY.js +9 -0
  281. package/web/assets/vendor-react-CHuvPdJE.js +9 -0
  282. package/web/assets/vendor-router-Bw2aAdMs.js +4 -0
  283. package/web/assets/vendor-shiki-runtime-CxE5QolQ.js +153 -0
  284. package/web/assets/vendor-state-DE1O_s6m.js +1 -0
  285. package/web/assets/vendor-ui-DvrYggeS.js +1 -0
  286. package/web/assets/vendor-xyflow-CnjXtcyK.js +7 -0
  287. package/web/assets/vendor-xyflow-DLioOiRN.css +1 -0
  288. package/web/assets/vesper-DdrHHSXu.js +1 -0
  289. package/web/assets/vitesse-black-fwtXNY1n.js +1 -0
  290. package/web/assets/vitesse-dark-BZCL-v6S.js +1 -0
  291. package/web/assets/vitesse-light-VbXTXTou.js +1 -0
  292. package/web/assets/vue-3H7P6ncC.js +1 -0
  293. package/web/assets/vue-html-DZGW9MGR.js +1 -0
  294. package/web/assets/vue-vine-BECt67gq.js +1 -0
  295. package/web/assets/wasm-BnjxR4X6.js +1 -0
  296. package/web/assets/wasm-ByWQv1Qj.js +1 -0
  297. package/web/assets/web-preview-panel-Dp5aIwsV.js +556 -0
  298. package/web/assets/welcome-brand-W7Ox3fri.js +1 -0
  299. package/web/assets/wgsl-BsKzXJz4.js +1 -0
  300. package/web/assets/wit-DdvCle-K.js +1 -0
  301. package/web/assets/wrench-BqeVhocX.js +1 -0
  302. package/web/assets/x-bw26XDZM.js +1 -0
  303. package/web/assets/xml-CNfvW5JP.js +1 -0
  304. package/web/assets/yaml-rwi0_p6S.js +1 -0
  305. package/web/assets/zap-CFsp4Y1u.js +1 -0
  306. package/web/favicon.svg +25 -0
  307. package/web/icons.svg +24 -0
  308. package/web/index.html +82 -0
  309. package/web/memory-galaxy-background.webp +0 -0
  310. package/web/mobile-startup.html +322 -0
  311. package/web/notification-sw.js +13 -0
  312. package/web/tauri-pet.css +117 -0
  313. package/web/tauri-pet.html +16 -0
  314. package/web/tauri-pet.js +149 -0
  315. package/components/runtime/Pisper_Runtime_Node_0.5.37_linux_x86_64.tar.gz +0 -0
  316. package/components/runtime/Pisper_Runtime_Node_0.5.37_linux_x86_64.tar.gz.sig +0 -1
  317. package/components/tui/Pisper_TUI_Component_0.5.23_linux_x86_64.tar.gz +0 -0
  318. package/components/tui/Pisper_TUI_Component_0.5.23_linux_x86_64.tar.gz.sig +0 -1
@@ -0,0 +1,4 @@
1
+ import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{i as t,r as n}from"./vendor-react-CHuvPdJE.js";var r=e(t(),1),i=`modulepreload`,a=function(e){return`/`+e},o={},s=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),s=document.querySelector(`meta[property=csp-nonce]`),c=s?.nonce||s?.getAttribute(`nonce`);function l(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function u(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=l(t.map(t=>{if(t=a(t,n),t=u(t),t in o)return;o[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let s=document.createElement(`link`);if(s.rel=r?`stylesheet`:i,r||(s.as=`script`),s.crossOrigin=``,s.href=t,c&&s.setAttribute(`nonce`,c),document.head.appendChild(s),r)return new Promise((e,n)=>{s.addEventListener(`load`,e),s.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function s(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&s(e.reason);return e().catch(s)})},c=e=>{throw TypeError(e)},l=(e,t,n)=>t.has(e)||c(`Cannot `+n),u=(e,t,n)=>(l(e,t,`read from private field`),n?n.call(e):t.get(e)),d=(e,t,n)=>t.has(e)?c(`Cannot add the same private member more than once`):t instanceof WeakSet?t.add(e):t.set(e,n),f=(e,t,n,r)=>(l(e,t,`write to private field`),r?r.call(e,n):t.set(e,n),n),p=/^(?:[a-z][a-z0-9+.-]*:|[\\/]{2})/i,m=/^[\\/]{2}/;function h(e,t){return t+e.replace(/\\/g,`/`)}var g=`popstate`;function _(e){return typeof e==`object`&&!!e&&`pathname`in e&&`search`in e&&`hash`in e&&`state`in e&&`key`in e}function v(e={}){function t(e,t){let{pathname:n=`/`,search:r=``,hash:i=``}=T(e.location.hash.substring(1));return!n.startsWith(`/`)&&!n.startsWith(`.`)&&(n=`/`+n),C(``,{pathname:n,search:r,hash:i},t.state&&t.state.usr||null,t.state&&t.state.key||`default`)}function n(e,t){let n=e.document.querySelector(`base`),r=``;if(n&&n.getAttribute(`href`)){let t=e.location.href,n=t.indexOf(`#`);r=n===-1?t:t.slice(0,n)}return r+`#`+(typeof t==`string`?t:w(t))}function r(e,t){b(e.pathname.charAt(0)===`/`,`relative pathnames are not supported in hash history.push(${JSON.stringify(t)})`)}return E(t,n,r,e)}function y(e,t){if(e===!1||e==null)throw Error(t)}function b(e,t){if(!e){typeof console<`u`&&console.warn(t);try{throw Error(t)}catch{}}}function x(){return Math.random().toString(36).substring(2,10)}function S(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function C(e,t,n=null,r,i){return{pathname:typeof e==`string`?e:e.pathname,search:``,hash:``,...typeof t==`string`?T(t):t,state:n,key:t&&t.key||r||x(),mask:i}}function w({pathname:e=`/`,search:t=``,hash:n=``}){return t&&t!==`?`&&(e+=t.charAt(0)===`?`?t:`?`+t),n&&n!==`#`&&(e+=n.charAt(0)===`#`?n:`#`+n),e}function T(e){let t={};if(e){let n=e.indexOf(`#`);n>=0&&(t.hash=e.substring(n),e=e.substring(0,n));let r=e.indexOf(`?`);r>=0&&(t.search=e.substring(r),e=e.substring(0,r)),e&&(t.pathname=e)}return t}function E(e,t,n,r={}){let{window:i=document.defaultView,v5Compat:a=!1}=r,o=i.history,s=`POP`,c=null,l=u();l??(l=0,o.replaceState({...o.state,idx:l},``));function u(){return(o.state||{idx:null}).idx}function d(){s=`POP`;let e=u(),t=e==null?null:e-l;l=e,c&&c({action:s,location:h.location,delta:t})}function f(e,t){s=`PUSH`;let r=_(e)?e:C(h.location,e,t);n&&n(r,e),l=u()+1;let d=S(r,l),f=h.createHref(r.mask||r);try{o.pushState(d,``,f)}catch(e){if(e instanceof DOMException&&e.name===`DataCloneError`)throw e;i.location.assign(f)}a&&c&&c({action:s,location:h.location,delta:1})}function p(e,t){s=`REPLACE`;let r=_(e)?e:C(h.location,e,t);n&&n(r,e),l=u();let i=S(r,l),d=h.createHref(r.mask||r);o.replaceState(i,``,d),a&&c&&c({action:s,location:h.location,delta:0})}function m(e){return D(i,e)}let h={get action(){return s},get location(){return e(i,o)},listen(e){if(c)throw Error(`A history only accepts one active listener`);return i.addEventListener(g,d),c=e,()=>{i.removeEventListener(g,d),c=null}},createHref(e){return t(i,e)},createURL:m,encodeLocation(e){let t=m(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:f,replace:p,go(e){return o.go(e)}};return h}function D(e,t,n=!1){let r=`http://localhost`;e&&(r=e.location.origin===`null`?e.location.href:e.location.origin),y(r,`No window.location.(origin|href) available to create URL`);let i=typeof t==`string`?t:w(t);return i=i.replace(/ $/,`%20`),!n&&m.test(i)&&(i=r+i),new URL(i,r)}var O,k=class{constructor(e){if(d(this,O,new Map),e)for(let[t,n]of e)this.set(t,n)}get(e){if(u(this,O).has(e))return u(this,O).get(e);if(e.defaultValue!==void 0)return e.defaultValue;throw Error(`No value found for context`)}set(e,t){u(this,O).set(e,t)}};O=new WeakMap;var A=new Set([`lazy`,`caseSensitive`,`path`,`id`,`index`,`children`]);function j(e){return A.has(e)}var M=new Set([`lazy`,`caseSensitive`,`path`,`id`,`index`,`middleware`,`children`]);function ee(e){return M.has(e)}function N(e){return e.index===!0}function te(e,t,n=[],r={},i=!1){return e.map((e,a)=>{let o=[...n,String(a)],s=typeof e.id==`string`?e.id:o.join(`-`);if(y(e.index!==!0||!e.children,`Cannot specify children on an index route`),y(i||!r[s],`Found a route id collision on id "${s}". Route id's must be globally unique within Data Router usages`),N(e)){let n={...e,id:s};return r[s]=P(n,t(n)),n}{let n={...e,id:s,children:void 0};return r[s]=P(n,t(n)),e.children&&(n.children=te(e.children,t,o,r,i)),n}})}function P(e,t){return Object.assign(e,{...t,...typeof t.lazy==`object`&&t.lazy!=null?{lazy:{...e.lazy,...t.lazy}}:{}})}function ne(e,t,n=`/`){return F(e,t,n,!1)}function F(e,t,n,r,i){let a=V((typeof t==`string`?T(t):t).pathname||`/`,n);if(a==null)return null;let o=i??ie(e),s=null,c=ge(a);for(let e=0;s==null&&e<o.length;++e)s=pe(o[e],c,r);return s}function re(e,t){let{route:n,pathname:r,params:i}=e;return{id:n.id,pathname:r,params:i,data:t[n.id],loaderData:t[n.id],handle:n.handle}}function ie(e){let t=ae(e);return se(t),t}function ae(e,t=[],n=[],r=``,i=!1){let a=(e,a,o=i,s)=>{let c={relativePath:s===void 0?e.path||``:s,caseSensitive:e.caseSensitive===!0,childrenIndex:a,route:e};if(c.relativePath.startsWith(`/`)){if(!c.relativePath.startsWith(r)&&o)return;y(c.relativePath.startsWith(r),`Absolute route path "${c.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),c.relativePath=c.relativePath.slice(r.length)}let l=U([r,c.relativePath]),u=n.concat(c);e.children&&e.children.length>0&&(y(e.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${l}".`),ae(e.children,t,u,l,o)),!(e.path==null&&!e.index)&&t.push({path:l,score:R(l,e.index),routesMeta:u.map((e,t)=>{let[n,r]=he(e.relativePath,e.caseSensitive,t===u.length-1);return{...e,matcher:n,compiledParams:r}})})};return e.forEach((e,t)=>{if(e.path===``||!e.path?.includes(`?`))a(e,t);else for(let n of oe(e.path))a(e,t,!0,n)}),t}function oe(e){let t=e.split(`/`);if(t.length===0)return[];let[n,...r]=t,i=n.endsWith(`?`),a=n.replace(/\?$/,``);if(r.length===0)return i?[a,``]:[a];let o=oe(r.join(`/`)),s=[];return s.push(...o.map(e=>e===``?a:[a,e].join(`/`))),i&&s.push(...o),s.map(t=>e.startsWith(`/`)&&t===``?`/`:t)}function se(e){e.sort((e,t)=>e.score===t.score?z(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)):t.score-e.score)}var I=/^:[\w-]+$/,ce=3,le=2,ue=1,de=10,fe=-2,L=e=>e===`*`;function R(e,t){let n=e.split(`/`),r=n.length;return n.some(L)&&(r+=fe),t&&(r+=le),n.filter(e=>!L(e)).reduce((e,t)=>e+(I.test(t)?ce:t===``?ue:de),r)}function z(e,t){return e.length===t.length&&e.slice(0,-1).every((e,n)=>e===t[n])?e[e.length-1]-t[t.length-1]:0}function pe(e,t,n=!1){let{routesMeta:r}=e,i={},a=`/`,o=[];for(let e=0;e<r.length;++e){let s=r[e],c=e===r.length-1,l=a===`/`?t:t.slice(a.length)||`/`,u={path:s.relativePath,caseSensitive:s.caseSensitive,end:c},d=s.matcher&&s.compiledParams?me(u,l,s.matcher,s.compiledParams):B(u,l),f=s.route;if(!d&&c&&n&&!r[r.length-1].route.index&&(d=B({path:s.relativePath,caseSensitive:s.caseSensitive,end:!1},l)),!d)return null;Object.assign(i,d.params),o.push({params:i,pathname:U([a,d.pathname]),pathnameBase:Ee(U([a,d.pathnameBase])),route:f}),d.pathnameBase!==`/`&&(a=U([a,d.pathnameBase]))}return o}function B(e,t){typeof e==`string`&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=he(e.path,e.caseSensitive,e.end);return me(e,t,n,r)}function me(e,t,n,r){let i=t.match(n);if(!i)return null;let a=i[0],o=a.replace(/(.)\/+$/,`$1`),s=i.slice(1);return{params:r.reduce((e,{paramName:t,isOptional:n},r)=>{if(t===`*`){let e=s[r]||``;o=a.slice(0,a.length-e.length).replace(/(.)\/+$/,`$1`)}let i=s[r];return e[t]=n&&!i?void 0:(i||``).replace(/%2F/g,`/`),e},{}),pathname:a,pathnameBase:o,pattern:e}}function he(e,t=!1,n=!0){b(e===`*`||!e.endsWith(`*`)||e.endsWith(`/*`),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,`/*`)}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,`/*`)}".`);let r=[],i=`^`+e.replace(/\/*\*?$/,``).replace(/^\/*/,`/`).replace(/[\\.*+^${}|()[\]]/g,`\\$&`).replace(/\/:([\w-]+)(\?)?/g,(e,t,n,i,a)=>{if(r.push({paramName:t,isOptional:n!=null}),n){let t=a.charAt(i+e.length);return t&&t!==`/`?`/([^\\/]*)`:`(?:/([^\\/]*))?`}return`/([^\\/]+)`}).replace(/\/([\w-]+)\?(\/|$)/g,`(/$1)?$2`);return e.endsWith(`*`)?(r.push({paramName:`*`}),i+=e===`*`||e===`/*`?`(.*)$`:`(?:\\/(.+)|\\/*)$`):n?i+=`\\/*$`:e!==``&&e!==`/`&&(i+=`(?:(?=\\/|$))`),[new RegExp(i,t?void 0:`i`),r]}function ge(e){try{return e.split(`/`).map(e=>decodeURIComponent(e).replace(/\//g,`%2F`)).join(`/`)}catch(t){return b(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function V(e,t){if(t===`/`)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith(`/`)?t.length-1:t.length,r=e.charAt(n);return r&&r!==`/`?null:e.slice(n)||`/`}function H({basename:e,pathname:t}){return t===`/`?e:U([e,t])}var _e=e=>p.test(e);function ve(e,t=`/`){let{pathname:n,search:r=``,hash:i=``}=typeof e==`string`?T(e):e,a;return n?(n=we(n),a=n.startsWith(`/`)?ye(n.substring(1),`/`):ye(n,t)):a=t,{pathname:a,search:De(r),hash:Oe(i)}}function ye(e,t){let n=Te(t).split(`/`);return e.split(`/`).forEach(e=>{e===`..`?n.length>1&&n.pop():e!==`.`&&n.push(e)}),n.length>1?n.join(`/`):`/`}function be(e,t,n,r){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function xe(e){return e.filter((e,t)=>t===0||e.route.path&&e.route.path.length>0)}function Se(e){let t=xe(e);return t.map((e,n)=>n===t.length-1?e.pathname:e.pathnameBase)}function Ce(e,t,n,r=!1){let i;typeof e==`string`?i=T(e):(i={...e},y(!i.pathname||!i.pathname.includes(`?`),be(`?`,`pathname`,`search`,i)),y(!i.pathname||!i.pathname.includes(`#`),be(`#`,`pathname`,`hash`,i)),y(!i.search||!i.search.includes(`#`),be(`#`,`search`,`hash`,i)));let a=e===``||i.pathname===``,o=a?`/`:i.pathname,s;if(o==null)s=n;else{let e=t.length-1;if(!r&&o.startsWith(`..`)){let t=o.split(`/`);for(;t[0]===`..`;)t.shift(),--e;i.pathname=t.join(`/`)}s=e>=0?t[e]:`/`}let c=ve(i,s),l=o&&o!==`/`&&o.endsWith(`/`),u=(a||o===`.`)&&n.endsWith(`/`);return!c.pathname.endsWith(`/`)&&(l||u)&&(c.pathname+=`/`),c}var we=e=>e.replace(/[\\/]{2,}/g,`/`),U=e=>we(e.join(`/`)),Te=e=>e.replace(/\/+$/,``),Ee=e=>Te(e).replace(/^\/*/,`/`),De=e=>!e||e===`?`?``:e.startsWith(`?`)?e:`?`+e,Oe=e=>!e||e===`#`?``:e.startsWith(`#`)?e:`#`+e,ke=[`EvalError`,`RangeError`,`ReferenceError`,`SyntaxError`,`TypeError`,`URIError`],Ae=class{constructor(e,t,n,r=!1){this.status=e,this.statusText=t||``,this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}};function je(e){return e!=null&&typeof e.status==`number`&&typeof e.statusText==`string`&&typeof e.internal==`boolean`&&`data`in e}function Me(e){return U(e.map(e=>e.route.path).filter(Boolean))||`/`}var W=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;function G(e,t){let n=e;if(typeof n!=`string`||!p.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,i=!1;if(W)try{let e=new URL(window.location.href),r=m.test(n)?new URL(h(n,e.protocol)):new URL(n),a=V(r.pathname,t);r.origin===e.origin&&a!=null?n=a+r.search+r.hash:i=!0}catch{b(!1,`<Link to="${n}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:i,to:n}}var Ne=Symbol(`Uninstrumented`);function Pe(e,t){let n={lazy:[],"lazy.loader":[],"lazy.action":[],"lazy.middleware":[],middleware:[],loader:[],action:[]};e.forEach(e=>e({id:t.id,index:t.index,path:t.path,instrument(e){let t=Object.keys(n);for(let r of t)e[r]&&n[r].push(e[r])}}));let r={};if(typeof t.lazy==`function`&&n.lazy.length>0){let e=Ie(n.lazy,t.lazy,()=>void 0);e&&(r.lazy=e)}if(typeof t.lazy==`object`){let e=t.lazy;[`middleware`,`loader`,`action`].forEach(t=>{let i=e[t],a=n[`lazy.${t}`];if(typeof i==`function`&&a.length>0){let e=Ie(a,i,()=>void 0);e&&(r.lazy=Object.assign(r.lazy||{},{[t]:e}))}})}return[`loader`,`action`].forEach(e=>{let i=t[e];if(typeof i==`function`&&n[e].length>0){let t=i[Ne]??i,a=Ie(n[e],t,(...e)=>Re(e[0]));a&&(e===`loader`&&t.hydrate===!0&&(a.hydrate=!0),a[Ne]=t,r[e]=a)}}),t.middleware&&t.middleware.length>0&&n.middleware.length>0&&(r.middleware=t.middleware.map(e=>{let t=e[Ne]??e,r=Ie(n.middleware,t,(...e)=>Re(e[0]));return r?(r[Ne]=t,r):e})),r}function Fe(e,t){let n={navigate:[],fetch:[]};if(t.forEach(e=>e({instrument(e){let t=Object.keys(e);for(let r of t)e[r]&&n[r].push(e[r])}})),n.navigate.length>0){let t=e.navigate[Ne]??e.navigate,r=Ie(n.navigate,t,(...t)=>{let[n,r]=t;return{to:typeof n==`number`||typeof n==`string`?n:n?w(n):`.`,...K(e,r??{})}});r&&(r[Ne]=t,e.navigate=r)}if(n.fetch.length>0){let t=e.fetch[Ne]??e.fetch,r=Ie(n.fetch,t,(...t)=>{let[n,,r,i]=t;return{href:r??`.`,fetcherKey:n,...K(e,i??{})}});r&&(r[Ne]=t,e.fetch=r)}return e}function Ie(e,t,n){return e.length===0?null:async(...r)=>{let i=await Le(e,n(...r),()=>t(...r),e.length-1);if(i.type===`error`)throw i.value;return i.value}}async function Le(e,t,n,r){let i=e[r],a;if(i){let o,s=async()=>(o?console.error(`You cannot call instrumented handlers more than once`):o=Le(e,t,n,r-1),a=await o,y(a,`Expected a result`),a.type===`error`&&a.value instanceof Error?{status:`error`,error:a.value}:{status:`success`,error:void 0});try{await i(s,t)}catch(e){console.error(`An instrumentation function threw an error:`,e)}o||await s(),await o}else try{a={type:`success`,value:await n()}}catch(e){a={type:`error`,value:e}}return a||{type:`error`,value:Error(`No result assigned in instrumentation chain.`)}}function Re(e){let{request:t,context:n,params:r,pattern:i}=e;return{request:ze(t),params:{...r},pattern:i,context:Be(n)}}function K(e,t){return{currentUrl:w(e.state.location),...`formMethod`in t?{formMethod:t.formMethod}:{},...`formEncType`in t?{formEncType:t.formEncType}:{},...`formData`in t?{formData:t.formData}:{},...`body`in t?{body:t.body}:{}}}function ze(e){return{method:e.method,url:e.url,headers:{get:(...t)=>e.headers.get(...t)}}}function Be(e){if(He(e)){let t={...e};return Object.freeze(t),t}return{get:t=>e.get(t)}}var Ve=Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);function He(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||Object.getOwnPropertyNames(t).sort().join(`\0`)===Ve}var Ue=[`POST`,`PUT`,`PATCH`,`DELETE`],We=new Set(Ue),Ge=[`GET`,...Ue],Ke=new Set(Ge),qe=new Set([301,302,303,307,308]),Je=new Set([307,308]),Ye={state:`idle`,location:void 0,matches:void 0,historyAction:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},Xe={state:`idle`,data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},Ze={state:`unblocked`,proceed:void 0,reset:void 0,location:void 0},Qe=e=>({hasErrorBoundary:!!e.hasErrorBoundary}),$e=`remix-router-transitions`,et=Symbol(`ResetLoaderData`),tt,nt,q,rt,it=class{constructor(e){d(this,tt),d(this,nt),d(this,q),d(this,rt),f(this,tt,e),f(this,nt,ie(e))}get stableRoutes(){return u(this,tt)}get activeRoutes(){return u(this,q)??u(this,tt)}get branches(){return u(this,rt)??u(this,nt)}get hasHMRRoutes(){return u(this,q)!=null}setRoutes(e){f(this,tt,e),f(this,nt,ie(e))}setHmrRoutes(e){f(this,q,e),f(this,rt,ie(e))}commitHmrRoutes(){u(this,q)&&(f(this,tt,u(this,q)),f(this,nt,u(this,rt)),f(this,q,void 0),f(this,rt,void 0))}};tt=new WeakMap,nt=new WeakMap,q=new WeakMap,rt=new WeakMap;function at(e){let t=e.window?e.window:typeof window<`u`?window:void 0,n=t!==void 0&&t.document!==void 0&&t.document.createElement!==void 0;y(e.routes.length>0,`You must provide a non-empty routes array to createRouter`);let r=e.hydrationRouteProperties||[],i=e.mapRouteProperties||Qe,a=i;if(e.instrumentations){let t=e.instrumentations;a=e=>({...i(e),...Pe(t.map(e=>e.route).filter(Boolean),e)})}let o={},s=new it(te(e.routes,a,void 0,o)),c=e.basename||`/`;c.startsWith(`/`)||(c=`/${c}`);let l=e.dataStrategy||St,u={...e.future},d=null,f=new Set,p=null,m=null,h=null,g=null,_=e.hydrationData!=null,v=F(s.activeRoutes,e.history.location,c,!1,s.branches),x=!1,S=null,w,E;if(v==null&&!e.patchRoutesOnNavigation){let t=J(404,{pathname:e.history.location.pathname}),{matches:n,route:r}=Kt(s.activeRoutes);w=!0,E=!w,v=n,S={[r.id]:t}}else if(v&&!e.hydrationData&&nt(v,s.activeRoutes,e.history.location.pathname).active&&(v=null),!v){w=!1,E=!w,v=[];let t=nt(null,s.activeRoutes,e.history.location.pathname);t.active&&t.matches&&(x=!0,v=t.matches)}else if(v.some(e=>e.route.lazy))w=!1,E=!w;else if(!v.some(e=>ut(e.route)))w=!0,E=!w;else{let t=e.hydrationData?e.hydrationData.loaderData:null,n=e.hydrationData?e.hydrationData.errors:null,r=v;if(n){let e=v.findIndex(e=>n[e.route.id]!==void 0);r=r.slice(0,e+1)}E=!1,w=!0,r.forEach(e=>{let r=dt(e.route,t,n);E||=r.renderFallback,w&&=!r.shouldLoad})}let O,A={historyAction:e.history.action,location:e.history.location,matches:v,initialized:w,renderFallback:E,navigation:Ye,restoreScrollPosition:e.hydrationData==null&&null,preventScrollReset:!1,revalidation:`idle`,loaderData:e.hydrationData&&e.hydrationData.loaderData||{},actionData:e.hydrationData&&e.hydrationData.actionData||null,errors:e.hydrationData&&e.hydrationData.errors||S,fetchers:new Map,blockers:new Map},j=`POP`,M=null,ee=!1,N,P=!1,ne=new Map,ie=null,ae=!1,oe=!1,se=new Set,I=new Map,ce=0,le=-1,ue=new Map,de=new Set,fe=new Map,L=new Map,R=new Set,z=new Map,pe,B=null;function me(){if(d=e.history.listen(({action:t,location:n,delta:r})=>{if(pe){pe(),pe=void 0;return}b(z.size===0||r!=null,"You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via `window.history.pushState`/`window.location.hash` instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.");let i=Ge({currentLocation:A.location,nextLocation:n,historyAction:t});if(i&&r!=null){let t=new Promise(e=>{pe=e});e.history.go(r*-1),We(i,{state:`blocked`,location:n,proceed(){We(i,{state:`proceeding`,proceed:void 0,reset:void 0,location:n}),t.then(()=>e.history.go(r))},reset(){let e=new Map(A.blockers);e.set(i,Ze),H({blockers:e})}}),M?.resolve(),M=null;return}return xe(t,n)}),n){hn(t,ne);let e=()=>gn(t,ne);t.addEventListener(`pagehide`,e),ie=()=>t.removeEventListener(`pagehide`,e)}return A.initialized||xe(`POP`,A.location,{initialHydration:!0}),O}function he(){d&&d(),ie&&ie(),f.clear(),N&&N.abort(),A.fetchers.forEach((e,t)=>Le(A.fetchers,t)),A.blockers.forEach((e,t)=>Ue(t))}function ge(e){if(f.add(e),p){let{newErrors:t}=p;p=null,e(A,{deletedFetchers:[],newErrors:t,viewTransitionOpts:void 0,flushSync:!1})}return()=>f.delete(e)}function H(e,t={}){e.matches&&=e.matches.map(e=>{let t=o[e.route.id],n=e.route;return n.element!==t.element||n.errorElement!==t.errorElement||n.hydrateFallbackElement!==t.hydrateFallbackElement?{...e,route:t}:e}),A={...A,...e};let n=[],r=[];A.fetchers.forEach((e,t)=>{e.state===`idle`&&(R.has(t)?n.push(t):r.push(t))}),R.forEach(e=>{!A.fetchers.has(e)&&!I.has(e)&&n.push(e)}),f.size===0&&(p={newErrors:e.errors??null}),[...f].forEach(r=>r(A,{deletedFetchers:n,newErrors:e.errors??null,viewTransitionOpts:t.viewTransitionOpts,flushSync:t.flushSync===!0})),n.forEach(e=>Le(A.fetchers,e)),r.forEach(e=>A.fetchers.delete(e))}function ve(t,n,{flushSync:r}={}){let i=A.actionData!=null&&A.navigation.formMethod!=null&&X(A.navigation.formMethod)&&A.navigation.state===`loading`&&t.state?._isRedirect!==!0,a;a=n.actionData?Object.keys(n.actionData).length>0?n.actionData:null:i?A.actionData:null;let o=n.loaderData?Ut(A.loaderData,n.loaderData,n.matches||[],n.errors):A.loaderData,c=A.blockers;c.size>0&&(c=new Map(c),c.forEach((e,t)=>c.set(t,Ze)));let l=!ae&&tt(t,n.matches||A.matches),u=ee===!0||A.navigation.formMethod!=null&&X(A.navigation.formMethod)&&t.state?._isRedirect!==!0;s.commitHmrRoutes(),ae||j===`POP`||(j===`PUSH`?e.history.push(t,t.state):j===`REPLACE`&&e.history.replace(t,t.state));let d;if(j===`POP`){let e=ne.get(A.location.pathname);e&&e.has(t.pathname)?d={currentLocation:A.location,nextLocation:t}:ne.has(t.pathname)&&(d={currentLocation:t,nextLocation:A.location})}else if(P){let e=ne.get(A.location.pathname);e?e.add(t.pathname):(e=new Set([t.pathname]),ne.set(A.location.pathname,e)),d={currentLocation:A.location,nextLocation:t}}H({...n,actionData:a,loaderData:o,historyAction:j,location:t,initialized:!0,renderFallback:!1,navigation:Ye,revalidation:`idle`,restoreScrollPosition:l,preventScrollReset:u,blockers:c},{viewTransitionOpts:d,flushSync:r===!0}),j=`POP`,ee=!1,P=!1,ae=!1,oe=!1,M?.resolve(),M=null,B?.resolve(),B=null}async function ye(t,n){if(M?.resolve(),M=null,typeof t==`number`){M||=_n();let n=M.promise;return e.history.go(t),n}let{path:r,submission:i,error:a}=ct(!1,st(A.location,A.matches,c,t,n?.fromRouteId,n?.relative),n),o;n?.mask&&(o={pathname:``,search:``,hash:``,...typeof n.mask==`string`?T(n.mask):{...A.location.mask,...n.mask}});let s=A.location,l=C(s,r,n&&n.state,void 0,o);l={...l,...e.history.encodeLocation(l)};let u=n&&n.replace!=null?n.replace:void 0,d=`PUSH`;u===!0?d=`REPLACE`:u===!1||i!=null&&X(i.formMethod)&&i.formAction===A.location.pathname+A.location.search&&(d=`REPLACE`);let f=n&&`preventScrollReset`in n?n.preventScrollReset===!0:void 0,p=(n&&n.flushSync)===!0,m=Ge({currentLocation:s,nextLocation:l,historyAction:d});if(m){We(m,{state:`blocked`,location:l,proceed(){We(m,{state:`proceeding`,proceed:void 0,reset:void 0,location:l}),ye(t,n)},reset(){let e=new Map(A.blockers);e.set(m,Ze),H({blockers:e})}});return}await xe(d,l,{submission:i,pendingError:a,preventScrollReset:f,replace:n&&n.replace,enableViewTransition:n&&n.viewTransition,flushSync:p,callSiteDefaultShouldRevalidate:n&&n.defaultShouldRevalidate})}function be(){B||=_n(),Me(),H({revalidation:`loading`});let e=B.promise;return A.navigation.state===`submitting`?e:A.navigation.state===`idle`?(xe(A.historyAction,A.location,{startUninterruptedRevalidation:!0}),e):(xe(j||A.historyAction,A.navigation.location,{overrideNavigation:A.navigation,enableViewTransition:P===!0}),e)}async function xe(t,n,r){N&&N.abort(),N=null,j=t,ae=(r&&r.startUninterruptedRevalidation)===!0,et(A.location,A.matches),ee=(r&&r.preventScrollReset)===!0,P=(r&&r.enableViewTransition)===!0;let i=s.activeRoutes,a=r?.initialHydration&&A.matches&&A.matches.length>0&&!x?A.matches:F(i,n,c,!1,s.branches),o=(r&&r.flushSync)===!0;if(a&&A.initialized&&!oe&&Yt(A.location,n)&&!(r&&r.submission&&X(r.submission.formMethod))){ve(n,{matches:a},{flushSync:o});return}let l=nt(a,i,n.pathname);if(l.active&&l.matches&&(a=l.matches),!a){let{error:e,notFoundMatches:t,route:r}=Ke(n.pathname);ve(n,{matches:t,loaderData:{},errors:{[r.id]:e}},{flushSync:o});return}let u=r&&r.overrideNavigation?{...r.overrideNavigation,matches:a,historyAction:t}:void 0;N=new AbortController;let d=Lt(e.history,n,N.signal,r&&r.submission),f=e.getContext?await e.getContext():new k,p;if(r&&r.pendingError)p=[Gt(a).route.id,{type:`error`,error:r.pendingError}];else if(r&&r.submission&&X(r.submission.formMethod)){let i=await Se(d,n,r.submission,a,t,f,l.active,r&&r.initialHydration===!0,{replace:r.replace,flushSync:o});if(i.shortCircuited)return;if(i.pendingActionResult){let[e,t]=i.pendingActionResult;if(Y(t)&&je(t.error)&&t.error.status===404){N=null,ve(n,{matches:i.matches,loaderData:{},errors:{[e]:t.error}});return}}a=i.matches||a,p=i.pendingActionResult,u=un(n,a,t,r.submission),o=!1,l.active=!1,d=Lt(e.history,d.url,d.signal)}let{shortCircuited:m,matches:h,loaderData:g,errors:_,workingFetchers:v}=await Ce(d,n,a,t,f,l.active,u,r&&r.submission,r&&r.fetcherSubmission,r&&r.replace,r&&r.initialHydration===!0,o,p,r&&r.callSiteDefaultShouldRevalidate);m||(N=null,ve(n,{matches:h||a,...Wt(p),loaderData:g,errors:_,...v?{fetchers:v}:{}}))}async function Se(t,n,i,l,u,d,f,p,m={}){if(Me(),H({navigation:dn(n,l,u,i)},{flushSync:m.flushSync===!0}),f){let e=await q(l,n.pathname,t.signal);if(e.type===`aborted`)return{shortCircuited:!0};if(e.type===`error`){if(e.partialMatches.length===0){let{matches:t,route:n}=Kt(s.activeRoutes);return{matches:t,pendingActionResult:[n.id,{type:`error`,error:e.error}]}}let t=Gt(e.partialMatches).route.id;return{matches:e.partialMatches,pendingActionResult:[t,{type:`error`,error:e.error}]}}if(e.matches)l=e.matches;else{let{notFoundMatches:e,error:t,route:r}=Ke(n.pathname);return{matches:e,pendingActionResult:[r.id,{type:`error`,error:t}]}}}let h,g=cn(l,n);if(!g.route.action&&!g.route.lazy)h={type:`error`,error:J(405,{method:t.method,pathname:n.pathname,routeId:g.route.id})};else{let e=await ke(t,n,Ot(a,o,t,n,l,g,p?[]:r,d),d,null);if(h=e[g.route.id],!h){for(let t of l)if(e[t.route.id]){h=e[t.route.id];break}}if(t.signal.aborted)return{shortCircuited:!0}}if(en(h)){let n;return n=m&&m.replace!=null?m.replace:It(h.response.headers.get(`Location`),new URL(t.url),c,e.history)===A.location.pathname+A.location.search,await Oe(t,h,!0,{submission:i,replace:n}),{shortCircuited:!0}}if(Y(h)){let e=Gt(l,g.route.id);return(m&&m.replace)!==!0&&(j=`PUSH`),{matches:l,pendingActionResult:[e.route.id,h,g.route.id]}}return{matches:l,pendingActionResult:[g.route.id,h]}}async function Ce(t,n,i,l,u,d,f,p,m,h,g,_,v,y){let b=f||un(n,i,l,p),x=p||m||ln(b),S=!ae&&!g;if(d){if(S){let e=we(v);H({navigation:b,...e===void 0?{}:{actionData:e}},{flushSync:_})}let e=await q(i,n.pathname,t.signal);if(e.type===`aborted`)return{shortCircuited:!0};if(e.type===`error`){if(e.partialMatches.length===0){let{matches:t,route:n}=Kt(s.activeRoutes);return{matches:t,loaderData:{},errors:{[n.id]:e.error}}}let t=Gt(e.partialMatches).route.id;return{matches:e.partialMatches,loaderData:{},errors:{[t]:e.error}}}if(e.matches)i=e.matches;else{let{error:e,notFoundMatches:t,route:r}=Ke(n.pathname);return{matches:t,loaderData:{},errors:{[r.id]:e}}}}let C=s.activeRoutes,{dsMatches:w,revalidatingFetchers:T}=lt(t,u,a,o,e.history,A,i,x,n,g?[]:r,g===!0,oe,se,R,fe,de,C,c,e.patchRoutesOnNavigation!=null,s.branches,v,y);if(le=++ce,!e.dataStrategy&&!w.some(e=>e.shouldLoad)&&!w.some(e=>e.route.middleware&&e.route.middleware.length>0)&&T.length===0){let e=new Map(A.fetchers),t=Be(e);return ve(n,{matches:i,loaderData:{},errors:v&&Y(v[1])?{[v[0]]:v[1].error}:null,...Wt(v),...t?{fetchers:e}:{}},{flushSync:_}),{shortCircuited:!0}}if(S){let e={};if(!d){e.navigation=b;let t=we(v);t!==void 0&&(e.actionData=t)}T.length>0&&(e.fetchers=U(T)),H(e,{flushSync:_})}T.forEach(e=>{K(e.key),e.controller&&I.set(e.key,e.controller)});let E=()=>T.forEach(e=>K(e.key));N&&N.signal.addEventListener(`abort`,E);let{loaderResults:D,fetcherResults:O}=await Ae(w,T,t,n,u);if(t.signal.aborted)return{shortCircuited:!0};N&&N.signal.removeEventListener(`abort`,E),T.forEach(e=>I.delete(e.key));let k=qt(D);if(k)return await Oe(t,k.result,!0,{replace:h}),{shortCircuited:!0};if(k=qt(O),k)return de.add(k.key),await Oe(t,k.result,!0,{replace:h}),{shortCircuited:!0};let j=new Map(A.fetchers),{loaderData:M,errors:ee}=Ht(A,i,D,v,T,O,j);g&&A.errors&&(ee={...A.errors,...ee});let te=Be(j),P=Ve(le,j),ne=te||P||T.length>0;return{matches:i,loaderData:M,errors:ee,...ne?{workingFetchers:j}:{}}}function we(e){if(e&&!Y(e[1]))return{[e[0]]:e[1].data};if(A.actionData)return Object.keys(A.actionData).length===0?null:A.actionData}function U(e){let t=new Map(A.fetchers);return e.forEach(e=>{let n=t.get(e.key),r=fn(void 0,n?n.data:void 0);t.set(e.key,r)}),t}async function Te(t,n,r,i){K(t);let a=(i&&i.flushSync)===!0,o=s.activeRoutes,l=st(A.location,A.matches,c,r,n,i?.relative),u=F(o,l,c,!1,s.branches),d=nt(u,o,l);if(d.active&&d.matches&&(u=d.matches),!u){G(t,n,J(404,{pathname:l}),{flushSync:a});return}let{path:f,submission:p,error:m}=ct(!0,l,i);if(m){G(t,n,m,{flushSync:a});return}let h=e.getContext?await e.getContext():new k,g=(i&&i.preventScrollReset)===!0;if(p&&X(p.formMethod)){await Ee(t,n,f,u,h,d.active,a,g,p,i&&i.defaultShouldRevalidate);return}fe.set(t,{routeId:n,path:f}),await De(t,n,f,u,h,d.active,a,g,p)}async function Ee(t,n,i,l,u,d,f,p,m,h){Me(),fe.delete(t),W(t,pn(m,A.fetchers.get(t)),{flushSync:f});let g=new AbortController,_=Lt(e.history,i,g.signal,m);if(d){let e=await q(l,new URL(_.url).pathname,_.signal,t);if(e.type===`aborted`)return;if(e.type===`error`){G(t,n,e.error,{flushSync:f});return}if(e.matches)l=e.matches;else{G(t,n,J(404,{pathname:i}),{flushSync:f});return}}let v=cn(l,i);if(!v.route.action&&!v.route.lazy){G(t,n,J(405,{method:m.formMethod,pathname:i,routeId:n}),{flushSync:f});return}I.set(t,g);let b=ce,x=Ot(a,o,_,i,l,v,r,u),S=await ke(_,i,x,u,t),C=S[v.route.id];if(!C){for(let e of x)if(S[e.route.id]){C=S[e.route.id];break}}if(_.signal.aborted){I.get(t)===g&&I.delete(t);return}if(R.has(t)){if(en(C)||Y(C)){W(t,mn(void 0));return}}else{if(en(C)){if(I.delete(t),le>b){W(t,mn(void 0));return}return de.add(t),W(t,fn(m)),Oe(_,C,!1,{fetcherSubmission:m,preventScrollReset:p})}if(Y(C)){G(t,n,C.error);return}}let w=A.navigation.location||A.location,T=Lt(e.history,w,g.signal),E=s.activeRoutes,D=A.navigation.state===`idle`?A.matches:F(E,A.navigation.location,c,!1,s.branches);y(D,`Didn't find any matches after fetcher action`);let O=++ce;ue.set(t,O);let{dsMatches:k,revalidatingFetchers:M}=lt(T,u,a,o,e.history,A,D,m,w,r,!1,oe,se,R,fe,de,E,c,e.patchRoutesOnNavigation!=null,s.branches,[v.route.id,C],h),ee=fn(m,C.data),te=new Map(A.fetchers);te.set(t,ee),M.filter(e=>e.key!==t).forEach(e=>{let t=e.key,n=te.get(t),r=fn(void 0,n?n.data:void 0);te.set(t,r),K(t),e.controller&&I.set(t,e.controller)}),H({fetchers:te});let P=()=>M.forEach(e=>K(e.key));g.signal.addEventListener(`abort`,P);let{loaderResults:ne,fetcherResults:re}=await Ae(k,M,T,w,u);if(g.signal.aborted)return;g.signal.removeEventListener(`abort`,P),ue.delete(t),I.delete(t),M.forEach(e=>I.delete(e.key));let ie=A.fetchers.has(t),ae=e=>{if(!ie)return e;let n=new Map(e.fetchers);return n.set(t,mn(C.data)),{...e,fetchers:n}},L=qt(ne);if(L)return A=ae(A),Oe(T,L.result,!1,{preventScrollReset:p});if(L=qt(re),L)return de.add(L.key),A=ae(A),Oe(T,L.result,!1,{preventScrollReset:p});let z=new Map(A.fetchers);ie&&z.set(t,mn(C.data));let{loaderData:pe,errors:B}=Ht(A,D,ne,void 0,M,re,z);Ve(O,z),A.navigation.state===`loading`&&O>le?(y(j,`Expected pending action`),N&&N.abort(),ve(A.navigation.location,{matches:D,loaderData:pe,errors:B,fetchers:z})):(H({errors:B,loaderData:Ut(A.loaderData,pe,D,B),fetchers:z}),oe=!1)}async function De(t,n,i,s,c,l,u,d,f){let p=A.fetchers.get(t);W(t,fn(f,p?p.data:void 0),{flushSync:u});let m=new AbortController,h=Lt(e.history,i,m.signal);if(l){let e=await q(s,new URL(h.url).pathname,h.signal,t);if(e.type===`aborted`)return;if(e.type===`error`){G(t,n,e.error,{flushSync:u});return}if(e.matches)s=e.matches;else{G(t,n,J(404,{pathname:i}),{flushSync:u});return}}let g=cn(s,i);I.set(t,m);let _=ce,v=await ke(h,i,Ot(a,o,h,i,s,g,r,c),c,t),y=v[g.route.id];if(!y){for(let e of s)if(v[e.route.id]){y=v[e.route.id];break}}if(I.get(t)===m&&I.delete(t),!h.signal.aborted){if(R.has(t)){W(t,mn(void 0));return}if(en(y)){if(le>_){W(t,mn(void 0));return}de.add(t),await Oe(h,y,!1,{preventScrollReset:d});return}if(Y(y)){G(t,n,y.error);return}W(t,mn(y.data))}}async function Oe(r,i,a,{submission:o,fetcherSubmission:s,preventScrollReset:l,replace:u}={}){a||(M?.resolve(),M=null),i.response.headers.has(`X-Remix-Revalidate`)&&(oe=!0);let d=i.response.headers.get(`Location`);y(d,`Expected a Location header on the redirect Response`),d=It(d,new URL(r.url),c,e.history);let f=C(A.location,d,{_isRedirect:!0});if(n){let e=!1;if(i.response.headers.has(`X-Remix-Reload-Document`))e=!0;else if(_e(d)){let n=D(t,d,!0);e=n.origin!==t.location.origin||V(n.pathname,c)==null}if(e){u?t.location.replace(d):t.location.assign(d);return}}N=null;let p=u===!0||i.response.headers.has(`X-Remix-Replace`)?`REPLACE`:`PUSH`,{formMethod:m,formAction:h,formEncType:g}=A.navigation;!o&&!s&&m&&h&&g&&(o=ln(A.navigation));let _=o||s;Je.has(i.response.status)&&_&&X(_.formMethod)?await xe(p,f,{submission:{..._,formAction:d},preventScrollReset:l||ee,enableViewTransition:a?P:void 0}):await xe(p,f,{overrideNavigation:un(f,[],p,o),fetcherSubmission:s,preventScrollReset:l||ee,enableViewTransition:a?P:void 0})}async function ke(e,t,n,r,i){let a,o={};try{a=await kt(l,e,t,n,i,r,!1)}catch(e){return n.filter(e=>e.shouldLoad).forEach(t=>{o[t.route.id]={type:`error`,error:e}}),o}if(e.signal.aborted)return o;if(!X(e.method))for(let e of n){if(a[e.route.id]?.type===`error`)break;!a.hasOwnProperty(e.route.id)&&!A.loaderData.hasOwnProperty(e.route.id)&&(!A.errors||!A.errors.hasOwnProperty(e.route.id))&&e.shouldCallHandler()&&(a[e.route.id]={type:`error`,result:Error(`No result returned from dataStrategy for route ${e.route.id}`)})}for(let[t,r]of Object.entries(a))if($t(r)){let i=r.result;o[t]={type:`redirect`,response:Nt(i,e,t,n,c)}}else o[t]=await Mt(r);return o}async function Ae(e,t,n,r,i){let a=ke(n,r,e,i,null),o=Promise.all(t.map(async e=>{if(e.matches&&e.match&&e.request&&e.controller){let t=(await ke(e.request,e.path,e.matches,i,e.key))[e.match.route.id];return{[e.key]:t}}return Promise.resolve({[e.key]:{type:`error`,error:J(404,{pathname:e.path})}})}));return{loaderResults:await a,fetcherResults:(await o).reduce((e,t)=>Object.assign(e,t),{})}}function Me(){oe=!0,fe.forEach((e,t)=>{I.has(t)&&se.add(t),K(t)})}function W(e,t,n={}){let r=new Map(A.fetchers);r.set(e,t),H({fetchers:r},{flushSync:(n&&n.flushSync)===!0})}function G(e,t,n,r={}){let i=Gt(A.matches,t),a=new Map(A.fetchers);Le(a,e),H({errors:{[i.route.id]:n},fetchers:a},{flushSync:(r&&r.flushSync)===!0})}function Ne(e){return L.set(e,(L.get(e)||0)+1),R.has(e)&&R.delete(e),A.fetchers.get(e)||Xe}function Ie(e,t){K(e,t?.reason),W(e,mn(null))}function Le(e,t){let n=A.fetchers.get(t);I.has(t)&&!(n&&n.state===`loading`&&ue.has(t))&&K(t),fe.delete(t),ue.delete(t),de.delete(t),R.delete(t),se.delete(t),e.delete(t)}function Re(e){let t=(L.get(e)||0)-1;t<=0?(L.delete(e),R.add(e)):L.set(e,t),H({fetchers:new Map(A.fetchers)})}function K(e,t){let n=I.get(e);n&&(n.abort(t),I.delete(e))}function ze(e,t){for(let n of e){let e=t.get(n);y(e,`Expected fetcher: ${n}`);let r=mn(e.data);t.set(n,r)}}function Be(e){let t=[],n=!1;for(let r of de){let i=e.get(r);y(i,`Expected fetcher: ${r}`),i.state===`loading`&&(de.delete(r),t.push(r),n=!0)}return ze(t,e),n}function Ve(e,t){let n=[];for(let[r,i]of ue)if(i<e){let e=t.get(r);y(e,`Expected fetcher: ${r}`),e.state===`loading`&&(K(r),ue.delete(r),n.push(r))}return ze(n,t),n.length>0}function He(e,t){let n=A.blockers.get(e)||Ze;return z.get(e)!==t&&z.set(e,t),n}function Ue(e){A.blockers.delete(e),z.delete(e)}function We(e,t){let n=A.blockers.get(e)||Ze;y(n.state===`unblocked`&&t.state===`blocked`||n.state===`blocked`&&t.state===`blocked`||n.state===`blocked`&&t.state===`proceeding`||n.state===`blocked`&&t.state===`unblocked`||n.state===`proceeding`&&t.state===`unblocked`,`Invalid blocker state transition: ${n.state} -> ${t.state}`);let r=new Map(A.blockers);r.set(e,t),H({blockers:r})}function Ge({currentLocation:e,nextLocation:t,historyAction:n}){if(z.size===0)return;z.size>1&&b(!1,`A router only supports one blocker at a time`);let r=Array.from(z.entries()),[i,a]=r[r.length-1],o=A.blockers.get(i);if(!(o&&o.state===`proceeding`)&&a({currentLocation:e,nextLocation:t,historyAction:n}))return i}function Ke(e){let t=J(404,{pathname:e}),n=s.activeRoutes,{matches:r,route:i}=Kt(n);return{notFoundMatches:r,route:i,error:t}}function qe(e,t,n){if(m=e,g=t,h=n||null,!_&&A.navigation===Ye){_=!0;let e=tt(A.location,A.matches);e!=null&&H({restoreScrollPosition:e})}return()=>{m=null,g=null,h=null}}function $e(e,t){return h&&h(e,t.map(e=>re(e,A.loaderData)))||e.key}function et(e,t){if(m&&g){let n=$e(e,t);m[n]=g()}}function tt(e,t){if(m){let n=$e(e,t),r=m[n];if(typeof r==`number`)return r}return null}function nt(t,n,r){if(e.patchRoutesOnNavigation){let e=s.branches;if(!t)return{active:!0,matches:F(n,r,c,!0,e)||[]};if(Object.keys(t[0].params).length>0)return{active:!0,matches:F(n,r,c,!0,e)}}return{active:!1,matches:null}}async function q(t,n,r,i){if(!e.patchRoutesOnNavigation)return{type:`success`,matches:t};let l=t;for(;;){let t=o;try{await e.patchRoutesOnNavigation({signal:r,path:n,matches:l,fetcherKey:i,patch:(e,n)=>{r.aborted||ht(e,n,s,t,a,!1)}})}catch(e){return{type:`error`,error:e,partialMatches:l}}if(r.aborted)return{type:`aborted`};let u=s.branches,d=F(s.activeRoutes,n,c,!1,u),f=null;if(d&&(Object.keys(d[0].params).length===0||(f=F(s.activeRoutes,n,c,!0,u),!(f&&l.length<f.length&&rt(l,f.slice(0,l.length))))))return{type:`success`,matches:d};if(f||=F(s.activeRoutes,n,c,!0,u),!f||rt(l,f))return{type:`success`,matches:null};l=f}}function rt(e,t){return e.length===t.length&&e.every((e,n)=>e.route.id===t[n].route.id)}function at(e){o={},s.setHmrRoutes(te(e,a,void 0,o))}function ot(e,t,n=!1){ht(e,t,s,o,a,n),s.hasHMRRoutes||H({})}return O={get basename(){return c},get future(){return u},get state(){return A},get routes(){return s.stableRoutes},get branches(){return s.branches},get manifest(){return o},get window(){return t},initialize:me,subscribe:ge,enableScrollRestoration:qe,navigate:ye,fetch:Te,revalidate:be,createHref:t=>e.history.createHref(t),encodeLocation:t=>e.history.encodeLocation(t),getFetcher:Ne,resetFetcher:Ie,deleteFetcher:Re,dispose:he,getBlocker:He,deleteBlocker:Ue,patchRoutes:ot,_internalFetchControllers:I,_internalSetRoutes:at,_internalSetStateDoNotUseOrYouWillBreakYourApp(e){H(e)}},e.instrumentations&&(O=Fe(O,e.instrumentations.map(e=>e.router).filter(Boolean))),O}function ot(e){return e!=null&&(`formData`in e&&e.formData!=null||`body`in e&&e.body!==void 0)}function st(e,t,n,r,i,a){let o,s;if(i){o=[];for(let e of t)if(o.push(e),e.route.id===i){s=e;break}}else o=t,s=t[t.length-1];let c=Ce(r||`.`,Se(o),V(e.pathname,n)||e.pathname,a===`path`);if(r??(c.search=e.search,c.hash=e.hash),(r==null||r===``||r===`.`)&&s){let e=sn(c.search);if(s.route.index&&!e)c.search=c.search?c.search.replace(/^\?/,`?index&`):`?index`;else if(!s.route.index&&e){let e=new URLSearchParams(c.search),t=e.getAll(`index`);e.delete(`index`),t.filter(e=>e).forEach(t=>e.append(`index`,t));let n=e.toString();c.search=n?`?${n}`:``}}return n!==`/`&&(c.pathname=H({basename:n,pathname:c.pathname})),w(c)}function ct(e,t,n){if(!n||!ot(n))return{path:t};if(n.formMethod&&!on(n.formMethod))return{path:t,error:J(405,{method:n.formMethod})};let r=()=>({path:t,error:J(400,{type:`invalid-body`})}),i=(n.formMethod||`get`).toUpperCase(),a=Jt(t);if(n.body!==void 0){if(n.formEncType===`text/plain`){if(!X(i))return r();let e=typeof n.body==`string`?n.body:n.body instanceof FormData||n.body instanceof URLSearchParams?Array.from(n.body.entries()).reduce((e,[t,n])=>`${e}${t}=${n}
2
+ `,``):String(n.body);return{path:t,submission:{formMethod:i,formAction:a,formEncType:n.formEncType,formData:void 0,json:void 0,text:e}}}if(n.formEncType===`application/json`){if(!X(i))return r();try{let e=typeof n.body==`string`?JSON.parse(n.body):n.body;return{path:t,submission:{formMethod:i,formAction:a,formEncType:n.formEncType,formData:void 0,json:e,text:void 0}}}catch{return r()}}}y(typeof FormData==`function`,`FormData is not available in this environment`);let o,s;if(n.formData)o=zt(n.formData),s=n.formData;else if(n.body instanceof FormData)o=zt(n.body),s=n.body;else if(n.body instanceof URLSearchParams)o=n.body,s=Bt(o);else if(n.body==null)o=new URLSearchParams,s=new FormData;else try{o=new URLSearchParams(n.body),s=Bt(o)}catch{return r()}let c={formMethod:i,formAction:a,formEncType:n&&n.formEncType||`application/x-www-form-urlencoded`,formData:s,json:void 0,text:void 0};if(X(c.formMethod))return{path:t,submission:c};let l=T(t);return e&&l.search&&sn(l.search)&&o.append(`index`,``),l.search=`?${o}`,{path:w(l),submission:c}}function lt(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x){let S=b?Y(b[1])?b[1].error:b[1].data:void 0,C=i.createURL(a.location),w=i.createURL(c),T;if(u&&a.errors){let e=Object.keys(a.errors)[0];T=o.findIndex(t=>t.route.id===e)}else if(b&&Y(b[1])){let e=b[0];T=o.findIndex(t=>t.route.id===e)-1}let E=b?b[1].statusCode:void 0,D=E&&E>=400,O={currentUrl:C,currentParams:a.matches[0]?.params||{},nextUrl:w,nextParams:o[0].params,...s,actionResult:S,actionStatus:E},k=Me(o),A=o.map((i,o)=>{let{route:s}=i,f=null;if(T!=null&&o>T)f=!1;else if(s.lazy)f=!0;else if(!ut(s))f=!1;else if(u){let{shouldLoad:e}=dt(s,a.loaderData,a.errors);f=e}else ft(a.loaderData,a.matches[o],i)&&(f=!0);if(f!==null)return Dt(n,r,e,c,k,i,l,t,f);let p=!1;typeof x==`boolean`?p=x:D?p=!1:d||C.pathname+C.search===w.pathname+w.search?p=!0:C.search===w.search?pt(a.matches[o],i)&&(p=!0):p=!0;let m={...O,defaultShouldRevalidate:p},h=mt(i,m);return Dt(n,r,e,c,k,i,l,t,h,m,x)}),j=[];return m.forEach((e,s)=>{if(u||!o.some(t=>t.route.id===e.routeId)||p.has(s))return;let c=a.fetchers.get(s),m=c&&c.state!==`idle`&&c.data===void 0,b=F(g,e.path,_??`/`,!1,y);if(!b){if(v&&m)return;j.push({key:s,routeId:e.routeId,path:e.path,matches:null,match:null,request:null,controller:null});return}if(h.has(s))return;let S=cn(b,e.path),C=new AbortController,w=Lt(i,e.path,C.signal),T=null;if(f.has(s))f.delete(s),T=Ot(n,r,w,e.path,b,S,l,t);else if(m)d&&(T=Ot(n,r,w,e.path,b,S,l,t));else{let i;i=typeof x==`boolean`?x:!D&&d;let a={...O,defaultShouldRevalidate:i};mt(S,a)&&(T=Ot(n,r,w,e.path,b,S,l,t,a))}T&&j.push({key:s,routeId:e.routeId,path:e.path,matches:T,match:S,request:w,controller:C})}),{dsMatches:A,revalidatingFetchers:j}}function ut(e){return e.loader!=null||e.middleware!=null&&e.middleware.length>0}function dt(e,t,n){if(e.lazy)return{shouldLoad:!0,renderFallback:!0};if(!ut(e))return{shouldLoad:!1,renderFallback:!1};let r=t!=null&&e.id in t,i=n!=null&&n[e.id]!==void 0;if(!r&&i)return{shouldLoad:!1,renderFallback:!1};if(typeof e.loader==`function`&&e.loader.hydrate===!0)return{shouldLoad:!0,renderFallback:!r};let a=!r&&!i;return{shouldLoad:a,renderFallback:a}}function ft(e,t,n){let r=!t||n.route.id!==t.route.id,i=!e.hasOwnProperty(n.route.id);return r||i}function pt(e,t){let n=e.route.path;return e.pathname!==t.pathname||n!=null&&n.endsWith(`*`)&&e.params[`*`]!==t.params[`*`]}function mt(e,t){if(e.route.shouldRevalidate){let n=e.route.shouldRevalidate(t);if(typeof n==`boolean`)return n}return t.defaultShouldRevalidate}function ht(e,t,n,r,i,a){let o;if(e){let t=r[e];y(t,`No route found to patch children into: routeId = ${e}`),t.children||=[],o=t.children}else o=n.activeRoutes;let s=[],c=[];if(t.forEach(e=>{let t=o.find(t=>gt(e,t));t?c.push({existingRoute:t,newRoute:e}):s.push(e)}),s.length>0){let t=te(s,i,[e||`_`,`patch`,String(o?.length||`0`)],r);o.push(...t)}if(a&&c.length>0)for(let e=0;e<c.length;e++){let{existingRoute:t,newRoute:n}=c[e],r=t,[a]=te([n],i,[],{},!0);Object.assign(r,{element:a.element?a.element:r.element,errorElement:a.errorElement?a.errorElement:r.errorElement,hydrateFallbackElement:a.hydrateFallbackElement?a.hydrateFallbackElement:r.hydrateFallbackElement})}n.hasHMRRoutes||n.setRoutes([...n.activeRoutes])}function gt(e,t){return`id`in e&&`id`in t&&e.id===t.id?!0:e.index!==t.index||e.path!==t.path||e.caseSensitive!==t.caseSensitive?!1:(!e.children||e.children.length===0)&&(!t.children||t.children.length===0)?!0:e.children?.every((e,n)=>t.children?.some(t=>gt(e,t)))??!1}var _t=new WeakMap,vt=({key:e,route:t,manifest:n,mapRouteProperties:r})=>{let i=n[t.id];if(y(i,`No route found in manifest`),!i.lazy||typeof i.lazy!=`object`)return;let a=i.lazy[e];if(!a)return;let o=_t.get(i);o||(o={},_t.set(i,o));let s=o[e];if(s)return s;let c=(async()=>{let t=j(e),n=i[e]!==void 0&&e!==`hasErrorBoundary`;if(t)b(!t,`Route property `+e+` is not a supported lazy route property. This property will be ignored.`),o[e]=Promise.resolve();else if(n)b(!1,`Route "${i.id}" has a static property "${e}" defined. The lazy property will be ignored.`);else{let t=await a();t!=null&&(Object.assign(i,{[e]:t}),Object.assign(i,r(i)))}typeof i.lazy==`object`&&(i.lazy[e]=void 0,Object.values(i.lazy).every(e=>e===void 0)&&(i.lazy=void 0))})();return o[e]=c,c},yt=new WeakMap;function bt(e,t,n,r,i){let a=n[e.id];if(y(a,`No route found in manifest`),!e.lazy)return{lazyRoutePromise:void 0,lazyHandlerPromise:void 0};if(typeof e.lazy==`function`){let t=yt.get(a);if(t)return{lazyRoutePromise:t,lazyHandlerPromise:t};let n=(async()=>{y(typeof e.lazy==`function`,`No lazy route function found`);let t=await e.lazy(),n={};for(let e in t){let r=t[e];if(r===void 0)continue;let i=ee(e),o=a[e]!==void 0&&e!==`hasErrorBoundary`;i?b(!i,`Route property `+e+` is not a supported property to be returned from a lazy route function. This property will be ignored.`):o?b(!o,`Route "${a.id}" has a static property "${e}" defined but its lazy function is also returning a value for this property. The lazy route property "${e}" will be ignored.`):n[e]=r}Object.assign(a,n),Object.assign(a,{...r(a),lazy:void 0})})();return yt.set(a,n),n.catch(()=>{}),{lazyRoutePromise:n,lazyHandlerPromise:n}}let o=Object.keys(e.lazy),s=[],c;for(let a of o){if(i&&i.includes(a))continue;let o=vt({key:a,route:e,manifest:n,mapRouteProperties:r});o&&(s.push(o),a===t&&(c=o))}let l=s.length>0?Promise.all(s).then(()=>{}):void 0;return l?.catch(()=>{}),c?.catch(()=>{}),{lazyRoutePromise:l,lazyHandlerPromise:c}}async function xt(e){let t=e.matches.filter(e=>e.shouldLoad),n={};return(await Promise.all(t.map(e=>e.resolve()))).forEach((e,r)=>{n[t[r].route.id]=e}),n}async function St(e){return e.matches.some(e=>e.route.middleware)?Ct(e,()=>xt(e)):xt(e)}function Ct(e,t){return wt(e,t,e=>{if(an(e))throw e;return e},Zt,n);function n(t,n,r){if(r)return Promise.resolve(Object.assign(r.value,{[n]:{type:`error`,result:t}}));{let{matches:r}=e,i=Gt(r,r[Math.min(Math.max(r.findIndex(e=>e.route.id===n),0),Math.max(r.findIndex(e=>e.shouldCallHandler()),0))].route.id).route.id;return Promise.resolve({[i]:{type:`error`,result:t}})}}}async function wt(e,t,n,r,i){let{matches:a,...o}=e;return await Tt(o,a.flatMap(e=>e.route.middleware?e.route.middleware.map(t=>[e.route.id,t]):[]),t,n,r,i)}async function Tt(e,t,n,r,i,a,o=0){let{request:s}=e;if(s.signal.aborted)throw s.signal.reason??Error(`Request aborted: ${s.method} ${s.url}`);let c=t[o];if(!c)return await n();let[l,u]=c,d,f=async()=>{if(d)throw Error("You may only call `next()` once per middleware");try{return d={value:await Tt(e,t,n,r,i,a,o+1)},d.value}catch(e){return d={value:await a(e,l,d)},d.value}};try{let t=await u(e,f),n=t==null?void 0:r(t);return i(n)?n:d?n??d.value:(d={value:await f()},d.value)}catch(e){return await a(e,l,d)}}function Et(e,t,n,r,i){let a=vt({key:`middleware`,route:r.route,manifest:t,mapRouteProperties:e}),o=bt(r.route,X(n.method)?`action`:`loader`,t,e,i);return{middleware:a,route:o.lazyRoutePromise,handler:o.lazyHandlerPromise}}function Dt(e,t,n,r,i,a,o,s,c,l=null,u){let d=!1,f=Et(e,t,n,a,o);return{...a,_lazyPromises:f,shouldLoad:c,shouldRevalidateArgs:l,shouldCallHandler(e){return d=!0,l?typeof u==`boolean`?mt(a,{...l,defaultShouldRevalidate:u}):typeof e==`boolean`?mt(a,{...l,defaultShouldRevalidate:e}):mt(a,l):c},resolve(e){let{lazy:t,loader:o,middleware:l}=a.route,u=d||c||e&&!X(n.method)&&(t||o),p=l&&l.length>0&&!o&&!t;return u&&(X(n.method)||!p)?At({request:n,path:r,pattern:i,match:a,lazyHandlerPromise:f?.handler,lazyRoutePromise:f?.route,handlerOverride:e,scopedContext:s}):Promise.resolve({type:`data`,result:void 0})}}}function Ot(e,t,n,r,i,a,o,s,c=null){return i.map(l=>l.route.id===a.route.id?Dt(e,t,n,r,Me(i),l,o,s,!0,c):{...l,shouldLoad:!1,shouldRevalidateArgs:c,shouldCallHandler:()=>!1,_lazyPromises:Et(e,t,n,l,o),resolve:()=>Promise.resolve({type:`data`,result:void 0})})}async function kt(e,t,n,r,i,a,o){r.some(e=>e._lazyPromises?.middleware)&&await Promise.all(r.map(e=>e._lazyPromises?.middleware));let s={request:t,url:Rt(t,n),pattern:Me(r),params:r[0].params,context:a,matches:r},c=o?()=>{throw Error("You cannot call `runClientMiddleware()` from a static handler `dataStrategy`. Middleware is run outside of `dataStrategy` during SSR in order to bubble up the Response. You can enable middleware via the `respond` API in `query`/`queryRoute`")}:e=>{let t=s;return Ct(t,()=>e({...t,fetcherKey:i,runClientMiddleware:()=>{throw Error("Cannot call `runClientMiddleware()` from within an `runClientMiddleware` handler")}}))},l=await e({...s,fetcherKey:i,runClientMiddleware:c});try{await Promise.all(r.flatMap(e=>[e._lazyPromises?.handler,e._lazyPromises?.route]))}catch{}return l}async function At({request:e,path:t,pattern:n,match:r,lazyHandlerPromise:i,lazyRoutePromise:a,handlerOverride:o,scopedContext:s}){let c,l,u=X(e.method),d=u?`action`:`loader`,f=i=>{let a,c=new Promise((e,t)=>a=t);l=()=>a(),e.signal.addEventListener(`abort`,l);let u=a=>typeof i==`function`?i({request:e,url:Rt(e,t),pattern:n,params:r.params,context:s},...a===void 0?[]:[a]):Promise.reject(Error(`You cannot call the handler for a route which defines a boolean "${d}" [routeId: ${r.route.id}]`)),f=(async()=>{try{return{type:`data`,result:await(o?o(e=>u(e)):u())}}catch(e){return{type:`error`,result:e}}})();return Promise.race([f,c])};try{let t=u?r.route.action:r.route.loader;if(i||a){if(t){let e,[n]=await Promise.all([f(t).catch(t=>{e=t}),i,a]);if(e!==void 0)throw e;c=n}else{await i;let t=u?r.route.action:r.route.loader;if(t)[c]=await Promise.all([f(t),a]);else if(d===`action`){let t=new URL(e.url),n=t.pathname+t.search;throw J(405,{method:e.method,pathname:n,routeId:r.route.id})}else return{type:`data`,result:void 0}}}else if(t)c=await f(t);else{let t=new URL(e.url);throw J(404,{pathname:t.pathname+t.search})}}catch(e){return{type:`error`,result:e}}finally{l&&e.signal.removeEventListener(`abort`,l)}return c}async function jt(e){let t=e.headers.get(`Content-Type`);return t&&/\bapplication\/json\b/.test(t)?e.body==null?null:e.json():e.text()}async function Mt(e){let{result:t,type:n}=e;if(nn(t)){let e;try{e=await jt(t)}catch(e){return{type:`error`,error:e}}return n===`error`?{type:`error`,error:new Ae(t.status,t.statusText,e),statusCode:t.status,headers:t.headers}:{type:`data`,data:e,statusCode:t.status,headers:t.headers}}return n===`error`?tn(t)?t.data instanceof Error?{type:`error`,error:t.data,statusCode:t.init?.status,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:`error`,error:Xt(t),statusCode:je(t)?t.status:void 0,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:`error`,error:t,statusCode:je(t)?t.status:void 0}:tn(t)?{type:`data`,data:t.data,statusCode:t.init?.status,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:`data`,data:t}}function Nt(e,t,n,r,i){let a=e.headers.get(`Location`);if(y(a,`Redirects returned/thrown from loaders/actions must have a Location header`),!_e(a)){let o=r.slice(0,r.findIndex(e=>e.route.id===n)+1);a=st(new URL(t.url),o,i,a),e.headers.set(`Location`,a)}return e}var Pt=[`about:`,`blob:`,`chrome:`,`chrome-untrusted:`,`content:`,`data:`,`devtools:`,`file:`,`filesystem:`,`javascript:`];function Ft(e){try{return Pt.includes(new URL(e).protocol)}catch{return!1}}function It(e,t,n,r){if(_e(e)){let r=e,i=m.test(r)?new URL(h(r,t.protocol)):new URL(r);if(Ft(i.toString()))throw Error(`Invalid redirect location`);let a=V(i.pathname,n)!=null;if(i.origin===t.origin&&a)return we(i.pathname)+i.search+i.hash}try{if(Ft(r.createURL(e).toString()))throw Error(`Invalid redirect location`)}catch{}return e}function Lt(e,t,n,r){let i=e.createURL(Jt(t)).toString(),a={signal:n};if(r&&X(r.formMethod)){let{formMethod:e,formEncType:t}=r;a.method=e.toUpperCase(),t===`application/json`?(a.headers=new Headers({"Content-Type":t}),a.body=JSON.stringify(r.json)):a.body=t===`text/plain`?r.text:t===`application/x-www-form-urlencoded`&&r.formData?zt(r.formData):r.formData}return new Request(i,a)}function Rt(e,t){let n=new URL(e.url),r=typeof t==`string`?T(t):t;if(n.pathname=r.pathname||`/`,r.search){let e=new URLSearchParams(r.search),t=e.getAll(`index`);e.delete(`index`);for(let n of t.filter(Boolean))e.append(`index`,n);n.search=e.size?`?${e.toString()}`:``}else n.search=``;return n.hash=r.hash||``,n}function zt(e){let t=new URLSearchParams;for(let[n,r]of e.entries())t.append(n,typeof r==`string`?r:r.name);return t}function Bt(e){let t=new FormData;for(let[n,r]of e.entries())t.append(n,r);return t}function Vt(e,t,n,r=!1,i=!1){let a={},o=null,s,c=!1,l={},u=n&&Y(n[1])?n[1].error:void 0;return e.forEach(n=>{if(!(n.route.id in t))return;let d=n.route.id,f=t[d];if(y(!en(f),`Cannot handle redirect results in processLoaderData`),Y(f)){let t=f.error;if(u!==void 0&&(t=u,u=void 0),o||={},i)o[d]=t;else{let n=Gt(e,d);o[n.route.id]??(o[n.route.id]=t)}r||(a[d]=et),c||(c=!0,s=je(f.error)?f.error.status:500),f.headers&&(l[d]=f.headers)}else a[d]=f.data,f.statusCode&&f.statusCode!==200&&!c&&(s=f.statusCode),f.headers&&(l[d]=f.headers)}),u!==void 0&&n&&(o={[n[0]]:u},n[2]&&(a[n[2]]=void 0)),{loaderData:a,errors:o,statusCode:s||200,loaderHeaders:l}}function Ht(e,t,n,r,i,a,o){let{loaderData:s,errors:c}=Vt(t,n,r);return i.filter(e=>!e.matches||e.matches.some(e=>e.shouldLoad)).forEach(t=>{let{key:n,match:r,controller:i}=t;if(i&&i.signal.aborted)return;let s=a[n];if(y(s,`Did not find corresponding fetcher result`),Y(s)){let t=Gt(e.matches,r?.route.id);c&&c[t.route.id]||(c={...c,[t.route.id]:s.error}),o.delete(n)}else if(en(s))y(!1,`Unhandled fetcher revalidation redirect`);else{let e=mn(s.data);o.set(n,e)}}),{loaderData:s,errors:c}}function Ut(e,t,n,r){let i=Object.entries(t).filter(([,e])=>e!==et).reduce((e,[t,n])=>(e[t]=n,e),{});for(let a of n){let n=a.route.id;if(!t.hasOwnProperty(n)&&e.hasOwnProperty(n)&&a.route.loader&&(i[n]=e[n]),r&&r.hasOwnProperty(n))break}return i}function Wt(e){return e?Y(e[1])?{actionData:{}}:{actionData:{[e[0]]:e[1].data}}:{}}function Gt(e,t){return(t?e.slice(0,e.findIndex(e=>e.route.id===t)+1):[...e]).reverse().find(e=>e.route.hasErrorBoundary===!0)||e[0]}function Kt(e){let t=e.length===1?e[0]:e.find(e=>e.index||!e.path||e.path===`/`)||{id:`__shim-error-route__`};return{matches:[{params:{},pathname:``,pathnameBase:``,route:t}],route:t}}function J(e,{pathname:t,routeId:n,method:r,type:i,message:a}={}){let o=`Unknown Server Error`,s=`Unknown @remix-run/router error`;return e===400?(o=`Bad Request`,r&&t&&n?s=`You made a ${r} request to "${t}" but did not provide a \`loader\` for route "${n}", so there is no way to handle the request.`:i===`invalid-body`&&(s=`Unable to encode submission body`)):e===403?(o=`Forbidden`,s=`Route "${n}" does not match URL "${t}"`):e===404?(o=`Not Found`,s=`No route matches URL "${t}"`):e===405&&(o=`Method Not Allowed`,r&&t&&n?s=`You made a ${r.toUpperCase()} request to "${t}" but did not provide an \`action\` for route "${n}", so there is no way to handle the request.`:r&&(s=`Invalid request method "${r.toUpperCase()}"`)),new Ae(e||500,o,Error(s),!0)}function qt(e){let t=Object.entries(e);for(let e=t.length-1;e>=0;e--){let[n,r]=t[e];if(en(r))return{key:n,result:r}}}function Jt(e){return w({...typeof e==`string`?T(e):e,hash:``})}function Yt(e,t){return e.pathname!==t.pathname||e.search!==t.search?!1:e.hash===``?t.hash!==``:e.hash===t.hash||t.hash!==``}function Xt(e){return new Ae(e.init?.status??500,e.init?.statusText??`Internal Server Error`,e.data)}function Zt(e){return typeof e==`object`&&!!e&&Object.entries(e).every(([e,t])=>typeof e==`string`&&Qt(t))}function Qt(e){return typeof e==`object`&&!!e&&`type`in e&&`result`in e&&(e.type===`data`||e.type===`error`)}function $t(e){return nn(e.result)&&qe.has(e.result.status)}function Y(e){return e.type===`error`}function en(e){return(e&&e.type)===`redirect`}function tn(e){return typeof e==`object`&&!!e&&`type`in e&&`data`in e&&`init`in e&&e.type===`DataWithResponseInit`}function nn(e){return e!=null&&typeof e.status==`number`&&typeof e.statusText==`string`&&typeof e.headers==`object`&&e.body!==void 0}function rn(e){return qe.has(e)}function an(e){return nn(e)&&rn(e.status)&&e.headers.has(`Location`)}function on(e){return Ke.has(e.toUpperCase())}function X(e){return We.has(e.toUpperCase())}function sn(e){return new URLSearchParams(e).getAll(`index`).some(e=>e===``)}function cn(e,t){let n=typeof t==`string`?T(t).search:t.search;if(e[e.length-1].route.index&&sn(n||``))return e[e.length-1];let r=xe(e);return r[r.length-1]}function ln(e){let{formMethod:t,formAction:n,formEncType:r,text:i,formData:a,json:o}=e;if(!(!t||!n||!r)){if(i!=null)return{formMethod:t,formAction:n,formEncType:r,formData:void 0,json:void 0,text:i};if(a!=null)return{formMethod:t,formAction:n,formEncType:r,formData:a,json:void 0,text:void 0};if(o!==void 0)return{formMethod:t,formAction:n,formEncType:r,formData:void 0,json:o,text:void 0}}}function un(e,t,n,r){return r?{state:`loading`,location:e,matches:t,historyAction:n,formMethod:r.formMethod,formAction:r.formAction,formEncType:r.formEncType,formData:r.formData,json:r.json,text:r.text}:{state:`loading`,location:e,matches:t,historyAction:n,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function dn(e,t,n,r){return{state:`submitting`,location:e,matches:t,historyAction:n,formMethod:r.formMethod,formAction:r.formAction,formEncType:r.formEncType,formData:r.formData,json:r.json,text:r.text}}function fn(e,t){return e?{state:`loading`,formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t}:{state:`loading`,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:t}}function pn(e,t){return{state:`submitting`,formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t?t.data:void 0}}function mn(e){return{state:`idle`,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e}}function hn(e,t){try{let n=e.sessionStorage.getItem($e);if(n){let e=JSON.parse(n);for(let[n,r]of Object.entries(e||{}))r&&Array.isArray(r)&&t.set(n,new Set(r||[]))}}catch{}}function gn(e,t){if(t.size>0){let n={};for(let[e,r]of t)n[e]=[...r];try{e.sessionStorage.setItem($e,JSON.stringify(n))}catch(e){b(!1,`Failed to save applied view transitions in sessionStorage (${e}).`)}}}function _n(){let e,t,n=new Promise((r,i)=>{e=async e=>{r(e);try{await n}catch{}},t=async e=>{i(e);try{await n}catch{}}});return{promise:n,resolve:e,reject:t}}var vn=r.createContext(null);vn.displayName=`DataRouter`;var yn=r.createContext(null);yn.displayName=`DataRouterState`;var bn=r.createContext(!1);function xn(){return r.useContext(bn)}var Sn=r.createContext({isTransitioning:!1});Sn.displayName=`ViewTransition`;var Cn=r.createContext(new Map);Cn.displayName=`Fetchers`;var wn=r.createContext(null);wn.displayName=`Await`;var Z=r.createContext(null);Z.displayName=`Navigation`;var Tn=r.createContext(null);Tn.displayName=`Location`;var Q=r.createContext({outlet:null,matches:[],isDataRoute:!1});Q.displayName=`Route`;var En=r.createContext(null);En.displayName=`RouteError`;var Dn=`REACT_ROUTER_ERROR`,On=`REDIRECT`,kn=`ROUTE_ERROR_RESPONSE`;function An(e){if(e.startsWith(`${Dn}:${On}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`&&typeof t.location==`string`&&typeof t.reloadDocument==`boolean`&&typeof t.replace==`boolean`)return t}catch{}}function jn(e){if(e.startsWith(`${Dn}:${kn}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`)return new Ae(t.status,t.statusText,t.data)}catch{}}function Mn(e,{relative:t}={}){y(Nn(),`useHref() may be used only in the context of a <Router> component.`);let{basename:n,navigator:i}=r.useContext(Z),{hash:a,pathname:o,search:s}=Hn(e,{relative:t}),c=o;return n!==`/`&&(c=o===`/`?n:U([n,o])),i.createHref({pathname:c,search:s,hash:a})}function Nn(){return r.useContext(Tn)!=null}function $(){return y(Nn(),`useLocation() may be used only in the context of a <Router> component.`),r.useContext(Tn).location}var Pn=`You should call navigate() in a React.useEffect(), not when your component is first rendered.`;function Fn(e){r.useContext(Z).static||r.useLayoutEffect(e)}function In(){let{isDataRoute:e}=r.useContext(Q);return e?ir():Ln()}function Ln(){y(Nn(),`useNavigate() may be used only in the context of a <Router> component.`);let e=r.useContext(vn),{basename:t,navigator:n}=r.useContext(Z),{matches:i}=r.useContext(Q),{pathname:a}=$(),o=JSON.stringify(Se(i)),s=r.useRef(!1);return Fn(()=>{s.current=!0}),r.useCallback((r,i={})=>{if(b(s.current,Pn),!s.current)return;if(typeof r==`number`){n.go(r);return}let c=Ce(r,JSON.parse(o),a,i.relative===`path`);e==null&&t!==`/`&&(c.pathname=c.pathname===`/`?t:U([t,c.pathname])),(i.replace?n.replace:n.push)(c,i.state,i)},[t,n,o,a,e])}var Rn=r.createContext(null);function zn(){return r.useContext(Rn)}function Bn(e){let t=r.useContext(Q).outlet;return r.useMemo(()=>t&&r.createElement(Rn.Provider,{value:e},t),[t,e])}function Vn(){let{matches:e}=r.useContext(Q);return e[e.length-1]?.params??{}}function Hn(e,{relative:t}={}){let{matches:n}=r.useContext(Q),{pathname:i}=$(),a=JSON.stringify(Se(n));return r.useMemo(()=>Ce(e,JSON.parse(a),i,t===`path`),[e,a,i,t])}function Un(e,t,n){y(Nn(),`useRoutes() may be used only in the context of a <Router> component.`);let{navigator:i}=r.useContext(Z),{matches:a}=r.useContext(Q),o=a[a.length-1],s=o?o.params:{},c=o?o.pathname:`/`,l=o?o.pathnameBase:`/`,u=o&&o.route;{let e=u&&u.path||``;or(c,!u||e.endsWith(`*`)||e.endsWith(`*?`),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${c}" (under <Route path="${e}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
3
+
4
+ Please change the parent <Route path="${e}"> to <Route path="${e===`/`?`*`:`${e}/*`}">.`)}let d=$(),f;if(t){let e=typeof t==`string`?T(t):t;y(l===`/`||e.pathname?.startsWith(l),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${l}" but pathname "${e.pathname}" was given in the \`location\` prop.`),f=e}else f=d;let p=f.pathname||`/`,m=p;if(l!==`/`){let e=l.replace(/^\//,``).split(`/`);m=`/`+p.replace(/^\//,``).split(`/`).slice(e.length).join(`/`)}let h=n&&n.state.matches.length?n.state.matches.map(e=>Object.assign(e,{route:n.manifest[e.route.id]||e.route})):ne(e,{pathname:m});b(u||h!=null,`No routes matched location "${f.pathname}${f.search}${f.hash}" `),b(h==null||h[h.length-1].route.element!==void 0||h[h.length-1].route.Component!==void 0||h[h.length-1].route.lazy!==void 0,`Matched leaf route at location "${f.pathname}${f.search}${f.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let g=Xn(h&&h.map(e=>Object.assign({},e,{params:Object.assign({},s,e.params),pathname:U([l,i.encodeLocation?i.encodeLocation(e.pathname.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathname]),pathnameBase:e.pathnameBase===`/`?l:U([l,i.encodeLocation?i.encodeLocation(e.pathnameBase.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathnameBase])})),a,n);return t&&g?r.createElement(Tn.Provider,{value:{location:{pathname:`/`,search:``,hash:``,state:null,key:`default`,mask:void 0,...f},navigationType:`POP`}},g):g}function Wn(){let e=rr(),t=je(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,i=`rgba(200,200,200, 0.5)`,a={padding:`0.5rem`,backgroundColor:i},o={padding:`2px 4px`,backgroundColor:i},s=null;return console.error(`Error handled by React Router default ErrorBoundary:`,e),s=r.createElement(r.Fragment,null,r.createElement(`p`,null,`💿 Hey developer 👋`),r.createElement(`p`,null,`You can provide a way better UX than this when your app throws errors by providing your own `,r.createElement(`code`,{style:o},`ErrorBoundary`),` or`,` `,r.createElement(`code`,{style:o},`errorElement`),` prop on your route.`)),r.createElement(r.Fragment,null,r.createElement(`h2`,null,`Unexpected Application Error!`),r.createElement(`h3`,{style:{fontStyle:`italic`}},t),n?r.createElement(`pre`,{style:a},n):null,s)}var Gn=r.createElement(Wn,null),Kn=class extends r.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!==`idle`&&e.revalidation===`idle`?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error===void 0?t.error:e.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error(`React Router caught the following error during render`,e)}render(){let e=this.state.error;if(this.context&&typeof e==`object`&&e&&`digest`in e&&typeof e.digest==`string`){let t=jn(e.digest);t&&(e=t)}let t=e===void 0?this.props.children:r.createElement(Q.Provider,{value:this.props.routeContext},r.createElement(En.Provider,{value:e,children:this.props.component}));return this.context?r.createElement(Jn,{error:e},t):t}};Kn.contextType=bn;var qn=new WeakMap;function Jn({children:e,error:t}){let{basename:n}=r.useContext(Z);if(typeof t==`object`&&t&&`digest`in t&&typeof t.digest==`string`){let e=An(t.digest);if(e){let i=qn.get(t);if(i)throw i;let a=G(e.location,n),o=a.absoluteURL||a.to;if(Ft(o))throw Error(`Invalid redirect location`);if(W&&!qn.get(t)){if(a.isExternal||e.reloadDocument)window.location.href=o;else{let n=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(a.to,{replace:e.replace}));throw qn.set(t,n),n}}return r.createElement(`meta`,{httpEquiv:`refresh`,content:`0;url=${o}`})}}return e}function Yn({routeContext:e,match:t,children:n}){let i=r.useContext(vn);return i&&i.static&&i.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(i.staticContext._deepestRenderedBoundaryId=t.route.id),r.createElement(Q.Provider,{value:e},n)}function Xn(e,t=[],n){let i=n?.state;if(e==null){if(!i)return null;if(i.errors)e=i.matches;else if(t.length===0&&!i.initialized&&i.matches.length>0)e=i.matches;else return null}let a=e,o=i?.errors;if(o!=null){let e=a.findIndex(e=>e.route.id&&o?.[e.route.id]!==void 0);y(e>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(o).join(`,`)}`),a=a.slice(0,Math.min(a.length,e+1))}let s=!1,c=-1;if(n&&i){s=i.renderFallback;for(let e=0;e<a.length;e++){let t=a[e];if((t.route.HydrateFallback||t.route.hydrateFallbackElement)&&(c=e),t.route.id){let{loaderData:e,errors:r}=i,o=t.route.loader&&!e.hasOwnProperty(t.route.id)&&(!r||r[t.route.id]===void 0);if(t.route.lazy||o){n.isStatic&&(s=!0),a=c>=0?a.slice(0,c+1):[a[0]];break}}}}let l=n?.onError,u=i&&l?(e,t)=>{l(e,{location:i.location,params:i.matches?.[0]?.params??{},pattern:Me(i.matches),errorInfo:t})}:void 0;return a.reduceRight((e,n,l)=>{let d,f=!1,p=null,m=null;i&&(d=o&&n.route.id?o[n.route.id]:void 0,p=n.route.errorElement||Gn,s&&(c<0&&l===0?(or(`route-fallback`,!1,"No `HydrateFallback` element provided to render during initial hydration"),f=!0,m=null):c===l&&(f=!0,m=n.route.hydrateFallbackElement||null)));let h=t.concat(a.slice(0,l+1)),g=()=>{let t;return t=d?p:f?m:n.route.Component?r.createElement(n.route.Component,null):n.route.element?n.route.element:e,r.createElement(Yn,{match:n,routeContext:{outlet:e,matches:h,isDataRoute:i!=null},children:t})};return i&&(n.route.ErrorBoundary||n.route.errorElement||l===0)?r.createElement(Kn,{location:i.location,revalidation:i.revalidation,component:p,error:d,children:g(),routeContext:{outlet:null,matches:h,isDataRoute:!0},onError:u}):g()},null)}function Zn(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Qn(e){let t=r.useContext(vn);return y(t,Zn(e)),t}function $n(e){let t=r.useContext(yn);return y(t,Zn(e)),t}function er(e){let t=r.useContext(Q);return y(t,Zn(e)),t}function tr(e){let t=er(e),n=t.matches[t.matches.length-1];return y(n.route.id,`${e} can only be used on routes that contain a unique "id"`),n.route.id}function nr(){return tr(`useRouteId`)}function rr(){let e=r.useContext(En),t=$n(`useRouteError`),n=tr(`useRouteError`);return e===void 0?t.errors?.[n]:e}function ir(){let{router:e}=Qn(`useNavigate`),t=tr(`useNavigate`),n=r.useRef(!1);return Fn(()=>{n.current=!0}),r.useCallback(async(r,i={})=>{b(n.current,Pn),n.current&&(typeof r==`number`?await e.navigate(r):await e.navigate(r,{fromRouteId:t,...i}))},[e,t])}var ar={};function or(e,t,n){!t&&!ar[e]&&(ar[e]=!0,b(!1,n))}var sr={};function cr(e,t){!e&&!sr[t]&&(sr[t]=!0,console.warn(t))}var lr=r.useOptimistic,ur=()=>void 0;function dr(e){return lr?lr(e):[e,ur]}function fr(e){let t={hasErrorBoundary:e.hasErrorBoundary||e.ErrorBoundary!=null||e.errorElement!=null};return e.Component&&(e.element&&b(!1,"You should not include both `Component` and `element` on your route - `Component` will be used."),Object.assign(t,{element:r.createElement(e.Component),Component:void 0})),e.HydrateFallback&&(e.hydrateFallbackElement&&b(!1,"You should not include both `HydrateFallback` and `hydrateFallbackElement` on your route - `HydrateFallback` will be used."),Object.assign(t,{hydrateFallbackElement:r.createElement(e.HydrateFallback),HydrateFallback:void 0})),e.ErrorBoundary&&(e.errorElement&&b(!1,"You should not include both `ErrorBoundary` and `errorElement` on your route - `ErrorBoundary` will be used."),Object.assign(t,{errorElement:r.createElement(e.ErrorBoundary),ErrorBoundary:void 0})),t}var pr=[`HydrateFallback`,`hydrateFallbackElement`],mr=class{constructor(){this.status=`pending`,this.promise=new Promise((e,t)=>{this.resolve=t=>{this.status===`pending`&&(this.status=`resolved`,e(t))},this.reject=e=>{this.status===`pending`&&(this.status=`rejected`,t(e))}})}};function hr({router:e,flushSync:t,onError:n,useTransitions:i}){i=xn()||i;let[a,o]=r.useState(e.state),[s,c]=dr(a),[l,u]=r.useState(),[d,f]=r.useState({isTransitioning:!1}),[p,m]=r.useState(),[h,g]=r.useState(),[_,v]=r.useState(),y=r.useRef(new Map),b=r.useCallback((a,{deletedFetchers:s,newErrors:l,flushSync:d,viewTransitionOpts:_})=>{l&&n&&Object.values(l).forEach(e=>n(e,{location:a.location,params:a.matches[0]?.params??{},pattern:Me(a.matches)})),a.fetchers.forEach((e,t)=>{e.data!==void 0&&y.current.set(t,e.data)}),s.forEach(e=>y.current.delete(e)),cr(d===!1||t!=null,'You provided the `flushSync` option to a router update, but you are not using the `<RouterProvider>` from `react-router/dom` so `ReactDOM.flushSync()` is unavailable. Please update your app to `import { RouterProvider } from "react-router/dom"` and ensure you have `react-dom` installed as a dependency to use the `flushSync` option.');let b=e.window!=null&&e.window.document!=null&&typeof e.window.document.startViewTransition==`function`;if(cr(_==null||b,"You provided the `viewTransition` option to a router update, but you do not appear to be running in a DOM environment as `window.startViewTransition` is not available."),!_||!b){t&&d?t(()=>o(a)):i===!1?o(a):r.startTransition(()=>{i===!0&&c(e=>gr(e,a)),o(a)});return}if(t&&d){t(()=>{h&&(p?.resolve(),h.skipTransition()),f({isTransitioning:!0,flushSync:!0,currentLocation:_.currentLocation,nextLocation:_.nextLocation})});let n=e.window.document.startViewTransition(()=>{t(()=>o(a))});n.finished.finally(()=>{t(()=>{m(void 0),g(void 0),u(void 0),f({isTransitioning:!1})})}),t(()=>g(n));return}h?(p?.resolve(),h.skipTransition(),v({state:a,currentLocation:_.currentLocation,nextLocation:_.nextLocation})):(u(a),f({isTransitioning:!0,flushSync:!1,currentLocation:_.currentLocation,nextLocation:_.nextLocation}))},[e.window,t,h,p,i,c,n]);r.useLayoutEffect(()=>e.subscribe(b),[e,b]),r.useEffect(()=>{d.isTransitioning&&!d.flushSync&&m(new mr)},[d]),r.useEffect(()=>{if(p&&l&&e.window){let t=l,n=p.promise,a=e.window.document.startViewTransition(async()=>{i===!1?o(t):r.startTransition(()=>{i===!0&&c(e=>gr(e,t)),o(t)}),await n});a.finished.finally(()=>{m(void 0),g(void 0),u(void 0),f({isTransitioning:!1})}),g(a)}},[l,p,e.window,i,c]),r.useEffect(()=>{p&&l&&s.location.key===l.location.key&&p.resolve()},[p,h,s.location,l]),r.useEffect(()=>{!d.isTransitioning&&_&&(u(_.state),f({isTransitioning:!0,flushSync:!1,currentLocation:_.currentLocation,nextLocation:_.nextLocation}),v(void 0))},[d.isTransitioning,_]);let x=r.useMemo(()=>({createHref:e.createHref,encodeLocation:e.encodeLocation,go:t=>e.navigate(t),push:(t,n,r)=>e.navigate(t,{state:n,preventScrollReset:r?.preventScrollReset}),replace:(t,n,r)=>e.navigate(t,{replace:!0,state:n,preventScrollReset:r?.preventScrollReset})}),[e]),S=e.basename||`/`,C=r.useMemo(()=>({router:e,navigator:x,static:!1,basename:S,onError:n}),[e,x,S,n]);return r.createElement(r.Fragment,null,r.createElement(vn.Provider,{value:C},r.createElement(yn.Provider,{value:s},r.createElement(Cn.Provider,{value:y.current},r.createElement(Sn.Provider,{value:d},r.createElement(xr,{basename:S,location:s.location,navigationType:s.historyAction,navigator:x,useTransitions:i},r.createElement(_r,{routes:e.routes,manifest:e.manifest,future:e.future,state:s,isStatic:!1,onError:n})))))),null)}function gr(e,t){return{...e,navigation:t.navigation.state===`idle`?e.navigation:t.navigation,revalidation:t.revalidation===`idle`?e.revalidation:t.revalidation,actionData:t.navigation.state===`submitting`?e.actionData:t.actionData,fetchers:t.fetchers}}var _r=r.memo(vr);function vr({routes:e,manifest:t,future:n,state:r,isStatic:i,onError:a}){return Un(e,void 0,{manifest:t,state:r,isStatic:i,onError:a,future:n})}function yr({to:e,replace:t,state:n,relative:i}){y(Nn(),`<Navigate> may be used only in the context of a <Router> component.`);let{static:a}=r.useContext(Z);b(!a,`<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.`);let{matches:o}=r.useContext(Q),{pathname:s}=$(),c=In(),l=Ce(e,Se(o),s,i===`path`),u=JSON.stringify(l);return r.useEffect(()=>{c(JSON.parse(u),{replace:t,state:n,relative:i})},[c,u,i,t,n]),null}function br(e){return Bn(e.context)}function xr({basename:e=`/`,children:t=null,location:n,navigationType:i=`POP`,navigator:a,static:o=!1,useTransitions:s}){y(!Nn(),`You cannot render a <Router> inside another <Router>. You should never have more than one in your app.`);let c=e.replace(/^\/*/,`/`),l=r.useMemo(()=>({basename:c,navigator:a,static:o,useTransitions:s,future:{}}),[c,a,o,s]);typeof n==`string`&&(n=T(n));let{pathname:u=`/`,search:d=``,hash:f=``,state:p=null,key:m=`default`,mask:h}=n,g=r.useMemo(()=>{let e=V(u,c);return e==null?null:{location:{pathname:e,search:d,hash:f,state:p,key:m,mask:h},navigationType:i}},[c,u,d,f,p,m,i,h]);return b(g!=null,`<Router basename="${c}"> is not able to match the URL "${u}${d}${f}" because it does not start with the basename, so the <Router> won't render anything.`),g==null?null:r.createElement(Z.Provider,{value:l},r.createElement(Tn.Provider,{children:t,value:g}))}r.Component;var Sr=`get`,Cr=`application/x-www-form-urlencoded`;function wr(e){return typeof HTMLElement<`u`&&e instanceof HTMLElement}function Tr(e){return wr(e)&&e.tagName.toLowerCase()===`button`}function Er(e){return wr(e)&&e.tagName.toLowerCase()===`form`}function Dr(e){return wr(e)&&e.tagName.toLowerCase()===`input`}function Or(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function kr(e,t){return e.button===0&&(!t||t===`_self`)&&!Or(e)}function Ar(e=``){return new URLSearchParams(typeof e==`string`||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,n)=>{let r=e[n];return t.concat(Array.isArray(r)?r.map(e=>[n,e]):[[n,r]])},[]))}function jr(e,t){let n=Ar(e);return t&&t.forEach((e,r)=>{n.has(r)||t.getAll(r).forEach(e=>{n.append(r,e)})}),n}var Mr=null;function Nr(){if(Mr===null)try{new FormData(document.createElement(`form`),0),Mr=!1}catch{Mr=!0}return Mr}var Pr=new Set([`application/x-www-form-urlencoded`,`multipart/form-data`,`text/plain`]);function Fr(e){return e!=null&&!Pr.has(e)?(b(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Cr}"`),null):e}function Ir(e,t){let n,r,i,a,o;if(Er(e)){let o=e.getAttribute(`action`);r=o?V(o,t):null,n=e.getAttribute(`method`)||Sr,i=Fr(e.getAttribute(`enctype`))||Cr,a=new FormData(e)}else if(Tr(e)||Dr(e)&&(e.type===`submit`||e.type===`image`)){let o=e.form;if(o==null)throw Error(`Cannot submit a <button> or <input type="submit"> without a <form>`);let s=e.getAttribute(`formaction`)||o.getAttribute(`action`);if(r=s?V(s,t):null,n=e.getAttribute(`formmethod`)||o.getAttribute(`method`)||Sr,i=Fr(e.getAttribute(`formenctype`))||Fr(o.getAttribute(`enctype`))||Cr,a=new FormData(o,e),!Nr()){let{name:t,type:n,value:r}=e;if(n===`image`){let e=t?`${t}.`:``;a.append(`${e}x`,`0`),a.append(`${e}y`,`0`)}else t&&a.append(t,r)}}else if(wr(e))throw Error(`Cannot submit element that is not <form>, <button>, or <input type="submit|image">`);else n=Sr,r=null,i=Cr,o=e;return a&&i===`text/plain`&&(o=a,a=void 0),{action:r,method:n.toLowerCase(),encType:i,formData:a,body:o}}Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);function Lr(e,t){if(e===!1||e==null)throw Error(t)}function Rr(e,t,n,r){let i=typeof e==`string`?new URL(e,typeof window>`u`?`server://singlefetch/`:window.location.origin):e;return i.pathname=n?i.pathname.endsWith(`/`)?`${i.pathname}_.${r}`:`${i.pathname}.${r}`:i.pathname===`/`?`_root.${r}`:t&&V(i.pathname,t)===`/`?`${Te(t)}/_root.${r}`:`${Te(i.pathname)}.${r}`,i}async function zr(e,t){if(e.id in t)return t[e.id];try{let n=await s(()=>import(e.module),[]);return t[e.id]=n,n}catch(t){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(t),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function Br(e){return e!=null&&typeof e.page==`string`}function Vr(e){return e==null?!1:e.href==null?e.rel===`preload`&&typeof e.imageSrcSet==`string`&&typeof e.imageSizes==`string`:typeof e.rel==`string`&&typeof e.href==`string`}async function Hr(e,t,n){return qr((await Promise.all(e.map(async e=>{let r=t.routes[e.route.id];if(r){let e=await zr(r,n);return e.links?e.links():[]}return[]}))).flat(1).filter(Vr).filter(e=>e.rel===`stylesheet`||e.rel===`preload`).map(e=>e.rel===`stylesheet`?{...e,rel:`prefetch`,as:`style`}:{...e,rel:`prefetch`}))}function Ur(e,t,n,r,i,a){let o=(e,t)=>!n[t]||e.route.id!==n[t].route.id,s=(e,t)=>n[t].pathname!==e.pathname||n[t].route.path?.endsWith(`*`)&&n[t].params[`*`]!==e.params[`*`];return a===`assets`?t.filter((e,t)=>o(e,t)||s(e,t)):a===`data`?t.filter((t,a)=>{let c=r.routes[t.route.id];if(!c||!c.hasLoader)return!1;if(o(t,a)||s(t,a))return!0;if(t.route.shouldRevalidate){let r=t.route.shouldRevalidate({currentUrl:new URL(i.pathname+i.search+i.hash,window.origin),currentParams:n[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:t.params,defaultShouldRevalidate:!0});if(typeof r==`boolean`)return r}return!0}):[]}function Wr(e,t,{includeHydrateFallback:n}={}){return Gr(e.map(e=>{let r=t.routes[e.route.id];if(!r)return[];let i=[r.module];return r.clientActionModule&&(i=i.concat(r.clientActionModule)),r.clientLoaderModule&&(i=i.concat(r.clientLoaderModule)),n&&r.hydrateFallbackModule&&(i=i.concat(r.hydrateFallbackModule)),r.imports&&(i=i.concat(r.imports)),i}).flat(1))}function Gr(e){return[...new Set(e)]}function Kr(e){let t={},n=Object.keys(e).sort();for(let r of n)t[r]=e[r];return t}function qr(e,t){let n=new Set,r=new Set(t);return e.reduce((e,i)=>{if(t&&!Br(i)&&i.as===`script`&&i.href&&r.has(i.href))return e;let a=JSON.stringify(Kr(i));return n.has(a)||(n.add(a),e.push({key:a,link:i})),e},[])}function Jr(){let e=r.useContext(vn);return Lr(e,`You must render this element inside a <DataRouterContext.Provider> element`),e}function Yr(){let e=r.useContext(yn);return Lr(e,`You must render this element inside a <DataRouterStateContext.Provider> element`),e}var Xr=r.createContext(void 0);Xr.displayName=`FrameworkContext`;function Zr(){let e=r.useContext(Xr);return Lr(e,`You must render this element inside a <HydratedRouter> element`),e}function Qr(e,t){let n=r.useContext(Xr),[i,a]=r.useState(!1),[o,s]=r.useState(!1),{onFocus:c,onBlur:l,onMouseEnter:u,onMouseLeave:d,onTouchStart:f}=t,p=r.useRef(null);r.useEffect(()=>{if(e===`render`&&s(!0),e===`viewport`){let e=new IntersectionObserver(e=>{e.forEach(e=>{s(e.isIntersecting)})},{threshold:.5});return p.current&&e.observe(p.current),()=>{e.disconnect()}}},[e]),r.useEffect(()=>{if(i){let e=setTimeout(()=>{s(!0)},100);return()=>{clearTimeout(e)}}},[i]);let m=()=>{a(!0)},h=()=>{a(!1),s(!1)};return n?e===`intent`?[o,p,{onFocus:$r(c,m),onBlur:$r(l,h),onMouseEnter:$r(u,m),onMouseLeave:$r(d,h),onTouchStart:$r(f,m)}]:[o,p,{}]:[!1,p,{}]}function $r(e,t){return n=>{e&&e(n),n.defaultPrevented||t(n)}}function ei({page:e,...t}){let n=xn(),{nonce:i}=Zr(),{router:a}=Jr(),o=r.useMemo(()=>ne(a.routes,e,a.basename),[a.routes,e,a.basename]);return o?(t.nonce==null&&i&&(t={...t,nonce:i}),n?r.createElement(ni,{page:e,matches:o,...t}):r.createElement(ri,{page:e,matches:o,...t})):null}function ti(e){let{manifest:t,routeModules:n}=Zr(),[i,a]=r.useState([]);return r.useEffect(()=>{let r=!1;return Hr(e,t,n).then(e=>{r||a(e)}),()=>{r=!0}},[e,t,n]),i}function ni({page:e,matches:t,...n}){let i=$(),{future:a}=Zr(),{basename:o}=Jr(),s=r.useMemo(()=>{if(e===i.pathname+i.search+i.hash)return[];let n=Rr(e,o,a.v8_trailingSlashAwareDataRequests,`rsc`),r=!1,s=[];for(let e of t)typeof e.route.shouldRevalidate==`function`?r=!0:s.push(e.route.id);return r&&s.length>0&&n.searchParams.set(`_routes`,s.join(`,`)),[n.pathname+n.search]},[o,a.v8_trailingSlashAwareDataRequests,e,i,t]);return r.createElement(r.Fragment,null,s.map(e=>r.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})))}function ri({page:e,matches:t,...n}){let i=$(),{future:a,manifest:o,routeModules:s}=Zr(),{basename:c}=Jr(),{loaderData:l,matches:u}=Yr(),d=r.useMemo(()=>Ur(e,t,u,o,i,`data`),[e,t,u,o,i]),f=r.useMemo(()=>Ur(e,t,u,o,i,`assets`),[e,t,u,o,i]),p=r.useMemo(()=>{if(e===i.pathname+i.search+i.hash)return[];let n=new Set,r=!1;if(t.forEach(e=>{let t=o.routes[e.route.id];!t||!t.hasLoader||(!d.some(t=>t.route.id===e.route.id)&&e.route.id in l&&s[e.route.id]?.shouldRevalidate||t.hasClientLoader?r=!0:n.add(e.route.id))}),n.size===0)return[];let u=Rr(e,c,a.v8_trailingSlashAwareDataRequests,`data`);return r&&n.size>0&&u.searchParams.set(`_routes`,t.filter(e=>n.has(e.route.id)).map(e=>e.route.id).join(`,`)),[u.pathname+u.search]},[c,a.v8_trailingSlashAwareDataRequests,l,i,o,d,t,e,s]),m=r.useMemo(()=>Wr(f,o),[f,o]),h=ti(f);return r.createElement(r.Fragment,null,p.map(e=>r.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})),m.map(e=>r.createElement(`link`,{key:e,rel:`modulepreload`,href:e,...n})),h.map(({key:e,link:t})=>r.createElement(`link`,{key:e,nonce:n.nonce,...t,crossOrigin:t.crossOrigin??n.crossOrigin})))}function ii(...e){return t=>{e.forEach(e=>{typeof e==`function`?e(t):e!=null&&(e.current=t)})}}r.Component;var ai=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;try{ai&&(window.__reactRouterVersion=`7.18.2`)}catch{}function oi(e,t){return at({basename:t?.basename,getContext:t?.getContext,future:t?.future,history:v({window:t?.window}),hydrationData:t?.hydrationData||si(),routes:e,mapRouteProperties:fr,hydrationRouteProperties:pr,dataStrategy:t?.dataStrategy,patchRoutesOnNavigation:t?.patchRoutesOnNavigation,window:t?.window,instrumentations:t?.instrumentations}).initialize()}function si(){let e=window?.__staticRouterHydrationData;return e&&e.errors&&(e={...e,errors:ci(e.errors)}),e}function ci(e){if(!e)return null;let t=Object.entries(e),n={};for(let[e,r]of t)if(r&&r.__type===`RouteErrorResponse`)n[e]=new Ae(r.status,r.statusText,r.data,r.internal===!0);else if(r&&r.__type===`Error`){if(typeof r.__subType==`string`&&ke.includes(r.__subType)){let t=window[r.__subType];if(typeof t==`function`)try{let i=new t(r.message);i.stack=``,n[e]=i}catch{}}if(n[e]==null){let t=Error(r.message);t.stack=``,n[e]=t}}else n[e]=r;return n}var li=r.forwardRef(function({onClick:e,discover:t=`render`,prefetch:n=`none`,relative:i,reloadDocument:a,replace:o,mask:s,state:c,target:l,to:u,preventScrollReset:d,viewTransition:f,defaultShouldRevalidate:m,...h},g){let{basename:_,navigator:v,useTransitions:y}=r.useContext(Z),b=typeof u==`string`&&p.test(u),x=G(u,_);u=x.to;let S=Mn(u,{relative:i}),C=$(),w=null;if(s){let e=Ce(s,[],C.mask?C.mask.pathname:`/`,!0);_!==`/`&&(e.pathname=e.pathname===`/`?_:U([_,e.pathname])),w=v.createHref(e)}let[T,E,D]=Qr(n,h),O=mi(u,{replace:o,mask:s,state:c,target:l,preventScrollReset:d,relative:i,viewTransition:f,defaultShouldRevalidate:m,useTransitions:y});function k(t){e&&e(t),t.defaultPrevented||O(t)}let A=!(x.isExternal||a),j=r.createElement(`a`,{...h,...D,href:(A?w:void 0)||x.absoluteURL||S,onClick:A?k:e,ref:ii(g,E),target:l,"data-discover":!b&&t===`render`?`true`:void 0});return T&&!b?r.createElement(r.Fragment,null,j,r.createElement(ei,{page:S})):j});li.displayName=`Link`;var ui=r.forwardRef(function({"aria-current":e=`page`,caseSensitive:t=!1,className:n=``,end:i=!1,style:a,to:o,viewTransition:s,children:c,...l},u){let d=Hn(o,{relative:l.relative}),f=$(),p=r.useContext(yn),{navigator:m,basename:h}=r.useContext(Z),g=p!=null&&bi(d)&&s===!0,_=m.encodeLocation?m.encodeLocation(d).pathname:d.pathname,v=f.pathname,y=p&&p.navigation&&p.navigation.location?p.navigation.location.pathname:null;t||(v=v.toLowerCase(),y=y?y.toLowerCase():null,_=_.toLowerCase()),y&&h&&(y=V(y,h)||y);let b=_!==`/`&&_.endsWith(`/`)?_.length-1:_.length,x=v===_||!i&&v.startsWith(_)&&v.charAt(b)===`/`,S=y!=null&&(y===_||!i&&y.startsWith(_)&&y.charAt(_.length)===`/`),C={isActive:x,isPending:S,isTransitioning:g},w=x?e:void 0,T;T=typeof n==`function`?n(C):[n,x?`active`:null,S?`pending`:null,g?`transitioning`:null].filter(Boolean).join(` `);let E=typeof a==`function`?a(C):a;return r.createElement(li,{...l,"aria-current":w,className:T,ref:u,style:E,to:o,viewTransition:s},typeof c==`function`?c(C):c)});ui.displayName=`NavLink`;var di=r.forwardRef(({discover:e=`render`,fetcherKey:t,navigate:n,reloadDocument:i,replace:a,state:o,method:s=Sr,action:c,onSubmit:l,relative:u,preventScrollReset:d,viewTransition:f,defaultShouldRevalidate:m,...h},g)=>{let{useTransitions:_}=r.useContext(Z),v=vi(),y=yi(c,{relative:u}),b=s.toLowerCase()===`get`?`get`:`post`,x=typeof c==`string`&&p.test(c);return r.createElement(`form`,{ref:g,method:b,action:y,onSubmit:i?l:e=>{if(l&&l(e),e.defaultPrevented)return;e.preventDefault();let i=e.nativeEvent.submitter,c=i?.getAttribute(`formmethod`)||s,p=()=>v(i||e.currentTarget,{fetcherKey:t,method:c,navigate:n,replace:a,state:o,relative:u,preventScrollReset:d,viewTransition:f,defaultShouldRevalidate:m});_&&n!==!1?r.startTransition(()=>p()):p()},...h,"data-discover":!x&&e===`render`?`true`:void 0})});di.displayName=`Form`;function fi(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function pi(e){let t=r.useContext(vn);return y(t,fi(e)),t}function mi(e,{target:t,replace:n,mask:i,state:a,preventScrollReset:o,relative:s,viewTransition:c,defaultShouldRevalidate:l,useTransitions:u}={}){let d=In(),f=$(),p=Hn(e,{relative:s});return r.useCallback(m=>{if(kr(m,t)){m.preventDefault();let t=n===void 0?w(f)===w(p):n,h=()=>d(e,{replace:t,mask:i,state:a,preventScrollReset:o,relative:s,viewTransition:c,defaultShouldRevalidate:l});u?r.startTransition(()=>h()):h()}},[f,d,p,n,i,a,t,e,o,s,c,l,u])}function hi(e){b(typeof URLSearchParams<`u`,"You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=r.useRef(Ar(e)),n=r.useRef(!1),i=$(),a=r.useMemo(()=>jr(i.search,n.current?null:t.current),[i.search]),o=In();return[a,r.useCallback((e,t)=>{let r=Ar(typeof e==`function`?e(new URLSearchParams(a)):e);n.current=!0,o(`?`+r,t)},[o,a])]}var gi=0,_i=()=>`__${String(++gi)}__`;function vi(){let{router:e}=pi(`useSubmit`),{basename:t}=r.useContext(Z),n=nr(),i=e.fetch,a=e.navigate;return r.useCallback(async(e,r={})=>{let{action:o,method:s,encType:c,formData:l,body:u}=Ir(e,t);if(r.navigate===!1){let e=r.fetcherKey||_i();await i(e,n,r.action||o,{defaultShouldRevalidate:r.defaultShouldRevalidate,preventScrollReset:r.preventScrollReset,formData:l,body:u,formMethod:r.method||s,formEncType:r.encType||c,flushSync:r.flushSync})}else await a(r.action||o,{defaultShouldRevalidate:r.defaultShouldRevalidate,preventScrollReset:r.preventScrollReset,formData:l,body:u,formMethod:r.method||s,formEncType:r.encType||c,replace:r.replace,state:r.state,fromRouteId:n,flushSync:r.flushSync,viewTransition:r.viewTransition})},[i,a,t,n])}function yi(e,{relative:t}={}){let{basename:n}=r.useContext(Z),i=r.useContext(Q);y(i,`useFormAction must be used inside a RouteContext`);let[a]=i.matches.slice(-1),o={...Hn(e||`.`,{relative:t})},s=$();if(e==null){o.search=s.search;let e=new URLSearchParams(o.search),t=e.getAll(`index`);if(t.some(e=>e===``)){e.delete(`index`),t.filter(e=>e).forEach(t=>e.append(`index`,t));let n=e.toString();o.search=n?`?${n}`:``}}return(!e||e===`.`)&&a.route.index&&(o.search=o.search?o.search.replace(/^\?/,`?index&`):`?index`),n!==`/`&&(o.pathname=o.pathname===`/`?n:U([n,o.pathname])),w(o)}function bi(e,{relative:t}={}){let n=r.useContext(Sn);y(n!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:i}=pi(`useViewTransitionState`),a=Hn(e,{relative:t});if(!n.isTransitioning)return!1;let o=V(n.currentLocation.pathname,i)||n.currentLocation.pathname,s=V(n.nextLocation.pathname,i)||n.nextLocation.pathname;return B(a.pathname,s)!=null||B(a.pathname,o)!=null}var xi=e(n(),1);function Si(e){return r.createElement(hr,{flushSync:xi.flushSync,...e})}export{je as a,zn as c,hi as d,s as f,oi as i,Vn as l,yr as n,$ as o,br as r,In as s,Si as t,rr as u};