purplemux 0.3.0 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +49 -49
  3. package/.next/standalone/.next/prerender-manifest.json +3 -3
  4. package/.next/standalone/.next/required-server-files.json +1 -1
  5. package/.next/standalone/.next/routes-manifest.json +7 -7
  6. package/.next/standalone/.next/server/chunks/[root-of-the-server]__06an6au._.js +1 -1
  7. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__02f5zis._.js → [root-of-the-server]__08dxtof._.js} +1 -1
  8. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__08z3drz._.js +1 -1
  9. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__11uqzxt._.js → [root-of-the-server]__0kumyrr._.js} +2 -2
  10. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0s7k1je._.js +3 -0
  11. package/.next/standalone/.next/server/chunks/ssr/{_13qovxu._.js → _0.stp0n._.js} +2 -2
  12. package/.next/standalone/.next/server/chunks/ssr/{_11h746h._.js → _00cx0p2._.js} +2 -2
  13. package/.next/standalone/.next/server/chunks/ssr/_02rms4q._.js +1 -1
  14. package/.next/standalone/.next/server/chunks/ssr/_06_8vkn._.js +2 -2
  15. package/.next/standalone/.next/server/chunks/ssr/{_0uwytsj._.js → _078y4dk._.js} +2 -2
  16. package/.next/standalone/.next/server/chunks/ssr/{_0uph6rf._.js → _0kzht5v._.js} +2 -2
  17. package/.next/standalone/.next/server/chunks/ssr/_0m6flec._.js +1 -1
  18. package/.next/standalone/.next/server/chunks/ssr/_0pg-q18._.js +1 -1
  19. package/.next/standalone/.next/server/chunks/ssr/_0r90z3l._.js +8 -0
  20. package/.next/standalone/.next/server/chunks/ssr/_0w.1ts8._.js +1 -1
  21. package/.next/standalone/.next/server/chunks/ssr/_0w6jc9p._.js +1 -1
  22. package/.next/standalone/.next/server/chunks/ssr/{_0z6yp7a._.js → _0y_feze._.js} +1 -1
  23. package/.next/standalone/.next/server/chunks/ssr/{_0v2czf2._.js → _10dec5o._.js} +1 -1
  24. package/.next/standalone/.next/server/chunks/ssr/{messages_01~7za1._.js → messages_0f3u1ly._.js} +1 -1
  25. package/.next/standalone/.next/server/chunks/ssr/{messages_10_yt3k._.js → messages_0k204ao._.js} +1 -1
  26. package/.next/standalone/.next/server/chunks/ssr/messages_de_terminal_json_[json]_cjs_05jirtw._.js +1 -1
  27. package/.next/standalone/.next/server/chunks/ssr/messages_en_terminal_json_[json]_cjs_0~ls3g-._.js +1 -1
  28. package/.next/standalone/.next/server/chunks/ssr/messages_es_terminal_json_[json]_cjs_04g2b1_._.js +1 -1
  29. package/.next/standalone/.next/server/chunks/ssr/messages_fr_terminal_json_[json]_cjs_0uhakya._.js +1 -1
  30. package/.next/standalone/.next/server/chunks/ssr/messages_ja_terminal_json_[json]_cjs_0776z4f._.js +1 -1
  31. package/.next/standalone/.next/server/chunks/ssr/messages_ko_terminal_json_[json]_cjs_06611.3._.js +1 -1
  32. package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_terminal_json_[json]_cjs_034yyg9._.js +1 -1
  33. package/.next/standalone/.next/server/chunks/ssr/messages_ru_terminal_json_[json]_cjs_0emk8~n._.js +1 -1
  34. package/.next/standalone/.next/server/chunks/ssr/messages_tr_terminal_json_[json]_cjs_0xpix8g._.js +1 -1
  35. package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_terminal_json_[json]_cjs_12vwl8a._.js +1 -1
  36. package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_terminal_json_[json]_cjs_0spg5z5._.js +1 -1
  37. package/.next/standalone/.next/server/chunks/ssr/node_modules_0t5csgq._.js +1 -1
  38. package/.next/standalone/.next/server/chunks/ssr/node_modules_use-intl_dist_esm_production_react_0bnxcps.js +1 -1
  39. package/.next/standalone/.next/server/chunks/ssr/{src_components_00nri37._.js → src_components_05-kki3._.js} +1 -1
  40. package/.next/standalone/.next/server/chunks/ssr/{src_components_0jrgsp7._.js → src_components_0fb83uz._.js} +1 -1
  41. package/.next/standalone/.next/server/chunks/ssr/{src_components_0mhu5-5._.js → src_components_0gkfyrc._.js} +1 -1
  42. package/.next/standalone/.next/server/chunks/ssr/{src_components_0~e6p9k._.js → src_components_0n3s0.7._.js} +1 -1
  43. package/.next/standalone/.next/server/chunks/ssr/src_components_features_mobile_mobile-terminal-page_tsx_02chzch._.js +1 -1
  44. package/.next/standalone/.next/server/chunks/ssr/src_components_features_workspace_terminal-page_tsx_0wuq-jl._.js +1 -1
  45. package/.next/standalone/.next/server/functions-config-manifest.json +1 -1
  46. package/.next/standalone/.next/server/middleware-build-manifest.js +49 -49
  47. package/.next/standalone/.next/server/pages/_app/build-manifest.json +6 -6
  48. package/.next/standalone/.next/server/pages/_app/client-build-manifest.json +1 -1
  49. package/.next/standalone/.next/server/pages/_app.js +2 -2
  50. package/.next/standalone/.next/server/pages/_app.js.nft.json +1 -1
  51. package/.next/standalone/.next/server/pages/_document.js +3 -3
  52. package/.next/standalone/.next/server/pages/_document.js.nft.json +1 -1
  53. package/.next/standalone/.next/server/pages/_error/build-manifest.json +3 -3
  54. package/.next/standalone/.next/server/pages/_error/client-build-manifest.json +1 -1
  55. package/.next/standalone/.next/server/pages/_error.js +4 -4
  56. package/.next/standalone/.next/server/pages/_error.js.nft.json +1 -1
  57. package/.next/standalone/.next/server/pages/de/404.html +1 -1
  58. package/.next/standalone/.next/server/pages/de/500.html +1 -1
  59. package/.next/standalone/.next/server/pages/en/404.html +1 -1
  60. package/.next/standalone/.next/server/pages/en/500.html +1 -1
  61. package/.next/standalone/.next/server/pages/es/404.html +1 -1
  62. package/.next/standalone/.next/server/pages/es/500.html +1 -1
  63. package/.next/standalone/.next/server/pages/fr/404.html +1 -1
  64. package/.next/standalone/.next/server/pages/fr/500.html +1 -1
  65. package/.next/standalone/.next/server/pages/index/build-manifest.json +7 -7
  66. package/.next/standalone/.next/server/pages/index/client-build-manifest.json +1 -1
  67. package/.next/standalone/.next/server/pages/index/react-loadable-manifest.json +4 -4
  68. package/.next/standalone/.next/server/pages/index.js +5 -5
  69. package/.next/standalone/.next/server/pages/index.js.nft.json +1 -1
  70. package/.next/standalone/.next/server/pages/ja/404.html +1 -1
  71. package/.next/standalone/.next/server/pages/ja/500.html +1 -1
  72. package/.next/standalone/.next/server/pages/ko/404.html +1 -1
  73. package/.next/standalone/.next/server/pages/ko/500.html +1 -1
  74. package/.next/standalone/.next/server/pages/login/build-manifest.json +4 -4
  75. package/.next/standalone/.next/server/pages/login/client-build-manifest.json +1 -1
  76. package/.next/standalone/.next/server/pages/login.js +4 -4
  77. package/.next/standalone/.next/server/pages/login.js.nft.json +1 -1
  78. package/.next/standalone/.next/server/pages/pt-BR/404.html +1 -1
  79. package/.next/standalone/.next/server/pages/pt-BR/500.html +1 -1
  80. package/.next/standalone/.next/server/pages/reports/build-manifest.json +6 -6
  81. package/.next/standalone/.next/server/pages/reports/client-build-manifest.json +1 -1
  82. package/.next/standalone/.next/server/pages/reports.js +5 -5
  83. package/.next/standalone/.next/server/pages/reports.js.nft.json +1 -1
  84. package/.next/standalone/.next/server/pages/reset/build-manifest.json +4 -4
  85. package/.next/standalone/.next/server/pages/reset/client-build-manifest.json +1 -1
  86. package/.next/standalone/.next/server/pages/reset.js +5 -5
  87. package/.next/standalone/.next/server/pages/reset.js.nft.json +1 -1
  88. package/.next/standalone/.next/server/pages/ru/404.html +1 -1
  89. package/.next/standalone/.next/server/pages/ru/500.html +1 -1
  90. package/.next/standalone/.next/server/pages/stats/build-manifest.json +6 -6
  91. package/.next/standalone/.next/server/pages/stats/client-build-manifest.json +1 -1
  92. package/.next/standalone/.next/server/pages/stats.js +5 -5
  93. package/.next/standalone/.next/server/pages/stats.js.nft.json +1 -1
  94. package/.next/standalone/.next/server/pages/tools-required/build-manifest.json +4 -4
  95. package/.next/standalone/.next/server/pages/tools-required/client-build-manifest.json +1 -1
  96. package/.next/standalone/.next/server/pages/tools-required.js +5 -5
  97. package/.next/standalone/.next/server/pages/tools-required.js.nft.json +1 -1
  98. package/.next/standalone/.next/server/pages/tr/404.html +1 -1
  99. package/.next/standalone/.next/server/pages/tr/500.html +1 -1
  100. package/.next/standalone/.next/server/pages/webview/build-manifest.json +6 -6
  101. package/.next/standalone/.next/server/pages/webview/client-build-manifest.json +1 -1
  102. package/.next/standalone/.next/server/pages/webview.js +5 -5
  103. package/.next/standalone/.next/server/pages/webview.js.nft.json +1 -1
  104. package/.next/standalone/.next/server/pages/zh-CN/404.html +1 -1
  105. package/.next/standalone/.next/server/pages/zh-CN/500.html +1 -1
  106. package/.next/standalone/.next/server/pages/zh-TW/404.html +1 -1
  107. package/.next/standalone/.next/server/pages/zh-TW/500.html +1 -1
  108. package/.next/standalone/.next/static/chunks/01.oujz.z9cq..js +1 -0
  109. package/.next/standalone/.next/static/chunks/{0~23in~aqup16.js → 0176ysv-agwwx.js} +1 -1
  110. package/.next/standalone/.next/static/chunks/{0icark0o3b_6j.js → 03s5e91.zrsi_.js} +4 -4
  111. package/.next/standalone/.next/static/chunks/{0h57gqab.hlp8.js → 05zk.ks4roh-4.js} +6 -6
  112. package/.next/standalone/.next/static/chunks/05~6_0_288m3t.js +1 -0
  113. package/.next/standalone/.next/static/chunks/06uy95ammv.ud.js +1 -0
  114. package/.next/standalone/.next/static/chunks/08-el~h0ax929.js +1 -0
  115. package/.next/standalone/.next/static/chunks/{14_wa..vd6~2y.js → 0984g4~der6-4.js} +2 -2
  116. package/.next/standalone/.next/static/chunks/{016ho28abx9rt.js → 0_psc1~qmka.m.js} +4 -4
  117. package/.next/standalone/.next/static/chunks/{00s6ekn81~vi-.js → 0ap~c~__qw2_0.js} +6 -6
  118. package/.next/standalone/.next/static/chunks/0cir.n19rqu--.js +8 -0
  119. package/.next/standalone/.next/static/chunks/0dpud6_2~.2iv.js +1 -0
  120. package/.next/standalone/.next/static/chunks/0euxle0n3zjm3.js +1 -0
  121. package/.next/standalone/.next/static/chunks/0fax5v7rwhm7g.js +6 -0
  122. package/.next/standalone/.next/static/chunks/{0wf0tx~eo05t~.js → 0gfoib7v3q4k_.js} +1 -1
  123. package/.next/standalone/.next/static/chunks/{0538dx15fw8_n.js → 0kep81gqgj5f5.js} +7 -7
  124. package/.next/standalone/.next/static/chunks/0kriln8d9.mdo.js +1 -0
  125. package/.next/standalone/.next/static/chunks/{0eia27slkj8a0.js → 0l.88yoxq6tq8.js} +6 -6
  126. package/.next/standalone/.next/static/chunks/{0ea-k_kbq5gi1.js → 0n7jmg60eqx1a.js} +1 -1
  127. package/.next/standalone/.next/static/chunks/0nm1wy7i1z64_.js +1 -0
  128. package/.next/standalone/.next/static/chunks/0o1e0e_okaxww.js +1 -0
  129. package/.next/standalone/.next/static/chunks/{0l80eb3i.wx6k.js → 0p2m6i37_wprv.js} +1 -1
  130. package/.next/standalone/.next/static/chunks/0qz-agdkp9v1q.js +16 -0
  131. package/.next/standalone/.next/static/chunks/0w1v1a5wi.byq.js +1 -0
  132. package/.next/standalone/.next/static/chunks/0wha_~zny181w.js +1 -0
  133. package/.next/standalone/.next/static/chunks/0wu-q.gmu-64d.js +5 -0
  134. package/.next/standalone/.next/static/chunks/{00l132mp04ubq.js → 0xfp8sfehtui9.js} +1 -1
  135. package/.next/standalone/.next/static/chunks/0yzd69blq638o.js +1 -0
  136. package/.next/standalone/.next/static/chunks/{0erebazb6ppou.js → 12f3vk2rnkb8u.js} +6 -6
  137. package/.next/standalone/.next/static/chunks/135cvydv7redz.js +1 -0
  138. package/.next/standalone/.next/static/chunks/14rrqgjvv0_69.js +1 -0
  139. package/.next/standalone/.next/static/chunks/14vposxx99rq4.js +1 -0
  140. package/.next/standalone/.next/static/chunks/{09mlfwheuib_9.js → 168.xhj-0lt8a.js} +1 -1
  141. package/.next/standalone/.next/static/chunks/1792_-2m366un.js +1 -0
  142. package/.next/standalone/.next/static/chunks/{0nr5ul7mf1bo7.js → 179vwj~zm1gya.js} +1 -1
  143. package/.next/standalone/.next/static/chunks/{turbopack-10c4z.4l4dxnu.js → turbopack-0.6hkxuraykc4.js} +1 -1
  144. package/.next/standalone/.next/static/chunks/{turbopack-05.ehb143ourd.js → turbopack-0g2bivvnd2gyd.js} +1 -1
  145. package/.next/standalone/.next/static/chunks/{turbopack-0ji23rzquaykn.js → turbopack-0heaqdupr4xj6.js} +1 -1
  146. package/.next/standalone/.next/static/chunks/{turbopack-02wj1-z8.1081.js → turbopack-0jcfxeuy1ge85.js} +1 -1
  147. package/.next/standalone/.next/static/chunks/{turbopack-07.z46yb_52p5.js → turbopack-0rntg0~hh7h.0.js} +1 -1
  148. package/.next/standalone/.next/static/chunks/{turbopack-05j~l.6~_nm9l.js → turbopack-0sk1uk-fkcqdx.js} +1 -1
  149. package/.next/standalone/.next/static/chunks/{turbopack-11utvoktq4lmr.js → turbopack-0w89gj59tho~b.js} +1 -1
  150. package/.next/standalone/.next/static/chunks/{turbopack-04t3309-jsj3y.js → turbopack-0~gn911-6yqk2.js} +1 -1
  151. package/.next/standalone/.next/static/chunks/{turbopack-0-rpf9ad3km~v.js → turbopack-14fnzd5yh28gy.js} +1 -1
  152. package/.next/standalone/.next/static/{bybcCRIlOhSPtqdnJUPM- → pZhcwQ83aP87HDTIzzyJ6}/_buildManifest.js +8 -8
  153. package/.next/standalone/.next/static/{bybcCRIlOhSPtqdnJUPM- → pZhcwQ83aP87HDTIzzyJ6}/_clientMiddlewareManifest.js +1 -1
  154. package/.next/standalone/messages/de/terminal.json +1 -1
  155. package/.next/standalone/messages/en/terminal.json +1 -1
  156. package/.next/standalone/messages/es/terminal.json +1 -1
  157. package/.next/standalone/messages/fr/terminal.json +1 -1
  158. package/.next/standalone/messages/ja/terminal.json +1 -1
  159. package/.next/standalone/messages/ko/terminal.json +1 -1
  160. package/.next/standalone/messages/pt-BR/terminal.json +1 -1
  161. package/.next/standalone/messages/ru/terminal.json +1 -1
  162. package/.next/standalone/messages/tr/terminal.json +1 -1
  163. package/.next/standalone/messages/zh-CN/terminal.json +1 -1
  164. package/.next/standalone/messages/zh-TW/terminal.json +1 -1
  165. package/.next/standalone/package.json +6 -5
  166. package/.next/standalone/server.js +1 -1
  167. package/.next/standalone/src/config/tmux.conf +11 -3
  168. package/README.de.md +41 -14
  169. package/README.es.md +41 -14
  170. package/README.fr.md +41 -14
  171. package/README.ja.md +41 -14
  172. package/README.ko.md +41 -14
  173. package/README.md +41 -14
  174. package/README.pt-BR.md +41 -14
  175. package/README.ru.md +41 -14
  176. package/README.tr.md +41 -14
  177. package/README.zh-CN.md +41 -14
  178. package/README.zh-TW.md +41 -14
  179. package/dist/server.js +6 -5
  180. package/package.json +6 -5
  181. package/src/config/tmux.conf +11 -3
  182. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0y7-o~r._.js +0 -3
  183. package/.next/standalone/.next/server/chunks/ssr/_08ytq3p._.js +0 -8
  184. package/.next/standalone/.next/static/chunks/00snihvygw9l4.js +0 -1
  185. package/.next/standalone/.next/static/chunks/00yfl7agnve...js +0 -5
  186. package/.next/standalone/.next/static/chunks/02ocrfbfg24nx.js +0 -1
  187. package/.next/standalone/.next/static/chunks/04rkjr-2duj5b.js +0 -1
  188. package/.next/standalone/.next/static/chunks/0c8wt2p0xhe5i.js +0 -1
  189. package/.next/standalone/.next/static/chunks/0duqg-kf_y-i3.js +0 -1
  190. package/.next/standalone/.next/static/chunks/0ep22zye8flqz.js +0 -1
  191. package/.next/standalone/.next/static/chunks/0ff6a07hvp4pu.js +0 -6
  192. package/.next/standalone/.next/static/chunks/0fg9x61ohrtv3.js +0 -1
  193. package/.next/standalone/.next/static/chunks/0fgx5m8vdxaap.js +0 -1
  194. package/.next/standalone/.next/static/chunks/0m_sn0gry7q~c.js +0 -1
  195. package/.next/standalone/.next/static/chunks/0p5c0gp6gyhh6.js +0 -1
  196. package/.next/standalone/.next/static/chunks/0qsmo2marl-6d.js +0 -16
  197. package/.next/standalone/.next/static/chunks/0ul9.j_tmw365.js +0 -1
  198. package/.next/standalone/.next/static/chunks/107yj1xx63glr.js +0 -1
  199. package/.next/standalone/.next/static/chunks/12_04jv.ecbd-.js +0 -1
  200. package/.next/standalone/.next/static/chunks/14cccdp9z2qvf.js +0 -8
  201. package/.next/standalone/.next/static/chunks/14yj.l6qq359_.js +0 -1
  202. package/.next/standalone/.next/static/chunks/1786bmcy3s8sd.js +0 -1
  203. package/.next/standalone/.next/static/chunks/17mf_h-e8sebp.js +0 -1
  204. /package/.next/standalone/.next/static/{bybcCRIlOhSPtqdnJUPM- → pZhcwQ83aP87HDTIzzyJ6}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,496022,(e,o,t)=>{o.exports={editorUrlNotSet:"Редактор не настроен. Откройте Настройки > Редактор.",editorRemoteNotSupported:"Удалённые каталоги не поддерживаются",openEditor:"Открыть редактор",splitVertical:"Разделить вертикально",splitVerticalShortcut:"Разделить вертикально ({shortcut})",splitHorizontal:"Разделить горизонтально",splitHorizontalShortcut:"Разделить горизонтально ({shortcut})",equalSplit:"Выровнять разделение",creatingConversation:"Создание нового сеанса...",resumingSession:"Возобновление сеанса...",claudeBootMain:"Запуск Claude...",claudeBootResuming:"Возобновление Claude...",claudeBootAlmostReady:"Почти готово...",claudeBootSubtitle:"Подождите немного",checkTerminal:"Проверьте терминал",trustPromptTitle:"Доверять этой папке?",trustPromptDescription:"{agentName} требуется ваше разрешение для чтения, редактирования и выполнения файлов в этой папке.",trustPromptYes:"Да, я доверяю этой папке",trustPromptNo:"Нет, выйти",resumeBlocked:"В терминале запущен другой процесс",resumeBlockedProcess:"Текущий процесс: {name}",resumeFailed:"Не удалось возобновить сессию",addFailed:"Не удалось добавить",removeFailed:"Не удалось удалить",openNewTab:"Открыть новую вкладку",newTabTooltip:"Открыть новую вкладку ({shortcut})",claudeNewConversation:"Claude",claudeSessionList:"Сессии Claude",disconnectedSessionNotFound:"Сессия не найдена",restartWithCommand:"Запустить с этой командой",or:"или",restartNewTerminal:"Запустить новый терминал",interruptTitle:"Прервать",interruptDescription:"Прервать агента? Текущая задача будет отменена.",interruptConfirm:"Прервать",connecting:"Подключение...",retryAction:"Повторить",cannotSwitch:"Невозможно переключить",newWorkspace:"Новое рабочее пространство",inputDisabledPlaceholder:"Claude Code не запущен",inputPlaceholder:"Введите сообщение...",inputAriaLabel:"Поле ввода сообщения Claude Code",codexInputAriaLabel:"Codex message input",claudeConnecting:"Claude подключается...",interruptAriaLabel:"Прервать задачу",sendAriaLabel:"Отправить сообщение",attachAriaLabel:"Прикрепить изображение",attachmentLimitReached:"Максимум {max} вложений на сообщение",attachmentNotConfirmed:"Не удалось подтвердить прикрепление изображения",attachingImages:"Прикрепляется {count} изображение(й)…",closeAllTabs:"Закрыть все вкладки",retryLoad:"Повторить",sessions:"Сессии",newConversation:"Новый чат",bypassSendFailed:"Не удалось отправить выделение",bypassPermissions:"Обойти проверку прав доступа",quickPrompts:"Быстрые промпты",switchToAgentMode:"Переключиться в режим {name}?",switchMode:"Переключить",statusBusy:"Обработка,",statusNeedsInput:"Ожидание ввода,",statusNeedsReview:"Требуется проверка,",sessionEnded:"Сессия завершена.",startNewSession:"Начать новую сессию",rename:"Переименовать",dragDropNotSupported:"Перетаскивание не поддерживается в веб-браузерах",fullPathPlaceholder:"Введите полный путь (например, /Users/...)",closeTabLabel:"Закрыть вкладку",newTabLabel:"Новая вкладка",sessionList:"Список сессий",tabStatus:"Статус вкладки",messageHistory:"История сообщений",installRunning:"Выполняется...",installDone:"Готово",fallbackLayout:"Запуск с макетом по умолчанию",layoutFetchError:"Не удалось загрузить макет",splitFailed:"Не удалось разделить панель",tabCreateFailed:"Не удалось создать вкладку",tabDeleteError:"Ошибка при удалении вкладки",sessionRestartFailed:"Не удалось перезапустить сессию",tabRenameFailed:"Не удалось переименовать вкладку",tabReorderFailed:"Не удалось изменить порядок вкладок",dragCopyHint:"Удерживайте Shift и перетащите, чтобы скопировать текст",copyPaneLabel:"Копировать вывод терминала",copyPaneDrawerTitle:"Копировать вывод терминала",copyPaneDrawerHint:"Долгое нажатие для выделения текста или нажмите «Копировать всё» ниже.",copyPaneLoading:"Загрузка...",copyPaneCaptureFailed:"Не удалось загрузить вывод терминала",copyPaneCopyAll:"Копировать всё",copyPaneSuccess:"Скопировано в буфер обмена",copyPaneCopyFailed:"Не удалось скопировать",codexNotInstalled:"Install Codex CLI: npm i -g @openai/codex or brew install --cask codex",codexHookInstallFailed:"Codex hook installation failed. State detection may be inaccurate.",codexConfigParseFailed:"Failed to parse ~/.codex/config.toml. Only purplemux hooks applied.",codexLaunchFailed:"Codex launch failed. Check the terminal.",codexResumeFailed:"Codex resume failed.",codexApprovalSendFailed:"Failed to send approval response. Please try again.",codexApprovalNotApplied:"Response did not reach codex. Check your keymap.",codexApprovalGranted:"Permission granted",codexApprovalDenied:"Permission denied",codexPermissionTitle:"Permission requested",codexPermissionExecMessage:"Run the following command?",codexPermissionPatchMessage:"Apply the following file changes?",codexPermissionPermissionsMessage:"The following permissions are required",codexPermissionExecBadge:"Exec",codexPermissionPatchBadge:"Apply Patch",codexPermissionPermissionsBadge:"Permission",codexPermissionShowDetails:"Show details",codexPermissionHideDetails:"Hide details",codexPermissionYes:"Yes",codexPermissionNo:"No",codexPermissionSendingResponse:"Sending response…",codexPermissionFilesMore:"and {count} more",codexPermissionPatchOpModify:"modify",codexPermissionPatchOpCreate:"create",codexPermissionPatchOpDelete:"delete",codexPermissionCwd:"Working directory",codexPermissionEnv:"Environment variables",codexPermissionNoDetails:"Permission requested — no further details",codexCopyCommand:"Copy command",codexCopyConfigPath:"Copy config.toml path",codexCopied:"Copied",codexRetry:"Retry",codexBootMain:"Starting Codex...",codexBootAlmostReady:"Almost ready...",codexBootSubtitle:"Just a moment",codexBootFailed:"Codex failed to start",codexBootFailedHint:"Check the terminal for details",codexBootRestart:"Restart",codexBootShowTerminal:"Show terminal",codexNewConversation:"Codex",codexSessionList:"Codex Sessions",codexSessionsSheetSubtitle:"Codex sessions in this workspace",codexSessionsEmpty:"No Codex sessions in this workspace yet",codexSessionsLoadFailed:"Failed to load Codex sessions",codexSessionsTokens:"tokens",codexSessionsModelLabel:"Model",codexSessionsUnknownModel:"Unknown",codexInactiveMessage:"Codex session is not running",codexStartSession:"Start Codex",codexResumeLastSession:"Resume",codexLastSessionLabel:"Last session:",codexConnecting:"Codex connecting...",codexTimelinePlaceholder:"Timeline integration coming soon",switchAgentBlocked:"{name} is running. Exit with /quit or Ctrl+D in the terminal first",codexUpdateTitle:"Update Codex?",codexUpdateVersion:"{current} -> {latest}",codexUpdateDescription:"Codex needs a quick update before starting this session.",codexUpdateNow:"Update now",codexUpdateSkip:"Skip",codexUpdateSkipVersion:"Skip this version",codexUpdateRunning:"Updating Codex...",codexUpdateRunningHint:"This can take a few seconds. Codex will restart when the update finishes.",codexUpdateSuccess:"Update finished. Restarting Codex...",codexUpdateRestarting:"Restarting Codex"}}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,169690,(e,n,t)=>{n.exports={editorUrlNotSet:"Editor ist nicht konfiguriert. Bitte öffne Einstellungen > Editor.",editorRemoteNotSupported:"Remote-Verzeichnisse werden nicht unterstützt",openEditor:"Editor öffnen",splitVertical:"Vertikal teilen",splitVerticalShortcut:"Vertikal teilen ({shortcut})",splitHorizontal:"Horizontal teilen",splitHorizontalShortcut:"Horizontal teilen ({shortcut})",equalSplit:"Gleichmäßig aufteilen",creatingConversation:"Neue Sitzung wird erstellt...",resumingSession:"Sitzung wird fortgesetzt...",claudeBootMain:"Claude wird gestartet...",claudeBootResuming:"Claude wird fortgesetzt...",claudeBootAlmostReady:"Fast fertig...",claudeBootSubtitle:"Einen Moment bitte",checkTerminal:"Terminal prüfen",trustPromptTitle:"Diesem Ordner vertrauen?",trustPromptDescription:"{agentName} benötigt Ihre Erlaubnis, Dateien in diesem Ordner zu lesen, zu bearbeiten und auszuführen.",trustPromptYes:"Ja, ich vertraue diesem Ordner",trustPromptNo:"Nein, beenden",resumeBlocked:"Ein anderer Prozess läuft im Terminal",resumeBlockedProcess:"Aktuell laufender Prozess: {name}",resumeFailed:"Sitzung konnte nicht fortgesetzt werden",addFailed:"Hinzufügen fehlgeschlagen",removeFailed:"Entfernen fehlgeschlagen",openNewTab:"Neuen Tab öffnen",newTabTooltip:"Neuen Tab öffnen ({shortcut})",claudeNewConversation:"Claude",claudeSessionList:"Claude-Sitzungen",disconnectedSessionNotFound:"Sitzung nicht gefunden",restartWithCommand:"Mit diesem Befehl starten",or:"oder",restartNewTerminal:"Neues Terminal starten",interruptTitle:"Unterbrechen",interruptDescription:"Agent unterbrechen? Die aktuelle Aufgabe wird abgebrochen.",interruptConfirm:"Unterbrechen",connecting:"Verbindung wird hergestellt...",retryAction:"Wiederholen",cannotSwitch:"Wechsel nicht möglich",newWorkspace:"Neuer Arbeitsbereich",inputDisabledPlaceholder:"Claude Code läuft nicht",inputPlaceholder:"Nachricht eingeben...",inputAriaLabel:"Claude Code Nachrichteneingabe",codexInputAriaLabel:"Codex message input",claudeConnecting:"Claude verbindet...",interruptAriaLabel:"Aufgabe unterbrechen",sendAriaLabel:"Nachricht senden",attachAriaLabel:"Bild anhängen",attachmentLimitReached:"Maximal {max} Anhänge pro Nachricht",attachmentNotConfirmed:"Bildanhang konnte nicht bestätigt werden",attachingImages:"{count} Bild(er) werden angehängt…",closeAllTabs:"Alle Tabs schließen",retryLoad:"Wiederholen",sessions:"Sitzungen",newConversation:"Neuer Chat",bypassSendFailed:"Auswahl konnte nicht gesendet werden",bypassPermissions:"Berechtigungsprüfung umgehen",quickPrompts:"Schnellbefehle",switchToAgentMode:"In den {name}-Modus wechseln?",switchMode:"Wechseln",statusBusy:"Verarbeitung,",statusNeedsInput:"Eingabe erforderlich,",statusNeedsReview:"Überprüfung erforderlich,",sessionEnded:"Sitzung beendet.",startNewSession:"Neue Sitzung starten",rename:"Umbenennen",dragDropNotSupported:"Drag & Drop wird im Webbrowser nicht unterstützt",fullPathPlaceholder:"Vollständigen Pfad eingeben (z.B. /Users/...)",closeTabLabel:"Tab schließen",newTabLabel:"Neuer Tab",sessionList:"Sitzungsliste",tabStatus:"Tab-Status",messageHistory:"Nachrichtenverlauf",installRunning:"Wird ausgeführt...",installDone:"Fertig",fallbackLayout:"Starte mit Standard-Layout",layoutFetchError:"Layout konnte nicht geladen werden",splitFailed:"Teilen fehlgeschlagen",tabCreateFailed:"Tab konnte nicht erstellt werden",tabDeleteError:"Fehler beim Löschen des Tabs",sessionRestartFailed:"Sitzung konnte nicht neu gestartet werden",tabRenameFailed:"Tab-Umbenennung fehlgeschlagen",tabReorderFailed:"Tab-Neuanordnung fehlgeschlagen",dragCopyHint:"Halten Sie Shift gedrückt und ziehen Sie, um Text zu kopieren",copyPaneLabel:"Terminal-Ausgabe kopieren",copyPaneDrawerTitle:"Terminal-Ausgabe kopieren",copyPaneDrawerHint:"Text zum Auswählen lang drücken oder unten auf „Alles kopieren“ tippen.",copyPaneLoading:"Wird geladen...",copyPaneCaptureFailed:"Terminal-Ausgabe konnte nicht geladen werden",copyPaneCopyAll:"Alles kopieren",copyPaneSuccess:"In die Zwischenablage kopiert",copyPaneCopyFailed:"Kopieren fehlgeschlagen",codexNotInstalled:"Install Codex CLI: npm i -g @openai/codex or brew install --cask codex",codexHookInstallFailed:"Codex hook installation failed. State detection may be inaccurate.",codexConfigParseFailed:"Failed to parse ~/.codex/config.toml. Only purplemux hooks applied.",codexLaunchFailed:"Codex launch failed. Check the terminal.",codexResumeFailed:"Codex resume failed.",codexApprovalSendFailed:"Failed to send approval response. Please try again.",codexApprovalNotApplied:"Response did not reach codex. Check your keymap.",codexApprovalGranted:"Permission granted",codexApprovalDenied:"Permission denied",codexPermissionTitle:"Permission requested",codexPermissionExecMessage:"Run the following command?",codexPermissionPatchMessage:"Apply the following file changes?",codexPermissionPermissionsMessage:"The following permissions are required",codexPermissionExecBadge:"Exec",codexPermissionPatchBadge:"Apply Patch",codexPermissionPermissionsBadge:"Permission",codexPermissionShowDetails:"Show details",codexPermissionHideDetails:"Hide details",codexPermissionYes:"Yes",codexPermissionNo:"No",codexPermissionSendingResponse:"Sending response…",codexPermissionFilesMore:"and {count} more",codexPermissionPatchOpModify:"modify",codexPermissionPatchOpCreate:"create",codexPermissionPatchOpDelete:"delete",codexPermissionCwd:"Working directory",codexPermissionEnv:"Environment variables",codexPermissionNoDetails:"Permission requested — no further details",codexCopyCommand:"Copy command",codexCopyConfigPath:"Copy config.toml path",codexCopied:"Copied",codexRetry:"Retry",codexBootMain:"Starting Codex...",codexBootAlmostReady:"Almost ready...",codexBootSubtitle:"Just a moment",codexBootFailed:"Codex failed to start",codexBootFailedHint:"Check the terminal for details",codexBootRestart:"Restart",codexBootShowTerminal:"Show terminal",codexNewConversation:"Codex",codexSessionList:"Codex Sessions",codexSessionsSheetSubtitle:"Codex sessions in this workspace",codexSessionsEmpty:"No Codex sessions in this workspace yet",codexSessionsLoadFailed:"Failed to load Codex sessions",codexSessionsTokens:"tokens",codexSessionsModelLabel:"Model",codexSessionsUnknownModel:"Unknown",codexInactiveMessage:"Codex session is not running",codexStartSession:"Start Codex",codexResumeLastSession:"Resume",codexLastSessionLabel:"Last session:",codexConnecting:"Codex connecting...",codexTimelinePlaceholder:"Timeline integration coming soon",switchAgentBlocked:"{name} is running. Exit with /quit or Ctrl+D in the terminal first",codexUpdateTitle:"Update Codex?",codexUpdateVersion:"{current} -> {latest}",codexUpdateDescription:"Codex needs a quick update before starting this session.",codexUpdateNow:"Update now",codexUpdateSkip:"Skip",codexUpdateSkipVersion:"Skip this version",codexUpdateRunning:"Updating Codex...",codexUpdateRunningHint:"This can take a few seconds. Codex will restart when the update finishes.",codexUpdateSuccess:"Update finished. Restarting Codex...",codexUpdateRestarting:"Restarting Codex"}}]);
@@ -0,0 +1,5 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,420262,(e,t,r)=>{"use strict";let n;Object.defineProperty(r,"__esModule",{value:!0});var a={getAssetToken:function(){return l},getAssetTokenQuery:function(){return u},getDeploymentId:function(){return i},getDeploymentIdQuery:function(){return s}};for(var o in a)Object.defineProperty(r,o,{enumerable:!0,get:a[o]});function i(){return n}function s(e=!1){let t=n;return t?`${e?"&":"?"}dpl=${t}`:""}function l(){return!1}function u(e=!1){return""}"u">typeof window?(n=document.documentElement.dataset.dplId,delete document.documentElement.dataset.dplId):n=void 0},547194,(e,t,r)=>{"use strict";function n(){let e=Object.create(null);return{on(t,r){(e[t]||(e[t]=[])).push(r)},off(t,r){e[t]&&e[t].splice(e[t].indexOf(r)>>>0,1)},emit(t,...r){(e[t]||[]).slice().map(e=>{e(...r)})}}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return n}})},425479,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"RouterContext",{enumerable:!0,get:function(){return n}});let n=e.r(741705)._(e.r(191788)).default.createContext(null)},101280,(e,t,r)=>{"use strict";function n(e,t={}){if(t.onlyHashChange)return void e();let r=document.documentElement;if("smooth"!==r.dataset.scrollBehavior)return void e();let a=r.style.scrollBehavior;r.style.scrollBehavior="auto",t.dontForceLayout||r.getClientRects(),e(),r.style.scrollBehavior=a}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"disableSmoothScrollDuringRouteTransition",{enumerable:!0,get:function(){return n}}),e.r(894470)},251569,(e,t,r)=>{"use strict";function n(e){return e.startsWith("/")?e:`/${e}`}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureLeadingSlash",{enumerable:!0,get:function(){return n}})},977915,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DEFAULT_SEGMENT_KEY:function(){return f},NOT_FOUND_SEGMENT_KEY:function(){return d},PAGE_SEGMENT_KEY:function(){return c},addSearchParamsIfPageSegment:function(){return l},computeSelectedLayoutSegment:function(){return u},getSegmentValue:function(){return o},getSelectedLayoutSegmentPath:function(){return function e(t,r,n=!0,a=[]){let i;if(n)i=t[1][r];else{let e=t[1];i=e.children??Object.values(e)[0]}if(!i)return a;let s=o(i[0]);return!s||s.startsWith(c)?a:(a.push(s),e(i,r,!1,a))}},isGroupSegment:function(){return i},isParallelRouteSegment:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});function o(e){return Array.isArray(e)?e[1]:e}function i(e){return"("===e[0]&&e.endsWith(")")}function s(e){return e.startsWith("@")&&"@children"!==e}function l(e,t){if(e.includes(c)){let e=JSON.stringify(t);return"{}"!==e?c+"?"+e:c}return e}function u(e,t){if(!e||0===e.length)return null;let r="children"===t?e[0]:e[e.length-1];return r===f?null:r}let c="__PAGE__",f="__DEFAULT__",d="/_not-found"},146159,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={compareAppPaths:function(){return l},normalizeAppPath:function(){return s},normalizeRscURL:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(251569),i=e.r(977915);function s(e){return(0,o.ensureLeadingSlash)(e.split("/").reduce((e,t,r,n)=>!t||(0,i.isGroupSegment)(t)||"@"===t[0]||("page"===t||"route"===t)&&r===n.length-1?e:`${e}/${t}`,""))}function l(e,t){let r=e.includes("/@"),n=t.includes("/@");return r&&!n?-1:!r&&n?1:e.localeCompare(t)}function u(e){return e.replace(/\.rsc($|\?)/,"$1")}},389161,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={INTERCEPTION_ROUTE_MARKERS:function(){return i},extractInterceptionRouteInformation:function(){return l},isInterceptionRouteAppPath:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(146159),i=["(..)(..)","(.)","(..)","(...)"];function s(e){return void 0!==e.split("/").find(e=>i.find(t=>e.startsWith(t)))}function l(e){let t,r,n;for(let a of e.split("/"))if(r=i.find(e=>a.startsWith(e))){[t,n]=e.split(r,2);break}if(!t||!r||!n)throw Object.defineProperty(Error(`Invalid interception route: ${e}. Must be in the format /<intercepting route>/(..|...|..)(..)/<intercepted route>`),"__NEXT_ERROR_CODE",{value:"E269",enumerable:!1,configurable:!0});switch(t=(0,o.normalizeAppPath)(t),r){case"(.)":n="/"===t?`/${n}`:t+"/"+n;break;case"(..)":if("/"===t)throw Object.defineProperty(Error(`Invalid interception route: ${e}. Cannot use (..) marker at the root level, use (.) instead.`),"__NEXT_ERROR_CODE",{value:"E207",enumerable:!1,configurable:!0});n=t.split("/").slice(0,-1).concat(n).join("/");break;case"(...)":n="/"+n;break;case"(..)(..)":let a=t.split("/");if(a.length<=2)throw Object.defineProperty(Error(`Invalid interception route: ${e}. Cannot use (..)(..) marker at the root level or one level up.`),"__NEXT_ERROR_CODE",{value:"E486",enumerable:!1,configurable:!0});n=a.slice(0,-2).concat(n).join("/");break;default:throw Object.defineProperty(Error("Invariant: unexpected marker"),"__NEXT_ERROR_CODE",{value:"E112",enumerable:!1,configurable:!0})}return{interceptingRoute:t,interceptedRoute:n}}},478690,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isDynamicRoute",{enumerable:!0,get:function(){return i}});let n=e.r(389161),a=/\/[^/]*\[[^/]+\][^/]*(?=\/|$)/,o=/\/\[[^/]+\](?=\/|$)/;function i(e,t=!0){return((0,n.isInterceptionRouteAppPath)(e)&&(e=(0,n.extractInterceptionRouteInformation)(e).interceptedRoute),t)?o.test(e):a.test(e)}},398928,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return l},searchParamsToUrlQuery:function(){return o},urlQueryToSearchParams:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});function o(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function i(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function s(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,i(e));else t.set(r,i(n));return t}function l(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},626016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"setAttributesFromProps",{enumerable:!0,get:function(){return i}});let n={acceptCharset:"accept-charset",className:"class",htmlFor:"for",httpEquiv:"http-equiv",noModule:"noModule"},a=["onLoad","onReady","dangerouslySetInnerHTML","children","onError","strategy","stylesheets"];function o(e){return["async","defer","noModule"].includes(e)}function i(e,t){for(let[r,i]of Object.entries(t)){if(!t.hasOwnProperty(r)||a.includes(r)||void 0===i)continue;let s=n[r]||r.toLowerCase();"SCRIPT"===e.tagName&&o(s)?e[s]=!!i:e.setAttribute(s,String(i)),(!1===i||"SCRIPT"===e.tagName&&o(s)&&(!i||"false"===i))&&(e.setAttribute(s,""),e.removeAttribute(s))}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},672796,(e,t,r)=>{"use strict";function n(e){let t=e.indexOf("#"),r=e.indexOf("?"),n=r>-1&&(t<0||r<t);return n||t>-1?{pathname:e.substring(0,n?r:t),query:n?e.substring(r,t>-1?t:void 0):"",hash:t>-1?e.slice(t):""}:{pathname:e,query:"",hash:""}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"parsePath",{enumerable:!0,get:function(){return n}})},443980,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"addPathPrefix",{enumerable:!0,get:function(){return a}});let n=e.r(672796);function a(e,t){if(!e.startsWith("/")||!t)return e;let{pathname:r,query:a,hash:o}=(0,n.parsePath)(e);return`${t}${r}${a}${o}`}},523486,(e,t,r)=>{"use strict";function n(e){return e.replace(/\/$/,"")||"/"}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"removeTrailingSlash",{enumerable:!0,get:function(){return n}})},270090,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"normalizePathTrailingSlash",{enumerable:!0,get:function(){return o}});let n=e.r(523486),a=e.r(672796),o=e=>{if(!e.startsWith("/"))return e;let{pathname:t,query:r,hash:o}=(0,a.parsePath)(e);return`${(0,n.removeTrailingSlash)(t)}${r}${o}`};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},344113,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"addBasePath",{enumerable:!0,get:function(){return o}});let n=e.r(443980),a=e.r(270090);function o(e,t){return(0,a.normalizePathTrailingSlash)((0,n.addPathPrefix)(e,""))}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},87091,(e,t,r)=>{(()=>{"use strict";"u">typeof __nccwpck_require__&&(__nccwpck_require__.ab="/ROOT/node_modules/next/dist/compiled/path-to-regexp/");var e={};(()=>{function t(e,t){void 0===t&&(t={});for(var r=function(e){for(var t=[],r=0;r<e.length;){var n=e[r];if("*"===n||"+"===n||"?"===n){t.push({type:"MODIFIER",index:r,value:e[r++]});continue}if("\\"===n){t.push({type:"ESCAPED_CHAR",index:r++,value:e[r++]});continue}if("{"===n){t.push({type:"OPEN",index:r,value:e[r++]});continue}if("}"===n){t.push({type:"CLOSE",index:r,value:e[r++]});continue}if(":"===n){for(var a="",o=r+1;o<e.length;){var i=e.charCodeAt(o);if(i>=48&&i<=57||i>=65&&i<=90||i>=97&&i<=122||95===i){a+=e[o++];continue}break}if(!a)throw TypeError("Missing parameter name at ".concat(r));t.push({type:"NAME",index:r,value:a}),r=o;continue}if("("===n){var s=1,l="",o=r+1;if("?"===e[o])throw TypeError('Pattern cannot start with "?" at '.concat(o));for(;o<e.length;){if("\\"===e[o]){l+=e[o++]+e[o++];continue}if(")"===e[o]){if(0==--s){o++;break}}else if("("===e[o]&&(s++,"?"!==e[o+1]))throw TypeError("Capturing groups are not allowed at ".concat(o));l+=e[o++]}if(s)throw TypeError("Unbalanced pattern at ".concat(r));if(!l)throw TypeError("Missing pattern at ".concat(r));t.push({type:"PATTERN",index:r,value:l}),r=o;continue}t.push({type:"CHAR",index:r,value:e[r++]})}return t.push({type:"END",index:r,value:""}),t}(e),n=t.prefixes,o=void 0===n?"./":n,i=t.delimiter,s=void 0===i?"/#?":i,l=[],u=0,c=0,f="",d=function(e){if(c<r.length&&r[c].type===e)return r[c++].value},p=function(e){var t=d(e);if(void 0!==t)return t;var n=r[c],a=n.type,o=n.index;throw TypeError("Unexpected ".concat(a," at ").concat(o,", expected ").concat(e))},h=function(){for(var e,t="";e=d("CHAR")||d("ESCAPED_CHAR");)t+=e;return t},m=function(e){for(var t=0;t<s.length;t++){var r=s[t];if(e.indexOf(r)>-1)return!0}return!1},_=function(e){var t=l[l.length-1],r=e||(t&&"string"==typeof t?t:"");if(t&&!r)throw TypeError('Must have text between two parameters, missing text after "'.concat(t.name,'"'));return!r||m(r)?"[^".concat(a(s),"]+?"):"(?:(?!".concat(a(r),")[^").concat(a(s),"])+?")};c<r.length;){var g=d("CHAR"),P=d("NAME"),y=d("PATTERN");if(P||y){var E=g||"";-1===o.indexOf(E)&&(f+=E,E=""),f&&(l.push(f),f=""),l.push({name:P||u++,prefix:E,suffix:"",pattern:y||_(E),modifier:d("MODIFIER")||""});continue}var b=g||d("ESCAPED_CHAR");if(b){f+=b;continue}if(f&&(l.push(f),f=""),d("OPEN")){var E=h(),R=d("NAME")||"",v=d("PATTERN")||"",O=h();p("CLOSE"),l.push({name:R||(v?u++:""),pattern:R&&!v?_(E):v,prefix:E,suffix:O,modifier:d("MODIFIER")||""});continue}p("END")}return l}function r(e,t){void 0===t&&(t={});var r=o(t),n=t.encode,a=void 0===n?function(e){return e}:n,i=t.validate,s=void 0===i||i,l=e.map(function(e){if("object"==typeof e)return new RegExp("^(?:".concat(e.pattern,")$"),r)});return function(t){for(var r="",n=0;n<e.length;n++){var o=e[n];if("string"==typeof o){r+=o;continue}var i=t?t[o.name]:void 0,u="?"===o.modifier||"*"===o.modifier,c="*"===o.modifier||"+"===o.modifier;if(Array.isArray(i)){if(!c)throw TypeError('Expected "'.concat(o.name,'" to not repeat, but got an array'));if(0===i.length){if(u)continue;throw TypeError('Expected "'.concat(o.name,'" to not be empty'))}for(var f=0;f<i.length;f++){var d=a(i[f],o);if(s&&!l[n].test(d))throw TypeError('Expected all "'.concat(o.name,'" to match "').concat(o.pattern,'", but got "').concat(d,'"'));r+=o.prefix+d+o.suffix}continue}if("string"==typeof i||"number"==typeof i){var d=a(String(i),o);if(s&&!l[n].test(d))throw TypeError('Expected "'.concat(o.name,'" to match "').concat(o.pattern,'", but got "').concat(d,'"'));r+=o.prefix+d+o.suffix;continue}if(!u){var p=c?"an array":"a string";throw TypeError('Expected "'.concat(o.name,'" to be ').concat(p))}}return r}}function n(e,t,r){void 0===r&&(r={});var n=r.decode,a=void 0===n?function(e){return e}:n;return function(r){var n=e.exec(r);if(!n)return!1;for(var o=n[0],i=n.index,s=Object.create(null),l=1;l<n.length;l++)!function(e){if(void 0!==n[e]){var r=t[e-1];"*"===r.modifier||"+"===r.modifier?s[r.name]=n[e].split(r.prefix+r.suffix).map(function(e){return a(e,r)}):s[r.name]=a(n[e],r)}}(l);return{path:o,index:i,params:s}}}function a(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function o(e){return e&&e.sensitive?"":"i"}function i(e,t,r){void 0===r&&(r={});for(var n=r.strict,i=void 0!==n&&n,s=r.start,l=r.end,u=r.encode,c=void 0===u?function(e){return e}:u,f=r.delimiter,d=r.endsWith,p="[".concat(a(void 0===d?"":d),"]|$"),h="[".concat(a(void 0===f?"/#?":f),"]"),m=void 0===s||s?"^":"",_=0;_<e.length;_++){var g=e[_];if("string"==typeof g)m+=a(c(g));else{var P=a(c(g.prefix)),y=a(c(g.suffix));if(g.pattern)if(t&&t.push(g),P||y)if("+"===g.modifier||"*"===g.modifier){var E="*"===g.modifier?"?":"";m+="(?:".concat(P,"((?:").concat(g.pattern,")(?:").concat(y).concat(P,"(?:").concat(g.pattern,"))*)").concat(y,")").concat(E)}else m+="(?:".concat(P,"(").concat(g.pattern,")").concat(y,")").concat(g.modifier);else{if("+"===g.modifier||"*"===g.modifier)throw TypeError('Can not repeat "'.concat(g.name,'" without a prefix and suffix'));m+="(".concat(g.pattern,")").concat(g.modifier)}else m+="(?:".concat(P).concat(y,")").concat(g.modifier)}}if(void 0===l||l)i||(m+="".concat(h,"?")),m+=r.endsWith?"(?=".concat(p,")"):"$";else{var b=e[e.length-1],R="string"==typeof b?h.indexOf(b[b.length-1])>-1:void 0===b;i||(m+="(?:".concat(h,"(?=").concat(p,"))?")),R||(m+="(?=".concat(h,"|").concat(p,")"))}return new RegExp(m,o(r))}function s(e,r,n){if(e instanceof RegExp){var a;if(!r)return e;for(var l=/\((?:\?<(.*?)>)?(?!\?)/g,u=0,c=l.exec(e.source);c;)r.push({name:c[1]||u++,prefix:"",suffix:"",modifier:"",pattern:""}),c=l.exec(e.source);return e}return Array.isArray(e)?(a=e.map(function(e){return s(e,r,n).source}),new RegExp("(?:".concat(a.join("|"),")"),o(n))):i(t(e,n),r,n)}Object.defineProperty(e,"__esModule",{value:!0}),e.pathToRegexp=e.tokensToRegexp=e.regexpToFunction=e.match=e.tokensToFunction=e.compile=e.parse=void 0,e.parse=t,e.compile=function(e,n){return r(t(e,n),n)},e.tokensToFunction=r,e.match=function(e,t){var r=[];return n(s(e,r,t),r,t)},e.regexpToFunction=n,e.tokensToRegexp=i,e.pathToRegexp=s})(),t.exports=e})()},158268,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={PARAM_SEPARATOR:function(){return o},hasAdjacentParameterIssues:function(){return i},normalizeAdjacentParameters:function(){return s},normalizeTokensForRegexp:function(){return l},stripNormalizedSeparators:function(){return u},stripParameterSeparators:function(){return c}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o="_NEXTSEP_";function i(e){return"string"==typeof e&&!!(/\/\(\.{1,3}\):[^/\s]+/.test(e)||/:[a-zA-Z_][a-zA-Z0-9_]*:[a-zA-Z_][a-zA-Z0-9_]*/.test(e))}function s(e){let t=e;return(t=t.replace(/(\([^)]*\)):([^/\s]+)/g,`$1${o}:$2`)).replace(/:([^:/\s)]+)(?=:)/g,`:$1${o}`)}function l(e){return e.map(e=>"object"==typeof e&&null!==e&&"modifier"in e&&("*"===e.modifier||"+"===e.modifier)&&"prefix"in e&&"suffix"in e&&""===e.prefix&&""===e.suffix?{...e,prefix:"/"}:e)}function u(e){return e.replace(RegExp(`\\)${o}`,"g"),")")}function c(e){let t={};for(let[r,n]of Object.entries(e))"string"==typeof n?t[r]=n.replace(RegExp(`^${o}`),""):Array.isArray(n)?t[r]=n.map(e=>"string"==typeof e?e.replace(RegExp(`^${o}`),""):e):t[r]=n;return t}},632443,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={safeCompile:function(){return l},safePathToRegexp:function(){return s},safeRegexpToFunction:function(){return u},safeRouteMatcher:function(){return c}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(87091),i=e.r(158268);function s(e,t,r){if("string"!=typeof e)return(0,o.pathToRegexp)(e,t,r);let n=(0,i.hasAdjacentParameterIssues)(e),a=n?(0,i.normalizeAdjacentParameters)(e):e;try{return(0,o.pathToRegexp)(a,t,r)}catch(a){if(!n)try{let n=(0,i.normalizeAdjacentParameters)(e);return(0,o.pathToRegexp)(n,t,r)}catch(e){}throw a}}function l(e,t){let r=(0,i.hasAdjacentParameterIssues)(e),n=r?(0,i.normalizeAdjacentParameters)(e):e;try{let e=(0,o.compile)(n,t);if(r)return t=>(0,i.stripNormalizedSeparators)(e(t));return e}catch(n){if(!r)try{let r=(0,i.normalizeAdjacentParameters)(e),n=(0,o.compile)(r,t);return e=>(0,i.stripNormalizedSeparators)(n(e))}catch(e){}throw n}}function u(e,t){let r=(0,o.regexpToFunction)(e,t||[]);return e=>{let t=r(e);return!!t&&{...t,params:(0,i.stripParameterSeparators)(t.params)}}}function c(e){return t=>{let r=e(t);return!!r&&(0,i.stripParameterSeparators)(r)}}},929944,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getRouteMatcher",{enumerable:!0,get:function(){return o}});let n=e.r(889129),a=e.r(632443);function o({re:e,groups:t}){return(0,a.safeRouteMatcher)(r=>{let a=e.exec(r);if(!a)return!1;let o=e=>{try{return decodeURIComponent(e)}catch{throw Object.defineProperty(new n.DecodeError("failed to decode param"),"__NEXT_ERROR_CODE",{value:"E528",enumerable:!1,configurable:!0})}},i={};for(let[e,r]of Object.entries(t)){let t=a[r.pos];void 0!==t&&(r.repeat?i[e]=t.split("/").map(e=>o(e)):i[e]=o(t))}return i})}},302987,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ACTION_SUFFIX:function(){return _},APP_DIR_ALIAS:function(){return B},CACHE_ONE_YEAR_SECONDS:function(){return N},DOT_NEXT_ALIAS:function(){return U},ESLINT_DEFAULT_DIRS:function(){return es},GSP_NO_RETURNED_VALUE:function(){return et},GSSP_COMPONENT_MEMBER_ERROR:function(){return ea},GSSP_NO_RETURNED_VALUE:function(){return er},HTML_CONTENT_TYPE_HEADER:function(){return i},INFINITE_CACHE:function(){return C},INSTRUMENTATION_HOOK_FILENAME:function(){return $},JSON_CONTENT_TYPE_HEADER:function(){return s},MATCHED_PATH_HEADER:function(){return c},MIDDLEWARE_FILENAME:function(){return I},MIDDLEWARE_LOCATION_REGEXP:function(){return M},NEXT_BODY_SUFFIX:function(){return y},NEXT_CACHE_IMPLICIT_TAG_ID:function(){return A},NEXT_CACHE_REVALIDATED_TAGS_HEADER:function(){return R},NEXT_CACHE_REVALIDATE_TAG_TOKEN_HEADER:function(){return v},NEXT_CACHE_ROOT_PARAM_TAG_ID:function(){return x},NEXT_CACHE_SOFT_TAG_MAX_LENGTH:function(){return w},NEXT_CACHE_TAGS_HEADER:function(){return b},NEXT_CACHE_TAG_MAX_ITEMS:function(){return T},NEXT_CACHE_TAG_MAX_LENGTH:function(){return j},NEXT_DATA_SUFFIX:function(){return g},NEXT_INTERCEPTION_MARKER_PREFIX:function(){return u},NEXT_META_SUFFIX:function(){return P},NEXT_NAV_DEPLOYMENT_ID_HEADER:function(){return E},NEXT_QUERY_PARAM_PREFIX:function(){return l},NEXT_RESUME_HEADER:function(){return O},NEXT_RESUME_STATE_LENGTH_HEADER:function(){return S},NON_STANDARD_NODE_ENV:function(){return eo},PAGES_DIR_ALIAS:function(){return k},PRERENDER_REVALIDATE_HEADER:function(){return f},PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER:function(){return d},PROXY_FILENAME:function(){return L},PROXY_LOCATION_REGEXP:function(){return D},PUBLIC_DIR_MIDDLEWARE_CONFLICT:function(){return Y},ROOT_DIR_ALIAS:function(){return H},RSC_ACTION_CLIENT_WRAPPER_ALIAS:function(){return V},RSC_ACTION_ENCRYPTION_ALIAS:function(){return q},RSC_ACTION_PROXY_ALIAS:function(){return F},RSC_ACTION_VALIDATE_ALIAS:function(){return W},RSC_CACHE_WRAPPER_ALIAS:function(){return G},RSC_DYNAMIC_IMPORT_WRAPPER_ALIAS:function(){return z},RSC_MOD_REF_PROXY_ALIAS:function(){return X},RSC_SEGMENTS_DIR_SUFFIX:function(){return p},RSC_SEGMENT_SUFFIX:function(){return h},RSC_SUFFIX:function(){return m},SERVER_PROPS_EXPORT_ERROR:function(){return ee},SERVER_PROPS_GET_INIT_PROPS_CONFLICT:function(){return J},SERVER_PROPS_SSG_CONFLICT:function(){return Q},SERVER_RUNTIME:function(){return el},SSG_FALLBACK_EXPORT_ERROR:function(){return ei},SSG_GET_INITIAL_PROPS_CONFLICT:function(){return K},STATIC_STATUS_PAGE_GET_INITIAL_PROPS_ERROR:function(){return Z},TEXT_PLAIN_CONTENT_TYPE_HEADER:function(){return o},UNSTABLE_REVALIDATE_RENAME_ERROR:function(){return en},WEBPACK_LAYERS:function(){return ef},WEBPACK_RESOURCE_QUERIES:function(){return ed},WEB_SOCKET_MAX_RECONNECTIONS:function(){return eu}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o="text/plain",i="text/html; charset=utf-8",s="application/json; charset=utf-8",l="nxtP",u="nxtI",c="x-matched-path",f="x-prerender-revalidate",d="x-prerender-revalidate-if-generated",p=".segments",h=".segment.rsc",m=".rsc",_=".action",g=".json",P=".meta",y=".body",E="x-nextjs-deployment-id",b="x-next-cache-tags",R="x-next-revalidated-tags",v="x-next-revalidate-tag-token",O="next-resume",S="x-next-resume-state-length",T=128,j=256,w=1024,A="_N_T_",x="_N_RP_",N=31536e3,C=0xfffffffe,I="middleware",M=`(?:src/)?${I}`,L="proxy",D=`(?:src/)?${L}`,$="instrumentation",k="private-next-pages",U="private-dot-next",H="private-next-root-dir",B="private-next-app-dir",X="private-next-rsc-mod-ref-proxy",W="private-next-rsc-action-validate",F="private-next-rsc-server-reference",G="private-next-rsc-cache-wrapper",z="private-next-rsc-track-dynamic-import",q="private-next-rsc-action-encryption",V="private-next-rsc-action-client-wrapper",Y="You can not have a '_next' folder inside of your public folder. This conflicts with the internal '/_next' route. https://nextjs.org/docs/messages/public-next-folder-conflict",K="You can not use getInitialProps with getStaticProps. To use SSG, please remove your getInitialProps",J="You can not use getInitialProps with getServerSideProps. Please remove getInitialProps.",Q="You can not use getStaticProps or getStaticPaths with getServerSideProps. To use SSG, please remove getServerSideProps",Z="can not have getInitialProps/getServerSideProps, https://nextjs.org/docs/messages/404-get-initial-props",ee="pages with `getServerSideProps` can not be exported. See more info here: https://nextjs.org/docs/messages/gssp-export",et="Your `getStaticProps` function did not return an object. Did you forget to add a `return`?",er="Your `getServerSideProps` function did not return an object. Did you forget to add a `return`?",en="The `unstable_revalidate` property is available for general use.\nPlease use `revalidate` instead.",ea="can not be attached to a page's component and must be exported from the page. See more info here: https://nextjs.org/docs/messages/gssp-component-member",eo='You are using a non-standard "NODE_ENV" value in your environment. This creates inconsistencies in the project and is strongly advised against. Read more: https://nextjs.org/docs/messages/non-standard-node-env',ei="Pages with `fallback` enabled in `getStaticPaths` can not be exported. See more info here: https://nextjs.org/docs/messages/ssg-fallback-true-export",es=["app","pages","components","lib","src"],el={edge:"edge",experimentalEdge:"experimental-edge",nodejs:"nodejs"},eu=12,ec={shared:"shared",reactServerComponents:"rsc",serverSideRendering:"ssr",actionBrowser:"action-browser",apiNode:"api-node",apiEdge:"api-edge",middleware:"middleware",instrument:"instrument",edgeAsset:"edge-asset",appPagesBrowser:"app-pages-browser",pagesDirBrowser:"pages-dir-browser",pagesDirEdge:"pages-dir-edge",pagesDirNode:"pages-dir-node"},ef={...ec,GROUP:{builtinReact:[ec.reactServerComponents,ec.actionBrowser],serverOnly:[ec.reactServerComponents,ec.actionBrowser,ec.instrument,ec.middleware],neutralTarget:[ec.apiNode,ec.apiEdge],clientOnly:[ec.serverSideRendering,ec.appPagesBrowser],bundled:[ec.reactServerComponents,ec.actionBrowser,ec.serverSideRendering,ec.appPagesBrowser,ec.shared,ec.instrument,ec.middleware],appPages:[ec.reactServerComponents,ec.serverSideRendering,ec.appPagesBrowser,ec.actionBrowser]}},ed={edgeSSREntry:"__next_edge_ssr_entry__",metadata:"__next_metadata__",metadataRoute:"__next_metadata_route__",metadataImageMeta:"__next_metadata_image_meta__"}},442778,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"escapeStringRegexp",{enumerable:!0,get:function(){return o}});let n=/[|\\{}()[\]^$+*?.-]/,a=/[|\\{}()[\]^$+*?.-]/g;function o(e){return n.test(e)?e.replace(a,"\\$&"):e}},7117,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"InvariantError",{enumerable:!0,get:function(){return n}});class n extends Error{constructor(e,t){super(`Invariant: ${e.endsWith(".")?e:e+"."} This is a bug in Next.js.`,t),this.name="InvariantError"}}},89141,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"parseLoaderTree",{enumerable:!0,get:function(){return a}});let n=e.r(977915);function a(e){let[t,r,a,o]=e,{layout:i,template:s}=a,{page:l}=a;l=t===n.DEFAULT_SEGMENT_KEY?a.defaultPage:l;let u=i?.[1]||s?.[1]||l?.[1];return{page:l,segment:t,modules:a,conventionPath:u,parallelRoutes:r,staticSiblings:o}}},996309,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={getParamProperties:function(){return l},getSegmentParam:function(){return i},isCatchAll:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(389161);function i(e){let t=o.INTERCEPTION_ROUTE_MARKERS.find(t=>e.startsWith(t));return(t&&(e=e.slice(t.length)),e.startsWith("[[...")&&e.endsWith("]]"))?{paramType:"optional-catchall",paramName:e.slice(5,-2)}:e.startsWith("[...")&&e.endsWith("]")?{paramType:t?`catchall-intercepted-${t}`:"catchall",paramName:e.slice(4,-1)}:e.startsWith("[")&&e.endsWith("]")?{paramType:t?`dynamic-intercepted-${t}`:"dynamic",paramName:e.slice(1,-1)}:null}function s(e){return"catchall"===e||"catchall-intercepted-(..)(..)"===e||"catchall-intercepted-(.)"===e||"catchall-intercepted-(..)"===e||"catchall-intercepted-(...)"===e||"optional-catchall"===e}function l(e){let t=!1,r=!1;switch(e){case"catchall":case"catchall-intercepted-(..)(..)":case"catchall-intercepted-(.)":case"catchall-intercepted-(..)":case"catchall-intercepted-(...)":t=!0;break;case"optional-catchall":t=!0,r=!0}return{repeat:t,optional:r}}},760606,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={isInterceptionAppRoute:function(){return c},isNormalizedAppRoute:function(){return u},parseAppRoute:function(){return function e(t,r){let n,a,s,u=t.split("/").filter(Boolean),c=[];for(let f of u){let u=l(function(e){if(!/%5b|%5d/i.test(e))return e;try{let t=decodeURIComponent(e);return(0,i.getSegmentParam)(t)?t:e}catch{return e}}(f));if(u){if(r&&("route-group"===u.type||"parallel-route"===u.type))throw Object.defineProperty(new o.InvariantError(`${t} is being parsed as a normalized route, but it has a route group or parallel route segment.`),"__NEXT_ERROR_CODE",{value:"E923",enumerable:!1,configurable:!0});if(c.push(u),u.interceptionMarker){let o=t.split(u.interceptionMarker);if(2!==o.length)throw Object.defineProperty(Error(`Invalid interception route: ${t}`),"__NEXT_ERROR_CODE",{value:"E924",enumerable:!1,configurable:!0});a=r?e(o[0],!0):e(o[0],!1),s=r?e(o[1],!0):e(o[1],!1),n=u.interceptionMarker}}}let f=c.filter(e=>"dynamic"===e.type);return{normalized:r,pathname:t,segments:c,dynamicSegments:f,interceptionMarker:n,interceptingRoute:a,interceptedRoute:s}}},parseAppRouteSegment:function(){return l}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(7117),i=e.r(996309),s=e.r(389161);function l(e){if(""===e)return null;let t=s.INTERCEPTION_ROUTE_MARKERS.find(t=>e.startsWith(t)),r=(0,i.getSegmentParam)(e);return r?{type:"dynamic",name:e,param:r,interceptionMarker:t}:e.startsWith("(")&&e.endsWith(")")?{type:"route-group",name:e,interceptionMarker:t}:e.startsWith("@")?{type:"parallel-route",name:e,interceptionMarker:t}:{type:"static",name:e,interceptionMarker:t}}function u(e){return e.normalized}function c(e){return void 0!==e.interceptionMarker&&void 0!==e.interceptingRoute&&void 0!==e.interceptedRoute}},315179,(e,t,r)=>{"use strict";function n(e){switch(e){case"catchall-intercepted-(..)(..)":case"dynamic-intercepted-(..)(..)":return"(..)(..)";case"catchall-intercepted-(.)":case"dynamic-intercepted-(.)":return"(.)";case"catchall-intercepted-(..)":case"dynamic-intercepted-(..)":return"(..)";case"catchall-intercepted-(...)":case"dynamic-intercepted-(...)":return"(...)";default:return null}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"interceptionPrefixFromParamType",{enumerable:!0,get:function(){return n}})},315882,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"resolveParamValue",{enumerable:!0,get:function(){return o}});let n=e.r(7117),a=e.r(315179);function o(e,t,r,o,i){switch(t){case"catchall":case"optional-catchall":case"catchall-intercepted-(..)(..)":case"catchall-intercepted-(.)":case"catchall-intercepted-(..)":case"catchall-intercepted-(...)":let s=[];for(let e=r;e<o.segments.length;e++){let n=o.segments[e];if("static"===n.type){let o=n.name,i=(0,a.interceptionPrefixFromParamType)(t);i&&e===r&&i===n.interceptionMarker&&(o=o.replace(n.interceptionMarker,"")),s.push(o)}else{if(!i.hasOwnProperty(n.param.paramName)){if("optional-catchall"===n.param.paramType)break;return}let e=i[n.param.paramName];Array.isArray(e)?s.push(...e):s.push(e)}}if(s.length>0)return s;if("optional-catchall"===t)return;throw Object.defineProperty(new n.InvariantError(`Unexpected empty path segments match for a route "${o.pathname}" with param "${e}" of type "${t}"`),"__NEXT_ERROR_CODE",{value:"E931",enumerable:!1,configurable:!0});case"dynamic":case"dynamic-intercepted-(..)(..)":case"dynamic-intercepted-(.)":case"dynamic-intercepted-(..)":case"dynamic-intercepted-(...)":if(r<o.segments.length){let e=o.segments[r];if("dynamic"===e.type&&!i.hasOwnProperty(e.param.paramName))return;return"dynamic"===e.type?i[e.param.paramName]:(0,a.interceptionPrefixFromParamType)(t)===e.interceptionMarker?e.name.replace(e.interceptionMarker,""):e.name}return}}},431902,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={PARAMETER_PATTERN:function(){return f},getDynamicParam:function(){return c},interpolateParallelRouteParams:function(){return u},parseMatchedParameter:function(){return p},parseParameter:function(){return d}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(7117),i=e.r(89141),s=e.r(760606),l=e.r(315882);function u(e,t,r,n){let a=structuredClone(t),u=[{tree:e,depth:0}],c=(0,s.parseAppRoute)(r,!0);for(;u.length>0;){let{tree:e,depth:t}=u.pop(),{segment:r,parallelRoutes:f}=(0,i.parseLoaderTree)(e),d=(0,s.parseAppRouteSegment)(r);if(d?.type==="dynamic"&&!a.hasOwnProperty(d.param.paramName)&&!n?.has(d.param.paramName)){let{paramName:e,paramType:r}=d.param,n=(0,l.resolveParamValue)(e,r,t,c,a);if(void 0!==n)a[e]=n;else if("optional-catchall"!==r)throw Object.defineProperty(new o.InvariantError(`Could not resolve param value for segment: ${e}`),"__NEXT_ERROR_CODE",{value:"E932",enumerable:!1,configurable:!0})}let p=t;for(let e of(d&&"route-group"!==d.type&&"parallel-route"!==d.type&&p++,Object.values(f)))u.push({tree:e,depth:p})}return a}function c(e,t,r,n,a){let i=function(e,t,r){let n=e[t];if(r?.has(t)){let[e]=r.get(t);n=e}else Array.isArray(n)?n=n.map(e=>encodeURIComponent(e)):"string"==typeof n&&(n=encodeURIComponent(n));return n}(e,t,n);if(!i||0===i.length){if("oc"===r)return{param:t,value:null,type:r,treeSegment:[t,"",r,a]};throw Object.defineProperty(new o.InvariantError(`Missing value for segment key: "${t}" with dynamic param type: ${r}`),"__NEXT_ERROR_CODE",{value:"E864",enumerable:!1,configurable:!0})}let s=Array.isArray(i)?i.join("/"):i;return{param:t,value:i,treeSegment:[t,s,r,a],type:r}}let f=/^([^[]*)\[((?:\[[^\]]*\])|[^\]]+)\](.*)$/;function d(e){let t=e.match(f);return t?p(t[2]):p(e)}function p(e){let t=e.startsWith("[")&&e.endsWith("]");t&&(e=e.slice(1,-1));let r=e.startsWith("...");return r&&(e=e.slice(3)),{key:e,repeat:r,optional:t}}},394599,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={getNamedMiddlewareRegex:function(){return m},getNamedRouteRegex:function(){return h},getRouteRegex:function(){return f}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(302987),i=e.r(389161),s=e.r(442778),l=e.r(523486),u=e.r(431902);function c(e,t,r){let n={},a=1,o=[];for(let c of(0,l.removeTrailingSlash)(e).slice(1).split("/")){let e=i.INTERCEPTION_ROUTE_MARKERS.find(e=>c.startsWith(e)),l=c.match(u.PARAMETER_PATTERN);if(e&&l&&l[2]){let{key:t,optional:r,repeat:i}=(0,u.parseMatchedParameter)(l[2]);n[t]={pos:a++,repeat:i,optional:r},o.push(`/${(0,s.escapeStringRegexp)(e)}([^/]+?)`)}else if(l&&l[2]){let{key:e,repeat:t,optional:i}=(0,u.parseMatchedParameter)(l[2]);n[e]={pos:a++,repeat:t,optional:i},r&&l[1]&&o.push(`/${(0,s.escapeStringRegexp)(l[1])}`);let c=t?i?"(?:/(.+?))?":"/(.+?)":"/([^/]+?)";r&&l[1]&&(c=c.substring(1)),o.push(c)}else o.push(`/${(0,s.escapeStringRegexp)(c)}`);t&&l&&l[3]&&o.push((0,s.escapeStringRegexp)(l[3]))}return{parameterizedRoute:o.join(""),groups:n}}function f(e,{includeSuffix:t=!1,includePrefix:r=!1,excludeOptionalTrailingSlash:n=!1}={}){let{parameterizedRoute:a,groups:o}=c(e,t,r),i=a;return n||(i+="(?:/)?"),{re:RegExp(`^${i}$`),groups:o}}function d({interceptionMarker:e,getSafeRouteKey:t,segment:r,routeKeys:n,keyPrefix:a,backreferenceDuplicateKeys:o}){let i,{key:l,optional:c,repeat:f}=(0,u.parseMatchedParameter)(r),p=l.replace(/\W/g,"");a&&(p=`${a}${p}`);let h=!1;(0===p.length||p.length>30)&&(h=!0),isNaN(parseInt(p.slice(0,1)))||(h=!0),h&&(p=t());let m=p in n;a?n[p]=`${a}${l}`:n[p]=l;let _=e?(0,s.escapeStringRegexp)(e):"";return i=m&&o?`\\k<${p}>`:f?`(?<${p}>.+?)`:`(?<${p}>[^/]+?)`,{key:l,pattern:c?`(?:/${_}${i})?`:`/${_}${i}`,cleanedKey:p,optional:c,repeat:f}}function p(e,t,r,n,a,c={names:{},intercepted:{}}){let f,h=(f=0,()=>{let e="",t=++f;for(;t>0;)e+=String.fromCharCode(97+(t-1)%26),t=Math.floor((t-1)/26);return e}),m={},_=[],g=[];for(let f of(c=structuredClone(c),(0,l.removeTrailingSlash)(e).slice(1).split("/"))){let e,l=i.INTERCEPTION_ROUTE_MARKERS.some(e=>f.startsWith(e)),p=f.match(u.PARAMETER_PATTERN),P=l?p?.[1]:void 0;if(P&&p?.[2]?(e=t?o.NEXT_INTERCEPTION_MARKER_PREFIX:void 0,c.intercepted[p[2]]=P):e=p?.[2]&&c.intercepted[p[2]]?t?o.NEXT_INTERCEPTION_MARKER_PREFIX:void 0:t?o.NEXT_QUERY_PARAM_PREFIX:void 0,P&&p&&p[2]){let{key:t,pattern:r,cleanedKey:n,repeat:o,optional:i}=d({getSafeRouteKey:h,interceptionMarker:P,segment:p[2],routeKeys:m,keyPrefix:e,backreferenceDuplicateKeys:a});_.push(r),g.push(`/${p[1]}:${c.names[t]??n}${o?i?"*":"+":""}`),c.names[t]??=n}else if(p&&p[2]){n&&p[1]&&(_.push(`/${(0,s.escapeStringRegexp)(p[1])}`),g.push(`/${p[1]}`));let{key:t,pattern:r,cleanedKey:o,repeat:i,optional:l}=d({getSafeRouteKey:h,segment:p[2],routeKeys:m,keyPrefix:e,backreferenceDuplicateKeys:a}),u=r;n&&p[1]&&(u=u.substring(1)),_.push(u),g.push(`/:${c.names[t]??o}${i?l?"*":"+":""}`),c.names[t]??=o}else _.push(`/${(0,s.escapeStringRegexp)(f)}`),g.push(`/${f}`);r&&p&&p[3]&&(_.push((0,s.escapeStringRegexp)(p[3])),g.push(p[3]))}return{namedParameterizedRoute:_.join(""),routeKeys:m,pathToRegexpPattern:g.join(""),reference:c}}function h(e,t){let r=p(e,t.prefixRouteKeys,t.includeSuffix??!1,t.includePrefix??!1,t.backreferenceDuplicateKeys??!1,t.reference),n=r.namedParameterizedRoute;return t.excludeOptionalTrailingSlash||(n+="(?:/)?"),{...f(e,t),namedRegex:`^${n}$`,routeKeys:r.routeKeys,pathToRegexpPattern:r.pathToRegexpPattern,reference:r.reference}}function m(e,t){let{parameterizedRoute:r}=c(e,!1,!1),{catchAll:n=!0}=t;if("/"===r)return{namedRegex:`^/${n?".*":""}$`};let{namedParameterizedRoute:a}=p(e,!1,!1,!1,!1,void 0);return{namedRegex:`^${a}${n?"(?:(/.*)?)":""}$`}}},450169,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"interpolateAs",{enumerable:!0,get:function(){return o}});let n=e.r(929944),a=e.r(394599);function o(e,t,r){let o="",i=(0,a.getRouteRegex)(e),s=i.groups,l=(t!==e?(0,n.getRouteMatcher)(i)(t):"")||r;o=e;let u=Object.keys(s);return u.every(e=>{let t=l[e]||"",{repeat:r,optional:n}=s[e],a=`[${r?"...":""}${e}]`;return n&&(a=`${!t?"/":""}[${a}]`),r&&!Array.isArray(t)&&(t=[t]),(n||e in l)&&(o=o.replace(a,r?t.map(e=>encodeURIComponent(e)).join("/"):encodeURIComponent(t))||"/")})||(o=""),{params:u,result:o}}},516544,(e,t,r)=>{"use strict";function n(e,t=""){return("/"===e?"/index":/^\/index(\/|$)/.test(e)?`/index${e}`:e)+t}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return n}})},597742,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"pathHasPrefix",{enumerable:!0,get:function(){return a}});let n=e.r(672796);function a(e,t){if("string"!=typeof e)return!1;let{pathname:r}=(0,n.parsePath)(e);return r===t||r.startsWith(t+"/")}},652419,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"addLocale",{enumerable:!0,get:function(){return o}});let n=e.r(443980),a=e.r(597742);function o(e,t,r,o){if(!t||t===r)return e;let i=e.toLowerCase();return!o&&((0,a.pathHasPrefix)(i,"/api")||(0,a.pathHasPrefix)(i,`/${t.toLowerCase()}`))?e:(0,n.addPathPrefix)(e,`/${t}`)}},514862,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"addLocale",{enumerable:!0,get:function(){return a}});let n=e.r(270090),a=(t,...r)=>(0,n.normalizePathTrailingSlash)(e.r(652419).addLocale(t,...r));("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},469590,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"parseRelativeUrl",{enumerable:!0,get:function(){return o}});let n=e.r(889129),a=e.r(398928);function o(e,t,r=!0){let i=new URL("u"<typeof window?"http://n":(0,n.getLocationOrigin)()),s=t?new URL(t,i):e.startsWith(".")?new URL("u"<typeof window?"http://n":window.location.href):i,{pathname:l,searchParams:u,search:c,hash:f,href:d,origin:p}=e.startsWith("/")?new URL(`${s.protocol}//${s.host}${e}`):new URL(e,s);if(p!==i.origin)throw Object.defineProperty(Error(`invariant: invalid relative URL, router received ${e}`),"__NEXT_ERROR_CODE",{value:"E159",enumerable:!1,configurable:!0});return{auth:null,host:null,hostname:null,pathname:l,port:null,protocol:null,query:r?(0,a.searchParamsToUrlQuery)(u):void 0,search:c,hash:f,href:d.slice(p.length),slashes:null}}},688862,(e,t,r)=>{"use strict";let n;function a(e){return(void 0===n&&"u">typeof window&&(n=window.trustedTypes?.createPolicy("nextjs",{createHTML:e=>e,createScript:e=>e,createScriptURL:e=>e})||null),n)?.createScriptURL(e)||e}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"__unsafeCreateTrustedScriptURL",{enumerable:!0,get:function(){return a}}),("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},799604,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={cancelIdleCallback:function(){return i},requestIdleCallback:function(){return o}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o="u">typeof self&&self.requestIdleCallback&&self.requestIdleCallback.bind(window)||function(e){let t=Date.now();return self.setTimeout(function(){e({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-t))}})},1)},i="u">typeof self&&self.cancelIdleCallback&&self.cancelIdleCallback.bind(window)||function(e){return clearTimeout(e)};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},150931,(e,t,r)=>{"use strict";function n(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"encodeURIPath",{enumerable:!0,get:function(){return n}})},861741,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"resolvePromiseWithTimeout",{enumerable:!0,get:function(){return a}});let n=e.r(799604);function a(e,t,r){return new Promise((r,a)=>{let o=!1;e.then(e=>{o=!0,r(e)}).catch(a),(0,n.requestIdleCallback)(()=>setTimeout(()=>{o||a(t)},3800))})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},255447,(e,t,r)=>{"use strict";let n;Object.defineProperty(r,"__esModule",{value:!0});var a={createRouteLoader:function(){return P},getClientBuildManifest:function(){return _},isAssetError:function(){return h},markAssetError:function(){return p}};for(var o in a)Object.defineProperty(r,o,{enumerable:!0,get:a[o]});e.r(741705),e.r(516544);let i=e.r(688862),s=e.r(799604),l=e.r(420262),u=e.r(150931),c=e.r(861741);function f(e,t,r){let n,a=t.get(e);if(a)return"future"in a?a.future:Promise.resolve(a);let o=new Promise(e=>{n=e});return t.set(e,{resolve:n,future:o}),r?r().then(e=>(n(e),e)).catch(r=>{throw t.delete(e),r}):o}let d=Symbol("ASSET_LOAD_ERROR");function p(e){return Object.defineProperty(e,d,{})}function h(e){return e&&d in e}let m=function(e){try{return e=document.createElement("link"),!!window.MSInputMethodContext&&!!document.documentMode||e.relList.supports("prefetch")}catch{return!1}}();function _(){if(self.__BUILD_MANIFEST)return Promise.resolve(self.__BUILD_MANIFEST);let e=new Promise(e=>{let t=self.__BUILD_MANIFEST_CB;self.__BUILD_MANIFEST_CB=()=>{e(self.__BUILD_MANIFEST),t&&t()}});return(0,c.resolvePromiseWithTimeout)(e,p(Object.defineProperty(Error("Failed to load client build manifest"),"__NEXT_ERROR_CODE",{value:"E273",enumerable:!1,configurable:!0})),n)}function g(e,t){return _().then(r=>{if(!(t in r))throw p(Object.defineProperty(Error(`Failed to lookup route: ${t}`),"__NEXT_ERROR_CODE",{value:"E446",enumerable:!1,configurable:!0}));let n=r[t].map(t=>e+"/_next/"+(0,u.encodeURIPath)(t));return{scripts:n.filter(e=>e.endsWith(".js")).map(e=>(0,i.__unsafeCreateTrustedScriptURL)(e)+(0,l.getAssetTokenQuery)()),css:n.filter(e=>e.endsWith(".css")).map(e=>e+(0,l.getAssetTokenQuery)())}})}function P(e){let t=new Map,r=new Map,a=new Map,o=new Map;function i(e){{var t;let n=r.get(e.toString());return n?n:document.querySelector(`script[src^="${e}"]`)?Promise.resolve():(r.set(e.toString(),n=new Promise((r,n)=>{(t=document.createElement("script")).onload=r,t.onerror=()=>n(p(Object.defineProperty(Error(`Failed to load script: ${e}`),"__NEXT_ERROR_CODE",{value:"E74",enumerable:!1,configurable:!0}))),t.crossOrigin=void 0,t.src=e,document.body.appendChild(t)})),n)}}function l(e){let t=a.get(e);return t||a.set(e,t=fetch(e,{credentials:"same-origin"}).then(t=>{if(!t.ok)throw Object.defineProperty(Error(`Failed to load stylesheet: ${e}`),"__NEXT_ERROR_CODE",{value:"E189",enumerable:!1,configurable:!0});return t.text().then(t=>({href:e,content:t}))}).catch(e=>{throw p(e)})),t}return{whenEntrypoint:e=>f(e,t),onEntrypoint(e,r){(r?Promise.resolve().then(()=>r()).then(e=>({component:e&&e.default||e,exports:e}),e=>({error:e})):Promise.resolve(void 0)).then(r=>{let n=t.get(e);n&&"resolve"in n?r&&(t.set(e,r),n.resolve(r)):(r?t.set(e,r):t.delete(e),o.delete(e))})},loadRoute(r,a){return f(r,o,()=>{let o;return(0,c.resolvePromiseWithTimeout)(g(e,r).then(({scripts:e,css:n})=>Promise.all([t.has(r)?[]:Promise.all(e.map(i)),Promise.all(n.map(l))])).then(e=>this.whenEntrypoint(r).then(t=>({entrypoint:t,styles:e[1]}))),p(Object.defineProperty(Error(`Route did not complete loading: ${r}`),"__NEXT_ERROR_CODE",{value:"E12",enumerable:!1,configurable:!0})),n).then(({entrypoint:e,styles:t})=>{let r=Object.assign({styles:t},e);return"error"in e?e:r}).catch(e=>{if(a)throw e;return{error:e}}).finally(()=>o?.())})},prefetch(t){let r;return(r=navigator.connection)&&(r.saveData||/2g/.test(r.effectiveType))?Promise.resolve():g(e,t).then(e=>Promise.all(m?e.scripts.map(e=>{var t,r,n;return t=e.toString(),r="script",new Promise((e,a)=>{let o=`
2
+ link[rel="prefetch"][href^="${t}"],
3
+ link[rel="preload"][href^="${t}"],
4
+ script[src^="${t}"]`;if(document.querySelector(o))return e();n=document.createElement("link"),r&&(n.as=r),n.rel="prefetch",n.crossOrigin=void 0,n.onload=e,n.onerror=()=>a(p(Object.defineProperty(Error(`Failed to prefetch: ${t}`),"__NEXT_ERROR_CODE",{value:"E268",enumerable:!1,configurable:!0}))),n.href=t,document.head.appendChild(n)})}):[])).then(()=>{(0,s.requestIdleCallback)(()=>this.loadRoute(t,!0).catch(()=>{}))}).catch(()=>{})}}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},872522,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"BloomFilter",{enumerable:!0,get:function(){return n}});class n{constructor(e,t=1e-4){this.numItems=e,this.errorRate=t,this.numBits=Math.ceil(-(e*Math.log(t))/(Math.log(2)*Math.log(2))),this.numHashes=Math.ceil(this.numBits/e*Math.log(2)),this.bitArray=Array(this.numBits).fill(0)}static from(e,t=1e-4){let r=new n(e.length,t);for(let t of e)r.add(t);return r}export(){return{numItems:this.numItems,errorRate:this.errorRate,numBits:this.numBits,numHashes:this.numHashes,bitArray:this.bitArray}}import(e){this.numItems=e.numItems,this.errorRate=e.errorRate,this.numBits=e.numBits,this.numHashes=e.numHashes,this.bitArray=e.bitArray}add(e){this.getHashValues(e).forEach(e=>{this.bitArray[e]=1})}contains(e){return this.getHashValues(e).every(e=>this.bitArray[e])}getHashValues(e){let t=[];for(let r=1;r<=this.numHashes;r++){let n=function(e){let t=0;for(let r=0;r<e.length;r++)t=Math.imul(t^e.charCodeAt(r),0x5bd1e995),t^=t>>>13,t=Math.imul(t,0x5bd1e995);return t>>>0}(`${e}${r}`)%this.numBits;t.push(n)}return t}}},610616,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ESCAPE_REGEX:function(){return i},htmlEscapeAttributeString:function(){return c},htmlEscapeJsonString:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o={"&":"\\u0026",">":"\\u003e","<":"\\u003c","\u2028":"\\u2028","\u2029":"\\u2029"},i=/[&><\u2028\u2029]/g,s={"&":"&amp;",'"':"&quot;","'":"&#39;","<":"&lt;",">":"&gt;"},l=/[&"'<>]/g;function u(e){return e.replace(i,e=>o[e])}function c(e){return e.replace(l,e=>s[e])}},161457,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return E},handleClientScriptLoad:function(){return g},initScriptLoader:function(){return P}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(741705),i=e.r(952456),s=e.r(391398),l=o._(e.r(730943)),u=i._(e.r(191788)),c=e.r(713584),f=e.r(626016),d=e.r(799604),p=e.r(610616),h=new Map,m=new Set,_=e=>{let{src:t,id:r,onLoad:n=()=>{},onReady:a=null,dangerouslySetInnerHTML:o,children:i="",strategy:s="afterInteractive",onError:u,stylesheets:c}=e,d=r||t;if(d&&m.has(d))return;if(h.has(t)){m.add(d),h.get(t).then(n,u);return}let p=()=>{a&&a(),m.add(d)},_=document.createElement("script"),g=new Promise((e,t)=>{_.addEventListener("load",function(t){e(),n&&n.call(this,t),p()}),_.addEventListener("error",function(e){t(e)})}).catch(function(e){u&&u(e)});o?(_.innerHTML=o.__html||"",p()):i?(_.textContent="string"==typeof i?i:Array.isArray(i)?i.join(""):"",p()):t&&(_.src=t,h.set(t,g)),(0,f.setAttributesFromProps)(_,e),"worker"===s&&_.setAttribute("type","text/partytown"),_.setAttribute("data-nscript",s),c&&(e=>{if(l.default.preinit)return e.forEach(e=>{l.default.preinit(e,{as:"style"})});if("u">typeof window){let t=document.head;e.forEach(e=>{let r=document.createElement("link");r.type="text/css",r.rel="stylesheet",r.href=e,t.appendChild(r)})}})(c),document.body.appendChild(_)};function g(e){let{strategy:t="afterInteractive"}=e;"lazyOnload"===t?window.addEventListener("load",()=>{(0,d.requestIdleCallback)(()=>_(e))}):_(e)}function P(e){e.forEach(g),[...document.querySelectorAll('[data-nscript="beforeInteractive"]'),...document.querySelectorAll('[data-nscript="beforePageRender"]')].forEach(e=>{let t=e.id||e.getAttribute("src");m.add(t)})}function y(e){let{id:t,src:r="",onLoad:n=()=>{},onReady:a=null,strategy:o="afterInteractive",onError:i,stylesheets:f,...h}=e,{updateScripts:g,scripts:P,getIsSsr:y,appDir:E,nonce:b}=(0,u.useContext)(c.HeadManagerContext);b=h.nonce||b;let R=(0,u.useRef)(!1);(0,u.useEffect)(()=>{let e=t||r;R.current||(a&&e&&m.has(e)&&a(),R.current=!0)},[a,t,r]);let v=(0,u.useRef)(!1);if((0,u.useEffect)(()=>{if(!v.current){if("afterInteractive"===o)_(e);else"lazyOnload"===o&&("complete"===document.readyState?(0,d.requestIdleCallback)(()=>_(e)):window.addEventListener("load",()=>{(0,d.requestIdleCallback)(()=>_(e))}));v.current=!0}},[e,o]),("beforeInteractive"===o||"worker"===o)&&(g?(P[o]=(P[o]||[]).concat([{id:t,src:r,onLoad:n,onReady:a,onError:i,...h,nonce:b}]),g(P)):y&&y()?m.add(t||r):y&&!y()&&_({...e,nonce:b})),E){if(f&&f.forEach(e=>{l.default.preinit(e,{as:"style"})}),"beforeInteractive"===o)if(!r)return h.dangerouslySetInnerHTML&&(h.children=h.dangerouslySetInnerHTML.__html,delete h.dangerouslySetInnerHTML),(0,s.jsx)("script",{nonce:b,dangerouslySetInnerHTML:{__html:`(self.__next_s=self.__next_s||[]).push(${(0,p.htmlEscapeJsonString)(JSON.stringify([0,{...h,id:t}]))})`}});else return l.default.preload(r,h.integrity?{as:"script",integrity:h.integrity,nonce:b,crossOrigin:h.crossOrigin}:{as:"script",nonce:b,crossOrigin:h.crossOrigin}),(0,s.jsx)("script",{nonce:b,dangerouslySetInnerHTML:{__html:`(self.__next_s=self.__next_s||[]).push(${(0,p.htmlEscapeJsonString)(JSON.stringify([r,{...h,id:t}]))})`}});"afterInteractive"===o&&r&&l.default.preload(r,h.integrity?{as:"script",integrity:h.integrity,nonce:b,crossOrigin:h.crossOrigin}:{as:"script",nonce:b,crossOrigin:h.crossOrigin})}return null}Object.defineProperty(y,"__nextScript",{value:!0});let E=y;("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},27361,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={getObjectClassLabel:function(){return o},isPlainObject:function(){return i}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});function o(e){return Object.prototype.toString.call(e)}function i(e){if("[object Object]"!==o(e))return!1;let t=Object.getPrototypeOf(e);return null===t||t.hasOwnProperty("isPrototypeOf")}},653910,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return i},getProperError:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(27361);function i(e){return"object"==typeof e&&null!==e&&"name"in e&&"message"in e}function s(e){let t;return i(e)?e:Object.defineProperty(Error((0,o.isPlainObject)(e)?(t=new WeakSet,JSON.stringify(e,(e,r)=>{if("object"==typeof r&&null!==r){if(t.has(r))return"[Circular]";t.add(r)}return r})):e+""),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}},314059,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={getSortedRouteObjects:function(){return s},getSortedRoutes:function(){return i}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});class o{insert(e){this._insert(e.split("/").filter(Boolean),[],!1)}smoosh(){return this._smoosh()}_smoosh(e="/"){let t=[...this.children.keys()].sort();null!==this.slugName&&t.splice(t.indexOf("[]"),1),null!==this.restSlugName&&t.splice(t.indexOf("[...]"),1),null!==this.optionalRestSlugName&&t.splice(t.indexOf("[[...]]"),1);let r=t.map(t=>this.children.get(t)._smoosh(`${e}${t}/`)).reduce((e,t)=>[...e,...t],[]);if(null!==this.slugName&&r.push(...this.children.get("[]")._smoosh(`${e}[${this.slugName}]/`)),!this.placeholder){let t="/"===e?"/":e.slice(0,-1);if(null!=this.optionalRestSlugName)throw Object.defineProperty(Error(`You cannot define a route with the same specificity as a optional catch-all route ("${t}" and "${t}[[...${this.optionalRestSlugName}]]").`),"__NEXT_ERROR_CODE",{value:"E458",enumerable:!1,configurable:!0});r.unshift(t)}return null!==this.restSlugName&&r.push(...this.children.get("[...]")._smoosh(`${e}[...${this.restSlugName}]/`)),null!==this.optionalRestSlugName&&r.push(...this.children.get("[[...]]")._smoosh(`${e}[[...${this.optionalRestSlugName}]]/`)),r}_insert(e,t,r){if(0===e.length){this.placeholder=!1;return}if(r)throw Object.defineProperty(Error("Catch-all must be the last part of the URL."),"__NEXT_ERROR_CODE",{value:"E392",enumerable:!1,configurable:!0});let n=e[0];if(n.startsWith("[")&&n.endsWith("]")){let o=n.slice(1,-1),i=!1;if(o.startsWith("[")&&o.endsWith("]")&&(o=o.slice(1,-1),i=!0),o.startsWith("…"))throw Object.defineProperty(Error(`Detected a three-dot character ('…') at ('${o}'). Did you mean ('...')?`),"__NEXT_ERROR_CODE",{value:"E147",enumerable:!1,configurable:!0});if(o.startsWith("...")&&(o=o.substring(3),r=!0),o.startsWith("[")||o.endsWith("]"))throw Object.defineProperty(Error(`Segment names may not start or end with extra brackets ('${o}').`),"__NEXT_ERROR_CODE",{value:"E421",enumerable:!1,configurable:!0});if(o.startsWith("."))throw Object.defineProperty(Error(`Segment names may not start with erroneous periods ('${o}').`),"__NEXT_ERROR_CODE",{value:"E288",enumerable:!1,configurable:!0});function a(e,r){if(null!==e&&e!==r)throw Object.defineProperty(Error(`You cannot use different slug names for the same dynamic path ('${e}' !== '${r}').`),"__NEXT_ERROR_CODE",{value:"E337",enumerable:!1,configurable:!0});t.forEach(e=>{if(e===r)throw Object.defineProperty(Error(`You cannot have the same slug name "${r}" repeat within a single dynamic path`),"__NEXT_ERROR_CODE",{value:"E247",enumerable:!1,configurable:!0});if(e.replace(/\W/g,"")===n.replace(/\W/g,""))throw Object.defineProperty(Error(`You cannot have the slug names "${e}" and "${r}" differ only by non-word symbols within a single dynamic path`),"__NEXT_ERROR_CODE",{value:"E499",enumerable:!1,configurable:!0})}),t.push(r)}if(r)if(i){if(null!=this.restSlugName)throw Object.defineProperty(Error(`You cannot use both an required and optional catch-all route at the same level ("[...${this.restSlugName}]" and "${e[0]}" ).`),"__NEXT_ERROR_CODE",{value:"E299",enumerable:!1,configurable:!0});a(this.optionalRestSlugName,o),this.optionalRestSlugName=o,n="[[...]]"}else{if(null!=this.optionalRestSlugName)throw Object.defineProperty(Error(`You cannot use both an optional and required catch-all route at the same level ("[[...${this.optionalRestSlugName}]]" and "${e[0]}").`),"__NEXT_ERROR_CODE",{value:"E300",enumerable:!1,configurable:!0});a(this.restSlugName,o),this.restSlugName=o,n="[...]"}else{if(i)throw Object.defineProperty(Error(`Optional route parameters are not yet supported ("${e[0]}").`),"__NEXT_ERROR_CODE",{value:"E435",enumerable:!1,configurable:!0});a(this.slugName,o),this.slugName=o,n="[]"}}this.children.has(n)||this.children.set(n,new o),this.children.get(n)._insert(e.slice(1),t,r)}constructor(){this.placeholder=!0,this.children=new Map,this.slugName=null,this.restSlugName=null,this.optionalRestSlugName=null}}function i(e){let t=new o;return e.forEach(e=>t.insert(e)),t.smoosh()}function s(e,t){let r={},n=[];for(let a=0;a<e.length;a++){let o=t(e[a]);r[o]=a,n[a]=o}return i(n).map(t=>e[r[t]])}},931235,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={getSortedRouteObjects:function(){return o.getSortedRouteObjects},getSortedRoutes:function(){return o.getSortedRoutes},isDynamicRoute:function(){return i.isDynamicRoute}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(314059),i=e.r(478690)},136090,(e,t,r)=>{"use strict";function n(e){return e.replace(/\\/g,"/")}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"normalizePathSep",{enumerable:!0,get:function(){return n}})},910291,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"denormalizePagePath",{enumerable:!0,get:function(){return o}});let n=e.r(931235),a=e.r(136090);function o(e){let t=(0,a.normalizePathSep)(e);return t.startsWith("/index/")&&!(0,n.isDynamicRoute)(t)?t.slice(6):"/index"!==t?t:"/"}},392090,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"normalizeLocalePath",{enumerable:!0,get:function(){return a}});let n=new WeakMap;function a(e,t){let r;if(!t)return{pathname:e};let a=n.get(t);a||(a=t.map(e=>e.toLowerCase()),n.set(t,a));let o=e.split("/",2);if(!o[1])return{pathname:e};let i=o[1].toLowerCase(),s=a.indexOf(i);return s<0?{pathname:e}:(r=t[s],{pathname:e=e.slice(r.length+1)||"/",detectedLocale:r})}},728169,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return s},formatWithValidation:function(){return u},urlObjectKeys:function(){return l}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(952456)._(e.r(398928)),i=/https?|ftp|gopher|file/;function s(e){let{auth:t,hostname:r}=e,n=e.protocol||"",a=e.pathname||"",s=e.hash||"",l=e.query||"",u=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?u=t+e.host:r&&(u=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(u+=":"+e.port)),l&&"object"==typeof l&&(l=String(o.urlQueryToSearchParams(l)));let c=e.search||l&&`?${l}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||i.test(n))&&!1!==u?(u="//"+(u||""),a&&"/"!==a[0]&&(a="/"+a)):u||(u=""),s&&"#"!==s[0]&&(s="#"+s),c&&"?"!==c[0]&&(c="?"+c),a=a.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${n}${u}${a}${c}${s}`}let l=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function u(e){return s(e)}},988448,(e,t,r)=>{"use strict";function n(e,t,r){if(e){for(let n of(r&&(r=r.toLowerCase()),e))if(t===n.domain?.split(":",1)[0].toLowerCase()||r===n.defaultLocale.toLowerCase()||n.locales?.some(e=>e.toLowerCase()===r))return n}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"detectDomainLocale",{enumerable:!0,get:function(){return n}})},462205,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"detectDomainLocale",{enumerable:!0,get:function(){return n}});let n=(...t)=>e.r(988448).detectDomainLocale(...t);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},257396,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"removeLocale",{enumerable:!0,get:function(){return a}});let n=e.r(672796);function a(e,t){{let{pathname:r}=(0,n.parsePath)(e),a=r.toLowerCase(),o=t?.toLowerCase();return t&&(a.startsWith(`/${o}/`)||a===`/${o}`)?`${r.length===t.length+1?"/":""}${e.slice(t.length+1)}`:e}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},668186,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"hasBasePath",{enumerable:!0,get:function(){return a}});let n=e.r(597742);function a(e){return(0,n.pathHasPrefix)(e,"")}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},544691,(e,t,r)=>{"use strict";function n(e){return e}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"removeBasePath",{enumerable:!0,get:function(){return n}}),e.r(668186),("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},957285,(e,t,r)=>{"use strict";function n(e,t){let r={};return Object.keys(e).forEach(n=>{t.includes(n)||(r[n]=e[n])}),r}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"omit",{enumerable:!0,get:function(){return n}})},471112,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return o}});let n=e.r(889129),a=e.r(668186);function o(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,a.hasBasePath)(r.pathname)}catch(e){return!1}}},160472,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"resolveHref",{enumerable:!0,get:function(){return p}});let n=e.r(398928),a=e.r(728169),o=e.r(957285),i=e.r(889129),s=e.r(270090),l=e.r(471112),u=e.r(931235),c=e.r(450169),f=e.r(394599),d=e.r(929944);function p(e,t,r){let p,h="string"==typeof t?t:(0,a.formatWithValidation)(t),m=h.match(/^[a-z][a-z0-9+.-]*:\/\//i),_=m?h.slice(m[0].length):h;if((_.split("?",1)[0]||"").match(/(\/\/|\\)/)){console.error(`Invalid href '${h}' passed to next/router in page: '${e.pathname}'. Repeated forward-slashes (//) or backslashes \\ are not valid in the href.`);let t=(0,i.normalizeRepeatedSlashes)(_);h=(m?m[0]:"")+t}if(!(0,l.isLocalURL)(h))return r?[h]:h;try{let t=h.startsWith("#")?e.asPath:e.pathname;if(h.startsWith("?")&&(t=e.asPath,(0,u.isDynamicRoute)(e.pathname))){t=e.pathname;let r=(0,f.getRouteRegex)(e.pathname);(0,d.getRouteMatcher)(r)(e.asPath)||(t=e.asPath)}p=new URL(t,"http://n")}catch(e){p=new URL("/","http://n")}try{let e=new URL(h,p);e.pathname=(0,s.normalizePathTrailingSlash)(e.pathname);let t="";if((0,u.isDynamicRoute)(e.pathname)&&e.searchParams&&r){let r=(0,n.searchParamsToUrlQuery)(e.searchParams),{result:i,params:s}=(0,c.interpolateAs)(e.pathname,e.pathname,r);i&&(t=(0,a.formatWithValidation)({pathname:i,hash:e.hash,query:(0,o.omit)(r,s)}))}let i=e.origin===p.origin?e.href.slice(e.origin.length):e.href;return r?[i,t||i]:i}catch(e){return r?[h]:h}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},645399,(e,t,r)=>{"use strict";function n(e){return"/api"===e||!!(null==e?void 0:e.startsWith("/api/"))}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isAPIRoute",{enumerable:!0,get:function(){return n}})},840671,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"removePathPrefix",{enumerable:!0,get:function(){return a}});let n=e.r(597742);function a(e,t){if(!(0,n.pathHasPrefix)(e,t))return e;let r=e.slice(t.length);return r.startsWith("/")?r:`/${r}`}},71755,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getNextPathnameInfo",{enumerable:!0,get:function(){return i}});let n=e.r(392090),a=e.r(840671),o=e.r(597742);function i(e,t){let{basePath:r,i18n:i,trailingSlash:s}=t.nextConfig??{},l={pathname:e,trailingSlash:"/"!==e?e.endsWith("/"):s};r&&(0,o.pathHasPrefix)(l.pathname,r)&&(l.pathname=(0,a.removePathPrefix)(l.pathname,r),l.basePath=r);let u=l.pathname;if(l.pathname.startsWith("/_next/data/")&&l.pathname.endsWith(".json")){let e=l.pathname.replace(/^\/_next\/data\//,"").replace(/\.json$/,"").split("/");l.buildId=e[0],u="index"!==e[1]?`/${e.slice(1).join("/")}`:"/",!0===t.parseData&&(l.pathname=u)}if(i){let e=t.i18nProvider?t.i18nProvider.analyze(l.pathname):(0,n.normalizeLocalePath)(l.pathname,i.locales);l.locale=e.detectedLocale,l.pathname=e.pathname??l.pathname,!e.detectedLocale&&l.buildId&&(e=t.i18nProvider?t.i18nProvider.analyze(u):(0,n.normalizeLocalePath)(u,i.locales)).detectedLocale&&(l.locale=e.detectedLocale)}return l}},342393,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"addPathSuffix",{enumerable:!0,get:function(){return a}});let n=e.r(672796);function a(e,t){if(!e.startsWith("/")||!t)return e;let{pathname:r,query:a,hash:o}=(0,n.parsePath)(e);return`${r}${t}${a}${o}`}},865746,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"formatNextPathnameInfo",{enumerable:!0,get:function(){return s}});let n=e.r(523486),a=e.r(443980),o=e.r(342393),i=e.r(652419);function s(e){let t=(0,i.addLocale)(e.pathname,e.locale,e.buildId?void 0:e.defaultLocale,e.ignorePrefix);return(e.buildId||!e.trailingSlash)&&(t=(0,n.removeTrailingSlash)(t)),e.buildId&&(t=(0,o.addPathSuffix)((0,a.addPathPrefix)(t,`/_next/data/${e.buildId}`),"/"===e.pathname?"index.json":".json")),t=(0,a.addPathPrefix)(t,e.basePath),!e.buildId&&e.trailingSlash?t.endsWith("/")?t:(0,o.addPathSuffix)(t,"/"):(0,n.removeTrailingSlash)(t)}},115755,(e,t,r)=>{"use strict";function n(e,t){let r=Object.keys(e);if(r.length!==Object.keys(t).length)return!1;for(let n=r.length;n--;){let a=r[n];if("query"===a){let r=Object.keys(e.query);if(r.length!==Object.keys(t.query).length)return!1;for(let n=r.length;n--;){let a=r[n];if(!t.query.hasOwnProperty(a)||e.query[a]!==t.query[a])return!1}}else if(!t.hasOwnProperty(a)||e[a]!==t[a])return!1}return!0}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"compareRouterStates",{enumerable:!0,get:function(){return n}})},693857,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"HTML_LIMITED_BOT_UA_RE",{enumerable:!0,get:function(){return n}});let n=/[\w-]+-Google|Google-[\w-]+|Chrome-Lighthouse|Slurp|DuckDuckBot|baiduspider|yandex|sogou|bitlybot|tumblr|vkShare|quora link preview|redditbot|ia_archiver|Bingbot|BingPreview|applebot|facebookexternalhit|facebookcatalog|Twitterbot|LinkedInBot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|Yeti|googleweblight/i},47852,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={HTML_LIMITED_BOT_UA_RE:function(){return o.HTML_LIMITED_BOT_UA_RE},HTML_LIMITED_BOT_UA_RE_STRING:function(){return s},getBotType:function(){return c},isBot:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(693857),i=/Googlebot(?!-)|Googlebot$/i,s=o.HTML_LIMITED_BOT_UA_RE.source;function l(e){return o.HTML_LIMITED_BOT_UA_RE.test(e)}function u(e){return i.test(e)||l(e)}function c(e){return i.test(e)?"dom":l(e)?"html":void 0}},676149,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isJavaScriptURLString",{enumerable:!0,get:function(){return a}});let n=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function a(e){return n.test(""+e)}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},424438,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={createKey:function(){return Y},default:function(){return Q},matchesMiddleware:function(){return B}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(741705),i=e.r(952456),s=e.r(523486),l=e.r(255447),u=e.r(161457),c=i._(e.r(653910)),f=e.r(910291),d=e.r(392090),p=o._(e.r(547194)),h=e.r(889129),m=e.r(478690),_=e.r(469590),g=e.r(929944),P=e.r(394599),y=e.r(728169),E=e.r(462205),b=e.r(672796),R=e.r(514862),v=e.r(257396),O=e.r(544691),S=e.r(344113),T=e.r(668186),j=e.r(160472),w=e.r(645399),A=e.r(71755),x=e.r(865746),N=e.r(115755),C=e.r(471112),I=e.r(47852),M=e.r(957285),L=e.r(450169),D=e.r(101280),$=e.r(302987),k=e.r(420262),U=e.r(676149);function H(){return Object.assign(Object.defineProperty(Error("Route Cancelled"),"__NEXT_ERROR_CODE",{value:"E315",enumerable:!1,configurable:!0}),{cancelled:!0})}async function B(e){let t=await Promise.resolve(e.router.pageLoader.getMiddleware());if(!t)return!1;let{pathname:r}=(0,b.parsePath)(e.asPath),n=(0,T.hasBasePath)(r)?(0,O.removeBasePath)(r):r,a=(0,S.addBasePath)((0,R.addLocale)(n,e.locale));return t.some(e=>new RegExp(e.regexp).test(a))}function X(e){let t=(0,h.getLocationOrigin)();return e.startsWith(t)?e.substring(t.length):e}function W(e,t,r){let[n,a]=(0,j.resolveHref)(e,t,!0),o=(0,h.getLocationOrigin)(),i=n.startsWith(o),s=a&&a.startsWith(o);n=X(n),a=a?X(a):a;let l=i?n:(0,S.addBasePath)(n),u=r?X((0,j.resolveHref)(e,r)):a||n;return{url:l,as:s?u:(0,S.addBasePath)(u)}}function F(e,t){let r=(0,s.removeTrailingSlash)((0,f.denormalizePagePath)(e));return"/404"===r||"/_error"===r?e:(t.includes(r)||t.some(t=>{if((0,m.isDynamicRoute)(t)&&(0,P.getRouteRegex)(t).re.test(r))return e=t,!0}),(0,s.removeTrailingSlash)(e))}async function G(e){if(!await B(e)||!e.fetchData)return null;let t=await e.fetchData(),r=await function(e,t,r){let n={basePath:r.router.basePath,i18n:{locales:r.router.locales},trailingSlash:!1},a=t.headers.get("x-nextjs-rewrite"),o=a||t.headers.get("x-nextjs-matched-path"),i=t.headers.get($.MATCHED_PATH_HEADER);if(!i||o||i.includes("__next_data_catchall")||i.includes("/_error")||i.includes("/404")||(o=i),o){if(o.startsWith("/")){let t=(0,_.parseRelativeUrl)(o),i=(0,A.getNextPathnameInfo)(t.pathname,{nextConfig:n,parseData:!0}),u=(0,s.removeTrailingSlash)(i.pathname);return Promise.all([r.router.pageLoader.getPageList(),(0,l.getClientBuildManifest)()]).then(([o,{__rewrites:s}])=>{let l=(0,R.addLocale)(i.pathname,i.locale);if((0,m.isDynamicRoute)(l)||!a&&o.includes((0,d.normalizeLocalePath)((0,O.removeBasePath)(l),r.router.locales).pathname)){let r=(0,A.getNextPathnameInfo)((0,_.parseRelativeUrl)(e).pathname,{nextConfig:n,parseData:!0});t.pathname=l=(0,S.addBasePath)(r.pathname)}if(!o.includes(u)){let e=F(u,o);e!==u&&(u=e)}let c=o.includes(u)?u:F((0,d.normalizeLocalePath)((0,O.removeBasePath)(t.pathname),r.router.locales).pathname,o);if((0,m.isDynamicRoute)(c)){let e=(0,g.getRouteMatcher)((0,P.getRouteRegex)(c))(l);Object.assign(t.query,e||{})}return{type:"rewrite",parsedAs:t,resolvedHref:c}})}let t=(0,b.parsePath)(e),i=(0,x.formatNextPathnameInfo)({...(0,A.getNextPathnameInfo)(t.pathname,{nextConfig:n,parseData:!0}),defaultLocale:r.router.defaultLocale,buildId:""});return Promise.resolve({type:"redirect-external",destination:`${i}${t.query}${t.hash}`})}let u=t.headers.get("x-nextjs-redirect");if(u){if(u.startsWith("/")){let e=(0,b.parsePath)(u),t=(0,x.formatNextPathnameInfo)({...(0,A.getNextPathnameInfo)(e.pathname,{nextConfig:n,parseData:!0}),defaultLocale:r.router.defaultLocale,buildId:""});return Promise.resolve({type:"redirect-internal",newAs:`${t}${e.query}${e.hash}`,newUrl:`${t}${e.query}${e.hash}`})}return Promise.resolve({type:"redirect-external",destination:u})}return Promise.resolve({type:"next"})}(t.dataHref,t.response,e);return{dataHref:t.dataHref,json:t.json,response:t.response,text:t.text,cacheKey:t.cacheKey,effect:r}}let z=Symbol("SSG_DATA_NOT_FOUND");function q(e){try{return JSON.parse(e)}catch(e){return null}}function V({dataHref:e,inflightCache:t,isPrefetch:r,hasMiddleware:n,isServerRender:a,parseJSON:o,persistCache:i,isBackground:s,unstable_skipClientCache:u}){let{href:c}=new URL(e,window.location.href),f=(0,k.getDeploymentId)(),d=s=>(function e(t,r,n){return fetch(t,{credentials:"same-origin",method:n.method||"GET",headers:Object.assign({},n.headers,{"x-nextjs-data":"1"})}).then(a=>!a.ok&&r>1&&a.status>=500?e(t,r-1,n):a)})(e,a?3:1,{headers:Object.assign({},r?{purpose:"prefetch"}:{},r&&n?{"x-middleware-prefetch":"1"}:{},f?{"x-deployment-id":f}:{}),method:s?.method??"GET"}).then(t=>t.ok&&s?.method==="HEAD"?{dataHref:e,response:t,text:"",json:{},cacheKey:c}:t.text().then(r=>{if(!t.ok){if(n&&[301,302,307,308].includes(t.status))return{dataHref:e,response:t,text:r,json:{},cacheKey:c};if(404===t.status&&q(r)?.notFound)return{dataHref:e,json:{notFound:z},response:t,text:r,cacheKey:c};let o=Object.defineProperty(Error("Failed to load static props"),"__NEXT_ERROR_CODE",{value:"E124",enumerable:!1,configurable:!0});throw a||(0,l.markAssetError)(o),o}let i=t.headers.get($.NEXT_NAV_DEPLOYMENT_ID_HEADER);if(null!=i&&i!==f){let e=Object.defineProperty(Error("Loaded static props were from an outdated deployment, forcing a hard reload"),"__NEXT_ERROR_CODE",{value:"E989",enumerable:!1,configurable:!0});throw a||(0,l.markAssetError)(e),e}return{dataHref:e,json:o?q(r):null,response:t,text:r,cacheKey:c}})).then(e=>(i&&"no-cache"!==e.response.headers.get("x-middleware-cache")||delete t[c],e)).catch(e=>{throw u||delete t[c],("Failed to fetch"===e.message||"NetworkError when attempting to fetch resource."===e.message||"Load failed"===e.message)&&(0,l.markAssetError)(e),e});return u&&i?d({}).then(e=>("no-cache"!==e.response.headers.get("x-middleware-cache")&&(t[c]=Promise.resolve(e)),e)):void 0!==t[c]?t[c]:t[c]=d(s?{method:"HEAD"}:{})}function Y(){return Math.random().toString(36).slice(2,10)}function K({url:e,router:t}){if(e===(0,S.addBasePath)((0,R.addLocale)(t.asPath,t.locale)))throw Object.defineProperty(Error(`Invariant: attempted to hard navigate to the same URL ${e} ${location.href}`),"__NEXT_ERROR_CODE",{value:"E282",enumerable:!1,configurable:!0});window.location.href=e}let J=({route:e,router:t})=>{let r=!1,n=t.clc=()=>{r=!0};return()=>{if(r){let t=Object.defineProperty(Error(`Abort fetching component for route: "${e}"`),"__NEXT_ERROR_CODE",{value:"E483",enumerable:!1,configurable:!0});throw t.cancelled=!0,t}n===t.clc&&(t.clc=null)}};class Q{static{this.events=(0,p.default)()}constructor(e,t,r,{initialProps:n,pageLoader:a,App:o,wrapApp:i,Component:l,err:u,subscription:c,isFallback:f,locale:d,locales:p,defaultLocale:g,domainLocales:P,isPreview:b}){this.sdc={},this.sbc={},this.isFirstPopStateEvent=!0,this._key=Y(),this.onPopState=e=>{let t,{isFirstPopStateEvent:r}=this;this.isFirstPopStateEvent=!1;let n=e.state;if(!n){let{pathname:e,query:t}=this;this.changeState("replaceState",(0,y.formatWithValidation)({pathname:(0,S.addBasePath)(e),query:t}),(0,h.getURL)());return}if(n.__NA)return void window.location.reload();if(!n.__N||r&&this.locale===n.options.locale&&n.as===this.asPath)return;let{url:a,as:o,options:i,key:s}=n;this._key=s;let{pathname:l}=(0,_.parseRelativeUrl)(a);this.isSsr&&o===(0,S.addBasePath)(this.asPath)&&l===(0,S.addBasePath)(this.pathname)||(!this._bps||this._bps(n))&&this.change("replaceState",a,o,Object.assign({},i,{shallow:i.shallow&&this._shallow,locale:i.locale||this.defaultLocale,_h:0}),t)};const R=(0,s.removeTrailingSlash)(e);this.components={},"/_error"!==e&&(this.components[R]={Component:l,initial:!0,props:n,err:u,__N_SSG:n&&n.__N_SSG,__N_SSP:n&&n.__N_SSP}),this.components["/_app"]={Component:o,styleSheets:[]},this.events=Q.events,this.pageLoader=a;const v=(0,m.isDynamicRoute)(e)&&self.__NEXT_DATA__.autoExport;if(this.basePath="",this.sub=c,this.clc=null,this._wrapApp=i,this.isSsr=!0,this.isLocaleDomain=!1,this.isReady=!!(self.__NEXT_DATA__.gssp||self.__NEXT_DATA__.gip||self.__NEXT_DATA__.isExperimentalCompile||self.__NEXT_DATA__.appGip&&!self.__NEXT_DATA__.gsp||!v&&!self.location.search),this.locales=p,this.defaultLocale=g,this.domainLocales=P,this.isLocaleDomain=!!(0,E.detectDomainLocale)(P,self.location.hostname),this.state={route:R,pathname:e,query:t,asPath:v?e:r,isPreview:!!b,locale:d,isFallback:f},this._initialMatchesMiddlewarePromise=Promise.resolve(!1),"u">typeof window){if(!r.startsWith("//")){const n={locale:d},a=(0,h.getURL)();this._initialMatchesMiddlewarePromise=B({router:this,locale:d,asPath:a}).then(o=>(n._shouldResolveHref=r!==e,this.changeState("replaceState",o?a:(0,y.formatWithValidation)({pathname:(0,S.addBasePath)(e),query:t}),a,n),o))}window.addEventListener("popstate",this.onPopState)}}reload(){window.location.reload()}back(){window.history.back()}forward(){window.history.forward()}push(e,t,r={}){if((0,U.isJavaScriptURLString)(e.toString())||t&&(0,U.isJavaScriptURLString)(t.toString()))throw Object.defineProperty(Error("Next.js has blocked a javascript: URL as a security precaution."),"__NEXT_ERROR_CODE",{value:"E978",enumerable:!1,configurable:!0});return{url:e,as:t}=W(this,e,t),this.change("pushState",e,t,r)}replace(e,t,r={}){if((0,U.isJavaScriptURLString)(e.toString())||t&&(0,U.isJavaScriptURLString)(t.toString()))throw Object.defineProperty(Error("Next.js has blocked a javascript: URL as a security precaution."),"__NEXT_ERROR_CODE",{value:"E978",enumerable:!1,configurable:!0});return{url:e,as:t}=W(this,e,t),this.change("replaceState",e,t,r)}async _bfl(t,r,n,a){{if(!this._bfl_s&&!this._bfl_d){let r,o,{BloomFilter:i}=e.r(872522);try{({__routerFilterStatic:r,__routerFilterDynamic:o}=await (0,l.getClientBuildManifest)())}catch(e){if(console.error(e),a)return!0;return K({url:(0,S.addBasePath)((0,R.addLocale)(t,n||this.locale,this.defaultLocale)),router:this}),new Promise(()=>{})}let s={numItems:0,errorRate:1e-4,numBits:0,numHashes:null,bitArray:[]};!r&&s&&(r=s);let u={numItems:0,errorRate:1e-4,numBits:0,numHashes:null,bitArray:[]};!o&&u&&(o=u),r?.numHashes&&(this._bfl_s=new i(r.numItems,r.errorRate),this._bfl_s.import(r)),o?.numHashes&&(this._bfl_d=new i(o.numItems,o.errorRate),this._bfl_d.import(o))}let o=!1,i=!1;for(let{as:e,allowMatchCurrent:l}of[{as:t},{as:r}])if(e){let r=(0,s.removeTrailingSlash)(new URL(e,"http://n").pathname),u=(0,S.addBasePath)((0,R.addLocale)(r,n||this.locale));if(l||r!==(0,s.removeTrailingSlash)(new URL(this.asPath,"http://n").pathname)){for(let e of(o=o||!!this._bfl_s?.contains(r)||!!this._bfl_s?.contains(u),[r,u])){let t=e.split("/");for(let e=0;!i&&e<t.length+1;e++){let r=t.slice(0,e).join("/");if(r&&this._bfl_d?.contains(r)){i=!0;break}}}if(o||i){if(a)return!0;return K({url:(0,S.addBasePath)((0,R.addLocale)(t,n||this.locale,this.defaultLocale)),router:this}),new Promise(()=>{})}}}}return!1}async change(e,t,r,n,a){let o,i;if(!(0,C.isLocalURL)(t))return K({url:t,router:this}),!1;let f=1===n._h;f||n.shallow||await this._bfl(r,void 0,n.locale);let p=f||n._shouldResolveHref||(0,b.parsePath)(t).pathname===(0,b.parsePath)(r).pathname,j={...this.state},w=!0!==this.isReady;this.isReady=!0;let A=this.isSsr;if(f||(this.isSsr=!1),f&&this.clc)return!1;let x=j.locale;{j.locale=!1===n.locale?this.defaultLocale:n.locale||j.locale,void 0===n.locale&&(n.locale=j.locale);let e=(0,_.parseRelativeUrl)((0,T.hasBasePath)(r)?(0,O.removeBasePath)(r):r),a=(0,d.normalizeLocalePath)(e.pathname,this.locales);a.detectedLocale&&(j.locale=a.detectedLocale,e.pathname=(0,S.addBasePath)(e.pathname),r=(0,y.formatWithValidation)(e),t=(0,S.addBasePath)((0,d.normalizeLocalePath)((0,T.hasBasePath)(t)?(0,O.removeBasePath)(t):t,this.locales).pathname));let o=!1;this.locales?.includes(j.locale)||(e.pathname=(0,R.addLocale)(e.pathname,j.locale),K({url:(0,y.formatWithValidation)(e),router:this}),o=!0);let i=(0,E.detectDomainLocale)(this.domainLocales,void 0,j.locale);if(!o&&i&&this.isLocaleDomain&&self.location.hostname!==i.domain){let e=(0,O.removeBasePath)(r);K({url:`http${i.http?"":"s"}://${i.domain}${(0,S.addBasePath)(`${j.locale===i.defaultLocale?"":`/${j.locale}`}${"/"===e?"":e}`||"/")}`,router:this}),o=!0}if(o)return new Promise(()=>{})}h.ST&&performance.mark("routeChange");let{shallow:I=!1,scroll:D=!0}=n,$={shallow:I};this._inFlightRoute&&this.clc&&(A||Q.events.emit("routeChangeError",H(),this._inFlightRoute,$),this.clc(),this.clc=null),r=(0,S.addBasePath)((0,R.addLocale)((0,T.hasBasePath)(r)?(0,O.removeBasePath)(r):r,n.locale,this.defaultLocale));let k=(0,v.removeLocale)((0,T.hasBasePath)(r)?(0,O.removeBasePath)(r):r,j.locale);this._inFlightRoute=r;let U=x!==j.locale;if(!f&&this.onlyAHashChange(k)&&!U){j.asPath=k,Q.events.emit("hashChangeStart",r,$),this.changeState(e,t,r,{...n,scroll:!1}),D&&this.scrollToHash(k);try{await this.set(j,this.components[j.route],null)}catch(e){throw(0,c.default)(e)&&e.cancelled&&Q.events.emit("routeChangeError",e,k,$),e}return Q.events.emit("hashChangeComplete",r,$),!0}let X=(0,_.parseRelativeUrl)(t),{pathname:G,query:q}=X;try{[o,{__rewrites:i}]=await Promise.all([this.pageLoader.getPageList(),(0,l.getClientBuildManifest)(),this.pageLoader.getMiddleware()])}catch(e){return K({url:r,router:this}),!1}this.urlIsNew(k)||U||(e="replaceState");let V=r;G=G?(0,s.removeTrailingSlash)((0,O.removeBasePath)(G)):G;let Y=(0,s.removeTrailingSlash)(G),J=r.startsWith("/")&&(0,_.parseRelativeUrl)(r).pathname;if(this.components[G]?.__appRouter)return K({url:r,router:this}),new Promise(()=>{});let Z=!!(J&&Y!==J&&(!(0,m.isDynamicRoute)(Y)||!(0,g.getRouteMatcher)((0,P.getRouteRegex)(Y))(J))),ee=!n.shallow&&await B({asPath:r,locale:j.locale,router:this});if(f&&ee&&(p=!1),p&&"/_error"!==G&&(n._shouldResolveHref=!0,X.pathname=F(G,o),X.pathname!==G&&(G=X.pathname,X.pathname=(0,S.addBasePath)(G),ee||(t=(0,y.formatWithValidation)(X)))),!(0,C.isLocalURL)(r))return K({url:r,router:this}),!1;V=(0,v.removeLocale)((0,O.removeBasePath)(V),j.locale),Y=(0,s.removeTrailingSlash)(G);let et=!1;if((0,m.isDynamicRoute)(Y)){let e=(0,_.parseRelativeUrl)(V),n=e.pathname,a=(0,P.getRouteRegex)(Y);et=(0,g.getRouteMatcher)(a)(n);let o=Y===n,i=o?(0,L.interpolateAs)(Y,n,q):{};if(et&&(!o||i.result))o?r=(0,y.formatWithValidation)(Object.assign({},e,{pathname:i.result,query:(0,M.omit)(q,i.params)})):Object.assign(q,et);else{let e=Object.keys(a.groups).filter(e=>!q[e]&&!a.groups[e].optional);if(e.length>0&&!ee)throw Object.defineProperty(Error((o?`The provided \`href\` (${t}) value is missing query values (${e.join(", ")}) to be interpolated properly. `:`The provided \`as\` value (${n}) is incompatible with the \`href\` value (${Y}). `)+`Read more: https://nextjs.org/docs/messages/${o?"href-interpolation-failed":"incompatible-href-as"}`),"__NEXT_ERROR_CODE",{value:"E344",enumerable:!1,configurable:!0})}}f||Q.events.emit("routeChangeStart",r,$);let er="/404"===this.pathname||"/_error"===this.pathname;try{let i=await this.getRouteInfo({route:Y,pathname:G,query:q,as:r,resolvedAs:V,routeProps:$,locale:j.locale,isPreview:j.isPreview,hasMiddleware:ee,unstable_skipClientCache:n.unstable_skipClientCache,isQueryUpdating:f&&!this.isFallback,isMiddlewareRewrite:Z});if(f||n.shallow||await this._bfl(r,"resolvedAs"in i?i.resolvedAs:void 0,j.locale),"route"in i&&ee){Y=G=i.route||Y,$.shallow||(q=Object.assign({},i.query||{},q));let e=(0,T.hasBasePath)(X.pathname)?(0,O.removeBasePath)(X.pathname):X.pathname;if(et&&G!==e&&Object.keys(et).forEach(e=>{et&&q[e]===et[e]&&delete q[e]}),(0,m.isDynamicRoute)(G)){let e=!$.shallow&&i.resolvedAs?i.resolvedAs:(0,S.addBasePath)((0,R.addLocale)(new URL(r,location.href).pathname,j.locale),!0);(0,T.hasBasePath)(e)&&(e=(0,O.removeBasePath)(e));{let t=(0,d.normalizeLocalePath)(e,this.locales);j.locale=t.detectedLocale||j.locale,e=t.pathname}let t=(0,P.getRouteRegex)(G),n=(0,g.getRouteMatcher)(t)(new URL(e,location.href).pathname);n&&Object.assign(q,n)}}if("type"in i)if("redirect-internal"===i.type)return this.change(e,i.newUrl,i.newAs,n);else return K({url:i.destination,router:this}),new Promise(()=>{});let s=i.Component;if(s&&s.unstable_scriptLoader&&[].concat(s.unstable_scriptLoader()).forEach(e=>{(0,u.handleClientScriptLoad)(e.props)}),(i.__N_SSG||i.__N_SSP)&&i.props){if(i.props.pageProps&&i.props.pageProps.__N_REDIRECT){n.locale=!1;let t=i.props.pageProps.__N_REDIRECT;if(t.startsWith("/")&&!1!==i.props.pageProps.__N_REDIRECT_BASE_PATH){let r=(0,_.parseRelativeUrl)(t);r.pathname=F(r.pathname,o);let{url:a,as:i}=W(this,t,t);return this.change(e,a,i,n)}return K({url:t,router:this}),new Promise(()=>{})}if(j.isPreview=!!i.props.__N_PREVIEW,i.props.notFound===z){let e;try{await this.fetchComponent("/404"),e="/404"}catch(t){e="/_error"}if(i=await this.getRouteInfo({route:e,pathname:e,query:q,as:r,resolvedAs:V,routeProps:{shallow:!1},locale:j.locale,isPreview:j.isPreview,isNotFound:!0}),"type"in i)throw Object.defineProperty(Error("Unexpected middleware effect on /404"),"__NEXT_ERROR_CODE",{value:"E158",enumerable:!1,configurable:!0})}}f&&"/_error"===this.pathname&&self.__NEXT_DATA__.props?.pageProps?.statusCode===500&&i.props?.pageProps&&(i.props.pageProps.statusCode=500);let l=n.shallow&&j.route===(i.route??Y),p=n.scroll??(!f&&!l),h=a??(p?{x:0,y:0}:null),y={...j,route:Y,pathname:G,query:q,asPath:k,isFallback:!1};if(f&&er){if(i=await this.getRouteInfo({route:this.pathname,pathname:this.pathname,query:q,as:r,resolvedAs:V,routeProps:{shallow:!1},locale:j.locale,isPreview:j.isPreview,isQueryUpdating:f&&!this.isFallback}),"type"in i)throw Object.defineProperty(Error(`Unexpected middleware effect on ${this.pathname}`),"__NEXT_ERROR_CODE",{value:"E225",enumerable:!1,configurable:!0});"/_error"===this.pathname&&self.__NEXT_DATA__.props?.pageProps?.statusCode===500&&i.props?.pageProps&&(i.props.pageProps.statusCode=500);try{await this.set(y,i,h)}catch(e){throw(0,c.default)(e)&&e.cancelled&&Q.events.emit("routeChangeError",e,k,$),e}return!0}if(Q.events.emit("beforeHistoryChange",r,$),this.changeState(e,t,r,n),!(f&&!h&&!w&&!U&&(0,N.compareRouterStates)(y,this.state))){try{await this.set(y,i,h)}catch(e){if(e.cancelled)i.error=i.error||e;else throw e}if(i.error)throw f||Q.events.emit("routeChangeError",i.error,k,$),i.error;j.locale&&(document.documentElement.lang=j.locale),f||Q.events.emit("routeChangeComplete",r,$),p&&/#.+$/.test(r)&&this.scrollToHash(r)}return!0}catch(e){if((0,c.default)(e)&&e.cancelled)return!1;throw e}}changeState(e,t,r,n={}){("pushState"!==e||(0,h.getURL)()!==r)&&(this._shallow=n.shallow,window.history[e]({url:t,as:r,options:n,__N:!0,key:this._key="pushState"!==e?this._key:Y()},"",r))}async handleRouteInfoError(e,t,r,n,a,o){if(e.cancelled)throw e;if((0,l.isAssetError)(e)||o)throw Q.events.emit("routeChangeError",e,n,a),K({url:n,router:this}),H();console.error(e);try{let n,{page:a,styleSheets:o}=await this.fetchComponent("/_error"),i={props:n,Component:a,styleSheets:o,err:e,error:e};if(!i.props)try{i.props=await this.getInitialProps(a,{err:e,pathname:t,query:r})}catch(e){console.error("Error in error page `getInitialProps`: ",e),i.props={}}return i}catch(e){return this.handleRouteInfoError((0,c.default)(e)?e:Object.defineProperty(Error(e+""),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0}),t,r,n,a,!0)}}async getRouteInfo({route:e,pathname:t,query:r,as:n,resolvedAs:a,routeProps:o,locale:i,hasMiddleware:l,isPreview:u,unstable_skipClientCache:f,isQueryUpdating:p,isMiddlewareRewrite:h,isNotFound:m}){let _=e;try{let e=this.components[_];if(o.shallow&&e&&this.route===_)return e;let c=J({route:_,router:this});l&&(e=void 0);let g=!e||"initial"in e?void 0:e,P={dataHref:this.pageLoader.getDataHref({href:(0,y.formatWithValidation)({pathname:t,query:r}),skipInterpolation:!0,asPath:m?"/404":a,locale:i}),hasMiddleware:!0,isServerRender:this.isSsr,parseJSON:!0,inflightCache:p?this.sbc:this.sdc,persistCache:!u,isPrefetch:!1,unstable_skipClientCache:f,isBackground:p},E=p&&!h?null:await G({fetchData:()=>V(P),asPath:m?"/404":a,locale:i,router:this}).catch(e=>{if(p)return null;throw e});if(E&&("/_error"===t||"/404"===t)&&(E.effect=void 0),p&&(E?E.json=self.__NEXT_DATA__.props:E={json:self.__NEXT_DATA__.props}),c(),E?.effect?.type==="redirect-internal"||E?.effect?.type==="redirect-external")return E.effect;if(E?.effect?.type==="rewrite"){let n=(0,s.removeTrailingSlash)(E.effect.resolvedHref),i=await this.pageLoader.getPageList();if((!p||i.includes(n))&&(_=n,t=E.effect.resolvedHref,r={...r,...E.effect.parsedAs.query},a=(0,O.removeBasePath)((0,d.normalizeLocalePath)(E.effect.parsedAs.pathname,this.locales).pathname),e=this.components[_],o.shallow&&e&&this.route===_&&!l))return{...e,route:_}}if((0,w.isAPIRoute)(_))return K({url:n,router:this}),new Promise(()=>{});let b=g||await this.fetchComponent(_).then(e=>({Component:e.page,styleSheets:e.styleSheets,__N_SSG:e.mod.__N_SSG,__N_SSP:e.mod.__N_SSP})),R=E?.response?.headers.get("x-middleware-skip"),v=b.__N_SSG||b.__N_SSP;R&&E?.dataHref&&delete this.sdc[E.dataHref];let{props:S,cacheKey:T}=await this._getData(async()=>{if(v){if(E?.json&&!R)return{cacheKey:E.cacheKey,props:E.json};let e=E?.dataHref?E.dataHref:this.pageLoader.getDataHref({href:(0,y.formatWithValidation)({pathname:t,query:r}),asPath:a,locale:i}),n=await V({dataHref:e,isServerRender:this.isSsr,parseJSON:!0,inflightCache:R?{}:this.sdc,persistCache:!u,isPrefetch:!1,unstable_skipClientCache:f});return{cacheKey:n.cacheKey,props:n.json||{}}}return{headers:{},props:await this.getInitialProps(b.Component,{pathname:t,query:r,asPath:n,locale:i,locales:this.locales,defaultLocale:this.defaultLocale})}});return b.__N_SSP&&P.dataHref&&T&&delete this.sdc[T],this.isPreview||!b.__N_SSG||p||V(Object.assign({},P,{isBackground:!0,persistCache:!1,inflightCache:this.sbc})).catch(()=>{}),S.pageProps=Object.assign({},S.pageProps),b.props=S,b.route=_,b.query=r,b.resolvedAs=a,this.components[_]=b,b}catch(e){return this.handleRouteInfoError((0,c.getProperError)(e),t,r,n,o)}}set(e,t,r){return this.state=e,this.sub(t,this.components["/_app"].Component,r)}beforePopState(e){this._bps=e}onlyAHashChange(e){if(!this.asPath)return!1;let[t,r]=this.asPath.split("#",2),[n,a]=e.split("#",2);return!!a&&t===n&&r===a||t===n&&r!==a}scrollToHash(e){let[,t=""]=e.split("#",2);(0,D.disableSmoothScrollDuringRouteTransition)(()=>{if(""===t||"top"===t)return void window.scrollTo(0,0);let e=decodeURIComponent(t),r=document.getElementById(e);if(r)return void r.scrollIntoView();let n=document.getElementsByName(e)[0];n&&n.scrollIntoView()},{onlyHashChange:this.onlyAHashChange(e)})}urlIsNew(e){return this.asPath!==e}async prefetch(e,t=e,r={}){if("u">typeof window&&(0,I.isBot)(window.navigator.userAgent))return;let n=(0,_.parseRelativeUrl)(e),a=n.pathname,{pathname:o,query:i}=n,l=o;if(!1===r.locale){n.pathname=o=(0,d.normalizeLocalePath)(o,this.locales).pathname,e=(0,y.formatWithValidation)(n);let a=(0,_.parseRelativeUrl)(t),i=(0,d.normalizeLocalePath)(a.pathname,this.locales);a.pathname=i.pathname,r.locale=i.detectedLocale||this.defaultLocale,t=(0,y.formatWithValidation)(a)}let u=await this.pageLoader.getPageList(),c=t,f=void 0!==r.locale?r.locale||void 0:this.locale,p=await B({asPath:t,locale:f,router:this});n.pathname=F(n.pathname,u),(0,m.isDynamicRoute)(n.pathname)&&(o=n.pathname,n.pathname=o,Object.assign(i,(0,g.getRouteMatcher)((0,P.getRouteRegex)(n.pathname))((0,b.parsePath)(t).pathname)||{}),p||(e=(0,y.formatWithValidation)(n)));let h=await G({fetchData:()=>V({dataHref:this.pageLoader.getDataHref({href:(0,y.formatWithValidation)({pathname:l,query:i}),skipInterpolation:!0,asPath:c,locale:f}),hasMiddleware:!0,isServerRender:!1,parseJSON:!0,inflightCache:this.sdc,persistCache:!this.isPreview,isPrefetch:!0}),asPath:t,locale:f,router:this});if(h?.effect.type==="rewrite"&&(n.pathname=h.effect.resolvedHref,o=h.effect.resolvedHref,i={...i,...h.effect.parsedAs.query},c=h.effect.parsedAs.pathname,e=(0,y.formatWithValidation)(n)),h?.effect.type==="redirect-external")return;let E=(0,s.removeTrailingSlash)(o);await this._bfl(t,c,r.locale,!0)&&(this.components[a]={__appRouter:!0}),await Promise.all([this.pageLoader._isSsg(E).then(t=>!!t&&V({dataHref:h?.json?h?.dataHref:this.pageLoader.getDataHref({href:e,asPath:c,locale:f}),isServerRender:!1,parseJSON:!0,inflightCache:this.sdc,persistCache:!this.isPreview,isPrefetch:!0,unstable_skipClientCache:r.unstable_skipClientCache||r.priority&&!0}).then(()=>!1).catch(()=>!1)),this.pageLoader[r.priority?"loadPage":"prefetch"](E)])}async fetchComponent(e){let t=J({route:e,router:this});try{let r=await this.pageLoader.loadPage(e);return t(),r}catch(e){throw t(),e}}_getData(e){let t=!1,r=()=>{t=!0};return this.clc=r,e().then(e=>{if(r===this.clc&&(this.clc=null),t){let e=Object.defineProperty(Error("Loading initial props cancelled"),"__NEXT_ERROR_CODE",{value:"E405",enumerable:!1,configurable:!0});throw e.cancelled=!0,e}return e})}getInitialProps(e,t){let{Component:r}=this.components["/_app"],n=this._wrapApp(r);return t.AppTree=n,(0,h.loadGetInitialProps)(r,{AppTree:n,Component:e,router:this,ctx:t})}get route(){return this.state.route}get pathname(){return this.state.pathname}get query(){return this.state.query}get asPath(){return this.state.asPath}get locale(){return this.state.locale}get isFallback(){return this.state.isFallback}get isPreview(){return this.state.isPreview}}},994408,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return o}}),e.r(741705);let n=e.r(391398);e.r(191788);let a=e.r(926990);function o(e){function t(t){return(0,n.jsx)(e,{router:(0,a.useRouter)(),...t})}return t.getInitialProps=e.getInitialProps,t.origGetInitialProps=e.origGetInitialProps,t}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},926990,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={Router:function(){return s.default},createRouter:function(){return g},default:function(){return m},makePublicRouterInstance:function(){return P},useRouter:function(){return _},withRouter:function(){return c.default}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(741705),i=o._(e.r(191788)),s=o._(e.r(424438)),l=e.r(425479),u=o._(e.r(653910)),c=o._(e.r(994408)),f={router:null,readyCallbacks:[],ready(e){if(this.router)return e();"u">typeof window&&this.readyCallbacks.push(e)}},d=["pathname","route","query","asPath","components","isFallback","basePath","locale","locales","defaultLocale","isReady","isPreview","isLocaleDomain","domainLocales"],p=["push","replace","reload","back","prefetch","beforePopState"];function h(){if(!f.router)throw Object.defineProperty(Error('No router instance found.\nYou should only use "next/router" on the client side of your app.\n'),"__NEXT_ERROR_CODE",{value:"E1044",enumerable:!1,configurable:!0});return f.router}Object.defineProperty(f,"events",{get:()=>s.default.events}),d.forEach(e=>{Object.defineProperty(f,e,{get:()=>h()[e]})}),p.forEach(e=>{f[e]=(...t)=>h()[e](...t)}),["routeChangeStart","beforeHistoryChange","routeChangeComplete","routeChangeError","hashChangeStart","hashChangeComplete"].forEach(e=>{f.ready(()=>{s.default.events.on(e,(...t)=>{let r=`on${e.charAt(0).toUpperCase()}${e.substring(1)}`;if(f[r])try{f[r](...t)}catch(e){console.error(`Error when running the Router event: ${r}`),console.error((0,u.default)(e)?`${e.message}
5
+ ${e.stack}`:e+"")}})})});let m=f;function _(){let e=i.default.useContext(l.RouterContext);if(!e)throw Object.defineProperty(Error("NextRouter was not mounted. https://nextjs.org/docs/messages/next-router-not-mounted"),"__NEXT_ERROR_CODE",{value:"E509",enumerable:!1,configurable:!0});return e}function g(...e){return f.router=new s.default(...e),f.readyCallbacks.forEach(e=>e()),f.readyCallbacks=[],f.router}function P(e){let t={};for(let r of d){if("object"==typeof e[r]){t[r]=Object.assign(Array.isArray(e[r])?[]:{},e[r]);continue}t[r]=e[r]}return t.events=s.default.events,p.forEach(r=>{t[r]=(...t)=>e[r](...t)}),t}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)}]);
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,399267,e=>{"use strict";var t=e.i(505888);let a={terminalConnected:!1,agentProcess:null,agentProcessCheckedAt:0,agentInstalled:!0,sessionView:"session-list",cliState:"inactive",isTimelineLoading:!0,workspaceId:""},n=(e,t,a)=>{let n=e[t];return n?{...e,[t]:{...n,...a}}:e},s=(e,t)=>null!=t&&"inactive"!==t&&"unknown"!==t&&"cancelled"!==t&&"check"===e?"timeline":e,i=(e,t)=>t.agentProviderId||"terminal"!==e.panelType||!0!==e.agentProcess?{}:{agentProviderId:e.agentProviderId,agentSessionId:e.agentSessionId},r=(0,t.create)(e=>({tabs:{},tabOrders:{},statusWsConnected:!1,initTab:(t,n)=>e(e=>{let s=e.tabs[t],i={...a,...s,...n};return s?.cliState==="ready-for-review"&&"ready-for-review"!==i.cliState&&(i.cliState="ready-for-review",i.readyForReviewAt=s.readyForReviewAt),{tabs:{...e.tabs,[t]:i}}}),removeTab:t=>e(e=>{let{[t]:a,...n}=e.tabs;return{tabs:n}}),setTerminalConnected:(t,a)=>e(e=>{let s=e.tabs[t];return s&&s.terminalConnected!==a?{tabs:n(e.tabs,t,{terminalConnected:a})}:e}),setAgentProcess:(t,a,s)=>e(e=>{let i=e.tabs[t];if(!i||i.agentProcessCheckedAt>s)return e;let r={agentProcess:a,agentProcessCheckedAt:s};return(!0===a&&("check"===i.sessionView||"session-list"===i.sessionView)&&(r.sessionView="timeline"),!1===a&&!0===i.agentProcess&&"timeline"===i.sessionView&&(r.sessionView="session-list"),i.agentProcess===a&&i.agentProcessCheckedAt===s&&void 0===r.sessionView)?e:{tabs:n(e.tabs,t,r)}}),setAgentInstalled:(t,a)=>e(e=>{let s=e.tabs[t];return s&&s.agentInstalled!==a?{tabs:n(e.tabs,t,{agentInstalled:a})}:e}),setSessionView:(t,a)=>e(e=>{let s=e.tabs[t];return s&&s.sessionView!==a?{tabs:n(e.tabs,t,{sessionView:a})}:e}),setTimelineLoading:(t,a)=>e(e=>{let s=e.tabs[t];return s&&s.isTimelineLoading!==a?{tabs:n(e.tabs,t,{isTimelineLoading:a})}:e}),setSessionMetaCache:(t,a)=>e(e=>{let s=e.tabs[t];if(!s)return e;let i=s.sessionMetaCache;return i&&i.sessionId===a.sessionId&&i.jsonlPath===a.jsonlPath&&i.meta===a.meta?e:{tabs:n(e.tabs,t,{sessionMetaCache:a})}}),cancelTab:t=>e(e=>{let a=e.tabs[t];return a&&"cancelled"!==a.cliState?{tabs:n(e.tabs,t,{cliState:"cancelled",localUpdatedAt:Date.now()})}:e}),dismissTab:t=>e(e=>{let a=e.tabs[t];return a&&"ready-for-review"===a.cliState?{tabs:n(e.tabs,t,{cliState:"idle",dismissedAt:Date.now()})}:e}),setWorkspaceId:(t,a)=>e(e=>{let s=e.tabs[t];return s&&s.workspaceId!==a?{tabs:n(e.tabs,t,{workspaceId:a})}:e}),setPanelType:(t,a)=>e(e=>{let s=e.tabs[t];return s&&s.panelType!==a?{tabs:n(e.tabs,t,{panelType:a})}:e}),setCurrentProcess:(t,a)=>e(e=>{let s=e.tabs[t];if(!s)return e;let i=a??void 0;return s.currentProcess===i?e:{tabs:n(e.tabs,t,{currentProcess:i,localUpdatedAt:Date.now()})}}),setDetectedAgent:(t,a)=>e(e=>{let s=e.tabs[t],i=a.checkedAt??Date.now();if(!s||s.agentProcessCheckedAt>i)return e;let r={agentProcess:a.running,agentProcessCheckedAt:i};return a.running?(a.providerId&&(r.agentProviderId=a.providerId),void 0!==a.sessionId&&(r.agentSessionId=a.sessionId),("check"===s.sessionView||"session-list"===s.sessionView)&&(r.sessionView="timeline")):"terminal"===s.panelType?(r.agentProviderId=void 0,r.agentSessionId=null,!0===s.agentProcess&&"timeline"===s.sessionView&&(r.sessionView="session-list")):"timeline"===s.sessionView&&(!0===s.agentProcess||s.agentSessionId&&!s.isTimelineLoading)&&(r.sessionView="session-list"),{tabs:n(e.tabs,t,r)}}),setTabOrder:(t,a)=>e(e=>{let n=e.tabOrders[t];return n&&n.length===a.length&&n.every((e,t)=>e===a[t])?e:{tabOrders:{...e.tabOrders,[t]:a}}}),setStatusWsConnected:t=>e({statusWsConnected:t}),syncAllFromServer:t=>e(e=>{let n=Date.now(),r={};for(let[l,o]of Object.entries(t)){let t=e.tabs[l];if(t?.cliState==="cancelled"){r[l]=t;continue}t?.localUpdatedAt&&n-t.localUpdatedAt<3e4?r[l]={...t,cliState:o.cliState,workspaceId:o.workspaceId,tabName:o.tabName,terminalStatus:o.terminalStatus,listeningPorts:o.listeningPorts,agentProviderId:o.agentProviderId,agentSessionId:o.agentSessionId,...i(t,o),agentSummary:o.agentSummary,lastUserMessage:o.lastUserMessage,lastAssistantMessage:o.lastAssistantMessage,currentAction:o.currentAction,readyForReviewAt:o.readyForReviewAt,busySince:o.busySince,dismissedAt:o.dismissedAt,compactingSince:o.compactingSince,permissionRequest:o.permissionRequest,lastEvent:o.lastEvent,eventSeq:o.eventSeq,sessionView:s(t.sessionView,o.cliState)}:t?r[l]={...t,cliState:o.cliState,workspaceId:o.workspaceId,tabName:o.tabName,panelType:o.panelType??t.panelType,terminalStatus:o.terminalStatus,listeningPorts:o.listeningPorts,currentProcess:o.currentProcess,agentProviderId:o.agentProviderId,agentSessionId:o.agentSessionId,...i(t,o),agentSummary:o.agentSummary,lastUserMessage:o.lastUserMessage,lastAssistantMessage:o.lastAssistantMessage,currentAction:o.currentAction,readyForReviewAt:o.readyForReviewAt,busySince:o.busySince,dismissedAt:o.dismissedAt,compactingSince:o.compactingSince,permissionRequest:o.permissionRequest,lastEvent:o.lastEvent,eventSeq:o.eventSeq,sessionView:s(t.sessionView,o.cliState)}:r[l]={...a,cliState:o.cliState,workspaceId:o.workspaceId,tabName:o.tabName,panelType:o.panelType,terminalStatus:o.terminalStatus,listeningPorts:o.listeningPorts,currentProcess:o.currentProcess,agentProviderId:o.agentProviderId,agentSessionId:o.agentSessionId,agentSummary:o.agentSummary,lastUserMessage:o.lastUserMessage,lastAssistantMessage:o.lastAssistantMessage,currentAction:o.currentAction,readyForReviewAt:o.readyForReviewAt,busySince:o.busySince,dismissedAt:o.dismissedAt,compactingSince:o.compactingSince,permissionRequest:o.permissionRequest,lastEvent:o.lastEvent,eventSeq:o.eventSeq,sessionView:s(a.sessionView,o.cliState)}}for(let[t,a]of Object.entries(e.tabs))r[t]||(r[t]=a);return{tabs:r}}),updateFromServer:(t,r)=>e(e=>{if(null===r.cliState){let{[t]:a,...n}=e.tabs;return{tabs:n}}let l=e.tabs[t];if(l){if("cancelled"===l.cliState)return e;let a=void 0!==r.eventSeq&&void 0!==l.eventSeq&&r.eventSeq<l.eventSeq,o=void 0!==r.eventSeq&&(void 0===l.eventSeq||r.eventSeq>=l.eventSeq)?{lastEvent:r.lastEvent,eventSeq:r.eventSeq}:{},c=a?{cliState:l.cliState,readyForReviewAt:l.readyForReviewAt,busySince:l.busySince,dismissedAt:l.dismissedAt}:{cliState:r.cliState,readyForReviewAt:r.readyForReviewAt,busySince:r.busySince,dismissedAt:r.dismissedAt};return{tabs:n(e.tabs,t,{...c,workspaceId:r.workspaceId,tabName:r.tabName,panelType:r.panelType??l.panelType,terminalStatus:r.terminalStatus,listeningPorts:r.listeningPorts,currentProcess:r.currentProcess,agentProviderId:r.agentProviderId,agentSessionId:r.agentSessionId,...i(l,r),agentSummary:r.agentSummary,lastUserMessage:r.lastUserMessage,lastAssistantMessage:r.lastAssistantMessage,currentAction:r.currentAction,compactingSince:r.compactingSince,permissionRequest:r.permissionRequest,sessionView:s(l.sessionView,r.cliState),...o})}}return{tabs:{...e.tabs,[t]:{...a,cliState:r.cliState,workspaceId:r.workspaceId,tabName:r.tabName,panelType:r.panelType,terminalStatus:r.terminalStatus,listeningPorts:r.listeningPorts,currentProcess:r.currentProcess,agentProviderId:r.agentProviderId,agentSessionId:r.agentSessionId,agentSummary:r.agentSummary,lastUserMessage:r.lastUserMessage,lastAssistantMessage:r.lastAssistantMessage,readyForReviewAt:r.readyForReviewAt,busySince:r.busySince,dismissedAt:r.dismissedAt,compactingSince:r.compactingSince,permissionRequest:r.permissionRequest,lastEvent:r.lastEvent,eventSeq:r.eventSeq,sessionView:s(a.sessionView,r.cliState)}}}}),applyHookEvent:(t,a)=>e(e=>{let s=e.tabs[t];if(!s||void 0!==s.eventSeq&&a.seq<=s.eventSeq)return e;let i=((e,t)=>{if(!e||"cancelled"===t)return t;switch(e.name){case"session-start":case"interrupt":return"idle";case"prompt-submit":return"busy";case"notification":return"needs-input";case"stop":return"ready-for-review"}})(a,s.cliState);return{tabs:n(e.tabs,t,{cliState:i,lastEvent:a,eventSeq:a.seq,readyForReviewAt:"ready-for-review"===i?Date.now():null,busySince:"busy"===i?Date.now():null,dismissedAt:"busy"===i?null:s.dismissedAt,permissionRequest:"needs-input"===s.cliState&&"needs-input"!==i?null:s.permissionRequest})}})}));e.s(["default",0,r,"getInitialTabStateFromLayoutTab",0,e=>{let t={panelType:e.panelType},a=e.agentState?.providerId??("codex-cli"===e.panelType?"codex":"claude-code"===e.panelType?"claude":void 0),n=e.agentState?.sessionId??e.claudeSessionId??null;return a&&(t.agentProviderId=a),n&&(t.agentSessionId=n,t.agentSummary=e.agentState?.summary??e.claudeSummary??null,t.sessionView="timeline"),t},"isCliIdle",0,e=>"idle"===e||"ready-for-review"===e,"selectGlobalStatus",0,e=>{let t=0,a=0;for(let n of Object.values(e))"busy"===n.cliState?t++:("ready-for-review"===n.cliState||"needs-input"===n.cliState)&&a++;return{busyCount:t,attentionCount:a}},"selectSessionView",0,(e,t)=>{let a=e[t];return a?a.sessionView:"session-list"},"selectTabDisplayStatus",0,(e,t)=>{let a=e[t];return a&&"inactive"!==a.cliState?"busy"===a.cliState?"busy":"ready-for-review"===a.cliState?"ready-for-review":"needs-input"===a.cliState?"needs-input":"unknown"===a.cliState?"unknown":"idle":"idle"},"selectWorkspacePortsLabel",0,(e,t)=>{let a=new Set;for(let n of Object.values(e))if(n.workspaceId===t&&n.listeningPorts)for(let e of n.listeningPorts)a.add(e);return 0===a.size?"":":"+[...a].sort((e,t)=>e-t).join(", :")}],399267)},266231,e=>{"use strict";var t=e.i(191788);let a=768;e.s(["default",0,(e=a)=>{let n=`(max-width: ${e-1}px)`,s=(0,t.useCallback)(e=>{let t=window.matchMedia(n);return t.addEventListener("change",e),()=>t.removeEventListener("change",e)},[n]),i=(0,t.useCallback)(()=>window.matchMedia(n).matches,[n]),r=(0,t.useCallback)(()=>!1,[]);return(0,t.useSyncExternalStore)(s,i,r)}])},117653,e=>{"use strict";var t=e.i(191788);let a=(e,t)=>{let a=e instanceof Map?e:new Map(e.entries()),n=t instanceof Map?t:new Map(t.entries());if(a.size!==n.size)return!1;for(let[e,t]of a)if(!n.has(e)||!Object.is(t,n.get(e)))return!1;return!0};e.s(["useShallow",0,function(e){let n=t.default.useRef(void 0);return t=>{let s=e(t);return!function(e,t){if(Object.is(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t))return!1;if(Symbol.iterator in e&&Symbol.iterator in t){if("entries"in e&&"entries"in t)return a(e,t);let n=e[Symbol.iterator](),s=t[Symbol.iterator](),i=n.next(),r=s.next();for(;!i.done&&!r.done;){if(!Object.is(i.value,r.value))return!1;i=n.next(),r=s.next()}return!!i.done&&!!r.done}return a({entries:()=>Object.entries(e)},{entries:()=>Object.entries(t)})}(n.current,s)?n.current=s:n.current}}],117653)},116962,e=>{"use strict";let t=(0,e.i(505888).create)(e=>({entries:[],syncFromServer:t=>e({entries:t}),upsertEntry:t=>e(e=>{let a=e.entries.findIndex(e=>e.id===t.id);if(a>=0){let n=[...e.entries];return n[a]=t,{entries:n}}return{entries:[t,...e.entries]}})}));e.s(["default",0,t])},358915,e=>{"use strict";var t=e.i(191788),a=e.i(679935),n=e.i(844044),s=e.i(399267);let i=new Set(["/new","/clear"]),r=e=>`pt-input-draft:${e}`,l=e=>{try{localStorage.removeItem(r(e))}catch{}};e.s(["clearInputDraft",0,l,"default",0,(e,o,c,d)=>{let u=d?.tabId,[p,f]=(0,t.useState)(()=>u?(e=>{try{return localStorage.getItem(r(e))??""}catch{return""}})(u):""),b=(0,t.useRef)(null),m=(0,t.useMemo)(()=>(0,s.isCliIdle)(e)||"unknown"===e?"input":"busy"===e||"needs-input"===e?"interrupt":"disabled",[e]),y=d?.onRestartSession,S=d?.onMessageSent,g=d?.submitDelayMs??250,h=(0,t.useRef)(null);(0,t.useEffect)(()=>{if(u)return h.current&&clearTimeout(h.current),h.current=setTimeout(()=>((e,t)=>{try{t?localStorage.setItem(r(e),t):localStorage.removeItem(r(e))}catch{}})(u,p),300),()=>{h.current&&clearTimeout(h.current)}},[u,p]);let v=(0,t.useCallback)(()=>{if("disabled"===m)return void a.toast.error(d?.disabledMessage??(0,n.t)("terminal","inputDisabledPlaceholder"));if(!c)return void a.toast.error((0,n.t)("connection","terminalDisconnected"));if(""!==p.trim()){if(i.has(p.trim().toLowerCase())){y?.(),f(""),u&&l(u);return}p.includes("\n")?o(`\x1b[200~${p}\x1b[201~`):o(p),setTimeout(()=>o("\r"),g),p.trim().startsWith("/")||S?.(p.trim()),f(""),u&&l(u)}},[m,p,o,c,y,S,u,d?.disabledMessage,g]),I=(0,t.useCallback)(()=>{c?o("\x1b\x1b"):a.toast.error((0,n.t)("connection","terminalDisconnected"))},[o,c]),w=(0,t.useCallback)(()=>{let e=b.current;if(!e)return;e.focus();let t=e.value.length;e.setSelectionRange(t,t)},[]),T="disabled"!==m&&c;return{value:p,setValue:f,mode:m,canSend:T,send:v,interrupt:I,textareaRef:b,focusInput:w}}])},898589,e=>{"use strict";let t=e=>"web-browser"===e?"Web Browser":"";e.s(["resolveTabNameForPanelTypeChange",0,(e,a,n)=>{let s=t(a),i="agent-sessions"===a?"Session List":"",r=t(n),l=e.trim();return!l&&r||(""!==s&&l===s||""!==i&&l===i)&&l!==r?r:e}])},806185,e=>{"use strict";let t=e=>"pane"===e.type?[e]:[...t(e.children[0]),...t(e.children[1])],a=(e,t)=>"pane"===e.type?e.id===t?e:null:a(e.children[0],t)||a(e.children[1],t),n=e=>"pane"===e.type?e.id:n(e.children[0]),s=e=>"pane"===e.type?e.id:s(e.children[1]),i=(e,t)=>{if("pane"===e.type)return null;let[a,n]=e.children;if("pane"===a.type&&a.id===t)return n;if("pane"===n.type&&n.id===t)return a;let s=i(a,t);if(s)return{...e,children:[s,n]};let r=i(n,t);return r?{...e,children:[a,r]}:null},r=(e,t)=>{if("pane"===e.type)return null;let[a,i]=e.children;return"pane"===a.type&&a.id===t?n(i):"pane"===i.type&&i.id===t?s(a):r(a,t)||r(i,t)},l=(e,t,a)=>{if("split"!==e.type)return e;if(0===t.length)return{...e,ratio:a};let[n,...s]=t,i=[e.children[0],e.children[1]];return i[n]=l(e.children[n],s,a),{...e,children:i}},o=(e,t)=>"pane"===e.type||e.orientation!==t?1:o(e.children[0],t)+o(e.children[1],t),c=e=>{if("pane"===e.type)return e;let t=o(e.children[0],e.orientation),a=Math.round(t/(t+o(e.children[1],e.orientation))*1e4)/100;return{...e,ratio:a,children:[c(e.children[0]),c(e.children[1])]}},d=(e,t,a)=>{if("pane"===e.type)return e.id===t?a(e):e;let n=d(e.children[0],t,a);if(n!==e.children[0])return{...e,children:[n,e.children[1]]};let s=d(e.children[1],t,a);return s!==e.children[1]?{...e,children:[e.children[0],s]}:e};e.s(["collectAllTabs",0,e=>t(e).flatMap(e=>e.tabs),"collectPanes",0,t,"equalizeNode",0,c,"findAdjacentPaneInDirection",0,(e,t,a)=>{let i=[],r=e=>{if("pane"===e.type)return e.id===t;for(let t=0;t<2;t++){if(i.push({node:e,childIndex:t}),r(e.children[t]))return!0;i.pop()}return!1};if(!r(e))return null;let l="left"===a||"right"===a?"horizontal":"vertical",o=+("left"===a||"up"===a);for(let e=i.length-1;e>=0;e--){let{node:t,childIndex:r}=i[e];if("split"===t.type&&t.orientation===l&&r===o){let e=t.children[1-o];return"left"===a||"up"===a?s(e):n(e)}}return null},"findPane",0,a,"findResizeTarget",0,(e,t,a)=>{let n=[],s=e=>{if("pane"===e.type)return e.id===t;for(let t=0;t<2;t++){if(n.push({node:e,childIndex:t}),s(e.children[t]))return!0;n.pop()}return!1};if(!s(e))return null;let i="left"===a||"right"===a?"horizontal":"vertical",r=+("right"!==a&&"down"!==a),l="right"===a||"down"===a;for(let e=n.length-1;e>=0;e--){let{node:t,childIndex:a}=n[e];if("split"===t.type&&t.orientation===i&&a===r)return{path:n.slice(0,e).map(e=>e.childIndex),currentRatio:t.ratio,increase:l}}return null},"getFirstPaneId",0,n,"removePaneWithFocus",0,(e,a)=>{let n=r(e.root,a),s=i(e.root,a);s&&(e.root=s),e.activePaneId===a&&(e.activePaneId=n??t(e.root)[0]?.id??null)},"updatePaneInTree",0,d,"updateRatioAtPath",0,l])},335288,e=>{"use strict";e.s(["default",()=>L,"navigateToTab",()=>E,"navigateToTabOrCreate",()=>F,"useLayoutStore",()=>O]);var t=e.i(191788),a=e.i(203828),n=e.i(505888),s=e.i(117653),i=e.i(679935),r=e.i(844044),l=e.i(358915),o=e.i(399267),c=e.i(490034),d=e.i(453783),u=e.i(898589),p=e.i(806185);let f="pt-active-pane-",b="pt-active-tab-",m="pt-terminal-ratio-",y="pt-terminal-collapsed-",S=e=>{try{return sessionStorage.getItem(`${b}${e}`)}catch{return null}},g=e=>{try{let t=sessionStorage.getItem(`${m}${e}`);if(null==t)return null;let a=Number(t);return Number.isFinite(a)?a:null}catch{return null}},h=e=>{try{let t=sessionStorage.getItem(`${y}${e}`);if(null==t)return null;return"1"===t}catch{return null}},v=null,I=null,w=null,T=!1,P=new Map,k=(e,t)=>{if(!t)return e;let a=e.includes("?")?"&":"?";return`${e}${a}workspace=${t}`},A=(e,t)=>{let a=e?(0,p.collectPanes)(e.root).length:0;return{paneCount:a,canSplit:a<10&&!t}},C=(e,t,a)=>{e({layout:a,...A(a,t().isSplitting)})},$=(e,t,a)=>{let n=t().layout;if(n){let e=(0,p.collectPanes)(a.root);for(let t of(n.activePaneId&&e.some(e=>e.id===n.activePaneId)&&(a.activePaneId=n.activePaneId),e)){let e=(0,p.findPane)(n.root,t.id);e?.activeTabId&&t.tabs.some(t=>t.id===e.activeTabId)&&(t.activeTabId=e.activeTabId)}}e({layout:a,...A(a,t().isSplitting)})},q=(e,t,a,n)=>{let{layout:s}=t();if(!s)return;let i=(0,p.updatePaneInTree)(s.root,a,n);i!==s.root&&C(e,t,{...s,root:i})},R=async(e,t)=>{try{let a=await fetch(e,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!a.ok)return null;return await a.json()}catch{return null}},O=(0,n.create)((e,t)=>({layout:null,isLoading:!0,error:null,isSplitting:!1,workspaceId:null,retryCount:0,paneCount:0,canSplit:!1,pendingFocusTabId:null,setWorkspaceId:t=>{T=!1,e({workspaceId:t})},setLayout:a=>{C(e,t,a)},fetchLayout:async(a,n)=>{if(T)return;let s=a??t().workspaceId;if(!s)return;v?.abort();let l=new AbortController;v=l,t().layout||e({isLoading:!0,error:null});try{let a=await fetch(k("/api/layout",s),{signal:l.signal});if(!a.ok)throw Error();let i=await a.json();if(l.signal.aborted)return;let r=t().layout;if(!1!==n){let e=(0,p.collectPanes)(i.root);if(r)for(let t of(r.activePaneId&&e.some(e=>e.id===r.activePaneId)&&(i.activePaneId=r.activePaneId),e)){let e=(0,p.findPane)(r.root,t.id);e?.activeTabId&&t.tabs.some(t=>t.id===e.activeTabId)&&(t.activeTabId=e.activeTabId)}else{let t=(e=>{try{return sessionStorage.getItem(`${f}${e}`)}catch{return null}})(s);for(let a of(t&&e.some(e=>e.id===t)&&(i.activePaneId=t),e)){let e=S(a.id);for(let t of(e&&a.tabs.some(t=>t.id===e)&&(a.activeTabId=e),a.tabs)){let e=g(t.id);null!==e&&(t.terminalRatio=e);let a=h(t.id);null!==a&&(t.terminalCollapsed=a)}}}}if(r){let a={root:r.root,activePaneId:r.activePaneId},n={root:i.root,activePaneId:i.activePaneId};if(JSON.stringify(a)===JSON.stringify(n)){let a=t().pendingFocusTabId;a&&(e({pendingFocusTabId:null}),t().focusTab(a));return}}let o=t().pendingFocusTabId,c=null;if(o){for(let t of(e({pendingFocusTabId:null}),(0,p.collectPanes)(i.root)))if(t.tabs.some(e=>e.id===o)){i.activePaneId=t.id,t.activeTabId=o,c=t.id;break}}e({layout:i,retryCount:0,...A(i,t().isSplitting)}),c&&(R(k("/api/layout",s),{activePaneId:c}),R(k(`/api/layout/pane/${c}`,s),{activeTabId:o}))}catch(n){if(n instanceof DOMException&&"AbortError"===n.name)return;let a=t().retryCount+1;if(e({retryCount:a}),a>=3)try{let a=await fetch(k("/api/layout/pane",s),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})});if(a.ok){let{paneId:n,tab:s}=await a.json(),l={root:{type:"pane",id:n,tabs:[s],activeTabId:s.id},activePaneId:n,updatedAt:new Date().toISOString()};e({layout:l,...A(l,t().isSplitting)}),i.toast.info((0,r.t)("terminal","fallbackLayout")),e({retryCount:0});return}}catch{}e({error:(0,r.t)("terminal","layoutFetchError")}),I?.()}finally{l.signal.aborted||e({isLoading:!1})}},splitPane:async(a,n)=>{let{layout:s,isSplitting:l,workspaceId:o}=t();if(s&&!l&&!((0,p.collectPanes)(s.root).length>=10)){e({isSplitting:!0,canSplit:!1});try{let i,r,l=(0,p.findPane)(s.root,a),c=l?.tabs.find(e=>e.id===l.activeTabId);if(c){r=c.panelType;try{let e=await fetch(k(`/api/layout/cwd?session=${c.sessionName}`,o));e.ok&&(i=(await e.json()).cwd)}catch{}}let d=await fetch(k("/api/layout/pane",o),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sourcePaneId:a,orientation:n,cwd:i,panelType:r})});if(!d.ok)throw Error();let u=await d.json();C(e,t,u)}catch{i.toast.error((0,r.t)("terminal","splitFailed"))}finally{e(e=>({isSplitting:!1,canSplit:e.paneCount<10}))}}},closePane:async a=>{let{layout:n,workspaceId:s}=t();if(n&&!((0,p.collectPanes)(n.root).length<=1))try{let n=await fetch(k(`/api/layout/pane/${a}`,s),{method:"DELETE"});if(!n.ok)throw Error();let i=await n.json();C(e,t,i)}catch{i.toast.error("Pane을 닫을 수 없습니다")}},focusPane:a=>{let{layout:n,workspaceId:s}=t();n&&n.activePaneId!==a&&(e({layout:{...n,activePaneId:a}}),R(k("/api/layout",s),{activePaneId:a}).then(a=>{a&&$(e,t,a)}))},updateRatio:(a,n)=>{let{layout:s,workspaceId:i}=t();s&&(e({layout:{...s,root:(0,p.updateRatioAtPath)(s.root,a,n)}}),w&&clearTimeout(w),w=setTimeout(()=>{w=null,R(k("/api/layout",i),{ratioUpdate:{path:a,ratio:n}}).then(a=>{a&&$(e,t,a)})},300))},moveTab:(a,n,s,i)=>{if(n===s)return;let{layout:r,workspaceId:l}=t();if(!r)return;let o=JSON.parse(JSON.stringify(r)),c=(0,p.findPane)(o.root,n),d=(0,p.findPane)(o.root,s);if(c&&d){let r=c.tabs.findIndex(e=>e.id===a);if(-1!==r){let[l]=c.tabs.splice(r,1);c.activeTabId===a&&(c.activeTabId=c.tabs[0]?.id??null),c.tabs.forEach((e,t)=>{e.order=t}),d.tabs.splice(i,0,l),d.tabs.forEach((e,t)=>{e.order=t}),d.activeTabId=a,0===c.tabs.length&&(0,p.collectPanes)(o.root).length>1&&(0,p.removePaneWithFocus)(o,n),o.activePaneId=s,C(e,t,o)}}fetch(k(`/api/layout/pane/${n}/tabs/${a}/move`,l),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({toPaneId:s,toIndex:i})}).then(async a=>{a.ok?$(e,t,await a.json()):await t().fetchLayout(void 0,!1)}).catch(()=>t().fetchLayout(void 0,!1))},createTabInPane:async(a,n,s,l)=>{let{layout:c,workspaceId:u}=t();try{let i,r=n,f=c?(0,p.findPane)(c.root,a):void 0,b=f?.tabs.find(e=>e.id===f.activeTabId);!r&&b&&(r=b.panelType),"web-browser"!==r&&b&&(i=d.default.getState().metadata[b.id]?.cwd);let m=await fetch(k(`/api/layout/pane/${a}/tabs`,u),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:i,panelType:r,command:s,resumeSessionId:l})});if(!m.ok)throw Error();let y=await m.json();return(s||l)&&o.default.getState().initTab(y.id,{panelType:r,sessionView:"check"}),q(e,t,a,e=>({...e,tabs:[...e.tabs,y],activeTabId:y.id})),t().fetchLayout(),y}catch{return i.toast.error((0,r.t)("terminal","tabCreateFailed")),null}},deleteTabInPane:async(a,n)=>{(0,l.clearInputDraft)(n),o.default.getState().cancelTab(n),q(e,t,a,e=>{let t=[...e.tabs].sort((e,t)=>e.order-t.order),a=t.findIndex(e=>e.id===n),s=t.filter(e=>e.id!==n);s.forEach((e,t)=>{e.order=t});let i=e.activeTabId;if(e.activeTabId===n){let e=t[a+1]||t[a-1];i=e?.id??null}return{...e,tabs:s,activeTabId:i}});let{workspaceId:s}=t();try{let e=await fetch(k(`/api/layout/pane/${a}/tabs/${n}`,s),{method:"DELETE"});e.ok||404===e.status||(i.toast.error((0,r.t)("terminal","tabDeleteError")),await t().fetchLayout())}catch{i.toast.error((0,r.t)("terminal","tabDeleteError")),await t().fetchLayout()}},restartTabInPane:async(e,a,n)=>{let{workspaceId:s}=t();try{return(await fetch(k(`/api/layout/pane/${e}/tabs/${a}`,s),{method:"POST",headers:n?{"Content-Type":"application/json"}:void 0,body:n?JSON.stringify({command:n}):void 0})).ok}catch{return i.toast.error((0,r.t)("terminal","sessionRestartFailed")),!1}},switchTabInPane:(a,n)=>{q(e,t,a,e=>({...e,activeTabId:n}));let{workspaceId:s}=t();R(k(`/api/layout/pane/${a}`,s),{activeTabId:n}).then(a=>{a&&$(e,t,a)})},renameTabInPane:async(a,n,s)=>{q(e,t,a,e=>({...e,tabs:e.tabs.map(e=>e.id===n?{...e,name:s}:e)}));let{workspaceId:l}=t(),o=await R(k(`/api/layout/pane/${a}/tabs/${n}`,l),{name:s});o?$(e,t,o):i.toast.error((0,r.t)("terminal","tabRenameFailed"))},reorderTabsInPane:(a,n)=>{q(e,t,a,e=>{let t=new Map(e.tabs.map(e=>[e.id,e])),a=n.map((e,a)=>{let n=t.get(e);return n?{...n,order:a}:null}).filter(e=>null!==e);return{...e,tabs:a}});let{workspaceId:s}=t();R(k(`/api/layout/pane/${a}/tabs/order`,s),{tabIds:n}).then(a=>{a&&$(e,t,a)})},removeTabLocally:(e,a)=>{(0,l.clearInputDraft)(a);let{workspaceId:n}=t();fetch(k(`/api/layout/pane/${e}/tabs/${a}`,n),{method:"DELETE"}).then(()=>t().fetchLayout()).catch(()=>{console.log("[layout] removeTabLocally failed")})},equalizeRatios:()=>{let{workspaceId:a}=t();R(k("/api/layout",a),{equalize:!0}).then(a=>{a&&$(e,t,a)})},updateDiffSettings:a=>{let{layout:n,workspaceId:s}=t();n&&(C(e,t,{...n,diffSettings:{...n.diffSettings??{},...a}}),R(k("/api/layout",s),{diffSettings:a}).then(a=>{a&&$(e,t,a)}))},updateTabPanelType:(a,n,s)=>{let i;q(e,t,a,e=>({...e,tabs:e.tabs.map(e=>{if(e.id!==n)return e;let t=(0,u.resolveTabNameForPanelTypeChange)(e.name,e.panelType,s),a={...e,panelType:s,name:t};return t!==e.name&&(i=t),"codex-cli"===s&&"claude-code"===e.panelType&&(a.claudeSessionId=null,a.agentState=void 0),a})})),o.default.getState().setPanelType(n,s);let{workspaceId:r}=t();R(k(`/api/layout/pane/${a}/tabs/${n}`,r),{panelType:s,...void 0!==i?{name:i}:{}}).then(a=>{a&&$(e,t,a)})},updateTabTerminalLayout:(a,n,s)=>{q(e,t,a,e=>({...e,tabs:e.tabs.map(e=>e.id===n?{...e,...s}:e)}));try{void 0!==s.terminalRatio&&sessionStorage.setItem(`${m}${n}`,String(s.terminalRatio)),void 0!==s.terminalCollapsed&&sessionStorage.setItem(`${y}${n}`,s.terminalCollapsed?"1":"0")}catch{}let{workspaceId:i}=t(),r=P.get(n);r&&clearTimeout(r),P.set(n,setTimeout(()=>{P.delete(n),R(k(`/api/layout/pane/${a}/tabs/${n}`,i),s)},300))},clearLayout:()=>{T=!0,v?.abort(),e({layout:null,paneCount:0,canSplit:!1})},focusTab:e=>{let{layout:a}=t();if(!a)return!1;for(let n of(0,p.collectPanes)(a.root))if(n.tabs.some(t=>t.id===e))return t().focusPane(n.id),t().switchTabInPane(n.id,e),!0;return!1},focusPrevTab:()=>{let{layout:e}=t();if(!e)return;let a=(0,p.collectPanes)(e.root),n=a.find(t=>t.id===e.activePaneId);if(!n)return;let s=[...n.tabs].sort((e,t)=>e.order-t.order),i=s.findIndex(e=>e.id===n.activeTabId);if(i>0)t().switchTabInPane(n.id,s[i-1].id);else{let e=a.indexOf(n);if(e>0){let n=a[e-1],s=[...n.tabs].sort((e,t)=>e.order-t.order);t().focusPane(n.id),t().switchTabInPane(n.id,s[s.length-1].id)}}},focusNextTab:()=>{let{layout:e}=t();if(!e)return;let a=(0,p.collectPanes)(e.root),n=a.find(t=>t.id===e.activePaneId);if(!n)return;let s=[...n.tabs].sort((e,t)=>e.order-t.order),i=s.findIndex(e=>e.id===n.activeTabId);if(i<s.length-1)t().switchTabInPane(n.id,s[i+1].id);else{let e=a.indexOf(n);if(e<a.length-1){let n=a[e+1],s=[...n.tabs].sort((e,t)=>e.order-t.order);t().focusPane(n.id),t().switchTabInPane(n.id,s[0].id)}}},focusTabByIndex:e=>{let{layout:a}=t();if(!a?.activePaneId)return;let n=(0,p.collectPanes)(a.root).find(e=>e.id===a.activePaneId);if(!n)return;let s=[...n.tabs].sort((e,t)=>e.order-t.order),i=e>=s.length?s[s.length-1]:s[e];i&&i.id!==n.activeTabId&&t().switchTabInPane(n.id,i.id)}}));O.subscribe((e,t)=>{if(e.layout&&e.workspaceId&&e.layout!==t.layout){var a=e.workspaceId,n=e.layout;try{for(let e of(n.activePaneId&&sessionStorage.setItem(`${f}${a}`,n.activePaneId),(0,p.collectPanes)(n.root)))for(let t of(e.activeTabId&&sessionStorage.setItem(`${b}${e.id}`,e.activeTabId),e.tabs))void 0!==t.terminalRatio&&sessionStorage.setItem(`${m}${t.id}`,String(t.terminalRatio)),void 0!==t.terminalCollapsed&&sessionStorage.setItem(`${y}${t.id}`,t.terminalCollapsed?"1":"0")}catch{}}});let E=(e,t)=>{let n=O.getState();if("/"!==a.default.pathname){O.setState({pendingFocusTabId:t}),c.default.getState().switchWorkspace(e),a.default.push("/");return}e===n.workspaceId?n.focusTab(t):(n.clearLayout(),O.setState({pendingFocusTabId:t}),c.default.getState().switchWorkspace(e))},F=async(e,t,a,n,s,i="claude")=>{let r=c.default.getState(),l="codex"===i?"codex-cli":"claude-code",d=e,u=r.workspaces.find(t=>t.id===e);if(!u){if(!s)return;let e=await r.createWorkspace(s,n,a??void 0,l);if(!e)return;d=e.id;let t=await fetch(k("/api/layout",d));if(!t.ok)return;let i=await t.json(),c=(0,p.collectAllTabs)(i.root)[0];if(!c)return;a&&o.default.getState().initTab(c.id,{panelType:l,sessionView:"check"}),E(d,c.id);return}let f=await fetch(k("/api/layout",d));if(!f.ok)return;let b=await f.json();if(a){let e=(0,p.collectAllTabs)(b.root).find(e=>"codex"===i?e.agentState?.providerId==="codex"&&e.agentState.sessionId===a:e.agentState?.providerId==="claude"?e.agentState.sessionId===a:e.claudeSessionId===a);if(e){o.default.getState().setSessionView(e.id,"timeline"),E(d,e.id);return}}else if((0,p.collectAllTabs)(b.root).find(e=>e.id===t))return void E(d,t);let m=b.activePaneId??(0,p.getFirstPaneId)(b.root),y={panelType:l,cwd:u.directories[0]};a&&(y.resumeSessionId=a);let S=await fetch(k(`/api/layout/pane/${m}/tabs`,d),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(y)});if(!S.ok)return;let g=await S.json();a&&o.default.getState().initTab(g.id,{panelType:l,sessionView:"check"}),d===O.getState().workspaceId?(O.setState({pendingFocusTabId:g.id}),O.getState().fetchLayout()):E(d,g.id)},L=({workspaceId:e,onFetchError:a})=>((0,t.useEffect)(()=>{I=a??null},[a]),(0,t.useEffect)(()=>{if(e){let t=O.getState();t.setWorkspaceId(e),t.fetchLayout(e)}},[e]),(0,t.useEffect)(()=>O.subscribe(e=>{let t=e.workspaceId;if(!t||!e.layout?.root)return;let a=(0,p.collectPanes)(e.layout.root).flatMap(e=>e.tabs.map(e=>e.id));o.default.getState().setTabOrder(t,a)}),[]),O((0,s.useShallow)(e=>({layout:e.layout,isLoading:e.isLoading,error:e.error,isSplitting:e.isSplitting,paneCount:e.paneCount,canSplit:e.canSplit,splitPane:e.splitPane,closePane:e.closePane,focusPane:e.focusPane,updateRatio:e.updateRatio,moveTab:e.moveTab,createTabInPane:e.createTabInPane,deleteTabInPane:e.deleteTabInPane,restartTabInPane:e.restartTabInPane,switchTabInPane:e.switchTabInPane,renameTabInPane:e.renameTabInPane,reorderTabsInPane:e.reorderTabsInPane,removeTabLocally:e.removeTabLocally,equalizeRatios:e.equalizeRatios,updateDiffSettings:e.updateDiffSettings,updateTabPanelType:e.updateTabPanelType,clearLayout:e.clearLayout,fetchLayout:e.fetchLayout,focusTab:e.focusTab,focusPrevTab:e.focusPrevTab,focusNextTab:e.focusNextTab,focusTabByIndex:e.focusTabByIndex}))))},453783,e=>{"use strict";e.s(["default",()=>c]);var t=e.i(505888),a=e.i(335288),n=e.i(806185);let s=null,i=new Map,r=new Map,l=()=>{s&&clearTimeout(s),s=setTimeout(()=>{s=null;let{metadata:e}=o.getState(),t=a.useLayoutStore.getState().layout,i=a.useLayoutStore.getState().workspaceId;if(!t||!i)return;let r=`?workspace=${i}`;for(let a of(0,n.collectPanes)(t.root))for(let t of a.tabs){let n=e[t.id];if(!n)continue;let s={};void 0!==n.title&&n.title!==t.title&&(s.title=n.title),void 0!==n.cwd&&n.cwd!==t.cwd&&(s.cwd=n.cwd),void 0!==n.lastCommand&&(n.lastCommand??null)!==(t.lastCommand??null)&&(s.lastCommand=n.lastCommand??null),Object.keys(s).length>0&&fetch(`/api/layout/pane/${a.id}/tabs/${t.id}${r}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(s)}).catch(e=>{console.log(`[tab-metadata] sync failed: ${e instanceof Error?e.message:e}`)})}},100)},o=(0,t.create)(e=>({metadata:{},setTitle:(t,a)=>{e(e=>{let n=e.metadata[t];return n?.title===a?e:(i.set(t,Date.now()),{metadata:{...e.metadata,[t]:{...n,title:a}}})}),l()},setCwd:(t,a)=>{e(e=>{let n=e.metadata[t];return n?.cwd===a?e:(r.set(t,Date.now()),{metadata:{...e.metadata,[t]:{...n,cwd:a}}})}),l()},setLastCommand:(t,a)=>{e(e=>{let n=e.metadata[t];return n?.lastCommand===a?e:{metadata:{...e.metadata,[t]:{...n,lastCommand:a}}}}),l()},removeTab:t=>{e(e=>{let{[t]:a,...n}=e.metadata;return{metadata:n}}),l()},hydrate:t=>{e(e=>{let a={},n=Date.now();for(let[s,l]of Object.entries(t)){let t=e.metadata[s],o=n-(i.get(s)??0)<1e3,c=n-(r.get(s)??0)<1e3;a[s]={...l,...o&&t?.title!==void 0?{title:t.title}:{},...c&&t?.cwd!==void 0?{cwd:t.cwd}:{}}}return{metadata:a}})},retainOnly:t=>{e(e=>{let a={};for(let n of t)e.metadata[n]&&(a[n]=e.metadata[n]);return{metadata:a}})},reset:()=>{s&&clearTimeout(s),s=null,i.clear(),r.clear(),e({metadata:{}})}})),c=o},15623,e=>{"use strict";let t=(0,e.i(505888).create)(e=>({data:null,setData:t=>e({data:t})}));e.s(["default",0,t])},237022,e=>{"use strict";var t=e.i(505888);let a={phase:"idle",status:null,branch:null,error:null,lastFetchedAt:null},n=e=>e?e.staged+e.modified+e.untracked:0,s=(0,t.create)((e,t)=>({cwdKey:null,tmuxSession:null,...a,requestSeq:0,resetForTarget:({cwdKey:t,tmuxSession:n})=>{e(e=>e.cwdKey===t?e.tmuxSession===n?e:{tmuxSession:n}:{...a,cwdKey:t,tmuxSession:n,requestSeq:e.requestSeq+1})},fetchForTarget:async({cwdKey:a,tmuxSession:n},s)=>{if(!a||!n)return void t().resetForTarget({cwdKey:null,tmuxSession:null});let i=t(),r=i.cwdKey!==a,l=null!==i.lastFetchedAt&&Date.now()-i.lastFetchedAt<15e3;if(!r&&!s?.force&&l&&"error"!==i.phase){i.tmuxSession!==n&&e({tmuxSession:n});return}let o=i.requestSeq+1;e({cwdKey:a,tmuxSession:n,phase:"loading",status:r?null:i.status,branch:r?null:i.branch,error:null,lastFetchedAt:null,requestSeq:o});try{let a=new URLSearchParams({tmuxSession:n});s?.force&&a.set("force","true");let i=await fetch(`/api/git/status?${a.toString()}`,{cache:"no-store"});if(!i.ok)throw Error(`status-${i.status}`);let r=await i.json();if(t().requestSeq!==o)return;if(!r.status)return void e({phase:"not-git",status:null,branch:null,error:null,lastFetchedAt:Date.now()});let l=null;try{let e=new URLSearchParams({tmuxSession:n});s?.force&&e.set("force","true");let t=await fetch(`/api/git/branch?${e.toString()}`,{cache:"no-store"});t.ok&&(l=(await t.json()).branch)}catch{l=null}if(t().requestSeq!==o)return;e({phase:"ready",status:r.status,branch:l,error:null,lastFetchedAt:Date.now()})}catch(a){if(t().requestSeq!==o)return;e({phase:"error",status:null,branch:null,error:a instanceof Error?a.message:String(a),lastFetchedAt:Date.now()})}}}));e.s(["default",0,s,"formatGitStatusSummary",0,(e,t,a,s)=>{if("idle"===e)return s;if("loading"===e)return"Checking Git status...";if("not-git"===e)return"Not a Git repository";if("error"===e)return"Git status unavailable";if(!a)return s;let i=n(a),r=[t??"Git",i>0?`${i} changed`:"clean"];return(a.insertions>0||a.deletions>0)&&r.push(`+${a.insertions} -${a.deletions}`),a.ahead>0&&r.push(`ahead ${a.ahead}`),a.behind>0&&r.push(`behind ${a.behind}`),a.stash>0&&r.push(`${a.stash} stash`),r.join(" · ")},"getGitStatusIndicators",0,e=>{if(!e)return[];let t=n(e),a=[];return t>0&&a.push({key:"changed",label:t>99?"99+":String(t),tone:"dirty"}),e.ahead>0&&a.push({key:"ahead",label:`↑${e.ahead}`,tone:"sync"}),e.behind>0&&a.push({key:"behind",label:`↓${e.behind}`,tone:"sync"}),e.stash>0&&a.push({key:"stash",label:`S${e.stash}`,tone:"stash"}),a}])},3450,251748,e=>{"use strict";var t=e.i(191788),a=e.i(399267),n=e.i(453783),s=e.i(15623),i=e.i(116962),r=e.i(237022),l=e.i(335288);let o=new Set(["zsh","bash","fish","sh","-zsh","-bash","-fish","-sh"]),c=new Set(["codex","Codex","node"]),d=e=>{if("~"===e||"/"===e)return e;let t=e.replace(/\/$/,"").split("/");return t[t.length-1]||e},u=e=>{let t=e.trim();if(!t)return null;let a=t.indexOf("|");return a>0?t.slice(0,a):null},p=(e,t)=>"codex-cli"===t&&c.has(e)?"Codex":e,f=(e,t)=>{let a=e.trim();if(!a)return"";let n=u(e);if(null!==n){let e=a.slice(a.indexOf("|")+1);return o.has(n)?d(e):p(n,t)}let s=a.match(/@[^:]+:\s*(.*)/);if(s)return d(s[1].trim());if(a.startsWith("/")||a.startsWith("~"))return d(a);let i=a.split(/\s+/)[0];return o.has(i)?"":p(i||"",t)};e.s(["formatTabTitle",0,f,"isShellProcess",0,e=>{let t=u(e);return null!==t&&o.has(t)},"parseCurrentCommand",0,u],251748);var b=e.i(806185);let m=null;e.s(["ackNotificationInput",0,(e,t)=>{m?.readyState===WebSocket.OPEN&&m.send(JSON.stringify({type:"status:ack-notification",tabId:e,seq:t}))},"default",0,()=>{let e=(0,t.useRef)(0),o=(0,t.useRef)(null),c=(0,t.useRef)(!0);(0,t.useEffect)(()=>{c.current=!0;let t=()=>{if(!c.current)return;let d="https:"===location.protocol?"wss:":"ws:",u=new WebSocket(`${d}//${location.host}/api/status`);m=u,u.onopen=()=>{c.current&&(e.current=0,a.default.getState().setStatusWsConnected(!0))},u.onmessage=e=>{if(c.current)try{let t=JSON.parse(e.data);switch(t.type){case"status:sync":for(let[e,s]of(a.default.getState().syncAllFromServer(t.tabs),Object.entries(t.tabs)))"agent-sessions"!==s.panelType&&s.paneTitle&&!n.default.getState().metadata[e]?.title&&n.default.getState().setTitle(e,f(s.paneTitle,s.panelType));break;case"status:update":a.default.getState().updateFromServer(t.tabId,{cliState:t.cliState,workspaceId:t.workspaceId,tabName:t.tabName,panelType:t.panelType,terminalStatus:t.terminalStatus,listeningPorts:t.listeningPorts,currentProcess:t.currentProcess,agentProviderId:t.agentProviderId,agentSessionId:t.agentSessionId,agentSummary:t.agentSummary,lastUserMessage:t.lastUserMessage,lastAssistantMessage:t.lastAssistantMessage,currentAction:t.currentAction,readyForReviewAt:t.readyForReviewAt,busySince:t.busySince,dismissedAt:t.dismissedAt,compactingSince:t.compactingSince,permissionRequest:t.permissionRequest,lastEvent:t.lastEvent,eventSeq:t.eventSeq}),t.paneTitle&&"agent-sessions"!==t.panelType&&n.default.getState().setTitle(t.tabId,f(t.paneTitle,t.panelType));break;case"status:hook-event":a.default.getState().applyHookEvent(t.tabId,t.event),((e,t)=>{if("stop"!==t.name)return;let a=r.default.getState();if(!a.cwdKey||!a.tmuxSession)return;let n=l.useLayoutStore.getState().layout;if(!n)return;let s=(0,b.collectAllTabs)(n.root).find(t=>t.id===e);s&&s.sessionName===a.tmuxSession&&a.fetchForTarget({cwdKey:a.cwdKey,tmuxSession:a.tmuxSession},{force:!0})})(t.tabId,t.event);break;case"rate-limits:update":s.default.getState().setData(t.data);break;case"session-history:sync":i.default.getState().syncFromServer(t.entries);break;case"session-history:update":i.default.getState().upsertEntry(t.entry)}}catch{}},u.onclose=()=>{if(!c.current)return;a.default.getState().setStatusWsConnected(!1),m=null;let n=Math.min(1e3*Math.pow(2,e.current),3e4);e.current++,o.current=setTimeout(t,n)},u.onerror=()=>{}};t();let d=()=>{if("visible"!==document.visibilityState)return;let a=m?.readyState;a!==WebSocket.OPEN&&a!==WebSocket.CONNECTING&&(o.current&&(clearTimeout(o.current),o.current=null),e.current=0,t())};return document.addEventListener("visibilitychange",d),()=>{c.current=!1,o.current&&(clearTimeout(o.current),o.current=null),m&&(m.close(),m=null),document.removeEventListener("visibilitychange",d)}},[])},"dismissTab",0,e=>{a.default.getState().dismissTab(e),m?.readyState===WebSocket.OPEN&&m.send(JSON.stringify({type:"status:tab-dismissed",tabId:e}))},"requestSync",0,()=>{m?.readyState===WebSocket.OPEN&&m.send(JSON.stringify({type:"status:request-sync"}))}],3450)}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,399267,e=>{"use strict";var t=e.i(505888);let a={terminalConnected:!1,agentProcess:null,agentProcessCheckedAt:0,agentInstalled:!0,sessionView:"session-list",cliState:"inactive",isTimelineLoading:!0,workspaceId:""},n=(e,t,a)=>{let n=e[t];return n?{...e,[t]:{...n,...a}}:e},s=(e,t)=>null!=t&&"inactive"!==t&&"unknown"!==t&&"cancelled"!==t&&"check"===e?"timeline":e,i=(e,t)=>t.agentProviderId||"terminal"!==e.panelType||!0!==e.agentProcess?{}:{agentProviderId:e.agentProviderId,agentSessionId:e.agentSessionId},r=(0,t.create)(e=>({tabs:{},tabOrders:{},statusWsConnected:!1,initTab:(t,n)=>e(e=>{let s=e.tabs[t],i={...a,...s,...n};return s?.cliState==="ready-for-review"&&"ready-for-review"!==i.cliState&&(i.cliState="ready-for-review",i.readyForReviewAt=s.readyForReviewAt),{tabs:{...e.tabs,[t]:i}}}),removeTab:t=>e(e=>{let{[t]:a,...n}=e.tabs;return{tabs:n}}),setTerminalConnected:(t,a)=>e(e=>{let s=e.tabs[t];return s&&s.terminalConnected!==a?{tabs:n(e.tabs,t,{terminalConnected:a})}:e}),setAgentProcess:(t,a,s)=>e(e=>{let i=e.tabs[t];if(!i||i.agentProcessCheckedAt>s)return e;let r={agentProcess:a,agentProcessCheckedAt:s};return(!0===a&&("check"===i.sessionView||"session-list"===i.sessionView)&&(r.sessionView="timeline"),!1===a&&!0===i.agentProcess&&"timeline"===i.sessionView&&(r.sessionView="session-list"),i.agentProcess===a&&i.agentProcessCheckedAt===s&&void 0===r.sessionView)?e:{tabs:n(e.tabs,t,r)}}),setAgentInstalled:(t,a)=>e(e=>{let s=e.tabs[t];return s&&s.agentInstalled!==a?{tabs:n(e.tabs,t,{agentInstalled:a})}:e}),setSessionView:(t,a)=>e(e=>{let s=e.tabs[t];return s&&s.sessionView!==a?{tabs:n(e.tabs,t,{sessionView:a})}:e}),setTimelineLoading:(t,a)=>e(e=>{let s=e.tabs[t];return s&&s.isTimelineLoading!==a?{tabs:n(e.tabs,t,{isTimelineLoading:a})}:e}),setSessionMetaCache:(t,a)=>e(e=>{let s=e.tabs[t];if(!s)return e;let i=s.sessionMetaCache;return i&&i.sessionId===a.sessionId&&i.jsonlPath===a.jsonlPath&&i.meta===a.meta?e:{tabs:n(e.tabs,t,{sessionMetaCache:a})}}),cancelTab:t=>e(e=>{let a=e.tabs[t];return a&&"cancelled"!==a.cliState?{tabs:n(e.tabs,t,{cliState:"cancelled",localUpdatedAt:Date.now()})}:e}),dismissTab:t=>e(e=>{let a=e.tabs[t];return a&&"ready-for-review"===a.cliState?{tabs:n(e.tabs,t,{cliState:"idle",dismissedAt:Date.now()})}:e}),setWorkspaceId:(t,a)=>e(e=>{let s=e.tabs[t];return s&&s.workspaceId!==a?{tabs:n(e.tabs,t,{workspaceId:a})}:e}),setPanelType:(t,a)=>e(e=>{let s=e.tabs[t];return s&&s.panelType!==a?{tabs:n(e.tabs,t,{panelType:a})}:e}),setCurrentProcess:(t,a)=>e(e=>{let s=e.tabs[t];if(!s)return e;let i=a??void 0;return s.currentProcess===i?e:{tabs:n(e.tabs,t,{currentProcess:i,localUpdatedAt:Date.now()})}}),setDetectedAgent:(t,a)=>e(e=>{let s=e.tabs[t],i=a.checkedAt??Date.now();if(!s||s.agentProcessCheckedAt>i)return e;let r={agentProcess:a.running,agentProcessCheckedAt:i};return a.running?(a.providerId&&(r.agentProviderId=a.providerId),void 0!==a.sessionId&&(r.agentSessionId=a.sessionId),("check"===s.sessionView||"session-list"===s.sessionView)&&(r.sessionView="timeline")):"terminal"===s.panelType?(r.agentProviderId=void 0,r.agentSessionId=null,!0===s.agentProcess&&"timeline"===s.sessionView&&(r.sessionView="session-list")):"timeline"===s.sessionView&&(!0===s.agentProcess||s.agentSessionId&&!s.isTimelineLoading)&&(r.sessionView="session-list"),{tabs:n(e.tabs,t,r)}}),setTabOrder:(t,a)=>e(e=>{let n=e.tabOrders[t];return n&&n.length===a.length&&n.every((e,t)=>e===a[t])?e:{tabOrders:{...e.tabOrders,[t]:a}}}),setStatusWsConnected:t=>e({statusWsConnected:t}),syncAllFromServer:t=>e(e=>{let n=Date.now(),r={};for(let[l,o]of Object.entries(t)){let t=e.tabs[l];if(t?.cliState==="cancelled"){r[l]=t;continue}t?.localUpdatedAt&&n-t.localUpdatedAt<3e4?r[l]={...t,cliState:o.cliState,workspaceId:o.workspaceId,tabName:o.tabName,terminalStatus:o.terminalStatus,listeningPorts:o.listeningPorts,agentProviderId:o.agentProviderId,agentSessionId:o.agentSessionId,...i(t,o),agentSummary:o.agentSummary,lastUserMessage:o.lastUserMessage,lastAssistantMessage:o.lastAssistantMessage,currentAction:o.currentAction,readyForReviewAt:o.readyForReviewAt,busySince:o.busySince,dismissedAt:o.dismissedAt,compactingSince:o.compactingSince,permissionRequest:o.permissionRequest,lastEvent:o.lastEvent,eventSeq:o.eventSeq,sessionView:s(t.sessionView,o.cliState)}:t?r[l]={...t,cliState:o.cliState,workspaceId:o.workspaceId,tabName:o.tabName,panelType:o.panelType??t.panelType,terminalStatus:o.terminalStatus,listeningPorts:o.listeningPorts,currentProcess:o.currentProcess,agentProviderId:o.agentProviderId,agentSessionId:o.agentSessionId,...i(t,o),agentSummary:o.agentSummary,lastUserMessage:o.lastUserMessage,lastAssistantMessage:o.lastAssistantMessage,currentAction:o.currentAction,readyForReviewAt:o.readyForReviewAt,busySince:o.busySince,dismissedAt:o.dismissedAt,compactingSince:o.compactingSince,permissionRequest:o.permissionRequest,lastEvent:o.lastEvent,eventSeq:o.eventSeq,sessionView:s(t.sessionView,o.cliState)}:r[l]={...a,cliState:o.cliState,workspaceId:o.workspaceId,tabName:o.tabName,panelType:o.panelType,terminalStatus:o.terminalStatus,listeningPorts:o.listeningPorts,currentProcess:o.currentProcess,agentProviderId:o.agentProviderId,agentSessionId:o.agentSessionId,agentSummary:o.agentSummary,lastUserMessage:o.lastUserMessage,lastAssistantMessage:o.lastAssistantMessage,currentAction:o.currentAction,readyForReviewAt:o.readyForReviewAt,busySince:o.busySince,dismissedAt:o.dismissedAt,compactingSince:o.compactingSince,permissionRequest:o.permissionRequest,lastEvent:o.lastEvent,eventSeq:o.eventSeq,sessionView:s(a.sessionView,o.cliState)}}for(let[t,a]of Object.entries(e.tabs))r[t]||(r[t]=a);return{tabs:r}}),updateFromServer:(t,r)=>e(e=>{if(null===r.cliState){let{[t]:a,...n}=e.tabs;return{tabs:n}}let l=e.tabs[t];if(l){if("cancelled"===l.cliState)return e;let a=void 0!==r.eventSeq&&void 0!==l.eventSeq&&r.eventSeq<l.eventSeq,o=void 0!==r.eventSeq&&(void 0===l.eventSeq||r.eventSeq>=l.eventSeq)?{lastEvent:r.lastEvent,eventSeq:r.eventSeq}:{},c=a?{cliState:l.cliState,readyForReviewAt:l.readyForReviewAt,busySince:l.busySince,dismissedAt:l.dismissedAt}:{cliState:r.cliState,readyForReviewAt:r.readyForReviewAt,busySince:r.busySince,dismissedAt:r.dismissedAt};return{tabs:n(e.tabs,t,{...c,workspaceId:r.workspaceId,tabName:r.tabName,panelType:r.panelType??l.panelType,terminalStatus:r.terminalStatus,listeningPorts:r.listeningPorts,currentProcess:r.currentProcess,agentProviderId:r.agentProviderId,agentSessionId:r.agentSessionId,...i(l,r),agentSummary:r.agentSummary,lastUserMessage:r.lastUserMessage,lastAssistantMessage:r.lastAssistantMessage,currentAction:r.currentAction,compactingSince:r.compactingSince,permissionRequest:r.permissionRequest,sessionView:s(l.sessionView,r.cliState),...o})}}return{tabs:{...e.tabs,[t]:{...a,cliState:r.cliState,workspaceId:r.workspaceId,tabName:r.tabName,panelType:r.panelType,terminalStatus:r.terminalStatus,listeningPorts:r.listeningPorts,currentProcess:r.currentProcess,agentProviderId:r.agentProviderId,agentSessionId:r.agentSessionId,agentSummary:r.agentSummary,lastUserMessage:r.lastUserMessage,lastAssistantMessage:r.lastAssistantMessage,readyForReviewAt:r.readyForReviewAt,busySince:r.busySince,dismissedAt:r.dismissedAt,compactingSince:r.compactingSince,permissionRequest:r.permissionRequest,lastEvent:r.lastEvent,eventSeq:r.eventSeq,sessionView:s(a.sessionView,r.cliState)}}}}),applyHookEvent:(t,a)=>e(e=>{let s=e.tabs[t];if(!s||void 0!==s.eventSeq&&a.seq<=s.eventSeq)return e;let i=((e,t)=>{if(!e||"cancelled"===t)return t;switch(e.name){case"session-start":case"interrupt":return"idle";case"prompt-submit":return"busy";case"notification":return"needs-input";case"stop":return"ready-for-review"}})(a,s.cliState);return{tabs:n(e.tabs,t,{cliState:i,lastEvent:a,eventSeq:a.seq,readyForReviewAt:"ready-for-review"===i?Date.now():null,busySince:"busy"===i?Date.now():null,dismissedAt:"busy"===i?null:s.dismissedAt,permissionRequest:"needs-input"===s.cliState&&"needs-input"!==i?null:s.permissionRequest})}})}));e.s(["default",0,r,"getInitialTabStateFromLayoutTab",0,e=>{let t={panelType:e.panelType},a=e.agentState?.providerId??("codex-cli"===e.panelType?"codex":"claude-code"===e.panelType?"claude":void 0),n=e.agentState?.sessionId??e.claudeSessionId??null;return a&&(t.agentProviderId=a),n&&(t.agentSessionId=n,t.agentSummary=e.agentState?.summary??e.claudeSummary??null,t.sessionView="timeline"),t},"isCliIdle",0,e=>"idle"===e||"ready-for-review"===e,"selectGlobalStatus",0,e=>{let t=0,a=0;for(let n of Object.values(e))"busy"===n.cliState?t++:("ready-for-review"===n.cliState||"needs-input"===n.cliState)&&a++;return{busyCount:t,attentionCount:a}},"selectSessionView",0,(e,t)=>{let a=e[t];return a?a.sessionView:"session-list"},"selectTabDisplayStatus",0,(e,t)=>{let a=e[t];return a&&"inactive"!==a.cliState?"busy"===a.cliState?"busy":"ready-for-review"===a.cliState?"ready-for-review":"needs-input"===a.cliState?"needs-input":"unknown"===a.cliState?"unknown":"idle":"idle"},"selectWorkspacePortsLabel",0,(e,t)=>{let a=new Set;for(let n of Object.values(e))if(n.workspaceId===t&&n.listeningPorts)for(let e of n.listeningPorts)a.add(e);return 0===a.size?"":":"+[...a].sort((e,t)=>e-t).join(", :")}],399267)},266231,e=>{"use strict";var t=e.i(191788);let a=768;e.s(["default",0,(e=a)=>{let n=`(max-width: ${e-1}px)`,s=(0,t.useCallback)(e=>{let t=window.matchMedia(n);return t.addEventListener("change",e),()=>t.removeEventListener("change",e)},[n]),i=(0,t.useCallback)(()=>window.matchMedia(n).matches,[n]),r=(0,t.useCallback)(()=>!1,[]);return(0,t.useSyncExternalStore)(s,i,r)}])},117653,e=>{"use strict";var t=e.i(191788);let a=(e,t)=>{let a=e instanceof Map?e:new Map(e.entries()),n=t instanceof Map?t:new Map(t.entries());if(a.size!==n.size)return!1;for(let[e,t]of a)if(!n.has(e)||!Object.is(t,n.get(e)))return!1;return!0};e.s(["useShallow",0,function(e){let n=t.default.useRef(void 0);return t=>{let s=e(t);return!function(e,t){if(Object.is(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t))return!1;if(Symbol.iterator in e&&Symbol.iterator in t){if("entries"in e&&"entries"in t)return a(e,t);let n=e[Symbol.iterator](),s=t[Symbol.iterator](),i=n.next(),r=s.next();for(;!i.done&&!r.done;){if(!Object.is(i.value,r.value))return!1;i=n.next(),r=s.next()}return!!i.done&&!!r.done}return a({entries:()=>Object.entries(e)},{entries:()=>Object.entries(t)})}(n.current,s)?n.current=s:n.current}}],117653)},116962,e=>{"use strict";let t=(0,e.i(505888).create)(e=>({entries:[],syncFromServer:t=>e({entries:t}),upsertEntry:t=>e(e=>{let a=e.entries.findIndex(e=>e.id===t.id);if(a>=0){let n=[...e.entries];return n[a]=t,{entries:n}}return{entries:[t,...e.entries]}})}));e.s(["default",0,t])},358915,e=>{"use strict";var t=e.i(191788),a=e.i(679935),n=e.i(844044),s=e.i(399267);let i=new Set(["/new","/clear"]),r=e=>`pt-input-draft:${e}`,l=e=>{try{localStorage.removeItem(r(e))}catch{}};e.s(["clearInputDraft",0,l,"default",0,(e,o,c,d)=>{let u=d?.tabId,[p,f]=(0,t.useState)(()=>u?(e=>{try{return localStorage.getItem(r(e))??""}catch{return""}})(u):""),b=(0,t.useRef)(null),m=(0,t.useMemo)(()=>(0,s.isCliIdle)(e)||"unknown"===e?"input":"busy"===e||"needs-input"===e?"interrupt":"disabled",[e]),y=d?.onRestartSession,S=d?.onMessageSent,g=d?.submitDelayMs??250,h=(0,t.useRef)(null);(0,t.useEffect)(()=>{if(u)return h.current&&clearTimeout(h.current),h.current=setTimeout(()=>((e,t)=>{try{t?localStorage.setItem(r(e),t):localStorage.removeItem(r(e))}catch{}})(u,p),300),()=>{h.current&&clearTimeout(h.current)}},[u,p]);let v=(0,t.useCallback)(()=>{if("disabled"===m)return void a.toast.error(d?.disabledMessage??(0,n.t)("terminal","inputDisabledPlaceholder"));if(!c)return void a.toast.error((0,n.t)("connection","terminalDisconnected"));if(""!==p.trim()){if(i.has(p.trim().toLowerCase())){y?.(),f(""),u&&l(u);return}p.includes("\n")?o(`\x1b[200~${p}\x1b[201~`):o(p),setTimeout(()=>o("\r"),g),p.trim().startsWith("/")||S?.(p.trim()),f(""),u&&l(u)}},[m,p,o,c,y,S,u,d?.disabledMessage,g]),I=(0,t.useCallback)(()=>{c?o("\x1b\x1b"):a.toast.error((0,n.t)("connection","terminalDisconnected"))},[o,c]),w=(0,t.useCallback)(()=>{let e=b.current;if(!e)return;e.focus();let t=e.value.length;e.setSelectionRange(t,t)},[]),T="disabled"!==m&&c;return{value:p,setValue:f,mode:m,canSend:T,send:v,interrupt:I,textareaRef:b,focusInput:w}}])},898589,e=>{"use strict";let t=e=>"web-browser"===e?"Web Browser":"";e.s(["resolveTabNameForPanelTypeChange",0,(e,a,n)=>{let s=t(a),i="agent-sessions"===a?"Session List":"",r=t(n),l=e.trim();return!l&&r||(""!==s&&l===s||""!==i&&l===i)&&l!==r?r:e}])},806185,e=>{"use strict";let t=e=>"pane"===e.type?[e]:[...t(e.children[0]),...t(e.children[1])],a=(e,t)=>"pane"===e.type?e.id===t?e:null:a(e.children[0],t)||a(e.children[1],t),n=e=>"pane"===e.type?e.id:n(e.children[0]),s=e=>"pane"===e.type?e.id:s(e.children[1]),i=(e,t)=>{if("pane"===e.type)return null;let[a,n]=e.children;if("pane"===a.type&&a.id===t)return n;if("pane"===n.type&&n.id===t)return a;let s=i(a,t);if(s)return{...e,children:[s,n]};let r=i(n,t);return r?{...e,children:[a,r]}:null},r=(e,t)=>{if("pane"===e.type)return null;let[a,i]=e.children;return"pane"===a.type&&a.id===t?n(i):"pane"===i.type&&i.id===t?s(a):r(a,t)||r(i,t)},l=(e,t,a)=>{if("split"!==e.type)return e;if(0===t.length)return{...e,ratio:a};let[n,...s]=t,i=[e.children[0],e.children[1]];return i[n]=l(e.children[n],s,a),{...e,children:i}},o=(e,t)=>"pane"===e.type||e.orientation!==t?1:o(e.children[0],t)+o(e.children[1],t),c=e=>{if("pane"===e.type)return e;let t=o(e.children[0],e.orientation),a=Math.round(t/(t+o(e.children[1],e.orientation))*1e4)/100;return{...e,ratio:a,children:[c(e.children[0]),c(e.children[1])]}},d=(e,t,a)=>{if("pane"===e.type)return e.id===t?a(e):e;let n=d(e.children[0],t,a);if(n!==e.children[0])return{...e,children:[n,e.children[1]]};let s=d(e.children[1],t,a);return s!==e.children[1]?{...e,children:[e.children[0],s]}:e};e.s(["collectAllTabs",0,e=>t(e).flatMap(e=>e.tabs),"collectPanes",0,t,"equalizeNode",0,c,"findAdjacentPaneInDirection",0,(e,t,a)=>{let i=[],r=e=>{if("pane"===e.type)return e.id===t;for(let t=0;t<2;t++){if(i.push({node:e,childIndex:t}),r(e.children[t]))return!0;i.pop()}return!1};if(!r(e))return null;let l="left"===a||"right"===a?"horizontal":"vertical",o=+("left"===a||"up"===a);for(let e=i.length-1;e>=0;e--){let{node:t,childIndex:r}=i[e];if("split"===t.type&&t.orientation===l&&r===o){let e=t.children[1-o];return"left"===a||"up"===a?s(e):n(e)}}return null},"findPane",0,a,"findResizeTarget",0,(e,t,a)=>{let n=[],s=e=>{if("pane"===e.type)return e.id===t;for(let t=0;t<2;t++){if(n.push({node:e,childIndex:t}),s(e.children[t]))return!0;n.pop()}return!1};if(!s(e))return null;let i="left"===a||"right"===a?"horizontal":"vertical",r=+("right"!==a&&"down"!==a),l="right"===a||"down"===a;for(let e=n.length-1;e>=0;e--){let{node:t,childIndex:a}=n[e];if("split"===t.type&&t.orientation===i&&a===r)return{path:n.slice(0,e).map(e=>e.childIndex),currentRatio:t.ratio,increase:l}}return null},"getFirstPaneId",0,n,"removePaneWithFocus",0,(e,a)=>{let n=r(e.root,a),s=i(e.root,a);s&&(e.root=s),e.activePaneId===a&&(e.activePaneId=n??t(e.root)[0]?.id??null)},"updatePaneInTree",0,d,"updateRatioAtPath",0,l])},335288,e=>{"use strict";e.s(["default",()=>L,"navigateToTab",()=>E,"navigateToTabOrCreate",()=>F,"useLayoutStore",()=>O]);var t=e.i(191788),a=e.i(203828),n=e.i(505888),s=e.i(117653),i=e.i(679935),r=e.i(844044),l=e.i(358915),o=e.i(399267),c=e.i(490034),d=e.i(453783),u=e.i(898589),p=e.i(806185);let f="pt-active-pane-",b="pt-active-tab-",m="pt-terminal-ratio-",y="pt-terminal-collapsed-",S=e=>{try{return sessionStorage.getItem(`${b}${e}`)}catch{return null}},g=e=>{try{let t=sessionStorage.getItem(`${m}${e}`);if(null==t)return null;let a=Number(t);return Number.isFinite(a)?a:null}catch{return null}},h=e=>{try{let t=sessionStorage.getItem(`${y}${e}`);if(null==t)return null;return"1"===t}catch{return null}},v=null,I=null,w=null,T=!1,P=new Map,k=(e,t)=>{if(!t)return e;let a=e.includes("?")?"&":"?";return`${e}${a}workspace=${t}`},A=(e,t)=>{let a=e?(0,p.collectPanes)(e.root).length:0;return{paneCount:a,canSplit:a<10&&!t}},C=(e,t,a)=>{e({layout:a,...A(a,t().isSplitting)})},$=(e,t,a)=>{let n=t().layout;if(n){let e=(0,p.collectPanes)(a.root);for(let t of(n.activePaneId&&e.some(e=>e.id===n.activePaneId)&&(a.activePaneId=n.activePaneId),e)){let e=(0,p.findPane)(n.root,t.id);e?.activeTabId&&t.tabs.some(t=>t.id===e.activeTabId)&&(t.activeTabId=e.activeTabId)}}e({layout:a,...A(a,t().isSplitting)})},q=(e,t,a,n)=>{let{layout:s}=t();if(!s)return;let i=(0,p.updatePaneInTree)(s.root,a,n);i!==s.root&&C(e,t,{...s,root:i})},R=async(e,t)=>{try{let a=await fetch(e,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!a.ok)return null;return await a.json()}catch{return null}},O=(0,n.create)((e,t)=>({layout:null,isLoading:!0,error:null,isSplitting:!1,workspaceId:null,retryCount:0,paneCount:0,canSplit:!1,pendingFocusTabId:null,setWorkspaceId:t=>{T=!1,e({workspaceId:t})},setLayout:a=>{C(e,t,a)},fetchLayout:async(a,n)=>{if(T)return;let s=a??t().workspaceId;if(!s)return;v?.abort();let l=new AbortController;v=l,t().layout||e({isLoading:!0,error:null});try{let a=await fetch(k("/api/layout",s),{signal:l.signal});if(!a.ok)throw Error();let i=await a.json();if(l.signal.aborted)return;let r=t().layout;if(!1!==n){let e=(0,p.collectPanes)(i.root);if(r)for(let t of(r.activePaneId&&e.some(e=>e.id===r.activePaneId)&&(i.activePaneId=r.activePaneId),e)){let e=(0,p.findPane)(r.root,t.id);e?.activeTabId&&t.tabs.some(t=>t.id===e.activeTabId)&&(t.activeTabId=e.activeTabId)}else{let t=(e=>{try{return sessionStorage.getItem(`${f}${e}`)}catch{return null}})(s);for(let a of(t&&e.some(e=>e.id===t)&&(i.activePaneId=t),e)){let e=S(a.id);for(let t of(e&&a.tabs.some(t=>t.id===e)&&(a.activeTabId=e),a.tabs)){let e=g(t.id);null!==e&&(t.terminalRatio=e);let a=h(t.id);null!==a&&(t.terminalCollapsed=a)}}}}if(r){let a={root:r.root,activePaneId:r.activePaneId},n={root:i.root,activePaneId:i.activePaneId};if(JSON.stringify(a)===JSON.stringify(n)){let a=t().pendingFocusTabId;a&&(e({pendingFocusTabId:null}),t().focusTab(a));return}}let o=t().pendingFocusTabId,c=null;if(o){for(let t of(e({pendingFocusTabId:null}),(0,p.collectPanes)(i.root)))if(t.tabs.some(e=>e.id===o)){i.activePaneId=t.id,t.activeTabId=o,c=t.id;break}}e({layout:i,retryCount:0,...A(i,t().isSplitting)}),c&&(R(k("/api/layout",s),{activePaneId:c}),R(k(`/api/layout/pane/${c}`,s),{activeTabId:o}))}catch(n){if(n instanceof DOMException&&"AbortError"===n.name)return;let a=t().retryCount+1;if(e({retryCount:a}),a>=3)try{let a=await fetch(k("/api/layout/pane",s),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})});if(a.ok){let{paneId:n,tab:s}=await a.json(),l={root:{type:"pane",id:n,tabs:[s],activeTabId:s.id},activePaneId:n,updatedAt:new Date().toISOString()};e({layout:l,...A(l,t().isSplitting)}),i.toast.info((0,r.t)("terminal","fallbackLayout")),e({retryCount:0});return}}catch{}e({error:(0,r.t)("terminal","layoutFetchError")}),I?.()}finally{l.signal.aborted||e({isLoading:!1})}},splitPane:async(a,n)=>{let{layout:s,isSplitting:l,workspaceId:o}=t();if(s&&!l&&!((0,p.collectPanes)(s.root).length>=10)){e({isSplitting:!0,canSplit:!1});try{let i,r,l=(0,p.findPane)(s.root,a),c=l?.tabs.find(e=>e.id===l.activeTabId);if(c){r=c.panelType;try{let e=await fetch(k(`/api/layout/cwd?session=${c.sessionName}`,o));e.ok&&(i=(await e.json()).cwd)}catch{}}let d=await fetch(k("/api/layout/pane",o),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sourcePaneId:a,orientation:n,cwd:i,panelType:r})});if(!d.ok)throw Error();let u=await d.json();C(e,t,u)}catch{i.toast.error((0,r.t)("terminal","splitFailed"))}finally{e(e=>({isSplitting:!1,canSplit:e.paneCount<10}))}}},closePane:async a=>{let{layout:n,workspaceId:s}=t();if(n&&!((0,p.collectPanes)(n.root).length<=1))try{let n=await fetch(k(`/api/layout/pane/${a}`,s),{method:"DELETE"});if(!n.ok)throw Error();let i=await n.json();C(e,t,i)}catch{i.toast.error("Pane을 닫을 수 없습니다")}},focusPane:a=>{let{layout:n,workspaceId:s}=t();n&&n.activePaneId!==a&&(e({layout:{...n,activePaneId:a}}),R(k("/api/layout",s),{activePaneId:a}).then(a=>{a&&$(e,t,a)}))},updateRatio:(a,n)=>{let{layout:s,workspaceId:i}=t();s&&(e({layout:{...s,root:(0,p.updateRatioAtPath)(s.root,a,n)}}),w&&clearTimeout(w),w=setTimeout(()=>{w=null,R(k("/api/layout",i),{ratioUpdate:{path:a,ratio:n}}).then(a=>{a&&$(e,t,a)})},300))},moveTab:(a,n,s,i)=>{if(n===s)return;let{layout:r,workspaceId:l}=t();if(!r)return;let o=JSON.parse(JSON.stringify(r)),c=(0,p.findPane)(o.root,n),d=(0,p.findPane)(o.root,s);if(c&&d){let r=c.tabs.findIndex(e=>e.id===a);if(-1!==r){let[l]=c.tabs.splice(r,1);c.activeTabId===a&&(c.activeTabId=c.tabs[0]?.id??null),c.tabs.forEach((e,t)=>{e.order=t}),d.tabs.splice(i,0,l),d.tabs.forEach((e,t)=>{e.order=t}),d.activeTabId=a,0===c.tabs.length&&(0,p.collectPanes)(o.root).length>1&&(0,p.removePaneWithFocus)(o,n),o.activePaneId=s,C(e,t,o)}}fetch(k(`/api/layout/pane/${n}/tabs/${a}/move`,l),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({toPaneId:s,toIndex:i})}).then(async a=>{a.ok?$(e,t,await a.json()):await t().fetchLayout(void 0,!1)}).catch(()=>t().fetchLayout(void 0,!1))},createTabInPane:async(a,n,s,l)=>{let{layout:c,workspaceId:u}=t();try{let i,r=n,f=c?(0,p.findPane)(c.root,a):void 0,b=f?.tabs.find(e=>e.id===f.activeTabId);!r&&b&&(r=b.panelType),"web-browser"!==r&&b&&(i=d.default.getState().metadata[b.id]?.cwd);let m=await fetch(k(`/api/layout/pane/${a}/tabs`,u),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:i,panelType:r,command:s,resumeSessionId:l})});if(!m.ok)throw Error();let y=await m.json();return(s||l)&&o.default.getState().initTab(y.id,{panelType:r,sessionView:"check"}),q(e,t,a,e=>({...e,tabs:[...e.tabs,y],activeTabId:y.id})),t().fetchLayout(),y}catch{return i.toast.error((0,r.t)("terminal","tabCreateFailed")),null}},deleteTabInPane:async(a,n)=>{(0,l.clearInputDraft)(n),o.default.getState().cancelTab(n),q(e,t,a,e=>{let t=[...e.tabs].sort((e,t)=>e.order-t.order),a=t.findIndex(e=>e.id===n),s=t.filter(e=>e.id!==n);s.forEach((e,t)=>{e.order=t});let i=e.activeTabId;if(e.activeTabId===n){let e=t[a+1]||t[a-1];i=e?.id??null}return{...e,tabs:s,activeTabId:i}});let{workspaceId:s}=t();try{let e=await fetch(k(`/api/layout/pane/${a}/tabs/${n}`,s),{method:"DELETE"});e.ok||404===e.status||(i.toast.error((0,r.t)("terminal","tabDeleteError")),await t().fetchLayout())}catch{i.toast.error((0,r.t)("terminal","tabDeleteError")),await t().fetchLayout()}},restartTabInPane:async(e,a,n)=>{let{workspaceId:s}=t();try{return(await fetch(k(`/api/layout/pane/${e}/tabs/${a}`,s),{method:"POST",headers:n?{"Content-Type":"application/json"}:void 0,body:n?JSON.stringify({command:n}):void 0})).ok}catch{return i.toast.error((0,r.t)("terminal","sessionRestartFailed")),!1}},switchTabInPane:(a,n)=>{q(e,t,a,e=>({...e,activeTabId:n}));let{workspaceId:s}=t();R(k(`/api/layout/pane/${a}`,s),{activeTabId:n}).then(a=>{a&&$(e,t,a)})},renameTabInPane:async(a,n,s)=>{q(e,t,a,e=>({...e,tabs:e.tabs.map(e=>e.id===n?{...e,name:s}:e)}));let{workspaceId:l}=t(),o=await R(k(`/api/layout/pane/${a}/tabs/${n}`,l),{name:s});o?$(e,t,o):i.toast.error((0,r.t)("terminal","tabRenameFailed"))},reorderTabsInPane:(a,n)=>{q(e,t,a,e=>{let t=new Map(e.tabs.map(e=>[e.id,e])),a=n.map((e,a)=>{let n=t.get(e);return n?{...n,order:a}:null}).filter(e=>null!==e);return{...e,tabs:a}});let{workspaceId:s}=t();R(k(`/api/layout/pane/${a}/tabs/order`,s),{tabIds:n}).then(a=>{a&&$(e,t,a)})},removeTabLocally:(e,a)=>{(0,l.clearInputDraft)(a);let{workspaceId:n}=t();fetch(k(`/api/layout/pane/${e}/tabs/${a}`,n),{method:"DELETE"}).then(()=>t().fetchLayout()).catch(()=>{console.log("[layout] removeTabLocally failed")})},equalizeRatios:()=>{let{workspaceId:a}=t();R(k("/api/layout",a),{equalize:!0}).then(a=>{a&&$(e,t,a)})},updateDiffSettings:a=>{let{layout:n,workspaceId:s}=t();n&&(C(e,t,{...n,diffSettings:{...n.diffSettings??{},...a}}),R(k("/api/layout",s),{diffSettings:a}).then(a=>{a&&$(e,t,a)}))},updateTabPanelType:(a,n,s)=>{let i;q(e,t,a,e=>({...e,tabs:e.tabs.map(e=>{if(e.id!==n)return e;let t=(0,u.resolveTabNameForPanelTypeChange)(e.name,e.panelType,s),a={...e,panelType:s,name:t};return t!==e.name&&(i=t),"codex-cli"===s&&"claude-code"===e.panelType&&(a.claudeSessionId=null,a.agentState=void 0),a})})),o.default.getState().setPanelType(n,s);let{workspaceId:r}=t();R(k(`/api/layout/pane/${a}/tabs/${n}`,r),{panelType:s,...void 0!==i?{name:i}:{}}).then(a=>{a&&$(e,t,a)})},updateTabTerminalLayout:(a,n,s)=>{q(e,t,a,e=>({...e,tabs:e.tabs.map(e=>e.id===n?{...e,...s}:e)}));try{void 0!==s.terminalRatio&&sessionStorage.setItem(`${m}${n}`,String(s.terminalRatio)),void 0!==s.terminalCollapsed&&sessionStorage.setItem(`${y}${n}`,s.terminalCollapsed?"1":"0")}catch{}let{workspaceId:i}=t(),r=P.get(n);r&&clearTimeout(r),P.set(n,setTimeout(()=>{P.delete(n),R(k(`/api/layout/pane/${a}/tabs/${n}`,i),s)},300))},clearLayout:()=>{T=!0,v?.abort(),e({layout:null,paneCount:0,canSplit:!1})},focusTab:e=>{let{layout:a}=t();if(!a)return!1;for(let n of(0,p.collectPanes)(a.root))if(n.tabs.some(t=>t.id===e))return t().focusPane(n.id),t().switchTabInPane(n.id,e),!0;return!1},focusPrevTab:()=>{let{layout:e}=t();if(!e)return;let a=(0,p.collectPanes)(e.root),n=a.findIndex(t=>t.id===e.activePaneId);if(-1===n)return;let s=a[n],i=[...s.tabs].sort((e,t)=>e.order-t.order),r=i.findIndex(e=>e.id===s.activeTabId);if(r>0)return void t().switchTabInPane(s.id,i[r-1].id);let l=a[(n-1+a.length)%a.length],o=[...l.tabs].sort((e,t)=>e.order-t.order);0!==o.length&&(l.id!==s.id&&t().focusPane(l.id),t().switchTabInPane(l.id,o[o.length-1].id))},focusNextTab:()=>{let{layout:e}=t();if(!e)return;let a=(0,p.collectPanes)(e.root),n=a.findIndex(t=>t.id===e.activePaneId);if(-1===n)return;let s=a[n],i=[...s.tabs].sort((e,t)=>e.order-t.order),r=i.findIndex(e=>e.id===s.activeTabId);if(-1!==r&&r<i.length-1)return void t().switchTabInPane(s.id,i[r+1].id);let l=a[(n+1)%a.length],o=[...l.tabs].sort((e,t)=>e.order-t.order);0!==o.length&&(l.id!==s.id&&t().focusPane(l.id),t().switchTabInPane(l.id,o[0].id))},focusTabByIndex:e=>{let{layout:a}=t();if(!a?.activePaneId)return;let n=(0,p.collectPanes)(a.root).find(e=>e.id===a.activePaneId);if(!n)return;let s=[...n.tabs].sort((e,t)=>e.order-t.order),i=e>=s.length?s[s.length-1]:s[e];i&&i.id!==n.activeTabId&&t().switchTabInPane(n.id,i.id)}}));O.subscribe((e,t)=>{if(e.layout&&e.workspaceId&&e.layout!==t.layout){var a=e.workspaceId,n=e.layout;try{for(let e of(n.activePaneId&&sessionStorage.setItem(`${f}${a}`,n.activePaneId),(0,p.collectPanes)(n.root)))for(let t of(e.activeTabId&&sessionStorage.setItem(`${b}${e.id}`,e.activeTabId),e.tabs))void 0!==t.terminalRatio&&sessionStorage.setItem(`${m}${t.id}`,String(t.terminalRatio)),void 0!==t.terminalCollapsed&&sessionStorage.setItem(`${y}${t.id}`,t.terminalCollapsed?"1":"0")}catch{}}});let E=(e,t)=>{let n=O.getState();if("/"!==a.default.pathname){O.setState({pendingFocusTabId:t}),c.default.getState().switchWorkspace(e),a.default.push("/");return}e===n.workspaceId?n.focusTab(t):(n.clearLayout(),O.setState({pendingFocusTabId:t}),c.default.getState().switchWorkspace(e))},F=async(e,t,a,n,s,i="claude")=>{let r=c.default.getState(),l="codex"===i?"codex-cli":"claude-code",d=e,u=r.workspaces.find(t=>t.id===e);if(!u){if(!s)return;let e=await r.createWorkspace(s,n,a??void 0,l);if(!e)return;d=e.id;let t=await fetch(k("/api/layout",d));if(!t.ok)return;let i=await t.json(),c=(0,p.collectAllTabs)(i.root)[0];if(!c)return;a&&o.default.getState().initTab(c.id,{panelType:l,sessionView:"check"}),E(d,c.id);return}let f=await fetch(k("/api/layout",d));if(!f.ok)return;let b=await f.json();if(a){let e=(0,p.collectAllTabs)(b.root).find(e=>"codex"===i?e.agentState?.providerId==="codex"&&e.agentState.sessionId===a:e.agentState?.providerId==="claude"?e.agentState.sessionId===a:e.claudeSessionId===a);if(e){o.default.getState().setSessionView(e.id,"timeline"),E(d,e.id);return}}else if((0,p.collectAllTabs)(b.root).find(e=>e.id===t))return void E(d,t);let m=b.activePaneId??(0,p.getFirstPaneId)(b.root),y={panelType:l,cwd:u.directories[0]};a&&(y.resumeSessionId=a);let S=await fetch(k(`/api/layout/pane/${m}/tabs`,d),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(y)});if(!S.ok)return;let g=await S.json();a&&o.default.getState().initTab(g.id,{panelType:l,sessionView:"check"}),d===O.getState().workspaceId?(O.setState({pendingFocusTabId:g.id}),O.getState().fetchLayout()):E(d,g.id)},L=({workspaceId:e,onFetchError:a})=>((0,t.useEffect)(()=>{I=a??null},[a]),(0,t.useEffect)(()=>{if(e){let t=O.getState();t.setWorkspaceId(e),t.fetchLayout(e)}},[e]),(0,t.useEffect)(()=>O.subscribe(e=>{let t=e.workspaceId;if(!t||!e.layout?.root)return;let a=(0,p.collectPanes)(e.layout.root).flatMap(e=>e.tabs.map(e=>e.id));o.default.getState().setTabOrder(t,a)}),[]),O((0,s.useShallow)(e=>({layout:e.layout,isLoading:e.isLoading,error:e.error,isSplitting:e.isSplitting,paneCount:e.paneCount,canSplit:e.canSplit,splitPane:e.splitPane,closePane:e.closePane,focusPane:e.focusPane,updateRatio:e.updateRatio,moveTab:e.moveTab,createTabInPane:e.createTabInPane,deleteTabInPane:e.deleteTabInPane,restartTabInPane:e.restartTabInPane,switchTabInPane:e.switchTabInPane,renameTabInPane:e.renameTabInPane,reorderTabsInPane:e.reorderTabsInPane,removeTabLocally:e.removeTabLocally,equalizeRatios:e.equalizeRatios,updateDiffSettings:e.updateDiffSettings,updateTabPanelType:e.updateTabPanelType,clearLayout:e.clearLayout,fetchLayout:e.fetchLayout,focusTab:e.focusTab,focusPrevTab:e.focusPrevTab,focusNextTab:e.focusNextTab,focusTabByIndex:e.focusTabByIndex}))))},453783,e=>{"use strict";e.s(["default",()=>c]);var t=e.i(505888),a=e.i(335288),n=e.i(806185);let s=null,i=new Map,r=new Map,l=()=>{s&&clearTimeout(s),s=setTimeout(()=>{s=null;let{metadata:e}=o.getState(),t=a.useLayoutStore.getState().layout,i=a.useLayoutStore.getState().workspaceId;if(!t||!i)return;let r=`?workspace=${i}`;for(let a of(0,n.collectPanes)(t.root))for(let t of a.tabs){let n=e[t.id];if(!n)continue;let s={};void 0!==n.title&&n.title!==t.title&&(s.title=n.title),void 0!==n.cwd&&n.cwd!==t.cwd&&(s.cwd=n.cwd),void 0!==n.lastCommand&&(n.lastCommand??null)!==(t.lastCommand??null)&&(s.lastCommand=n.lastCommand??null),Object.keys(s).length>0&&fetch(`/api/layout/pane/${a.id}/tabs/${t.id}${r}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(s)}).catch(e=>{console.log(`[tab-metadata] sync failed: ${e instanceof Error?e.message:e}`)})}},100)},o=(0,t.create)(e=>({metadata:{},setTitle:(t,a)=>{e(e=>{let n=e.metadata[t];return n?.title===a?e:(i.set(t,Date.now()),{metadata:{...e.metadata,[t]:{...n,title:a}}})}),l()},setCwd:(t,a)=>{e(e=>{let n=e.metadata[t];return n?.cwd===a?e:(r.set(t,Date.now()),{metadata:{...e.metadata,[t]:{...n,cwd:a}}})}),l()},setLastCommand:(t,a)=>{e(e=>{let n=e.metadata[t];return n?.lastCommand===a?e:{metadata:{...e.metadata,[t]:{...n,lastCommand:a}}}}),l()},removeTab:t=>{e(e=>{let{[t]:a,...n}=e.metadata;return{metadata:n}}),l()},hydrate:t=>{e(e=>{let a={},n=Date.now();for(let[s,l]of Object.entries(t)){let t=e.metadata[s],o=n-(i.get(s)??0)<1e3,c=n-(r.get(s)??0)<1e3;a[s]={...l,...o&&t?.title!==void 0?{title:t.title}:{},...c&&t?.cwd!==void 0?{cwd:t.cwd}:{}}}return{metadata:a}})},retainOnly:t=>{e(e=>{let a={};for(let n of t)e.metadata[n]&&(a[n]=e.metadata[n]);return{metadata:a}})},reset:()=>{s&&clearTimeout(s),s=null,i.clear(),r.clear(),e({metadata:{}})}})),c=o},15623,e=>{"use strict";let t=(0,e.i(505888).create)(e=>({data:null,setData:t=>e({data:t})}));e.s(["default",0,t])},237022,e=>{"use strict";var t=e.i(505888);let a={phase:"idle",status:null,branch:null,error:null,lastFetchedAt:null},n=e=>e?e.staged+e.modified+e.untracked:0,s=(0,t.create)((e,t)=>({cwdKey:null,tmuxSession:null,...a,requestSeq:0,resetForTarget:({cwdKey:t,tmuxSession:n})=>{e(e=>e.cwdKey===t?e.tmuxSession===n?e:{tmuxSession:n}:{...a,cwdKey:t,tmuxSession:n,requestSeq:e.requestSeq+1})},fetchForTarget:async({cwdKey:a,tmuxSession:n},s)=>{if(!a||!n)return void t().resetForTarget({cwdKey:null,tmuxSession:null});let i=t(),r=i.cwdKey!==a,l=null!==i.lastFetchedAt&&Date.now()-i.lastFetchedAt<15e3;if(!r&&!s?.force&&l&&"error"!==i.phase){i.tmuxSession!==n&&e({tmuxSession:n});return}let o=i.requestSeq+1;e({cwdKey:a,tmuxSession:n,phase:"loading",status:r?null:i.status,branch:r?null:i.branch,error:null,lastFetchedAt:null,requestSeq:o});try{let a=new URLSearchParams({tmuxSession:n});s?.force&&a.set("force","true");let i=await fetch(`/api/git/status?${a.toString()}`,{cache:"no-store"});if(!i.ok)throw Error(`status-${i.status}`);let r=await i.json();if(t().requestSeq!==o)return;if(!r.status)return void e({phase:"not-git",status:null,branch:null,error:null,lastFetchedAt:Date.now()});let l=null;try{let e=new URLSearchParams({tmuxSession:n});s?.force&&e.set("force","true");let t=await fetch(`/api/git/branch?${e.toString()}`,{cache:"no-store"});t.ok&&(l=(await t.json()).branch)}catch{l=null}if(t().requestSeq!==o)return;e({phase:"ready",status:r.status,branch:l,error:null,lastFetchedAt:Date.now()})}catch(a){if(t().requestSeq!==o)return;e({phase:"error",status:null,branch:null,error:a instanceof Error?a.message:String(a),lastFetchedAt:Date.now()})}}}));e.s(["default",0,s,"formatGitStatusSummary",0,(e,t,a,s)=>{if("idle"===e)return s;if("loading"===e)return"Checking Git status...";if("not-git"===e)return"Not a Git repository";if("error"===e)return"Git status unavailable";if(!a)return s;let i=n(a),r=[t??"Git",i>0?`${i} changed`:"clean"];return(a.insertions>0||a.deletions>0)&&r.push(`+${a.insertions} -${a.deletions}`),a.ahead>0&&r.push(`ahead ${a.ahead}`),a.behind>0&&r.push(`behind ${a.behind}`),a.stash>0&&r.push(`${a.stash} stash`),r.join(" · ")},"getGitStatusIndicators",0,e=>{if(!e)return[];let t=n(e),a=[];return t>0&&a.push({key:"changed",label:t>99?"99+":String(t),tone:"dirty"}),e.ahead>0&&a.push({key:"ahead",label:`↑${e.ahead}`,tone:"sync"}),e.behind>0&&a.push({key:"behind",label:`↓${e.behind}`,tone:"sync"}),e.stash>0&&a.push({key:"stash",label:`S${e.stash}`,tone:"stash"}),a}])},3450,251748,e=>{"use strict";var t=e.i(191788),a=e.i(399267),n=e.i(453783),s=e.i(15623),i=e.i(116962),r=e.i(237022),l=e.i(335288);let o=new Set(["zsh","bash","fish","sh","-zsh","-bash","-fish","-sh"]),c=new Set(["codex","Codex","node"]),d=e=>{if("~"===e||"/"===e)return e;let t=e.replace(/\/$/,"").split("/");return t[t.length-1]||e},u=e=>{let t=e.trim();if(!t)return null;let a=t.indexOf("|");return a>0?t.slice(0,a):null},p=(e,t)=>"codex-cli"===t&&c.has(e)?"Codex":e,f=(e,t)=>{let a=e.trim();if(!a)return"";let n=u(e);if(null!==n){let e=a.slice(a.indexOf("|")+1);return o.has(n)?d(e):p(n,t)}let s=a.match(/@[^:]+:\s*(.*)/);if(s)return d(s[1].trim());if(a.startsWith("/")||a.startsWith("~"))return d(a);let i=a.split(/\s+/)[0];return o.has(i)?"":p(i||"",t)};e.s(["formatTabTitle",0,f,"isShellProcess",0,e=>{let t=u(e);return null!==t&&o.has(t)},"parseCurrentCommand",0,u],251748);var b=e.i(806185);let m=null;e.s(["ackNotificationInput",0,(e,t)=>{m?.readyState===WebSocket.OPEN&&m.send(JSON.stringify({type:"status:ack-notification",tabId:e,seq:t}))},"default",0,()=>{let e=(0,t.useRef)(0),o=(0,t.useRef)(null),c=(0,t.useRef)(!0);(0,t.useEffect)(()=>{c.current=!0;let t=()=>{if(!c.current)return;let d="https:"===location.protocol?"wss:":"ws:",u=new WebSocket(`${d}//${location.host}/api/status`);m=u,u.onopen=()=>{c.current&&(e.current=0,a.default.getState().setStatusWsConnected(!0))},u.onmessage=e=>{if(c.current)try{let t=JSON.parse(e.data);switch(t.type){case"status:sync":for(let[e,s]of(a.default.getState().syncAllFromServer(t.tabs),Object.entries(t.tabs)))"agent-sessions"!==s.panelType&&s.paneTitle&&!n.default.getState().metadata[e]?.title&&n.default.getState().setTitle(e,f(s.paneTitle,s.panelType));break;case"status:update":a.default.getState().updateFromServer(t.tabId,{cliState:t.cliState,workspaceId:t.workspaceId,tabName:t.tabName,panelType:t.panelType,terminalStatus:t.terminalStatus,listeningPorts:t.listeningPorts,currentProcess:t.currentProcess,agentProviderId:t.agentProviderId,agentSessionId:t.agentSessionId,agentSummary:t.agentSummary,lastUserMessage:t.lastUserMessage,lastAssistantMessage:t.lastAssistantMessage,currentAction:t.currentAction,readyForReviewAt:t.readyForReviewAt,busySince:t.busySince,dismissedAt:t.dismissedAt,compactingSince:t.compactingSince,permissionRequest:t.permissionRequest,lastEvent:t.lastEvent,eventSeq:t.eventSeq}),t.paneTitle&&"agent-sessions"!==t.panelType&&n.default.getState().setTitle(t.tabId,f(t.paneTitle,t.panelType));break;case"status:hook-event":a.default.getState().applyHookEvent(t.tabId,t.event),((e,t)=>{if("stop"!==t.name)return;let a=r.default.getState();if(!a.cwdKey||!a.tmuxSession)return;let n=l.useLayoutStore.getState().layout;if(!n)return;let s=(0,b.collectAllTabs)(n.root).find(t=>t.id===e);s&&s.sessionName===a.tmuxSession&&a.fetchForTarget({cwdKey:a.cwdKey,tmuxSession:a.tmuxSession},{force:!0})})(t.tabId,t.event);break;case"rate-limits:update":s.default.getState().setData(t.data);break;case"session-history:sync":i.default.getState().syncFromServer(t.entries);break;case"session-history:update":i.default.getState().upsertEntry(t.entry)}}catch{}},u.onclose=()=>{if(!c.current)return;a.default.getState().setStatusWsConnected(!1),m=null;let n=Math.min(1e3*Math.pow(2,e.current),3e4);e.current++,o.current=setTimeout(t,n)},u.onerror=()=>{}};t();let d=()=>{if("visible"!==document.visibilityState)return;let a=m?.readyState;a!==WebSocket.OPEN&&a!==WebSocket.CONNECTING&&(o.current&&(clearTimeout(o.current),o.current=null),e.current=0,t())};return document.addEventListener("visibilitychange",d),()=>{c.current=!1,o.current&&(clearTimeout(o.current),o.current=null),m&&(m.close(),m=null),document.removeEventListener("visibilitychange",d)}},[])},"dismissTab",0,e=>{a.default.getState().dismissTab(e),m?.readyState===WebSocket.OPEN&&m.send(JSON.stringify({type:"status:tab-dismissed",tabId:e}))},"requestSync",0,()=>{m?.readyState===WebSocket.OPEN&&m.send(JSON.stringify({type:"status:request-sync"}))}],3450)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,426500,(e,o,t)=>{o.exports={editorUrlNotSet:"Editor is not configured. Please open Settings > Editor.",editorRemoteNotSupported:"Not supported for remote directories",openEditor:"Open editor",splitVertical:"Split vertical",splitVerticalShortcut:"Split vertical ({shortcut})",splitHorizontal:"Split horizontal",splitHorizontalShortcut:"Split horizontal ({shortcut})",equalSplit:"Equalize split",creatingConversation:"Creating new session...",resumingSession:"Resuming session...",claudeBootMain:"Starting Claude...",claudeBootResuming:"Resuming Claude...",claudeBootAlmostReady:"Almost ready...",claudeBootSubtitle:"Just a moment",checkTerminal:"Check the terminal",trustPromptTitle:"Trust this folder?",trustPromptDescription:"{agentName} needs your permission to read, edit, and execute files in this folder.",trustPromptYes:"Yes, I trust this folder",trustPromptNo:"No, exit",resumeBlocked:"Another process is running in the terminal",resumeBlockedProcess:"Currently running process: {name}",resumeFailed:"Unable to resume session",addFailed:"Failed to add",removeFailed:"Failed to remove",openNewTab:"Open new tab",newTabTooltip:"Open new tab ({shortcut})",claudeNewConversation:"Claude",claudeSessionList:"Claude Sessions",disconnectedSessionNotFound:"Session not found",restartWithCommand:"Start with this command",or:"or",restartNewTerminal:"Start new terminal",interruptTitle:"Interrupt",interruptDescription:"Interrupt the agent? The current task will be cancelled.",interruptConfirm:"Interrupt",connecting:"Connecting...",retryAction:"Retry",cannotSwitch:"Cannot switch",newWorkspace:"New Workspace",inputDisabledPlaceholder:"Claude Code is not running",inputPlaceholder:"Type a message...",inputAriaLabel:"Claude Code message input",codexInputAriaLabel:"Codex message input",claudeConnecting:"Claude connecting...",interruptAriaLabel:"Interrupt task",sendAriaLabel:"Send message",attachAriaLabel:"Attach image",attachmentLimitReached:"Maximum {max} attachments per message",attachmentNotConfirmed:"Failed to confirm image attachment",attachingImages:"Attaching {count} image(s)…",closeAllTabs:"Close all tabs",retryLoad:"Retry",sessions:"Sessions",newConversation:"New Chat",bypassSendFailed:"Failed to send selection",bypassPermissions:"Bypass Permissions Check",quickPrompts:"Quick prompts",switchToAgentMode:"Switch to {name} mode?",switchMode:"Switch",statusBusy:"Processing,",statusNeedsInput:"Waiting for input,",statusNeedsReview:"Needs review,",sessionEnded:"Session ended.",startNewSession:"Start new session",rename:"Rename",dragDropNotSupported:"Drag and drop is not supported in web browsers",fullPathPlaceholder:"Enter full path (e.g. /Users/...)",closeTabLabel:"Close tab",newTabLabel:"New tab",sessionList:"Session list",tabStatus:"Tab status",messageHistory:"Message history",installRunning:"Running...",installDone:"Done",fallbackLayout:"Starting with default layout",layoutFetchError:"Failed to load layout",splitFailed:"Failed to split pane",tabCreateFailed:"Failed to create tab",tabDeleteError:"Error while deleting tab",sessionRestartFailed:"Failed to restart session",tabRenameFailed:"Failed to rename tab",tabReorderFailed:"Failed to reorder tabs",dragCopyHint:"Hold Shift and drag to copy text",copyPaneLabel:"Copy terminal output",copyPaneDrawerTitle:"Copy terminal output",copyPaneDrawerHint:"Long-press the text to select, or tap Copy all below.",copyPaneLoading:"Loading...",copyPaneCaptureFailed:"Failed to load terminal output",copyPaneCopyAll:"Copy all",copyPaneSuccess:"Copied to clipboard",copyPaneCopyFailed:"Failed to copy",codexNotInstalled:"Install Codex CLI: npm i -g @openai/codex or brew install --cask codex",codexHookInstallFailed:"Codex hook installation failed. State detection may be inaccurate.",codexConfigParseFailed:"Failed to parse ~/.codex/config.toml. Only purplemux hooks applied.",codexLaunchFailed:"Codex launch failed. Check the terminal.",codexResumeFailed:"Codex resume failed.",codexApprovalSendFailed:"Failed to send approval response. Please try again.",codexApprovalNotApplied:"Response did not reach codex. Check your keymap.",codexApprovalGranted:"Permission granted",codexApprovalDenied:"Permission denied",codexPermissionTitle:"Permission requested",codexPermissionExecMessage:"Run the following command?",codexPermissionPatchMessage:"Apply the following file changes?",codexPermissionPermissionsMessage:"The following permissions are required",codexPermissionExecBadge:"Exec",codexPermissionPatchBadge:"Apply Patch",codexPermissionPermissionsBadge:"Permission",codexPermissionShowDetails:"Show details",codexPermissionHideDetails:"Hide details",codexPermissionYes:"Yes",codexPermissionNo:"No",codexPermissionSendingResponse:"Sending response…",codexPermissionFilesMore:"and {count} more",codexPermissionPatchOpModify:"modify",codexPermissionPatchOpCreate:"create",codexPermissionPatchOpDelete:"delete",codexPermissionCwd:"Working directory",codexPermissionEnv:"Environment variables",codexPermissionNoDetails:"Permission requested — no further details",codexCopyCommand:"Copy command",codexCopyConfigPath:"Copy config.toml path",codexCopied:"Copied",codexRetry:"Retry",codexBootMain:"Starting Codex...",codexBootAlmostReady:"Almost ready...",codexBootSubtitle:"Just a moment",codexBootFailed:"Codex failed to start",codexBootFailedHint:"Check the terminal for details",codexBootRestart:"Restart",codexBootShowTerminal:"Show terminal",codexNewConversation:"Codex",codexSessionList:"Codex Sessions",codexSessionsSheetSubtitle:"Codex sessions in this workspace",codexSessionsEmpty:"No Codex sessions in this workspace yet",codexSessionsLoadFailed:"Failed to load Codex sessions",codexSessionsTokens:"tokens",codexSessionsModelLabel:"Model",codexSessionsUnknownModel:"Unknown",codexInactiveMessage:"Codex session is not running",codexStartSession:"Start Codex",codexResumeLastSession:"Resume",codexLastSessionLabel:"Last session:",codexConnecting:"Codex connecting...",codexTimelinePlaceholder:"Timeline integration coming soon",switchAgentBlocked:"{name} is running. Exit with /quit or Ctrl+D in the terminal first",codexUpdateTitle:"Update Codex?",codexUpdateVersion:"{current} -> {latest}",codexUpdateDescription:"Codex needs a quick update before starting this session.",codexUpdateNow:"Update now",codexUpdateSkip:"Skip",codexUpdateSkipVersion:"Skip this version",codexUpdateRunning:"Updating Codex...",codexUpdateRunningHint:"This can take a few seconds. Codex will restart when the update finishes.",codexUpdateSuccess:"Update finished. Restarting Codex...",codexUpdateRestarting:"Restarting Codex"}}]);
@@ -1,13 +1,13 @@
1
1
  __turbopack_load_page_chunks__("/_app", [
2
- "static/chunks/0wf0tx~eo05t~.js",
2
+ "static/chunks/0gfoib7v3q4k_.js",
3
3
  "static/chunks/0pojknlc_-2a2.js",
4
4
  "static/chunks/0b__~uq5xxl7i.js",
5
5
  "static/chunks/053wcti8gt7b5.js",
6
- "static/chunks/0ea-k_kbq5gi1.js",
7
- "static/chunks/14_wa..vd6~2y.js",
8
- "static/chunks/0~23in~aqup16.js",
9
- "static/chunks/00yfl7agnve...js",
6
+ "static/chunks/0n7jmg60eqx1a.js",
7
+ "static/chunks/0984g4~der6-4.js",
8
+ "static/chunks/0176ysv-agwwx.js",
9
+ "static/chunks/0wu-q.gmu-64d.js",
10
10
  "static/chunks/0o1duxjxx_ar8.css",
11
11
  "static/chunks/107edt81z_gzy.css",
12
- "static/chunks/turbopack-10c4z.4l4dxnu.js"
12
+ "static/chunks/turbopack-0.6hkxuraykc4.js"
13
13
  ])
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,461287,(e,o,t)=>{o.exports={editorUrlNotSet:"尚未設定編輯器。請在設定 > 編輯器中進行設定。",editorRemoteNotSupported:"不支援遠端目錄",openEditor:"開啟編輯器",splitVertical:"垂直分割",splitVerticalShortcut:"垂直分割({shortcut})",splitHorizontal:"水平分割",splitHorizontalShortcut:"水平分割({shortcut})",equalSplit:"等分分割",creatingConversation:"正在建立新工作階段...",resumingSession:"正在恢復對話...",claudeBootMain:"正在啟動 Claude...",claudeBootResuming:"正在恢復 Claude...",claudeBootAlmostReady:"快好了...",claudeBootSubtitle:"請稍候",checkTerminal:"請檢查終端機",trustPromptTitle:"信任此資料夾?",trustPromptDescription:"{agentName} 需要您的許可才能讀取、編輯和執行此資料夾中的檔案。",trustPromptYes:"是,我信任此資料夾",trustPromptNo:"否,結束",resumeBlocked:"終端機中有其他處理程序正在執行",resumeBlockedProcess:"目前執行中的處理程序:{name}",resumeFailed:"無法恢復工作階段",addFailed:"新增失敗",removeFailed:"移除失敗",openNewTab:"開啟新分頁",newTabTooltip:"開啟新分頁({shortcut})",claudeNewConversation:"Claude",claudeSessionList:"Claude 工作階段",disconnectedSessionNotFound:"找不到工作階段",restartWithCommand:"使用此指令啟動",or:"或",restartNewTerminal:"啟動新終端機",interruptTitle:"中斷",interruptDescription:"中斷代理?目前的任務將被取消。",interruptConfirm:"中斷",connecting:"連線中...",retryAction:"重試",cannotSwitch:"無法切換",newWorkspace:"新工作區",inputDisabledPlaceholder:"Claude Code 未執行",inputPlaceholder:"輸入訊息...",inputAriaLabel:"Claude Code 訊息輸入",codexInputAriaLabel:"Codex 訊息輸入",claudeConnecting:"Claude 連線中...",interruptAriaLabel:"中斷任務",sendAriaLabel:"傳送訊息",attachAriaLabel:"附加圖片",attachmentLimitReached:"每則訊息最多附加 {max} 張",attachmentNotConfirmed:"未能確認圖片附件",attachingImages:"正在附加 {count} 張圖片…",closeAllTabs:"關閉所有分頁",retryLoad:"重試",sessions:"工作階段",newConversation:"新對話",bypassSendFailed:"傳送選取內容失敗",bypassPermissions:"略過權限檢查",quickPrompts:"快速提示",switchToAgentMode:"切換到 {name} 模式?",switchMode:"切換",statusBusy:"處理中,",statusNeedsInput:"等待輸入,",statusNeedsReview:"需要審查,",sessionEnded:"工作階段已結束。",startNewSession:"開始新工作階段",rename:"重新命名",dragDropNotSupported:"網頁瀏覽器不支援拖放功能",fullPathPlaceholder:"輸入完整路徑(例如 /Users/...)",closeTabLabel:"關閉分頁",newTabLabel:"新分頁",sessionList:"工作階段列表",tabStatus:"分頁狀態",messageHistory:"訊息紀錄",installRunning:"執行中...",installDone:"完成",fallbackLayout:"使用預設佈局啟動",layoutFetchError:"無法載入佈局",splitFailed:"無法分割",tabCreateFailed:"無法建立分頁",tabDeleteError:"刪除分頁時發生錯誤",sessionRestartFailed:"無法重新啟動工作階段",tabRenameFailed:"分頁重新命名失敗",tabReorderFailed:"分頁排序失敗",dragCopyHint:"按住 Shift 拖曳以複製文字",copyPaneLabel:"複製終端機內容",copyPaneDrawerTitle:"複製終端機內容",copyPaneDrawerHint:"長按文字進行選取,或點擊下方的「全部複製」。",copyPaneLoading:"載入中...",copyPaneCaptureFailed:"無法載入終端機內容",copyPaneCopyAll:"全部複製",copyPaneSuccess:"已複製到剪貼簿",copyPaneCopyFailed:"複製失敗",codexNotInstalled:"Install Codex CLI: npm i -g @openai/codex or brew install --cask codex",codexHookInstallFailed:"Codex hook installation failed. State detection may be inaccurate.",codexConfigParseFailed:"Failed to parse ~/.codex/config.toml. Only purplemux hooks applied.",codexLaunchFailed:"Codex launch failed. Check the terminal.",codexResumeFailed:"Codex resume failed.",codexApprovalSendFailed:"Failed to send approval response. Please try again.",codexApprovalNotApplied:"Response did not reach codex. Check your keymap.",codexApprovalGranted:"Permission granted",codexApprovalDenied:"Permission denied",codexPermissionTitle:"Permission requested",codexPermissionExecMessage:"Run the following command?",codexPermissionPatchMessage:"Apply the following file changes?",codexPermissionPermissionsMessage:"The following permissions are required",codexPermissionExecBadge:"Exec",codexPermissionPatchBadge:"Apply Patch",codexPermissionPermissionsBadge:"Permission",codexPermissionShowDetails:"Show details",codexPermissionHideDetails:"Hide details",codexPermissionYes:"Yes",codexPermissionNo:"No",codexPermissionSendingResponse:"Sending response…",codexPermissionFilesMore:"and {count} more",codexPermissionPatchOpModify:"modify",codexPermissionPatchOpCreate:"create",codexPermissionPatchOpDelete:"delete",codexPermissionCwd:"Working directory",codexPermissionEnv:"Environment variables",codexPermissionNoDetails:"Permission requested — no further details",codexCopyCommand:"Copy command",codexCopyConfigPath:"Copy config.toml path",codexCopied:"Copied",codexRetry:"Retry",codexBootMain:"Starting Codex...",codexBootAlmostReady:"Almost ready...",codexBootSubtitle:"Just a moment",codexBootFailed:"Codex failed to start",codexBootFailedHint:"Check the terminal for details",codexBootRestart:"Restart",codexBootShowTerminal:"Show terminal",codexNewConversation:"Codex",codexSessionList:"Codex Sessions",codexSessionsSheetSubtitle:"Codex sessions in this workspace",codexSessionsEmpty:"No Codex sessions in this workspace yet",codexSessionsLoadFailed:"Failed to load Codex sessions",codexSessionsTokens:"tokens",codexSessionsModelLabel:"Model",codexSessionsUnknownModel:"Unknown",codexInactiveMessage:"Codex session is not running",codexStartSession:"Start Codex",codexResumeLastSession:"Resume",codexLastSessionLabel:"Last session:",codexConnecting:"Codex connecting...",codexTimelinePlaceholder:"Timeline integration coming soon",switchAgentBlocked:"{name} is running. Exit with /quit or Ctrl+D in the terminal first",codexUpdateTitle:"Update Codex?",codexUpdateVersion:"{current} -> {latest}",codexUpdateDescription:"Codex needs a quick update before starting this session.",codexUpdateNow:"Update now",codexUpdateSkip:"Skip",codexUpdateSkipVersion:"Skip this version",codexUpdateRunning:"Updating Codex...",codexUpdateRunningHint:"This can take a few seconds. Codex will restart when the update finishes.",codexUpdateSuccess:"Update finished. Restarting Codex...",codexUpdateRestarting:"Restarting Codex"}}]);