spiracha 1.5.0 → 2.0.0

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 (365) hide show
  1. package/AGENTS.md +114 -205
  2. package/README.md +89 -269
  3. package/apps/ui/AGENTS.md +17 -7
  4. package/apps/ui/README.md +34 -8
  5. package/apps/ui/components.json +21 -0
  6. package/apps/ui/package.json +65 -0
  7. package/apps/ui/src/components/antigravity-conversations-table.tsx +206 -0
  8. package/apps/ui/src/components/antigravity-keychain-panel.tsx +76 -0
  9. package/apps/ui/src/components/antigravity-workspaces-table.tsx +63 -0
  10. package/apps/ui/src/components/app-shell.tsx +124 -0
  11. package/apps/ui/src/components/breadcrumbs.tsx +53 -0
  12. package/apps/ui/src/components/claude-code-sessions-table.tsx +114 -0
  13. package/apps/ui/src/components/claude-code-workspaces-table.tsx +55 -0
  14. package/apps/ui/src/components/cursor-threads-table.tsx +189 -0
  15. package/apps/ui/src/components/cursor-workspaces-table.tsx +140 -0
  16. package/apps/ui/src/components/data-table.tsx +241 -0
  17. package/apps/ui/src/components/delete-confirm-dialog.tsx +88 -0
  18. package/apps/ui/src/components/export-dialog.tsx +184 -0
  19. package/apps/ui/src/components/json-panel.tsx +17 -0
  20. package/apps/ui/src/components/kiro-sessions-table.tsx +112 -0
  21. package/apps/ui/src/components/kiro-workspaces-table.tsx +53 -0
  22. package/apps/ui/src/components/list-search-input.tsx +18 -0
  23. package/apps/ui/src/components/loading-panel.tsx +23 -0
  24. package/apps/ui/src/components/metadata-section.tsx +31 -0
  25. package/apps/ui/src/components/metric-card.tsx +19 -0
  26. package/apps/ui/src/components/opencode-sessions-table.tsx +128 -0
  27. package/apps/ui/src/components/opencode-workspaces-table.tsx +57 -0
  28. package/apps/ui/src/components/page-header.tsx +33 -0
  29. package/apps/ui/src/components/projects-loading-state.tsx +74 -0
  30. package/apps/ui/src/components/projects-table.tsx +108 -0
  31. package/apps/ui/src/components/qoder-sessions-table.tsx +112 -0
  32. package/apps/ui/src/components/qoder-workspaces-table.tsx +53 -0
  33. package/apps/ui/src/components/recent-threads-list.tsx +52 -0
  34. package/apps/ui/src/components/reload-error-panel.tsx +20 -0
  35. package/apps/ui/src/components/text-document-panel.tsx +19 -0
  36. package/apps/ui/src/components/theme-toggle.tsx +48 -0
  37. package/apps/ui/src/components/threads-table.tsx +202 -0
  38. package/apps/ui/src/components/transcript-view.tsx +552 -0
  39. package/apps/ui/src/components/ui/alert-dialog.tsx +160 -0
  40. package/apps/ui/src/components/ui/badge.tsx +45 -0
  41. package/apps/ui/src/components/ui/button.tsx +62 -0
  42. package/apps/ui/src/components/ui/checkbox.tsx +29 -0
  43. package/apps/ui/src/components/ui/dialog.tsx +137 -0
  44. package/apps/ui/src/components/ui/dropdown-menu.tsx +217 -0
  45. package/apps/ui/src/components/ui/input.tsx +21 -0
  46. package/apps/ui/src/components/ui/scroll-area.tsx +46 -0
  47. package/apps/ui/src/components/ui/select.tsx +163 -0
  48. package/apps/ui/src/components/ui/separator.tsx +28 -0
  49. package/apps/ui/src/components/ui/sheet.tsx +107 -0
  50. package/apps/ui/src/components/ui/skeleton.tsx +7 -0
  51. package/apps/ui/src/components/ui/table.tsx +76 -0
  52. package/apps/ui/src/components/ui/tabs.tsx +71 -0
  53. package/apps/ui/src/components/ui/tooltip.tsx +44 -0
  54. package/apps/ui/src/integrations/tanstack-query/devtools.tsx +6 -0
  55. package/apps/ui/src/integrations/tanstack-query/root-provider.tsx +10 -0
  56. package/apps/ui/src/lib/antigravity-conversation-state.ts +28 -0
  57. package/apps/ui/src/lib/antigravity-queries.ts +33 -0
  58. package/apps/ui/src/lib/antigravity-server.ts +128 -0
  59. package/apps/ui/src/lib/antigravity-transcript-events.ts +335 -0
  60. package/apps/ui/src/lib/claude-code-queries.ts +26 -0
  61. package/apps/ui/src/lib/claude-code-server.ts +75 -0
  62. package/apps/ui/src/lib/claude-code-transcript-events.ts +154 -0
  63. package/apps/ui/src/lib/codex-queries.ts +66 -0
  64. package/apps/ui/src/lib/codex-server.ts +209 -0
  65. package/apps/ui/src/lib/cursor-queries.ts +37 -0
  66. package/apps/ui/src/lib/cursor-server.ts +272 -0
  67. package/apps/ui/src/lib/cursor-transcript-events.ts +229 -0
  68. package/apps/ui/src/lib/download.ts +166 -0
  69. package/apps/ui/src/lib/formatters.ts +149 -0
  70. package/apps/ui/src/lib/kiro-queries.ts +22 -0
  71. package/apps/ui/src/lib/kiro-server.ts +73 -0
  72. package/apps/ui/src/lib/kiro-transcript-events.ts +113 -0
  73. package/apps/ui/src/lib/opencode-queries.ts +37 -0
  74. package/apps/ui/src/lib/opencode-server.ts +73 -0
  75. package/apps/ui/src/lib/opencode-transcript-events.ts +221 -0
  76. package/apps/ui/src/lib/package-metadata.ts +16 -0
  77. package/apps/ui/src/lib/path-utils.ts +13 -0
  78. package/apps/ui/src/lib/qoder-queries.ts +22 -0
  79. package/apps/ui/src/lib/qoder-server.ts +79 -0
  80. package/apps/ui/src/lib/qoder-transcript-events.ts +139 -0
  81. package/apps/ui/src/lib/route-search.ts +68 -0
  82. package/apps/ui/src/lib/settings-store.tsx +59 -0
  83. package/apps/ui/src/lib/source-session-export-server.ts +56 -0
  84. package/apps/ui/src/lib/text-filter.ts +22 -0
  85. package/apps/ui/src/lib/thread-id.ts +3 -0
  86. package/apps/ui/src/lib/thread-transcript-stats.ts +57 -0
  87. package/apps/ui/src/lib/utils.ts +7 -0
  88. package/apps/ui/src/routeTree.gen.ts +730 -0
  89. package/apps/ui/src/router.tsx +20 -0
  90. package/apps/ui/src/routes/$threadId.tsx +22 -0
  91. package/apps/ui/src/routes/__root.tsx +127 -0
  92. package/apps/ui/src/routes/analytics.tsx +143 -0
  93. package/apps/ui/src/routes/antigravity-conversations.$conversationId.tsx +438 -0
  94. package/apps/ui/src/routes/antigravity.$workspaceKey.tsx +127 -0
  95. package/apps/ui/src/routes/antigravity.index.tsx +51 -0
  96. package/apps/ui/src/routes/api.v1.conversation-query.ts +12 -0
  97. package/apps/ui/src/routes/api.v1.conversations.$source.$id.export.ts +12 -0
  98. package/apps/ui/src/routes/api.v1.conversations.$source.$id.ts +12 -0
  99. package/apps/ui/src/routes/api.v1.conversations.ts +12 -0
  100. package/apps/ui/src/routes/api.v1.resolve.ts +12 -0
  101. package/apps/ui/src/routes/api.v1.sources.ts +12 -0
  102. package/apps/ui/src/routes/claude-code-sessions.$sessionId.tsx +342 -0
  103. package/apps/ui/src/routes/claude-code.$workspaceKey.tsx +135 -0
  104. package/apps/ui/src/routes/claude-code.index.tsx +48 -0
  105. package/apps/ui/src/routes/codex.$project.tsx +390 -0
  106. package/apps/ui/src/routes/codex.index.tsx +116 -0
  107. package/apps/ui/src/routes/cursor-threads.$composerId.tsx +435 -0
  108. package/apps/ui/src/routes/cursor.$workspaceKey.tsx +416 -0
  109. package/apps/ui/src/routes/cursor.index.tsx +120 -0
  110. package/apps/ui/src/routes/index.tsx +124 -0
  111. package/apps/ui/src/routes/kiro-sessions.$sessionId.tsx +345 -0
  112. package/apps/ui/src/routes/kiro.$workspaceKey.tsx +136 -0
  113. package/apps/ui/src/routes/kiro.index.tsx +48 -0
  114. package/apps/ui/src/routes/opencode-sessions.$sessionId.tsx +334 -0
  115. package/apps/ui/src/routes/opencode.$workspaceKey.tsx +135 -0
  116. package/apps/ui/src/routes/opencode.index.tsx +48 -0
  117. package/apps/ui/src/routes/qoder-sessions.$sessionId.tsx +341 -0
  118. package/apps/ui/src/routes/qoder.$workspaceKey.tsx +139 -0
  119. package/apps/ui/src/routes/qoder.index.tsx +48 -0
  120. package/apps/ui/src/routes/settings.tsx +91 -0
  121. package/apps/ui/src/routes/threads.$threadId.tsx +619 -0
  122. package/apps/ui/src/styles.css +122 -0
  123. package/apps/ui/tsconfig.json +29 -0
  124. package/apps/ui/vite.config.ts +84 -0
  125. package/bin/spiracha.ts +32 -0
  126. package/package.json +46 -73
  127. package/src/client.ts +290 -0
  128. package/src/lib/antigravity-db.ts +213 -19
  129. package/src/lib/antigravity-exporter-types.ts +1 -0
  130. package/src/lib/codex-analytics.ts +1 -1
  131. package/src/lib/codex-browser-db.ts +410 -74
  132. package/src/lib/codex-browser-export.ts +6 -14
  133. package/src/lib/codex-browser-types.ts +1 -1
  134. package/src/lib/{codex-exporter-types.ts → codex-thread-types.ts} +2 -30
  135. package/src/lib/{codex-exporter-transcript.ts → codex-transcript-renderer.ts} +64 -28
  136. package/src/lib/conversation-api.ts +792 -0
  137. package/src/lib/conversation-data/adapter-helpers.ts +110 -0
  138. package/src/lib/conversation-data/antigravity-adapter.ts +148 -0
  139. package/src/lib/conversation-data/claude-code-adapter.ts +175 -0
  140. package/src/lib/conversation-data/codex-adapter.ts +245 -0
  141. package/src/lib/conversation-data/cursor-adapter.ts +171 -0
  142. package/src/lib/conversation-data/index.ts +311 -0
  143. package/src/lib/conversation-data/kiro-adapter.ts +140 -0
  144. package/src/lib/conversation-data/message-selector.ts +37 -0
  145. package/src/lib/conversation-data/opencode-adapter.ts +180 -0
  146. package/src/lib/conversation-data/path-match.ts +79 -0
  147. package/src/lib/conversation-data/qoder-adapter.ts +230 -0
  148. package/src/lib/conversation-data/types.ts +116 -0
  149. package/src/lib/cursor-db.ts +67 -21
  150. package/src/lib/cursor-exporter-types.ts +0 -19
  151. package/src/lib/qoder-acp-client.ts +268 -0
  152. package/src/lib/qoder-db.ts +1601 -0
  153. package/src/lib/qoder-exporter-types.ts +114 -0
  154. package/src/lib/qoder-transcript-phase.ts +41 -0
  155. package/src/lib/qoder-transcript.ts +112 -0
  156. package/apps/ui/dist/client/assets/_threadId-CAIeH5mq.js +0 -1
  157. package/apps/ui/dist/client/assets/analytics-DOy1b6Sh.js +0 -1
  158. package/apps/ui/dist/client/assets/antigravity-conversations._conversationId-DqySVO2K.js +0 -7
  159. package/apps/ui/dist/client/assets/antigravity-conversations._conversationId-KAcXtNxI.js +0 -1
  160. package/apps/ui/dist/client/assets/antigravity-keychain-panel-B77qJz6f.js +0 -1
  161. package/apps/ui/dist/client/assets/antigravity._workspaceKey-B3NM6gRH.js +0 -1
  162. package/apps/ui/dist/client/assets/antigravity._workspaceKey-ByitGWki.js +0 -1
  163. package/apps/ui/dist/client/assets/antigravity.index-DP9JC2P9.js +0 -1
  164. package/apps/ui/dist/client/assets/antigravity.index-DgW25FEV.js +0 -1
  165. package/apps/ui/dist/client/assets/badge-C3i4OKs8.js +0 -1
  166. package/apps/ui/dist/client/assets/checkbox-CdHitXWQ.js +0 -1
  167. package/apps/ui/dist/client/assets/claude-code-sessions._sessionId-8pQ55ci2.js +0 -1
  168. package/apps/ui/dist/client/assets/claude-code-sessions._sessionId-DVz5UmtU.js +0 -1
  169. package/apps/ui/dist/client/assets/claude-code._workspaceKey-BBKskSum.js +0 -1
  170. package/apps/ui/dist/client/assets/claude-code._workspaceKey-OkikMUFs.js +0 -1
  171. package/apps/ui/dist/client/assets/claude-code.index-Cwu76dbb.js +0 -1
  172. package/apps/ui/dist/client/assets/claude-code.index-D6eMd08t.js +0 -1
  173. package/apps/ui/dist/client/assets/createServerFn-B-KkwmHU.js +0 -3
  174. package/apps/ui/dist/client/assets/cursor-threads._composerId-CmBFclK8.js +0 -1
  175. package/apps/ui/dist/client/assets/cursor-threads._composerId-hBWlP1D-.js +0 -1
  176. package/apps/ui/dist/client/assets/cursor._workspaceKey-BFPkIRi-.js +0 -1
  177. package/apps/ui/dist/client/assets/cursor._workspaceKey-CaAZjGmm.js +0 -1
  178. package/apps/ui/dist/client/assets/cursor.index-8y4o20kb.js +0 -2
  179. package/apps/ui/dist/client/assets/cursor.index-CrnMwDCi.js +0 -1
  180. package/apps/ui/dist/client/assets/data-table-Br78_dk3.js +0 -4
  181. package/apps/ui/dist/client/assets/delete-confirm-dialog-Bxs07u-j.js +0 -7
  182. package/apps/ui/dist/client/assets/dist-B9pyYCVU.js +0 -1
  183. package/apps/ui/dist/client/assets/dist-BrJhN2A0.js +0 -5
  184. package/apps/ui/dist/client/assets/dist-Cmd3AIfD.js +0 -1
  185. package/apps/ui/dist/client/assets/dist-DvMS2965.js +0 -1
  186. package/apps/ui/dist/client/assets/download-Bf0QJKD3.js +0 -1
  187. package/apps/ui/dist/client/assets/dropdown-menu-D5cvPaZt.js +0 -1
  188. package/apps/ui/dist/client/assets/es2015-ad6040dw.js +0 -41
  189. package/apps/ui/dist/client/assets/export-dialog-Dr8d2MqD.js +0 -1
  190. package/apps/ui/dist/client/assets/formatters-BtqyrX_c.js +0 -1
  191. package/apps/ui/dist/client/assets/index-C-STgIH4.js +0 -166
  192. package/apps/ui/dist/client/assets/jsx-runtime-DGeXAQPT.js +0 -1
  193. package/apps/ui/dist/client/assets/kiro-sessions._sessionId-CKgfJ7GR.js +0 -1
  194. package/apps/ui/dist/client/assets/kiro-sessions._sessionId-zvIJHtQF.js +0 -1
  195. package/apps/ui/dist/client/assets/kiro._workspaceKey-DhVuJuZB.js +0 -1
  196. package/apps/ui/dist/client/assets/kiro._workspaceKey-QArsjkTY.js +0 -1
  197. package/apps/ui/dist/client/assets/kiro.index-C-fr4m7i.js +0 -1
  198. package/apps/ui/dist/client/assets/kiro.index-OYgAdtZd.js +0 -1
  199. package/apps/ui/dist/client/assets/metric-card-Dplm0ZiM.js +0 -1
  200. package/apps/ui/dist/client/assets/opencode-sessions._sessionId-DLjiTst-.js +0 -1
  201. package/apps/ui/dist/client/assets/opencode-sessions._sessionId-biBwrRbt.js +0 -8
  202. package/apps/ui/dist/client/assets/opencode._workspaceKey-C7OIzMOJ.js +0 -1
  203. package/apps/ui/dist/client/assets/opencode._workspaceKey-sBakX0oI.js +0 -1
  204. package/apps/ui/dist/client/assets/opencode.index-Bl_kNs9N.js +0 -1
  205. package/apps/ui/dist/client/assets/opencode.index-CN53bVmb.js +0 -1
  206. package/apps/ui/dist/client/assets/page-header-Cwa3p6Tl.js +0 -1
  207. package/apps/ui/dist/client/assets/preload-helper-B8fFrdxC.js +0 -1
  208. package/apps/ui/dist/client/assets/projects._project-D8WloxQN.js +0 -1
  209. package/apps/ui/dist/client/assets/projects._project-DSDwH4NF.js +0 -1
  210. package/apps/ui/dist/client/assets/projects.index-5xRtuJdX.js +0 -3
  211. package/apps/ui/dist/client/assets/projects.index-DEfhWqa8.js +0 -1
  212. package/apps/ui/dist/client/assets/react-dom-DL96Jor4.js +0 -1
  213. package/apps/ui/dist/client/assets/refresh-ccw-BgKjOiA6.js +0 -1
  214. package/apps/ui/dist/client/assets/reload-error-panel-AHqu0akK.js +0 -1
  215. package/apps/ui/dist/client/assets/routes-DnzF_9CX.js +0 -1
  216. package/apps/ui/dist/client/assets/scroll-text-fM0sMOB3.js +0 -1
  217. package/apps/ui/dist/client/assets/select-CYF6pF37.js +0 -1
  218. package/apps/ui/dist/client/assets/settings-Dx70jgP_.js +0 -1
  219. package/apps/ui/dist/client/assets/sqlite-error-B6uZjUe8.js +0 -1
  220. package/apps/ui/dist/client/assets/styles-B7Zi9EFA.css +0 -1
  221. package/apps/ui/dist/client/assets/tabs-CmuhkT-c.js +0 -7
  222. package/apps/ui/dist/client/assets/text-filter-DVAZySUS.js +0 -2
  223. package/apps/ui/dist/client/assets/thread-transcript-stats-BUNz6u7F.js +0 -1
  224. package/apps/ui/dist/client/assets/threads._threadId-BB9tTsV4.js +0 -1
  225. package/apps/ui/dist/client/assets/threads._threadId-BMRSFow3.js +0 -1
  226. package/apps/ui/dist/client/assets/useMutation-BSFult2i.js +0 -1
  227. package/apps/ui/dist/client/assets/useQuery-CjINKZf1.js +0 -1
  228. package/apps/ui/dist/server/assets/_tanstack-start-manifest_v-CQ8Jjs3B.js +0 -387
  229. package/apps/ui/dist/server/assets/_threadId-B6SrBR9E.js +0 -6
  230. package/apps/ui/dist/server/assets/analytics-CYP_LT5Y.js +0 -16
  231. package/apps/ui/dist/server/assets/analytics-CtpOMVMO.js +0 -146
  232. package/apps/ui/dist/server/assets/antigravity-conversation-state-HgzS302O.js +0 -16
  233. package/apps/ui/dist/server/assets/antigravity-conversations._conversationId-BKOyL2T6.js +0 -613
  234. package/apps/ui/dist/server/assets/antigravity-conversations._conversationId-D426O-64.js +0 -11
  235. package/apps/ui/dist/server/assets/antigravity-conversations._conversationId-eS87Dx7g.js +0 -20
  236. package/apps/ui/dist/server/assets/antigravity-db-Bh8_U9uw.js +0 -580
  237. package/apps/ui/dist/server/assets/antigravity-keychain-DOiuHDwK.js +0 -126
  238. package/apps/ui/dist/server/assets/antigravity-keychain-panel-CC7FLmAK.js +0 -55
  239. package/apps/ui/dist/server/assets/antigravity-queries-CGrJO9Vr.js +0 -37
  240. package/apps/ui/dist/server/assets/antigravity-server-CHRjVFqN.js +0 -114
  241. package/apps/ui/dist/server/assets/antigravity._workspaceKey-3m_MzNFA.js +0 -11
  242. package/apps/ui/dist/server/assets/antigravity._workspaceKey-B0QeYUOh.js +0 -28
  243. package/apps/ui/dist/server/assets/antigravity._workspaceKey-C3kP-qyN.js +0 -210
  244. package/apps/ui/dist/server/assets/antigravity.index-CPCYkqCi.js +0 -104
  245. package/apps/ui/dist/server/assets/antigravity.index-DudTB3Tq.js +0 -11
  246. package/apps/ui/dist/server/assets/badge-EvdhKK_Z.js +0 -26
  247. package/apps/ui/dist/server/assets/button-CmTDnzOn.js +0 -46
  248. package/apps/ui/dist/server/assets/checkbox-C0hovF41.js +0 -19
  249. package/apps/ui/dist/server/assets/claude-code-db-Ik3VStKZ.js +0 -361
  250. package/apps/ui/dist/server/assets/claude-code-queries-Cgzi4K-e.js +0 -37
  251. package/apps/ui/dist/server/assets/claude-code-server-PfraClXS.js +0 -72
  252. package/apps/ui/dist/server/assets/claude-code-sessions._sessionId-C55oe6zj.js +0 -18
  253. package/apps/ui/dist/server/assets/claude-code-sessions._sessionId-D1RYYi3j.js +0 -473
  254. package/apps/ui/dist/server/assets/claude-code-sessions._sessionId-DSvPLEUL.js +0 -11
  255. package/apps/ui/dist/server/assets/claude-code-transcript-C-bxh3cS.js +0 -139
  256. package/apps/ui/dist/server/assets/claude-code-transcript-phase-DmUMc8VU.js +0 -10
  257. package/apps/ui/dist/server/assets/claude-code._workspaceKey-B5Xg_-tE.js +0 -28
  258. package/apps/ui/dist/server/assets/claude-code._workspaceKey-BPlzyXPa.js +0 -11
  259. package/apps/ui/dist/server/assets/claude-code._workspaceKey-DqDve2wl.js +0 -191
  260. package/apps/ui/dist/server/assets/claude-code.index-B7yYR7dD.js +0 -92
  261. package/apps/ui/dist/server/assets/claude-code.index-BUHThG1W.js +0 -11
  262. package/apps/ui/dist/server/assets/codex-queries-CtgeZ7VL.js +0 -99
  263. package/apps/ui/dist/server/assets/codex-server-CGXU4H8-.js +0 -2294
  264. package/apps/ui/dist/server/assets/concurrency-VXtYvlGh.js +0 -18
  265. package/apps/ui/dist/server/assets/createServerRpc-CF_DEwnm.js +0 -12
  266. package/apps/ui/dist/server/assets/createSsrRpc-C754NPki.js +0 -16
  267. package/apps/ui/dist/server/assets/cursor-db-CZnYy7aT.js +0 -830
  268. package/apps/ui/dist/server/assets/cursor-exporter-types-CI3goo-c.js +0 -34
  269. package/apps/ui/dist/server/assets/cursor-queries-NCIM0Nat.js +0 -67
  270. package/apps/ui/dist/server/assets/cursor-recovery-CXpO8KcD.js +0 -361
  271. package/apps/ui/dist/server/assets/cursor-server-DNu52A3K.js +0 -213
  272. package/apps/ui/dist/server/assets/cursor-threads._composerId-BB0Y_Mao.js +0 -11
  273. package/apps/ui/dist/server/assets/cursor-threads._composerId-Ckn6ItHI.js +0 -582
  274. package/apps/ui/dist/server/assets/cursor-threads._composerId-p9-ARAzc.js +0 -18
  275. package/apps/ui/dist/server/assets/cursor-transcript-B7tGnqtn.js +0 -125
  276. package/apps/ui/dist/server/assets/cursor._workspaceKey-CZuohIUL.js +0 -28
  277. package/apps/ui/dist/server/assets/cursor._workspaceKey-DPp5JSjy.js +0 -401
  278. package/apps/ui/dist/server/assets/cursor._workspaceKey-nmg3YIOQ.js +0 -11
  279. package/apps/ui/dist/server/assets/cursor.index-CcsX7DG0.js +0 -11
  280. package/apps/ui/dist/server/assets/cursor.index-DkWT-mxw.js +0 -189
  281. package/apps/ui/dist/server/assets/data-table-Cdct823O.js +0 -189
  282. package/apps/ui/dist/server/assets/delete-confirm-dialog-BcBNCxWB.js +0 -144
  283. package/apps/ui/dist/server/assets/download-DMmiy1xf.js +0 -92
  284. package/apps/ui/dist/server/assets/dropdown-menu-Dy_9t6TN.js +0 -36
  285. package/apps/ui/dist/server/assets/empty-plugin-adapters-B3lHh1La.js +0 -5
  286. package/apps/ui/dist/server/assets/export-dialog-D88ze9Gy.js +0 -240
  287. package/apps/ui/dist/server/assets/formatters-FJaGZgJk.js +0 -91
  288. package/apps/ui/dist/server/assets/kiro-db--fXrED_-.js +0 -552
  289. package/apps/ui/dist/server/assets/kiro-queries-CzNlM2ok.js +0 -37
  290. package/apps/ui/dist/server/assets/kiro-server-9WRxg2Au.js +0 -72
  291. package/apps/ui/dist/server/assets/kiro-sessions._sessionId-CRY2c7YO.js +0 -11
  292. package/apps/ui/dist/server/assets/kiro-sessions._sessionId-F1UlwxmR.js +0 -449
  293. package/apps/ui/dist/server/assets/kiro-sessions._sessionId-bvTulT7C.js +0 -18
  294. package/apps/ui/dist/server/assets/kiro-transcript-DoekQBaH.js +0 -112
  295. package/apps/ui/dist/server/assets/kiro-transcript-phase-CJG40nQg.js +0 -27
  296. package/apps/ui/dist/server/assets/kiro._workspaceKey-BDe9sQwo.js +0 -11
  297. package/apps/ui/dist/server/assets/kiro._workspaceKey-CJsjgNwO.js +0 -28
  298. package/apps/ui/dist/server/assets/kiro._workspaceKey-D_-4Qb7y.js +0 -193
  299. package/apps/ui/dist/server/assets/kiro.index-C__-UROk.js +0 -11
  300. package/apps/ui/dist/server/assets/kiro.index-CmTbqeYj.js +0 -93
  301. package/apps/ui/dist/server/assets/loading-panel-BGFnWseS.js +0 -27
  302. package/apps/ui/dist/server/assets/metric-card-ByEeLu0r.js +0 -23
  303. package/apps/ui/dist/server/assets/model-label-B1NWGc65.js +0 -13
  304. package/apps/ui/dist/server/assets/opencode-db-BM7KjOzc.js +0 -397
  305. package/apps/ui/dist/server/assets/opencode-queries-BeNYXnQv.js +0 -50
  306. package/apps/ui/dist/server/assets/opencode-server-BpQ_kRze.js +0 -72
  307. package/apps/ui/dist/server/assets/opencode-sessions._sessionId-CGQ-t0vD.js +0 -518
  308. package/apps/ui/dist/server/assets/opencode-sessions._sessionId-D8Q7in_Z.js +0 -18
  309. package/apps/ui/dist/server/assets/opencode-sessions._sessionId-DKOvi0lV.js +0 -11
  310. package/apps/ui/dist/server/assets/opencode-think-tags-CAoD-EcZ.js +0 -87
  311. package/apps/ui/dist/server/assets/opencode-transcript-BNTcGNym.js +0 -141
  312. package/apps/ui/dist/server/assets/opencode-transcript-phase-OqLkiQD0.js +0 -32
  313. package/apps/ui/dist/server/assets/opencode._workspaceKey-BdqcWHw1.js +0 -11
  314. package/apps/ui/dist/server/assets/opencode._workspaceKey-CfH96HTT.js +0 -28
  315. package/apps/ui/dist/server/assets/opencode._workspaceKey-DdbHPDrO.js +0 -207
  316. package/apps/ui/dist/server/assets/opencode.index-BbVzkJXP.js +0 -11
  317. package/apps/ui/dist/server/assets/opencode.index-Vh_Gq_1L.js +0 -93
  318. package/apps/ui/dist/server/assets/page-header-VNSaM3xd.js +0 -29
  319. package/apps/ui/dist/server/assets/path-transforms-DL2IwtYd.js +0 -31
  320. package/apps/ui/dist/server/assets/projects._project-4io5LO0E.js +0 -20
  321. package/apps/ui/dist/server/assets/projects._project-Bshqk7JA.js +0 -12
  322. package/apps/ui/dist/server/assets/projects._project-D6ZoGhJ8.js +0 -395
  323. package/apps/ui/dist/server/assets/projects.index-BLXOx5eL.js +0 -12
  324. package/apps/ui/dist/server/assets/projects.index-BkLiF2FF.js +0 -182
  325. package/apps/ui/dist/server/assets/projects.index-DesYXwfi.js +0 -14
  326. package/apps/ui/dist/server/assets/reload-error-panel-BJMxY3U1.js +0 -25
  327. package/apps/ui/dist/server/assets/route-search-ts4W9MJ9.js +0 -38
  328. package/apps/ui/dist/server/assets/router-Sac2DGk6.js +0 -518
  329. package/apps/ui/dist/server/assets/routes-Bsact1uB.js +0 -184
  330. package/apps/ui/dist/server/assets/routes-BzkJgq4W.js +0 -34
  331. package/apps/ui/dist/server/assets/select-GW76p-ld.js +0 -76
  332. package/apps/ui/dist/server/assets/settings-OayxIYQQ.js +0 -100
  333. package/apps/ui/dist/server/assets/settings-store-DpEJEQ7M.js +0 -52
  334. package/apps/ui/dist/server/assets/shared-DyhChtHf.js +0 -137
  335. package/apps/ui/dist/server/assets/source-session-export-server-DNutCawb.js +0 -38
  336. package/apps/ui/dist/server/assets/sqlite-error-LZDrnxdd.js +0 -13
  337. package/apps/ui/dist/server/assets/start-B_HFwkkk.js +0 -4
  338. package/apps/ui/dist/server/assets/tabs-DkaChNVg.js +0 -501
  339. package/apps/ui/dist/server/assets/text-filter-CGKxMCKt.js +0 -36
  340. package/apps/ui/dist/server/assets/thread-transcript-stats-Dh34mt2u.js +0 -45
  341. package/apps/ui/dist/server/assets/threads._threadId-BSSK4nkI.js +0 -26
  342. package/apps/ui/dist/server/assets/threads._threadId-BeXEc4Lo.js +0 -648
  343. package/apps/ui/dist/server/assets/threads._threadId-Ci0S4mKU.js +0 -18
  344. package/apps/ui/dist/server/assets/ui-export-files-BHLX9bhN.js +0 -83
  345. package/apps/ui/dist/server/assets/utils-C_uf36nf.js +0 -8
  346. package/apps/ui/dist/server/server.js +0 -5895
  347. package/bin/codex-chats-claude.js +0 -5
  348. package/bin/codex-chats.js +0 -5
  349. package/bin/spiracha.js +0 -5
  350. package/src/export-chats.ts +0 -120
  351. package/src/export-claude.ts +0 -36
  352. package/src/export-cursor.ts +0 -244
  353. package/src/lib/claude-exporter.ts +0 -864
  354. package/src/lib/codex-exporter-cli.ts +0 -277
  355. package/src/lib/codex-exporter-db.ts +0 -319
  356. package/src/lib/codex-exporter.ts +0 -115
  357. package/src/lib/cursor-exporter.ts +0 -266
  358. package/src/lib/interactive-cli.ts +0 -433
  359. package/src/lib/native-open.ts +0 -54
  360. package/src/mcp-server.ts +0 -137
  361. package/src/spiracha.ts +0 -116
  362. package/src/ui-cli.ts +0 -310
  363. /package/apps/ui/{dist/client → public}/icon.svg +0 -0
  364. /package/apps/ui/{dist/client → public}/manifest.json +0 -0
  365. /package/apps/ui/{dist/client → public}/robots.txt +0 -0
@@ -0,0 +1,114 @@
1
+ import os from 'node:os';
2
+ import path from 'node:path';
3
+ import type { ExportFormat, JsonValue } from './shared';
4
+
5
+ export const getDefaultQoderUserDir = (_env: NodeJS.ProcessEnv = process.env, homeDir = os.homedir()): string => {
6
+ return path.join(homeDir, 'Library', 'Application Support', 'Qoder', 'User');
7
+ };
8
+
9
+ export const DEFAULT_QODER_USER_DIR = getDefaultQoderUserDir();
10
+
11
+ export const resolveQoderUserDir = (): string => {
12
+ const configured =
13
+ process.env.SPIRACHA_QODER_USER_DIR?.trim() ||
14
+ process.env.SPIRACHA_QODER_DATA_DIR?.trim() ||
15
+ process.env.SPIRACHA_QODER_DIR?.trim();
16
+ return configured ? configured : DEFAULT_QODER_USER_DIR;
17
+ };
18
+
19
+ export const resolveQoderGlobalStateDb = (): string => {
20
+ const configured = process.env.SPIRACHA_QODER_GLOBAL_STATE_DB?.trim();
21
+ return configured ? configured : path.join(resolveQoderUserDir(), 'globalStorage', 'state.vscdb');
22
+ };
23
+
24
+ export const resolveQoderWorkspaceStorageDir = (): string => {
25
+ const configured = process.env.SPIRACHA_QODER_WORKSPACE_STORAGE_DIR?.trim();
26
+ return configured ? configured : path.join(resolveQoderUserDir(), 'workspaceStorage');
27
+ };
28
+
29
+ export const resolveQoderCliProjectsDir = (): string => {
30
+ const configured = process.env.SPIRACHA_QODER_CLI_PROJECTS_DIR?.trim();
31
+ return configured
32
+ ? configured
33
+ : path.join(path.dirname(resolveQoderUserDir()), 'SharedClientCache', 'cli', 'projects');
34
+ };
35
+
36
+ export type QoderWorkspaceGroup = {
37
+ assistantMessageCount: number;
38
+ fileOperationCount: number;
39
+ key: string;
40
+ label: string;
41
+ lastActiveAtIso: string | null;
42
+ lastActiveAtMs: number | null;
43
+ messageCount: number;
44
+ renderablePartCount: number;
45
+ sessionCount: number;
46
+ snapshotFileCount: number;
47
+ uri: string;
48
+ userMessageCount: number;
49
+ workspaceStorageIds: string[];
50
+ worktree: string;
51
+ };
52
+
53
+ export type QoderSessionSummary = {
54
+ agentClass: string | null;
55
+ assistantMessageCount: number;
56
+ createdAtIso: string | null;
57
+ createdAtMs: number | null;
58
+ executionMode: string | null;
59
+ fileOperationCount: number;
60
+ historyIds: string[];
61
+ lastActiveAtIso: string | null;
62
+ lastActiveAtMs: number | null;
63
+ messageCount: number;
64
+ model: string | null;
65
+ query: string | null;
66
+ renderablePartCount: number;
67
+ requestId: string | null;
68
+ sessionId: string;
69
+ snapshotFileCount: number;
70
+ sourceStatePath: string | null;
71
+ status: string | null;
72
+ taskId: string | null;
73
+ title: string;
74
+ userMessageCount: number;
75
+ workspaceKey: string;
76
+ workspaceLabel: string;
77
+ workspacePath: string | null;
78
+ workspaceStorageId: string | null;
79
+ worktree: string;
80
+ };
81
+
82
+ export type QoderPartType = 'text' | 'unknown';
83
+
84
+ export type QoderTranscriptPart = {
85
+ raw: Record<string, JsonValue>;
86
+ text?: string;
87
+ type: QoderPartType;
88
+ };
89
+
90
+ export type QoderTranscriptEntryType = 'message' | 'tool_call' | 'tool_output';
91
+
92
+ export type QoderTranscriptEntry = {
93
+ entryId: string;
94
+ entryType: QoderTranscriptEntryType;
95
+ parts: QoderTranscriptPart[];
96
+ raw: Record<string, JsonValue>;
97
+ requestId: string | null;
98
+ role: string;
99
+ timestamp: string | null;
100
+ };
101
+
102
+ export type QoderSessionTranscript = {
103
+ entries: QoderTranscriptEntry[];
104
+ rawSession: Record<string, JsonValue>;
105
+ renderablePartCount: number;
106
+ session: QoderSessionSummary;
107
+ };
108
+
109
+ export type QoderExportOptions = {
110
+ includeCommentary: boolean;
111
+ includeMetadata: boolean;
112
+ includeTools: boolean;
113
+ outputFormat: ExportFormat;
114
+ };
@@ -0,0 +1,41 @@
1
+ import type { QoderTranscriptEntry } from './qoder-exporter-types';
2
+
3
+ export type QoderMessagePhase = 'commentary' | 'final_answer' | null;
4
+
5
+ export const getFinalQoderAssistantMessageEntryIds = (entries: QoderTranscriptEntry[]): Set<string> => {
6
+ const finalEntryIds = new Set<string>();
7
+ let latestAssistantMessageEntryId: string | null = null;
8
+
9
+ const flushAssistantRun = () => {
10
+ if (latestAssistantMessageEntryId) {
11
+ finalEntryIds.add(latestAssistantMessageEntryId);
12
+ latestAssistantMessageEntryId = null;
13
+ }
14
+ };
15
+
16
+ for (const entry of entries) {
17
+ if (entry.role === 'tool') {
18
+ continue;
19
+ }
20
+
21
+ if (entry.role === 'user') {
22
+ flushAssistantRun();
23
+ continue;
24
+ }
25
+
26
+ if (entry.role === 'assistant') {
27
+ latestAssistantMessageEntryId = entry.entryId;
28
+ }
29
+ }
30
+
31
+ flushAssistantRun();
32
+ return finalEntryIds;
33
+ };
34
+
35
+ export const getQoderMessagePhase = (entry: QoderTranscriptEntry, finalAssistantMessageEntryIds: Set<string>) => {
36
+ if (entry.role !== 'assistant') {
37
+ return null;
38
+ }
39
+
40
+ return finalAssistantMessageEntryIds.has(entry.entryId) ? 'final_answer' : 'commentary';
41
+ };
@@ -0,0 +1,112 @@
1
+ import type {
2
+ QoderExportOptions,
3
+ QoderSessionSummary,
4
+ QoderSessionTranscript,
5
+ QoderTranscriptEntry,
6
+ QoderTranscriptPart,
7
+ } from './qoder-exporter-types';
8
+ import { getFinalQoderAssistantMessageEntryIds, getQoderMessagePhase } from './qoder-transcript-phase';
9
+ import {
10
+ cleanExtractedText,
11
+ cleanInlineTitle,
12
+ type MetadataEntry,
13
+ renderDocumentTitle,
14
+ renderMetadataBlock,
15
+ renderSection,
16
+ } from './shared';
17
+
18
+ const getSessionTitle = (session: QoderSessionSummary): string => {
19
+ return cleanInlineTitle(session.title || session.sessionId);
20
+ };
21
+
22
+ const buildMetadataEntries = (session: QoderSessionSummary): MetadataEntry[] => [
23
+ { key: 'exported_from', value: 'qoder_local_history' },
24
+ { key: 'session_id', value: session.sessionId },
25
+ { key: 'task_id', value: session.taskId },
26
+ { key: 'request_id', value: session.requestId },
27
+ { key: 'title', value: session.title },
28
+ { key: 'status', value: session.status },
29
+ { key: 'workspace_key', value: session.workspaceKey },
30
+ { key: 'workspace_path', value: session.workspacePath },
31
+ { key: 'workspace_storage_id', value: session.workspaceStorageId },
32
+ { key: 'source_state_path', value: session.sourceStatePath },
33
+ { key: 'agent_class', value: session.agentClass },
34
+ { key: 'model', value: session.model },
35
+ { key: 'execution_mode', value: session.executionMode },
36
+ { key: 'created_at_iso', value: session.createdAtIso },
37
+ { key: 'last_active_at_iso', value: session.lastActiveAtIso },
38
+ { key: 'message_count', value: session.messageCount },
39
+ { key: 'file_operation_count', value: session.fileOperationCount },
40
+ { key: 'snapshot_file_count', value: session.snapshotFileCount },
41
+ ];
42
+
43
+ const roleTitle = (role: string): string => {
44
+ if (role === 'assistant') {
45
+ return 'Assistant';
46
+ }
47
+
48
+ if (role === 'user') {
49
+ return 'User';
50
+ }
51
+
52
+ if (role === 'system') {
53
+ return 'System';
54
+ }
55
+
56
+ return role ? cleanInlineTitle(role) : 'Message';
57
+ };
58
+
59
+ const renderTextPart = (part: QoderTranscriptPart, title: string, options: QoderExportOptions): string => {
60
+ const text = cleanExtractedText(part.text ?? '').trim();
61
+ return text ? renderSection(title, text, options.outputFormat) : '';
62
+ };
63
+
64
+ const renderPart = (
65
+ entry: QoderTranscriptEntry,
66
+ part: QoderTranscriptPart,
67
+ options: QoderExportOptions,
68
+ finalAssistantMessageEntryIds: Set<string>,
69
+ ): string => {
70
+ if (entry.entryType === 'tool_call') {
71
+ return options.includeTools && part.type === 'text' ? renderTextPart(part, 'Tool call', options) : '';
72
+ }
73
+
74
+ if (entry.entryType === 'tool_output') {
75
+ return options.includeTools && part.type === 'text' ? renderTextPart(part, 'Tool output', options) : '';
76
+ }
77
+
78
+ if (getQoderMessagePhase(entry, finalAssistantMessageEntryIds) === 'commentary' && !options.includeCommentary) {
79
+ return '';
80
+ }
81
+
82
+ switch (part.type) {
83
+ case 'text':
84
+ return renderTextPart(part, roleTitle(entry.role), options);
85
+ case 'unknown':
86
+ return '';
87
+ }
88
+ };
89
+
90
+ export const renderQoderTranscript = (
91
+ transcript: QoderSessionTranscript,
92
+ options: QoderExportOptions,
93
+ ): string | null => {
94
+ const finalAssistantMessageEntryIds = getFinalQoderAssistantMessageEntryIds(transcript.entries);
95
+ const sections = transcript.entries.flatMap((entry) =>
96
+ entry.parts.map((part) => renderPart(entry, part, options, finalAssistantMessageEntryIds)).filter(Boolean),
97
+ );
98
+ if (sections.length === 0) {
99
+ return null;
100
+ }
101
+
102
+ const parts = [
103
+ renderDocumentTitle(getSessionTitle(transcript.session), options.outputFormat),
104
+ '',
105
+ options.includeMetadata
106
+ ? renderMetadataBlock(buildMetadataEntries(transcript.session), options.outputFormat)
107
+ : '',
108
+ ...sections,
109
+ ].filter(Boolean);
110
+
111
+ return `${parts.join('\n').trimEnd()}\n`;
112
+ };
@@ -1 +0,0 @@
1
- function e(){return null}export{e as component};
@@ -1 +0,0 @@
1
- import{r as e,t}from"./jsx-runtime-DGeXAQPT.js";import{n}from"./react-dom-DL96Jor4.js";import{c as r,o as i,s as a}from"./formatters-BtqyrX_c.js";import{n as o,t as s}from"./data-table-Br78_dk3.js";import{a as c,i as l,n as u,r as d,t as f}from"./select-CYF6pF37.js";import{$ as p,Q as m,Z as h,at as g,et as _,kt as v,nt as y}from"./index-C-STgIH4.js";import{t as b}from"./metric-card-Dplm0ZiM.js";import{t as x}from"./page-header-Cwa3p6Tl.js";var S=e(n()),C=t(),w=o(),T=[w.accessor(`name`,{cell:e=>(0,C.jsx)(`span`,{className:`font-mono text-sm`,children:e.getValue()}),header:`Tool`}),w.accessor(`count`,{cell:e=>(0,C.jsx)(`span`,{className:`font-mono text-sm`,children:i(e.getValue())}),header:`Calls`})],E=o(),D=[E.accessor(`model`,{cell:e=>(0,C.jsx)(`span`,{className:`font-mono text-sm`,children:e.getValue()}),header:`Model`}),E.accessor(`threadCount`,{cell:e=>(0,C.jsx)(`span`,{className:`font-mono text-sm`,children:i(e.getValue())}),header:`Threads`}),E.accessor(`totalTokens`,{cell:e=>(0,C.jsx)(`span`,{className:`font-mono text-sm`,children:a(e.getValue())}),header:`Tokens`})];function O(){let e=v({from:h.fullPath}),t=r(g()).data,n=h.useSearch().project??null,o=r(y(n)).data;return(0,C.jsxs)(`div`,{className:`space-y-6`,children:[(0,C.jsx)(x,{actions:(0,C.jsxs)(f,{value:p(n),onValueChange:t=>{(0,S.startTransition)(()=>{e({replace:!0,search:e=>_(e,m(t))})})},children:[(0,C.jsx)(l,{className:`h-10 w-full rounded-full border-[var(--border)] bg-[var(--panel)] sm:w-[15rem]`,children:(0,C.jsx)(c,{placeholder:`Filter by project`})}),(0,C.jsxs)(u,{children:[(0,C.jsx)(d,{value:`__all__`,children:`All projects`}),t.map(e=>(0,C.jsx)(d,{value:p(e.name),children:e.name},e.name))]})]}),eyebrow:`Analytics`,subtitle:`Inspect token load, tool-call distribution, and project-scoped usage patterns to understand where Codex is spending effort.`,title:`Analytics`}),(0,C.jsxs)(`div`,{className:`grid gap-4 md:grid-cols-2 xl:grid-cols-5`,children:[(0,C.jsx)(b,{label:`Threads`,value:i(o.summary.totalThreads)}),(0,C.jsx)(b,{label:`Projects`,value:i(o.summary.totalProjects)}),(0,C.jsx)(b,{label:`Tokens`,value:a(o.summary.totalTokens)}),(0,C.jsx)(b,{label:`Average per thread`,value:a(Math.round(o.summary.averageTokensPerThread))}),(0,C.jsx)(b,{label:`Web search threads`,value:i(o.summary.threadsWithWebSearch)})]}),(0,C.jsxs)(`div`,{className:`grid gap-4 xl:grid-cols-2`,children:[(0,C.jsxs)(`section`,{className:`space-y-4`,children:[(0,C.jsxs)(`div`,{children:[(0,C.jsx)(`h3`,{className:`font-semibold text-sm`,children:`Most frequent tool calls`}),(0,C.jsx)(`p`,{className:`mt-1 text-[var(--muted-foreground)] text-sm`,children:`Useful for future prompt and tool optimization work.`})]}),(0,C.jsx)(s,{columns:T,data:o.toolUsage,emptyMessage:`No tool calls recorded.`})]}),(0,C.jsxs)(`section`,{className:`space-y-4`,children:[(0,C.jsxs)(`div`,{children:[(0,C.jsx)(`h3`,{className:`font-semibold text-sm`,children:`Model token breakdown`}),(0,C.jsx)(`p`,{className:`mt-1 text-[var(--muted-foreground)] text-sm`,children:`Compare model usage and token concentration within the current project scope.`})]}),(0,C.jsx)(s,{columns:D,data:o.modelsByTokens,emptyMessage:`No model usage recorded.`})]})]})]})}export{O as component};
@@ -1,7 +0,0 @@
1
- import{r as e,t}from"./jsx-runtime-DGeXAQPT.js";import{n}from"./react-dom-DL96Jor4.js";import{M as r}from"./createServerFn-B-KkwmHU.js";import{c as i,n as a,o,r as s}from"./formatters-BtqyrX_c.js";import{t as c}from"./useMutation-BSFult2i.js";import{t as l}from"./checkbox-CdHitXWQ.js";import{a as u,c as d,i as f,n as p,o as m,r as h,s as g,t as _}from"./tabs-CmuhkT-c.js";import{r as v,t as y}from"./download-Bf0QJKD3.js";import{t as b}from"./antigravity-keychain-panel-B77qJz6f.js";import{t as x}from"./scroll-text-fM0sMOB3.js";import{C as S,S as C,T as w,b as T,ht as E,t as D,v as O}from"./index-C-STgIH4.js";import{t as k}from"./metric-card-Dplm0ZiM.js";import{t as A}from"./page-header-Cwa3p6Tl.js";var j=e(n()),M=t(),N=({content:e,description:t,title:n})=>(0,M.jsxs)(`section`,{className:`rounded-[1.6rem] border border-[var(--border)] bg-[var(--panel)] p-5 shadow-[var(--panel-shadow)]`,children:[(0,M.jsx)(`h3`,{className:`font-semibold text-[var(--muted-foreground)] text-sm uppercase tracking-[0.18em]`,children:n}),t?(0,M.jsx)(`p`,{className:`mt-2 text-[var(--muted-foreground)] text-sm`,children:t}):null,(0,M.jsx)(`pre`,{className:`mt-4 overflow-x-auto whitespace-pre-wrap rounded-2xl border border-[var(--border)] bg-[var(--code-background)] p-4 text-sm leading-6 [overflow-wrap:anywhere]`,children:e})]}),P=/^##\s+(.+)$/u,F=/^_Timestamp:\s*(.+?)_$/u,I=/^tool:\s*(.+)$/iu,L=e=>{if(!e?.trim())return[];let t=[],n=e.split(/\r?\n/u),r=null,i=[],a=()=>{r&&t.push({body:i.join(`
2
- `).trim(),heading:r,sequence:t.length*10})};for(let e of n){let t=P.exec(e);if(t){a(),r=t[1].trim(),i=[];continue}r&&i.push(e)}return a(),t},R=e=>{let t=e.split(/\r?\n/u),n=F.exec(t[0]?.trim()??``)?.[1]?.trim()??null;return{body:n?t.slice(1).join(`
3
- `).trim():e.trim(),timestamp:n}},z=e=>e.split(/^###\s+/mu)[0]?.trim()??``,B=(e,t)=>{let n=e.split(/\r?\n/u),r=n.findIndex(e=>e.trim().toLowerCase()===`### ${t.toLowerCase()}`);if(r===-1)return``;let i=n.findIndex((e,t)=>t>r&&e.startsWith(`### `));return n.slice(r+1,i===-1?void 0:i).join(`
4
- `).trim()},V=e=>{let t=B(e,`Tool Calls`);if(!t)return[];let n=[];for(let e of t.matchAll(/-\s+`([^`]+)`(?:\s*\n+```json\s*\n([\s\S]*?)\n```)?/gu))n.push({argumentsText:e[2]?.trim()??null,name:e[1]?.trim()||`unknown`});return n},H=e=>{let t=z(e),[n,...r]=B(e,`Thinking`).split(/\n{2,}/u).map(e=>e.trim());return{content:t||r.join(`
5
-
6
- `).trim(),thinking:n??``,toolCalls:V(e)}},U=(e,t={})=>({heading:e.heading,source:`antigravity_markdown`,...t}),W=(e,t,n,r,i,a=0)=>({isHiddenByDefault:t!==`assistant`&&t!==`user`,kind:`message`,memoryCitation:null,model:null,phase:i,raw:U(e,{role:t}),role:t,sequence:e.sequence+a,text:n,timestamp:r,variant:t===`user`?`user_message`:t===`assistant`?`agent_message`:`message`}),G=(e,t,n,r)=>({argumentsParseFailed:!1,argumentsText:t.argumentsText,callId:null,command:[t.name,t.argumentsText].filter(Boolean).join(`
7
- `),kind:`tool_call`,name:t.name,raw:U(e,{argumentsText:t.argumentsText,name:t.name}),sequence:e.sequence+r,timestamp:n,workdir:null}),K=(e,t,n,r)=>({callId:null,exitCode:null,kind:`tool_output`,outputText:n,raw:U(e,{name:t}),sequence:e.sequence,summary:n,timestamp:r,wallTime:null}),q=e=>{let t=new Set,n=null,r=()=>{n!==null&&t.add(n),n=null};for(let t of e){let e=t.heading.toLowerCase();if(e===`user`){r();continue}if(e!==`assistant`)continue;let{body:i}=R(t.body),a=H(i);a.toolCalls.length>0?n=null:a.content&&(n=t.sequence)}return r(),t},J=(e,t,n,r)=>n?[W(e,t,n,r,null)]:[],Y=(e,t,n,r)=>n?[K(e,t,n,r)]:[],X=(e,t,n,r)=>{let i=H(t),a=[];if(i.thinking&&a.push(W(e,`assistant`,i.thinking,n,`commentary`)),i.content){let t=r.has(e.sequence)?`final_answer`:`commentary`;a.push(W(e,`assistant`,i.content,n,t,1))}return i.toolCalls.forEach((t,r)=>{a.push(G(e,t,n,2+r))}),a},Z=(e,t)=>{let{body:n,timestamp:r}=R(e.body),i=e.heading.toLowerCase(),a=I.exec(e.heading);return i===`user`?J(e,`user`,n,r):a?Y(e,a[1]?.trim()||`unknown`,n,r):i===`assistant`?X(e,n,r,t):i===`system`?J(e,`system`,n,r):J(e,`event`,n,r)},Q=e=>{let t=L(e),n=q(t);return t.flatMap(e=>Z(e,n))},$=(e,t)=>{e.messageCount+=1,t.role===`assistant`&&(e.assistantMessageCount+=1),t.role===`user`&&(e.userMessageCount+=1),t.phase===`commentary`&&(e.commentaryCount+=1),t.phase===`final_answer`&&(e.finalAnswerCount+=1)},ee=e=>{let t={assistantMessageCount:0,commentaryCount:0,execCommandCount:0,finalAnswerCount:0,messageCount:0,toolCallCount:0,toolOutputCount:0,userMessageCount:0,webSearchEventCount:0};for(let n of e)n.kind===`message`&&$(t,n),n.kind===`tool_call`&&(t.toolCallCount+=1),n.kind===`tool_output`&&(t.toolOutputCount+=1);return t},te=e=>[{label:`Conversation ID`,value:(0,M.jsx)(`span`,{"data-mono":`true`,children:e.conversation.conversationId})},{label:`Workspace`,value:(0,M.jsx)(r,{className:`text-[var(--accent)]`,params:{workspaceKey:e.conversation.workspaceKey},to:`/antigravity/$workspaceKey`,children:e.conversation.workspaceLabel})},{label:`Created`,value:(0,M.jsx)(`span`,{suppressHydrationWarning:!0,children:s(e.conversation.createdAtMs)})},{label:`Updated`,value:(0,M.jsx)(`span`,{suppressHydrationWarning:!0,children:s(e.conversation.lastUpdatedAtMs)})},{label:`Transcript source`,value:e.conversation.transcriptSource??`n/a`},{label:`Conversation path`,value:e.conversation.conversationPath??`n/a`},{label:`Transcript path`,value:e.conversation.transcriptPath??`n/a`},{label:`Summary path`,value:e.conversation.summaryPath??`n/a`},{label:`Source root`,value:e.conversation.sourceRoot??`n/a`}],ne=(e,t)=>{if(e.transcriptLocked)return[{label:`Transcript load`,value:`Transcript is locked until Antigravity Keychain access is enabled.`}];if(!e.conversationMarkdown)return[{label:`Transcript load`,value:`No renderable transcript content was found.`}];let n=ee(t);return[{label:`Event kinds`,value:[...new Set(t.map(e=>e.kind))].join(`, `)||`n/a`},{label:`Messages`,value:o(n.messageCount)},{label:`User messages`,value:o(n.userMessageCount)},{label:`Assistant messages`,value:o(n.assistantMessageCount)},{label:`Commentary updates`,value:o(n.commentaryCount)},{label:`Final answers`,value:o(n.finalAnswerCount)},{label:`Tool calls`,value:o(n.toolCallCount)},{label:`Tool outputs`,value:o(n.toolOutputCount)}]};function re({canExportArtifacts:e,canExportConversation:t,exportArtifactsPending:n,exportConversationPending:r,showConversationExport:i,onExportArtifacts:a,onExportConversation:o}){return(0,M.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[i?(0,M.jsxs)(E,{className:`rounded-full`,disabled:!t||r,type:`button`,variant:`outline`,onClick:o,children:[(0,M.jsx)(v,{className:`mr-2 size-4`}),`Export conversation`]}):null,e?(0,M.jsxs)(E,{className:`rounded-full`,disabled:n,type:`button`,variant:`outline`,onClick:a,children:[(0,M.jsx)(x,{className:`mr-2 size-4`}),`Export artifacts`]}):null]})}var ie=({rawJsonDisabled:e=!1,showCommentary:t,showExtraEvents:n,showRawJson:r,showToolCalls:i,showUserMessages:a,onShowCommentaryChange:o,onShowExtraEventsChange:s,onShowRawJsonChange:c,onShowToolCallsChange:u,onShowUserMessagesChange:d})=>(0,M.jsxs)(`div`,{className:`flex flex-wrap gap-4 rounded-xl border border-[var(--border)] bg-[var(--panel)] px-4 py-3 shadow-[var(--panel-shadow)]`,children:[(0,M.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,M.jsx)(l,{checked:i,id:`antigravity-transcript-show-tool-calls`,onCheckedChange:e=>u(e===!0)}),(0,M.jsx)(`label`,{htmlFor:`antigravity-transcript-show-tool-calls`,children:`Show tool calls`})]}),(0,M.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,M.jsx)(l,{checked:t,id:`antigravity-transcript-show-commentary`,onCheckedChange:e=>o(e===!0)}),(0,M.jsx)(`label`,{htmlFor:`antigravity-transcript-show-commentary`,children:`Show commentary`})]}),(0,M.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,M.jsx)(l,{checked:n,id:`antigravity-transcript-show-extra-events`,onCheckedChange:e=>s(e===!0)}),(0,M.jsx)(`label`,{htmlFor:`antigravity-transcript-show-extra-events`,children:`Show extra events`})]}),(0,M.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,M.jsx)(l,{checked:r,disabled:e,id:`antigravity-transcript-show-raw-json`,onCheckedChange:e=>c(e===!0)}),(0,M.jsx)(`label`,{htmlFor:`antigravity-transcript-show-raw-json`,children:`Raw JSON`})]}),(0,M.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,M.jsx)(l,{checked:a,id:`antigravity-transcript-show-user-messages`,onCheckedChange:e=>d(e===!0)}),(0,M.jsx)(`label`,{htmlFor:`antigravity-transcript-show-user-messages`,children:`User`})]})]});function ae({detail:e}){return(0,M.jsxs)(`section`,{className:`rounded-[1.6rem] border border-[var(--border)] bg-[var(--panel)] p-5 shadow-[var(--panel-shadow)]`,children:[(0,M.jsx)(`h3`,{className:`font-semibold text-[var(--muted-foreground)] text-sm uppercase tracking-[0.18em]`,children:`Transcript`}),(0,M.jsx)(`p`,{className:`mt-4 text-[var(--muted-foreground)] text-sm`,children:e.transcriptLocked?`Unlock Antigravity transcript export to inspect the rendered conversation content here.`:e.artifactsMarkdown?`No transcript preview is available for this conversation. Generated artifacts are available in the Raw tab.`:`No transcript preview is available for this conversation.`})]})}function oe({detail:e,events:t}){return(0,M.jsxs)(`div`,{className:`space-y-4`,children:[(0,M.jsx)(g,{title:`Conversation summary`,value:e.conversation}),(0,M.jsx)(g,{title:`Transcript events`,value:t}),e.conversationMarkdown?(0,M.jsx)(N,{content:e.conversationMarkdown,description:`Rendered transcript Markdown used for export.`,title:`Transcript Markdown`}):null,e.artifactsMarkdown?(0,M.jsx)(N,{content:e.artifactsMarkdown,description:`Generated artifacts.`,title:`Artifacts`}):null]})}function se(){let e=i(T()).data,t=i(O(D.useParams().conversationId)).data,[n,r]=(0,j.useState)(!1),[s,l]=(0,j.useState)(!1),[g,v]=(0,j.useState)(!1),[x,E]=(0,j.useState)(!1),[N,P]=(0,j.useState)(!0),F=(0,j.useMemo)(()=>Q(t.conversationMarkdown),[t.conversationMarkdown]),I=w(t.conversation,!!e?.isUnlocked),L=t.artifactsMarkdown!==null,R=I||t.transcriptLocked,z=c({mutationFn:()=>S({data:{conversationId:t.conversation.conversationId}}),onSuccess:e=>{y(e.filename,e.content,`text/markdown; charset=utf-8`)}}),B=c({mutationFn:()=>C({data:{conversationId:t.conversation.conversationId}}),onSuccess:e=>{y(e.filename,e.content,`text/markdown; charset=utf-8`)}});return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsx)(A,{actions:(0,M.jsx)(re,{canExportArtifacts:L,canExportConversation:I,exportArtifactsPending:B.isPending,exportConversationPending:z.isPending,showConversationExport:R,onExportArtifacts:()=>B.mutate(),onExportConversation:()=>z.mutate()}),breadcrumb:(0,M.jsx)(d,{items:[{label:`Antigravity`,to:`/antigravity`},{label:t.conversation.workspaceLabel,params:{workspaceKey:t.conversation.workspaceKey},to:`/antigravity/$workspaceKey`},{label:t.conversation.title}]}),eyebrow:`Antigravity conversation`,subtitle:`Conversation detail for the selected Antigravity workspace session.`,title:t.conversation.title}),(0,M.jsx)(b,{}),(0,M.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-2 xl:grid-cols-4`,children:[(0,M.jsx)(k,{label:`Transcript entries`,value:o(t.conversation.transcriptEntryCount)}),(0,M.jsx)(k,{label:`Artifacts`,value:o(t.conversation.artifactCount)}),(0,M.jsx)(k,{label:`Size`,value:a(t.conversation.conversationBytes)}),(0,M.jsx)(k,{helper:t.conversation.transcriptSource??`summary`,label:`Indexed items`,value:o(t.conversation.indexedItemCount??0)})]}),(0,M.jsxs)(_,{className:`space-y-4`,defaultValue:`transcript`,children:[(0,M.jsxs)(h,{className:`grid w-fit min-w-[24rem] grid-cols-3 rounded-full border border-[var(--border)] bg-[var(--panel)] p-1`,children:[(0,M.jsx)(f,{className:`rounded-full px-5 text-sm`,value:`transcript`,children:`Transcript`}),(0,M.jsx)(f,{className:`rounded-full px-5 text-sm`,value:`metadata`,children:`Metadata`}),(0,M.jsx)(f,{className:`rounded-full px-5 text-sm`,value:`raw`,children:`Raw`})]}),(0,M.jsxs)(p,{className:`space-y-3`,value:`transcript`,children:[(0,M.jsx)(ie,{rawJsonDisabled:F.length===0,showCommentary:s,showExtraEvents:g,showRawJson:x,showToolCalls:n,showUserMessages:N,onShowCommentaryChange:l,onShowExtraEventsChange:v,onShowRawJsonChange:E,onShowToolCallsChange:r,onShowUserMessagesChange:P}),F.length>0?(0,M.jsx)(u,{assistantModel:null,events:F,projectPath:t.conversation.workspaceFolder,showCommentary:s,showExtraEvents:g,showRawJson:x,showToolCalls:n,showUserMessages:N}):(0,M.jsx)(ae,{detail:t})]}),(0,M.jsx)(p,{value:`metadata`,children:(0,M.jsxs)(`div`,{className:`grid gap-4 xl:grid-cols-[0.95fr_1.05fr]`,children:[(0,M.jsx)(m,{items:te(t),title:`Conversation metadata`}),(0,M.jsx)(m,{items:ne(t,F),title:`Transcript stats`})]})}),(0,M.jsx)(p,{value:`raw`,children:(0,M.jsx)(oe,{detail:t,events:F})})]}),z.isError?(0,M.jsx)(`p`,{className:`text-[var(--destructive)] text-sm`,children:z.error instanceof Error?z.error.message:`Conversation export failed`}):null,B.isError?(0,M.jsx)(`p`,{className:`text-[var(--destructive)] text-sm`,children:B.error instanceof Error?B.error.message:`Artifact export failed`}):null]})}export{se as component};
@@ -1 +0,0 @@
1
- import{t as e}from"./jsx-runtime-DGeXAQPT.js";import{t}from"./reload-error-panel-AHqu0akK.js";var n=e();function r({error:e}){return(0,n.jsx)(t,{description:e.message,title:`Failed to load Antigravity conversation`})}export{r as errorComponent};
@@ -1 +0,0 @@
1
- import{t as e}from"./jsx-runtime-DGeXAQPT.js";import{i as t}from"./createServerFn-B-KkwmHU.js";import{t as n}from"./useMutation-BSFult2i.js";import{t as r}from"./useQuery-CjINKZf1.js";import{_ as i,h as a}from"./dist-DvMS2965.js";import{b as o,ht as s,w as c}from"./index-C-STgIH4.js";var l=i(`key-round`,[[`path`,{d:`M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z`,key:`1s6t7t`}],[`circle`,{cx:`16.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`w0ekpg`}]]),u=i(`lock-keyhole`,[[`circle`,{cx:`12`,cy:`16`,r:`1`,key:`1au0dj`}],[`rect`,{x:`3`,y:`10`,width:`18`,height:`12`,rx:`2`,key:`6s8ecr`}],[`path`,{d:`M7 10V7a5 5 0 0 1 10 0v3`,key:`1pqi11`}]]),d=i(`shield-check`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),f=i(`triangle-alert`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),p=e();function m(){let e=t(),i=r(o()).data??null,m=n({mutationFn:()=>c(),onSuccess:t=>{e.setQueryData(o().queryKey,t),Promise.all([e.invalidateQueries({queryKey:o().queryKey}),e.invalidateQueries({queryKey:[`antigravity-conversation`]})])}});if(!i||i.status===`unsupported`)return null;let h=i.isUnlocked,g=m.error?.message??i.error;return(0,p.jsxs)(`div`,{className:a(`flex flex-col gap-3 rounded-xl border px-4 py-3 sm:flex-row sm:items-center sm:justify-between`,h?`border-emerald-500/30 bg-emerald-500/10`:`border-[var(--border)] bg-[var(--panel)]`),children:[(0,p.jsxs)(`div`,{className:`flex min-w-0 items-start gap-3`,children:[(0,p.jsx)(`div`,{className:a(`mt-0.5 flex size-8 shrink-0 items-center justify-center rounded-md`,h?`bg-emerald-500/15 text-emerald-600`:`bg-[var(--panel-secondary)]`),children:h?(0,p.jsx)(d,{className:`size-4`}):(0,p.jsx)(u,{className:`size-4`})}),(0,p.jsxs)(`div`,{className:`min-w-0`,children:[(0,p.jsx)(`p`,{className:`font-medium text-sm`,children:h?`Keychain access enabled`:`Unlock Antigravity transcript export`}),(0,p.jsx)(`p`,{className:`mt-1 text-[var(--muted-foreground)] text-xs`,children:h?`The Antigravity key is cached in this server process only. Transcript exports are available for local logs and safe-storage payloads.`:`Spiracha needs one-time access to ${i.keychainService} to decrypt Antigravity transcript data. macOS will ask for approval after you click unlock.`}),g?(0,p.jsxs)(`p`,{className:`mt-2 flex items-center gap-1 text-[var(--destructive)] text-xs`,children:[(0,p.jsx)(f,{className:`size-3`}),g]}):null]})]}),h?null:(0,p.jsxs)(s,{className:`shrink-0`,disabled:!i.canRequestAccess||m.isPending,type:`button`,onClick:()=>m.mutate(),children:[(0,p.jsx)(l,{className:`size-4`}),m.isPending?`Waiting...`:`Unlock`]})]})}export{u as n,m as t};
@@ -1 +0,0 @@
1
- import{r as e,t}from"./jsx-runtime-DGeXAQPT.js";import{n}from"./react-dom-DL96Jor4.js";import{M as r}from"./createServerFn-B-KkwmHU.js";import{c as i,n as a,o,r as s}from"./formatters-BtqyrX_c.js";import{t as c}from"./useMutation-BSFult2i.js";import{n as l,t as u}from"./data-table-Br78_dk3.js";import{r as d,t as f}from"./download-Bf0QJKD3.js";import{a as p,i as m,n as h,r as g,t as _}from"./dropdown-menu-D5cvPaZt.js";import{n as v,t as y}from"./antigravity-keychain-panel-B77qJz6f.js";import{t as b}from"./scroll-text-fM0sMOB3.js";import{C as x,D as S,E as C,O as w,S as T,T as E,b as D,ht as O,n as k,r as A,x as j,y as M}from"./index-C-STgIH4.js";import{t as N}from"./page-header-Cwa3p6Tl.js";import{t as P}from"./badge-C3i4OKs8.js";import{n as F,t as I}from"./text-filter-DVAZySUS.js";var L=e(n(),1),R=t(),z=l(),B=(e,t)=>{let n=e.artifactCount>0,r=!!t?.isUnlocked,i=S(e)||C(e),a=E(e,r),o=w(e,r),s=a||o;return{canExportConversation:a,hasArtifacts:n,hasTranscript:i,lockedTranscript:o,showActions:s||n,showConversationAction:s}},V=(e,t)=>t.hasTranscript?`${e.transcriptSource?e.transcriptSource.replace(/-/gu,` `):`transcript`} · ${t.lockedTranscript?`locked`:`available`}`:`Summary only`,H=(e,t,n)=>[z.accessor(`title`,{cell:t=>{let n=B(t.row.original,e);return(0,R.jsxs)(r,{className:`block w-[16rem] max-w-[22rem] space-y-1 rounded-md outline-none transition hover:opacity-80 focus-visible:ring-2 focus-visible:ring-[var(--accent)] lg:w-auto`,params:{conversationId:t.row.original.conversationId},to:`/antigravity-conversations/$conversationId`,children:[(0,R.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,R.jsx)(`p`,{className:`truncate font-medium underline-offset-2 hover:underline`,children:t.getValue()}),n.hasTranscript?(0,R.jsx)(P,{variant:`secondary`,children:`transcript`}):null,n.hasArtifacts?(0,R.jsx)(P,{variant:`outline`,children:`artifact`}):null]}),(0,R.jsx)(`p`,{className:`truncate text-[var(--muted-foreground)] text-xs`,children:t.row.original.conversationId})]})},header:`Conversation`}),z.accessor(`lastUpdatedAtMs`,{cell:e=>(0,R.jsx)(`span`,{className:`whitespace-nowrap text-sm`,suppressHydrationWarning:!0,children:s(e.getValue())}),header:`Updated`}),z.display({cell:t=>{let n=B(t.row.original,e);return(0,R.jsxs)(`span`,{className:`text-sm`,children:[V(t.row.original,n),t.row.original.transcriptEntryCount>0?` · ${o(t.row.original.transcriptEntryCount)} entries`:``]})},header:`Transcript`,id:`transcript`}),z.accessor(`artifactCount`,{cell:e=>(0,R.jsx)(`span`,{className:`font-mono text-sm`,children:o(e.getValue())}),header:`Artifacts`}),z.accessor(`conversationBytes`,{cell:e=>(0,R.jsx)(`span`,{className:`font-mono text-sm`,children:a(e.getValue())}),header:`Size`}),z.display({cell:r=>{let i=B(r.row.original,e);return i.showActions?(0,R.jsxs)(_,{children:[(0,R.jsx)(m,{asChild:!0,children:(0,R.jsx)(O,{className:`rounded-full`,size:`icon`,type:`button`,variant:`ghost`,onClick:e=>e.stopPropagation(),children:(0,R.jsx)(p,{className:`size-4`})})}),(0,R.jsxs)(h,{align:`end`,children:[i.showConversationAction?(0,R.jsxs)(g,{disabled:!i.canExportConversation,onClick:()=>t(r.row.original),children:[i.lockedTranscript?(0,R.jsx)(v,{className:`mr-2 size-4`}):(0,R.jsx)(d,{className:`mr-2 size-4`}),i.lockedTranscript?`Unlock conversation export first`:`Export conversation`]}):null,i.hasArtifacts?(0,R.jsxs)(g,{onClick:()=>n(r.row.original),children:[(0,R.jsx)(b,{className:`mr-2 size-4`}),`Export artifacts`]}):null]})]}):(0,R.jsx)(`span`,{className:`text-[var(--muted-foreground)] text-sm`,children:`No export`})},header:``,id:`actions`})];function U({conversations:e,decryptionState:t,onExportArtifacts:n,onExportConversation:r}){return(0,R.jsx)(u,{columns:(0,L.useMemo)(()=>H(t,r,n),[t,n,r]),data:e,emptyMessage:`No Antigravity conversations match the current workspace filter.`})}function W(){let e=k.useParams(),t=i(j()).data,n=A(t,e.workspaceKey),r=i(M(n.key)).data,a=i(D()).data??null,[o,s]=(0,L.useState)(``),l=(0,L.useDeferredValue)(o),u=c({mutationFn:e=>x({data:{conversationId:e.conversationId}}),onSuccess:e=>{f(e.filename,e.content,`text/markdown; charset=utf-8`)}}),d=c({mutationFn:e=>T({data:{conversationId:e.conversationId}}),onSuccess:e=>{f(e.filename,e.content,`text/markdown; charset=utf-8`)}}),p=r.filter(e=>I(l,[e.title,e.conversationId,e.transcriptSource,e.workspaceLabel]));return(0,R.jsxs)(`div`,{className:`space-y-6`,children:[(0,R.jsx)(N,{actions:(0,R.jsx)(F,{placeholder:`Search title, id, or transcript source`,value:o,onValueChange:s}),eyebrow:`Antigravity workspace`,subtitle:`Inspect conversation coverage across Antigravity transcripts, raw payloads, and generated artifacts.`,title:n.label}),(0,R.jsx)(y,{}),(0,R.jsx)(U,{conversations:p,decryptionState:a,onExportArtifacts:e=>d.mutate(e),onExportConversation:e=>u.mutate(e)}),u.isError?(0,R.jsx)(`p`,{className:`text-[var(--destructive)] text-sm`,children:u.error instanceof Error?u.error.message:`Conversation export failed`}):null,d.isError?(0,R.jsx)(`p`,{className:`text-[var(--destructive)] text-sm`,children:d.error instanceof Error?d.error.message:`Artifact export failed`}):null]})}export{W as component};
@@ -1 +0,0 @@
1
- import{t as e}from"./jsx-runtime-DGeXAQPT.js";import{t}from"./reload-error-panel-AHqu0akK.js";var n=e();function r({error:e}){return(0,n.jsx)(t,{description:e.message,title:`Failed to load Antigravity workspace`})}export{r as errorComponent};
@@ -1 +0,0 @@
1
- import{r as e,t}from"./jsx-runtime-DGeXAQPT.js";import{n}from"./react-dom-DL96Jor4.js";import{M as r}from"./createServerFn-B-KkwmHU.js";import{c as i,n as a,o,r as s}from"./formatters-BtqyrX_c.js";import{n as c,t as l}from"./data-table-Br78_dk3.js";import{t as u}from"./antigravity-keychain-panel-B77qJz6f.js";import{x as d}from"./index-C-STgIH4.js";import{t as f}from"./page-header-Cwa3p6Tl.js";import{n as p,t as m}from"./text-filter-DVAZySUS.js";var h=e(n()),g=t(),_=c(),v=[_.accessor(`label`,{cell:e=>(0,g.jsxs)(r,{className:`block w-[16rem] max-w-[22rem] space-y-1 rounded-md outline-none transition hover:opacity-80 focus-visible:ring-2 focus-visible:ring-[var(--accent)] lg:w-auto`,params:{workspaceKey:e.row.original.key},to:`/antigravity/$workspaceKey`,children:[(0,g.jsx)(`p`,{className:`font-medium underline-offset-2 hover:underline`,children:e.getValue()}),(0,g.jsx)(`p`,{className:`truncate text-[var(--muted-foreground)] text-xs`,children:e.row.original.uri??`Unknown root`})]}),header:`Workspace`}),_.accessor(`conversationCount`,{cell:e=>(0,g.jsx)(`span`,{className:`font-mono text-sm`,children:o(e.getValue())}),header:`Conversations`}),_.accessor(`transcriptCount`,{cell:e=>(0,g.jsx)(`span`,{className:`font-mono text-sm`,children:o(e.getValue())}),header:`Transcripts`}),_.accessor(`artifactCount`,{cell:e=>(0,g.jsx)(`span`,{className:`font-mono text-sm`,children:o(e.getValue())}),header:`Artifacts`}),_.accessor(`conversationBytes`,{cell:e=>(0,g.jsx)(`span`,{className:`font-mono text-sm`,children:a(e.getValue())}),header:`Size`}),_.accessor(`lastActiveMs`,{cell:e=>(0,g.jsx)(`span`,{className:`whitespace-nowrap text-sm`,suppressHydrationWarning:!0,children:s(e.getValue())}),header:`Last updated`})];function y({workspaces:e}){return(0,g.jsx)(l,{columns:v,data:e,emptyMessage:`No Antigravity workspaces match the current search.`})}function b(){let e=i(d()).data,[t,n]=(0,h.useState)(``),r=(0,h.useDeferredValue)(t),a=e.filter(e=>m(r,[e.label,e.uri,e.key]));return(0,g.jsxs)(`div`,{className:`space-y-6`,children:[(0,g.jsx)(f,{actions:(0,g.jsx)(p,{placeholder:`Search workspace name or path`,value:t,onValueChange:n}),eyebrow:`Inventory`,subtitle:`Workspace groups are derived from Antigravity summary indexes, raw conversation files, local logs, and brain artifacts.`,title:`Antigravity`}),(0,g.jsx)(u,{}),(0,g.jsx)(y,{workspaces:a})]})}export{b as component};
@@ -1 +0,0 @@
1
- import{t as e}from"./jsx-runtime-DGeXAQPT.js";import{t}from"./reload-error-panel-AHqu0akK.js";var n=e();function r({error:e}){return(0,n.jsx)(t,{description:e.message,title:`Failed to load Antigravity workspaces`})}export{r as errorComponent};
@@ -1 +0,0 @@
1
- import{t as e}from"./jsx-runtime-DGeXAQPT.js";import{h as t,u as n}from"./dist-DvMS2965.js";import{Et as r}from"./index-C-STgIH4.js";var i=e(),a=r(`inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3`,{defaultVariants:{variant:`default`},variants:{variant:{default:`bg-primary text-primary-foreground [a&]:hover:bg-primary/90`,destructive:`bg-destructive text-white focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40 [a&]:hover:bg-destructive/90`,ghost:`[a&]:hover:bg-accent [a&]:hover:text-accent-foreground`,link:`text-primary underline-offset-4 [a&]:hover:underline`,outline:`border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground`,secondary:`bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90`}}});function o({className:e,variant:r=`default`,asChild:o=!1,...s}){return(0,i.jsx)(o?n:`span`,{"data-slot":`badge`,"data-variant":r,className:t(a({variant:r}),e),...s})}export{o as t};
@@ -1 +0,0 @@
1
- import{r as e,t}from"./jsx-runtime-DGeXAQPT.js";import{n}from"./react-dom-DL96Jor4.js";import{_ as r,a as i,c as a,h as o,m as s,n as c,r as l,s as u,t as d}from"./dist-DvMS2965.js";var f=r(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),p=e(n(),1);function m(e){let t=p.useRef({value:e,previous:e});return p.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var h=t(),g=`Checkbox`,[_,v]=u(g),[y,b]=_(g);function x(e){let{__scopeCheckbox:t,checked:n,children:r,defaultChecked:i,disabled:a,form:o,name:s,onCheckedChange:c,required:u,value:d=`on`,internal_do_not_use_render:f}=e,[m,_]=l({prop:n,defaultProp:i??!1,onChange:c,caller:g}),[v,b]=p.useState(null),[x,S]=p.useState(null),C=p.useRef(!1),w=v?!!o||!!v.closest(`form`):!0,T={checked:m,disabled:a,setChecked:_,control:v,setControl:b,name:s,form:o,value:d,hasConsumerStoppedPropagationRef:C,required:u,defaultChecked:A(i)?!1:i,isFormControl:w,bubbleInput:x,setBubbleInput:S};return(0,h.jsx)(y,{scope:t,...T,children:k(f)?f(T):r})}var S=`CheckboxTrigger`,C=p.forwardRef(({__scopeCheckbox:e,onKeyDown:t,onClick:n,...r},o)=>{let{control:c,value:l,disabled:u,checked:d,required:f,setControl:m,setChecked:g,hasConsumerStoppedPropagationRef:_,isFormControl:v,bubbleInput:y}=b(S,e),x=s(o,m),C=p.useRef(d);return p.useEffect(()=>{let e=c?.form;if(e){let t=()=>g(C.current);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[c,g]),(0,h.jsx)(a.button,{type:`button`,role:`checkbox`,"aria-checked":A(d)?`mixed`:d,"aria-required":f,"data-state":j(d),"data-disabled":u?``:void 0,disabled:u,value:l,...r,ref:x,onKeyDown:i(t,e=>{e.key===`Enter`&&e.preventDefault()}),onClick:i(n,e=>{g(e=>A(e)?!0:!e),y&&v&&(_.current=e.isPropagationStopped(),_.current||e.stopPropagation())})})});C.displayName=S;var w=p.forwardRef((e,t)=>{let{__scopeCheckbox:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:c,onCheckedChange:l,form:u,...d}=e;return(0,h.jsx)(x,{__scopeCheckbox:n,checked:i,defaultChecked:a,disabled:s,required:o,onCheckedChange:l,name:r,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(C,{...d,ref:t,__scopeCheckbox:n}),e&&(0,h.jsx)(O,{__scopeCheckbox:n})]})})});w.displayName=g;var T=`CheckboxIndicator`,E=p.forwardRef((e,t)=>{let{__scopeCheckbox:n,forceMount:r,...i}=e,o=b(T,n);return(0,h.jsx)(c,{present:r||A(o.checked)||o.checked===!0,children:(0,h.jsx)(a.span,{"data-state":j(o.checked),"data-disabled":o.disabled?``:void 0,...i,ref:t,style:{pointerEvents:`none`,...e.style}})})});E.displayName=T;var D=`CheckboxBubbleInput`,O=p.forwardRef(({__scopeCheckbox:e,...t},n)=>{let{control:r,hasConsumerStoppedPropagationRef:i,checked:o,defaultChecked:c,required:l,disabled:u,name:f,value:g,form:_,bubbleInput:v,setBubbleInput:y}=b(D,e),x=s(n,y),S=m(o),C=d(r);p.useEffect(()=>{let e=v;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`checked`).set,r=!i.current;if(S!==o&&n){let t=new Event(`click`,{bubbles:r});e.indeterminate=A(o),n.call(e,A(o)?!1:o),e.dispatchEvent(t)}},[v,S,o,i]);let w=p.useRef(A(o)?!1:o);return(0,h.jsx)(a.input,{type:`checkbox`,"aria-hidden":!0,defaultChecked:c??w.current,required:l,disabled:u,name:f,value:g,form:_,...t,tabIndex:-1,ref:x,style:{...t.style,...C,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0,transform:`translateX(-100%)`}})});O.displayName=D;function k(e){return typeof e==`function`}function A(e){return e===`indeterminate`}function j(e){return A(e)?`indeterminate`:e?`checked`:`unchecked`}function M({className:e,...t}){return(0,h.jsx)(w,{"data-slot":`checkbox`,className:o(`peer size-4 shrink-0 rounded-[4px] border border-input shadow-xs outline-none transition-shadow focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[state=checked]:border-primary data-[state=checked]:bg-primary data-[state=checked]:text-white dark:bg-input/30 dark:data-[state=checked]:bg-primary dark:data-[state=checked]:text-primary-foreground dark:aria-invalid:ring-destructive/40`,e),...t,children:(0,h.jsx)(E,{"data-slot":`checkbox-indicator`,className:`grid place-content-center text-current transition-none`,children:(0,h.jsx)(f,{className:`size-3.5`})})})}export{m as n,f as r,M as t};
@@ -1 +0,0 @@
1
- import{r as e,t}from"./jsx-runtime-DGeXAQPT.js";import{n}from"./react-dom-DL96Jor4.js";import{M as r}from"./createServerFn-B-KkwmHU.js";import{c as i,i as a,o,r as s,s as c}from"./formatters-BtqyrX_c.js";import{t as l}from"./useMutation-BSFult2i.js";import{t as u}from"./checkbox-CdHitXWQ.js";import{a as d,c as f,i as p,n as m,o as h,r as g,s as _,t as v}from"./tabs-CmuhkT-c.js";import{n as y,r as b,t as x}from"./download-Bf0QJKD3.js";import{t as S}from"./export-dialog-Dr8d2MqD.js";import{M as C,ht as w,i as T,k as E}from"./index-C-STgIH4.js";import{t as D}from"./metric-card-Dplm0ZiM.js";import{t as O}from"./page-header-Cwa3p6Tl.js";import{t as k}from"./thread-transcript-stats-BUNz6u7F.js";var A=e(n()),j=e=>typeof e==`object`&&e&&!Array.isArray(e)?e:null,M=e=>e.role===`assistant`?j(e.raw.message)?.stop_reason===`tool_use`?`commentary`:`final_answer`:null,N=(e,t,n)=>({entryId:e.entryId,eventType:n,role:e.role,source:`claude_code_local_jsonl`,type:t.type,...t.raw}),P=(e,t,n,r)=>({isHiddenByDefault:e.role!==`assistant`&&e.role!==`user`,kind:`message`,memoryCitation:null,model:e.model??null,phase:M(e),raw:N(e,t,`message`),role:e.role,sequence:n,text:r,timestamp:e.timestamp,variant:e.role===`user`?`user_message`:e.role===`assistant`?`agent_message`:`message`}),F=(e,t,n)=>{let r=t.text?.trim();return r?{content:r,hasEncryptedContent:!1,kind:`reasoning`,raw:N(e,t,`reasoning`),sequence:n,summary:[r],timestamp:e.timestamp}:null},I=e=>{let t=e.toolName??`unknown`;return e.argumentsText?.trim()?`${t}\n${e.argumentsText}`:t},L=(e,t,n)=>({argumentsParseFailed:!1,argumentsText:t.argumentsText??null,callId:t.toolUseId??null,command:I(t),kind:`tool_call`,name:t.toolName??`unknown`,raw:N(e,t,`tool_call`),sequence:n,timestamp:e.timestamp,workdir:e.cwd}),R=(e,t,n)=>{let r=t.outputText?.trim();return r?{callId:t.toolUseId??null,exitCode:t.isError?1:null,kind:`tool_output`,outputText:r,raw:N(e,t,`tool_output`),sequence:n,summary:r,timestamp:e.timestamp,wallTime:null}:null},z=(e,t,n)=>{if(t.type===`text`||t.type===`attachment`){let r=t.text?.trim();return r?[P(e,t,n,r)]:[]}if(t.type===`thinking`){let r=F(e,t,n);return r?[r]:[]}if(t.type===`tool_use`)return[L(e,t,n)];if(t.type===`tool_result`){let r=R(e,t,n);return r?[r]:[]}return[]},B=e=>{let t=[],n=0;for(let r of e.entries)for(let e of r.parts)t.push(...z(r,e,n)),n+=1;return t},V=e=>k(e),H=t(),U=e=>[{label:`Session ID`,value:(0,H.jsx)(`span`,{"data-mono":`true`,children:e.session.sessionId})},{label:`Workspace`,value:(0,H.jsx)(r,{className:`text-[var(--accent)]`,params:{workspaceKey:e.session.workspaceKey},to:`/claude-code/$workspaceKey`,children:e.session.workspaceLabel})},{label:`Worktree`,value:e.session.worktree},{label:`CWD`,value:e.session.cwd},{label:`Model`,value:e.session.model??`unknown`},{label:`Version`,value:e.session.version??`unknown`},{label:`Git branch`,value:e.session.gitBranch??`unknown`},{label:`Created`,value:(0,H.jsx)(`span`,{suppressHydrationWarning:!0,children:s(e.session.createdAtMs)})},{label:`Last active`,value:(0,H.jsx)(`span`,{suppressHydrationWarning:!0,children:s(e.session.lastActiveAtMs)})},{label:`Source file`,value:e.session.filePath}],W=(e,t,n)=>[{label:`Event kinds`,value:a([...new Set(t.map(e=>e.kind))])},{label:`Messages`,value:o(n.messageCount)},{label:`User messages`,value:o(n.userMessageCount)},{label:`Assistant messages`,value:o(n.assistantMessageCount)},{label:`Reasoning events`,value:o(t.filter(e=>e.kind===`reasoning`).length)},{label:`Final answers`,value:o(n.finalAnswerCount)},{label:`Tool calls`,value:o(n.toolCallCount)},{label:`Tool outputs`,value:o(n.toolOutputCount)},{label:`Attachments`,value:o(e.session.attachmentCount)},{label:`Renderable parts`,value:o(e.renderablePartCount)}],G=({rawJsonDisabled:e=!1,showCommentary:t,showExtraEvents:n,showRawJson:r,showToolCalls:i,showUserMessages:a,onShowCommentaryChange:o,onShowExtraEventsChange:s,onShowRawJsonChange:c,onShowToolCallsChange:l,onShowUserMessagesChange:d})=>(0,H.jsxs)(`div`,{className:`flex flex-wrap gap-4 rounded-xl border border-[var(--border)] bg-[var(--panel)] px-4 py-3 shadow-[var(--panel-shadow)]`,children:[(0,H.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,H.jsx)(u,{checked:i,id:`claude-code-transcript-show-tool-calls`,onCheckedChange:e=>l(e===!0)}),(0,H.jsx)(`label`,{htmlFor:`claude-code-transcript-show-tool-calls`,children:`Show tool calls`})]}),(0,H.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,H.jsx)(u,{checked:t,id:`claude-code-transcript-show-commentary`,onCheckedChange:e=>o(e===!0)}),(0,H.jsx)(`label`,{htmlFor:`claude-code-transcript-show-commentary`,children:`Show commentary`})]}),(0,H.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,H.jsx)(u,{checked:n,id:`claude-code-transcript-show-extra-events`,onCheckedChange:e=>s(e===!0)}),(0,H.jsx)(`label`,{htmlFor:`claude-code-transcript-show-extra-events`,children:`Show extra events`})]}),(0,H.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,H.jsx)(u,{checked:r,disabled:e,id:`claude-code-transcript-show-raw-json`,onCheckedChange:e=>c(e===!0)}),(0,H.jsx)(`label`,{htmlFor:`claude-code-transcript-show-raw-json`,children:`Raw JSON`})]}),(0,H.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,H.jsx)(u,{checked:a,id:`claude-code-transcript-show-user-messages`,onCheckedChange:e=>d(e===!0)}),(0,H.jsx)(`label`,{htmlFor:`claude-code-transcript-show-user-messages`,children:`User`})]})]});function K({detail:e,events:t}){return(0,H.jsxs)(`div`,{className:`space-y-4`,children:[(0,H.jsx)(_,{title:`Session summary`,value:e.session}),(0,H.jsx)(_,{title:`Claude Code entries`,value:e.entries}),(0,H.jsx)(_,{title:`Raw JSONL events`,value:e.rawEvents}),(0,H.jsx)(_,{title:`Transcript events`,value:t})]})}function q(){let e=i(E(T.useParams().sessionId)).data,[t,n]=(0,A.useState)(!1),[r,a]=(0,A.useState)(!1),[s,u]=(0,A.useState)(!1),[_,k]=(0,A.useState)(!1),[j,M]=(0,A.useState)(!1),[N,P]=(0,A.useState)(!0),F=(0,A.useMemo)(()=>B(e),[e]),I=(0,A.useMemo)(()=>V(F),[F]),L=l({mutationFn:async t=>{let n=await C({data:{includeCommentary:t.includeCommentary,includeMetadata:t.includeMetadata,includeTools:t.includeTools,outputFormat:t.outputFormat,sessionId:e.session.sessionId,zipArchive:t.zipArchive}});if(n.mode===`download`){x(n.fileName,n.content,n.mimeType);return}await y(n.fileName,n.downloadUrl)},onSuccess:()=>{n(!1)}});return(0,H.jsxs)(`div`,{className:`space-y-6`,children:[(0,H.jsx)(O,{actions:(0,H.jsxs)(w,{className:`rounded-full`,type:`button`,variant:`outline`,onClick:()=>n(!0),children:[(0,H.jsx)(b,{className:`mr-2 size-4`}),`Export`]}),breadcrumb:(0,H.jsx)(f,{items:[{label:`Claude Code`,to:`/claude-code`},{label:e.session.workspaceLabel,params:{workspaceKey:e.session.workspaceKey},to:`/claude-code/$workspaceKey`},{label:e.session.title}]}),eyebrow:`Claude Code session`,subtitle:`Session detail for the selected Claude Code project conversation.`,title:e.session.title}),(0,H.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-2 xl:grid-cols-4`,children:[(0,H.jsx)(D,{label:`Messages`,value:o(e.session.messageCount)}),(0,H.jsx)(D,{label:`Tool calls`,value:o(e.session.toolCallCount)}),(0,H.jsx)(D,{label:`Tool outputs`,value:o(e.session.toolResultCount)}),(0,H.jsx)(D,{label:`Tokens`,value:c(e.session.totalTokens)})]}),(0,H.jsxs)(v,{className:`space-y-4`,defaultValue:`transcript`,children:[(0,H.jsxs)(g,{className:`grid w-fit min-w-[24rem] grid-cols-3 rounded-full border border-[var(--border)] bg-[var(--panel)] p-1`,children:[(0,H.jsx)(p,{className:`rounded-full px-5 text-sm`,value:`transcript`,children:`Transcript`}),(0,H.jsx)(p,{className:`rounded-full px-5 text-sm`,value:`metadata`,children:`Metadata`}),(0,H.jsx)(p,{className:`rounded-full px-5 text-sm`,value:`raw`,children:`Raw`})]}),(0,H.jsxs)(m,{className:`space-y-3`,value:`transcript`,children:[(0,H.jsx)(G,{rawJsonDisabled:F.length===0,showCommentary:s,showExtraEvents:_,showRawJson:j,showToolCalls:r,showUserMessages:N,onShowCommentaryChange:u,onShowExtraEventsChange:k,onShowRawJsonChange:M,onShowToolCallsChange:a,onShowUserMessagesChange:P}),F.length>0?(0,H.jsx)(d,{assistantModel:e.session.model,events:F,projectPath:e.session.worktree,showCommentary:s,showExtraEvents:_,showRawJson:j,showToolCalls:r,showUserMessages:N}):(0,H.jsxs)(`section`,{className:`rounded-[1.6rem] border border-[var(--border)] bg-[var(--panel)] p-5 shadow-[var(--panel-shadow)]`,children:[(0,H.jsx)(`h3`,{className:`font-semibold text-[var(--muted-foreground)] text-sm uppercase tracking-[0.18em]`,children:`Transcript`}),(0,H.jsx)(`p`,{className:`mt-4 text-[var(--muted-foreground)] text-sm`,children:`No renderable Claude Code transcript content was found for this session.`})]})]}),(0,H.jsx)(m,{value:`metadata`,children:(0,H.jsxs)(`div`,{className:`grid gap-4 xl:grid-cols-[0.95fr_1.05fr]`,children:[(0,H.jsx)(h,{items:U(e),title:`Session metadata`}),(0,H.jsx)(h,{items:W(e,F,I),title:`Transcript stats`})]})}),(0,H.jsx)(m,{value:`raw`,children:(0,H.jsx)(K,{detail:e,events:F})})]}),(0,H.jsx)(S,{errorMessage:L.isError?L.error instanceof Error?L.error.message:`Export failed`:null,open:t,pending:L.isPending,title:`Export ${e.session.title}`,onExport:e=>L.mutate(e),onOpenChange:e=>{n(e),e||L.reset()}})]})}export{q as component};
@@ -1 +0,0 @@
1
- import{t as e}from"./jsx-runtime-DGeXAQPT.js";import{t}from"./reload-error-panel-AHqu0akK.js";var n=e();function r({error:e}){return(0,n.jsx)(t,{description:e.message,title:`Failed to load Claude Code session`})}export{r as errorComponent};
@@ -1 +0,0 @@
1
- import{t as e}from"./jsx-runtime-DGeXAQPT.js";import{t}from"./reload-error-panel-AHqu0akK.js";var n=e();function r({error:e}){return(0,n.jsx)(t,{description:e.message,title:`Failed to load Claude Code workspace`})}export{r as errorComponent};
@@ -1 +0,0 @@
1
- import{r as e,t}from"./jsx-runtime-DGeXAQPT.js";import{n}from"./react-dom-DL96Jor4.js";import{M as r}from"./createServerFn-B-KkwmHU.js";import{c as i,o as a,r as o,s}from"./formatters-BtqyrX_c.js";import{t as c}from"./useMutation-BSFult2i.js";import{n as l,t as u}from"./data-table-Br78_dk3.js";import{n as d,r as f,t as p}from"./download-Bf0QJKD3.js";import{a as m,i as h,n as g,r as _,t as v}from"./dropdown-menu-D5cvPaZt.js";import{t as y}from"./export-dialog-Dr8d2MqD.js";import{A as b,M as x,a as S,ht as C,j as w,o as T}from"./index-C-STgIH4.js";import{t as E}from"./page-header-Cwa3p6Tl.js";import{n as D,t as O}from"./text-filter-DVAZySUS.js";var k=e(n(),1),A=t(),j=l(),M=[{desc:!0,id:`lastActive`}],N=e=>[j.accessor(`title`,{cell:e=>(0,A.jsxs)(r,{className:`block w-[16rem] max-w-[22rem] space-y-1 rounded-md outline-none transition hover:opacity-80 focus-visible:ring-2 focus-visible:ring-[var(--accent)] lg:w-auto`,params:{sessionId:e.row.original.sessionId},to:`/claude-code-sessions/$sessionId`,children:[(0,A.jsx)(`p`,{className:`truncate font-medium underline-offset-2 hover:underline`,children:e.getValue()}),(0,A.jsx)(`p`,{className:`truncate text-[var(--muted-foreground)] text-xs`,children:e.row.original.sessionId})]}),header:`Session`}),j.accessor(`lastActiveAtMs`,{cell:e=>(0,A.jsx)(`span`,{className:`whitespace-nowrap text-sm`,children:o(e.getValue(),{timeZone:`UTC`})}),header:`Updated`,id:`lastActive`}),j.accessor(`model`,{cell:e=>(0,A.jsx)(`span`,{className:`text-sm`,children:e.getValue()??`unknown`}),header:`Model`}),j.accessor(`messageCount`,{cell:e=>(0,A.jsx)(`span`,{className:`font-mono text-sm`,children:a(e.getValue())}),header:`Messages`}),j.accessor(`toolCallCount`,{cell:e=>(0,A.jsx)(`span`,{className:`font-mono text-sm`,children:a(e.getValue())}),header:`Tools`}),j.accessor(`totalTokens`,{cell:e=>(0,A.jsx)(`span`,{className:`whitespace-nowrap font-mono text-sm`,children:s(e.getValue())}),header:`Tokens`}),j.accessor(`version`,{cell:e=>(0,A.jsx)(`span`,{className:`font-mono text-sm`,children:e.getValue()??`unknown`}),header:`Version`}),j.display({cell:t=>(0,A.jsxs)(v,{children:[(0,A.jsx)(h,{asChild:!0,children:(0,A.jsx)(C,{"aria-label":`Actions for ${t.row.original.title}`,className:`rounded-full`,size:`icon`,type:`button`,variant:`ghost`,onClick:e=>e.stopPropagation(),children:(0,A.jsx)(m,{className:`size-4`})})}),(0,A.jsx)(g,{align:`end`,children:(0,A.jsxs)(_,{disabled:t.row.original.renderablePartCount===0,onClick:()=>e(t.row.original),children:[(0,A.jsx)(f,{className:`mr-2 size-4`}),`Export session`]})})]}),enableSorting:!1,header:``,id:`actions`})];function P({onExportSession:e,sessions:t}){return(0,A.jsx)(u,{columns:(0,k.useMemo)(()=>N(e),[e]),data:t,emptyMessage:`No Claude Code sessions match the current workspace filter.`,initialSorting:M})}function F(){let e=S.useParams(),t=i(w()).data,n=T(t,e.workspaceKey),r=i(b(n.key)).data,[a,o]=(0,k.useState)(``),[s,l]=(0,k.useState)(null),u=(0,k.useDeferredValue)(a),f=c({mutationFn:async e=>{if(!s)throw Error(`No Claude Code session selected for export`);let t=await x({data:{includeCommentary:e.includeCommentary,includeMetadata:e.includeMetadata,includeTools:e.includeTools,outputFormat:e.outputFormat,sessionId:s.sessionId,zipArchive:e.zipArchive}});if(t.mode===`download`){p(t.fileName,t.content,t.mimeType);return}await d(t.fileName,t.downloadUrl)},onSuccess:()=>{l(null)}}),m=r.filter(e=>O(u,[e.title,e.sessionId,e.model,e.version,e.gitBranch,e.filePath]));return(0,A.jsxs)(`div`,{className:`space-y-6`,children:[(0,A.jsx)(E,{actions:(0,A.jsx)(D,{placeholder:`Search session title, id, model, or version`,value:a,onValueChange:o}),eyebrow:`Claude Code workspace`,subtitle:`Inspect local Claude Code sessions, user prompts, assistant responses, tool calls, and token totals.`,title:n.label}),(0,A.jsx)(P,{sessions:m,onExportSession:l}),(0,A.jsx)(y,{open:s!==null,pending:f.isPending,title:s?`Export ${s.title}`:`Export session`,onExport:e=>f.mutate(e),onOpenChange:e=>{e||(l(null),f.reset())}}),f.isError?(0,A.jsx)(`p`,{className:`text-[var(--destructive)] text-sm`,children:f.error instanceof Error?f.error.message:`Session export failed`}):null]})}export{F as component};
@@ -1 +0,0 @@
1
- import{t as e}from"./jsx-runtime-DGeXAQPT.js";import{t}from"./reload-error-panel-AHqu0akK.js";var n=e();function r({error:e}){return(0,n.jsx)(t,{description:e.message,title:`Failed to load Claude Code workspaces`})}export{r as errorComponent};
@@ -1 +0,0 @@
1
- import{r as e,t}from"./jsx-runtime-DGeXAQPT.js";import{n}from"./react-dom-DL96Jor4.js";import{M as r}from"./createServerFn-B-KkwmHU.js";import{c as i,o as a,r as o}from"./formatters-BtqyrX_c.js";import{n as s,t as c}from"./data-table-Br78_dk3.js";import{j as l}from"./index-C-STgIH4.js";import{t as u}from"./page-header-Cwa3p6Tl.js";import{n as d,t as f}from"./text-filter-DVAZySUS.js";var p=e(n()),m=t(),h=s(),g=[h.accessor(`label`,{cell:e=>(0,m.jsxs)(r,{className:`block w-[16rem] max-w-[22rem] space-y-1 rounded-md outline-none transition hover:opacity-80 focus-visible:ring-2 focus-visible:ring-[var(--accent)] lg:w-auto`,params:{workspaceKey:e.row.original.key},to:`/claude-code/$workspaceKey`,children:[(0,m.jsx)(`p`,{className:`truncate font-medium underline-offset-2 hover:underline`,children:e.getValue()}),(0,m.jsx)(`p`,{className:`truncate text-[var(--muted-foreground)] text-xs`,children:e.row.original.worktree})]}),header:`Workspace`}),h.accessor(`sessionCount`,{cell:e=>(0,m.jsx)(`span`,{className:`font-mono text-sm`,children:a(e.getValue())}),header:`Sessions`}),h.accessor(`messageCount`,{cell:e=>(0,m.jsx)(`span`,{className:`font-mono text-sm`,children:a(e.getValue())}),header:`Messages`}),h.accessor(`toolCallCount`,{cell:e=>(0,m.jsx)(`span`,{className:`font-mono text-sm`,children:a(e.getValue())}),header:`Tool calls`}),h.accessor(`lastActiveAtMs`,{cell:e=>(0,m.jsx)(`span`,{className:`whitespace-nowrap text-sm`,children:o(e.getValue(),{timeZone:`UTC`})}),header:`Last active`})];function _({workspaces:e}){return(0,m.jsx)(c,{columns:g,data:e,emptyMessage:`No Claude Code workspaces match the current search.`})}function v(){let e=i(l()).data,[t,n]=(0,p.useState)(``),r=(0,p.useDeferredValue)(t),a=e.filter(e=>f(r,[e.label,e.worktree,e.key,e.directoryName]));return(0,m.jsxs)(`div`,{className:`space-y-6`,children:[(0,m.jsx)(u,{actions:(0,m.jsx)(d,{placeholder:`Search workspace name or path`,value:t,onValueChange:n}),eyebrow:`Inventory`,subtitle:`Workspace groups are derived from local Claude Code project JSONL transcripts.`,title:`Claude Code`}),(0,m.jsx)(_,{workspaces:a})]})}export{v as component};
@@ -1,3 +0,0 @@
1
- import{n as e,r as t,t as n}from"./jsx-runtime-DGeXAQPT.js";import{n as r,t as i}from"./react-dom-DL96Jor4.js";var a=`__TSS_CONTEXT`,o=Symbol.for(`TSS_SERVER_FUNCTION`),s=Symbol.for(`TSS_SERVER_FUNCTION_FACTORY`),c=`application/x-tss-framed`,l={JSON:0,CHUNK:1,END:2,ERROR:3};`${c}`;var u=/;\s*v=(\d+)/;function d(e){let t=e.match(u);return t?parseInt(t[1],10):void 0}function f(e){let t=d(e);if(t!==void 0&&t!==1)throw Error(`Incompatible framed protocol version: server=${t}, client=1. Please ensure client and server are using compatible versions.`)}var p=()=>window.__TSS_START_OPTIONS__;function m(e){return e[e.length-1]}function h(e){return typeof e==`function`}function g(e,t){return h(e)?e(t):e}var _=Object.prototype.hasOwnProperty,v=Object.prototype.propertyIsEnumerable;function y(e){for(let t in e)if(_.call(e,t))return!0;return!1}var b=()=>Object.create(null),ee=(e,t)=>x(e,t,b);function x(e,t,n=()=>({}),r=0){if(e===t)return e;if(r>500)return t;let i=t,a=re(e)&&re(i);if(!a&&!(S(e)&&S(i)))return i;let o=a?e:te(e);if(!o)return i;let s=a?i:te(i);if(!s)return i;let c=o.length,l=s.length,u=a?Array(l):n(),d=0;for(let t=0;t<l;t++){let o=a?t:s[t],l=e[o],f=i[o];if(l===f){u[o]=l,(a?t<c:_.call(e,o))&&d++;continue}if(l===null||f===null||typeof l!=`object`||typeof f!=`object`){u[o]=f;continue}let p=x(l,f,n,r+1);u[o]=p,p===l&&d++}return c===l&&d===c?e:u}function te(e){let t=Object.getOwnPropertyNames(e);for(let n of t)if(!v.call(e,n))return!1;let n=Object.getOwnPropertySymbols(e);if(n.length===0)return t;let r=t;for(let t of n){if(!v.call(e,t))return!1;r.push(t)}return r}function S(e){if(!ne(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!ne(n)||!n.hasOwnProperty(`isPrototypeOf`))}function ne(e){return Object.prototype.toString.call(e)===`[object Object]`}function re(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function ie(e,t,n){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return!1;for(let r=0,i=e.length;r<i;r++)if(!ie(e[r],t[r],n))return!1;return!0}if(S(e)&&S(t)){let r=n?.ignoreUndefined??!0;if(n?.partial){for(let i in t)if((!r||t[i]!==void 0)&&!ie(e[i],t[i],n))return!1;return!0}let i=0;if(!r)i=Object.keys(e).length;else for(let t in e)e[t]!==void 0&&i++;let a=0;for(let o in t)if((!r||t[o]!==void 0)&&(a++,a>i||!ie(e[o],t[o],n)))return!1;return i===a}return!1}function ae(e){let t,n,r=new Promise((e,r)=>{t=e,n=r});return r.status=`pending`,r.resolve=n=>{r.status=`resolved`,r.value=n,t(n),e?.(n)},r.reject=e=>{r.status=`rejected`,n(e)},r}function oe(e){return typeof e?.message==`string`?e.message.startsWith(`Failed to fetch dynamically imported module`)||e.message.startsWith(`error loading dynamically imported module`)||e.message.startsWith(`Importing a module script failed`):!1}function se(e){return!!(e&&typeof e==`object`&&typeof e.then==`function`)}function ce(e){return e.replace(/[\x00-\x1f\x7f]/g,``)}function le(e){let t;try{t=decodeURI(e)}catch{t=e.replaceAll(/%[0-9A-F]{2}/gi,e=>{try{return decodeURI(e)}catch{return e}})}return ce(t)}var ue=[`http:`,`https:`,`mailto:`,`tel:`];function de(e,t){if(!e)return!1;try{let n=new URL(e);return!t.has(n.protocol)}catch{return!1}}var fe={"&":`\\u0026`,">":`\\u003e`,"<":`\\u003c`,"\u2028":`\\u2028`,"\u2029":`\\u2029`},pe=/[&><\u2028\u2029]/g;function me(e){return e.replace(pe,e=>fe[e])}function he(e){if(!e||!/[%\\\x00-\x1f\x7f]/.test(e)&&!e.startsWith(`//`))return{path:e,handledProtocolRelativeURL:!1};let t=/%25|%5C/gi,n=0,r=``,i;for(;(i=t.exec(e))!==null;)r+=le(e.slice(n,i.index))+i[0],n=t.lastIndex;r+=le(n?e.slice(n):e);let a=!1;return r.startsWith(`//`)&&(a=!0,r=`/`+r.replace(/^\/+/,``)),{path:r,handledProtocolRelativeURL:a}}function ge(e){return/\s|[^\u0000-\u007F]/.test(e)?e.replace(/\s|[^\u0000-\u007F]/gu,encodeURIComponent):e}function _e(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function C(){throw Error(`Invariant failed`)}function w(e){let t=new Map,n,r,i=e=>{e.next&&(e.prev?(e.prev.next=e.next,e.next.prev=e.prev,e.next=void 0,r&&(r.next=e,e.prev=r)):(e.next.prev=void 0,n=e.next,e.next=void 0,r&&(e.prev=r,r.next=e)),r=e)};return{get(e){let n=t.get(e);if(n)return i(n),n.value},set(a,o){if(t.size>=e&&n){let e=n;t.delete(e.key),e.next&&(n=e.next,e.next.prev=void 0),e===r&&(r=void 0)}let s=t.get(a);if(s)s.value=o,i(s);else{let e={key:a,value:o,prev:r};r&&(r.next=e),r=e,n||=e,t.set(a,e)}},clear(){t.clear(),n=void 0,r=void 0}}}var E=4,D=5;function ve(e){let t=e.indexOf(`{`);if(t===-1)return null;let n=e.indexOf(`}`,t);return n===-1||t+1>=e.length?null:[t,n]}function ye(e,t,n=new Uint16Array(6)){let r=e.indexOf(`/`,t),i=r===-1?e.length:r,a=e.substring(t,i);if(!a||!a.includes(`$`))return n[0]=0,n[1]=t,n[2]=t,n[3]=i,n[4]=i,n[5]=i,n;if(a===`$`){let r=e.length;return n[0]=2,n[1]=t,n[2]=t,n[3]=r,n[4]=r,n[5]=r,n}if(a.charCodeAt(0)===36)return n[0]=1,n[1]=t,n[2]=t+1,n[3]=i,n[4]=i,n[5]=i,n;let o=ve(a);if(o){let[r,s]=o,c=a.charCodeAt(r+1);if(c===45){if(r+2<a.length&&a.charCodeAt(r+2)===36){let e=r+3,a=s;if(e<a)return n[0]=3,n[1]=t+r,n[2]=t+e,n[3]=t+a,n[4]=t+s+1,n[5]=i,n}}else if(c===36){let a=r+1,o=r+2;return o===s?(n[0]=2,n[1]=t+r,n[2]=t+a,n[3]=t+o,n[4]=t+s+1,n[5]=e.length,n):(n[0]=1,n[1]=t+r,n[2]=t+o,n[3]=t+s,n[4]=t+s+1,n[5]=i,n)}}return n[0]=0,n[1]=t,n[2]=t,n[3]=i,n[4]=i,n[5]=i,n}function O(e,t,n,r,i,a,o){o?.(n);let s=r;{let r=n.fullPath??n.from,o=r.length,c=n.options?.caseSensitive??e,l=n.options?.params?.parse??n.options?.parseParams;for(;s<o;){let e=ye(r,s,t),o,u=s,d=e[5];switch(s=d+1,a++,e[0]){case 0:{let t=r.substring(e[2],e[3]);if(c){let e=i.static?.get(t);if(e)o=e;else{i.static??=new Map;let e=j(n.fullPath??n.from);e.parent=i,e.depth=a,o=e,i.static.set(t,e)}}else{let e=t.toLowerCase(),r=i.staticInsensitive?.get(e);if(r)o=r;else{i.staticInsensitive??=new Map;let t=j(n.fullPath??n.from);t.parent=i,t.depth=a,o=t,i.staticInsensitive.set(e,t)}}break}case 1:{let t=r.substring(u,e[1]),s=r.substring(e[4],d),f=c&&!!(t||s),p=t?f?t:t.toLowerCase():void 0,m=s?f?s:s.toLowerCase():void 0,h=!l&&i.dynamic?.find(e=>!e.parse&&e.caseSensitive===f&&e.prefix===p&&e.suffix===m);if(h)o=h;else{let e=M(1,n.fullPath??n.from,f,p,m);o=e,e.depth=a,e.parent=i,i.dynamic??=[],i.dynamic.push(e)}break}case 3:{let t=r.substring(u,e[1]),s=r.substring(e[4],d),f=c&&!!(t||s),p=t?f?t:t.toLowerCase():void 0,m=s?f?s:s.toLowerCase():void 0,h=!l&&i.optional?.find(e=>!e.parse&&e.caseSensitive===f&&e.prefix===p&&e.suffix===m);if(h)o=h;else{let e=M(3,n.fullPath??n.from,f,p,m);o=e,e.parent=i,e.depth=a,i.optional??=[],i.optional.push(e)}break}case 2:{let t=r.substring(u,e[1]),s=r.substring(e[4],d),l=c&&!!(t||s),f=t?l?t:t.toLowerCase():void 0,p=s?l?s:s.toLowerCase():void 0,m=M(2,n.fullPath??n.from,l,f,p);o=m,m.parent=i,m.depth=a,i.wildcard??=[],i.wildcard.push(m)}}i=o}if(l&&n.children&&!n.isRoot&&n.id&&n.id.charCodeAt(n.id.lastIndexOf(`/`)+1)===95){let e=j(n.fullPath??n.from);e.kind=D,e.parent=i,a++,e.depth=a,i.pathless??=[],i.pathless.push(e),i=e}let u=(n.path||!n.children)&&!n.isRoot;if(u&&r.endsWith(`/`)){let e=j(n.fullPath??n.from);e.kind=E,e.parent=i,a++,e.depth=a,i.index=e,i=e}i.parse=l??null,i.priority=n.options?.params?.priority??0,u&&!i.route&&(i.route=n,i.fullPath=n.fullPath??n.from)}if(n.children)for(let r of n.children)O(e,t,r,s,i,a,o)}function k(e,t){if(e.parse&&!t.parse)return-1;if(!e.parse&&t.parse)return 1;if(e.parse&&t.parse&&(e.priority||t.priority))return t.priority-e.priority;if(e.prefix&&t.prefix&&e.prefix!==t.prefix){if(e.prefix.startsWith(t.prefix))return-1;if(t.prefix.startsWith(e.prefix))return 1}if(e.suffix&&t.suffix&&e.suffix!==t.suffix){if(e.suffix.endsWith(t.suffix))return-1;if(t.suffix.endsWith(e.suffix))return 1}return e.prefix&&!t.prefix?-1:!e.prefix&&t.prefix?1:e.suffix&&!t.suffix?-1:!e.suffix&&t.suffix?1:e.caseSensitive&&!t.caseSensitive?-1:!e.caseSensitive&&t.caseSensitive?1:0}function A(e){if(e.pathless)for(let t of e.pathless)A(t);if(e.static)for(let t of e.static.values())A(t);if(e.staticInsensitive)for(let t of e.staticInsensitive.values())A(t);if(e.dynamic?.length){e.dynamic.sort(k);for(let t of e.dynamic)A(t)}if(e.optional?.length){e.optional.sort(k);for(let t of e.optional)A(t)}if(e.wildcard?.length){e.wildcard.sort(k);for(let t of e.wildcard)A(t)}}function j(e){return{kind:0,depth:0,pathless:null,index:null,static:null,staticInsensitive:null,dynamic:null,optional:null,wildcard:null,route:null,fullPath:e,parent:null,parse:null,priority:0}}function M(e,t,n,r,i){return{kind:e,depth:0,pathless:null,index:null,static:null,staticInsensitive:null,dynamic:null,optional:null,wildcard:null,route:null,fullPath:t,parent:null,parse:null,priority:0,caseSensitive:n,prefix:r,suffix:i}}function be(e,t){let n=j(`/`),r=new Uint16Array(6);for(let t of e)O(!1,r,t,1,n,0);A(n),t.masksTree=n,t.flatCache=w(1e3)}function xe(e,t){e||=`/`;let n=t.flatCache.get(e);if(n)return n;let r=Te(e,t.masksTree);return t.flatCache.set(e,r),r}function Se(e,t,n,r,i){e||=`/`,r||=`/`;let a=t?`case\0${e}`:e,o=i.singleCache.get(a);return o||(o=j(`/`),O(t,new Uint16Array(6),{from:e},1,o,0),i.singleCache.set(a,o)),Te(r,o,n)}function Ce(e,t,n=!1){let r=n?e:`nofuzz\0${e}`,i=t.matchCache.get(r);if(i!==void 0)return i;e||=`/`;let a;try{a=Te(e,t.segmentTree,n)}catch(e){if(e instanceof URIError)a=null;else throw e}return a&&(a.branch=Ee(a.route)),t.matchCache.set(r,a),a}function we(e){return e===`/`?e:e.replace(/\/{1,}$/,``)}function N(e,t=!1,n){let r=j(e.fullPath),i=new Uint16Array(6),a={},o={},s=0;return O(t,i,e,1,r,0,e=>{if(n?.(e,s),e.id in a&&C(),a[e.id]=e,s!==0&&e.path){let t=we(e.fullPath);(!o[t]||e.fullPath.endsWith(`/`))&&(o[t]=e)}s++}),A(r),{processedTree:{segmentTree:r,singleCache:w(1e3),matchCache:w(1e3),flatCache:null,masksTree:null},routesById:a,routesByPath:o}}function Te(e,t,n=!1){let r=e.split(`/`),i=Oe(e,r,t,n);if(!i)return null;let[a]=P(e,r,i);return{route:i.node.route,rawParams:a}}function P(e,t,n){let r=De(n.node),i=null,a=Object.create(null),o=n.extract?.part??0,s=n.extract?.node??0,c=n.extract?.path??0,l=n.extract?.segment??0;for(;s<r.length;o++,s++,c++,l++){let u=r[s];if(u.kind===E)break;if(u.kind===D){l--,o--,c--;continue}let d=t[o],f=c;if(d&&(c+=d.length),u.kind===1){i??=n.node.fullPath.split(`/`);let e=i[l],t=u.prefix?.length??0;if(e.charCodeAt(t)===123){let n=u.suffix?.length??0,r=e.substring(t+2,e.length-n-1),i=d.substring(t,d.length-n);a[r]=decodeURIComponent(i)}else{let t=e.substring(1);a[t]=decodeURIComponent(d)}}else if(u.kind===3){if(n.skipped&1<<s){o--,c=f-1;continue}i??=n.node.fullPath.split(`/`);let e=i[l],t=u.prefix?.length??0,r=u.suffix?.length??0,p=e.substring(t+3,e.length-r-1),m=u.suffix||u.prefix?d.substring(t,d.length-r):d;m&&(a[p]=decodeURIComponent(m))}else if(u.kind===2){let t=u,n=e.substring(f+(t.prefix?.length??0),e.length-(t.suffix?.length??0)),r=decodeURIComponent(n);a[`*`]=r,a._splat=r;break}}return n.rawParams&&Object.assign(a,n.rawParams),[a,{part:o,node:s,path:c,segment:l}]}function Ee(e){let t=[e];for(;e.parentRoute;)e=e.parentRoute,t.push(e);return t.reverse(),t}function De(e){let t=Array(e.depth+1);do t[e.depth]=e,e=e.parent;while(e);return t}function Oe(e,t,n,r){if(e===`/`&&n.index)return{node:n.index,skipped:0};let i=!m(t),a=i&&e!==`/`,o=t.length-+!!i,s=[{node:n,index:1,skipped:0,depth:1,statics:0,dynamics:0,optionals:0}],c=null,l=null;for(;s.length;){let n=s.pop(),{node:i,index:u,skipped:d,depth:f,statics:p,dynamics:m,optionals:h}=n,{extract:g,rawParams:_}=n;if(i.kind===2&&i.route&&!je(l,n))continue;if(i.parse){if(!Ae(e,t,n))continue;_=n.rawParams,g=n.extract}r&&i.route&&i.kind!==E&&je(c,n)&&(c=n);let v=u===o;if(v&&(i.route&&(!a||i.kind===E||i.kind===2)&&je(l,n)&&(l=n),!i.optional&&!i.wildcard&&!i.index&&!i.pathless))continue;let y=v?void 0:t[u],b;if(v&&i.index){let n={node:i.index,index:u,skipped:d,depth:f+1,statics:p,dynamics:m,optionals:h,extract:g,rawParams:_},r=!0;if(i.index.parse&&(Ae(e,t,n)||(r=!1)),r){if(!m&&!h&&!d&&ke(p,o))return n;je(l,n)&&(l=n)}}if(i.wildcard)for(let e=i.wildcard.length-1;e>=0;e--){let n=i.wildcard[e],{prefix:r,suffix:a}=n;if(!(r&&(v||!(n.caseSensitive?y:b??=y.toLowerCase()).startsWith(r)))){if(a){if(v)continue;let e=t.slice(u).join(`/`).slice(-a.length);if((n.caseSensitive?e:e.toLowerCase())!==a)continue}s.push({node:n,index:o,skipped:d,depth:f+1,statics:p,dynamics:m,optionals:h,extract:g,rawParams:_})}}if(i.optional){let e=d|1<<f,t=f+1;for(let n=i.optional.length-1;n>=0;n--){let r=i.optional[n];s.push({node:r,index:u,skipped:e,depth:t,statics:p,dynamics:m,optionals:h,extract:g,rawParams:_})}if(!v)for(let e=i.optional.length-1;e>=0;e--){let n=i.optional[e],{prefix:r,suffix:a}=n;if(r||a){let e=n.caseSensitive?y:b??=y.toLowerCase();if(r&&!e.startsWith(r)||a&&!e.endsWith(a))continue}s.push({node:n,index:u+1,skipped:d,depth:t,statics:p,dynamics:m,optionals:h+F(o,u),extract:g,rawParams:_})}}if(!v&&i.dynamic&&y)for(let e=i.dynamic.length-1;e>=0;e--){let t=i.dynamic[e],{prefix:n,suffix:r}=t;if(n||r){let e=t.caseSensitive?y:b??=y.toLowerCase();if(n&&!e.startsWith(n)||r&&!e.endsWith(r))continue}s.push({node:t,index:u+1,skipped:d,depth:f+1,statics:p,dynamics:m+F(o,u),optionals:h,extract:g,rawParams:_})}if(!v&&i.staticInsensitive){let e=i.staticInsensitive.get(b??=y.toLowerCase());e&&s.push({node:e,index:u+1,skipped:d,depth:f+1,statics:p+F(o,u),dynamics:m,optionals:h,extract:g,rawParams:_})}if(!v&&i.static){let e=i.static.get(y);e&&s.push({node:e,index:u+1,skipped:d,depth:f+1,statics:p+F(o,u),dynamics:m,optionals:h,extract:g,rawParams:_})}if(i.pathless){let e=f+1;for(let t=i.pathless.length-1;t>=0;t--){let n=i.pathless[t];s.push({node:n,index:u,skipped:d,depth:e,statics:p,dynamics:m,optionals:h,extract:g,rawParams:_})}}}if(l)return l;if(r&&c){let n=c.index;for(let e=0;e<c.index;e++)n+=t[e].length;let r=n===e.length?`/`:e.slice(n);return c.rawParams??=Object.create(null),c.rawParams[`**`]=decodeURIComponent(r),c}return null}function F(e,t){return 2**(e-t-1)}function ke(e,t){return e===2**(t-1)-1}function Ae(e,t,n){let r,i;try{[r,i]=P(e,t,n)}catch{return null}if(n.rawParams=r,n.extract=i,!n.node.parse)return!0;try{if(n.node.parse(r)===!1)return null}catch{}return!0}function je(e,t){return e?t.statics>e.statics||t.statics===e.statics&&(t.dynamics>e.dynamics||t.dynamics===e.dynamics&&(t.optionals>e.optionals||t.optionals===e.optionals&&((t.node.kind===E)>(e.node.kind===E)||t.node.kind===E==(e.node.kind===E)&&t.depth>e.depth))):!0}function Me(e){return Ne(e.filter(e=>e!==void 0).join(`/`))}function Ne(e){return e.replace(/\/{2,}/g,`/`)}function Pe(e){return e===`/`?e:e.replace(/^\/{1,}/,``)}function Fe(e){let t=e.length;return t>1&&e[t-1]===`/`?e.replace(/\/{1,}$/,``):e}function Ie(e){return Fe(Pe(e))}function Le(e,t){return e?.endsWith(`/`)&&e!==`/`&&e!==`${t}/`?e.slice(0,-1):e}function Re(e,t,n){return Le(e,n)===Le(t,n)}function ze({base:e,to:t,trailingSlash:n=`never`,cache:r}){let i=t.startsWith(`/`),a=!i&&t===`.`,o;if(r){o=i?t:a?e:e+`\0`+t;let n=r.get(o);if(n)return n}let s;if(a)s=e.split(`/`);else if(i)s=t.split(`/`);else{for(s=e.split(`/`);s.length>1&&m(s)===``;)s.pop();let n=t.split(`/`);for(let e=0,t=n.length;e<t;e++){let r=n[e];r===``?e?e===t-1&&s.push(r):s=[r]:r===`..`?s.pop():r===`.`||s.push(r)}}s.length>1&&(m(s)===``?n===`never`&&s.pop():n===`always`&&s.push(``));let c=Ne(s.join(`/`))||`/`;return o&&r&&r.set(o,c),c}function Be(e){let t=new Map(e.map(e=>[encodeURIComponent(e),e])),n=Array.from(t.keys()).map(e=>e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)).join(`|`),r=new RegExp(n,`g`);return e=>e.replace(r,e=>t.get(e)??e)}function Ve(e,t,n){let r=t[e];return typeof r==`string`?e===`_splat`?/^[a-zA-Z0-9\-._~!/]*$/.test(r)?r:r.split(`/`).map(e=>Ue(e,n)).join(`/`):Ue(r,n):r}function He({path:e,params:t,decoder:n,...r}){let i=!1,a=Object.create(null);if(!e||e===`/`)return{interpolatedPath:`/`,usedParams:a,isMissingParams:i};if(!e.includes(`$`))return{interpolatedPath:e,usedParams:a,isMissingParams:i};let o=e.length,s=0,c,l=``;for(;s<o;){let r=s;c=ye(e,r,c);let o=c[5];if(s=o+1,r===o)continue;let u=c[0];if(u===0){l+=`/`+e.substring(r,o);continue}if(u===2){let s=t._splat;a._splat=s,a[`*`]=s;let u=e.substring(r,c[1]),d=e.substring(c[4],o);if(!s){i=!0,(u||d)&&(l+=`/`+u+d);continue}let f=Ve(`_splat`,t,n);l+=`/`+u+f+d;continue}if(u===1){let s=e.substring(c[2],c[3]);!i&&!(s in t)&&(i=!0),a[s]=t[s];let u=e.substring(r,c[1]),d=e.substring(c[4],o),f=Ve(s,t,n)??`undefined`;l+=`/`+u+f+d;continue}if(u===3){let i=e.substring(c[2],c[3]),s=t[i];if(s==null)continue;a[i]=s;let u=e.substring(r,c[1]),d=e.substring(c[4],o),f=Ve(i,t,n)??``;l+=`/`+u+f+d;continue}}return e.endsWith(`/`)&&(l+=`/`),{usedParams:a,interpolatedPath:l||`/`,isMissingParams:i}}function Ue(e,t){let n=encodeURIComponent(e);return t?.(n)??n}function We(e={}){if(e.isNotFound=!0,e.throw)throw e;return e}function Ge(e){return e?.isNotFound===!0}function Ke(e,t=String){let n=new URLSearchParams;for(let r in e){let i=e[r];i!==void 0&&n.set(r,t(i))}return n.toString()}function qe(e){return e?e===`false`?!1:e===`true`?!0:e*0==0&&+e+``===e?+e:e:``}function Je(e){let t=new URLSearchParams(e),n=Object.create(null);for(let[e,r]of t.entries()){let t=n[e];t==null?n[e]=qe(r):Array.isArray(t)?t.push(qe(r)):n[e]=[t,qe(r)]}return n}function Ye(e){if(e.statusCode=e.statusCode||e.code||307,!e._builtLocation&&!e.reloadDocument&&typeof e.href==`string`)try{new URL(e.href),e.reloadDocument=!0}catch{}let t=new Headers(e.headers);e.href&&t.get(`Location`)===null&&t.set(`Location`,e.href);let n=new Response(null,{status:e.statusCode,headers:t});if(n.options=e,e.throw)throw n;return n}function Xe(e){return e instanceof Response&&!!e.options}function Ze(e){if(typeof e==`object`&&e&&e.isSerializedRedirect)return Ye(e)}var Qe=`Error preloading route! ☝️`,$e=(e=>(e[e.AggregateError=1]=`AggregateError`,e[e.ArrowFunction=2]=`ArrowFunction`,e[e.ErrorPrototypeStack=4]=`ErrorPrototypeStack`,e[e.ObjectAssign=8]=`ObjectAssign`,e[e.BigIntTypedArray=16]=`BigIntTypedArray`,e[e.RegExp=32]=`RegExp`,e))($e||{}),I=Symbol.asyncIterator,et=Symbol.hasInstance,L=Symbol.isConcatSpreadable,R=Symbol.iterator,tt=Symbol.match,nt=Symbol.matchAll,rt=Symbol.replace,it=Symbol.search,at=Symbol.species,ot=Symbol.split,st=Symbol.toPrimitive,ct=Symbol.toStringTag,lt=Symbol.unscopables,ut={[I]:0,[et]:1,[L]:2,[R]:3,[tt]:4,[nt]:5,[rt]:6,[it]:7,[at]:8,[ot]:9,[st]:10,[ct]:11,[lt]:12},dt={0:I,1:et,2:L,3:R,4:tt,5:nt,6:rt,7:it,8:at,9:ot,10:st,11:ct,12:lt},z=void 0,ft={2:!0,3:!1,1:z,0:null,4:-0,5:1/0,6:-1/0,7:NaN},pt={0:`Error`,1:`EvalError`,2:`RangeError`,3:`ReferenceError`,4:`SyntaxError`,5:`TypeError`,6:`URIError`},mt={0:Error,1:EvalError,2:RangeError,3:ReferenceError,4:SyntaxError,5:TypeError,6:URIError};function B(e,t,n,r,i,a,o,s,c,l,u,d){return{t:e,i:t,s:n,c:r,m:i,p:a,e:o,a:s,f:c,b:l,o:u,l:d}}function V(e){return B(2,z,e,z,z,z,z,z,z,z,z,z)}var ht=V(2),gt=V(3),_t=V(1),vt=V(0),yt=V(4),bt=V(5),xt=V(6),St=V(7);function Ct(e){switch(e){case`"`:return`\\"`;case`\\`:return`\\\\`;case`
2
- `:return`\\n`;case`\r`:return`\\r`;case`\b`:return`\\b`;case` `:return`\\t`;case`\f`:return`\\f`;case`<`:return`\\x3C`;case`\u2028`:return`\\u2028`;case`\u2029`:return`\\u2029`;default:return z}}function H(e){let t=``,n=0,r;for(let i=0,a=e.length;i<a;i++)r=Ct(e[i]),r&&(t+=e.slice(n,i)+r,n=i+1);return n===0?t=e:t+=e.slice(n),t}function wt(e){switch(e){case`\\\\`:return`\\`;case`\\"`:return`"`;case`\\n`:return`
3
- `;case`\\r`:return`\r`;case`\\b`:return`\b`;case`\\t`:return` `;case`\\f`:return`\f`;case`\\x3C`:return`<`;case`\\u2028`:return`\u2028`;case`\\u2029`:return`\u2029`;default:return e}}function U(e){return e.replace(/(\\\\|\\"|\\n|\\r|\\b|\\t|\\f|\\u2028|\\u2029|\\x3C)/g,wt)}var Tt=`__SEROVAL_REFS__`,Et=new Map,Dt=new Map;function Ot(e){return Et.has(e)}function kt(e){return Dt.has(e)}function At(e){if(Ot(e))return Et.get(e);throw new vn(e)}function jt(e){if(kt(e))return Dt.get(e);throw new yn(e)}typeof globalThis<`u`?Object.defineProperty(globalThis,Tt,{value:Dt,configurable:!0,writable:!1,enumerable:!1}):typeof window<`u`?Object.defineProperty(window,Tt,{value:Dt,configurable:!0,writable:!1,enumerable:!1}):typeof self<`u`?Object.defineProperty(self,Tt,{value:Dt,configurable:!0,writable:!1,enumerable:!1}):typeof global<`u`&&Object.defineProperty(global,Tt,{value:Dt,configurable:!0,writable:!1,enumerable:!1});function Mt(e){return e instanceof EvalError?1:e instanceof RangeError?2:e instanceof ReferenceError?3:e instanceof SyntaxError?4:e instanceof TypeError?5:e instanceof URIError?6:0}function Nt(e){let t=pt[Mt(e)];return e.name===t?e.constructor.name===t?{}:{name:e.constructor.name}:{name:e.name}}function Pt(e,t){let n=Nt(e),r=Object.getOwnPropertyNames(e);for(let i=0,a=r.length,o;i<a;i++)o=r[i],o!==`name`&&o!==`message`&&(o===`stack`?t&4&&(n||={},n[o]=e[o]):(n||={},n[o]=e[o]));return n}function Ft(e){return Object.isFrozen(e)?3:Object.isSealed(e)?2:+!Object.isExtensible(e)}function It(e){switch(e){case 1/0:return bt;case-1/0:return xt}return e===e?Object.is(e,-0)?yt:B(0,z,e,z,z,z,z,z,z,z,z,z):St}function Lt(e){return B(1,z,H(e),z,z,z,z,z,z,z,z,z)}function Rt(e){return B(3,z,``+e,z,z,z,z,z,z,z,z,z)}function zt(e){return B(4,e,z,z,z,z,z,z,z,z,z,z)}function Bt(e,t){let n=t.valueOf();return B(5,e,n===n?t.toISOString():``,z,z,z,z,z,z,z,z,z)}function Vt(e,t){return B(6,e,z,H(t.source),t.flags,z,z,z,z,z,z,z)}function Ht(e,t){return B(17,e,ut[t],z,z,z,z,z,z,z,z,z)}function Ut(e,t){return B(18,e,H(At(t)),z,z,z,z,z,z,z,z,z)}function Wt(e,t,n){return B(25,e,n,H(t),z,z,z,z,z,z,z,z)}function Gt(e,t,n){return B(9,e,z,z,z,z,z,n,z,z,Ft(t),z)}function Kt(e,t){return B(21,e,z,z,z,z,z,z,t,z,z,z)}function qt(e,t,n){return B(15,e,z,t.constructor.name,z,z,z,z,n,t.byteOffset,z,t.length)}function Jt(e,t,n){return B(16,e,z,t.constructor.name,z,z,z,z,n,t.byteOffset,z,t.byteLength)}function Yt(e,t,n){return B(20,e,z,z,z,z,z,z,n,t.byteOffset,z,t.byteLength)}function Xt(e,t,n){return B(13,e,Mt(t),z,H(t.message),n,z,z,z,z,z,z)}function Zt(e,t,n){return B(14,e,Mt(t),z,H(t.message),n,z,z,z,z,z,z)}function Qt(e,t){return B(7,e,z,z,z,z,z,t,z,z,z,z)}function $t(e,t){return B(28,z,z,z,z,z,z,[e,t],z,z,z,z)}function en(e,t){return B(30,z,z,z,z,z,z,[e,t],z,z,z,z)}function tn(e,t,n){return B(31,e,z,z,z,z,z,n,t,z,z,z)}function nn(e,t){return B(32,e,z,z,z,z,z,z,t,z,z,z)}function rn(e,t){return B(33,e,z,z,z,z,z,z,t,z,z,z)}function an(e,t){return B(34,e,z,z,z,z,z,z,t,z,z,z)}function on(e,t,n,r){return B(35,e,n,z,z,z,z,t,z,z,z,r)}var{toString:sn}=Object.prototype,cn={parsing:1,serialization:2,deserialization:3};function ln(e){return`Seroval Error (step: ${cn[e]})`}var un=(e,t)=>ln(e),dn=class extends Error{constructor(e,t){super(un(e,t)),this.cause=t}},fn=class extends dn{constructor(e){super(`parsing`,e)}},pn=class extends dn{constructor(e){super(`deserialization`,e)}};function W(e){return`Seroval Error (specific: ${e})`}var mn=class extends Error{constructor(e){super(W(1)),this.value=e}},hn=class extends Error{constructor(e){super(W(2))}},gn=class extends Error{constructor(e){super(W(3))}},_n=class extends Error{constructor(e){super(W(4))}},vn=class extends Error{constructor(e){super(W(5)),this.value=e}},yn=class extends Error{constructor(e){super(W(6))}},bn=class extends Error{constructor(e){super(W(7))}},G=class extends Error{constructor(e){super(W(8))}},xn=class extends Error{constructor(e){super(W(9))}},Sn=class{constructor(e,t){this.value=e,this.replacement=t}},Cn=()=>{let e={p:0,s:0,f:0};return e.p=new Promise((t,n)=>{e.s=t,e.f=n}),e};Cn.toString(),((e,t)=>{e.s(t),e.p.s=1,e.p.v=t}).toString(),((e,t)=>{e.f(t),e.p.s=2,e.p.v=t}).toString();var wn=()=>{let e=[],t=[],n=!0,r=!1,i=0,a=(e,n,r)=>{for(r=0;r<i;r++)t[r]&&t[r][n](e)},o=(t,i,a,o)=>{for(i=0,a=e.length;i<a;i++)o=e[i],!n&&i===a-1?t[r?`return`:`throw`](o):t.next(o)},s=(e,r)=>(n&&(r=i++,t[r]=e),o(e),()=>{n&&(t[r]=t[i],t[i--]=void 0)});return{__SEROVAL_STREAM__:!0,on:e=>s(e),next:t=>{n&&(e.push(t),a(t,`next`))},throw:i=>{n&&(e.push(i),a(i,`throw`),n=!1,r=!1,t.length=0)},return:i=>{n&&(e.push(i),a(i,`return`),n=!1,r=!0,t.length=0)}}};wn.toString();var Tn=e=>t=>()=>{let n=0,r={[e]:()=>r,next:()=>{if(n>t.d)return{done:!0,value:void 0};let e=n++,r=t.v[e];if(e===t.t)throw r;return{done:e===t.d,value:r}}};return r};Tn.toString();var En=(e,t)=>n=>()=>{let r=0,i=-1,a=!1,o=[],s=[],c=(e=0,t=s.length)=>{for(;e<t;e++)s[e].s({done:!0,value:void 0})};n.on({next:e=>{let t=s.shift();t&&t.s({done:!1,value:e}),o.push(e)},throw:e=>{let t=s.shift();t&&t.f(e),c(),i=o.length,a=!0,o.push(e)},return:e=>{let t=s.shift();t&&t.s({done:!0,value:e}),c(),i=o.length,o.push(e)}});let l={[e]:()=>l,next:()=>{if(i===-1){let e=r++;if(e>=o.length){let e=t();return s.push(e),e.p}return{done:!1,value:o[e]}}if(r>i)return{done:!0,value:void 0};let e=r++,n=o[e];if(e!==i)return{done:!1,value:n};if(a)throw n;return{done:!0,value:n}}};return l};En.toString();var Dn=e=>{let t=atob(e),n=t.length,r=new Uint8Array(n);for(let e=0;e<n;e++)r[e]=t.charCodeAt(e);return r.buffer};Dn.toString();function On(e){return`__SEROVAL_SEQUENCE__`in e}function kn(e,t,n){return{__SEROVAL_SEQUENCE__:!0,v:e,t,d:n}}function An(e){let t=[],n=-1,r=-1,i=e[R]();for(;;)try{let e=i.next();if(t.push(e.value),e.done){r=t.length-1;break}}catch(e){n=t.length,t.push(e)}return kn(t,n,r)}var jn=Tn(R);function Mn(e){return jn(e)}var Nn={},Pn={},Fn={0:{},1:{},2:{},3:{},4:{},5:{}};function In(e){return`__SEROVAL_STREAM__`in e}function K(){return wn()}function Ln(e){let t=K(),n=e[I]();async function r(){try{let e=await n.next();e.done?t.return(e.value):(t.next(e.value),await r())}catch(e){t.throw(e)}}return r().catch(()=>{}),t}var Rn=En(I,Cn);function zn(e){return Rn(e)}async function Bn(e){try{return[1,await e]}catch(e){return[0,e]}}function Vn(e,t){return{plugins:t.plugins,mode:e,marked:new Set,features:63^(t.disabledFeatures||0),refs:t.refs||new Map,depthLimit:t.depthLimit||1e3}}function Hn(e,t){e.marked.add(t)}function Un(e,t){let n=e.refs.size;return e.refs.set(t,n),n}function Wn(e,t){let n=e.refs.get(t);return n==null?{type:0,value:Un(e,t)}:(Hn(e,n),{type:1,value:zt(n)})}function Gn(e,t){let n=Wn(e,t);return n.type===1?n:Ot(t)?{type:2,value:Ut(n.value,t)}:n}function q(e,t){let n=Gn(e,t);if(n.type!==0)return n.value;if(t in ut)return Ht(n.value,t);throw new mn(t)}function Kn(e,t){let n=Wn(e,Fn[t]);return n.type===1?n.value:B(26,n.value,t,z,z,z,z,z,z,z,z,z)}function qn(e){let t=Wn(e,Nn);return t.type===1?t.value:B(27,t.value,z,z,z,z,z,z,q(e,R),z,z,z)}function Jn(e){let t=Wn(e,Pn);return t.type===1?t.value:B(29,t.value,z,z,z,z,z,[Kn(e,1),q(e,I)],z,z,z,z)}function Yn(e,t,n,r){return B(n?11:10,e,z,z,z,r,z,z,z,z,Ft(t),z)}function Xn(e,t,n,r){return B(8,t,z,z,z,z,{k:n,v:r},z,Kn(e,0),z,z,z)}function Zn(e,t,n){let r=new Uint8Array(n),i=``;for(let e=0,t=r.length;e<t;e++)i+=String.fromCharCode(r[e]);return B(19,t,H(btoa(i)),z,z,z,z,z,Kn(e,5),z,z,z)}function Qn(e,t){return{base:Vn(e,t),child:void 0}}var $n=class{constructor(e,t){this._p=e,this.depth=t}parse(e){return J(this._p,this.depth,e)}};async function er(e,t,n){let r=[];for(let i=0,a=n.length;i<a;i++)i in n?r[i]=await J(e,t,n[i]):r[i]=0;return r}async function tr(e,t,n,r){return Gt(n,r,await er(e,t,r))}async function nr(e,t,n){let r=Object.entries(n),i=[],a=[];for(let n=0,o=r.length;n<o;n++)i.push(H(r[n][0])),a.push(await J(e,t,r[n][1]));return R in n&&(i.push(q(e.base,R)),a.push($t(qn(e.base),await J(e,t,An(n))))),I in n&&(i.push(q(e.base,I)),a.push(en(Jn(e.base),await J(e,t,Ln(n))))),ct in n&&(i.push(q(e.base,ct)),a.push(Lt(n[ct]))),L in n&&(i.push(q(e.base,L)),a.push(n[L]?ht:gt)),{k:i,v:a}}async function rr(e,t,n,r,i){return Yn(n,r,i,await nr(e,t,r))}async function ir(e,t,n,r){return Kt(n,await J(e,t,r.valueOf()))}async function ar(e,t,n,r){return qt(n,r,await J(e,t,r.buffer))}async function or(e,t,n,r){return Jt(n,r,await J(e,t,r.buffer))}async function sr(e,t,n,r){return Yt(n,r,await J(e,t,r.buffer))}async function cr(e,t,n,r){let i=Pt(r,e.base.features);return Xt(n,r,i?await nr(e,t,i):z)}async function lr(e,t,n,r){let i=Pt(r,e.base.features);return Zt(n,r,i?await nr(e,t,i):z)}async function ur(e,t,n,r){let i=[],a=[];for(let[n,o]of r.entries())i.push(await J(e,t,n)),a.push(await J(e,t,o));return Xn(e.base,n,i,a)}async function dr(e,t,n,r){let i=[];for(let n of r.keys())i.push(await J(e,t,n));return Qt(n,i)}async function fr(e,t,n,r){let i=e.base.plugins;if(i)for(let a=0,o=i.length;a<o;a++){let o=i[a];if(o.parse.async&&o.test(r))return Wt(n,o.tag,await o.parse.async(r,new $n(e,t),{id:n}))}return z}async function pr(e,t,n,r){let[i,a]=await Bn(r);return B(12,n,i,z,z,z,z,z,await J(e,t,a),z,z,z)}function mr(e,t,n,r,i){let a=[],o=n.on({next:n=>{Hn(this.base,t),J(this,e,n).then(e=>{a.push(nn(t,e))},e=>{i(e),o()})},throw:n=>{Hn(this.base,t),J(this,e,n).then(e=>{a.push(rn(t,e)),r(a),o()},e=>{i(e),o()})},return:n=>{Hn(this.base,t),J(this,e,n).then(e=>{a.push(an(t,e)),r(a),o()},e=>{i(e),o()})}})}async function hr(e,t,n,r){return tn(n,Kn(e.base,4),await new Promise(mr.bind(e,t,n,r)))}async function gr(e,t,n,r){let i=[];for(let n=0,a=r.v.length;n<a;n++)i[n]=await J(e,t,r.v[n]);return on(n,i,r.t,r.d)}async function _r(e,t,n,r){if(Array.isArray(r))return tr(e,t,n,r);if(In(r))return hr(e,t,n,r);if(On(r))return gr(e,t,n,r);let i=r.constructor;if(i===Sn)return J(e,t,r.replacement);let a=await fr(e,t,n,r);if(a)return a;switch(i){case Object:return rr(e,t,n,r,!1);case z:return rr(e,t,n,r,!0);case Date:return Bt(n,r);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return cr(e,t,n,r);case Number:case Boolean:case String:case BigInt:return ir(e,t,n,r);case ArrayBuffer:return Zn(e.base,n,r);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return ar(e,t,n,r);case DataView:return sr(e,t,n,r);case Map:return ur(e,t,n,r);case Set:return dr(e,t,n,r);default:break}if(i===Promise||r instanceof Promise)return pr(e,t,n,r);let o=e.base.features;if(o&32&&i===RegExp)return Vt(n,r);if(o&16)switch(i){case BigInt64Array:case BigUint64Array:return or(e,t,n,r);default:break}if(o&1&&typeof AggregateError<`u`&&(i===AggregateError||r instanceof AggregateError))return lr(e,t,n,r);if(r instanceof Error)return cr(e,t,n,r);if(R in r||I in r)return rr(e,t,n,r,!!i);throw new mn(r)}async function vr(e,t,n){let r=Gn(e.base,n);if(r.type!==0)return r.value;let i=await fr(e,t,r.value,n);if(i)return i;throw new mn(n)}async function J(e,t,n){switch(typeof n){case`boolean`:return n?ht:gt;case`undefined`:return _t;case`string`:return Lt(n);case`number`:return It(n);case`bigint`:return Rt(n);case`object`:if(n){let r=Gn(e.base,n);return r.type===0?await _r(e,t+1,r.value,n):r.value}return vt;case`symbol`:return q(e.base,n);case`function`:return vr(e,t,n);default:throw new mn(n)}}async function yr(e,t){try{return await J(e,0,t)}catch(e){throw e instanceof fn?e:new fn(e)}}var br=(e=>(e[e.Vanilla=1]=`Vanilla`,e[e.Cross=2]=`Cross`,e))(br||{});function Y(e){return e}function xr(e,t){for(let n=0,r=t.length;n<r;n++){let r=t[n];e.has(r)||(e.add(r),r.extends&&xr(e,r.extends))}}function Sr(e){if(e){let t=new Set;return xr(t,e),[...t]}}function Cr(e){switch(e){case`Int8Array`:return Int8Array;case`Int16Array`:return Int16Array;case`Int32Array`:return Int32Array;case`Uint8Array`:return Uint8Array;case`Uint16Array`:return Uint16Array;case`Uint32Array`:return Uint32Array;case`Uint8ClampedArray`:return Uint8ClampedArray;case`Float32Array`:return Float32Array;case`Float64Array`:return Float64Array;case`BigInt64Array`:return BigInt64Array;case`BigUint64Array`:return BigUint64Array;default:throw new bn(e)}}var wr=1e6,Tr=1e4,Er=2e4;function Dr(e,t){switch(t){case 3:return Object.freeze(e);case 1:return Object.preventExtensions(e);case 2:return Object.seal(e);default:return e}}var Or=1e3;function kr(e,t){let n=t.refs||new Map;return`types`in n||Object.assign(n,{types:new Map}),{mode:e,plugins:t.plugins,refs:n,features:t.features??63^(t.disabledFeatures||0),depthLimit:t.depthLimit||Or}}function Ar(e){return{mode:2,base:kr(2,e),child:z}}var jr=class{constructor(e,t){this._p=e,this.depth=t}deserialize(e){return Z(this._p,this.depth,e)}};function Mr(e,t){if(t<0||!Number.isFinite(t)||!Number.isInteger(t))throw new G({t:4,i:t});if(e.refs.has(t))throw Error(`Conflicted ref id: `+t)}function Nr(e,t,n){return Mr(e.base,t),e.state.marked.has(t)&&e.base.refs.set(t,n),n}function Pr(e,t,n){return Mr(e.base,t),e.base.refs.set(t,n),n}function X(e,t,n){return e.mode===1?Nr(e,t,n):Pr(e,t,n)}function Fr(e,t,n){if(Object.hasOwn(t,n))return t[n];throw new G(e)}function Ir(e,t){return X(e,t.i,jt(U(t.s)))}function Lr(e,t,n){let r=n.a,i=r.length,a=X(e,n.i,Array(i));for(let n=0,o;n<i;n++)o=r[n],o&&(a[n]=Z(e,t,o));return Dr(a,n.o),a}function Rr(e){switch(e){case`constructor`:case`__proto__`:case`prototype`:case`__defineGetter__`:case`__defineSetter__`:case`__lookupGetter__`:case`__lookupSetter__`:return!1;default:return!0}}function zr(e){switch(e){case I:case L:case ct:case R:return!0;default:return!1}}function Br(e,t,n){Rr(t)?e[t]=n:Object.defineProperty(e,t,{value:n,configurable:!0,enumerable:!0,writable:!0})}function Vr(e,t,n,r,i){if(typeof r==`string`)Br(n,U(r),Z(e,t,i));else{let a=Z(e,t,r);switch(typeof a){case`string`:Br(n,a,Z(e,t,i));break;case`symbol`:zr(a)&&(n[a]=Z(e,t,i));break;default:throw new G(r)}}}function Hr(e,t,n){e.base.refs.types.set(t,n)}function Ur(e,t,n,r){if(e.base.refs.types.get(n)!==r)throw new G(t)}function Wr(e,t,n,r){let i=n.k;if(i.length>0)for(let a=0,o=n.v,s=i.length;a<s;a++)Vr(e,t,r,i[a],o[a]);return r}function Gr(e,t,n){let r=X(e,n.i,n.t===10?{}:Object.create(null));return Wr(e,t,n.p,r),Dr(r,n.o),r}function Kr(e,t){return X(e,t.i,new Date(t.s))}function qr(e,t){if(e.base.features&32){let n=U(t.c);if(n.length>Er)throw new G(t);return X(e,t.i,new RegExp(n,t.m))}throw new hn(t)}function Jr(e,t,n){let r=X(e,n.i,new Set);for(let i=0,a=n.a,o=a.length;i<o;i++)r.add(Z(e,t,a[i]));return r}function Yr(e,t,n){let r=X(e,n.i,new Map);for(let i=0,a=n.e.k,o=n.e.v,s=a.length;i<s;i++)r.set(Z(e,t,a[i]),Z(e,t,o[i]));return r}function Xr(e,t){if(t.s.length>wr)throw new G(t);return X(e,t.i,Dn(U(t.s)))}function Zr(e,t,n){let r=Cr(n.c),i=Z(e,t,n.f),a=n.b??0;if(a<0||a>i.byteLength)throw new G(n);return X(e,n.i,new r(i,a,n.l))}function Qr(e,t,n){let r=Z(e,t,n.f),i=n.b??0;if(i<0||i>r.byteLength)throw new G(n);return X(e,n.i,new DataView(r,i,n.l))}function $r(e,t,n,r){if(n.p){let i=Wr(e,t,n.p,{});Object.defineProperties(r,Object.getOwnPropertyDescriptors(i))}return r}function ei(e,t,n){return $r(e,t,n,X(e,n.i,AggregateError([],U(n.m))))}function ti(e,t,n){let r=Fr(n,mt,n.s);return $r(e,t,n,X(e,n.i,new r(U(n.m))))}function ni(e,t,n){let r=Cn(),i=X(e,n.i,r.p),a=Z(e,t,n.f);return n.s?r.s(a):r.f(a),i}function ri(e,t,n){return X(e,n.i,Object(Z(e,t,n.f)))}function ii(e,t,n){let r=e.base.plugins;if(r){let i=U(n.c);for(let a=0,o=r.length;a<o;a++){let o=r[a];if(o.tag===i)return X(e,n.i,o.deserialize(n.s,new jr(e,t),{id:n.i}))}}throw new gn(n.c)}function ai(e,t){let n=X(e,t.i,X(e,t.s,Cn()).p);return Hr(e,t.s,22),n}function oi(e,t,n){let r=e.base.refs.get(n.i);if(r)return Ur(e,n,n.i,22),r.s(Z(e,t,n.a[1])),z;throw new _n(`Promise`)}function si(e,t,n){let r=e.base.refs.get(n.i);if(r)return Ur(e,n,n.i,22),r.f(Z(e,t,n.a[1])),z;throw new _n(`Promise`)}function ci(e,t,n){return Z(e,t,n.a[0]),Mn(Z(e,t,n.a[1]))}function li(e,t,n){return Z(e,t,n.a[0]),zn(Z(e,t,n.a[1]))}function ui(e,t,n){let r=X(e,n.i,K());Hr(e,n.i,31);let i=n.a,a=i.length;if(a)for(let n=0;n<a;n++)Z(e,t,i[n]);return r}function di(e,t,n){let r=e.base.refs.get(n.i);if(r)return Ur(e,n,n.i,31),r.next(Z(e,t,n.f)),z;throw new _n(`Stream`)}function fi(e,t,n){let r=e.base.refs.get(n.i);if(r)return Ur(e,n,n.i,31),r.throw(Z(e,t,n.f)),z;throw new _n(`Stream`)}function pi(e,t,n){let r=e.base.refs.get(n.i);if(r)return Ur(e,n,n.i,31),r.return(Z(e,t,n.f)),z;throw new _n(`Stream`)}function mi(e,t,n){return Z(e,t,n.f),z}function hi(e,t,n){return Z(e,t,n.a[1]),z}function gi(e,t,n){let r=X(e,n.i,kn([],n.s,n.l));for(let i=0,a=n.a.length;i<a;i++)r.v[i]=Z(e,t,n.a[i]);return r}function Z(e,t,n){if(t>e.base.depthLimit)throw new xn(e.base.depthLimit);switch(t+=1,n.t){case 2:return Fr(n,ft,n.s);case 0:return Number(n.s);case 1:return U(String(n.s));case 3:if(String(n.s).length>Tr)throw new G(n);return BigInt(n.s);case 4:return e.base.refs.get(n.i);case 18:return Ir(e,n);case 9:return Lr(e,t,n);case 10:case 11:return Gr(e,t,n);case 5:return Kr(e,n);case 6:return qr(e,n);case 7:return Jr(e,t,n);case 8:return Yr(e,t,n);case 19:return Xr(e,n);case 16:case 15:return Zr(e,t,n);case 20:return Qr(e,t,n);case 14:return ei(e,t,n);case 13:return ti(e,t,n);case 12:return ni(e,t,n);case 17:return Fr(n,dt,n.s);case 21:return ri(e,t,n);case 25:return ii(e,t,n);case 22:return ai(e,n);case 23:return oi(e,t,n);case 24:return si(e,t,n);case 28:return ci(e,t,n);case 30:return li(e,t,n);case 31:return ui(e,t,n);case 32:return di(e,t,n);case 33:return fi(e,t,n);case 34:return pi(e,t,n);case 27:return mi(e,t,n);case 29:return hi(e,t,n);case 35:return gi(e,t,n);default:throw new hn(n)}}function _i(e,t){try{return Z(e,0,t)}catch(e){throw new pn(e)}}var vi=(()=>T).toString();/=>/.test(vi);function yi(e,t){return _i(Ar({plugins:Sr(t.plugins),refs:t.refs,features:t.features,disabledFeatures:t.disabledFeatures,depthLimit:t.depthLimit}),e)}async function bi(e,t={}){let n=Qn(1,{plugins:Sr(t.plugins),disabledFeatures:t.disabledFeatures});return{t:await yr(n,e),f:n.base.features,m:Array.from(n.base.marked)}}function xi(e){return e}function Si(e){return Y({tag:`$TSR/t/`+e.key,test:e.test,parse:{sync(t,n,r){return{v:n.parse(e.toSerializable(t))}},async async(t,n,r){return{v:await n.parse(e.toSerializable(t))}},stream(t,n,r){return{v:n.parse(e.toSerializable(t))}}},serialize:void 0,deserialize(t,n,r){return e.fromSerializable(n.deserialize(t.v))}})}var Ci=class{constructor(e,t){this.stream=e,this.hint=t?.hint??`binary`}},wi=globalThis.Buffer,Ti=!!wi&&typeof wi.from==`function`;function Ei(e){if(e.length===0)return``;if(Ti)return wi.from(e).toString(`base64`);let t=32768,n=[];for(let r=0;r<e.length;r+=t){let i=e.subarray(r,r+t);n.push(String.fromCharCode.apply(null,i))}return btoa(n.join(``))}function Di(e){if(e.length===0)return new Uint8Array;if(Ti){let t=wi.from(e,`base64`);return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}var Oi=Object.create(null),ki=Object.create(null),Ai=e=>new ReadableStream({start(t){e.on({next(e){try{t.enqueue(Di(e))}catch{}},throw(e){t.error(e)},return(){try{t.close()}catch{}}})}}),ji=new TextEncoder,Mi=e=>new ReadableStream({start(t){e.on({next(e){try{typeof e==`string`?t.enqueue(ji.encode(e)):t.enqueue(Di(e.$b64))}catch{}},throw(e){t.error(e)},return(){try{t.close()}catch{}}})}}),Ni=`(s=>new ReadableStream({start(c){s.on({next(b){try{const d=atob(b),a=new Uint8Array(d.length);for(let i=0;i<d.length;i++)a[i]=d.charCodeAt(i);c.enqueue(a)}catch(_){}},throw(e){c.error(e)},return(){try{c.close()}catch(_){}}})}}))`,Pi=`(s=>{const e=new TextEncoder();return new ReadableStream({start(c){s.on({next(v){try{if(typeof v==='string'){c.enqueue(e.encode(v))}else{const d=atob(v.$b64),a=new Uint8Array(d.length);for(let i=0;i<d.length;i++)a[i]=d.charCodeAt(i);c.enqueue(a)}}catch(_){}},throw(x){c.error(x)},return(){try{c.close()}catch(_){}}})}})})`;function Fi(e){let t=K(),n=e.getReader();return(async()=>{try{for(;;){let{done:e,value:r}=await n.read();if(e){t.return(void 0);break}t.next(Ei(r))}}catch(e){t.throw(e)}finally{n.releaseLock()}})(),t}function Ii(e){let t=K(),n=e.getReader(),r=new TextDecoder(`utf-8`,{fatal:!0});return(async()=>{try{for(;;){let{done:e,value:i}=await n.read();if(e){try{let e=r.decode();e.length>0&&t.next(e)}catch{}t.return(void 0);break}try{let e=r.decode(i,{stream:!0});e.length>0&&t.next(e)}catch{t.next({$b64:Ei(i)})}}}catch(e){t.throw(e)}finally{n.releaseLock()}})(),t}var Li=Y({tag:`tss/RawStream`,extends:[Y({tag:`tss/RawStreamFactory`,test(e){return e===Oi},parse:{sync(e,t,n){return{}},async async(e,t,n){return{}},stream(e,t,n){return{}}},serialize(e,t,n){return Ni},deserialize(e,t,n){return Oi}}),Y({tag:`tss/RawStreamFactoryText`,test(e){return e===ki},parse:{sync(e,t,n){return{}},async async(e,t,n){return{}},stream(e,t,n){return{}}},serialize(e,t,n){return Pi},deserialize(e,t,n){return ki}})],test(e){return e instanceof Ci},parse:{sync(e,t,n){let r=e.hint===`text`?ki:Oi;return{hint:t.parse(e.hint),factory:t.parse(r),stream:t.parse(K())}},async async(e,t,n){let r=e.hint===`text`?ki:Oi,i=e.hint===`text`?Ii(e.stream):Fi(e.stream);return{hint:await t.parse(e.hint),factory:await t.parse(r),stream:await t.parse(i)}},stream(e,t,n){let r=e.hint===`text`?ki:Oi,i=e.hint===`text`?Ii(e.stream):Fi(e.stream);return{hint:t.parse(e.hint),factory:t.parse(r),stream:t.parse(i)}}},serialize(e,t,n){return`(`+t.serialize(e.factory)+`)(`+t.serialize(e.stream)+`)`},deserialize(e,t,n){let r=t.deserialize(e.stream);return t.deserialize(e.hint)===`text`?Mi(r):Ai(r)}});function Ri(e){return Y({tag:`tss/RawStream`,test:()=>!1,parse:{},serialize(){throw Error(`RawStreamDeserializePlugin.serialize should not be called. Client only deserializes.`)},deserialize(t,n,r){return e(typeof n?.deserialize==`function`?n.deserialize(t.streamId):t.streamId)}})}var zi=Y({tag:`$TSR/Error`,test(e){return e instanceof Error},parse:{sync(e,t){return{message:t.parse(e.message)}},async async(e,t){return{message:await t.parse(e.message)}},stream(e,t){return{message:t.parse(e.message)}}},serialize(e,t){return`new Error(`+t.serialize(e.message)+`)`},deserialize(e,t){return Error(t.deserialize(e.message))}}),Q={},Bi=e=>new ReadableStream({start:t=>{e.on({next:e=>{try{t.enqueue(e)}catch{}},throw:e=>{t.error(e)},return:()=>{try{t.close()}catch{}}})}}),Vi=Y({tag:`seroval-plugins/web/ReadableStreamFactory`,test(e){return e===Q},parse:{sync(){return Q},async async(){return await Promise.resolve(Q)},stream(){return Q}},serialize(){return Bi.toString()},deserialize(){return Q}});function Hi(e){let t=K(),n=e.getReader();async function r(){try{let e=await n.read();e.done?t.return(e.value):(t.next(e.value),await r())}catch(e){t.throw(e)}}return r().catch(()=>{}),t}var Ui=[zi,Li,Y({tag:`seroval/plugins/web/ReadableStream`,extends:[Vi],test(e){return typeof ReadableStream>`u`?!1:e instanceof ReadableStream},parse:{sync(e,t){return{factory:t.parse(Q),stream:t.parse(K())}},async async(e,t){return{factory:await t.parse(Q),stream:await t.parse(Hi(e))}},stream(e,t){return{factory:t.parse(Q),stream:t.parse(Hi(e))}}},serialize(e,t){return`(`+t.serialize(e.factory)+`)(`+t.serialize(e.stream)+`)`},deserialize(e,t){return Bi(t.deserialize(e.stream))}})];function Wi(){return[...(p()?.serializationAdapters)?.map(Si)??[],...Ui]}var Gi=new TextDecoder,Ki=new Uint8Array,qi=16*1024*1024,Ji=32*1024*1024,Yi=1024,Xi=1e5;function Zi(e){let t=new Map,n=new Map,r=new Set,i=!1,a=null,o=0,s,c=new ReadableStream({start(e){s=e},cancel(){i=!0;try{a?.cancel()}catch{}t.forEach(e=>{try{e.error(Error(`Framed response cancelled`))}catch{}}),t.clear(),n.clear(),r.clear()}});function u(e){let i=n.get(e);if(i)return i;if(r.has(e))return new ReadableStream({start(e){e.close()}});if(n.size>=Yi)throw Error(`Too many raw streams in framed response (max ${Yi})`);let a=new ReadableStream({start(n){t.set(e,n)},cancel(){r.add(e),t.delete(e),n.delete(e)}});return n.set(e,a),a}function d(e){return u(e),t.get(e)}return(async()=>{let n=e.getReader();a=n;let c=[],u=0;function f(){if(u<9)return null;let e=c[0];if(e.length>=9)return{type:e[0],streamId:(e[1]<<24|e[2]<<16|e[3]<<8|e[4])>>>0,length:(e[5]<<24|e[6]<<16|e[7]<<8|e[8])>>>0};let t=new Uint8Array(9),n=0,r=9;for(let e=0;e<c.length&&r>0;e++){let i=c[e],a=Math.min(i.length,r);t.set(i.subarray(0,a),n),n+=a,r-=a}return{type:t[0],streamId:(t[1]<<24|t[2]<<16|t[3]<<8|t[4])>>>0,length:(t[5]<<24|t[6]<<16|t[7]<<8|t[8])>>>0}}function p(e){if(e===0)return Ki;let t=new Uint8Array(e),n=0,r=e;for(;r>0&&c.length>0;){let e=c[0];if(!e)break;let i=Math.min(e.length,r);t.set(e.subarray(0,i),n),n+=i,r-=i,i===e.length?c.shift():c[0]=e.subarray(i)}return u-=e,t}try{for(;;){let{done:e,value:a}=await n.read();if(i||e)break;if(a){if(u+a.length>Ji)throw Error(`Framed response buffer exceeded ${Ji} bytes`);for(c.push(a),u+=a.length;;){let e=f();if(!e)break;let{type:n,streamId:i,length:a}=e;if(n!==l.JSON&&n!==l.CHUNK&&n!==l.END&&n!==l.ERROR)throw Error(`Unknown frame type: ${n}`);if(n===l.JSON){if(i!==0)throw Error(`Invalid JSON frame streamId (expected 0)`)}else if(i===0)throw Error(`Invalid raw frame streamId (expected non-zero)`);if(a>qi)throw Error(`Frame payload too large: ${a} bytes (max ${qi})`);let c=9+a;if(u<c)break;if(++o>Xi)throw Error(`Too many frames in framed response (max ${Xi})`);p(9);let m=p(a);switch(n){case l.JSON:try{s.enqueue(Gi.decode(m))}catch{}break;case l.CHUNK:{let e=d(i);e&&e.enqueue(m);break}case l.END:{let e=d(i);if(r.add(i),e){try{e.close()}catch{}t.delete(i)}break}case l.ERROR:{let e=d(i);if(r.add(i),e){let n=Gi.decode(m);e.error(Error(n)),t.delete(i)}break}}}}}if(u!==0)throw Error(`Incomplete frame at end of framed response`);try{s.close()}catch{}t.forEach(e=>{try{e.close()}catch{}}),t.clear()}catch(e){try{s.error(e)}catch{}t.forEach(t=>{try{t.error(e)}catch{}}),t.clear()}finally{try{n.releaseLock()}catch{}a=null}})(),{getOrCreateStream:u,jsonChunks:c}}var Qi=null;async function $i(e){e.length>0&&await Promise.allSettled(e)}var ea=Object.prototype.hasOwnProperty;function ta(e){for(let t in e)if(ea.call(e,t))return!0;return!1}async function na(e,t,n){Qi||=Wi();let r=t[0],i=r.fetch??n,a=r.data instanceof FormData?`formData`:`payload`,o=r.headers?new Headers(r.headers):new Headers;if(o.set(`x-tsr-serverFn`,`true`),a===`payload`&&o.set(`accept`,`${c}, application/x-ndjson, application/json`),r.method===`GET`){if(a===`formData`)throw Error(`FormData is not supported with GET requests`);let t=await ra(r);if(t!==void 0){let n=Ke({payload:t});e.includes(`?`)?e+=`&${n}`:e+=`?${n}`}}let s;if(r.method===`POST`){let e=await aa(r);e?.contentType&&o.set(`content-type`,e.contentType),s=e?.body}return await oa(async()=>i(e,{method:r.method,headers:o,signal:r.signal,body:s}))}async function ra(e){let t=!1,n={};if(e.data!==void 0&&(t=!0,n.data=e.data),e.context&&ta(e.context)&&(t=!0,n.context=e.context),t)return ia(n)}async function ia(e){return JSON.stringify(await Promise.resolve(bi(e,{plugins:Qi})))}async function aa(e){if(e.data instanceof FormData){let t;return e.context&&ta(e.context)&&(t=await ia(e.context)),t!==void 0&&e.data.set(a,t),{body:e.data}}let t=await ra(e);if(t)return{body:t,contentType:`application/json`}}async function oa(e){let t;try{t=await e()}catch(e){if(e instanceof Response)t=e;else throw console.log(e),e}if(t.headers.get(`x-tss-raw`)===`true`)return t;let n=t.headers.get(`content-type`);if(n||C(),t.headers.get(`x-tss-serialized`)){let e;if(n.includes(`application/x-tss-framed`)){if(f(n),!t.body)throw Error(`No response body for framed response`);let{getOrCreateStream:r,jsonChunks:i}=Zi(t.body),a=[Ri(r),...Qi||[]],o=new Map;e=await sa({jsonStream:i,onMessage:e=>yi(e,{refs:o,plugins:a}),onError(e,t){console.error(e,t)}})}else if(n.includes(`application/json`)){let n=await t.json(),r=[];try{e=yi(n,{plugins:Qi})}finally{}await $i(r)}if(e||C(),e instanceof Error)throw e;return e}if(n.includes(`application/json`)){let e=await t.json(),n=Ze(e);if(n)throw n;if(Ge(e))throw e;return e}if(!t.ok)throw Error(await t.text());return t}async function sa({jsonStream:e,onMessage:t,onError:n}){let r=e.getReader(),{value:i,done:a}=await r.read();if(a||!i)throw Error(`Stream ended before first object`);let o=JSON.parse(i),s=!1,c=(async()=>{try{for(;;){let{value:e,done:i}=await r.read();if(i)break;if(e)try{let n=[];try{t(JSON.parse(e))}finally{}await $i(n)}catch(t){n?.(`Invalid JSON: ${e}`,t)}}}catch(e){s||n?.(`Stream processing error:`,e)}})(),l,u=[];try{l=t(o)}catch(e){throw s=!0,r.cancel().catch(()=>{}),e}return await $i(u),Promise.resolve(l).catch(()=>{s=!0,r.cancel().catch(()=>{})}),c.finally(()=>{try{r.releaseLock()}catch{}}),l}function ca(e){let t=`/_serverFn/`+e;return Object.assign((...e)=>{let n=p()?.serverFns?.fetch;return na(t,e,n??fetch)},{url:t,serverFnMeta:{id:e},[o]:!0})}function la(e){if(Array.isArray(e))return e.flatMap(e=>la(e));if(typeof e!=`string`)return[];let t=[],n=0,r,i,a,o,s,c=()=>{for(;n<e.length&&/\s/.test(e.charAt(n));)n+=1;return n<e.length},l=()=>(i=e.charAt(n),i!==`=`&&i!==`;`&&i!==`,`);for(;n<e.length;){for(r=n,s=!1;c();)if(i=e.charAt(n),i===`,`){for(a=n,n+=1,c(),o=n;n<e.length&&l();)n+=1;n<e.length&&e.charAt(n)===`=`?(s=!0,n=o,t.push(e.slice(r,a)),r=n):n=a+1}else n+=1;(!s||n>=e.length)&&t.push(e.slice(r))}return t}function ua(e){return e instanceof Headers?e:Array.isArray(e)||typeof e==`object`?new Headers(e):null}function da(...e){return e.reduce((e,t)=>{let n=ua(t);if(!n)return e;for(let[t,r]of n.entries())t===`set-cookie`?la(r).forEach(t=>e.append(`set-cookie`,t)):e.set(t,r);return e},new Headers)}var $=t(r(),1),fa=$.use,pa=typeof window<`u`?$.useLayoutEffect:$.useEffect;function ma(e){let t=$.useRef({value:e,prev:null}),n=t.current.value;return e!==n&&(t.current={value:e,prev:n}),t.current.prev}function ha(e,t,n={},r={}){$.useEffect(()=>{if(!e.current||r.disabled||typeof IntersectionObserver!=`function`)return;let i=new IntersectionObserver(([e])=>{t(e)},n);return i.observe(e.current),()=>{i.disconnect()}},[t,n,r.disabled,e])}function ga(e){let t=$.useRef(null);return $.useImperativeHandle(e,()=>t.current,[]),t}var _a=n();function va({children:e,fallback:t=null}){return ya()?(0,_a.jsx)($.Fragment,{children:e}):(0,_a.jsx)($.Fragment,{children:t})}function ya(){return $.useSyncExternalStore(ba,()=>!0,()=>!1)}function ba(){return()=>{}}var xa=$.createContext(null);function Sa(e){return $.useContext(xa)}var Ca=e((e=>{var t=r();function n(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var i=typeof Object.is==`function`?Object.is:n,a=t.useState,o=t.useEffect,s=t.useLayoutEffect,c=t.useDebugValue;function l(e,t){var n=t(),r=a({inst:{value:n,getSnapshot:t}}),i=r[0].inst,l=r[1];return s(function(){i.value=n,i.getSnapshot=t,u(i)&&l({inst:i})},[e,n,t]),o(function(){return u(i)&&l({inst:i}),e(function(){u(i)&&l({inst:i})})},[e]),c(n),n}function u(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!i(e,n)}catch{return!0}}function d(e,t){return t()}var f=typeof window>`u`||window.document===void 0||window.document.createElement===void 0?d:l;e.useSyncExternalStore=t.useSyncExternalStore===void 0?f:t.useSyncExternalStore})),wa=e(((e,t)=>{t.exports=Ca()})),Ta=e((e=>{var t=r(),n=wa();function i(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var a=typeof Object.is==`function`?Object.is:i,o=n.useSyncExternalStore,s=t.useRef,c=t.useEffect,l=t.useMemo,u=t.useDebugValue;e.useSyncExternalStoreWithSelector=function(e,t,n,r,i){var d=s(null);if(d.current===null){var f={hasValue:!1,value:null};d.current=f}else f=d.current;d=l(function(){function e(e){if(!o){if(o=!0,s=e,e=r(e),i!==void 0&&f.hasValue){var t=f.value;if(i(t,e))return c=t}return c=e}if(t=c,a(s,e))return t;var n=r(e);return i!==void 0&&i(t,n)?(s=e,t):(s=e,c=n)}var o=!1,s,c,l=n===void 0?null:n;return[function(){return e(t())},l===null?void 0:function(){return e(l())}]},[t,n,r,i]);var p=o(e,d[0],d[1]);return c(function(){f.hasValue=!0,f.value=p},[p]),u(p),p}})),Ea=e(((e,t)=>{t.exports=Ta()}))();function Da(e,t){return e===t}function Oa(e,t,n=Da){let r=(0,$.useCallback)(t=>{if(!e)return()=>{};let{unsubscribe:n}=e.subscribe(t);return n},[e]),i=(0,$.useCallback)(()=>e?.get(),[e]);return(0,Ea.useSyncExternalStoreWithSelector)(r,i,i,t,n)}var ka=t(i(),1);function Aa(e,t){let n=Sa(),r=ga(t),{activeProps:i,inactiveProps:a,activeOptions:o,to:s,preload:c,preloadDelay:l,preloadIntentProximity:u,hashScrollIntoView:d,replace:f,startTransition:p,resetScroll:m,viewTransition:h,children:_,target:v,disabled:y,style:b,className:ee,onClick:x,onBlur:te,onFocus:S,onMouseEnter:ne,onMouseLeave:re,onTouchStart:ae,ignoreBlocker:oe,params:se,search:ce,hash:le,state:ue,mask:fe,reloadDocument:pe,unsafeRelative:me,from:he,_fromLocation:ge,..._e}=e,C=ya(),w=$.useMemo(()=>e,[n,e.from,e._fromLocation,e.hash,e.to,e.search,e.params,e.state,e.mask,e.unsafeRelative]),E=Oa(n.stores.location,e=>e,(e,t)=>e.href===t.href),D=$.useMemo(()=>{let e={_fromLocation:E,...w};return n.buildLocation(e)},[n,E,w]),ve=D.maskedLocation?D.maskedLocation.publicHref:D.publicHref,ye=D.maskedLocation?D.maskedLocation.external:D.external,O=$.useMemo(()=>za(ve,ye,n.history,y),[y,ye,ve,n.history]),k=$.useMemo(()=>{if(O?.external)return de(O.href,n.protocolAllowlist)?void 0:O.href;if(!Ba(s)&&!(typeof s!=`string`||s.indexOf(`:`)===-1))try{return new URL(s),de(s,n.protocolAllowlist)?void 0:s}catch{}},[s,O,n.protocolAllowlist]),A=$.useMemo(()=>{if(k)return!1;if(o?.exact){if(!Re(E.pathname,D.pathname,n.basepath))return!1}else{let e=Le(E.pathname,n.basepath),t=Le(D.pathname,n.basepath);if(!(e.startsWith(t)&&(e.length===t.length||e[t.length]===`/`)))return!1}return(o?.includeSearch??!0)&&!ie(E.search,D.search,{partial:!o?.exact,ignoreUndefined:!o?.explicitUndefined})?!1:o?.includeHash?C&&E.hash===D.hash:!0},[o?.exact,o?.explicitUndefined,o?.includeHash,o?.includeSearch,E,k,C,D.hash,D.pathname,D.search,n.basepath]),j=A?g(i,{})??Ma:ja,M=A?ja:g(a,{})??ja,be=[ee,j.className,M.className].filter(Boolean).join(` `),xe=(b||j.style||M.style)&&{...b,...j.style,...M.style},[Se,Ce]=$.useState(!1),we=$.useRef(!1),N=e.reloadDocument||k?!1:c??n.options.defaultPreload,Te=l??n.options.defaultPreloadDelay??0,P=$.useCallback(()=>{n.preloadRoute({...w,_builtLocation:D}).catch(e=>{console.warn(e),console.warn(Qe)})},[n,w,D]);ha(r,$.useCallback(e=>{e?.isIntersecting&&P()},[P]),La,{disabled:!!y||N!==`viewport`}),$.useEffect(()=>{we.current||!y&&N===`render`&&(P(),we.current=!0)},[y,P,N]);let Ee=e=>{let t=e.currentTarget.getAttribute(`target`),r=v===void 0?t:v;if(!y&&!Ha(e)&&!e.defaultPrevented&&(!r||r===`_self`)&&e.button===0){e.preventDefault(),(0,ka.flushSync)(()=>{Ce(!0)});let t=n.subscribe(`onResolved`,()=>{t(),Ce(!1)});n.navigate({...w,replace:f,resetScroll:m,hashScrollIntoView:d,startTransition:p,viewTransition:h,ignoreBlocker:oe})}};if(k)return{..._e,ref:r,href:k,..._&&{children:_},...v&&{target:v},...y&&{disabled:y},...b&&{style:b},...ee&&{className:ee},...x&&{onClick:x},...te&&{onBlur:te},...S&&{onFocus:S},...ne&&{onMouseEnter:ne},...re&&{onMouseLeave:re},...ae&&{onTouchStart:ae}};let De=e=>{if(y||N!==`intent`)return;if(!Te){P();return}let t=e.currentTarget;if(Ia.has(t))return;let n=setTimeout(()=>{Ia.delete(t),P()},Te);Ia.set(t,n)},Oe=e=>{y||N!==`intent`||P()},F=e=>{if(y||!N||!Te)return;let t=e.currentTarget,n=Ia.get(t);n&&(clearTimeout(n),Ia.delete(t))};return{..._e,...j,...M,href:O?.href,ref:r,onClick:Ra([x,Ee]),onBlur:Ra([te,F]),onFocus:Ra([S,De]),onMouseEnter:Ra([ne,De]),onMouseLeave:Ra([re,F]),onTouchStart:Ra([ae,Oe]),disabled:!!y,target:v,...xe&&{style:xe},...be&&{className:be},...y&&Na,...A&&Pa,...C&&Se&&Fa}}var ja={},Ma={className:`active`},Na={role:`link`,"aria-disabled":!0},Pa={"data-status":`active`,"aria-current":`page`},Fa={"data-transitioning":`transitioning`},Ia=new WeakMap,La={rootMargin:`100px`},Ra=e=>t=>{for(let n of e)if(n){if(t.defaultPrevented)return;n(t)}};function za(e,t,n,r){if(!r)return t?{href:e,external:!0}:{href:n.createHref(e)||`/`,external:!1}}function Ba(e){if(typeof e!=`string`)return!1;let t=e.charCodeAt(0);return t===47?e.charCodeAt(1)!==47:t===46}var Va=$.forwardRef((e,t)=>{let{_asChild:n,...r}=e,{type:i,...a}=Aa(r,t),o=typeof r.children==`function`?r.children({isActive:a[`data-status`]===`active`}):r.children;if(!n){let{disabled:e,...t}=a;return $.createElement(`a`,t,o)}return $.createElement(n,a,o)});function Ha(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}var Ua=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},Wa=new class extends Ua{#e;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e();return window.addEventListener(`visibilitychange`,t,!1),()=>{window.removeEventListener(`visibilitychange`,t)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(e=>{typeof e==`boolean`?this.setFocused(e):this.onFocus()})}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){let e=this.isFocused();this.listeners.forEach(t=>{t(e)})}isFocused(){return typeof this.#e==`boolean`?this.#e:globalThis.document?.visibilityState!==`hidden`}},Ga={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},Ka=new class{#e=Ga;setTimeoutProvider(e){this.#e=e}setTimeout(e,t){return this.#e.setTimeout(e,t)}clearTimeout(e){this.#e.clearTimeout(e)}setInterval(e,t){return this.#e.setInterval(e,t)}clearInterval(e){this.#e.clearInterval(e)}};function qa(e){setTimeout(e,0)}var Ja=typeof window>`u`||`Deno`in globalThis;function Ya(){}function Xa(e,t){return typeof e==`function`?e(t):e}function Za(e){return typeof e==`number`&&e>=0&&e!==1/0}function Qa(e,t){return Math.max(e+(t||0)-Date.now(),0)}function $a(e,t){return typeof e==`function`?e(t):e}function eo(e,t){return typeof e==`function`?e(t):e}function to(e,t){let{type:n=`all`,exact:r,fetchStatus:i,predicate:a,queryKey:o,stale:s}=e;if(o){if(r){if(t.queryHash!==ro(o,t.options))return!1}else if(!ao(t.queryKey,o))return!1}if(n!==`all`){let e=t.isActive();if(n===`active`&&!e||n===`inactive`&&e)return!1}return!(typeof s==`boolean`&&t.isStale()!==s||i&&i!==t.state.fetchStatus||a&&!a(t))}function no(e,t){let{exact:n,status:r,predicate:i,mutationKey:a}=e;if(a){if(!t.options.mutationKey)return!1;if(n){if(io(t.options.mutationKey)!==io(a))return!1}else if(!ao(t.options.mutationKey,a))return!1}return!(r&&t.state.status!==r||i&&!i(t))}function ro(e,t){return(t?.queryKeyHashFn||io)(e)}function io(e){return JSON.stringify(e,(e,t)=>uo(t)?Object.keys(t).sort().reduce((e,n)=>(e[n]=t[n],e),{}):t)}function ao(e,t){return e===t?!0:typeof e==typeof t&&e&&t&&typeof e==`object`&&typeof t==`object`?Object.keys(t).every(n=>ao(e[n],t[n])):!1}var oo=Object.prototype.hasOwnProperty;function so(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=lo(e)&&lo(t);if(!r&&!(uo(e)&&uo(t)))return t;let i=(r?e:Object.keys(e)).length,a=r?t:Object.keys(t),o=a.length,s=r?Array(o):{},c=0;for(let l=0;l<o;l++){let o=r?l:a[l],u=e[o],d=t[o];if(u===d){s[o]=u,(r?l<i:oo.call(e,o))&&c++;continue}if(u===null||d===null||typeof u!=`object`||typeof d!=`object`){s[o]=d;continue}let f=so(u,d,n+1);s[o]=f,f===u&&c++}return i===o&&c===i?e:s}function co(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}function lo(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function uo(e){if(!fo(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!fo(n)||!n.hasOwnProperty(`isPrototypeOf`)||Object.getPrototypeOf(e)!==Object.prototype)}function fo(e){return Object.prototype.toString.call(e)===`[object Object]`}function po(e){return new Promise(t=>{Ka.setTimeout(t,e)})}function mo(e,t,n){return typeof n.structuralSharing==`function`?n.structuralSharing(e,t):n.structuralSharing===!1?t:so(e,t)}function ho(e,t,n=0){let r=[...e,t];return n&&r.length>n?r.slice(1):r}function go(e,t,n=0){let r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var _o=Symbol();function vo(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===_o?()=>Promise.reject(Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function yo(e,t){return typeof e==`function`?e(...t):!!e}function bo(e,t,n){let r=!1,i;return Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(i??=t(),r?i:(r=!0,i.aborted?n():i.addEventListener(`abort`,n,{once:!0}),i))}),e}var xo=(()=>{let e=()=>Ja;return{isServer(){return e()},setIsServer(t){e=t}}})();function So(){let e,t,n=new Promise((n,r)=>{e=n,t=r});n.status=`pending`,n.catch(()=>{});function r(e){Object.assign(n,e),delete n.resolve,delete n.reject}return n.resolve=t=>{r({status:`fulfilled`,value:t}),e(t)},n.reject=e=>{r({status:`rejected`,reason:e}),t(e)},n}function Co(e){let t;if(e.then(e=>(t=e,e),Ya)?.catch(Ya),t!==void 0)return{data:t}}var wo=qa;function To(){let e=[],t=0,n=e=>{e()},r=e=>{e()},i=wo,a=r=>{t?e.push(r):i(()=>{n(r)})},o=()=>{let t=e;e=[],t.length&&i(()=>{r(()=>{t.forEach(e=>{n(e)})})})};return{batch:e=>{let n;t++;try{n=e()}finally{t--,t||o()}return n},batchCalls:e=>(...t)=>{a(()=>{e(...t)})},schedule:a,setNotifyFunction:e=>{n=e},setBatchNotifyFunction:e=>{r=e},setScheduler:e=>{i=e}}}var Eo=To(),Do=new class extends Ua{#e=!0;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e(!0),n=()=>e(!1);return window.addEventListener(`online`,t,!1),window.addEventListener(`offline`,n,!1),()=>{window.removeEventListener(`online`,t),window.removeEventListener(`offline`,n)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#e!==e&&(this.#e=e,this.listeners.forEach(t=>{t(e)}))}isOnline(){return this.#e}};function Oo(e){return Math.min(1e3*2**e,3e4)}function ko(e){return(e??`online`)===`online`?Do.isOnline():!0}var Ao=class extends Error{constructor(e){super(`CancelledError`),this.revert=e?.revert,this.silent=e?.silent}};function jo(e){let t=!1,n=0,r,i=So(),a=()=>i.status!==`pending`,o=t=>{if(!a()){let n=new Ao(t);f(n),e.onCancel?.(n)}},s=()=>{t=!0},c=()=>{t=!1},l=()=>Wa.isFocused()&&(e.networkMode===`always`||Do.isOnline())&&e.canRun(),u=()=>ko(e.networkMode)&&e.canRun(),d=e=>{a()||(r?.(),i.resolve(e))},f=e=>{a()||(r?.(),i.reject(e))},p=()=>new Promise(t=>{r=e=>{(a()||l())&&t(e)},e.onPause?.()}).then(()=>{r=void 0,a()||e.onContinue?.()}),m=()=>{if(a())return;let r,i=n===0?e.initialPromise:void 0;try{r=i??e.fn()}catch(e){r=Promise.reject(e)}Promise.resolve(r).then(d).catch(r=>{if(a())return;let i=e.retry??(xo.isServer()?0:3),o=e.retryDelay??Oo,s=typeof o==`function`?o(n,r):o,c=i===!0||typeof i==`number`&&n<i||typeof i==`function`&&i(n,r);if(t||!c){f(r);return}n++,e.onFail?.(n,r),po(s).then(()=>l()?void 0:p()).then(()=>{t?f(r):m()})})};return{promise:i,status:()=>i.status,cancel:o,continue:()=>(r?.(),i),cancelRetry:s,continueRetry:c,canStart:u,start:()=>(u()?m():p().then(m),i)}}var Mo=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),Za(this.gcTime)&&(this.#e=Ka.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(xo.isServer()?1/0:300*1e3))}clearGcTimeout(){this.#e!==void 0&&(Ka.clearTimeout(this.#e),this.#e=void 0)}};function No(e){return{onFetch:(t,n)=>{let r=t.options,i=t.fetchOptions?.meta?.fetchMore?.direction,a=t.state.data?.pages||[],o=t.state.data?.pageParams||[],s={pages:[],pageParams:[]},c=0,l=async()=>{let n=!1,l=e=>{bo(e,()=>t.signal,()=>n=!0)},u=vo(t.options,t.fetchOptions),d=async(e,r,i)=>{if(n)return Promise.reject(t.signal.reason);if(r==null&&e.pages.length)return Promise.resolve(e);let a=await u((()=>{let e={client:t.client,queryKey:t.queryKey,pageParam:r,direction:i?`backward`:`forward`,meta:t.options.meta};return l(e),e})()),{maxPages:o}=t.options,s=i?go:ho;return{pages:s(e.pages,a,o),pageParams:s(e.pageParams,r,o)}};if(i&&a.length){let e=i===`backward`,t=e?Fo:Po,n={pages:a,pageParams:o};s=await d(n,t(r,n),e)}else{let t=e??a.length;do{let e=c===0?o[0]??r.initialPageParam:Po(r,s);if(c>0&&e==null)break;s=await d(s,e),c++}while(c<t)}return s};t.options.persister?t.fetchFn=()=>t.options.persister?.(l,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):t.fetchFn=l}}}function Po(e,{pages:t,pageParams:n}){let r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function Fo(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}var Io=class extends Mo{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e){super(),this.#s=!1,this.#o=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#i=e.client,this.#r=this.#i.getQueryCache(),this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#t=zo(this.options),this.state=e.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#e}get promise(){return this.#a?.promise}setOptions(e){if(this.options={...this.#o,...e},e?._type&&(this.#e=e._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let e=zo(this.options);e.data!==void 0&&(this.setState(Ro(e.data,e.dataUpdatedAt)),this.#t=e)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus===`idle`&&this.#r.remove(this)}setData(e,t){let n=mo(this.state.data,e,this.options);return this.#l({data:n,type:`success`,dataUpdatedAt:t?.updatedAt,manual:t?.manual}),n}setState(e){this.#l({type:`setState`,state:e})}cancel(e){let t=this.#a?.promise;return this.#a?.cancel(e),t?t.then(Ya).catch(Ya):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#t}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(e=>eo(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===_o||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(e=>$a(e.options.staleTime,this)===`static`):!1}isStale(){return this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(e=0){return this.state.data===void 0?!0:e===`static`?!1:this.state.isInvalidated?!0:!Qa(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(e=>e.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#a?.continue()}onOnline(){this.observers.find(e=>e.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#a?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#r.notify({type:`observerAdded`,query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(t=>t!==e),this.observers.length||(this.#a&&(this.#s||this.#c()?this.#a.cancel({revert:!0}):this.#a.cancelRetry()),this.scheduleGc()),this.#r.notify({type:`observerRemoved`,query:this,observer:e}))}getObserversCount(){return this.observers.length}#c(){return this.state.fetchStatus===`paused`&&this.state.status===`pending`}invalidate(){this.state.isInvalidated||this.#l({type:`invalidate`})}async fetch(e,t){if(this.state.fetchStatus!==`idle`&&this.#a?.status()!==`rejected`){if(this.state.data!==void 0&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#a)return this.#a.continueRetry(),this.#a.promise}if(e&&this.setOptions(e),!this.options.queryFn){let e=this.observers.find(e=>e.options.queryFn);e&&this.setOptions(e.options)}let n=new AbortController,r=e=>{Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(this.#s=!0,n.signal)})},i=()=>{let e=vo(this.options,t),n=(()=>{let e={client:this.#i,queryKey:this.queryKey,meta:this.meta};return r(e),e})();return this.#s=!1,this.options.persister?this.options.persister(e,n,this):e(n)},a=(()=>{let e={fetchOptions:t,options:this.options,queryKey:this.queryKey,client:this.#i,state:this.state,fetchFn:i};return r(e),e})();(this.#e===`infinite`?No(this.options.pages):this.options.behavior)?.onFetch(a,this),this.#n=this.state,(this.state.fetchStatus===`idle`||this.state.fetchMeta!==a.fetchOptions?.meta)&&this.#l({type:`fetch`,meta:a.fetchOptions?.meta}),this.#a=jo({initialPromise:t?.initialPromise,fn:a.fetchFn,onCancel:e=>{e instanceof Ao&&e.revert&&this.setState({...this.#n,fetchStatus:`idle`}),n.abort()},onFail:(e,t)=>{this.#l({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#l({type:`pause`})},onContinue:()=>{this.#l({type:`continue`})},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>!0});try{let e=await this.#a.start();if(e===void 0)throw Error(`${this.queryHash} data is undefined`);return this.setData(e),this.#r.config.onSuccess?.(e,this),this.#r.config.onSettled?.(e,this.state.error,this),e}catch(e){if(e instanceof Ao){if(e.silent)return this.#a.promise;if(e.revert){if(this.state.data===void 0)throw e;return this.state.data}}throw this.#l({type:`error`,error:e}),this.#r.config.onError?.(e,this),this.#r.config.onSettled?.(this.state.data,e,this),e}finally{this.scheduleGc()}}#l(e){let t=t=>{switch(e.type){case`failed`:return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case`pause`:return{...t,fetchStatus:`paused`};case`continue`:return{...t,fetchStatus:`fetching`};case`fetch`:return{...t,...Lo(t.data,this.options),fetchMeta:e.meta??null};case`success`:let n={...t,...Ro(e.data,e.dataUpdatedAt),dataUpdateCount:t.dataUpdateCount+1,...!e.manual&&{fetchStatus:`idle`,fetchFailureCount:0,fetchFailureReason:null}};return this.#n=e.manual?n:void 0,n;case`error`:let r=e.error;return{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:`idle`,status:`error`,isInvalidated:!0};case`invalidate`:return{...t,isInvalidated:!0};case`setState`:return{...t,...e.state}}};this.state=t(this.state),Eo.batch(()=>{this.observers.forEach(e=>{e.onQueryUpdate()}),this.#r.notify({query:this,type:`updated`,action:e})})}};function Lo(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:ko(t.networkMode)?`fetching`:`paused`,...e===void 0&&{error:null,status:`pending`}}}function Ro(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:`success`}}function zo(e){let t=typeof e.initialData==`function`?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt==`function`?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?`success`:`pending`,fetchStatus:`idle`}}var Bo=$.createContext(void 0),Vo=e=>{let t=$.useContext(Bo);if(e)return e;if(!t)throw Error(`No QueryClient set, use QueryClientProvider to set one`);return t},Ho=({client:e,children:t})=>($.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),(0,_a.jsx)(Bo.Provider,{value:e,children:t}));function Uo(e){return e}function Wo(e){return e!==`__proto__`&&e!==`constructor`&&e!==`prototype`}function Go(e,t){let n=Object.create(null);if(e)for(let t of Object.keys(e))Wo(t)&&(n[t]=e[t]);if(t&&typeof t==`object`)for(let e of Object.keys(t))Wo(e)&&(n[e]=t[e]);return n}function Ko(e){if(!e)return Object.create(null);let t=Object.create(null);for(let n of Object.keys(e))Wo(n)&&(t[n]=e[n]);return t}var qo=()=>{throw Error(`createServerOnlyFn() functions can only be called on the server!`)},Jo=(e,t)=>{let n=t||e||{};n.method===void 0&&(n.method=`GET`);let r=e=>Jo(void 0,{...n,validator:e,inputValidator:e});return Object.assign(e=>Jo(void 0,{...n,...e}),{options:n,middleware:e=>{let t=[...n.middleware||[]];e.map(e=>{s in e?e.options.middleware&&t.push(...e.options.middleware):t.push(e)});let r=Jo(void 0,{...n,middleware:t});return r[s]=!0,r},validator:r,inputValidator:r,handler:(...e)=>{let[t,r]=e,i={...n,extractedFn:t,serverFn:r},a=[...i.middleware||[],Qo(i)];return t.method=n.method,Object.assign(async e=>{let n=await Yo(a,`client`,{...t,...i,data:e?.data,headers:e?.headers,signal:e?.signal,fetch:e?.fetch,context:Ko()}),r=Ze(n.error);if(r)throw r;if(n.error)throw n.error;return n.result},{...t,method:n.method,__executeServer:async e=>{let n=qo(),r=n.contextAfterGlobalMiddlewares;return await Yo(a,`server`,{...t,...e,serverFnMeta:t.serverFnMeta,context:Go(e.context,r),request:n.request}).then(e=>({result:e.result,error:e.error,context:e.sendContext}))}})}})};async function Yo(e,t,n){let r=Xo([...p()?.functionMiddleware||[],...e]);if(t===`server`){let e=qo({throwIfNotFound:!1});e?.executedRequestMiddlewares&&(r=r.filter(t=>!e.executedRequestMiddlewares.has(t)))}let i=async e=>{let n=r.shift();if(!n)return e;try{let r=`validator`in n.options?n.options.validator:void 0;!r&&`inputValidator`in n.options&&(r=n.options.inputValidator),r&&t===`server`&&(e.data=await Zo(r,e.data));let a;if(t===`client`?`client`in n.options&&(a=n.options.client):`server`in n.options&&(a=n.options.server),a){let t=async(t={})=>{let n=await i({...e,...t,context:Go(e.context,t.context),sendContext:Go(e.sendContext,t.sendContext),headers:da(e.headers,t.headers),_callSiteFetch:e._callSiteFetch,fetch:e._callSiteFetch??t.fetch??e.fetch,result:t.result===void 0?t instanceof Response?t:e.result:t.result,error:t.error??e.error});if(n.error)throw n.error;return n},n=await a({...e,next:t});if(Xe(n))return{...e,error:n};if(n instanceof Response)return{...e,result:n};if(!n)throw Error(`User middleware returned undefined. You must call next() or return a result in your middlewares.`);return n}return i(e)}catch(t){return{...e,error:t}}};return i({...n,headers:n.headers||{},sendContext:n.sendContext||{},context:n.context||Ko(),_callSiteFetch:n.fetch})}function Xo(e,t=100){let n=new Set,r=[],i=(e,a)=>{if(a>t)throw Error(`Middleware nesting depth exceeded maximum of ${t}. Check for circular references.`);e.forEach(e=>{e.options.middleware&&i(e.options.middleware,a+1),n.has(e)||(n.add(e),r.push(e))})};return i(e,0),r}async function Zo(e,t){if(e==null)return{};if(`~standard`in e){let n=await e[`~standard`].validate(t);if(n.issues)throw Error(JSON.stringify(n.issues,void 0,2));return n.value}if(`parse`in e)return e.parse(t);if(typeof e==`function`)return e(t);throw Error(`Invalid validator type!`)}function Qo(e){return{"~types":void 0,options:{inputValidator:e.validator??e.inputValidator,client:async({next:t,sendContext:n,fetch:r,...i})=>{let a={...i,context:n,fetch:r};return t(await e.extractedFn?.(a))},server:async({next:t,...n})=>{let r=await e.serverFn?.(n);return t({...n,result:r})}}}}export{ze as $,Wa as A,ma as B,eo as C,m as Ct,_o as D,yo as E,o as Et,xa as F,Je as G,xi as H,va as I,We as J,Ke as K,ya as L,Va as M,Oa as N,Qa as O,Sa as P,Me as Q,fa as R,mo as S,se as St,co as T,x as Tt,Xe as U,ca as V,Ye as W,Be as X,Ne as Y,He as Z,Za as _,me as _t,Io as a,Ce as at,Ya as b,de as bt,jo as c,N as ct,So as d,ue as dt,Ie as et,Co as f,_e as ft,ro as g,ge as gt,io as h,ie as ht,Vo as i,xe as it,Ua as j,Ka as k,Do as l,w as lt,Xa as m,he as mt,Uo as n,Fe as nt,Lo as o,Se as ot,xo as p,ae as pt,Ge as q,Ho as r,Ee as rt,Mo as s,be as st,Jo as t,Pe as tt,Eo as u,C as ut,no as v,g as vt,$a as w,ee as wt,ao as x,oe as xt,to as y,y as yt,pa as z};