@band-app/server 0.16.9 → 0.17.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 (204) hide show
  1. package/dist/client/assets/DockviewBrowserContainer-B_oEene2.js +5 -0
  2. package/dist/client/assets/DockviewTerminalContainer-CfQMvR_k.js +2 -0
  3. package/dist/client/assets/TerminalPanel-DxZK0ClB.js +5 -0
  4. package/dist/client/assets/{_basePickBy-uVqvgsJc.js → _basePickBy-Ct-e0Qqq.js} +1 -1
  5. package/dist/client/assets/{_baseUniq-7i7L1uNE.js → _baseUniq-CxKOXF1k.js} +1 -1
  6. package/dist/client/assets/arc-CKSDLbJ_.js +1 -0
  7. package/dist/client/assets/architectureDiagram-VXUJARFQ-DX7YfptV.js +36 -0
  8. package/dist/client/assets/{blockDiagram-VD42YOAC-CXQSSz3O.js → blockDiagram-VD42YOAC-CsuIx-c9.js} +5 -5
  9. package/dist/client/assets/{c4Diagram-YG6GDRKO-DplRXCR2.js → c4Diagram-YG6GDRKO-DychwT1W.js} +3 -3
  10. package/dist/client/assets/channel-B-u6m7I1.js +1 -0
  11. package/dist/client/assets/chunk-4BX2VUAB-loz8MPPD.js +1 -0
  12. package/dist/client/assets/chunk-55IACEB6-D29ChrqC.js +1 -0
  13. package/dist/client/assets/{chunk-B4BG7PRW-DlN9tUxh.js → chunk-B4BG7PRW-DKCONMEK.js} +6 -6
  14. package/dist/client/assets/{chunk-DI55MBZ5-a11zyhq4.js → chunk-DI55MBZ5-D5zzjeE8.js} +1 -1
  15. package/dist/client/assets/{chunk-FMBD7UC4-aGGVV1yn.js → chunk-FMBD7UC4-D1xESdhD.js} +1 -1
  16. package/dist/client/assets/chunk-QN33PNHL-DXisPMUT.js +1 -0
  17. package/dist/client/assets/chunk-QZHKN3VN-Ch8ZVx4Y.js +1 -0
  18. package/dist/client/assets/chunk-TZMSLE5B-GuM5n4Rs.js +1 -0
  19. package/dist/client/assets/classDiagram-2ON5EDUG-ZLOOfEOW.js +1 -0
  20. package/dist/client/assets/classDiagram-v2-WZHVMYZB-ZLOOfEOW.js +1 -0
  21. package/dist/client/assets/clone-CDLv4lRU.js +1 -0
  22. package/dist/client/assets/cose-bilkent-S5V4N54A-Cf0f3nH9.js +1 -0
  23. package/dist/client/assets/dagre-6UL2VRFP-BEjucV14.js +4 -0
  24. package/dist/client/assets/diagram-PSM6KHXK-4UTMLb3J.js +24 -0
  25. package/dist/client/assets/diagram-QEK2KX5R-B9rhi9zE.js +43 -0
  26. package/dist/client/assets/diagram-S2PKOQOG-CS7F4WJO.js +24 -0
  27. package/dist/client/assets/{erDiagram-Q2GNP2WA-kUd-gmjz.js → erDiagram-Q2GNP2WA-D-EqIR9o.js} +4 -4
  28. package/dist/client/assets/{flowDiagram-NV44I4VS-CHbLqCKB.js → flowDiagram-NV44I4VS-_GH1A_sS.js} +5 -5
  29. package/dist/client/assets/ganttDiagram-JELNMOA3-Dtb6N1ze.js +267 -0
  30. package/dist/client/assets/gitGraphDiagram-V2S2FVAM-B_QsP5ak.js +65 -0
  31. package/dist/client/assets/{graph-CSi_akmB.js → graph-H6OCDpse.js} +1 -1
  32. package/dist/client/assets/highlighted-body-B3W2YXNL-Pz2rshlt.js +1 -0
  33. package/dist/client/assets/index-B-KsZlI_.js +1 -0
  34. package/dist/client/assets/{index-udv0M-ix.js → index-BCbe81ki.js} +2 -2
  35. package/dist/client/assets/index-BOdifnXB.js +1 -0
  36. package/dist/client/assets/{index-BPf6S9f1.js → index-BQW7Zpk7.js} +1 -1
  37. package/dist/client/assets/index-BX_7-t5E.js +1 -0
  38. package/dist/client/assets/{index-B0ZcEU4c.js → index-BktK8Iwc.js} +1 -1
  39. package/dist/client/assets/{index-C-6dsPog.js → index-BtEs1oEp.js} +1 -1
  40. package/dist/client/assets/{index-T_1b5WRg.js → index-BtajlvkF.js} +1 -1
  41. package/dist/client/assets/{index-CNQHGhCu.js → index-Bx3rRbZG.js} +1 -1
  42. package/dist/client/assets/{index-DfHcm4JM.js → index-C6MgAn1q.js} +1 -1
  43. package/dist/client/assets/{index-C4ee_PQ0.js → index-CzCjpAqZ.js} +5 -5
  44. package/dist/client/assets/{index-oolizINO.js → index-DQAckahj.js} +1 -1
  45. package/dist/client/assets/index-DaRnNd02.js +7 -0
  46. package/dist/client/assets/{index-BJP1qdPz.js → index-Im7rGMYn.js} +1 -1
  47. package/dist/client/assets/{index-CA1NuCd_.js → index-WmGuuT8Z.js} +1 -1
  48. package/dist/client/assets/{index-C-3PAt1d.js → index-aTt3zXBv.js} +1 -1
  49. package/dist/client/assets/{index-5X7JRvnK.js → index-nPplcWzt.js} +1 -1
  50. package/dist/client/assets/{index-spwNnd85.js → index-vaGaAlmP.js} +1 -1
  51. package/dist/client/assets/infoDiagram-HS3SLOUP-Dp2iuUeA.js +2 -0
  52. package/dist/client/assets/{journeyDiagram-XKPGCS4Q-DIY8FE8Z.js → journeyDiagram-XKPGCS4Q-BaVzrE3V.js} +3 -3
  53. package/dist/client/assets/{kanban-definition-3W4ZIXB7-Cd_JJ8FN.js → kanban-definition-3W4ZIXB7-DdbWsnm7.js} +8 -8
  54. package/dist/client/assets/{layout-Bhb5FQCr.js → layout-vxWf40Ht.js} +1 -1
  55. package/dist/client/assets/{linear-Cmk2RyH_.js → linear-BstrgKy8.js} +1 -1
  56. package/dist/client/assets/{main-BlRcPsmZ.js → main-DRq9Axai.js} +227 -226
  57. package/dist/client/assets/main-evBJruhw.css +1 -0
  58. package/dist/client/assets/{mindmap-definition-VGOIOE7T-B-WhBVeY.js → mindmap-definition-VGOIOE7T-CAEEMYhK.js} +3 -3
  59. package/dist/client/assets/pieDiagram-ADFJNKIX-DCNv4UlO.js +30 -0
  60. package/dist/client/assets/{quadrantDiagram-AYHSOK5B-DHBoMUCQ.js → quadrantDiagram-AYHSOK5B-BeP4t0hp.js} +2 -2
  61. package/dist/client/assets/{requirementDiagram-UZGBJVZJ-DjS5RONh.js → requirementDiagram-UZGBJVZJ-CAdiLb_M.js} +2 -2
  62. package/dist/client/assets/sankeyDiagram-TZEHDZUN-DW9xKT5Y.js +10 -0
  63. package/dist/client/assets/{sequenceDiagram-WL72ISMW-CzqbRfb_.js → sequenceDiagram-WL72ISMW-D9y8fK_R.js} +1 -1
  64. package/dist/client/assets/{square-terminal-CNHJa6OY.js → square-terminal-VjG9-RoZ.js} +1 -1
  65. package/dist/client/assets/stateDiagram-FKZM4ZOC-QYuyBeVm.js +1 -0
  66. package/dist/client/assets/stateDiagram-v2-4FDKWEC3-VVONI0Hb.js +1 -0
  67. package/dist/client/assets/{timeline-definition-IT6M3QCI-CNKMKDwq.js → timeline-definition-IT6M3QCI-Ci_SXZdO.js} +4 -4
  68. package/dist/client/assets/{treemap-GDKQZRPO-DCEPrZh7.js → treemap-GDKQZRPO-fDacl-jS.js} +1 -1
  69. package/dist/client/assets/workspace._workspaceId-C9BVWo6-.js +2 -0
  70. package/dist/client/assets/workspace._workspaceId-CMlw9wn8.js +1 -0
  71. package/dist/client/assets/{xychartDiagram-PRI3JC2R-Cr18I3A3.js → xychartDiagram-PRI3JC2R-rRpBADcB.js} +4 -4
  72. package/dist/migrations/20260525163504_add_projects_has_origin/migration.sql +1 -0
  73. package/dist/migrations/20260525163504_add_projects_has_origin/snapshot.json +866 -0
  74. package/dist/openapi.json +414 -4
  75. package/dist/server/assets/{DockviewBrowserContainer-Bm7ARaqd.js → DockviewBrowserContainer-BAe7TLKD.js} +42 -22
  76. package/dist/server/assets/{DockviewTerminalContainer-BbMZgBJ8.js → DockviewTerminalContainer-CC7i0yMZ.js} +44 -24
  77. package/dist/server/assets/{TerminalPanel-BmhYCf33.js → TerminalPanel-gBh8VBn0.js} +1 -1
  78. package/dist/server/assets/{_basePickBy-C7CNOUDi.js → _basePickBy-CTks6QXq.js} +2 -2
  79. package/dist/server/assets/{_baseUniq-DeF47vVO.js → _baseUniq-BJI4qneQ.js} +1 -1
  80. package/dist/server/assets/_tanstack-start-manifest_v-CfuSyuIp.js +4 -0
  81. package/dist/server/assets/{arc-P5FY7IYH.js → arc-Fdc_l0PB.js} +1 -1
  82. package/dist/server/assets/{architecture-7HQA4BMR-LvprLHYS.js → architecture-7HQA4BMR-CfPXboDr.js} +6 -6
  83. package/dist/server/assets/{architectureDiagram-VXUJARFQ-Br4iiUzH.js → architectureDiagram-VXUJARFQ-D6UEkzy_.js} +6 -6
  84. package/dist/server/assets/{blockDiagram-VD42YOAC-BahODDhX.js → blockDiagram-VD42YOAC-BvasIENt.js} +6 -6
  85. package/dist/server/assets/{c4Diagram-YG6GDRKO-CQcZX6cr.js → c4Diagram-YG6GDRKO-MW5H9zoJ.js} +2 -2
  86. package/dist/server/assets/{channel-BmAB_ZKU.js → channel-XhTiPor2.js} +1 -1
  87. package/dist/server/assets/{chunk-4BX2VUAB-YUvszr4w.js → chunk-4BX2VUAB-C6POw9HJ.js} +1 -1
  88. package/dist/server/assets/{chunk-55IACEB6-BUgBPiJd.js → chunk-55IACEB6-BZ0x-UQb.js} +1 -1
  89. package/dist/server/assets/{chunk-B4BG7PRW-BxuWeZlV.js → chunk-B4BG7PRW-BAYqNQHL.js} +4 -4
  90. package/dist/server/assets/{chunk-DI55MBZ5-DuGkdvte.js → chunk-DI55MBZ5-DbsR50vR.js} +3 -3
  91. package/dist/server/assets/{chunk-FMBD7UC4-qY-BVG34.js → chunk-FMBD7UC4-D_KXTL87.js} +1 -1
  92. package/dist/server/assets/{chunk-QN33PNHL-BM_oi8-e.js → chunk-QN33PNHL-RXXHu7T0.js} +1 -1
  93. package/dist/server/assets/{chunk-QZHKN3VN-BL6_-at8.js → chunk-QZHKN3VN-5QE6weTd.js} +1 -1
  94. package/dist/server/assets/{chunk-TZMSLE5B-38NhX5at.js → chunk-TZMSLE5B-HlRXkCDZ.js} +1 -1
  95. package/dist/server/assets/{classDiagram-v2-WZHVMYZB-CwIsZ53p.js → classDiagram-2ON5EDUG-B90fR_EV.js} +5 -5
  96. package/dist/server/assets/{classDiagram-2ON5EDUG-CwIsZ53p.js → classDiagram-v2-WZHVMYZB-B90fR_EV.js} +5 -5
  97. package/dist/server/assets/{clone-BXHuGM8i.js → clone-Bjcb6OQr.js} +1 -1
  98. package/dist/server/assets/{cose-bilkent-S5V4N54A-D1CdgGvI.js → cose-bilkent-S5V4N54A-BgnWrjAl.js} +1 -1
  99. package/dist/server/assets/{dagre-6UL2VRFP-UMvdMLG3.js → dagre-6UL2VRFP-LfRXD26Q.js} +6 -6
  100. package/dist/server/assets/{diagram-PSM6KHXK-DtOD93m7.js → diagram-PSM6KHXK-DLrJ9Eja.js} +7 -7
  101. package/dist/server/assets/{diagram-QEK2KX5R-DViyYq-y.js → diagram-QEK2KX5R-atbHIh96.js} +6 -6
  102. package/dist/server/assets/{diagram-S2PKOQOG-C42mRVEn.js → diagram-S2PKOQOG-BnxctnIJ.js} +6 -6
  103. package/dist/server/assets/{erDiagram-Q2GNP2WA-D14z9IvB.js → erDiagram-Q2GNP2WA-Ct1zXovC.js} +4 -4
  104. package/dist/server/assets/{flowDiagram-NV44I4VS-BYBNOZwM.js → flowDiagram-NV44I4VS-DtWHb6Ay.js} +5 -5
  105. package/dist/server/assets/{ganttDiagram-JELNMOA3-CaG3uoK-.js → ganttDiagram-JELNMOA3-CySyldy4.js} +2 -2
  106. package/dist/server/assets/{gitGraph-G5XIXVHT-Dsx3dV0R.js → gitGraph-G5XIXVHT-DFo7FJzL.js} +6 -6
  107. package/dist/server/assets/{gitGraphDiagram-V2S2FVAM-CrSfx7b3.js → gitGraphDiagram-V2S2FVAM-DvT5EUG7.js} +7 -7
  108. package/dist/server/assets/{graph-gBFInK6H.js → graph-B5XlkLf_.js} +2 -2
  109. package/dist/server/assets/{highlighted-body-B3W2YXNL-DjTWk17l.js → highlighted-body-B3W2YXNL-CLJWhRU_.js} +1 -1
  110. package/dist/server/assets/{index-C3N_Nx6h.js → index--4MijjkY.js} +2 -2
  111. package/dist/server/assets/{index-C245EJn1.js → index-4SOjxyuO.js} +2 -2
  112. package/dist/server/assets/{index-3wtbr7va.js → index-BQ5LDgRA.js} +3 -3
  113. package/dist/server/assets/{index-CD97pPmc.js → index-BanzNq86.js} +1 -1
  114. package/dist/server/assets/{index-2gWBdIrR.js → index-BvJzvUfR.js} +2 -2
  115. package/dist/server/assets/{index-B84Urg23.js → index-C2GzB22l.js} +2 -2
  116. package/dist/server/assets/{index-QxgXX0fb.js → index-CAJcSCqE.js} +2 -2
  117. package/dist/server/assets/{index-Bs6a6-xI.js → index-CLUle2oh.js} +5 -5
  118. package/dist/server/assets/{index-5N2Gh0ba.js → index-CMO4FLK_.js} +2 -2
  119. package/dist/server/assets/{index-6Zof9vm8.js → index-CXMNOcuN.js} +1 -1
  120. package/dist/server/assets/{index-Dv-16VYI.js → index-CXmMBSCL.js} +2 -2
  121. package/dist/server/assets/{index-DXgP0Lsu.js → index-CdgmRfZg.js} +2 -2
  122. package/dist/server/assets/{index-CwQ5qWPC.js → index-DJ8A5E65.js} +5 -5
  123. package/dist/server/assets/{index-DZZ6NiTf.js → index-DjySh3G7.js} +3 -3
  124. package/dist/server/assets/{index-Bd5jTryJ.js → index-DuXjusjn.js} +2 -2
  125. package/dist/server/assets/{index-DsGPaWHg.js → index-QiPzMfSX.js} +2 -2
  126. package/dist/server/assets/{index-Bw42FDwO.js → index-SuLB6TaE.js} +2 -2
  127. package/dist/server/assets/{index-egmIrLx2.js → index-bmq-aMYV.js} +4 -4
  128. package/dist/server/assets/{info-VBDWY6EO-CueOsYFZ.js → info-VBDWY6EO-CW57QiJi.js} +6 -6
  129. package/dist/server/assets/{infoDiagram-HS3SLOUP-CeyMzohL.js → infoDiagram-HS3SLOUP-D_Zdx-MM.js} +5 -5
  130. package/dist/server/assets/{journeyDiagram-XKPGCS4Q-ANqeM_TM.js → journeyDiagram-XKPGCS4Q-BcO9qzr2.js} +4 -4
  131. package/dist/server/assets/{kanban-definition-3W4ZIXB7-B0RkH45q.js → kanban-definition-3W4ZIXB7-BatZ7RKG.js} +2 -2
  132. package/dist/server/assets/{layout-JjP5jdu6.js → layout-Cwuj9CwZ.js} +4 -4
  133. package/dist/server/assets/{linear-BJgoq5J4.js → linear-CP3xC85V.js} +1 -1
  134. package/dist/server/assets/{mermaid-3ZIDBTTL-CFPuUseQ.js → mermaid-3ZIDBTTL-BZm8jQDo.js} +1 -1
  135. package/dist/server/assets/{mermaid-parser.core-CKKZ1VFr.js → mermaid-parser.core-Cx17C8XR.js} +11 -11
  136. package/dist/server/assets/{mindmap-definition-VGOIOE7T-DlEXF5z8.js → mindmap-definition-VGOIOE7T-CpzqFomk.js} +3 -3
  137. package/dist/server/assets/{packet-DYOGHKS2-CvyxHTRM.js → packet-DYOGHKS2-x3ihoqUO.js} +6 -6
  138. package/dist/server/assets/{pie-VRWISCQL-DfpVZlpC.js → pie-VRWISCQL-DsMBDe8r.js} +6 -6
  139. package/dist/server/assets/{pieDiagram-ADFJNKIX-CWkrHsNk.js → pieDiagram-ADFJNKIX-DI4Hh6KE.js} +7 -7
  140. package/dist/server/assets/{quadrantDiagram-AYHSOK5B-C25p2xz7.js → quadrantDiagram-AYHSOK5B-Cqc_vrUG.js} +2 -2
  141. package/dist/server/assets/{radar-ZZBFDIW7-DWqPsDMi.js → radar-ZZBFDIW7-CqwCJm3D.js} +6 -6
  142. package/dist/server/assets/{requirementDiagram-UZGBJVZJ-ACRVXQGO.js → requirementDiagram-UZGBJVZJ-96ab-40P.js} +3 -3
  143. package/dist/server/assets/{router-GhGSLKfP.js → router-CYNdQEN4.js} +1116 -579
  144. package/dist/server/assets/{sankeyDiagram-TZEHDZUN-uzNSHudY.js → sankeyDiagram-TZEHDZUN-Bux2-BQd.js} +1 -1
  145. package/dist/server/assets/{sequenceDiagram-WL72ISMW-C_wFtq8b.js → sequenceDiagram-WL72ISMW-CFKyfvmC.js} +3 -3
  146. package/dist/server/assets/{square-terminal-cghvb5Il.js → square-terminal-gVSeBp7-.js} +1 -1
  147. package/dist/server/assets/{stateDiagram-FKZM4ZOC-B9MGwsuS.js → stateDiagram-FKZM4ZOC-DGZQd18J.js} +8 -8
  148. package/dist/server/assets/{stateDiagram-v2-4FDKWEC3-CLHd8oUa.js → stateDiagram-v2-4FDKWEC3-DJXeLDOB.js} +4 -4
  149. package/dist/server/assets/{timeline-definition-IT6M3QCI-CqKot5RT.js → timeline-definition-IT6M3QCI-DzTJZPN5.js} +2 -2
  150. package/dist/server/assets/{treemap-GDKQZRPO-mMRojqRQ.js → treemap-GDKQZRPO-CD9jkQrA.js} +6 -6
  151. package/dist/server/assets/workspace._workspaceId-ClAAZ5aq.js +23 -0
  152. package/dist/server/assets/{workspace._workspaceId-DwsRTXCg.js → workspace._workspaceId-DT6Kz8RH.js} +125 -97
  153. package/dist/server/assets/{xychartDiagram-PRI3JC2R-j8PckQEj.js → xychartDiagram-PRI3JC2R-ByA0_p8p.js} +2 -2
  154. package/dist/server/server.js +2 -2
  155. package/dist/start-server.mjs +489 -242
  156. package/package.json +4 -4
  157. package/dist/client/assets/DockviewBrowserContainer-CCBAkU1p.js +0 -5
  158. package/dist/client/assets/DockviewTerminalContainer-B9hdDoMz.js +0 -2
  159. package/dist/client/assets/TerminalPanel-BKfWmj6W.js +0 -5
  160. package/dist/client/assets/arc-DiYEQGs3.js +0 -1
  161. package/dist/client/assets/architectureDiagram-VXUJARFQ-C5z8L1iK.js +0 -36
  162. package/dist/client/assets/channel-BnMJuhcI.js +0 -1
  163. package/dist/client/assets/chunk-4BX2VUAB-B4Mk_d7A.js +0 -1
  164. package/dist/client/assets/chunk-55IACEB6-B0hf8Eje.js +0 -1
  165. package/dist/client/assets/chunk-QN33PNHL-Dit4S-yJ.js +0 -1
  166. package/dist/client/assets/chunk-QZHKN3VN-L-h1VSi0.js +0 -1
  167. package/dist/client/assets/chunk-TZMSLE5B-DpK-hWaC.js +0 -1
  168. package/dist/client/assets/classDiagram-2ON5EDUG-D89oCSXI.js +0 -1
  169. package/dist/client/assets/classDiagram-v2-WZHVMYZB-D89oCSXI.js +0 -1
  170. package/dist/client/assets/clone-X7FA7kE2.js +0 -1
  171. package/dist/client/assets/cose-bilkent-S5V4N54A-CzoIK-3W.js +0 -1
  172. package/dist/client/assets/dagre-6UL2VRFP-BhfXeb7k.js +0 -4
  173. package/dist/client/assets/diagram-PSM6KHXK-BwFVwR1b.js +0 -24
  174. package/dist/client/assets/diagram-QEK2KX5R-BO-CEopy.js +0 -43
  175. package/dist/client/assets/diagram-S2PKOQOG-BxiH83lN.js +0 -24
  176. package/dist/client/assets/ganttDiagram-JELNMOA3-B7gBcAFl.js +0 -267
  177. package/dist/client/assets/gitGraphDiagram-V2S2FVAM-gca_jqKQ.js +0 -65
  178. package/dist/client/assets/highlighted-body-B3W2YXNL-C2a-lsk8.js +0 -1
  179. package/dist/client/assets/index-2F-slvqo.js +0 -1
  180. package/dist/client/assets/index-C4PISrIW.js +0 -1
  181. package/dist/client/assets/index-CiKTedrx.js +0 -1
  182. package/dist/client/assets/index-DNrK0iIn.js +0 -7
  183. package/dist/client/assets/infoDiagram-HS3SLOUP-BK3MmhkJ.js +0 -2
  184. package/dist/client/assets/main-BLOY6Nam.css +0 -1
  185. package/dist/client/assets/pieDiagram-ADFJNKIX-CYoHsaM9.js +0 -30
  186. package/dist/client/assets/sankeyDiagram-TZEHDZUN-DmhEbBY-.js +0 -10
  187. package/dist/client/assets/stateDiagram-FKZM4ZOC-CafvdTb3.js +0 -1
  188. package/dist/client/assets/stateDiagram-v2-4FDKWEC3-BkKHK-CQ.js +0 -1
  189. package/dist/client/assets/useSessionListContext-xer-Wcmf.js +0 -1
  190. package/dist/client/assets/workspace._workspaceId-CgG1n_1x.js +0 -1
  191. package/dist/client/assets/workspace._workspaceId.changes-BKX7lUhX.js +0 -1
  192. package/dist/client/assets/workspace._workspaceId.code-BcnxRdZi.js +0 -1
  193. package/dist/client/assets/workspace._workspaceId.code._-BbOt6tOD.js +0 -1
  194. package/dist/client/assets/workspace._workspaceId.code.index-DC2535x-.js +0 -1
  195. package/dist/client/assets/workspace._workspaceId.index-CNjq1nDf.js +0 -1
  196. package/dist/client/assets/workspace._workspaceId.terminal-DhYn8I5t.js +0 -2
  197. package/dist/server/assets/_tanstack-start-manifest_v-BNCQ-izx.js +0 -4
  198. package/dist/server/assets/useSessionListContext-D_vX6E2e.js +0 -23
  199. package/dist/server/assets/workspace._workspaceId.changes-C6vwSbUh.js +0 -38
  200. package/dist/server/assets/workspace._workspaceId.code-Cuj0zH98.js +0 -12
  201. package/dist/server/assets/workspace._workspaceId.code._-BJdg1-Gs.js +0 -44
  202. package/dist/server/assets/workspace._workspaceId.code.index-CE_CMD_I.js +0 -36
  203. package/dist/server/assets/workspace._workspaceId.index-BPhXMwl8.js +0 -112
  204. package/dist/server/assets/workspace._workspaceId.terminal-BdVDaWNH.js +0 -24
@@ -1,5 +1,5 @@
1
1
  var _a, _b, _c;
2
- import { ai as setDiagramTitle, aj as getDiagramTitle, Z as setAccDescription, _ as getAccDescription, a0 as setAccTitle, $ as getAccTitle, a1 as __name, a2 as getConfig2, ap as defaultConfig2, a3 as select, a$ as setupGraphViewbox, ao as clear, ab as common_default } from "./router-GhGSLKfP.js";
2
+ import { a7 as setDiagramTitle, a8 as getDiagramTitle, F as setAccDescription, G as getAccDescription, J as setAccTitle, H as getAccTitle, _ as __name, M as getConfig2, ae as defaultConfig2, O as select, aQ as setupGraphViewbox, ad as clear, a0 as common_default } from "./router-CYNdQEN4.js";
3
3
  import { o as ordinal } from "./ordinal-CxptdPJm.js";
4
4
  import "../server.js";
5
5
  import "node:async_hooks";
@@ -1,7 +1,7 @@
1
1
  var _a;
2
- import { a as drawBackgroundRect, b as getTextObj, g as getNoteRect, d as drawRect, c as drawEmbeddedImage, e as drawImage } from "./chunk-TZMSLE5B-38NhX5at.js";
3
- import { a1 as __name, ae as setConfig2, a2 as getConfig2, a3 as select, a4 as log, a9 as distExports, a5 as configureSvgSize, a6 as assignWithDepth_default, ab as common_default, a0 as setAccTitle, Z as setAccDescription, ai as setDiagramTitle, $ as getAccTitle, _ as getAccDescription, aj as getDiagramTitle, ak as load, al as JSON_SCHEMA, ao as clear, a8 as sanitizeText, ah as utils_default, aR as hasKatex, aS as calculateMathMLDimensions, aT as parseFontSize, aU as ZERO_WIDTH_SPACE, aV as getUrl, aW as renderKatexSanitized, ax as getConfig } from "./router-GhGSLKfP.js";
4
- import { I as ImperativeState } from "./chunk-QZHKN3VN-BL6_-at8.js";
2
+ import { a as drawBackgroundRect, b as getTextObj, g as getNoteRect, d as drawRect, c as drawEmbeddedImage, e as drawImage } from "./chunk-TZMSLE5B-HlRXkCDZ.js";
3
+ import { _ as __name, a3 as setConfig2, M as getConfig2, O as select, S as log, Z as distExports, U as configureSvgSize, V as assignWithDepth_default, a0 as common_default, J as setAccTitle, F as setAccDescription, a7 as setDiagramTitle, H as getAccTitle, G as getAccDescription, a8 as getDiagramTitle, a9 as load, aa as JSON_SCHEMA, ad as clear, Y as sanitizeText, a6 as utils_default, aG as hasKatex, aH as calculateMathMLDimensions, aI as parseFontSize, aJ as ZERO_WIDTH_SPACE, aK as getUrl, aL as renderKatexSanitized, am as getConfig } from "./router-CYNdQEN4.js";
4
+ import { I as ImperativeState } from "./chunk-QZHKN3VN-5QE6weTd.js";
5
5
  import "../server.js";
6
6
  import "node:async_hooks";
7
7
  import "node:stream";
@@ -1,4 +1,4 @@
1
- import { E as createLucideIcon } from "./router-GhGSLKfP.js";
1
+ import { m as createLucideIcon } from "./router-CYNdQEN4.js";
2
2
  const __iconNode = [
3
3
  ["path", { d: "m7 11 2-2-2-2", key: "1lz0vl" }],
4
4
  ["path", { d: "M11 13h4", key: "1p7l4v" }],
@@ -1,9 +1,9 @@
1
- import { s as styles_default, a as stateDiagram_default, S as StateDB } from "./chunk-DI55MBZ5-DuGkdvte.js";
2
- import { a1 as __name, a2 as getConfig2, a3 as select, a4 as log, a5 as configureSvgSize, ab as common_default, aY as line, aZ as curveBasis, aV as getUrl, ah as utils_default } from "./router-GhGSLKfP.js";
3
- import { G as Graph } from "./graph-gBFInK6H.js";
4
- import { l as layout } from "./layout-JjP5jdu6.js";
5
- import "./chunk-55IACEB6-BUgBPiJd.js";
6
- import "./chunk-QN33PNHL-BM_oi8-e.js";
1
+ import { s as styles_default, a as stateDiagram_default, S as StateDB } from "./chunk-DI55MBZ5-DbsR50vR.js";
2
+ import { _ as __name, M as getConfig2, O as select, S as log, U as configureSvgSize, a0 as common_default, aN as line, aO as curveBasis, aK as getUrl, a6 as utils_default } from "./router-CYNdQEN4.js";
3
+ import { G as Graph } from "./graph-B5XlkLf_.js";
4
+ import { l as layout } from "./layout-Cwuj9CwZ.js";
5
+ import "./chunk-55IACEB6-BZ0x-UQb.js";
6
+ import "./chunk-QN33PNHL-RXXHu7T0.js";
7
7
  import "../server.js";
8
8
  import "node:async_hooks";
9
9
  import "node:stream";
@@ -15,8 +15,8 @@ import "node:stream/web";
15
15
  import "node:process";
16
16
  import "node:path";
17
17
  import "node:url";
18
- import "./_baseUniq-DeF47vVO.js";
19
- import "./_basePickBy-C7CNOUDi.js";
18
+ import "./_baseUniq-BJI4qneQ.js";
19
+ import "./_basePickBy-CTks6QXq.js";
20
20
  var drawStartState = /* @__PURE__ */ __name((g) => g.append("circle").attr("class", "start-state").attr("r", getConfig2().state.sizeUnit).attr("cx", getConfig2().state.padding + getConfig2().state.sizeUnit).attr("cy", getConfig2().state.padding + getConfig2().state.sizeUnit), "drawStartState");
21
21
  var drawDivider = /* @__PURE__ */ __name((g) => g.append("line").style("stroke", "grey").style("stroke-dasharray", "3").attr("x1", getConfig2().state.textHeight).attr("class", "divider").attr("x2", getConfig2().state.textHeight * 2).attr("y1", 0).attr("y2", 0), "drawDivider");
22
22
  var drawSimpleState = /* @__PURE__ */ __name((g, stateDef) => {
@@ -1,7 +1,7 @@
1
- import { s as styles_default, b as stateRenderer_v3_unified_default, a as stateDiagram_default, S as StateDB } from "./chunk-DI55MBZ5-DuGkdvte.js";
2
- import { a1 as __name } from "./router-GhGSLKfP.js";
3
- import "./chunk-55IACEB6-BUgBPiJd.js";
4
- import "./chunk-QN33PNHL-BM_oi8-e.js";
1
+ import { s as styles_default, b as stateRenderer_v3_unified_default, a as stateDiagram_default, S as StateDB } from "./chunk-DI55MBZ5-DbsR50vR.js";
2
+ import { _ as __name } from "./router-CYNdQEN4.js";
3
+ import "./chunk-55IACEB6-BZ0x-UQb.js";
4
+ import "./chunk-QN33PNHL-RXXHu7T0.js";
5
5
  import "../server.js";
6
6
  import "node:async_hooks";
7
7
  import "node:stream";
@@ -1,5 +1,5 @@
1
- import { a1 as __name, a2 as getConfig2, a4 as log, a3 as select, a$ as setupGraphViewbox, b0 as isDark, b1 as lighten, b2 as darken, at as __export, b3 as commonDb_exports, ao as clear } from "./router-GhGSLKfP.js";
2
- import { d as d3arc } from "./arc-P5FY7IYH.js";
1
+ import { _ as __name, M as getConfig2, S as log, O as select, aQ as setupGraphViewbox, aR as isDark, aS as lighten, aT as darken, ai as __export, aU as commonDb_exports, ad as clear } from "./router-CYNdQEN4.js";
2
+ import { d as d3arc } from "./arc-Fdc_l0PB.js";
3
3
  import "../server.js";
4
4
  import "node:async_hooks";
5
5
  import "node:stream";
@@ -1,6 +1,6 @@
1
- import { h as createTreemapServices } from "./mermaid-parser.core-CKKZ1VFr.js";
2
- import { T } from "./mermaid-parser.core-CKKZ1VFr.js";
3
- import "./router-GhGSLKfP.js";
1
+ import { h as createTreemapServices } from "./mermaid-parser.core-Cx17C8XR.js";
2
+ import { T } from "./mermaid-parser.core-Cx17C8XR.js";
3
+ import "./router-CYNdQEN4.js";
4
4
  import "../server.js";
5
5
  import "node:async_hooks";
6
6
  import "node:stream";
@@ -12,9 +12,9 @@ import "node:stream/web";
12
12
  import "node:process";
13
13
  import "node:path";
14
14
  import "node:url";
15
- import "./_baseUniq-DeF47vVO.js";
16
- import "./_basePickBy-C7CNOUDi.js";
17
- import "./clone-BXHuGM8i.js";
15
+ import "./_baseUniq-BJI4qneQ.js";
16
+ import "./_basePickBy-CTks6QXq.js";
17
+ import "./clone-Bjcb6OQr.js";
18
18
  import "path";
19
19
  import "os";
20
20
  import "net";
@@ -0,0 +1,23 @@
1
+ import { j as jsxRuntimeExports } from "../server.js";
2
+ import { R as Route, a as Navigate } from "./router-CYNdQEN4.js";
3
+ import "node:async_hooks";
4
+ import "node:stream";
5
+ import "util";
6
+ import "crypto";
7
+ import "async_hooks";
8
+ import "stream";
9
+ import "node:stream/web";
10
+ import "node:process";
11
+ import "node:path";
12
+ import "node:url";
13
+ function WorkspaceNotFoundRedirect() {
14
+ const {
15
+ workspaceId
16
+ } = Route.useParams();
17
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Navigate, { to: "/workspace/$workspaceId", params: {
18
+ workspaceId
19
+ }, replace: true });
20
+ }
21
+ export {
22
+ WorkspaceNotFoundRedirect as notFoundComponent
23
+ };
@@ -1,7 +1,6 @@
1
- import { j as jsxRuntimeExports, r as reactExports, u as useRouterState, O as Outlet } from "../server.js";
2
- import { be as MessageSquare, bf as GitCompare, bg as FolderOpen, bh as Route, u as useIsDesktop, bi as useDashboardStore, i as isDesktop, f as useNavigate, t as trpc, bj as DesktopDragRegion, bk as ArrowLeft, bl as QuickOpenDialog, bm as SearchFilesDialog, bn as useDiffTarget } from "./router-GhGSLKfP.js";
3
- import { S as SquareTerminal } from "./square-terminal-cghvb5Il.js";
4
- import { S as SessionListContext, A as AgentSwitcherContext } from "./useSessionListContext-D_vX6E2e.js";
1
+ import { j as jsxRuntimeExports, r as reactExports } from "../server.js";
2
+ import { bI as MessageSquare, bN as GitCompare, bO as FolderOpen, R as Route, bJ as useIsDesktop, bP as useDashboardStore, bM as isDesktop, bQ as useNavigate, p as trpc, bR as DesktopDragRegion, bS as ArrowLeft, bT as DiffView, bU as CodeBrowserView, bV as QuickOpenDialog, bW as SearchFilesDialog, bX as useDiffTarget, bY as useSettingsQuery, bZ as agentTypeSupportsSessionListing, b_ as ChatView } from "./router-CYNdQEN4.js";
3
+ import { S as SquareTerminal } from "./square-terminal-gVSeBp7-.js";
5
4
  import "node:async_hooks";
6
5
  import "node:stream";
7
6
  import "util";
@@ -18,64 +17,48 @@ const tabs = [
18
17
  { id: "code", label: "Files", icon: FolderOpen },
19
18
  { id: "terminal", label: "Terminal", icon: SquareTerminal }
20
19
  ];
21
- function WorkspaceTabNav({
22
- activeTab,
23
- onTabChange,
24
- tabHrefs,
25
- diffFileCount
26
- }) {
20
+ function WorkspaceTabNav({ activeTab, onTabChange, diffFileCount }) {
27
21
  return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex shrink-0 border-b border-border", children: tabs.map((tab) => {
28
22
  const Icon = tab.icon;
29
23
  const isActive = activeTab === tab.id;
30
24
  const badge = tab.id === "diff" && diffFileCount != null && diffFileCount > 0;
31
- const href = tabHrefs?.[tab.id];
32
25
  const className = `flex flex-1 items-center justify-center gap-1.5 py-2.5 text-sm font-medium transition-colors ${isActive ? "border-b-2 border-foreground text-foreground" : "text-muted-foreground hover:text-foreground"}`;
33
- const content = /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
34
- /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, { className: "size-4" }),
35
- badge && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "inline-flex h-5 min-w-5 items-center justify-center rounded-full bg-blue-500/20 text-blue-600 dark:text-blue-400 px-1.5 text-xs font-medium", children: diffFileCount })
36
- ] });
37
- if (href) {
38
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
39
- "a",
40
- {
41
- href,
42
- className,
43
- "aria-label": tab.label,
44
- title: tab.label,
45
- children: content
46
- },
47
- tab.id
48
- );
49
- }
50
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
26
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(
51
27
  "button",
52
28
  {
53
29
  type: "button",
54
- onClick: () => onTabChange?.(tab.id),
30
+ onClick: () => onTabChange(tab.id),
55
31
  className,
56
32
  "aria-label": tab.label,
57
33
  title: tab.label,
58
- children: content
34
+ children: [
35
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, { className: "size-4" }),
36
+ badge && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "inline-flex h-5 min-w-5 items-center justify-center rounded-full bg-blue-500/20 text-blue-600 dark:text-blue-400 px-1.5 text-xs font-medium", children: diffFileCount })
37
+ ]
59
38
  },
60
39
  tab.id
61
40
  );
62
41
  }) });
63
42
  }
64
- const DiffStatsContext = reactExports.createContext({
65
- diffStats: null,
66
- setDiffStats: () => {
43
+ const AgentSwitcherContext = reactExports.createContext({
44
+ chatKey: 0,
45
+ setTaskRunning: () => {
67
46
  }
68
47
  });
69
- function useDiffStatsContext() {
70
- return reactExports.useContext(DiffStatsContext);
48
+ function useAgentSwitcherContext() {
49
+ return reactExports.useContext(AgentSwitcherContext);
71
50
  }
72
- const FindInFileContext = reactExports.createContext({
73
- setFindInFile: () => {
51
+ const SessionListContext = reactExports.createContext({
52
+ showSessionList: false,
53
+ setShowSessionList: () => {
74
54
  }
75
55
  });
76
- function useFindInFileContext() {
77
- return reactExports.useContext(FindInFileContext);
56
+ function useSessionListContext() {
57
+ return reactExports.useContext(SessionListContext);
78
58
  }
59
+ const DockviewTerminalContainer = reactExports.lazy(() => import("./DockviewTerminalContainer-CC7i0yMZ.js").then((m) => ({
60
+ default: m.DockviewTerminalContainer
61
+ })));
79
62
  function useAppHeight() {
80
63
  const [height, setHeight] = reactExports.useState(null);
81
64
  const [offsetTop, setOffsetTop] = reactExports.useState(0);
@@ -104,16 +87,6 @@ function useAppHeight() {
104
87
  offsetTop
105
88
  };
106
89
  }
107
- function useActiveTab(workspaceId) {
108
- const pathname = useRouterState({
109
- select: (s) => s.location.pathname
110
- });
111
- const prefix = `/workspace/${workspaceId}`;
112
- if (pathname.startsWith(`${prefix}/changes`)) return "diff";
113
- if (pathname.startsWith(`${prefix}/code`)) return "code";
114
- if (pathname.startsWith(`${prefix}/terminal`)) return "terminal";
115
- return "chat";
116
- }
117
90
  function useDiffFileCount(workspaceId) {
118
91
  const {
119
92
  diffMode,
@@ -149,10 +122,6 @@ function WorkspaceLayout() {
149
122
  const isWideScreen = useIsDesktop();
150
123
  const useDesktopLayout = isWideScreen || isDesktop;
151
124
  const [hydrated, setHydrated] = reactExports.useState(false);
152
- const [diffStats, setDiffStats] = reactExports.useState(null);
153
- const pathname = useRouterState({
154
- select: (s) => s.location.pathname
155
- });
156
125
  reactExports.useLayoutEffect(() => {
157
126
  setHydrated(true);
158
127
  }, []);
@@ -167,38 +136,19 @@ function WorkspaceLayout() {
167
136
  reactExports.useEffect(() => {
168
137
  clearNeedsAttention(decoded);
169
138
  }, [decoded, clearNeedsAttention]);
170
- reactExports.useEffect(() => {
171
- const prefix = `/workspace/${workspaceId}`;
172
- if (pathname.startsWith(prefix)) {
173
- const subPath = pathname.slice(prefix.length);
174
- try {
175
- sessionStorage.setItem(`band-tab:${decoded}`, subPath);
176
- } catch {
177
- }
178
- }
179
- }, [pathname, workspaceId, decoded]);
180
- return /* @__PURE__ */ jsxRuntimeExports.jsx(DiffStatsContext.Provider, { value: {
181
- diffStats,
182
- setDiffStats
183
- }, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: `h-full ${hydrated ? "" : "invisible"}`, children: useDesktopLayout ? /* @__PURE__ */ jsxRuntimeExports.jsx(DesktopWorkspaceLayout, { workspaceId: decoded, encodedId: workspaceId }) : /* @__PURE__ */ jsxRuntimeExports.jsx(MobileWorkspaceLayout, { workspaceId: decoded, encodedId: workspaceId }) }) });
184
- }
185
- function DesktopWorkspaceLayout({
186
- workspaceId: _workspaceId,
187
- encodedId: _encodedId
188
- }) {
189
- return null;
139
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: `h-full ${hydrated ? "" : "invisible"}`, children: useDesktopLayout ? null : /* @__PURE__ */ jsxRuntimeExports.jsx(MobileWorkspaceLayout, { workspaceId: decoded }, decoded) });
190
140
  }
191
141
  function MobileWorkspaceLayout({
192
- workspaceId,
193
- encodedId
142
+ workspaceId
194
143
  }) {
195
- const activeTab = useActiveTab(encodedId);
196
- const diffFileCount = useDiffFileCount(workspaceId);
197
144
  const navigate = useNavigate();
198
145
  const {
199
146
  height: appHeight,
200
147
  offsetTop: appOffsetTop
201
148
  } = useAppHeight();
149
+ const diffFileCount = useDiffFileCount(workspaceId);
150
+ const [activeTab, setActiveTab] = reactExports.useState("chat");
151
+ const [currentFile, setCurrentFile] = reactExports.useState(void 0);
202
152
  const [showSessionList, setShowSessionList] = reactExports.useState(false);
203
153
  const [agents, setAgents] = reactExports.useState([]);
204
154
  const [currentAgentId, setCurrentAgentId] = reactExports.useState("");
@@ -242,14 +192,9 @@ function MobileWorkspaceLayout({
242
192
  const [quickOpenQuery, setQuickOpenQuery] = reactExports.useState(void 0);
243
193
  const [searchFilesOpen, setSearchFilesOpen] = reactExports.useState(false);
244
194
  const handleOpenFile = reactExports.useCallback((filename) => {
245
- navigate({
246
- to: "/workspace/$workspaceId/code/$",
247
- params: {
248
- workspaceId: encodedId,
249
- _splat: filename
250
- }
251
- });
252
- }, [navigate, encodedId]);
195
+ setCurrentFile(filename);
196
+ setActiveTab("code");
197
+ }, []);
253
198
  reactExports.useEffect(() => {
254
199
  const handler = (e) => {
255
200
  const detail = e.detail;
@@ -292,13 +237,10 @@ function MobileWorkspaceLayout({
292
237
  const handleSetShowSessionList = reactExports.useCallback((show) => {
293
238
  setShowSessionList(show);
294
239
  }, []);
240
+ const handleSelectFile = reactExports.useCallback((filePath) => {
241
+ setCurrentFile(filePath ?? void 0);
242
+ }, []);
295
243
  const currentAgent = agents.find((a) => a.id === currentAgentId);
296
- const tabHrefs = {
297
- chat: `/workspace/${encodedId}`,
298
- diff: `/workspace/${encodedId}/changes`,
299
- code: `/workspace/${encodedId}/code`,
300
- terminal: `/workspace/${encodedId}/terminal`
301
- };
302
244
  return /* @__PURE__ */ jsxRuntimeExports.jsx(SessionListContext.Provider, { value: {
303
245
  showSessionList,
304
246
  setShowSessionList: handleSetShowSessionList
@@ -319,8 +261,13 @@ function MobileWorkspaceLayout({
319
261
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ jsxRuntimeExports.jsx("h1", { className: "truncate text-center text-sm font-semibold", children: workspaceId }) }),
320
262
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { "aria-hidden": "true", className: "size-7 shrink-0" })
321
263
  ] }),
322
- /* @__PURE__ */ jsxRuntimeExports.jsx(WorkspaceTabNav, { activeTab, tabHrefs, diffFileCount }),
323
- /* @__PURE__ */ jsxRuntimeExports.jsx("main", { className: "flex min-h-0 flex-1 flex-col", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Outlet, {}) }),
264
+ /* @__PURE__ */ jsxRuntimeExports.jsx(WorkspaceTabNav, { activeTab, onTabChange: setActiveTab, diffFileCount }),
265
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("main", { className: "flex min-h-0 flex-1 flex-col", children: [
266
+ activeTab === "chat" && /* @__PURE__ */ jsxRuntimeExports.jsx(MobileChatContent, { workspaceId }),
267
+ activeTab === "diff" && /* @__PURE__ */ jsxRuntimeExports.jsx(DiffView, { workspaceId, active: true, onOpenFile: handleOpenFile }),
268
+ activeTab === "code" && /* @__PURE__ */ jsxRuntimeExports.jsx(CodeBrowserView, { workspaceId, file: currentFile, onSelectFile: handleSelectFile }),
269
+ activeTab === "terminal" && /* @__PURE__ */ jsxRuntimeExports.jsx(reactExports.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntimeExports.jsx(DockviewTerminalContainer, { workspaceId, visible: true }) })
270
+ ] }),
324
271
  /* @__PURE__ */ jsxRuntimeExports.jsx(QuickOpenDialog, { workspaceId, open: quickOpenOpen, onOpenChange: (open) => {
325
272
  setQuickOpenOpen(open);
326
273
  if (!open) setQuickOpenQuery(void 0);
@@ -328,8 +275,89 @@ function MobileWorkspaceLayout({
328
275
  /* @__PURE__ */ jsxRuntimeExports.jsx(SearchFilesDialog, { workspaceId, open: searchFilesOpen, onOpenChange: setSearchFilesOpen, onOpenFile: handleOpenFile })
329
276
  ] }) }) });
330
277
  }
278
+ function MobileChatContent({
279
+ workspaceId
280
+ }) {
281
+ const {
282
+ settings
283
+ } = useSettingsQuery();
284
+ const [chatId, setChatId] = reactExports.useState(void 0);
285
+ const [supportsSessionListing, setSupportsSessionListing] = reactExports.useState(false);
286
+ const [initialSessionId, setInitialSessionId] = reactExports.useState(void 0);
287
+ const [sessionQueryDone, setSessionQueryDone] = reactExports.useState(false);
288
+ const [sessionPaneKey, setSessionPaneKey] = reactExports.useState(0);
289
+ const {
290
+ showSessionList,
291
+ setShowSessionList
292
+ } = useSessionListContext();
293
+ const {
294
+ chatKey,
295
+ setTaskRunning,
296
+ agentType,
297
+ codingAgentId,
298
+ switchAgent,
299
+ newSessionRef
300
+ } = useAgentSwitcherContext();
301
+ reactExports.useEffect(() => {
302
+ let cancelled = false;
303
+ trpc.chats.list.query({
304
+ workspaceId
305
+ }).then((data) => {
306
+ if (cancelled) return;
307
+ if (data.chats.length > 0) {
308
+ setChatId(data.chats[0].id);
309
+ } else {
310
+ return trpc.chats.create.mutate({
311
+ workspaceId
312
+ }).then((result) => {
313
+ if (!cancelled) setChatId(result.chat.id);
314
+ });
315
+ }
316
+ }).catch((err) => console.error("[MobileChatContent] error resolving chat:", err));
317
+ return () => {
318
+ cancelled = true;
319
+ };
320
+ }, [workspaceId]);
321
+ reactExports.useEffect(() => {
322
+ if (!chatId) return;
323
+ let cancelled = false;
324
+ trpc.chats.get.query({
325
+ chatId
326
+ }).then((data) => {
327
+ if (cancelled) return;
328
+ const chat = data?.chat;
329
+ const agentId = chat?.agent ?? settings.defaultCodingAgent;
330
+ const found = agentId ? settings.codingAgents?.find((a) => a.id === agentId) : void 0;
331
+ setSupportsSessionListing(agentTypeSupportsSessionListing(found?.type));
332
+ if (chat?.activeSessionId) setInitialSessionId(chat.activeSessionId);
333
+ setSessionQueryDone(true);
334
+ }).catch((err) => {
335
+ if (!cancelled) setSessionQueryDone(true);
336
+ console.error("[chats.get] error:", err);
337
+ });
338
+ return () => {
339
+ cancelled = true;
340
+ };
341
+ }, [workspaceId, chatId, chatKey, settings]);
342
+ const onSwitchSession = reactExports.useCallback(async (sessionId) => {
343
+ if (!chatId) return;
344
+ try {
345
+ await trpc.chats.setActiveSession.mutate({
346
+ workspaceId,
347
+ chatId,
348
+ sessionId: sessionId ?? void 0
349
+ });
350
+ } catch (err) {
351
+ console.error("[MobileChatContent] error persisting active session:", err);
352
+ return;
353
+ }
354
+ setInitialSessionId(sessionId);
355
+ setSessionQueryDone(false);
356
+ setSessionPaneKey((k) => k + 1);
357
+ }, [workspaceId, chatId]);
358
+ if (!chatId) return null;
359
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex min-h-0 flex-1 flex-col", children: /* @__PURE__ */ jsxRuntimeExports.jsx(ChatView, { chatKey, workspaceId, chatId, workspaceName: workspaceId, supportsSessionListing, initialSessionId, sessionQueryDone, showSessionList, onShowSessionListChange: setShowSessionList, onStreamingChange: setTaskRunning, onNewSessionRef: newSessionRef, onSwitchSession, agentType, codingAgentId, onSwitchAgent: switchAgent }, `${chatKey}-${sessionPaneKey}`) });
360
+ }
331
361
  export {
332
- WorkspaceLayout as component,
333
- useDiffStatsContext,
334
- useFindInFileContext
362
+ WorkspaceLayout as component
335
363
  };
@@ -1,8 +1,8 @@
1
1
  var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
2
- import { Z as setAccDescription, _ as getAccDescription, aj as getDiagramTitle, ai as setDiagramTitle, $ as getAccTitle, a0 as setAccTitle, a1 as __name, a4 as log, az as selectSvgElement, a5 as configureSvgSize, ao as clear, ax as getConfig, a8 as sanitizeText, av as cleanAndMerge, aw as defaultConfig_default, aQ as getThemeVariables3, bY as computeDimensionOfText, aY as line } from "./router-GhGSLKfP.js";
2
+ import { F as setAccDescription, G as getAccDescription, a8 as getDiagramTitle, a7 as setDiagramTitle, H as getAccTitle, J as setAccTitle, _ as __name, S as log, ao as selectSvgElement, U as configureSvgSize, ad as clear, am as getConfig, Y as sanitizeText, ak as cleanAndMerge, al as defaultConfig_default, aF as getThemeVariables3, bD as computeDimensionOfText, aN as line } from "./router-CYNdQEN4.js";
3
3
  import { i as initRange } from "./init-ZxktEp_H.js";
4
4
  import { o as ordinal } from "./ordinal-CxptdPJm.js";
5
- import { l as linear } from "./linear-BJgoq5J4.js";
5
+ import { l as linear } from "./linear-CP3xC85V.js";
6
6
  import "../server.js";
7
7
  import "node:async_hooks";
8
8
  import "node:stream";
@@ -19380,7 +19380,7 @@ function getResponse() {
19380
19380
  return event.res;
19381
19381
  }
19382
19382
  async function getStartManifest(matchedRoutes) {
19383
- const { tsrStartManifest } = await import("./assets/_tanstack-start-manifest_v-BNCQ-izx.js");
19383
+ const { tsrStartManifest } = await import("./assets/_tanstack-start-manifest_v-CfuSyuIp.js");
19384
19384
  const startManifest = tsrStartManifest();
19385
19385
  const rootRoute = startManifest.routes[rootRouteId] = startManifest.routes[rootRouteId] || {};
19386
19386
  rootRoute.assets = rootRoute.assets || [];
@@ -19956,7 +19956,7 @@ let entriesPromise;
19956
19956
  let baseManifestPromise;
19957
19957
  let cachedFinalManifestPromise;
19958
19958
  async function loadEntries() {
19959
- const routerEntry = await import("./assets/router-GhGSLKfP.js").then((n2) => n2.dp);
19959
+ const routerEntry = await import("./assets/router-CYNdQEN4.js").then((n2) => n2.dk);
19960
19960
  const startEntry = await import("./assets/start-HYkvq4Ni.js");
19961
19961
  return { startEntry, routerEntry };
19962
19962
  }