spec-cat 0.1.63 → 0.1.65

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 (271) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/_nuxt/B-bFNWCF.js +43 -0
  3. package/.output/public/_nuxt/{D4LyIv_t.js → BEWSHKZd.js} +1 -1
  4. package/.output/public/_nuxt/{Su-Cl_JF.js → BHhMtuRK.js} +1 -1
  5. package/.output/public/_nuxt/{DwpuOtAP.js → BwRpECPL.js} +1 -1
  6. package/.output/public/_nuxt/{FfyCVKRU.js → CC_9aMCT.js} +1 -1
  7. package/.output/public/_nuxt/CHHbeXzh.js +1 -0
  8. package/.output/public/_nuxt/{DIOhMCOf.js → CzV__9yP.js} +3 -3
  9. package/.output/public/_nuxt/{Bz2rU2zs.js → DWDrIutw.js} +1 -1
  10. package/.output/public/_nuxt/D_4Ow2w2.js +1 -0
  11. package/.output/public/_nuxt/D_T_F7lf.js +1 -0
  12. package/.output/public/_nuxt/{DPOGSCeV.js → DqFq1MXh.js} +1 -1
  13. package/.output/public/_nuxt/YzuyFhrD.js +174 -0
  14. package/.output/public/_nuxt/builds/latest.json +1 -1
  15. package/.output/public/_nuxt/builds/meta/cdc4ded8-9ff7-4e22-abbe-3b8c94caa781.json +1 -0
  16. package/.output/public/_nuxt/default.Cyeq1Er8.css +1 -0
  17. package/.output/public/_nuxt/entry.uBSFaL6A.css +1 -0
  18. package/.output/public/_nuxt/{useTheme.Cny4Z64J.css → useTheme.B4wINCoW.css} +1 -1
  19. package/.output/public/_nuxt/uyJF9wDo.js +58 -0
  20. package/.output/server/chunks/_/aiProviderRegistry.mjs +1 -2
  21. package/.output/server/chunks/_/aiProviderRegistry.mjs.map +1 -1
  22. package/.output/server/chunks/_/aiProviderSelection.mjs +2 -2
  23. package/.output/server/chunks/_/chatGit.mjs +1 -2
  24. package/.output/server/chunks/_/chatGit.mjs.map +1 -1
  25. package/.output/server/chunks/_/claudeProvider.mjs +1 -215
  26. package/.output/server/chunks/_/claudeProvider.mjs.map +1 -1
  27. package/.output/server/chunks/_/claudeService.mjs +50 -54
  28. package/.output/server/chunks/_/claudeService.mjs.map +1 -1
  29. package/.output/server/chunks/_/codexProvider.mjs +47 -812
  30. package/.output/server/chunks/_/codexProvider.mjs.map +1 -1
  31. package/.output/server/chunks/_/git.mjs +1 -2
  32. package/.output/server/chunks/_/git.mjs.map +1 -1
  33. package/.output/server/chunks/_/gitApiHelpers.mjs +1 -1
  34. package/.output/server/chunks/_/gitBranchOperations.mjs +1 -1
  35. package/.output/server/chunks/_/interactiveProviderQuery.mjs +160 -0
  36. package/.output/server/chunks/_/interactiveProviderQuery.mjs.map +1 -0
  37. package/.output/server/chunks/_/jobPersister.mjs +37 -6
  38. package/.output/server/chunks/_/jobPersister.mjs.map +1 -1
  39. package/.output/server/chunks/_/jobQueue.mjs +430 -278
  40. package/.output/server/chunks/_/jobQueue.mjs.map +1 -1
  41. package/.output/server/chunks/_/terminalSessions.mjs +582 -0
  42. package/.output/server/chunks/_/terminalSessions.mjs.map +1 -0
  43. package/.output/server/chunks/_/worktreeSetup.mjs +98 -0
  44. package/.output/server/chunks/_/worktreeSetup.mjs.map +1 -0
  45. package/.output/server/chunks/build/client.precomputed.mjs +1 -1
  46. package/.output/server/chunks/build/client.precomputed.mjs.map +1 -1
  47. package/.output/server/chunks/nitro/nitro.mjs +1227 -620
  48. package/.output/server/chunks/nitro/nitro.mjs.map +1 -1
  49. package/.output/server/chunks/routes/_ws.mjs +21 -111
  50. package/.output/server/chunks/routes/_ws.mjs.map +1 -1
  51. package/.output/server/chunks/routes/api/ai/providers.get.mjs +3 -1
  52. package/.output/server/chunks/routes/api/ai/providers.get.mjs.map +1 -1
  53. package/.output/server/chunks/routes/api/chat/compare.get.mjs +4 -5
  54. package/.output/server/chunks/routes/api/chat/compare.get.mjs.map +1 -1
  55. package/.output/server/chunks/routes/api/chat/context.get.mjs +4 -2
  56. package/.output/server/chunks/routes/api/chat/context.get.mjs.map +1 -1
  57. package/.output/server/chunks/routes/api/chat/finalize.post.mjs +11 -7
  58. package/.output/server/chunks/routes/api/chat/finalize.post.mjs.map +1 -1
  59. package/.output/server/chunks/routes/api/chat/generate-commit-message.post.mjs +26 -29
  60. package/.output/server/chunks/routes/api/chat/generate-commit-message.post.mjs.map +1 -1
  61. package/.output/server/chunks/routes/api/chat/preview-sync.post.mjs +4 -5
  62. package/.output/server/chunks/routes/api/chat/preview-sync.post.mjs.map +1 -1
  63. package/.output/server/chunks/routes/api/chat/preview.delete.mjs +4 -5
  64. package/.output/server/chunks/routes/api/chat/preview.delete.mjs.map +1 -1
  65. package/.output/server/chunks/routes/api/chat/preview.post.mjs +4 -6
  66. package/.output/server/chunks/routes/api/chat/preview.post.mjs.map +1 -1
  67. package/.output/server/chunks/routes/api/chat/rebase.post.mjs +4 -7
  68. package/.output/server/chunks/routes/api/chat/rebase.post.mjs.map +1 -1
  69. package/.output/server/chunks/routes/api/chat/worktree-commit.post.mjs +4 -6
  70. package/.output/server/chunks/routes/api/chat/worktree-commit.post.mjs.map +1 -1
  71. package/.output/server/chunks/routes/api/chat/worktree.delete.mjs +11 -4
  72. package/.output/server/chunks/routes/api/chat/worktree.delete.mjs.map +1 -1
  73. package/.output/server/chunks/routes/api/chat/worktree.post.mjs +4 -6
  74. package/.output/server/chunks/routes/api/chat/worktree.post.mjs.map +1 -1
  75. package/.output/server/chunks/routes/api/conversations/_conversationId/archive.post.mjs +10 -9
  76. package/.output/server/chunks/routes/api/conversations/_conversationId/archive.post.mjs.map +1 -1
  77. package/.output/server/chunks/routes/api/conversations/archives/_archiveId/restore.post.mjs +4 -7
  78. package/.output/server/chunks/routes/api/conversations/archives/_archiveId/restore.post.mjs.map +1 -1
  79. package/.output/server/chunks/routes/api/conversations/archives/_archiveId_.delete.mjs +4 -7
  80. package/.output/server/chunks/routes/api/conversations/archives/_archiveId_.delete.mjs.map +1 -1
  81. package/.output/server/chunks/routes/api/conversations/archives.delete.mjs +40 -0
  82. package/.output/server/chunks/routes/api/conversations/archives.delete.mjs.map +1 -0
  83. package/.output/server/chunks/routes/api/conversations/archives.get.mjs +4 -7
  84. package/.output/server/chunks/routes/api/conversations/archives.get.mjs.map +1 -1
  85. package/.output/server/chunks/routes/api/conversations/update.post.mjs +4 -7
  86. package/.output/server/chunks/routes/api/conversations/update.post.mjs.map +1 -1
  87. package/.output/server/chunks/routes/api/conversations.get.mjs +4 -7
  88. package/.output/server/chunks/routes/api/conversations.get.mjs.map +1 -1
  89. package/.output/server/chunks/routes/api/conversations.post.mjs +4 -7
  90. package/.output/server/chunks/routes/api/conversations.post.mjs.map +1 -1
  91. package/.output/server/chunks/routes/api/cwd.get.mjs +4 -2
  92. package/.output/server/chunks/routes/api/cwd.get.mjs.map +1 -1
  93. package/.output/server/chunks/routes/api/git/branch-rename.post.mjs +3 -4
  94. package/.output/server/chunks/routes/api/git/branch-rename.post.mjs.map +1 -1
  95. package/.output/server/chunks/routes/api/git/branch.delete.mjs +4 -5
  96. package/.output/server/chunks/routes/api/git/branch.delete.mjs.map +1 -1
  97. package/.output/server/chunks/routes/api/git/branches.get.mjs +4 -6
  98. package/.output/server/chunks/routes/api/git/branches.get.mjs.map +1 -1
  99. package/.output/server/chunks/routes/api/git/checkout.post.mjs +4 -5
  100. package/.output/server/chunks/routes/api/git/checkout.post.mjs.map +1 -1
  101. package/.output/server/chunks/routes/api/git/cherry-pick.post.mjs +3 -4
  102. package/.output/server/chunks/routes/api/git/cherry-pick.post.mjs.map +1 -1
  103. package/.output/server/chunks/routes/api/git/clean.post.mjs +3 -4
  104. package/.output/server/chunks/routes/api/git/clean.post.mjs.map +1 -1
  105. package/.output/server/chunks/routes/api/git/commit/_id_.get.mjs +3 -4
  106. package/.output/server/chunks/routes/api/git/commit/_id_.get.mjs.map +1 -1
  107. package/.output/server/chunks/routes/api/git/commit.post.mjs +4 -5
  108. package/.output/server/chunks/routes/api/git/commit.post.mjs.map +1 -1
  109. package/.output/server/chunks/routes/api/git/diff.get.mjs +4 -5
  110. package/.output/server/chunks/routes/api/git/diff.get.mjs.map +1 -1
  111. package/.output/server/chunks/routes/api/git/fetch.post.mjs +3 -4
  112. package/.output/server/chunks/routes/api/git/fetch.post.mjs.map +1 -1
  113. package/.output/server/chunks/routes/api/git/file-diff.get.mjs +4 -5
  114. package/.output/server/chunks/routes/api/git/file-diff.get.mjs.map +1 -1
  115. package/.output/server/chunks/routes/api/git/graph.get.mjs +4 -5
  116. package/.output/server/chunks/routes/api/git/graph.get.mjs.map +1 -1
  117. package/.output/server/chunks/routes/api/git/log.get.mjs +4 -5
  118. package/.output/server/chunks/routes/api/git/log.get.mjs.map +1 -1
  119. package/.output/server/chunks/routes/api/git/merge-base.get.mjs +4 -5
  120. package/.output/server/chunks/routes/api/git/merge-base.get.mjs.map +1 -1
  121. package/.output/server/chunks/routes/api/git/merge.post.mjs +3 -4
  122. package/.output/server/chunks/routes/api/git/merge.post.mjs.map +1 -1
  123. package/.output/server/chunks/routes/api/git/pull.post.mjs +3 -4
  124. package/.output/server/chunks/routes/api/git/pull.post.mjs.map +1 -1
  125. package/.output/server/chunks/routes/api/git/push.post.mjs +3 -4
  126. package/.output/server/chunks/routes/api/git/push.post.mjs.map +1 -1
  127. package/.output/server/chunks/routes/api/git/rebase.post.mjs +3 -4
  128. package/.output/server/chunks/routes/api/git/rebase.post.mjs.map +1 -1
  129. package/.output/server/chunks/routes/api/git/remote.delete.mjs +3 -4
  130. package/.output/server/chunks/routes/api/git/remote.delete.mjs.map +1 -1
  131. package/.output/server/chunks/routes/api/git/remote.post.mjs +3 -4
  132. package/.output/server/chunks/routes/api/git/remote.post.mjs.map +1 -1
  133. package/.output/server/chunks/routes/api/git/remote.put.mjs +3 -4
  134. package/.output/server/chunks/routes/api/git/remote.put.mjs.map +1 -1
  135. package/.output/server/chunks/routes/api/git/remotes.get.mjs +3 -4
  136. package/.output/server/chunks/routes/api/git/remotes.get.mjs.map +1 -1
  137. package/.output/server/chunks/routes/api/git/reset.post.mjs +3 -4
  138. package/.output/server/chunks/routes/api/git/reset.post.mjs.map +1 -1
  139. package/.output/server/chunks/routes/api/git/revert.post.mjs +3 -4
  140. package/.output/server/chunks/routes/api/git/revert.post.mjs.map +1 -1
  141. package/.output/server/chunks/routes/api/git/show.get.mjs +4 -5
  142. package/.output/server/chunks/routes/api/git/show.get.mjs.map +1 -1
  143. package/.output/server/chunks/routes/api/git/stage.post.mjs +4 -5
  144. package/.output/server/chunks/routes/api/git/stage.post.mjs.map +1 -1
  145. package/.output/server/chunks/routes/api/git/stash-apply.post.mjs +3 -4
  146. package/.output/server/chunks/routes/api/git/stash-apply.post.mjs.map +1 -1
  147. package/.output/server/chunks/routes/api/git/stash-branch.post.mjs +3 -4
  148. package/.output/server/chunks/routes/api/git/stash-branch.post.mjs.map +1 -1
  149. package/.output/server/chunks/routes/api/git/stash-drop.post.mjs +3 -4
  150. package/.output/server/chunks/routes/api/git/stash-drop.post.mjs.map +1 -1
  151. package/.output/server/chunks/routes/api/git/stash-pop.post.mjs +3 -4
  152. package/.output/server/chunks/routes/api/git/stash-pop.post.mjs.map +1 -1
  153. package/.output/server/chunks/routes/api/git/stash.get.mjs +3 -4
  154. package/.output/server/chunks/routes/api/git/stash.get.mjs.map +1 -1
  155. package/.output/server/chunks/routes/api/git/stash.post.mjs +3 -4
  156. package/.output/server/chunks/routes/api/git/stash.post.mjs.map +1 -1
  157. package/.output/server/chunks/routes/api/git/state.get.mjs +3 -4
  158. package/.output/server/chunks/routes/api/git/state.get.mjs.map +1 -1
  159. package/.output/server/chunks/routes/api/git/status.get.mjs +4 -5
  160. package/.output/server/chunks/routes/api/git/status.get.mjs.map +1 -1
  161. package/.output/server/chunks/routes/api/git/tag/_name_.get.mjs +3 -4
  162. package/.output/server/chunks/routes/api/git/tag/_name_.get.mjs.map +1 -1
  163. package/.output/server/chunks/routes/api/git/tag-push.post.mjs +3 -4
  164. package/.output/server/chunks/routes/api/git/tag-push.post.mjs.map +1 -1
  165. package/.output/server/chunks/routes/api/git/tag.delete.mjs +3 -4
  166. package/.output/server/chunks/routes/api/git/tag.delete.mjs.map +1 -1
  167. package/.output/server/chunks/routes/api/git/tag.post.mjs +3 -4
  168. package/.output/server/chunks/routes/api/git/tag.post.mjs.map +1 -1
  169. package/.output/server/chunks/routes/api/git/unstage.post.mjs +4 -5
  170. package/.output/server/chunks/routes/api/git/unstage.post.mjs.map +1 -1
  171. package/.output/server/chunks/routes/api/index.get.mjs +7 -4
  172. package/.output/server/chunks/routes/api/index.get.mjs.map +1 -1
  173. package/.output/server/chunks/routes/api/index.get2.mjs +4 -2
  174. package/.output/server/chunks/routes/api/index.get2.mjs.map +1 -1
  175. package/.output/server/chunks/routes/api/index.get3.mjs +4 -2
  176. package/.output/server/chunks/routes/api/index.get3.mjs.map +1 -1
  177. package/.output/server/chunks/routes/api/index.post.mjs +19 -16
  178. package/.output/server/chunks/routes/api/index.post.mjs.map +1 -1
  179. package/.output/server/chunks/routes/api/index.post2.mjs +4 -6
  180. package/.output/server/chunks/routes/api/index.post2.mjs.map +1 -1
  181. package/.output/server/chunks/routes/api/jobs/_id/cancel.post.mjs +6 -3
  182. package/.output/server/chunks/routes/api/jobs/_id/cancel.post.mjs.map +1 -1
  183. package/.output/server/chunks/routes/api/jobs/_id_.get.mjs +7 -4
  184. package/.output/server/chunks/routes/api/jobs/_id_.get.mjs.map +1 -1
  185. package/.output/server/chunks/routes/api/rebase/abort.post.mjs +4 -2
  186. package/.output/server/chunks/routes/api/rebase/abort.post.mjs.map +1 -1
  187. package/.output/server/chunks/routes/api/rebase/ai-resolve.post.mjs +19 -105
  188. package/.output/server/chunks/routes/api/rebase/ai-resolve.post.mjs.map +1 -1
  189. package/.output/server/chunks/routes/api/rebase/conflicts.get.mjs +3 -1
  190. package/.output/server/chunks/routes/api/rebase/conflicts.get.mjs.map +1 -1
  191. package/.output/server/chunks/routes/api/rebase/continue-sync.post.mjs +4 -2
  192. package/.output/server/chunks/routes/api/rebase/continue-sync.post.mjs.map +1 -1
  193. package/.output/server/chunks/routes/api/rebase/continue.post.mjs +71 -73
  194. package/.output/server/chunks/routes/api/rebase/continue.post.mjs.map +1 -1
  195. package/.output/server/chunks/routes/api/rebase/resolve.put.mjs +3 -1
  196. package/.output/server/chunks/routes/api/rebase/resolve.put.mjs.map +1 -1
  197. package/.output/server/chunks/routes/api/repository/status.get.mjs +4 -5
  198. package/.output/server/chunks/routes/api/repository/status.get.mjs.map +1 -1
  199. package/.output/server/chunks/routes/api/settings.get.mjs +6 -5
  200. package/.output/server/chunks/routes/api/settings.get.mjs.map +1 -1
  201. package/.output/server/chunks/routes/api/settings.post.mjs +5 -3
  202. package/.output/server/chunks/routes/api/settings.post.mjs.map +1 -1
  203. package/.output/server/chunks/routes/api/skills/_skillId/prompt.post.mjs +3 -1
  204. package/.output/server/chunks/routes/api/skills/_skillId/prompt.post.mjs.map +1 -1
  205. package/.output/server/chunks/routes/api/specs/_featureId/_...filename_.get.mjs +3 -1
  206. package/.output/server/chunks/routes/api/specs/_featureId/_...filename_.get.mjs.map +1 -1
  207. package/.output/server/chunks/routes/api/specs/_featureId/_...filename_.put.mjs +3 -1
  208. package/.output/server/chunks/routes/api/specs/_featureId/_...filename_.put.mjs.map +1 -1
  209. package/.output/server/chunks/routes/api/specs/features.get.mjs +3 -1
  210. package/.output/server/chunks/routes/api/specs/features.get.mjs.map +1 -1
  211. package/.output/server/chunks/routes/api/specs/reindex.post.mjs +4 -2
  212. package/.output/server/chunks/routes/api/specs/reindex.post.mjs.map +1 -1
  213. package/.output/server/chunks/routes/api/specs/search.get.mjs +4 -2
  214. package/.output/server/chunks/routes/api/specs/search.get.mjs.map +1 -1
  215. package/.output/server/chunks/routes/api/specs/status.get.mjs +4 -2
  216. package/.output/server/chunks/routes/api/specs/status.get.mjs.map +1 -1
  217. package/.output/server/chunks/routes/api/specs/traceability/_featureId_.get.mjs +4 -2
  218. package/.output/server/chunks/routes/api/specs/traceability/_featureId_.get.mjs.map +1 -1
  219. package/.output/server/chunks/routes/api/worktrees/_name/switch.post.mjs +4 -2
  220. package/.output/server/chunks/routes/api/worktrees/_name/switch.post.mjs.map +1 -1
  221. package/.output/server/chunks/routes/api/worktrees/_name_.delete.mjs +3 -1
  222. package/.output/server/chunks/routes/api/worktrees/_name_.delete.mjs.map +1 -1
  223. package/.output/server/chunks/routes/git-watcher-ws.mjs +4 -2
  224. package/.output/server/chunks/routes/git-watcher-ws.mjs.map +1 -1
  225. package/.output/server/chunks/routes/renderer.mjs +4 -2
  226. package/.output/server/chunks/routes/terminal-ws.mjs +230 -0
  227. package/.output/server/chunks/routes/terminal-ws.mjs.map +1 -0
  228. package/.output/server/index.mjs +4 -2
  229. package/.output/server/index.mjs.map +1 -1
  230. package/.output/server/node_modules/node-pty/build/Makefile +369 -0
  231. package/.output/server/node_modules/node-pty/build/Release/pty.node +0 -0
  232. package/.output/server/node_modules/node-pty/build/binding.Makefile +6 -0
  233. package/.output/server/node_modules/node-pty/build/config.gypi +513 -0
  234. package/.output/server/node_modules/node-pty/build/pty.target.mk +168 -0
  235. package/.output/server/node_modules/node-pty/lib/eventEmitter2.js +47 -0
  236. package/.output/server/node_modules/node-pty/lib/index.js +52 -0
  237. package/.output/server/node_modules/node-pty/lib/shared/conout.js +11 -0
  238. package/.output/server/node_modules/node-pty/lib/terminal.js +190 -0
  239. package/.output/server/node_modules/node-pty/lib/unixTerminal.js +346 -0
  240. package/.output/server/node_modules/node-pty/lib/utils.js +39 -0
  241. package/.output/server/node_modules/node-pty/lib/windowsConoutConnection.js +125 -0
  242. package/.output/server/node_modules/node-pty/lib/windowsPtyAgent.js +320 -0
  243. package/.output/server/node_modules/node-pty/lib/windowsTerminal.js +199 -0
  244. package/.output/server/node_modules/node-pty/package.json +64 -0
  245. package/.output/server/package.json +2 -1
  246. package/package.json +6 -1
  247. package/.output/public/_nuxt/2zamijve.js +0 -1
  248. package/.output/public/_nuxt/BEjIzkrM.js +0 -85
  249. package/.output/public/_nuxt/BaSsfm-t.js +0 -36
  250. package/.output/public/_nuxt/BjdLSVUw.js +0 -1
  251. package/.output/public/_nuxt/DeqM2TrP.js +0 -1
  252. package/.output/public/_nuxt/builds/meta/74089fa1-2fbb-4792-94aa-7535d2aec557.json +0 -1
  253. package/.output/public/_nuxt/default.DKSPicGu.css +0 -1
  254. package/.output/public/_nuxt/entry.BUDfUMkE.css +0 -1
  255. package/.output/public/_nuxt/zrVRZSxq.js +0 -64
  256. package/.output/server/chunks/_/baseBranch.mjs +0 -137
  257. package/.output/server/chunks/_/baseBranch.mjs.map +0 -1
  258. package/.output/server/chunks/_/claude.mjs +0 -164
  259. package/.output/server/chunks/_/claude.mjs.map +0 -1
  260. package/.output/server/chunks/_/conversationStore.mjs +0 -257
  261. package/.output/server/chunks/_/conversationStore.mjs.map +0 -1
  262. package/.output/server/chunks/_/geminiProvider.mjs +0 -372
  263. package/.output/server/chunks/_/geminiProvider.mjs.map +0 -1
  264. package/.output/server/chunks/_/gitExec.mjs +0 -48
  265. package/.output/server/chunks/_/gitExec.mjs.map +0 -1
  266. package/.output/server/chunks/_/providerProcessError.mjs +0 -163
  267. package/.output/server/chunks/_/providerProcessError.mjs.map +0 -1
  268. package/.output/server/chunks/_/uiAdapter.mjs +0 -421
  269. package/.output/server/chunks/_/uiAdapter.mjs.map +0 -1
  270. package/.output/server/chunks/routes/api/chat.post.mjs +0 -276
  271. package/.output/server/chunks/routes/api/chat.post.mjs.map +0 -1
@@ -1,5 +1,5 @@
1
1
  {
2
- "date": "2026-06-13T14:06:49.407Z",
2
+ "date": "2026-06-30T07:51:08.090Z",
3
3
  "preset": "node-server",
4
4
  "framework": {
5
5
  "name": "nuxt",
@@ -0,0 +1,43 @@
1
+ import{r as ct,a as it,u as dt,b as xt,c as gt,d as ft,e as kt,f as ht,g as yt,h as vt,C as _t}from"./uyJF9wDo.js";import{d as F,y as s,z as o,A as e,G as t,H as B,B as d,I as m,C as y,J as N,K as O,L as V,g as tt,k as i,M as ut,E as Z,N as wt,O as rt,o as $t}from"./CzV__9yP.js";import{h as Tt,u as St}from"./D_4Ow2w2.js";import"./DlAUqK2U.js";const Ct={key:0,class:"h-3 w-3 flex-shrink-0 rounded-full border-2 border-retro-yellow border-t-transparent animate-spin"},At={key:2,class:"h-2 w-2 flex-shrink-0 rounded-full bg-retro-muted/70"},It={class:"text-retro-muted"},Bt={class:"truncate text-retro-muted"},Rt={key:3,class:"hidden flex-shrink-0 text-retro-muted/70 sm:inline"},Ut={key:0,class:"space-y-1 border-t border-retro-border/20 px-3 pb-2 pt-2"},Mt={class:"min-w-14 flex-shrink-0"},Et={class:"flex-shrink-0 text-retro-cyan"},Lt={class:"break-all"},Wt=F({__name:"ChatToolGroupSummary",props:{tools:{}},setup(c){const r=c,b=tt(!1),x=i(()=>r.tools.filter(h=>h.status==="running").length),k=i(()=>r.tools.filter(h=>h.status==="pending").length),f=i(()=>r.tools.filter(h=>h.status==="complete").length),p=i(()=>[...r.tools].reverse().find(h=>h.status!=="complete")??r.tools[r.tools.length-1]);function v(h){const T=h.inputSummary.trim();return T?`${h.name} ${T}`:h.name}const U=i(()=>{const h=p.value;if(!h)return"Tools";const T=v(h);return r.tools.length===1?T:x.value>0||k.value>0?`${r.tools.length} tools · latest ${T}`:`${r.tools.length} tools · ${T}`}),L=i(()=>x.value>0?"[RUN]":k.value>0?"[WAIT]":"[TOOLS]"),z=i(()=>x.value>0||k.value>0);return(h,T)=>(s(),o("div",{class:N(["my-2 rounded border",t(z)?"border-retro-border/40 bg-retro-dark/30":"border-retro-border/20 bg-retro-panel/20"]),"data-testid":"tool-group-summary"},[e("button",{class:"flex w-full items-center gap-2 px-3 py-2 text-left text-xs font-mono transition-colors hover:bg-retro-dark/30",onClick:T[0]||(T[0]=A=>b.value=!t(b))},[t(x)>0?(s(),o("span",Ct)):t(k)>0?(s(),B(t(ct),{key:1,class:"h-3.5 w-3.5 flex-shrink-0 animate-pulse text-retro-muted"})):(s(),o("span",At)),e("span",It,d(t(L)),1),T[1]||(T[1]=e("span",{class:"font-bold text-retro-cyan"},"Tools",-1)),e("span",Bt,d(t(U)),1),t(z)&&t(f)>0?(s(),o("span",Rt," · "+d(t(f))+" done ",1)):m("",!0),y(t(it),{class:N(["ml-auto h-3 w-3 flex-shrink-0 text-retro-muted transition-transform",{"rotate-90":t(b)}])},null,8,["class"])]),t(b)?(s(),o("div",Ut,[(s(!0),o(O,null,V(c.tools,A=>(s(),o("div",{key:A.id,class:"flex items-start gap-2 text-xs font-mono text-retro-muted"},[e("span",Mt,d(A.status==="running"?"[RUN]":A.status==="pending"?"[WAIT]":"[OK]"),1),e("span",Et,d(A.name),1),e("span",Lt,d(A.inputSummary||"No summary available"),1)]))),128))])):m("",!0)],2))}}),Ot=["innerHTML"],at=F({__name:"ChatTextBlock",props:{block:{}},setup(c){const r=c,{renderMarkdown:b}=dt(),x=i(()=>b(r.block.text));return(k,f)=>c.block.text.trim()?(s(),o("div",{key:0,class:"text-sm font-mono text-retro-text break-words chat-markdown px-1",innerHTML:t(x)},null,8,Ot)):m("",!0)}}),Nt={class:"my-1 border border-retro-border/30 rounded bg-retro-dark/30"},Dt={key:0,class:"text-retro-muted/80 truncate min-w-0 flex-1"},zt={class:"ml-auto flex-shrink-0 text-retro-muted/60 text-[10px]"},Pt={key:0,class:"px-3 pb-2 text-xs font-mono text-retro-muted whitespace-pre-wrap max-h-60 overflow-y-auto scrollbar-custom border-t border-retro-border/20"},lt=F({__name:"ChatThinkingBlock",props:{block:{}},setup(c){const r=c,b=tt(!1),x=i(()=>r.block.thinking.split(`
2
+ `).length),k=i(()=>r.block.thinking.length>0&&r.block.thinking.length<=240&&x.value<=6),f=i(()=>{const p=r.block.thinking.replace(/\s+/g," ").trim();return p?p.length>140?`${p.slice(0,140)}...`:p:""});return ut(()=>r.block.id,()=>{b.value=k.value},{immediate:!0}),(p,v)=>(s(),o("div",Nt,[e("button",{class:"flex items-center gap-2 w-full px-3 py-1.5 text-xs font-mono text-retro-muted hover:text-retro-yellow transition-colors",onClick:v[0]||(v[0]=U=>b.value=!t(b))},[y(t(it),{class:N(["w-3 h-3 transition-transform flex-shrink-0",{"rotate-90":t(b)}])},null,8,["class"]),v[1]||(v[1]=e("span",{class:"text-retro-yellow"},"Thinking",-1)),!t(b)&&t(f)?(s(),o("span",Dt,d(t(f)),1)):m("",!0),e("span",zt,d(t(x))+" lines · "+d(c.block.thinking.length)+" chars ",1)]),t(b)?(s(),o("div",Pt,d(c.block.thinking),1)):m("",!0)]))}}),Ft={class:"my-2 border border-retro-border/40 rounded bg-retro-dark/30"},Gt={key:0,class:"w-3 h-3 border-2 border-retro-yellow border-t-transparent rounded-full animate-spin flex-shrink-0"},Ht={class:"text-retro-muted"},jt={class:"text-retro-cyan font-bold"},Vt={class:"text-retro-muted truncate"},Jt={key:0,class:"px-3 pb-2 border-t border-retro-border/20"},Kt={key:0,class:"mt-2"},Qt={class:"text-xs font-mono text-retro-muted bg-retro-panel p-2 rounded overflow-x-auto max-h-36 overflow-y-auto scrollbar-custom whitespace-pre-wrap"},Yt={class:"text-xs font-mono text-retro-muted space-y-2 mt-2"},qt={key:0,class:"flex items-start gap-2"},Xt={class:"text-retro-cyan break-all"},Zt={key:1,class:"flex items-start gap-2"},te={class:"text-retro-cyan break-all whitespace-pre-wrap"},ee={key:2,class:"flex items-start gap-2"},se={key:1,class:"mt-2"},re={class:"text-xs font-mono text-retro-muted bg-retro-panel p-2 rounded overflow-x-auto max-h-52 overflow-y-auto scrollbar-custom whitespace-pre-wrap"},oe={key:0,class:"text-[10px] text-retro-muted mt-1"},ne={class:"mt-2"},ae={class:"text-xs font-mono text-retro-muted bg-retro-panel p-2 rounded mt-1 overflow-x-auto max-h-40 overflow-y-auto scrollbar-custom"},le={key:2,class:"mt-3"},ie={class:"space-y-2"},ce={key:0,class:"text-[11px] font-mono text-retro-yellow mb-1"},de={key:1,class:"text-xs font-mono text-retro-text whitespace-pre-wrap"},ue={key:2,class:"mt-2 space-y-1"},pe={key:0,class:"text-retro-muted/80"},me={key:3,class:"mt-3 border-t border-retro-border/20 pt-2"},be={class:"mb-1 text-[10px] text-retro-muted"},xe={class:"text-retro-green"},ge={class:"text-retro-red"},fe={class:"space-y-0.5"},ke={class:"whitespace-pre-wrap pl-1"},he={class:"whitespace-pre-wrap pl-1"},j=F({__name:"ChatToolBlock",props:{block:{},result:{}},setup(c){const r=c,b=tt(!1),x=tt(!1);function k(u,n){for(const a of n){const C=u[a];if(typeof C=="string"&&C.trim())return C}return""}function f(u,n){for(const a of n){const C=u[a];if(typeof C=="number"&&Number.isFinite(C))return C;if(typeof C=="string"&&C.trim()){const D=Number(C);if(Number.isFinite(D))return D}}return null}function p(u,n=14,a=1400){if(!u)return{text:"",truncated:!1};const C=u.split(`
3
+ `);let D=C.slice(0,n).join(`
4
+ `),X=C.length>n;return D.length>a&&(D=D.slice(0,a),X=!0),{text:D,truncated:X}}const v=i(()=>r.block.name.toLowerCase()),U=i(()=>v.value.replace(/[^a-z0-9]/g,"")),L=i(()=>U.value==="requestuserinput"||U.value==="askuserquestion"),z=i(()=>["read","read_file","readfile"].includes(v.value)),h=i(()=>["write","write_file","writefile","create_file"].includes(v.value)),T=i(()=>["edit","multiedit","replace","edit_file","editfile"].includes(v.value)),A=i(()=>["bash","exec","execcommand","runcommand","shell","run_shell_command"].includes(v.value)),P=i(()=>{if(!L.value)return[];const u=r.block.input.questions;if(Array.isArray(u))return u.map(a=>a&&typeof a=="object"?a:null).filter(a=>!!a);const n={header:k(r.block.input,["header","title"]),id:k(r.block.input,["id"]),question:k(r.block.input,["question"]),prompt:k(r.block.input,["prompt"]),message:k(r.block.input,["message","text","description"]),options:Array.isArray(r.block.input.options)?r.block.input.options:void 0};return!n.question&&!n.prompt&&!n.message&&!n.header?[]:[n]});function Q(u,n=120){const a=u.replace(/\s+/g," ").trim();return a?a.length>n?`${a.slice(0,n)}...`:a:""}const q=i(()=>{const u=P.value[0];return u?Q(u.question||u.prompt||u.message||u.header||""):""}),R=i(()=>k(r.block.input,["file_path","path","file","filepath","target_file"])),w=i(()=>{const u=f(r.block.input,["offset","start_line","line"]),n=f(r.block.input,["limit","lines","line_count"]),a=f(r.block.input,["end_line"]);return u!==null&&n!==null?`from line ${u}, ${n} lines`:u!==null&&a!==null?`lines ${u}-${a}`:u!==null?`from line ${u}`:n!==null?`${n} lines`:""}),S=i(()=>k(r.block.input,["content","text","new_content"])),W=i(()=>k(r.block.input,["cmd","command","script","chars"])),M=i(()=>p(S.value)),$=i(()=>{if(L.value)return q.value||"Prompting user for clarification";if(z.value){if(R.value&&w.value)return`Read ${R.value} (${w.value})`;if(R.value)return`Read ${R.value}`}return h.value&&R.value?`Write ${R.value}`:T.value&&R.value?`Edit ${R.value}`:A.value&&W.value?`$ ${W.value}`:r.block.inputSummary}),_=i(()=>{switch(r.block.status){case"running":return"[RUN]";case"pending":return"[WAIT]";case"complete":return"[OK]";case"error":return"[ERR]"}}),E=i(()=>Object.entries(r.block.input).filter(([n,a])=>a==null||typeof a=="string"&&(!a.trim()||a.length>90)?!1:!["content","new_content","text","old_string","new_string"].includes(n)).slice(0,6).map(([n,a])=>`${n}=${JSON.stringify(a)}`)),G=i(()=>{switch(r.block.status){case"running":return"text-retro-yellow";case"pending":return"text-retro-muted";case"complete":return"text-retro-green";case"error":return"text-retro-red"}}),I=i(()=>r.result?.content??""),ot=i(()=>r.result?.isError??!1),et=i(()=>I.value.length),H=i(()=>I.value.split(`
5
+ `)),nt=i(()=>x.value?H.value:H.value.slice(0,6)),st=i(()=>!I.value||!/^diff --git\s|\+\+\+\s|---\s|@@\s/m.test(I.value)?!1:/^[+\- ]/.test(H.value.find(n=>n.length>0)||"")||H.value.some(n=>n.startsWith("@@"))),J=i(()=>{if(!st.value)return{added:0,removed:0};let u=0,n=0;for(const a of H.value)a.startsWith("+++")||a.startsWith("---")||(a.startsWith("+")&&(u+=1),a.startsWith("-")&&(n+=1));return{added:u,removed:n}}),l=i(()=>I.value?I.value.split(`
6
+ `).slice(0,3).join(`
7
+ `):""),g=i(()=>I.value?H.value.length>6||I.value.length>320:!1),K=i(()=>I.value.trim().length>0);function bt(u){return u.startsWith("@@")?"text-retro-cyan bg-retro-cyan/10":u.startsWith("+")&&!u.startsWith("+++")?"text-retro-green bg-retro-green/10":u.startsWith("-")&&!u.startsWith("---")?"text-retro-red bg-retro-red/10":u.startsWith("diff --git")||u.startsWith("index ")||u.startsWith("---")||u.startsWith("+++")?"text-retro-yellow":"text-retro-muted"}return ut(()=>r.block.id,()=>{b.value=!1,x.value=!1},{immediate:!0}),(u,n)=>(s(),o("div",Ft,[e("button",{class:"flex items-center gap-2 w-full px-3 py-2 text-xs font-mono hover:bg-retro-dark/40 transition-colors text-left",onClick:n[0]||(n[0]=a=>b.value=!t(b))},[c.block.status==="running"?(s(),o("span",Gt)):c.block.status==="pending"?(s(),B(t(ct),{key:1,class:"w-3.5 h-3.5 flex-shrink-0 text-retro-muted animate-pulse"})):c.block.status==="complete"?(s(),B(t(xt),{key:2,class:N(["w-3.5 h-3.5 flex-shrink-0",t(G)])},null,8,["class"])):(s(),B(t(gt),{key:3,class:N(["w-3.5 h-3.5 flex-shrink-0",t(G)])},null,8,["class"])),e("span",Ht,d(t(_)),1),e("span",jt,d(c.block.name),1),e("span",Vt,d(t($)||c.block.inputSummary),1),y(t(it),{class:N(["w-3 h-3 ml-auto transition-transform text-retro-muted flex-shrink-0",{"rotate-90":t(b)}])},null,8,["class"])]),t(b)?(s(),o("div",Jt,[t(E).length>0?(s(),o("div",Kt,[n[5]||(n[5]=e("div",{class:"text-[11px] font-mono text-retro-cyan mb-1"},"Args",-1)),e("pre",Qt,d(t(E).join(`
8
+ `)),1)])):m("",!0),e("div",Yt,[t(R)?(s(),o("div",qt,[n[6]||(n[6]=e("span",{class:"text-retro-muted/80 min-w-12"},"File",-1)),e("code",Xt,d(t(R)),1)])):m("",!0),t(A)&&t(W)?(s(),o("div",Zt,[n[7]||(n[7]=e("span",{class:"text-retro-muted/80 min-w-12"},"Cmd",-1)),e("code",te,d(t(W)),1)])):m("",!0),t(z)&&t(w)?(s(),o("div",ee,[n[8]||(n[8]=e("span",{class:"text-retro-muted/80 min-w-12"},"Range",-1)),e("span",null,d(t(w)),1)])):m("",!0)]),t(h)&&t(M).text?(s(),o("div",se,[n[9]||(n[9]=e("div",{class:"text-[11px] font-mono text-retro-cyan mb-1"},"New Content",-1)),e("pre",re,d(t(M).text),1),t(M).truncated?(s(),o("div",oe,"Truncated preview")):m("",!0)])):m("",!0),e("details",ne,[n[10]||(n[10]=e("summary",{class:"text-[11px] font-mono text-retro-muted cursor-pointer hover:text-retro-cyan"},"Raw input JSON",-1)),e("pre",ae,d(JSON.stringify(c.block.input,null,2)),1)]),t(L)&&t(P).length>0?(s(),o("div",le,[n[11]||(n[11]=e("div",{class:"text-[11px] font-mono text-retro-cyan mb-1"},"Clarification Prompt",-1)),e("div",ie,[(s(!0),o(O,null,V(t(P),(a,C)=>(s(),o("div",{key:`${a.id||"q"}-${C}`,class:"rounded border border-retro-border/30 bg-retro-panel/40 p-2"},[a.header?(s(),o("div",ce,d(a.header),1)):m("",!0),a.question||a.prompt||a.message?(s(),o("div",de,d(a.question||a.prompt||a.message),1)):m("",!0),Array.isArray(a.options)&&a.options.length>0?(s(),o("div",ue,[(s(!0),o(O,null,V(a.options,(D,X)=>(s(),o("div",{key:`${a.id||"q"}-opt-${X}`,class:"text-xs font-mono text-retro-muted"},[Z(d(D.label||`Option ${X+1}`)+" ",1),D.description?(s(),o("span",pe," - "+d(D.description),1)):m("",!0)]))),128))])):m("",!0)]))),128))])])):m("",!0),t(K)?(s(),o("div",me,[e("div",{class:N(["text-xs font-mono rounded p-2 mt-1 overflow-y-auto scrollbar-custom border",t(ot)?"text-retro-red bg-retro-red/5 border-retro-red/40":"text-retro-muted bg-retro-panel/60 border-retro-border/30"]),style:wt(t(x)?"max-height: 20rem":"")},[t(st)?(s(),o(O,{key:0},[e("div",be,[n[12]||(n[12]=Z(" Diff · ",-1)),e("span",xe,"+"+d(t(J).added),1),n[13]||(n[13]=Z(" / ",-1)),e("span",ge,"-"+d(t(J).removed),1)]),e("div",fe,[(s(!0),o(O,null,V(t(nt),(a,C)=>(s(),o("div",{key:`diff-${C}`,class:N(["px-2 rounded whitespace-pre-wrap break-all",bt(a)])},d(a||" "),3))),128))]),!t(x)&&t(g)?(s(),o("button",{key:0,class:"text-retro-cyan hover:underline mt-1 text-[10px]",onClick:n[1]||(n[1]=rt(a=>x.value=!0,["stop"]))}," Show full diff ("+d(t(et))+" chars) ",1)):t(g)?(s(),o("button",{key:1,class:"text-retro-cyan hover:underline mt-1 text-[10px]",onClick:n[2]||(n[2]=rt(a=>x.value=!1,["stop"]))}," Collapse diff ")):m("",!0)],64)):!t(x)&&t(g)?(s(),o(O,{key:1},[e("pre",ke,d(t(l)),1),e("button",{class:"text-retro-cyan hover:underline mt-1 text-[10px]",onClick:n[3]||(n[3]=rt(a=>x.value=!0,["stop"]))}," Show full ("+d(t(et))+" chars) ",1)],64)):(s(),o(O,{key:2},[e("pre",he,d(t(I)),1),t(g)?(s(),o("button",{key:0,class:"text-retro-cyan hover:underline mt-1 text-[10px]",onClick:n[4]||(n[4]=rt(a=>x.value=!1,["stop"]))}," Collapse ")):m("",!0)],64))],6)])):m("",!0)])):m("",!0)]))}}),ye={class:"mt-2 pt-2 border-t border-retro-border/20 flex flex-wrap items-center gap-x-4 gap-y-1 text-[10px] font-mono text-retro-muted"},ve={class:"flex items-center gap-1"},_e={class:"flex items-center gap-1"},pt=F({__name:"ChatResultSummary",props:{block:{}},setup(c){const r=c,b=i(()=>{const f=Math.round(r.block.durationMs/1e3);return f<60?`${f}s`:`${Math.floor(f/60)}m ${f%60}s`}),x=i(()=>`$${r.block.totalCostUsd.toFixed(4)}`),k=i(()=>{const{inputTokens:f,outputTokens:p}=r.block.usage;return`${f.toLocaleString()} in / ${p.toLocaleString()} out`});return(f,p)=>(s(),o("div",ye,[e("span",ve,[p[0]||(p[0]=e("span",{class:"text-retro-muted/60"},"time",-1)),Z(" "+d(t(b)),1)]),e("span",_e,[p[1]||(p[1]=e("span",{class:"text-retro-muted/60"},"cost",-1)),Z(" "+d(t(x)),1)]),e("span",null,d(t(k)),1),e("span",null,d(c.block.numTurns)+" turn"+d(c.block.numTurns!==1?"s":""),1)]))}}),we={class:"px-2 py-1 text-[10px] font-mono text-retro-muted border-b border-retro-border/20 mb-1 flex items-center gap-2"},$e={class:"text-retro-cyan"},Te={key:0,class:"text-retro-border"},Se={key:1},mt=F({__name:"ChatSessionInit",props:{block:{}},setup(c){return(r,b)=>(s(),o("div",we,[e("span",$e,d(c.block.model),1),b[0]||(b[0]=e("span",{class:"text-retro-border"},"|",-1)),e("span",null,d(c.block.tools.length)+" tools",1),c.block.permissionMode?(s(),o("span",Te,"|")):m("",!0),c.block.permissionMode?(s(),o("span",Se,d(c.block.permissionMode),1)):m("",!0)]))}}),Ce=F({__name:"ChatContentBlock",props:{block:{},toolResultsByUseId:{}},setup(c){const r=c,b=i(()=>{if(r.block.type==="tool_use")return r.toolResultsByUseId.get(r.block.toolUseId)});return(x,k)=>{const f=at,p=lt,v=j,U=pt,L=mt;return c.block.type==="text"?(s(),B(f,{key:0,block:c.block},null,8,["block"])):c.block.type==="thinking"?(s(),B(p,{key:1,block:c.block},null,8,["block"])):c.block.type==="tool_use"?(s(),B(v,{key:2,block:c.block,result:t(b)},null,8,["block","result"])):c.block.type==="result_summary"?(s(),B(U,{key:3,block:c.block},null,8,["block"])):c.block.type==="session_init"?(s(),B(L,{key:4,block:c.block},null,8,["block"])):m("",!0)}}}),Ae={class:"flex items-center gap-2 mb-1"},Ie={class:"text-xs font-mono text-retro-muted"},Be={key:0,class:"text-xs font-mono text-retro-yellow animate-pulse"},Re={key:1,class:"text-xs font-mono text-retro-muted"},Ue={key:2,class:"text-xs font-mono text-retro-red"},Me={class:"flex-1 min-w-0 w-full"},Ee={key:1,class:"mb-2 flex flex-wrap gap-2"},Le=["href","download"],We=["src","alt"],Oe={class:"mt-1 truncate text-[10px] font-mono text-retro-muted"},Ne={key:2,class:"text-sm font-mono text-retro-text break-words whitespace-pre-wrap pl-[3px] pt-[5px]"},De=["innerHTML"],ze={key:4,class:"text-xs font-mono text-retro-muted italic"},Pe={key:5,class:"inline-block w-2 h-4 bg-retro-cyan animate-pulse ml-0.5"},Y=F({__name:"ChatMessage",props:{message:{}},setup(c){const r=c,{renderMarkdown:b}=dt(),x=new Set(["read","readfile","view","glob","rg","grep","ls","list","listdir","listdirectory","listfiles","findfiles","searchfiles","searchcode","readbash","listbash"]);function k(w){return w.toLowerCase().replace(/[^a-z0-9]/g,"")}function f(w,S){return w.status==="error"||S?.isError?!1:x.has(k(w.name))}const p=i(()=>r.message.role==="user"),v=i(()=>r.message.status==="streaming"),U=i(()=>r.message.status==="error"),L=i(()=>r.message.status==="stopped"),z=i(()=>Tt(r.message)),h=i(()=>{const w=new Map;for(const S of r.message.contentBlocks??[])S.type==="tool_result"&&w.set(S.toolUseId,S);return w}),T=i(()=>{if(!r.message.contentBlocks)return[];const w=r.message.contentBlocks.filter(_=>_.type!=="tool_result"),S=[];for(const _ of w){const E=S.length>0?S[S.length-1]:null;if(E?.type==="text"&&_.type==="text"){const G=E.text||"",I=_.text||"";E.text=`${G}${I}`;continue}if(E?.type==="thinking"&&_.type==="thinking"){const G=E.thinking||"",I=_.thinking||"";E.thinking=`${G}${I}`;continue}S.push({..._})}const W=[];let M=[];const $=()=>{M.length!==0&&(W.push({id:`tool-group-${M[0].id}`,type:"tool_group_summary",tools:[...M]}),M=[])};for(const _ of S){if(_.type==="tool_use"){const E=h.value.get(_.toolUseId);if(f(_,E)){M.push(_);continue}}$(),W.push(_)}return $(),W}),A=i(()=>z.value&&T.value.length>0),P=i(()=>r.message.content.trim().length>0),Q=i(()=>r.message.attachments??[]),q=w=>new Date(w).toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit"}),R=i(()=>b(r.message.content));return(w,S)=>{const W=Wt,M=Ce;return s(),o("div",{class:N(["flex flex-col p-3",[t(p)?"bg-retro-dark/50":"bg-transparent",t(U)?"border-l-2 border-retro-red":""]])},[e("div",Ae,[e("div",{class:N(["flex-shrink-0 w-6 h-6 rounded flex items-center justify-center",t(p)?"bg-retro-cyan/20":"bg-retro-green/20"])},[t(p)?(s(),B(t(ft),{key:0,class:"w-4 h-4 text-retro-cyan"})):(s(),B(t(kt),{key:1,class:"w-4 h-4 text-retro-green"}))],2),e("span",{class:N(["text-xs font-mono",t(p)?"text-retro-cyan":"text-retro-green"])},d(t(p)?"You":"Assistant"),3),e("span",Ie,d(q(c.message.timestamp)),1),t(v)?(s(),o("span",Be," typing... ")):m("",!0),t(L)?(s(),o("span",Re," (stopped) ")):m("",!0),t(U)?(s(),o("span",Ue," (error) ")):m("",!0)]),e("div",Me,[t(A)?(s(!0),o(O,{key:0},V(t(T),$=>(s(),o(O,{key:$.id},[$.type==="tool_group_summary"?(s(),B(W,{key:0,tools:$.tools},null,8,["tools"])):(s(),B(M,{key:1,block:$,"tool-results-by-use-id":t(h)},null,8,["block","tool-results-by-use-id"]))],64))),128)):m("",!0),t(p)&&t(Q).length>0?(s(),o("div",Ee,[(s(!0),o(O,null,V(t(Q),$=>(s(),o("a",{key:$.id,href:$.dataUrl,download:$.name,target:"_blank",rel:"noopener noreferrer",class:"w-28 rounded border border-retro-border/70 bg-retro-black/70 p-1 hover:border-retro-cyan/60"},[e("img",{src:$.dataUrl,alt:$.name,class:"h-20 w-full rounded object-cover"},null,8,We),e("div",Oe,d($.name),1)],8,Le))),128))])):m("",!0),!t(A)&&t(P)&&t(p)?(s(),o("div",Ne,d(c.message.content),1)):m("",!0),!t(A)&&t(P)&&!t(p)?(s(),o("div",{key:3,class:"text-sm font-mono text-retro-text break-words chat-markdown px-1",innerHTML:t(R)},null,8,De)):m("",!0),!t(A)&&!t(P)&&!t(p)&&!t(v)?(s(),o("div",ze," (no visible response content) ")):m("",!0),t(v)?(s(),o("span",Pe)):m("",!0)])],2)}}}),Fe={class:"h-screen flex flex-col bg-retro-black text-retro-text font-mono overflow-hidden"},Ge={class:"h-14 shrink-0 border-b border-retro-border bg-retro-panel/50 px-8 flex items-center justify-between"},He={class:"shrink-0 flex border-b border-retro-border bg-retro-panel/30"},je=["onClick"],Ve={class:"flex-1 min-h-0 overflow-y-auto"},Je={key:0,class:"p-8"},Ke={class:"grid grid-cols-2 gap-4"},Qe={class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},Ye={key:1,class:"p-8 space-y-6 max-w-2xl mx-auto"},qe={class:"space-y-2"},Xe={class:"space-y-2"},Ze={class:"space-y-2"},ts={class:"space-y-2"},es={class:"space-y-2"},ss={class:"space-y-2"},rs={key:2,class:"p-8 space-y-8 max-w-2xl mx-auto"},os={class:"space-y-2"},ns={class:"space-y-2"},as={class:"space-y-2"},ls={class:"space-y-2"},is={class:"space-y-2"},cs={class:"space-y-2"},ds={class:"space-y-2"},us={class:"space-y-2"},ps={class:"space-y-2"},ms={class:"space-y-2"},bs={class:"space-y-2"},xs={class:"space-y-2"},gs={class:"space-y-2"},vs=F({__name:"design-guide",setup(c){const{isDark:r,toggleTheme:b}=ht(),x=St();$t(async()=>{await x.hydrate()});const k=[{id:"m1",role:"user",content:"Design System Validation Message",timestamp:new Date().toISOString()}],f={id:"blk-session-1",type:"session_init",model:"claude-sonnet-4-6",tools:["Read","Write","Edit","Bash","Glob","Grep","Agent"],permissionMode:"auto",cwd:"/Users/red/src/brick"},p={id:"blk-text-1",type:"text",text:"Here is a simple text response from the assistant."},v={id:"blk-text-2",type:"text",text:`## Markdown Rendering
9
+
10
+ This block demonstrates **bold**, *italic*, \`inline code\`, and:
11
+
12
+ \`\`\`typescript
13
+ function greet(name: string): string {
14
+ return \`Hello, \${name}!\`
15
+ }
16
+ \`\`\`
17
+
18
+ - List item one
19
+ - List item two
20
+ - List item three`},U={id:"blk-think-1",type:"thinking",thinking:"Let me check the file structure first."},L={id:"blk-think-2",type:"thinking",thinking:`I need to analyze the component architecture here. The user wants to add a design guide section for chat components. Let me look at the existing design-guide.vue to understand the current structure, then examine each chat component to understand their props and rendering logic. I should create sample data that covers all content block types: text, thinking, tool_use, tool_result, result_summary, and session_init. Each sample should demonstrate the component in a realistic state.
21
+
22
+ For tool blocks specifically, I need to cover:
23
+ - Read tool with file path
24
+ - Write tool with content preview
25
+ - Edit tool with before/after
26
+ - Command (bash) tool with command string
27
+ - Various statuses: running, pending, complete, error`},z={id:"blk-tool-read",type:"tool_use",toolUseId:"tu-read-1",name:"read",input:{file_path:"/Users/red/src/brick/pages/design-guide.vue",offset:1,limit:50},inputSummary:"Read design-guide.vue (lines 1-50)",status:"complete"},h={id:"blk-tr-read",type:"tool_result",toolUseId:"tu-read-1",content:`import { computed } from 'vue'
28
+
29
+ const items = computed(() => [
30
+ { id: 1, name: 'alpha' },
31
+ { id: 2, name: 'beta' },
32
+ ])
33
+
34
+ // ... 42 more lines ...`,isError:!1},T={id:"blk-tool-write",type:"tool_use",toolUseId:"tu-write-1",name:"write",input:{file_path:"/Users/red/src/brick/utils/helpers.ts",content:"export function formatDuration(ms: number): string {\n const s = Math.floor(ms / 1000)\n const m = Math.floor(s / 60)\n return m > 0 ? `${m}m ${s % 60}s` : `${s}s`\n}"},inputSummary:"Write utils/helpers.ts",status:"complete"},A={id:"blk-tr-write",type:"tool_result",toolUseId:"tu-write-1",content:"File written successfully.",isError:!1},P={id:"blk-tool-edit",type:"tool_use",toolUseId:"tu-edit-1",name:"edit",input:{file_path:"/Users/red/src/brick/components/chat/ChatMessage.vue",old_string:"text-retro-green",new_string:"text-retro-cyan"},inputSummary:"Edit ChatMessage.vue",status:"complete"},Q={id:"blk-tr-edit",type:"tool_result",toolUseId:"tu-edit-1",content:`--- a/components/chat/ChatMessage.vue
35
+ +++ b/components/chat/ChatMessage.vue
36
+ @@ -12,7 +12,7 @@
37
+ - class="text-retro-green"
38
+ + class="text-retro-cyan"`,isError:!1},q={id:"blk-tool-bash",type:"tool_use",toolUseId:"tu-bash-1",name:"bash",input:{command:"pnpm typecheck"},inputSummary:"$ pnpm typecheck",status:"complete"},R={id:"blk-tr-bash",type:"tool_result",toolUseId:"tu-bash-1",content:`$ pnpm typecheck
39
+
40
+ > brick@0.3.0 typecheck
41
+ > nuxt typecheck
42
+
43
+ ✔ No type errors found`,isError:!1},w={id:"blk-tool-running",type:"tool_use",toolUseId:"tu-run-1",name:"bash",input:{command:"pnpm test"},inputSummary:"$ pnpm test",status:"running"},S={id:"blk-tool-pending",type:"tool_use",toolUseId:"tu-pend-1",name:"write",input:{file_path:"/Users/red/src/brick/server/api/deploy.ts",content:"// deploy logic"},inputSummary:"Write server/api/deploy.ts",status:"pending"},W={id:"blk-tool-error",type:"tool_use",toolUseId:"tu-err-1",name:"bash",input:{command:"git push origin main"},inputSummary:"$ git push origin main",status:"error"},M={id:"blk-tr-err",type:"tool_result",toolUseId:"tu-err-1",content:"Error: Permission denied. Authentication failed for remote.",isError:!0},$={id:"blk-summary-1",type:"result_summary",totalCostUsd:.0342,durationMs:45200,numTurns:3,usage:{inputTokens:12450,outputTokens:3280,cacheCreationInputTokens:8e3,cacheReadInputTokens:4200}},_=tt("conversation"),E=[{key:"conversation",label:"ConversationItem"},{key:"message",label:"ChatMessage"},{key:"blocks",label:"Content Blocks"}],G={id:"msg-user-1",role:"user",content:"Can you read the design guide file and fix the color from green to cyan?",timestamp:new Date().toISOString()},I={id:"msg-user-img",role:"user",content:"Here is a screenshot of the current UI. Please fix the layout issue.",timestamp:new Date().toISOString(),attachments:[{id:"att-1",name:"screenshot.png",mimeType:"image/png",size:245e3,dataUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNkYPj/HwADBwIAMCbHYQAAAABJRU5ErkJggg=="}]},ot={id:"msg-asst-1",role:"assistant",content:"",timestamp:new Date().toISOString(),status:"complete",contentBlocks:[f,U,p,z,P,v,$]},et={id:"msg-asst-stream",role:"assistant",content:"",timestamp:new Date().toISOString(),status:"streaming",contentBlocks:[L,{...p,id:"blk-text-stream",text:"I am currently analyzing the codebase to find the relevant files..."}]},H={id:"msg-asst-err",role:"assistant",content:"",timestamp:new Date().toISOString(),status:"error",contentBlocks:[{...p,id:"blk-text-err",text:"I encountered an error while processing your request."}]},nt={id:"msg-asst-stop",role:"assistant",content:"",timestamp:new Date().toISOString(),status:"stopped",contentBlocks:[{...p,id:"blk-text-stop",text:"I was working on the refactor when the operation was"}]},st=i(()=>{const J=[];for(const l of[!0,!1])J.push({id:`finalized-${l}`,label:`Finalized | ${l?"Active":"Inactive"}`,state:{isActive:l,isFinalized:!0,isPreviewing:!1,isStreaming:!1},conversation:{id:`c-f-${l}`,title:`Finalized Case (${l?"Active":"Idle"})`,messages:k,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString(),cwd:"/repo",finalized:!0}});for(const l of[!0,!1])for(const g of[!0,!1])for(const K of[!0,!1])J.push({id:`normal-${l}-${g}-${K}`,label:`${l?"Active":"Idle"} | ${g?"Preview":"Normal"} | ${K?"Streaming":"Static"}`,state:{isActive:l,isFinalized:!1,isPreviewing:g,isStreaming:K},conversation:{id:`c-n-${l}-${g}-${K}`,title:`${g?"Preview":"Normal"} (${l?"Active":"Idle"})`,messages:k,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString(),cwd:"/repo",finalized:!1,worktreeBranch:g?"feature/ui-fix":void 0,hasWorktree:g}});return J});return(J,l)=>(s(),o("div",Fe,[e("header",Ge,[l[1]||(l[1]=e("h1",{class:"text-lg font-bold text-retro-cyan uppercase tracking-widest"},"Design Guide",-1)),e("button",{onClick:l[0]||(l[0]=(...g)=>t(b)&&t(b)(...g)),class:"p-2 rounded border border-retro-border hover:border-retro-cyan transition-colors bg-retro-black"},[t(r)?(s(),B(t(yt),{key:0,class:"w-5 h-5 text-retro-yellow"})):(s(),B(t(vt),{key:1,class:"w-5 h-5 text-retro-cyan"}))])]),e("nav",He,[(s(),o(O,null,V(E,g=>e("button",{key:g.key,onClick:K=>_.value=g.key,class:N(["px-6 py-2.5 text-xs font-bold uppercase tracking-widest border-r border-retro-border transition-colors",_.value===g.key?"text-retro-cyan bg-retro-black border-b-2 border-b-retro-cyan":"text-retro-muted hover:text-retro-text hover:bg-retro-panel/50"])},d(g.label),11,je)),64))]),e("div",Ve,[_.value==="conversation"?(s(),o("section",Je,[e("div",Ke,[(s(!0),o(O,null,V(st.value,g=>(s(),o("div",{key:g.id,class:"space-y-1.5 p-3 border border-retro-border rounded-lg"},[e("span",Qe,d(g.label),1),y(_t,{conversation:g.conversation,"is-active":g.state.isActive,"is-streaming":g.state.isStreaming,"is-previewing":g.state.isPreviewing},null,8,["conversation","is-active","is-streaming","is-previewing"])]))),128))])])):_.value==="message"?(s(),o("section",Ye,[e("div",qe,[l[2]||(l[2]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"User Message",-1)),y(Y,{message:G})]),e("div",Xe,[l[3]||(l[3]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"User Message + Image Attachment",-1)),y(Y,{message:I})]),e("div",Ze,[l[4]||(l[4]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"Assistant | Complete",-1)),y(Y,{message:ot})]),e("div",ts,[l[5]||(l[5]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"Assistant | Streaming",-1)),y(Y,{message:et})]),e("div",es,[l[6]||(l[6]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"Assistant | Error",-1)),y(Y,{message:H})]),e("div",ss,[l[7]||(l[7]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"Assistant | Stopped",-1)),y(Y,{message:nt})])])):_.value==="blocks"?(s(),o("section",rs,[e("div",os,[l[8]||(l[8]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"SessionInit",-1)),y(mt,{block:f})]),e("div",ns,[l[9]||(l[9]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"TextBlock | Short",-1)),y(at,{block:p})]),e("div",as,[l[10]||(l[10]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"TextBlock | Markdown",-1)),y(at,{block:v})]),e("div",ls,[l[11]||(l[11]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"ThinkingBlock | Short (auto-expanded)",-1)),y(lt,{block:U})]),e("div",is,[l[12]||(l[12]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"ThinkingBlock | Long (collapsed)",-1)),y(lt,{block:L})]),e("div",cs,[l[13]||(l[13]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"ToolBlock | Read [OK]",-1)),y(j,{block:z,result:h})]),e("div",ds,[l[14]||(l[14]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"ToolBlock | Write [OK]",-1)),y(j,{block:T,result:A})]),e("div",us,[l[15]||(l[15]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"ToolBlock | Edit [OK] + Diff",-1)),y(j,{block:P,result:Q})]),e("div",ps,[l[16]||(l[16]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"ToolBlock | Bash [OK]",-1)),y(j,{block:q,result:R})]),e("div",ms,[l[17]||(l[17]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"ToolBlock | Bash [RUN]",-1)),y(j,{block:w})]),e("div",bs,[l[18]||(l[18]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"ToolBlock | Write [WAIT]",-1)),y(j,{block:S})]),e("div",xs,[l[19]||(l[19]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"ToolBlock | Bash [ERR]",-1)),y(j,{block:W,result:M})]),e("div",gs,[l[20]||(l[20]=e("span",{class:"px-2 py-0.5 bg-retro-panel border border-retro-border text-[10px] text-retro-muted font-bold rounded uppercase tracking-tight"},"ResultSummary",-1)),y(pt,{block:$})])])):m("",!0)])]))}});export{vs as default};
@@ -1 +1 @@
1
- import{d as j,u as N,a as L,o as T,b as B,r as E,c as O,e as H,h as R,f as q,p as I,s as U,g as V,i as A,j as D,n as F,k as g,l as M,m as z,q as $,w as W,t as G,v as K,x as Q,y as J,z as X,A as S,B as _,C as Y,D as Z,E as ee}from"./DIOhMCOf.js";import{_ as te}from"./DlAUqK2U.js";const re=(...t)=>t.find(o=>o!==void 0);function ne(t){const o=t.componentName||"NuxtLink";function f(e){return typeof e=="string"&&e.startsWith("#")}function b(e,l,d){const n=d??t.trailingSlash;if(!e||n!=="append"&&n!=="remove")return e;if(typeof e=="string")return C(e,n);const i="path"in e&&e.path!==void 0?e.path:l(e).path;return{...e,name:void 0,path:C(i,n)}}function w(e){const l=N(),d=$(),n=g(()=>!!e.target&&e.target!=="_self"),i=g(()=>{const s=e.to||e.href||"";return typeof s=="string"&&z(s,{acceptRelative:!0})}),y=q("RouterLink"),h=typeof y!="string"?y.useLink:void 0,c=g(()=>{if(e.external)return!0;const s=e.to||e.href||"";return typeof s=="object"?!1:s===""||i.value}),a=g(()=>{const s=e.to||e.href||"";return c.value?s:b(s,l.resolve,e.trailingSlash)}),p=c.value?void 0:h?.({...e,to:a}),m=g(()=>{const s=e.trailingSlash??t.trailingSlash;if(!a.value||i.value||f(a.value))return a.value;if(c.value){const x=typeof a.value=="object"&&"path"in a.value?A(a.value):a.value,k=typeof x=="object"?l.resolve(x).href:x;return C(k,s)}return typeof a.value=="object"?l.resolve(a.value)?.href??null:C(M(d.app.baseURL,a.value),s)});return{to:a,hasTarget:n,isAbsoluteUrl:i,isExternal:c,href:m,isActive:p?.isActive??g(()=>a.value===l.currentRoute.value.path),isExactActive:p?.isExactActive??g(()=>a.value===l.currentRoute.value.path),route:p?.route??g(()=>l.resolve(a.value)),async navigate(s){await F(m.value,{replace:e.replace,external:c.value||n.value})}}}return j({name:o,props:{to:{type:[String,Object],default:void 0,required:!1},href:{type:[String,Object],default:void 0,required:!1},target:{type:String,default:void 0,required:!1},rel:{type:String,default:void 0,required:!1},noRel:{type:Boolean,default:void 0,required:!1},prefetch:{type:Boolean,default:void 0,required:!1},prefetchOn:{type:[String,Object],default:void 0,required:!1},noPrefetch:{type:Boolean,default:void 0,required:!1},activeClass:{type:String,default:void 0,required:!1},exactActiveClass:{type:String,default:void 0,required:!1},prefetchedClass:{type:String,default:void 0,required:!1},replace:{type:Boolean,default:void 0,required:!1},ariaCurrentValue:{type:String,default:void 0,required:!1},external:{type:Boolean,default:void 0,required:!1},custom:{type:Boolean,default:void 0,required:!1},trailingSlash:{type:String,default:void 0,required:!1}},useLink:w,setup(e,{slots:l}){const d=N(),{to:n,href:i,navigate:y,isExternal:h,hasTarget:c,isAbsoluteUrl:a}=w(e),p=U(!1),m=V(null),s=u=>{m.value=e.custom?u?.$el?.nextElementSibling:u?.$el};function x(u){return!p.value&&(typeof e.prefetchOn=="string"?e.prefetchOn===u:e.prefetchOn?.[u]??t.prefetchOn?.[u])&&(e.prefetch??t.prefetch)!==!1&&e.noPrefetch!==!0&&e.target!=="_blank"&&!le()}async function k(u=L()){if(p.value)return;p.value=!0;const v=typeof n.value=="string"?n.value:h.value?A(n.value):d.resolve(n.value).fullPath,r=h.value?new URL(v,window.location.href).href:v;await Promise.all([u.hooks.callHook("link:prefetch",r).catch(()=>{}),!h.value&&!c.value&&D(n.value,d).catch(()=>{})])}if(x("visibility")){const u=L();let v,r=null;T(()=>{const P=ie();B(()=>{v=E(()=>{m?.value?.tagName&&(r=P.observe(m.value,async()=>{r?.(),r=null,await k(u)}))})})}),O(()=>{v&&H(v),r?.(),r=null})}return()=>{if(!h.value&&!c.value&&!f(n.value)){const r={ref:s,to:n.value,activeClass:e.activeClass||t.activeClass,exactActiveClass:e.exactActiveClass||t.exactActiveClass,replace:e.replace,ariaCurrentValue:e.ariaCurrentValue,custom:e.custom};return e.custom||(x("interaction")&&(r.onPointerenter=k.bind(null,void 0),r.onFocus=k.bind(null,void 0)),p.value&&(r.class=e.prefetchedClass||t.prefetchedClass),r.rel=e.rel||void 0),R(q("RouterLink"),r,l.default)}const u=e.target||null,v=re(e.noRel?"":e.rel,t.externalRelAttribute,a.value||c.value?"noopener noreferrer":"")||null;return e.custom?l.default?l.default({href:i.value,navigate:y,prefetch:k,get route(){if(!i.value)return;const r=new URL(i.value,window.location.href);return{path:r.pathname,fullPath:r.pathname,get query(){return I(r.search)},hash:r.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:i.value}},rel:v,target:u,isExternal:h.value||c.value,isActive:!1,isExactActive:!1}):null:R("a",{ref:m,href:i.value||null,rel:v,target:u,onClick:r=>{if(!(h.value||c.value))return r.preventDefault(),e.replace?d.replace(i.value):d.push(i.value)}},l.default?.())}}})}const ae=ne(K);function C(t,o){const f=o==="append"?W:G;return z(t)&&!t.startsWith("http")?t:f(t,!0)}function ie(){const t=L();if(t._observer)return t._observer;let o=null;const f=new Map,b=(e,l)=>(o||=new IntersectionObserver(d=>{for(const n of d){const i=f.get(n.target);(n.isIntersecting||n.intersectionRatio>0)&&i&&i()}}),f.set(e,l),o.observe(e),()=>{f.delete(e),o?.unobserve(e),f.size===0&&(o?.disconnect(),o=null)});return t._observer={observe:b}}const oe=/2g/;function le(){const t=navigator.connection;return!!(t&&(t.saveData||oe.test(t.effectiveType)))}const se={class:"antialiased bg-white dark:bg-black dark:text-white font-sans grid min-h-screen overflow-hidden place-content-center text-black"},ue={class:"max-w-520px text-center z-20"},ce=["textContent"],fe=["textContent"],de={class:"flex items-center justify-center w-full"},ve={__name:"error-404",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},status:{type:Number,default:404},statusText:{type:String,default:"Not Found"},description:{type:String,default:"Sorry, the page you are looking for could not be found."},backHome:{type:String,default:"Go back home"}},setup(t){const o=t;return Q({title:`${o.status} - ${o.statusText} | ${o.appName}`,script:[{innerHTML:`!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))r(e);new MutationObserver(e=>{for(const o of e)if("childList"===o.type)for(const e of o.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&r(e)}).observe(document,{childList:!0,subtree:!0})}function r(e){if(e.ep)return;e.ep=!0;const r=function(e){const r={};return e.integrity&&(r.integrity=e.integrity),e.referrerPolicy&&(r.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?r.credentials="include":"anonymous"===e.crossOrigin?r.credentials="omit":r.credentials="same-origin",r}(e);fetch(e.href,r)}}();`}],style:[{innerHTML:'*,:after,:before{border-color:var(--un-default-border-color,#e5e7eb);border-style:solid;border-width:0;box-sizing:border-box}:after,:before{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}h1{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}h1,p{margin:0}*,:after,:before{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 transparent;--un-ring-shadow:0 0 transparent;--un-shadow-inset: ;--un-shadow:0 0 transparent;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgba(147,197,253,.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(f,b)=>{const w=ae;return J(),X("div",se,[b[0]||(b[0]=S("div",{class:"fixed left-0 right-0 spotlight z-10"},null,-1)),S("div",ue,[S("h1",{class:"font-medium mb-8 sm:text-10xl text-8xl",textContent:_(t.status)},null,8,ce),S("p",{class:"font-light leading-tight mb-16 px-8 sm:px-0 sm:text-4xl text-xl",textContent:_(t.description)},null,8,fe),S("div",de,[Y(w,{to:"/",class:"cursor-pointer gradient-border px-4 py-2 sm:px-6 sm:py-3 sm:text-xl text-md"},{default:Z(()=>[ee(_(t.backHome),1)]),_:1})])])])}}},ge=te(ve,[["__scopeId","data-v-5b1d1387"]]);export{ge as default};
1
+ import{d as j,u as N,a as L,o as T,b as B,r as E,c as O,e as H,h as R,f as q,p as I,s as U,g as V,i as A,j as D,n as F,k as g,l as M,m as z,q as $,w as W,t as G,v as K,x as Q,y as J,z as X,A as S,B as _,C as Y,D as Z,E as ee}from"./CzV__9yP.js";import{_ as te}from"./DlAUqK2U.js";const re=(...t)=>t.find(o=>o!==void 0);function ne(t){const o=t.componentName||"NuxtLink";function f(e){return typeof e=="string"&&e.startsWith("#")}function b(e,l,d){const n=d??t.trailingSlash;if(!e||n!=="append"&&n!=="remove")return e;if(typeof e=="string")return C(e,n);const i="path"in e&&e.path!==void 0?e.path:l(e).path;return{...e,name:void 0,path:C(i,n)}}function w(e){const l=N(),d=$(),n=g(()=>!!e.target&&e.target!=="_self"),i=g(()=>{const s=e.to||e.href||"";return typeof s=="string"&&z(s,{acceptRelative:!0})}),y=q("RouterLink"),h=typeof y!="string"?y.useLink:void 0,c=g(()=>{if(e.external)return!0;const s=e.to||e.href||"";return typeof s=="object"?!1:s===""||i.value}),a=g(()=>{const s=e.to||e.href||"";return c.value?s:b(s,l.resolve,e.trailingSlash)}),p=c.value?void 0:h?.({...e,to:a}),m=g(()=>{const s=e.trailingSlash??t.trailingSlash;if(!a.value||i.value||f(a.value))return a.value;if(c.value){const x=typeof a.value=="object"&&"path"in a.value?A(a.value):a.value,k=typeof x=="object"?l.resolve(x).href:x;return C(k,s)}return typeof a.value=="object"?l.resolve(a.value)?.href??null:C(M(d.app.baseURL,a.value),s)});return{to:a,hasTarget:n,isAbsoluteUrl:i,isExternal:c,href:m,isActive:p?.isActive??g(()=>a.value===l.currentRoute.value.path),isExactActive:p?.isExactActive??g(()=>a.value===l.currentRoute.value.path),route:p?.route??g(()=>l.resolve(a.value)),async navigate(s){await F(m.value,{replace:e.replace,external:c.value||n.value})}}}return j({name:o,props:{to:{type:[String,Object],default:void 0,required:!1},href:{type:[String,Object],default:void 0,required:!1},target:{type:String,default:void 0,required:!1},rel:{type:String,default:void 0,required:!1},noRel:{type:Boolean,default:void 0,required:!1},prefetch:{type:Boolean,default:void 0,required:!1},prefetchOn:{type:[String,Object],default:void 0,required:!1},noPrefetch:{type:Boolean,default:void 0,required:!1},activeClass:{type:String,default:void 0,required:!1},exactActiveClass:{type:String,default:void 0,required:!1},prefetchedClass:{type:String,default:void 0,required:!1},replace:{type:Boolean,default:void 0,required:!1},ariaCurrentValue:{type:String,default:void 0,required:!1},external:{type:Boolean,default:void 0,required:!1},custom:{type:Boolean,default:void 0,required:!1},trailingSlash:{type:String,default:void 0,required:!1}},useLink:w,setup(e,{slots:l}){const d=N(),{to:n,href:i,navigate:y,isExternal:h,hasTarget:c,isAbsoluteUrl:a}=w(e),p=U(!1),m=V(null),s=u=>{m.value=e.custom?u?.$el?.nextElementSibling:u?.$el};function x(u){return!p.value&&(typeof e.prefetchOn=="string"?e.prefetchOn===u:e.prefetchOn?.[u]??t.prefetchOn?.[u])&&(e.prefetch??t.prefetch)!==!1&&e.noPrefetch!==!0&&e.target!=="_blank"&&!le()}async function k(u=L()){if(p.value)return;p.value=!0;const v=typeof n.value=="string"?n.value:h.value?A(n.value):d.resolve(n.value).fullPath,r=h.value?new URL(v,window.location.href).href:v;await Promise.all([u.hooks.callHook("link:prefetch",r).catch(()=>{}),!h.value&&!c.value&&D(n.value,d).catch(()=>{})])}if(x("visibility")){const u=L();let v,r=null;T(()=>{const P=ie();B(()=>{v=E(()=>{m?.value?.tagName&&(r=P.observe(m.value,async()=>{r?.(),r=null,await k(u)}))})})}),O(()=>{v&&H(v),r?.(),r=null})}return()=>{if(!h.value&&!c.value&&!f(n.value)){const r={ref:s,to:n.value,activeClass:e.activeClass||t.activeClass,exactActiveClass:e.exactActiveClass||t.exactActiveClass,replace:e.replace,ariaCurrentValue:e.ariaCurrentValue,custom:e.custom};return e.custom||(x("interaction")&&(r.onPointerenter=k.bind(null,void 0),r.onFocus=k.bind(null,void 0)),p.value&&(r.class=e.prefetchedClass||t.prefetchedClass),r.rel=e.rel||void 0),R(q("RouterLink"),r,l.default)}const u=e.target||null,v=re(e.noRel?"":e.rel,t.externalRelAttribute,a.value||c.value?"noopener noreferrer":"")||null;return e.custom?l.default?l.default({href:i.value,navigate:y,prefetch:k,get route(){if(!i.value)return;const r=new URL(i.value,window.location.href);return{path:r.pathname,fullPath:r.pathname,get query(){return I(r.search)},hash:r.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:i.value}},rel:v,target:u,isExternal:h.value||c.value,isActive:!1,isExactActive:!1}):null:R("a",{ref:m,href:i.value||null,rel:v,target:u,onClick:r=>{if(!(h.value||c.value))return r.preventDefault(),e.replace?d.replace(i.value):d.push(i.value)}},l.default?.())}}})}const ae=ne(K);function C(t,o){const f=o==="append"?W:G;return z(t)&&!t.startsWith("http")?t:f(t,!0)}function ie(){const t=L();if(t._observer)return t._observer;let o=null;const f=new Map,b=(e,l)=>(o||=new IntersectionObserver(d=>{for(const n of d){const i=f.get(n.target);(n.isIntersecting||n.intersectionRatio>0)&&i&&i()}}),f.set(e,l),o.observe(e),()=>{f.delete(e),o?.unobserve(e),f.size===0&&(o?.disconnect(),o=null)});return t._observer={observe:b}}const oe=/2g/;function le(){const t=navigator.connection;return!!(t&&(t.saveData||oe.test(t.effectiveType)))}const se={class:"antialiased bg-white dark:bg-black dark:text-white font-sans grid min-h-screen overflow-hidden place-content-center text-black"},ue={class:"max-w-520px text-center z-20"},ce=["textContent"],fe=["textContent"],de={class:"flex items-center justify-center w-full"},ve={__name:"error-404",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},status:{type:Number,default:404},statusText:{type:String,default:"Not Found"},description:{type:String,default:"Sorry, the page you are looking for could not be found."},backHome:{type:String,default:"Go back home"}},setup(t){const o=t;return Q({title:`${o.status} - ${o.statusText} | ${o.appName}`,script:[{innerHTML:`!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))r(e);new MutationObserver(e=>{for(const o of e)if("childList"===o.type)for(const e of o.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&r(e)}).observe(document,{childList:!0,subtree:!0})}function r(e){if(e.ep)return;e.ep=!0;const r=function(e){const r={};return e.integrity&&(r.integrity=e.integrity),e.referrerPolicy&&(r.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?r.credentials="include":"anonymous"===e.crossOrigin?r.credentials="omit":r.credentials="same-origin",r}(e);fetch(e.href,r)}}();`}],style:[{innerHTML:'*,:after,:before{border-color:var(--un-default-border-color,#e5e7eb);border-style:solid;border-width:0;box-sizing:border-box}:after,:before{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}h1{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}h1,p{margin:0}*,:after,:before{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 transparent;--un-ring-shadow:0 0 transparent;--un-shadow-inset: ;--un-shadow:0 0 transparent;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgba(147,197,253,.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(f,b)=>{const w=ae;return J(),X("div",se,[b[0]||(b[0]=S("div",{class:"fixed left-0 right-0 spotlight z-10"},null,-1)),S("div",ue,[S("h1",{class:"font-medium mb-8 sm:text-10xl text-8xl",textContent:_(t.status)},null,8,ce),S("p",{class:"font-light leading-tight mb-16 px-8 sm:px-0 sm:text-4xl text-xl",textContent:_(t.description)},null,8,fe),S("div",de,[Y(w,{to:"/",class:"cursor-pointer gradient-border px-4 py-2 sm:px-6 sm:py-3 sm:text-xl text-md"},{default:Z(()=>[ee(_(t.backHome),1)]),_:1})])])])}}},ge=te(ve,[["__scopeId","data-v-5b1d1387"]]);export{ge as default};
@@ -1 +1 @@
1
- import{a as H,ab as C,ac as U,X as A,ad as W,O as T,ae as G,k as M,af as J,ag as X,g as Z,s as N,Z as Q,ah as Y,G as K,ai as ee,aj as te,ak as F,d as ae,y as g,z as p,A as _,B as w,K as S,I as V,J as I,L as k,E as se}from"./DIOhMCOf.js";import{k as re}from"./BjdLSVUw.js";const ne={trailing:!0};function oe(e,a=25,l={}){if(l={...ne,...l},!Number.isFinite(a))throw new TypeError("Expected `wait` to be a finite number");let c,r,y=[],s,t;const h=(d,u)=>(s=ie(e,d,u),s.finally(()=>{if(s=null,l.trailing&&t&&!r){const b=h(d,t);return t=null,b}}),s),D=function(...d){return l.trailing&&(t=d),s||new Promise(u=>{const b=!r&&l.leading;clearTimeout(r),r=setTimeout(()=>{r=null;const n=l.leading?c:h(this,d);t=null;for(const i of y)i(n);y=[]},a),b?(c=h(this,d),u(c)):y.push(u)})},o=d=>{d&&(clearTimeout(d),r=null)};return D.isPending=()=>!!r,D.cancel=()=>{o(r),y=[],t=null},D.flush=()=>{if(o(r),!t||s)return;const d=t;return t=null,h(this,d)},D}async function ie(e,a,l){return await e.apply(a,l)}const le=Symbol.for("nuxt:client-only"),ce=e=>e==="defer"||e===!1;function $e(...e){const a=typeof e[e.length-1]=="string"?e.pop():void 0;ue(e[0],e[1])&&e.unshift(a);let[l,c,r={}]=e,y=!1;const s=M(()=>te(l));if(typeof s.value!="string")throw new TypeError("[nuxt] [useAsyncData] key must be a string.");if(typeof c!="function")throw new TypeError("[nuxt] [useAsyncData] handler must be a function.");const t=H();r.server??=!0,r.default??=fe,r.getCachedData??=j,r.lazy??=!1,r.immediate??=!0,r.deep??=C.deep,r.dedupe??="cancel",r._functionName,t._asyncData[s.value];function h(){const n={cause:"initial",dedupe:r.dedupe};return t._asyncData[s.value]?._init||(n.cachedData=r.getCachedData(s.value,t,{cause:"initial"}),t._asyncData[s.value]=q(t,s.value,c,r,n.cachedData)),()=>t._asyncData[s.value].execute(n)}const D=h(),o=t._asyncData[s.value];o._deps++;const d=r.server!==!1&&t.payload.serverRendered;{let n=function(m){const f=t._asyncData[m];f?._deps&&(f._deps--,f._deps===0&&f?._off())};const i=J();if(i&&d&&r.immediate&&!i.sp&&(i.sp=[]),i&&!i._nuxtOnBeforeMountCbs){i._nuxtOnBeforeMountCbs=[];const m=i._nuxtOnBeforeMountCbs;U(()=>{m.forEach(f=>{f()}),m.splice(0,m.length)}),A(()=>m.splice(0,m.length))}const P=i&&(i._nuxtClientOnly||W(le,!1));d&&t.isHydrating&&(o.error.value||o.data.value!=null)?(o.pending.value=!1,o.status.value=o.error.value?"error":"success"):i&&(!P&&t.payload.serverRendered&&t.isHydrating||r.lazy)&&r.immediate?i._nuxtOnBeforeMountCbs.push(D):r.immediate&&D();const v=X(),x=T(s,(m,f)=>{if((m||f)&&m!==f){y=!0;const R=t._asyncData[f]?.data.value!==C.value,z=t._asyncDataPromises[f]!==void 0,L={cause:"initial",dedupe:r.dedupe};if(!t._asyncData[m]?._init){let O;f&&R?O=t._asyncData[f].data.value:(O=r.getCachedData(m,t,{cause:"initial"}),L.cachedData=O),t._asyncData[m]=q(t,m,c,r,O)}t._asyncData[m]._deps++,f&&n(f),(r.immediate||R||z)&&t._asyncData[m].execute(L),F(()=>{y=!1})}},{flush:"sync"}),E=r.watch?T(r.watch,()=>{y||(t._asyncData[s.value]?._execute.isPending()&&F(()=>{t._asyncData[s.value]?._execute.flush()}),t._asyncData[s.value]?._execute({cause:"watch",dedupe:r.dedupe}))}):()=>{};v&&G(()=>{x(),E(),n(s.value)})}const u={data:B(()=>t._asyncData[s.value]?.data),pending:B(()=>t._asyncData[s.value]?.pending),status:B(()=>t._asyncData[s.value]?.status),error:B(()=>t._asyncData[s.value]?.error),refresh:(...n)=>t._asyncData[s.value]?._init?t._asyncData[s.value].execute(...n):h()(),execute:(...n)=>u.refresh(...n),clear:()=>{const n=t._asyncData[s.value];if(n?._abortController)try{n._abortController.abort(new DOMException("AsyncData aborted by user.","AbortError"))}finally{n._abortController=void 0}$(t,s.value)}},b=Promise.resolve(t._asyncDataPromises[s.value]).then(()=>u);return Object.assign(b,u),b}function B(e){return M({get(){return e()?.value},set(a){const l=e();l&&(l.value=a)}})}function ue(e,a){return!(typeof e=="string"||typeof e=="object"&&e!==null||typeof e=="function"&&typeof a=="function")}function $(e,a){a in e.payload.data&&(e.payload.data[a]=void 0),a in e.payload._errors&&(e.payload._errors[a]=C.errorValue),e._asyncData[a]&&(e._asyncData[a].data.value=void 0,e._asyncData[a].error.value=C.errorValue,e._asyncData[a].pending.value=!1,e._asyncData[a].status.value="idle"),a in e._asyncDataPromises&&(e._asyncDataPromises[a]=void 0)}function de(e,a){const l={};for(const c of a)l[c]=e[c];return l}function q(e,a,l,c,r){e.payload._errors[a]??=C.errorValue;const y=c.getCachedData!==j,s=l,t=c.deep?Z:N,h=r!=null,D=e.hook("app:data:refresh",async d=>{(!d||d.includes(a))&&await o.execute({cause:"refresh:hook"})}),o={data:t(h?r:c.default()),pending:N(!h),error:ee(e.payload._errors,a),status:N("idle"),execute:(...d)=>{const[u,b=void 0]=d,n=u&&b===void 0&&typeof u=="object"?u:{};if(e._asyncDataPromises[a]&&ce(n.dedupe??c.dedupe))return e._asyncDataPromises[a];if(n.cause==="initial"||e.isHydrating){const v="cachedData"in n?n.cachedData:c.getCachedData(a,e,{cause:n.cause??"refresh:manual"});if(v!=null)return e.payload.data[a]=o.data.value=v,o.error.value=C.errorValue,o.status.value="success",Promise.resolve(v)}o.pending.value=!0,o._abortController&&o._abortController.abort(new DOMException("AsyncData request cancelled by deduplication","AbortError")),o._abortController=new AbortController,o.status.value="pending";const i=new AbortController,P=new Promise((v,x)=>{try{const E=n.timeout??c.timeout,m=me([o._abortController?.signal,n?.signal],i.signal,E);if(m.aborted){const f=m.reason;x(f instanceof Error?f:new DOMException(String(f??"Aborted"),"AbortError"));return}return m.addEventListener("abort",()=>{const f=m.reason;x(f instanceof Error?f:new DOMException(String(f??"Aborted"),"AbortError"))},{once:!0,signal:i.signal}),Promise.resolve(s(e,{signal:m})).then(v,x)}catch(E){x(E)}}).then(async v=>{let x=v;c.transform&&(x=await c.transform(v)),c.pick&&(x=de(x,c.pick)),e.payload.data[a]=x,o.data.value=x,o.error.value=C.errorValue,o.status.value="success"}).catch(v=>{if(e._asyncDataPromises[a]&&e._asyncDataPromises[a]!==P||o._abortController?.signal.aborted)return e._asyncDataPromises[a];if(typeof DOMException<"u"&&v instanceof DOMException&&v.name==="AbortError")return o.status.value="idle",e._asyncDataPromises[a];o.error.value=Y(v),o.data.value=K(c.default()),o.status.value="error"}).finally(()=>{o.pending.value=!1,i.abort(),delete e._asyncDataPromises[a]});return e._asyncDataPromises[a]=P,e._asyncDataPromises[a]},_execute:oe((...d)=>o.execute(...d),0,{leading:!0}),_default:c.default,_deps:0,_init:!0,_hash:void 0,_off:()=>{D(),e._asyncData[a]?._init&&(e._asyncData[a]._init=!1),y||Q(()=>{e._asyncData[a]?._init||($(e,a),o.execute=()=>Promise.resolve(),o.data.value=C.value)})}};return o}const fe=()=>C.value,j=(e,a,l)=>{if(a.isHydrating)return a.payload.data[e];if(l.cause!=="refresh:manual"&&l.cause!=="refresh:hook")return a.static.data[e]};function me(e,a,l){const c=e.filter(s=>!!s);if(typeof l=="number"&&l>=0){const s=AbortSignal.timeout?.(l);s&&c.push(s)}if(AbortSignal.any)return AbortSignal.any(c);const r=new AbortController;for(const s of c)if(s.aborted){const t=s.reason??new DOMException("Aborted","AbortError");try{r.abort(t)}catch{r.abort()}return r.signal}const y=()=>{const t=c.find(h=>h.aborted)?.reason??new DOMException("Aborted","AbortError");try{r.abort(t)}catch{r.abort()}};for(const s of c)s.addEventListener?.("abort",y,{once:!0,signal:a});return r.signal}const be={class:"space-y-3"},ye={key:0,class:"rounded border border-retro-border bg-retro-panel px-4 py-3"},_e={key:1,class:"rounded border border-retro-border bg-retro-panel px-4 py-3"},he={class:"text-xs font-mono text-retro-yellow"},ge={key:2,class:"rounded border border-retro-border bg-retro-panel px-4 py-3"},pe={key:3,class:"space-y-4"},ve={key:0,class:"text-xs font-mono text-retro-muted"},De={key:1,class:"text-xs font-mono text-retro-muted"},xe={class:"flex flex-col gap-2"},Ce={class:"flex flex-col gap-2"},we={class:"flex items-start justify-between gap-3"},Pe={class:"text-sm font-mono text-retro-text"},Ee={key:0,class:"text-xs font-mono text-retro-yellow"},Se={key:1,class:"text-xs font-mono text-retro-yellow"},Me={class:"text-xs text-retro-muted leading-tight"},Oe={class:"flex flex-wrap gap-2"},ke={key:0,class:"text-xs font-mono text-retro-yellow"},Be={class:"space-y-1.5"},Ne=["value","checked","disabled","onChange"],Ve={class:"flex-1 space-y-0.5"},Ie={class:"flex items-center gap-2"},Re={class:"text-sm font-mono text-retro-text"},Le={key:0,class:"text-[0.55rem] font-mono uppercase tracking-[0.25em] text-retro-cyan border border-retro-cyan rounded-full px-2 py-0.5"},Te={class:"text-xs text-retro-muted leading-tight"},je=ae({__name:"ProviderSelector",props:{providers:{},selected:{},permissionMode:{},pending:{type:Boolean},errorMessage:{}},emits:["select"],setup(e,{emit:a}){const l=e,c=a,r=[{key:"streaming",label:"Streaming"},{key:"permissions",label:"Permissions"},{key:"resume",label:"Session Resume"},{key:"autoCommit",label:"Auto Commit"}],y=M(()=>l.permissionMode==="ask"||l.permissionMode==="plan"),s=M(()=>re[l.permissionMode]),t=M(()=>!0);function h(u){const b=!y.value||u.capabilities.permissions,n=!t.value||u.capabilities.streaming;return b&&n}function D(u){return y.value&&!u.capabilities.permissions?`${u.name} cannot be used with ${s.value} because it does not expose permission prompts.`:t.value&&!u.capabilities.streaming?`${u.name} is unavailable because streaming runtime prerequisites are not satisfied.`:null}function o(u,b){h(u)&&c("select",{providerId:u.id,modelKey:b})}function d(u,b){return l.selected.providerId===u&&l.selected.modelKey===b}return(u,b)=>(g(),p("div",be,[e.pending?(g(),p("div",ye,[...b[0]||(b[0]=[_("p",{class:"text-xs font-mono text-retro-text"},"Loading providers…",-1)])])):e.errorMessage?(g(),p("div",_e,[_("p",he,"Unable to load providers: "+w(e.errorMessage),1)])):e.providers.length===0?(g(),p("div",ge,[...b[1]||(b[1]=[_("p",{class:"text-xs font-mono text-retro-muted"},"No AI providers are configured on the server. Check with your administrator.",-1)])])):(g(),p("div",pe,[y.value?(g(),p("p",ve," Permission mode "+w(s.value)+" requires a provider that supports permission prompts. Incompatible providers are disabled. ",1)):S("",!0),t.value?(g(),p("p",De," Chat currently requires a provider with streaming support. Providers without streaming are shown for preparation but disabled. ")):S("",!0),(g(!0),p(V,null,I(e.providers,n=>(g(),p("article",{key:n.id,class:k(["rounded border border-retro-border bg-retro-panel p-4 space-y-3 transition",{"border-retro-cyan bg-retro-cyan/5":e.selected.providerId===n.id,"hover:border-retro-muted":e.selected.providerId!==n.id}])},[_("div",xe,[_("div",Ce,[_("div",we,[_("span",Pe,w(n.name),1),y.value&&!n.capabilities.permissions?(g(),p("div",Ee," Permissions missing ")):t.value&&!n.capabilities.streaming?(g(),p("div",Se," Streaming missing ")):S("",!0)]),_("p",Me,w(n.description),1),_("div",Oe,[(g(),p(V,null,I(r,i=>_("span",{key:i.key,class:k(["inline-flex items-center gap-1.5 rounded-full border px-2.5 py-0.5 text-[0.6rem] font-mono uppercase tracking-[0.18em]",n.capabilities[i.key]?"border-retro-cyan/70 text-retro-cyan bg-retro-cyan/10":"border-retro-border text-retro-muted bg-retro-dark/60"])},[_("span",{class:k(["h-1.5 w-1.5 rounded-full",n.capabilities[i.key]?"bg-retro-cyan":"bg-retro-muted"])},null,2),se(" "+w(i.label),1)],2)),64))])])]),D(n)?(g(),p("p",ke,w(D(n)),1)):S("",!0),_("div",Be,[(g(!0),p(V,null,I(n.models,i=>(g(),p("label",{key:i.key,class:k(["flex items-start gap-3 px-3 py-2 rounded border cursor-pointer transition-colors",[d(n.id,i.key)?"border-retro-cyan bg-retro-cyan/10":"border-retro-border bg-retro-panel hover:border-retro-muted",h(n)?"":"opacity-60 cursor-not-allowed"]])},[_("input",{type:"radio",name:"provider-model",value:`${n.id}:${i.key}`,checked:d(n.id,i.key),disabled:!h(n),class:"mt-1 h-3.5 w-3.5 text-retro-cyan accent-retro-cyan",onChange:P=>o(n,i.key)},null,40,Ne),_("div",Ve,[_("div",Ie,[_("span",Re,w(i.label),1),i.default?(g(),p("span",Le," Default ")):S("",!0)]),_("p",Te,w(i.description),1)])],2))),128))])],2))),128))]))]))}});export{je as _,$e as u};
1
+ import{a as H,aa as C,ab as U,X as A,ac as W,M as T,ad as G,k as M,ae as J,af as X,g as Z,s as N,Z as Q,ag as Y,G as K,ah as ee,ai as te,aj as F,d as ae,y as g,z as p,A as _,B as w,I as S,K as V,L as I,J as B,E as se}from"./CzV__9yP.js";import{m as re}from"./D_4Ow2w2.js";const ne={trailing:!0};function oe(e,a=25,l={}){if(l={...ne,...l},!Number.isFinite(a))throw new TypeError("Expected `wait` to be a finite number");let c,r,y=[],s,t;const h=(d,u)=>(s=ie(e,d,u),s.finally(()=>{if(s=null,l.trailing&&t&&!r){const b=h(d,t);return t=null,b}}),s),D=function(...d){return l.trailing&&(t=d),s||new Promise(u=>{const b=!r&&l.leading;clearTimeout(r),r=setTimeout(()=>{r=null;const n=l.leading?c:h(this,d);t=null;for(const i of y)i(n);y=[]},a),b?(c=h(this,d),u(c)):y.push(u)})},o=d=>{d&&(clearTimeout(d),r=null)};return D.isPending=()=>!!r,D.cancel=()=>{o(r),y=[],t=null},D.flush=()=>{if(o(r),!t||s)return;const d=t;return t=null,h(this,d)},D}async function ie(e,a,l){return await e.apply(a,l)}const le=Symbol.for("nuxt:client-only"),ce=e=>e==="defer"||e===!1;function $e(...e){const a=typeof e[e.length-1]=="string"?e.pop():void 0;ue(e[0],e[1])&&e.unshift(a);let[l,c,r={}]=e,y=!1;const s=M(()=>te(l));if(typeof s.value!="string")throw new TypeError("[nuxt] [useAsyncData] key must be a string.");if(typeof c!="function")throw new TypeError("[nuxt] [useAsyncData] handler must be a function.");const t=H();r.server??=!0,r.default??=fe,r.getCachedData??=j,r.lazy??=!1,r.immediate??=!0,r.deep??=C.deep,r.dedupe??="cancel",r._functionName,t._asyncData[s.value];function h(){const n={cause:"initial",dedupe:r.dedupe};return t._asyncData[s.value]?._init||(n.cachedData=r.getCachedData(s.value,t,{cause:"initial"}),t._asyncData[s.value]=q(t,s.value,c,r,n.cachedData)),()=>t._asyncData[s.value].execute(n)}const D=h(),o=t._asyncData[s.value];o._deps++;const d=r.server!==!1&&t.payload.serverRendered;{let n=function(m){const f=t._asyncData[m];f?._deps&&(f._deps--,f._deps===0&&f?._off())};const i=J();if(i&&d&&r.immediate&&!i.sp&&(i.sp=[]),i&&!i._nuxtOnBeforeMountCbs){i._nuxtOnBeforeMountCbs=[];const m=i._nuxtOnBeforeMountCbs;U(()=>{m.forEach(f=>{f()}),m.splice(0,m.length)}),A(()=>m.splice(0,m.length))}const P=i&&(i._nuxtClientOnly||W(le,!1));d&&t.isHydrating&&(o.error.value||o.data.value!=null)?(o.pending.value=!1,o.status.value=o.error.value?"error":"success"):i&&(!P&&t.payload.serverRendered&&t.isHydrating||r.lazy)&&r.immediate?i._nuxtOnBeforeMountCbs.push(D):r.immediate&&D();const v=X(),x=T(s,(m,f)=>{if((m||f)&&m!==f){y=!0;const R=t._asyncData[f]?.data.value!==C.value,z=t._asyncDataPromises[f]!==void 0,L={cause:"initial",dedupe:r.dedupe};if(!t._asyncData[m]?._init){let O;f&&R?O=t._asyncData[f].data.value:(O=r.getCachedData(m,t,{cause:"initial"}),L.cachedData=O),t._asyncData[m]=q(t,m,c,r,O)}t._asyncData[m]._deps++,f&&n(f),(r.immediate||R||z)&&t._asyncData[m].execute(L),F(()=>{y=!1})}},{flush:"sync"}),E=r.watch?T(r.watch,()=>{y||(t._asyncData[s.value]?._execute.isPending()&&F(()=>{t._asyncData[s.value]?._execute.flush()}),t._asyncData[s.value]?._execute({cause:"watch",dedupe:r.dedupe}))}):()=>{};v&&G(()=>{x(),E(),n(s.value)})}const u={data:k(()=>t._asyncData[s.value]?.data),pending:k(()=>t._asyncData[s.value]?.pending),status:k(()=>t._asyncData[s.value]?.status),error:k(()=>t._asyncData[s.value]?.error),refresh:(...n)=>t._asyncData[s.value]?._init?t._asyncData[s.value].execute(...n):h()(),execute:(...n)=>u.refresh(...n),clear:()=>{const n=t._asyncData[s.value];if(n?._abortController)try{n._abortController.abort(new DOMException("AsyncData aborted by user.","AbortError"))}finally{n._abortController=void 0}$(t,s.value)}},b=Promise.resolve(t._asyncDataPromises[s.value]).then(()=>u);return Object.assign(b,u),b}function k(e){return M({get(){return e()?.value},set(a){const l=e();l&&(l.value=a)}})}function ue(e,a){return!(typeof e=="string"||typeof e=="object"&&e!==null||typeof e=="function"&&typeof a=="function")}function $(e,a){a in e.payload.data&&(e.payload.data[a]=void 0),a in e.payload._errors&&(e.payload._errors[a]=C.errorValue),e._asyncData[a]&&(e._asyncData[a].data.value=void 0,e._asyncData[a].error.value=C.errorValue,e._asyncData[a].pending.value=!1,e._asyncData[a].status.value="idle"),a in e._asyncDataPromises&&(e._asyncDataPromises[a]=void 0)}function de(e,a){const l={};for(const c of a)l[c]=e[c];return l}function q(e,a,l,c,r){e.payload._errors[a]??=C.errorValue;const y=c.getCachedData!==j,s=l,t=c.deep?Z:N,h=r!=null,D=e.hook("app:data:refresh",async d=>{(!d||d.includes(a))&&await o.execute({cause:"refresh:hook"})}),o={data:t(h?r:c.default()),pending:N(!h),error:ee(e.payload._errors,a),status:N("idle"),execute:(...d)=>{const[u,b=void 0]=d,n=u&&b===void 0&&typeof u=="object"?u:{};if(e._asyncDataPromises[a]&&ce(n.dedupe??c.dedupe))return e._asyncDataPromises[a];if(n.cause==="initial"||e.isHydrating){const v="cachedData"in n?n.cachedData:c.getCachedData(a,e,{cause:n.cause??"refresh:manual"});if(v!=null)return e.payload.data[a]=o.data.value=v,o.error.value=C.errorValue,o.status.value="success",Promise.resolve(v)}o.pending.value=!0,o._abortController&&o._abortController.abort(new DOMException("AsyncData request cancelled by deduplication","AbortError")),o._abortController=new AbortController,o.status.value="pending";const i=new AbortController,P=new Promise((v,x)=>{try{const E=n.timeout??c.timeout,m=me([o._abortController?.signal,n?.signal],i.signal,E);if(m.aborted){const f=m.reason;x(f instanceof Error?f:new DOMException(String(f??"Aborted"),"AbortError"));return}return m.addEventListener("abort",()=>{const f=m.reason;x(f instanceof Error?f:new DOMException(String(f??"Aborted"),"AbortError"))},{once:!0,signal:i.signal}),Promise.resolve(s(e,{signal:m})).then(v,x)}catch(E){x(E)}}).then(async v=>{let x=v;c.transform&&(x=await c.transform(v)),c.pick&&(x=de(x,c.pick)),e.payload.data[a]=x,o.data.value=x,o.error.value=C.errorValue,o.status.value="success"}).catch(v=>{if(e._asyncDataPromises[a]&&e._asyncDataPromises[a]!==P||o._abortController?.signal.aborted)return e._asyncDataPromises[a];if(typeof DOMException<"u"&&v instanceof DOMException&&v.name==="AbortError")return o.status.value="idle",e._asyncDataPromises[a];o.error.value=Y(v),o.data.value=K(c.default()),o.status.value="error"}).finally(()=>{o.pending.value=!1,i.abort(),delete e._asyncDataPromises[a]});return e._asyncDataPromises[a]=P,e._asyncDataPromises[a]},_execute:oe((...d)=>o.execute(...d),0,{leading:!0}),_default:c.default,_deps:0,_init:!0,_hash:void 0,_off:()=>{D(),e._asyncData[a]?._init&&(e._asyncData[a]._init=!1),y||Q(()=>{e._asyncData[a]?._init||($(e,a),o.execute=()=>Promise.resolve(),o.data.value=C.value)})}};return o}const fe=()=>C.value,j=(e,a,l)=>{if(a.isHydrating)return a.payload.data[e];if(l.cause!=="refresh:manual"&&l.cause!=="refresh:hook")return a.static.data[e]};function me(e,a,l){const c=e.filter(s=>!!s);if(typeof l=="number"&&l>=0){const s=AbortSignal.timeout?.(l);s&&c.push(s)}if(AbortSignal.any)return AbortSignal.any(c);const r=new AbortController;for(const s of c)if(s.aborted){const t=s.reason??new DOMException("Aborted","AbortError");try{r.abort(t)}catch{r.abort()}return r.signal}const y=()=>{const t=c.find(h=>h.aborted)?.reason??new DOMException("Aborted","AbortError");try{r.abort(t)}catch{r.abort()}};for(const s of c)s.addEventListener?.("abort",y,{once:!0,signal:a});return r.signal}const be={class:"space-y-3"},ye={key:0,class:"rounded border border-retro-border bg-retro-panel px-4 py-3"},_e={key:1,class:"rounded border border-retro-border bg-retro-panel px-4 py-3"},he={class:"text-xs font-mono text-retro-yellow"},ge={key:2,class:"rounded border border-retro-border bg-retro-panel px-4 py-3"},pe={key:3,class:"space-y-4"},ve={key:0,class:"text-xs font-mono text-retro-muted"},De={key:1,class:"text-xs font-mono text-retro-muted"},xe={class:"flex flex-col gap-2"},Ce={class:"flex flex-col gap-2"},we={class:"flex items-start justify-between gap-3"},Pe={class:"text-sm font-mono text-retro-text"},Ee={key:0,class:"text-xs font-mono text-retro-yellow"},Se={key:1,class:"text-xs font-mono text-retro-yellow"},Me={class:"text-xs text-retro-muted leading-tight"},Oe={class:"flex flex-wrap gap-2"},Be={key:0,class:"text-xs font-mono text-retro-yellow"},ke={class:"space-y-1.5"},Ne=["value","checked","disabled","onChange"],Ve={class:"flex-1 space-y-0.5"},Ie={class:"flex items-center gap-2"},Re={class:"text-sm font-mono text-retro-text"},Le={key:0,class:"text-[0.55rem] font-mono uppercase tracking-[0.25em] text-retro-cyan border border-retro-cyan rounded-full px-2 py-0.5"},Te={class:"text-xs text-retro-muted leading-tight"},je=ae({__name:"ProviderSelector",props:{providers:{},selected:{},permissionMode:{},pending:{type:Boolean},errorMessage:{}},emits:["select"],setup(e,{emit:a}){const l=e,c=a,r=[{key:"streaming",label:"Streaming"},{key:"permissions",label:"Permissions"},{key:"resume",label:"Session Resume"},{key:"autoCommit",label:"Auto Commit"}],y=M(()=>l.permissionMode==="ask"||l.permissionMode==="plan"),s=M(()=>re[l.permissionMode]),t=M(()=>!0);function h(u){const b=!y.value||u.capabilities.permissions,n=!t.value||u.capabilities.streaming;return b&&n}function D(u){return y.value&&!u.capabilities.permissions?`${u.name} cannot be used with ${s.value} because it does not expose permission prompts.`:t.value&&!u.capabilities.streaming?`${u.name} is unavailable because streaming runtime prerequisites are not satisfied.`:null}function o(u,b){h(u)&&c("select",{providerId:u.id,modelKey:b})}function d(u,b){return l.selected.providerId===u&&l.selected.modelKey===b}return(u,b)=>(g(),p("div",be,[e.pending?(g(),p("div",ye,[...b[0]||(b[0]=[_("p",{class:"text-xs font-mono text-retro-text"},"Loading providers…",-1)])])):e.errorMessage?(g(),p("div",_e,[_("p",he,"Unable to load providers: "+w(e.errorMessage),1)])):e.providers.length===0?(g(),p("div",ge,[...b[1]||(b[1]=[_("p",{class:"text-xs font-mono text-retro-muted"},"No AI providers are configured on the server. Check with your administrator.",-1)])])):(g(),p("div",pe,[y.value?(g(),p("p",ve," Permission mode "+w(s.value)+" requires a provider that supports permission prompts. Incompatible providers are disabled. ",1)):S("",!0),t.value?(g(),p("p",De," Chat currently requires a provider with streaming support. Providers without streaming are shown for preparation but disabled. ")):S("",!0),(g(!0),p(V,null,I(e.providers,n=>(g(),p("article",{key:n.id,class:B(["rounded border border-retro-border bg-retro-panel p-4 space-y-3 transition",{"border-retro-cyan bg-retro-cyan/5":e.selected.providerId===n.id,"hover:border-retro-muted":e.selected.providerId!==n.id}])},[_("div",xe,[_("div",Ce,[_("div",we,[_("span",Pe,w(n.name),1),y.value&&!n.capabilities.permissions?(g(),p("div",Ee," Permissions missing ")):t.value&&!n.capabilities.streaming?(g(),p("div",Se," Streaming missing ")):S("",!0)]),_("p",Me,w(n.description),1),_("div",Oe,[(g(),p(V,null,I(r,i=>_("span",{key:i.key,class:B(["inline-flex items-center gap-1.5 rounded-full border px-2.5 py-0.5 text-[0.6rem] font-mono uppercase tracking-[0.18em]",n.capabilities[i.key]?"border-retro-cyan/70 text-retro-cyan bg-retro-cyan/10":"border-retro-border text-retro-muted bg-retro-dark/60"])},[_("span",{class:B(["h-1.5 w-1.5 rounded-full",n.capabilities[i.key]?"bg-retro-cyan":"bg-retro-muted"])},null,2),se(" "+w(i.label),1)],2)),64))])])]),D(n)?(g(),p("p",Be,w(D(n)),1)):S("",!0),_("div",ke,[(g(!0),p(V,null,I(n.models,i=>(g(),p("label",{key:i.key,class:B(["flex items-start gap-3 px-3 py-2 rounded border cursor-pointer transition-colors",[d(n.id,i.key)?"border-retro-cyan bg-retro-cyan/10":"border-retro-border bg-retro-panel hover:border-retro-muted",h(n)?"":"opacity-60 cursor-not-allowed"]])},[_("input",{type:"radio",name:"provider-model",value:`${n.id}:${i.key}`,checked:d(n.id,i.key),disabled:!h(n),class:"mt-1 h-3.5 w-3.5 text-retro-cyan accent-retro-cyan",onChange:P=>o(n,i.key)},null,40,Ne),_("div",Ve,[_("div",Ie,[_("span",Re,w(i.label),1),i.default?(g(),p("span",Le," Default ")):S("",!0)]),_("p",Te,w(i.description),1)])],2))),128))])],2))),128))]))]))}});export{je as _,$e as u};
@@ -1 +1 @@
1
- import{u as f,a as g}from"./BjdLSVUw.js";import{_ as x,u as S}from"./Su-Cl_JF.js";import{d as _,o as y,F as M,y as w,z as C,A as s,C as h,G as n,k as i}from"./DIOhMCOf.js";const A={class:"p-6 max-w-2xl"},E={class:"mt-8 space-y-8"},D=_({__name:"settings",async setup(P){let r,a;const o=f(),d=g();y(()=>{o.hydrate()});const{data:p,pending:l,error:c}=([r,a]=M(()=>S("ai-providers",()=>$fetch("/api/ai/providers"))),r=await r,a(),r),m=i(()=>p.value?.providers??[]),u=i(()=>{const t=c.value;return t?t instanceof Error?t.message:String(t):null}),v=t=>{o.setProviderSelection(t),d.success("Settings saved")};return(t,e)=>(w(),C("div",A,[e[2]||(e[2]=s("h1",{class:"text-2xl font-bold text-retro-cyan font-mono"},"Settings",-1)),e[3]||(e[3]=s("p",{class:"mt-2 text-retro-muted"},"Configure your Spec Cat preferences.",-1)),s("div",E,[s("section",null,[e[0]||(e[0]=s("h2",{class:"text-lg font-mono text-retro-text mb-4"},"AI Provider",-1)),e[1]||(e[1]=s("p",{class:"text-sm text-retro-muted mb-4"}," Select the provider and model that should power new conversations. ",-1)),h(x,{providers:m.value,selected:n(o).providerSelection,permissionMode:n(o).permissionMode,pending:n(l),errorMessage:u.value,onSelect:v},null,8,["providers","selected","permissionMode","pending","errorMessage"])])])]))}});export{D as default};
1
+ import{u as f,a as g}from"./D_4Ow2w2.js";import{_ as x,u as S}from"./BHhMtuRK.js";import{d as _,o as y,F as M,y as w,z as C,A as s,C as h,G as n,k as i}from"./CzV__9yP.js";const A={class:"p-6 max-w-2xl"},E={class:"mt-8 space-y-8"},D=_({__name:"settings",async setup(P){let r,a;const o=f(),d=g();y(()=>{o.hydrate()});const{data:p,pending:l,error:c}=([r,a]=M(()=>S("ai-providers",()=>$fetch("/api/ai/providers"))),r=await r,a(),r),m=i(()=>p.value?.providers??[]),u=i(()=>{const t=c.value;return t?t instanceof Error?t.message:String(t):null}),v=t=>{o.setProviderSelection(t),d.success("Settings saved")};return(t,e)=>(w(),C("div",A,[e[2]||(e[2]=s("h1",{class:"text-2xl font-bold text-retro-cyan font-mono"},"Settings",-1)),e[3]||(e[3]=s("p",{class:"mt-2 text-retro-muted"},"Configure your Spec Cat preferences.",-1)),s("div",E,[s("section",null,[e[0]||(e[0]=s("h2",{class:"text-lg font-mono text-retro-text mb-4"},"AI Provider",-1)),e[1]||(e[1]=s("p",{class:"text-sm text-retro-muted mb-4"}," Select the provider that should power new conversations. ",-1)),h(x,{providers:m.value,selected:n(o).providerSelection,permissionMode:n(o).permissionMode,pending:n(l),errorMessage:u.value,onSelect:v},null,8,["providers","selected","permissionMode","pending","errorMessage"])])])]))}});export{D as default};
@@ -1 +1 @@
1
- import{_ as s}from"./DlAUqK2U.js";import{x as i,y as a,z as u,A as e,B as o}from"./DIOhMCOf.js";const l={class:"antialiased bg-white dark:bg-black dark:text-white font-sans grid min-h-screen overflow-hidden place-content-center text-black"},c={class:"max-w-520px text-center"},d=["textContent"],p=["textContent"],f={__name:"error-500",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},status:{type:Number,default:500},statusText:{type:String,default:"Server error"},description:{type:String,default:"This page is temporarily unavailable."}},setup(t){const r=t;return i({title:`${r.status} - ${r.statusText} | ${r.appName}`,script:[{innerHTML:`!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))r(e);new MutationObserver(e=>{for(const o of e)if("childList"===o.type)for(const e of o.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&r(e)}).observe(document,{childList:!0,subtree:!0})}function r(e){if(e.ep)return;e.ep=!0;const r=function(e){const r={};return e.integrity&&(r.integrity=e.integrity),e.referrerPolicy&&(r.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?r.credentials="include":"anonymous"===e.crossOrigin?r.credentials="omit":r.credentials="same-origin",r}(e);fetch(e.href,r)}}();`}],style:[{innerHTML:'*,:after,:before{border-color:var(--un-default-border-color,#e5e7eb);border-style:solid;border-width:0;box-sizing:border-box}:after,:before{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}h1{font-size:inherit;font-weight:inherit}h1,p{margin:0}*,:after,:before{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 transparent;--un-ring-shadow:0 0 transparent;--un-shadow-inset: ;--un-shadow:0 0 transparent;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgba(147,197,253,.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(g,n)=>(a(),u("div",l,[n[0]||(n[0]=e("div",{class:"-bottom-1/2 fixed h-1/2 left-0 right-0 spotlight"},null,-1)),e("div",c,[e("h1",{class:"font-medium mb-8 sm:text-10xl text-8xl",textContent:o(t.status)},null,8,d),e("p",{class:"font-light leading-tight mb-16 px-8 sm:px-0 sm:text-4xl text-xl",textContent:o(t.description)},null,8,p)])]))}},b=s(f,[["__scopeId","data-v-6dec408c"]]);export{b as default};
1
+ import{_ as s}from"./DlAUqK2U.js";import{x as i,y as a,z as u,A as e,B as o}from"./CzV__9yP.js";const l={class:"antialiased bg-white dark:bg-black dark:text-white font-sans grid min-h-screen overflow-hidden place-content-center text-black"},c={class:"max-w-520px text-center"},d=["textContent"],p=["textContent"],f={__name:"error-500",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},status:{type:Number,default:500},statusText:{type:String,default:"Server error"},description:{type:String,default:"This page is temporarily unavailable."}},setup(t){const r=t;return i({title:`${r.status} - ${r.statusText} | ${r.appName}`,script:[{innerHTML:`!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))r(e);new MutationObserver(e=>{for(const o of e)if("childList"===o.type)for(const e of o.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&r(e)}).observe(document,{childList:!0,subtree:!0})}function r(e){if(e.ep)return;e.ep=!0;const r=function(e){const r={};return e.integrity&&(r.integrity=e.integrity),e.referrerPolicy&&(r.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?r.credentials="include":"anonymous"===e.crossOrigin?r.credentials="omit":r.credentials="same-origin",r}(e);fetch(e.href,r)}}();`}],style:[{innerHTML:'*,:after,:before{border-color:var(--un-default-border-color,#e5e7eb);border-style:solid;border-width:0;box-sizing:border-box}:after,:before{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}h1{font-size:inherit;font-weight:inherit}h1,p{margin:0}*,:after,:before{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 transparent;--un-ring-shadow:0 0 transparent;--un-shadow-inset: ;--un-shadow:0 0 transparent;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgba(147,197,253,.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(g,n)=>(a(),u("div",l,[n[0]||(n[0]=e("div",{class:"-bottom-1/2 fixed h-1/2 left-0 right-0 spotlight"},null,-1)),e("div",c,[e("h1",{class:"font-medium mb-8 sm:text-10xl text-8xl",textContent:o(t.status)},null,8,d),e("p",{class:"font-light leading-tight mb-16 px-8 sm:px-0 sm:text-4xl text-xl",textContent:o(t.description)},null,8,p)])]))}},b=s(f,[["__scopeId","data-v-6dec408c"]]);export{b as default};
@@ -0,0 +1 @@
1
+ import{_ as e}from"./DlAUqK2U.js";import{z as r,y as c}from"./CzV__9yP.js";const o={};function t(n,s){return c(),r("div")}const f=e(o,[["render",t]]);export{f as default};