spiracha 1.3.3 → 1.4.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 (158) hide show
  1. package/AGENTS.md +7 -1
  2. package/README.md +6 -0
  3. package/apps/ui/AGENTS.md +8 -0
  4. package/apps/ui/README.md +10 -3
  5. package/apps/ui/dist/client/assets/analytics-DK2jdvmI.js +1 -0
  6. package/apps/ui/dist/client/assets/antigravity-conversations._conversationId-DmD0sN8X.js +7 -0
  7. package/apps/ui/dist/client/assets/antigravity-conversations._conversationId-KAcXtNxI.js +1 -0
  8. package/apps/ui/dist/client/assets/antigravity-keychain-panel-BRHVjFAM.js +1 -0
  9. package/apps/ui/dist/client/assets/antigravity._workspaceKey-ByitGWki.js +1 -0
  10. package/apps/ui/dist/client/assets/antigravity._workspaceKey-CGV7amas.js +1 -0
  11. package/apps/ui/dist/client/assets/antigravity.index-DEEkjlZa.js +1 -0
  12. package/apps/ui/dist/client/assets/antigravity.index-DgW25FEV.js +1 -0
  13. package/apps/ui/dist/client/assets/badge-DfWvPfKF.js +1 -0
  14. package/apps/ui/dist/client/assets/checkbox-CdHitXWQ.js +1 -0
  15. package/apps/ui/dist/client/assets/createServerFn-CgRRVpBH.js +3 -0
  16. package/apps/ui/dist/client/assets/cursor-threads._composerId-CmBFclK8.js +1 -0
  17. package/apps/ui/dist/client/assets/cursor-threads._composerId-Ti2gTm63.js +1 -0
  18. package/apps/ui/dist/client/assets/cursor._workspaceKey-CaAZjGmm.js +1 -0
  19. package/apps/ui/dist/client/assets/cursor._workspaceKey-DzD_c6j9.js +1 -0
  20. package/apps/ui/dist/client/assets/cursor.index-CrnMwDCi.js +1 -0
  21. package/apps/ui/dist/client/assets/cursor.index-PkCFVcl4.js +2 -0
  22. package/apps/ui/dist/client/assets/{data-table-DeQq8xdt.js → data-table-Br78_dk3.js} +2 -2
  23. package/apps/ui/dist/client/assets/delete-confirm-dialog-BHRmyLHr.js +11 -0
  24. package/apps/ui/dist/client/assets/dist-B9pyYCVU.js +1 -0
  25. package/apps/ui/dist/client/assets/dist-BhZOxAPP.js +1 -0
  26. package/apps/ui/dist/client/assets/dist-DvMS2965.js +1 -0
  27. package/apps/ui/dist/client/assets/download-Bf0QJKD3.js +1 -0
  28. package/apps/ui/dist/client/assets/dropdown-menu-Dy5cLzTy.js +1 -0
  29. package/apps/ui/dist/client/assets/es2015-BkCWttyM.js +41 -0
  30. package/apps/ui/dist/client/assets/export-dialog-C86SYHJn.js +1 -0
  31. package/apps/ui/dist/client/assets/formatters-BM9kB7ed.js +1 -0
  32. package/apps/ui/dist/client/assets/index-CPvAP-jk.js +149 -0
  33. package/apps/ui/dist/client/assets/jsx-runtime-DGeXAQPT.js +1 -0
  34. package/apps/ui/dist/client/assets/metric-card-Dplm0ZiM.js +1 -0
  35. package/apps/ui/dist/client/assets/page-header-Cwa3p6Tl.js +1 -0
  36. package/apps/ui/dist/client/assets/projects._project-Ckf6muWZ.js +1 -0
  37. package/apps/ui/dist/client/assets/projects._project-DSDwH4NF.js +1 -0
  38. package/apps/ui/dist/client/assets/projects.index-DEfhWqa8.js +1 -0
  39. package/apps/ui/dist/client/assets/projects.index-V5ibNZII.js +3 -0
  40. package/apps/ui/dist/client/assets/react-dom-DL96Jor4.js +1 -0
  41. package/apps/ui/dist/client/assets/refresh-ccw-BgKjOiA6.js +1 -0
  42. package/apps/ui/dist/client/assets/reload-error-panel-AHqu0akK.js +1 -0
  43. package/apps/ui/dist/client/assets/routes-Df2tgpyd.js +1 -0
  44. package/apps/ui/dist/client/assets/scroll-text-fM0sMOB3.js +1 -0
  45. package/apps/ui/dist/client/assets/select-Bf2GwfPR.js +1 -0
  46. package/apps/ui/dist/client/assets/settings-5VQIzME0.js +1 -0
  47. package/apps/ui/dist/client/assets/sqlite-error-B6uZjUe8.js +1 -0
  48. package/apps/ui/dist/client/assets/styles-BhRkXgwB.css +1 -0
  49. package/apps/ui/dist/client/assets/tabs-OO4VU5KR.js +7 -0
  50. package/apps/ui/dist/client/assets/text-filter-DVAZySUS.js +2 -0
  51. package/apps/ui/dist/client/assets/threads._threadId-BB9tTsV4.js +1 -0
  52. package/apps/ui/dist/client/assets/threads._threadId-BgDhFj2I.js +1 -0
  53. package/apps/ui/dist/client/assets/useMutation-CC_B7uy5.js +1 -0
  54. package/apps/ui/dist/client/assets/useQuery-C5By6WKU.js +1 -0
  55. package/apps/ui/dist/server/assets/_tanstack-start-manifest_v-CRW2kqj0.js +232 -0
  56. package/apps/ui/dist/server/assets/analytics-CYP_LT5Y.js +16 -0
  57. package/apps/ui/dist/server/assets/{analytics-Dc_QDZZC.js → analytics-CtpOMVMO.js} +13 -6
  58. package/apps/ui/dist/server/assets/antigravity-conversations._conversationId-BtexWY-K.js +613 -0
  59. package/apps/ui/dist/server/assets/{antigravity-conversations._conversationId-C9z4AeN-.js → antigravity-conversations._conversationId-zMrR6v6R.js} +2 -2
  60. package/apps/ui/dist/server/assets/{antigravity-db-D9gW1D8G.js → antigravity-db-Bh8_U9uw.js} +11 -7
  61. package/apps/ui/dist/server/assets/{antigravity-keychain-panel-bpPoxhyp.js → antigravity-keychain-panel-CC7FLmAK.js} +1 -1
  62. package/apps/ui/dist/server/assets/{antigravity-queries-DVIKyOXi.js → antigravity-queries-CGrJO9Vr.js} +5 -5
  63. package/apps/ui/dist/server/assets/{antigravity-server-Cp1lc8fp.js → antigravity-server-CHRjVFqN.js} +11 -11
  64. package/apps/ui/dist/server/assets/{antigravity._workspaceKey-Dl8o1ptg.js → antigravity._workspaceKey-B0QeYUOh.js} +2 -2
  65. package/apps/ui/dist/server/assets/{antigravity._workspaceKey-BAoa4izU.js → antigravity._workspaceKey-C3kP-qyN.js} +4 -4
  66. package/apps/ui/dist/server/assets/{antigravity.index-BOlrJasZ.js → antigravity.index-CPCYkqCi.js} +2 -2
  67. package/apps/ui/dist/server/assets/{codex-queries-ev_mRUzr.js → codex-queries-CtgeZ7VL.js} +15 -13
  68. package/apps/ui/dist/server/assets/{codex-server-DIYFLozB.js → codex-server-CNXSJuc2.js} +104 -119
  69. package/apps/ui/dist/server/assets/concurrency-VXtYvlGh.js +18 -0
  70. package/apps/ui/dist/server/assets/{createServerRpc-Cg-Zr1rq.js → createServerRpc-CF_DEwnm.js} +1 -1
  71. package/apps/ui/dist/server/assets/{createSsrRpc-DVnVQhGx.js → createSsrRpc-C754NPki.js} +1 -1
  72. package/apps/ui/dist/server/assets/{cursor-db-B7agkAvM.js → cursor-db-cYZEU3WQ.js} +194 -7
  73. package/apps/ui/dist/server/assets/{cursor-queries-f7DjBKSD.js → cursor-queries-NCIM0Nat.js} +12 -10
  74. package/apps/ui/dist/server/assets/{cursor-recovery-9bJLs7vG.js → cursor-recovery-nq-kR62j.js} +1 -1
  75. package/apps/ui/dist/server/assets/{cursor-server-nPzojHN3.js → cursor-server-C3q7hrp-.js} +70 -41
  76. package/apps/ui/dist/server/assets/{cursor-threads._composerId-B3qcsh9C.js → cursor-threads._composerId-BPJFWfJj.js} +2 -2
  77. package/apps/ui/dist/server/assets/cursor-threads._composerId-BkMMTQ3v.js +582 -0
  78. package/apps/ui/dist/server/assets/{cursor._workspaceKey-BL_CQyHQ.js → cursor._workspaceKey-C5PdTaKB.js} +2 -2
  79. package/apps/ui/dist/server/assets/{cursor._workspaceKey-BhQeepXB.js → cursor._workspaceKey-Ckj7apKI.js} +11 -9
  80. package/apps/ui/dist/server/assets/{cursor.index-CsrdckZD.js → cursor.index-DkWT-mxw.js} +2 -2
  81. package/apps/ui/dist/server/assets/{delete-confirm-dialog-PCD7S0_M.js → delete-confirm-dialog-BcBNCxWB.js} +5 -1
  82. package/apps/ui/dist/server/assets/{empty-plugin-adapters-D3qLMPfC.js → empty-plugin-adapters-B3lHh1La.js} +1 -1
  83. package/apps/ui/dist/server/assets/{export-dialog-DaPlOGFT.js → export-dialog-BItjWgkZ.js} +53 -11
  84. package/apps/ui/dist/server/assets/{projects._project-CqqUFr4l.js → projects._project-Bpbc3C-L.js} +5 -3
  85. package/apps/ui/dist/server/assets/{projects._project-DahGqNYS.js → projects._project-CvZho6EQ.js} +42 -12
  86. package/apps/ui/dist/server/assets/{projects.index-CkTeFWNU.js → projects.index-BkLiF2FF.js} +21 -7
  87. package/apps/ui/dist/server/assets/projects.index-DesYXwfi.js +14 -0
  88. package/apps/ui/dist/server/assets/route-search-ts4W9MJ9.js +38 -0
  89. package/apps/ui/dist/server/assets/{router-K0m7dK4T.js → router-6m-ihwqA.js} +78 -62
  90. package/apps/ui/dist/server/assets/{routes-Xix3ZeSo.js → routes-Bsact1uB.js} +2 -2
  91. package/apps/ui/dist/server/assets/{routes-0x1U0IHq.js → routes-BzkJgq4W.js} +2 -2
  92. package/apps/ui/dist/server/assets/start-CI_0bSiY.js +4 -0
  93. package/apps/ui/dist/server/assets/tabs-CGA13IZM.js +502 -0
  94. package/apps/ui/dist/server/assets/{threads._threadId-BLCkGW--.js → threads._threadId-Bs0yuqO9.js} +2 -2
  95. package/apps/ui/dist/server/assets/threads._threadId-D2GYkVn6.js +639 -0
  96. package/apps/ui/dist/server/assets/ui-export-files-BHLX9bhN.js +83 -0
  97. package/apps/ui/dist/server/server.js +93 -83
  98. package/package.json +9 -9
  99. package/src/lib/antigravity-db.ts +20 -13
  100. package/src/lib/codex-analytics.ts +118 -18
  101. package/src/lib/codex-browser-db.ts +1 -25
  102. package/src/lib/codex-browser-export.ts +9 -69
  103. package/src/lib/cursor-db.ts +318 -7
  104. package/src/lib/cursor-exporter.ts +2 -2
  105. package/src/lib/ui-cache.ts +14 -1
  106. package/apps/ui/dist/client/assets/analytics-C83LcWNb.js +0 -1
  107. package/apps/ui/dist/client/assets/antigravity-conversations._conversationId-DkY8EEpK.js +0 -1
  108. package/apps/ui/dist/client/assets/antigravity-conversations._conversationId-OraHuz8j.js +0 -1
  109. package/apps/ui/dist/client/assets/antigravity-keychain-panel-DnDcq1ge.js +0 -1
  110. package/apps/ui/dist/client/assets/antigravity._workspaceKey-CQaZscA5.js +0 -1
  111. package/apps/ui/dist/client/assets/antigravity._workspaceKey-DTs99obU.js +0 -1
  112. package/apps/ui/dist/client/assets/antigravity.index-DbJa715k.js +0 -1
  113. package/apps/ui/dist/client/assets/antigravity.index-P-rs6w5X.js +0 -1
  114. package/apps/ui/dist/client/assets/badge-wgTVp-aq.js +0 -1
  115. package/apps/ui/dist/client/assets/checkbox-BUx0Gkuf.js +0 -1
  116. package/apps/ui/dist/client/assets/cursor-threads._composerId-D0DFXt8t.js +0 -1
  117. package/apps/ui/dist/client/assets/cursor-threads._composerId-tFa6Cf6A.js +0 -1
  118. package/apps/ui/dist/client/assets/cursor._workspaceKey-Df4PfA2k.js +0 -1
  119. package/apps/ui/dist/client/assets/cursor._workspaceKey-DwrzEtnV.js +0 -1
  120. package/apps/ui/dist/client/assets/cursor.index-CNBf4ZiR.js +0 -1
  121. package/apps/ui/dist/client/assets/cursor.index-DP9Hy8X6.js +0 -2
  122. package/apps/ui/dist/client/assets/delete-confirm-dialog-CPlNsLhM.js +0 -11
  123. package/apps/ui/dist/client/assets/dist-Ds3kS91l.js +0 -1
  124. package/apps/ui/dist/client/assets/download-DLuPnxpV.js +0 -1
  125. package/apps/ui/dist/client/assets/dropdown-menu-lFk6zjoL.js +0 -1
  126. package/apps/ui/dist/client/assets/es2015-D-H_iZF6.js +0 -41
  127. package/apps/ui/dist/client/assets/export-dialog-CyqyvwiP.js +0 -1
  128. package/apps/ui/dist/client/assets/formatters-DbCKP02D.js +0 -1
  129. package/apps/ui/dist/client/assets/index-C-ZPpKJ0.js +0 -22
  130. package/apps/ui/dist/client/assets/json-panel-BsngvucB.js +0 -1
  131. package/apps/ui/dist/client/assets/metadata-section-Dtl8dNag.js +0 -1
  132. package/apps/ui/dist/client/assets/metric-card-DNzR1Rne.js +0 -1
  133. package/apps/ui/dist/client/assets/page-header-dha_O7ZL.js +0 -1
  134. package/apps/ui/dist/client/assets/projects._project-B7HBhbXv.js +0 -1
  135. package/apps/ui/dist/client/assets/projects._project-DHVvuT7A.js +0 -1
  136. package/apps/ui/dist/client/assets/projects.index-BUUtx2AZ.js +0 -1
  137. package/apps/ui/dist/client/assets/projects.index-BojAe1Y4.js +0 -3
  138. package/apps/ui/dist/client/assets/refresh-ccw-B-ASKHtx.js +0 -1
  139. package/apps/ui/dist/client/assets/reload-error-panel-DD8M1BIY.js +0 -1
  140. package/apps/ui/dist/client/assets/routes-q7bzFp35.js +0 -1
  141. package/apps/ui/dist/client/assets/scroll-text-TvHyiJ_N.js +0 -1
  142. package/apps/ui/dist/client/assets/select-BFv1HMiT.js +0 -1
  143. package/apps/ui/dist/client/assets/settings-CvegTo4F.js +0 -1
  144. package/apps/ui/dist/client/assets/styles-Ch0r3kMZ.css +0 -1
  145. package/apps/ui/dist/client/assets/text-document-panel-D7Rws41o.js +0 -1
  146. package/apps/ui/dist/client/assets/text-filter-2q5pEoZh.js +0 -2
  147. package/apps/ui/dist/client/assets/threads._threadId-LpZVUlPq.js +0 -7
  148. package/apps/ui/dist/client/assets/threads._threadId-MSmNIBkq.js +0 -1
  149. package/apps/ui/dist/client/assets/useMutation-BOPJU9e0.js +0 -1
  150. package/apps/ui/dist/client/assets/useQuery-CbxZiVGF.js +0 -1
  151. package/apps/ui/dist/server/assets/_tanstack-start-manifest_v-zvGzK-Yx.js +0 -229
  152. package/apps/ui/dist/server/assets/antigravity-conversations._conversationId-JEhx-f2R.js +0 -212
  153. package/apps/ui/dist/server/assets/cursor-threads._composerId-BK3iW-3e.js +0 -218
  154. package/apps/ui/dist/server/assets/json-panel-RYsxWFae.js +0 -16
  155. package/apps/ui/dist/server/assets/metadata-section-D6Lbc7D6.js +0 -54
  156. package/apps/ui/dist/server/assets/start-bX7bXjzw.js +0 -4
  157. package/apps/ui/dist/server/assets/text-document-panel-D8JbQWAn.js +0 -23
  158. package/apps/ui/dist/server/assets/threads._threadId-LjgsGUh-.js +0 -1052
@@ -1,229 +0,0 @@
1
- //#region \0tanstack-start-manifest:v
2
- var tsrStartManifest = () => ({ routes: {
3
- __root__: {
4
- filePath: "/home/runner/work/spiracha/spiracha/apps/ui/src/routes/__root.tsx",
5
- children: [
6
- "/",
7
- "/$threadId",
8
- "/analytics",
9
- "/settings",
10
- "/antigravity-conversations/$conversationId",
11
- "/antigravity/$workspaceKey",
12
- "/cursor-threads/$composerId",
13
- "/cursor/$workspaceKey",
14
- "/projects/$project",
15
- "/threads/$threadId",
16
- "/antigravity/",
17
- "/cursor/",
18
- "/projects/"
19
- ],
20
- preloads: ["/assets/index-C-ZPpKJ0.js"],
21
- scripts: [{ attrs: {
22
- type: "module",
23
- async: !0,
24
- src: "/assets/index-C-ZPpKJ0.js"
25
- } }]
26
- },
27
- "/": {
28
- filePath: "/home/runner/work/spiracha/spiracha/apps/ui/src/routes/index.tsx",
29
- children: void 0,
30
- preloads: [
31
- "/assets/routes-q7bzFp35.js",
32
- "/assets/metric-card-DNzR1Rne.js",
33
- "/assets/page-header-dha_O7ZL.js",
34
- "/assets/formatters-DbCKP02D.js"
35
- ]
36
- },
37
- "/$threadId": {
38
- filePath: "/home/runner/work/spiracha/spiracha/apps/ui/src/routes/$threadId.tsx",
39
- children: void 0,
40
- preloads: ["/assets/_threadId-CAIeH5mq.js"]
41
- },
42
- "/analytics": {
43
- filePath: "/home/runner/work/spiracha/spiracha/apps/ui/src/routes/analytics.tsx",
44
- children: void 0,
45
- preloads: [
46
- "/assets/analytics-C83LcWNb.js",
47
- "/assets/data-table-DeQq8xdt.js",
48
- "/assets/metric-card-DNzR1Rne.js",
49
- "/assets/page-header-dha_O7ZL.js",
50
- "/assets/select-BFv1HMiT.js",
51
- "/assets/formatters-DbCKP02D.js"
52
- ]
53
- },
54
- "/settings": {
55
- filePath: "/home/runner/work/spiracha/spiracha/apps/ui/src/routes/settings.tsx",
56
- children: void 0,
57
- preloads: [
58
- "/assets/settings-CvegTo4F.js",
59
- "/assets/page-header-dha_O7ZL.js",
60
- "/assets/checkbox-BUx0Gkuf.js"
61
- ]
62
- },
63
- "/antigravity-conversations/$conversationId": {
64
- filePath: "/home/runner/work/spiracha/spiracha/apps/ui/src/routes/antigravity-conversations.$conversationId.tsx",
65
- children: void 0,
66
- preloads: [
67
- "/assets/antigravity-conversations._conversationId-DkY8EEpK.js",
68
- "/assets/reload-error-panel-DD8M1BIY.js",
69
- "/assets/antigravity-conversations._conversationId-OraHuz8j.js",
70
- "/assets/antigravity-keychain-panel-DnDcq1ge.js",
71
- "/assets/metadata-section-Dtl8dNag.js",
72
- "/assets/metric-card-DNzR1Rne.js",
73
- "/assets/page-header-dha_O7ZL.js",
74
- "/assets/text-document-panel-D7Rws41o.js",
75
- "/assets/download-DLuPnxpV.js",
76
- "/assets/formatters-DbCKP02D.js",
77
- "/assets/useMutation-BOPJU9e0.js",
78
- "/assets/scroll-text-TvHyiJ_N.js"
79
- ]
80
- },
81
- "/antigravity/$workspaceKey": {
82
- filePath: "/home/runner/work/spiracha/spiracha/apps/ui/src/routes/antigravity.$workspaceKey.tsx",
83
- children: void 0,
84
- preloads: [
85
- "/assets/antigravity._workspaceKey-CQaZscA5.js",
86
- "/assets/antigravity-keychain-panel-DnDcq1ge.js",
87
- "/assets/data-table-DeQq8xdt.js",
88
- "/assets/text-filter-2q5pEoZh.js",
89
- "/assets/page-header-dha_O7ZL.js",
90
- "/assets/badge-wgTVp-aq.js",
91
- "/assets/dropdown-menu-lFk6zjoL.js",
92
- "/assets/download-DLuPnxpV.js",
93
- "/assets/formatters-DbCKP02D.js",
94
- "/assets/useMutation-BOPJU9e0.js",
95
- "/assets/scroll-text-TvHyiJ_N.js",
96
- "/assets/antigravity._workspaceKey-DTs99obU.js",
97
- "/assets/reload-error-panel-DD8M1BIY.js"
98
- ]
99
- },
100
- "/cursor-threads/$composerId": {
101
- filePath: "/home/runner/work/spiracha/spiracha/apps/ui/src/routes/cursor-threads.$composerId.tsx",
102
- children: void 0,
103
- preloads: [
104
- "/assets/cursor-threads._composerId-D0DFXt8t.js",
105
- "/assets/metadata-section-Dtl8dNag.js",
106
- "/assets/delete-confirm-dialog-CPlNsLhM.js",
107
- "/assets/export-dialog-CyqyvwiP.js",
108
- "/assets/json-panel-BsngvucB.js",
109
- "/assets/metric-card-DNzR1Rne.js",
110
- "/assets/page-header-dha_O7ZL.js",
111
- "/assets/text-document-panel-D7Rws41o.js",
112
- "/assets/download-DLuPnxpV.js",
113
- "/assets/formatters-DbCKP02D.js",
114
- "/assets/useMutation-BOPJU9e0.js",
115
- "/assets/cursor-threads._composerId-tFa6Cf6A.js",
116
- "/assets/reload-error-panel-DD8M1BIY.js"
117
- ]
118
- },
119
- "/cursor/$workspaceKey": {
120
- filePath: "/home/runner/work/spiracha/spiracha/apps/ui/src/routes/cursor.$workspaceKey.tsx",
121
- children: void 0,
122
- preloads: [
123
- "/assets/cursor._workspaceKey-Df4PfA2k.js",
124
- "/assets/data-table-DeQq8xdt.js",
125
- "/assets/delete-confirm-dialog-CPlNsLhM.js",
126
- "/assets/export-dialog-CyqyvwiP.js",
127
- "/assets/text-filter-2q5pEoZh.js",
128
- "/assets/page-header-dha_O7ZL.js",
129
- "/assets/dropdown-menu-lFk6zjoL.js",
130
- "/assets/download-DLuPnxpV.js",
131
- "/assets/formatters-DbCKP02D.js",
132
- "/assets/useMutation-BOPJU9e0.js",
133
- "/assets/refresh-ccw-B-ASKHtx.js",
134
- "/assets/cursor._workspaceKey-DwrzEtnV.js",
135
- "/assets/reload-error-panel-DD8M1BIY.js"
136
- ]
137
- },
138
- "/projects/$project": {
139
- filePath: "/home/runner/work/spiracha/spiracha/apps/ui/src/routes/projects.$project.tsx",
140
- children: void 0,
141
- preloads: [
142
- "/assets/projects._project-B7HBhbXv.js",
143
- "/assets/data-table-DeQq8xdt.js",
144
- "/assets/delete-confirm-dialog-CPlNsLhM.js",
145
- "/assets/export-dialog-CyqyvwiP.js",
146
- "/assets/text-filter-2q5pEoZh.js",
147
- "/assets/page-header-dha_O7ZL.js",
148
- "/assets/dropdown-menu-lFk6zjoL.js",
149
- "/assets/download-DLuPnxpV.js",
150
- "/assets/formatters-DbCKP02D.js",
151
- "/assets/useMutation-BOPJU9e0.js",
152
- "/assets/refresh-ccw-B-ASKHtx.js",
153
- "/assets/projects._project-DHVvuT7A.js",
154
- "/assets/reload-error-panel-DD8M1BIY.js"
155
- ]
156
- },
157
- "/threads/$threadId": {
158
- filePath: "/home/runner/work/spiracha/spiracha/apps/ui/src/routes/threads.$threadId.tsx",
159
- children: void 0,
160
- preloads: [
161
- "/assets/threads._threadId-LpZVUlPq.js",
162
- "/assets/metadata-section-Dtl8dNag.js",
163
- "/assets/delete-confirm-dialog-CPlNsLhM.js",
164
- "/assets/export-dialog-CyqyvwiP.js",
165
- "/assets/json-panel-BsngvucB.js",
166
- "/assets/metric-card-DNzR1Rne.js",
167
- "/assets/page-header-dha_O7ZL.js",
168
- "/assets/badge-wgTVp-aq.js",
169
- "/assets/checkbox-BUx0Gkuf.js",
170
- "/assets/download-DLuPnxpV.js",
171
- "/assets/formatters-DbCKP02D.js",
172
- "/assets/es2015-D-H_iZF6.js",
173
- "/assets/dist-Ds3kS91l.js",
174
- "/assets/useMutation-BOPJU9e0.js",
175
- "/assets/useQuery-CbxZiVGF.js",
176
- "/assets/threads._threadId-MSmNIBkq.js"
177
- ]
178
- },
179
- "/antigravity/": {
180
- filePath: "/home/runner/work/spiracha/spiracha/apps/ui/src/routes/antigravity.index.tsx",
181
- children: void 0,
182
- preloads: [
183
- "/assets/antigravity.index-DbJa715k.js",
184
- "/assets/reload-error-panel-DD8M1BIY.js",
185
- "/assets/antigravity.index-P-rs6w5X.js",
186
- "/assets/antigravity-keychain-panel-DnDcq1ge.js",
187
- "/assets/data-table-DeQq8xdt.js",
188
- "/assets/text-filter-2q5pEoZh.js",
189
- "/assets/page-header-dha_O7ZL.js",
190
- "/assets/formatters-DbCKP02D.js"
191
- ]
192
- },
193
- "/cursor/": {
194
- filePath: "/home/runner/work/spiracha/spiracha/apps/ui/src/routes/cursor.index.tsx",
195
- children: void 0,
196
- preloads: [
197
- "/assets/cursor.index-CNBf4ZiR.js",
198
- "/assets/reload-error-panel-DD8M1BIY.js",
199
- "/assets/cursor.index-DP9Hy8X6.js",
200
- "/assets/data-table-DeQq8xdt.js",
201
- "/assets/delete-confirm-dialog-CPlNsLhM.js",
202
- "/assets/text-filter-2q5pEoZh.js",
203
- "/assets/page-header-dha_O7ZL.js",
204
- "/assets/badge-wgTVp-aq.js",
205
- "/assets/dropdown-menu-lFk6zjoL.js",
206
- "/assets/formatters-DbCKP02D.js",
207
- "/assets/useMutation-BOPJU9e0.js",
208
- "/assets/refresh-ccw-B-ASKHtx.js"
209
- ]
210
- },
211
- "/projects/": {
212
- filePath: "/home/runner/work/spiracha/spiracha/apps/ui/src/routes/projects.index.tsx",
213
- children: void 0,
214
- preloads: [
215
- "/assets/projects.index-BUUtx2AZ.js",
216
- "/assets/reload-error-panel-DD8M1BIY.js",
217
- "/assets/projects.index-BojAe1Y4.js",
218
- "/assets/data-table-DeQq8xdt.js",
219
- "/assets/delete-confirm-dialog-CPlNsLhM.js",
220
- "/assets/text-filter-2q5pEoZh.js",
221
- "/assets/page-header-dha_O7ZL.js",
222
- "/assets/dropdown-menu-lFk6zjoL.js",
223
- "/assets/formatters-DbCKP02D.js",
224
- "/assets/useMutation-BOPJU9e0.js"
225
- ]
226
- }
227
- } });
228
- //#endregion
229
- export { tsrStartManifest };
@@ -1,212 +0,0 @@
1
- import { t as canExportAntigravityConversation } from "./antigravity-conversation-state-HgzS302O.js";
2
- import { t as Button } from "./button-CmTDnzOn.js";
3
- import { a as exportAntigravityArtifactsFn, o as exportAntigravityConversationFn, r as antigravityDecryptionQueryOptions, t as antigravityConversationDetailQueryOptions } from "./antigravity-queries-DVIKyOXi.js";
4
- import { t as Route } from "./antigravity-conversations._conversationId-C9z4AeN-.js";
5
- import { t as MetricCard } from "./metric-card-ByEeLu0r.js";
6
- import { t as PageHeader } from "./page-header-VNSaM3xd.js";
7
- import { n as formatBytes, o as formatNumber, r as formatDateTime } from "./formatters-FJaGZgJk.js";
8
- import { t as AntigravityKeychainPanel } from "./antigravity-keychain-panel-bpPoxhyp.js";
9
- import { n as Breadcrumbs, t as MetadataSection } from "./metadata-section-D6Lbc7D6.js";
10
- import { t as TextDocumentPanel } from "./text-document-panel-D8JbQWAn.js";
11
- import { t as downloadTextFile } from "./download-DMmiy1xf.js";
12
- import { Link } from "@tanstack/react-router";
13
- import { jsx, jsxs } from "react/jsx-runtime";
14
- import { useMutation, useSuspenseQuery } from "@tanstack/react-query";
15
- import { Download, ScrollText } from "lucide-react";
16
- //#region src/routes/antigravity-conversations.$conversationId.tsx?tsr-split=component
17
- var buildConversationMetadata = (detail) => {
18
- return [
19
- {
20
- label: "Conversation ID",
21
- value: /* @__PURE__ */ jsx("span", {
22
- "data-mono": "true",
23
- children: detail.conversation.conversationId
24
- })
25
- },
26
- {
27
- label: "Workspace",
28
- value: /* @__PURE__ */ jsx(Link, {
29
- className: "text-[var(--accent)]",
30
- params: { workspaceKey: detail.conversation.workspaceKey },
31
- to: "/antigravity/$workspaceKey",
32
- children: detail.conversation.workspaceLabel
33
- })
34
- },
35
- {
36
- label: "Created",
37
- value: /* @__PURE__ */ jsx("span", {
38
- suppressHydrationWarning: true,
39
- children: formatDateTime(detail.conversation.createdAtMs)
40
- })
41
- },
42
- {
43
- label: "Updated",
44
- value: /* @__PURE__ */ jsx("span", {
45
- suppressHydrationWarning: true,
46
- children: formatDateTime(detail.conversation.lastUpdatedAtMs)
47
- })
48
- },
49
- {
50
- label: "Transcript source",
51
- value: detail.conversation.transcriptSource ?? "n/a"
52
- },
53
- {
54
- label: "Conversation path",
55
- value: detail.conversation.conversationPath ?? "n/a"
56
- },
57
- {
58
- label: "Transcript path",
59
- value: detail.conversation.transcriptPath ?? "n/a"
60
- },
61
- {
62
- label: "Summary path",
63
- value: detail.conversation.summaryPath ?? "n/a"
64
- },
65
- {
66
- label: "Source root",
67
- value: detail.conversation.sourceRoot ?? "n/a"
68
- }
69
- ];
70
- };
71
- function AntigravityConversationHeaderActions({ canExportArtifacts, canExportConversation, exportArtifactsPending, exportConversationPending, showConversationExport, onExportArtifacts, onExportConversation }) {
72
- return /* @__PURE__ */ jsxs("div", {
73
- className: "flex flex-wrap gap-2",
74
- children: [showConversationExport ? /* @__PURE__ */ jsxs(Button, {
75
- className: "rounded-full",
76
- disabled: !canExportConversation || exportConversationPending,
77
- type: "button",
78
- variant: "outline",
79
- onClick: onExportConversation,
80
- children: [/* @__PURE__ */ jsx(Download, { className: "mr-2 size-4" }), "Export conversation"]
81
- }) : null, canExportArtifacts ? /* @__PURE__ */ jsxs(Button, {
82
- className: "rounded-full",
83
- disabled: exportArtifactsPending,
84
- type: "button",
85
- variant: "outline",
86
- onClick: onExportArtifacts,
87
- children: [/* @__PURE__ */ jsx(ScrollText, { className: "mr-2 size-4" }), "Export artifacts"]
88
- }) : null]
89
- });
90
- }
91
- function AntigravityConversationPanels({ detail }) {
92
- return /* @__PURE__ */ jsxs("div", {
93
- className: "space-y-4",
94
- children: [detail.transcriptLocked ? /* @__PURE__ */ jsxs("section", {
95
- className: "rounded-[1.6rem] border border-[var(--border)] bg-[var(--panel)] p-5 shadow-[var(--panel-shadow)]",
96
- children: [/* @__PURE__ */ jsx("h3", {
97
- className: "font-semibold text-[var(--muted-foreground)] text-sm uppercase tracking-[0.18em]",
98
- children: "Transcript"
99
- }), /* @__PURE__ */ jsx("p", {
100
- className: "mt-4 text-[var(--muted-foreground)] text-sm",
101
- children: "Unlock Antigravity transcript export to inspect the rendered conversation content here."
102
- })]
103
- }) : detail.conversationMarkdown ? /* @__PURE__ */ jsx(TextDocumentPanel, {
104
- content: detail.conversationMarkdown,
105
- description: "Rendered from the available Antigravity transcript or decrypted safe-storage payload.",
106
- title: "Conversation transcript"
107
- }) : /* @__PURE__ */ jsxs("section", {
108
- className: "rounded-[1.6rem] border border-[var(--border)] bg-[var(--panel)] p-5 shadow-[var(--panel-shadow)]",
109
- children: [/* @__PURE__ */ jsx("h3", {
110
- className: "font-semibold text-[var(--muted-foreground)] text-sm uppercase tracking-[0.18em]",
111
- children: "Transcript"
112
- }), /* @__PURE__ */ jsx("p", {
113
- className: "mt-4 text-[var(--muted-foreground)] text-sm",
114
- children: detail.artifactsMarkdown ? "No transcript preview is available for this conversation. Generated artifacts are available below." : "No transcript preview is available for this conversation."
115
- })]
116
- }), detail.artifactsMarkdown ? /* @__PURE__ */ jsx(TextDocumentPanel, {
117
- content: detail.artifactsMarkdown,
118
- description: "Markdown artifacts generated for this conversation.",
119
- title: "Artifacts"
120
- }) : null]
121
- });
122
- }
123
- function AntigravityConversationDetailPage() {
124
- const decryptionState = useSuspenseQuery(antigravityDecryptionQueryOptions()).data;
125
- const detail = useSuspenseQuery(antigravityConversationDetailQueryOptions(Route.useParams().conversationId)).data;
126
- const canExportConversation = canExportAntigravityConversation(detail.conversation, Boolean(decryptionState?.isUnlocked));
127
- const canExportArtifacts = detail.artifactsMarkdown !== null;
128
- const showConversationExport = canExportConversation || detail.transcriptLocked;
129
- const exportConversationMutation = useMutation({
130
- mutationFn: () => exportAntigravityConversationFn({ data: { conversationId: detail.conversation.conversationId } }),
131
- onSuccess: (result) => {
132
- downloadTextFile(result.filename, result.content, "text/markdown; charset=utf-8");
133
- }
134
- });
135
- const exportArtifactsMutation = useMutation({
136
- mutationFn: () => exportAntigravityArtifactsFn({ data: { conversationId: detail.conversation.conversationId } }),
137
- onSuccess: (result) => {
138
- downloadTextFile(result.filename, result.content, "text/markdown; charset=utf-8");
139
- }
140
- });
141
- return /* @__PURE__ */ jsxs("div", {
142
- className: "space-y-6",
143
- children: [
144
- /* @__PURE__ */ jsx(PageHeader, {
145
- actions: /* @__PURE__ */ jsx(AntigravityConversationHeaderActions, {
146
- canExportArtifacts,
147
- canExportConversation,
148
- exportArtifactsPending: exportArtifactsMutation.isPending,
149
- exportConversationPending: exportConversationMutation.isPending,
150
- showConversationExport,
151
- onExportArtifacts: () => exportArtifactsMutation.mutate(),
152
- onExportConversation: () => exportConversationMutation.mutate()
153
- }),
154
- breadcrumb: /* @__PURE__ */ jsx(Breadcrumbs, { items: [
155
- {
156
- label: "Antigravity",
157
- to: "/antigravity"
158
- },
159
- {
160
- label: detail.conversation.workspaceLabel,
161
- params: { workspaceKey: detail.conversation.workspaceKey },
162
- to: "/antigravity/$workspaceKey"
163
- },
164
- { label: detail.conversation.title }
165
- ] }),
166
- eyebrow: "Antigravity conversation",
167
- subtitle: "Conversation detail for the selected Antigravity workspace session.",
168
- title: detail.conversation.title
169
- }),
170
- /* @__PURE__ */ jsx(AntigravityKeychainPanel, {}),
171
- /* @__PURE__ */ jsxs("div", {
172
- className: "grid gap-3 md:grid-cols-2 xl:grid-cols-4",
173
- children: [
174
- /* @__PURE__ */ jsx(MetricCard, {
175
- label: "Transcript entries",
176
- value: formatNumber(detail.conversation.transcriptEntryCount)
177
- }),
178
- /* @__PURE__ */ jsx(MetricCard, {
179
- label: "Artifacts",
180
- value: formatNumber(detail.conversation.artifactCount)
181
- }),
182
- /* @__PURE__ */ jsx(MetricCard, {
183
- label: "Size",
184
- value: formatBytes(detail.conversation.conversationBytes)
185
- }),
186
- /* @__PURE__ */ jsx(MetricCard, {
187
- helper: detail.conversation.transcriptSource ?? "summary",
188
- label: "Indexed items",
189
- value: formatNumber(detail.conversation.indexedItemCount ?? 0)
190
- })
191
- ]
192
- }),
193
- /* @__PURE__ */ jsxs("div", {
194
- className: "grid gap-4 xl:grid-cols-[0.95fr_1.05fr]",
195
- children: [/* @__PURE__ */ jsx(MetadataSection, {
196
- items: buildConversationMetadata(detail),
197
- title: "Conversation metadata"
198
- }), /* @__PURE__ */ jsx(AntigravityConversationPanels, { detail })]
199
- }),
200
- exportConversationMutation.isError ? /* @__PURE__ */ jsx("p", {
201
- className: "text-[var(--destructive)] text-sm",
202
- children: exportConversationMutation.error instanceof Error ? exportConversationMutation.error.message : "Conversation export failed"
203
- }) : null,
204
- exportArtifactsMutation.isError ? /* @__PURE__ */ jsx("p", {
205
- className: "text-[var(--destructive)] text-sm",
206
- children: exportArtifactsMutation.error instanceof Error ? exportArtifactsMutation.error.message : "Artifact export failed"
207
- }) : null
208
- ]
209
- });
210
- }
211
- //#endregion
212
- export { AntigravityConversationDetailPage as component };
@@ -1,218 +0,0 @@
1
- import { t as Button } from "./button-CmTDnzOn.js";
2
- import { i as deleteCursorThreadsFn, o as exportCursorThreadFn, t as cursorThreadDetailQueryOptions } from "./cursor-queries-f7DjBKSD.js";
3
- import { t as Route } from "./cursor-threads._composerId-B3qcsh9C.js";
4
- import { t as MetricCard } from "./metric-card-ByEeLu0r.js";
5
- import { t as PageHeader } from "./page-header-VNSaM3xd.js";
6
- import { n as formatBytes, o as formatNumber, r as formatDateTime } from "./formatters-FJaGZgJk.js";
7
- import { n as Breadcrumbs, t as MetadataSection } from "./metadata-section-D6Lbc7D6.js";
8
- import { t as TextDocumentPanel } from "./text-document-panel-D8JbQWAn.js";
9
- import { t as downloadTextFile } from "./download-DMmiy1xf.js";
10
- import { t as DeleteConfirmDialog } from "./delete-confirm-dialog-PCD7S0_M.js";
11
- import { t as ExportDialog } from "./export-dialog-DaPlOGFT.js";
12
- import { t as JsonPanel } from "./json-panel-RYsxWFae.js";
13
- import { useState } from "react";
14
- import { Link, useNavigate } from "@tanstack/react-router";
15
- import { jsx, jsxs } from "react/jsx-runtime";
16
- import { useMutation, useQueryClient, useSuspenseQuery } from "@tanstack/react-query";
17
- import { Download, Trash2 } from "lucide-react";
18
- //#region src/routes/cursor-threads.$composerId.tsx?tsr-split=component
19
- var buildCursorThreadMetadata = (detail) => {
20
- return [
21
- {
22
- label: "Composer ID",
23
- value: /* @__PURE__ */ jsx("span", {
24
- "data-mono": "true",
25
- children: detail.thread.composerId
26
- })
27
- },
28
- {
29
- label: "Workspace",
30
- value: /* @__PURE__ */ jsx(Link, {
31
- className: "text-[var(--accent)]",
32
- params: { workspaceKey: detail.thread.workspaceKey },
33
- to: "/cursor/$workspaceKey",
34
- children: detail.thread.workspaceLabel
35
- })
36
- },
37
- {
38
- label: "Workspace key",
39
- value: /* @__PURE__ */ jsx("span", {
40
- "data-mono": "true",
41
- children: detail.thread.workspaceKey
42
- })
43
- },
44
- {
45
- label: "Mode",
46
- value: detail.thread.mode ?? "unknown"
47
- },
48
- {
49
- label: "Created",
50
- value: /* @__PURE__ */ jsx("span", {
51
- suppressHydrationWarning: true,
52
- children: formatDateTime(detail.thread.createdAtMs)
53
- })
54
- },
55
- {
56
- label: "Updated",
57
- value: /* @__PURE__ */ jsx("span", {
58
- suppressHydrationWarning: true,
59
- children: formatDateTime(detail.thread.lastUpdatedAtMs)
60
- })
61
- },
62
- {
63
- label: "Transcript dirs",
64
- value: detail.thread.transcriptDirs.length > 0 ? /* @__PURE__ */ jsx("div", {
65
- className: "space-y-1",
66
- children: detail.thread.transcriptDirs.map((directory) => /* @__PURE__ */ jsx("div", {
67
- "data-mono": "true",
68
- children: directory
69
- }, directory))
70
- }) : "n/a"
71
- }
72
- ];
73
- };
74
- var getCursorExportMimeType = (outputFormat) => {
75
- return outputFormat === "md" ? "text/markdown; charset=utf-8" : "text/plain; charset=utf-8";
76
- };
77
- var CursorThreadDetailPage = () => {
78
- const navigate = useNavigate();
79
- const queryClient = useQueryClient();
80
- const detail = useSuspenseQuery(cursorThreadDetailQueryOptions(Route.useParams().composerId)).data;
81
- const [pendingDelete, setPendingDelete] = useState(false);
82
- const [pendingExport, setPendingExport] = useState(false);
83
- const deleteThreadMutation = useMutation({
84
- mutationFn: () => deleteCursorThreadsFn({ data: { composerIds: [detail.thread.composerId] } }),
85
- onSuccess: async () => {
86
- await navigate({
87
- params: { workspaceKey: detail.thread.workspaceKey },
88
- to: "/cursor/$workspaceKey"
89
- });
90
- await Promise.all([
91
- queryClient.invalidateQueries({ queryKey: ["cursor-thread", detail.thread.composerId] }),
92
- queryClient.invalidateQueries({ queryKey: ["cursor-threads", detail.thread.workspaceKey] }),
93
- queryClient.invalidateQueries({ queryKey: ["cursor-workspaces"] })
94
- ]);
95
- }
96
- });
97
- const exportThreadMutation = useMutation({
98
- mutationFn: async (options) => {
99
- const download = await exportCursorThreadFn({ data: {
100
- ...options,
101
- composerId: detail.thread.composerId
102
- } });
103
- downloadTextFile(download.filename, download.content, getCursorExportMimeType(options.outputFormat));
104
- },
105
- onSuccess: () => {
106
- setPendingExport(false);
107
- }
108
- });
109
- return /* @__PURE__ */ jsxs("div", {
110
- className: "space-y-6",
111
- children: [
112
- /* @__PURE__ */ jsx(PageHeader, {
113
- actions: /* @__PURE__ */ jsxs("div", {
114
- className: "flex flex-wrap gap-2",
115
- children: [/* @__PURE__ */ jsxs(Button, {
116
- className: "rounded-full",
117
- type: "button",
118
- variant: "outline",
119
- onClick: () => setPendingExport(true),
120
- children: [/* @__PURE__ */ jsx(Download, { className: "mr-2 size-4" }), "Export"]
121
- }), /* @__PURE__ */ jsxs(Button, {
122
- className: "rounded-full border-[var(--destructive)]/20 text-[var(--destructive)]",
123
- type: "button",
124
- variant: "outline",
125
- onClick: () => setPendingDelete(true),
126
- children: [/* @__PURE__ */ jsx(Trash2, { className: "mr-2 size-4" }), "Delete"]
127
- })]
128
- }),
129
- breadcrumb: /* @__PURE__ */ jsx(Breadcrumbs, { items: [
130
- {
131
- label: "Cursor",
132
- to: "/cursor"
133
- },
134
- {
135
- label: detail.thread.workspaceLabel,
136
- params: { workspaceKey: detail.thread.workspaceKey },
137
- to: "/cursor/$workspaceKey"
138
- },
139
- { label: detail.thread.name }
140
- ] }),
141
- eyebrow: "Cursor thread",
142
- subtitle: "Thread detail for the selected Cursor workspace conversation.",
143
- title: detail.thread.name
144
- }),
145
- /* @__PURE__ */ jsxs("div", {
146
- className: "grid gap-3 md:grid-cols-2 xl:grid-cols-4",
147
- children: [
148
- /* @__PURE__ */ jsx(MetricCard, {
149
- label: "Messages",
150
- value: formatNumber(detail.thread.bubbleCount)
151
- }),
152
- /* @__PURE__ */ jsx(MetricCard, {
153
- label: "Size",
154
- value: formatBytes(detail.thread.bubbleBytes)
155
- }),
156
- /* @__PURE__ */ jsx(MetricCard, {
157
- label: "Mode",
158
- value: detail.thread.mode ?? "unknown"
159
- }),
160
- /* @__PURE__ */ jsx(MetricCard, {
161
- helper: `${formatNumber(detail.transcript?.renderableBubbleCount ?? 0)} renderable`,
162
- label: "Omitted",
163
- value: formatNumber(detail.transcript?.omittedBubbleCount ?? 0)
164
- })
165
- ]
166
- }),
167
- /* @__PURE__ */ jsxs("div", {
168
- className: "grid gap-4 xl:grid-cols-[0.95fr_1.05fr]",
169
- children: [/* @__PURE__ */ jsx(MetadataSection, {
170
- items: buildCursorThreadMetadata(detail),
171
- title: "Thread metadata"
172
- }), detail.renderedTranscript ? /* @__PURE__ */ jsx(TextDocumentPanel, {
173
- content: detail.renderedTranscript,
174
- description: "Rendered with commentary and tool calls enabled.",
175
- title: "Transcript"
176
- }) : /* @__PURE__ */ jsxs("section", {
177
- className: "rounded-[1.6rem] border border-[var(--border)] bg-[var(--panel)] p-5 shadow-[var(--panel-shadow)]",
178
- children: [/* @__PURE__ */ jsx("h3", {
179
- className: "font-semibold text-[var(--muted-foreground)] text-sm uppercase tracking-[0.18em]",
180
- children: "Transcript"
181
- }), /* @__PURE__ */ jsx("p", {
182
- className: "mt-4 text-[var(--muted-foreground)] text-sm",
183
- children: "No renderable Cursor transcript content was found for this thread."
184
- })]
185
- })]
186
- }),
187
- detail.transcript ? /* @__PURE__ */ jsx(JsonPanel, {
188
- title: "Raw transcript",
189
- value: detail.transcript
190
- }) : null,
191
- deleteThreadMutation.isError ? /* @__PURE__ */ jsx("p", {
192
- className: "text-[var(--destructive)] text-sm",
193
- children: deleteThreadMutation.error instanceof Error ? deleteThreadMutation.error.message : "Delete failed"
194
- }) : null,
195
- exportThreadMutation.isError ? /* @__PURE__ */ jsx("p", {
196
- className: "text-[var(--destructive)] text-sm",
197
- children: exportThreadMutation.error instanceof Error ? exportThreadMutation.error.message : "Export failed"
198
- }) : null,
199
- /* @__PURE__ */ jsx(DeleteConfirmDialog, {
200
- confirmLabel: deleteThreadMutation.isPending ? "Deleting..." : "Delete thread",
201
- description: `Permanently delete "${detail.thread.name}" from Cursor's database and remove any on-disk transcript directories. Quit Cursor first. This cannot be undone.`,
202
- open: pendingDelete,
203
- title: "Delete Cursor thread?",
204
- onConfirm: () => deleteThreadMutation.mutate(),
205
- onOpenChange: setPendingDelete
206
- }),
207
- /* @__PURE__ */ jsx(ExportDialog, {
208
- open: pendingExport,
209
- pending: exportThreadMutation.isPending,
210
- title: `Export ${detail.thread.name}`,
211
- onExport: (options) => exportThreadMutation.mutate(options),
212
- onOpenChange: setPendingExport
213
- })
214
- ]
215
- });
216
- };
217
- //#endregion
218
- export { CursorThreadDetailPage as component };
@@ -1,16 +0,0 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- //#region src/components/json-panel.tsx
3
- function JsonPanel({ title, value }) {
4
- return /* @__PURE__ */ jsxs("section", {
5
- className: "rounded-[1.6rem] border border-[var(--border)] bg-[var(--panel)] p-5 shadow-[var(--panel-shadow)]",
6
- children: [/* @__PURE__ */ jsx("h3", {
7
- className: "font-semibold text-[var(--muted-foreground)] text-sm uppercase tracking-[0.18em]",
8
- children: title
9
- }), /* @__PURE__ */ jsx("pre", {
10
- className: "mt-4 overflow-x-auto rounded-2xl border border-[var(--border)] bg-[var(--code-background)] p-4 text-[var(--code-foreground)] text-xs leading-5",
11
- children: JSON.stringify(value, null, 2)
12
- })]
13
- });
14
- }
15
- //#endregion
16
- export { JsonPanel as t };