@cleocode/cleo 2026.9.7 → 2026.9.10

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 (691) hide show
  1. package/dist/cli/index.js +3873 -2234
  2. package/package.json +14 -13
  3. package/scripts/check-cleo-tarball-size.mjs +105 -0
  4. package/scripts/copy-studio-dist.mjs +33 -9
  5. package/studio-dist/client/_app/immutable/chunks/{wI_OOyoh.js → BB7zPpV2.js} +1 -1
  6. package/studio-dist/client/_app/immutable/chunks/{D8NsLz6i.js → BOnrCZaR.js} +1 -1
  7. package/studio-dist/client/_app/immutable/chunks/{eK8hf4s7.js → BSRBuVG3.js} +1 -1
  8. package/studio-dist/client/_app/immutable/chunks/C6jhAnil.js +1 -0
  9. package/studio-dist/client/_app/immutable/chunks/C87Q3uxm.js +1 -0
  10. package/studio-dist/client/_app/immutable/chunks/{DVHIxkgs.js → CLZBEpLY.js} +1 -1
  11. package/studio-dist/client/_app/immutable/chunks/{CqF5Lomf.js → CTLGzgdN.js} +1 -1
  12. package/studio-dist/client/_app/immutable/chunks/{o1PZ6Kzq.js → CY3heNub.js} +1 -1
  13. package/studio-dist/client/_app/immutable/chunks/{RptFUp2P.js → Cge6qiwc.js} +1 -1
  14. package/studio-dist/client/_app/immutable/chunks/{BRgWBQlV.js → CnwXLaZJ.js} +1 -1
  15. package/studio-dist/client/_app/immutable/chunks/{Bxz2A0ZC.js → DEH43YwF.js} +1 -1
  16. package/studio-dist/client/_app/immutable/chunks/DGftG5oL.js +3 -0
  17. package/studio-dist/client/_app/immutable/chunks/DX_JOBSO.js +1 -0
  18. package/studio-dist/client/_app/immutable/chunks/{CEqOYim7.js → DZrdToAH.js} +1 -1
  19. package/studio-dist/client/_app/immutable/chunks/EZwHPWle.js +2 -0
  20. package/studio-dist/client/_app/immutable/chunks/cWVw9W0E.js +3 -0
  21. package/studio-dist/client/_app/immutable/chunks/{B9psmq5-.js → rB_71s8h.js} +1 -1
  22. package/studio-dist/client/_app/immutable/chunks/{JPJd4fEI.js → rUtW7Hx6.js} +1 -1
  23. package/studio-dist/client/_app/immutable/entry/app.tvu3-wbp.js +2 -0
  24. package/studio-dist/client/_app/immutable/entry/start.BS-rpdjH.js +1 -0
  25. package/studio-dist/client/_app/immutable/nodes/{0.CZzEEyVh.js → 0.DMP7swbx.js} +1 -1
  26. package/studio-dist/client/_app/immutable/nodes/{1.Bj3Opbua.js → 1.CYZMFpIp.js} +1 -1
  27. package/studio-dist/client/_app/immutable/nodes/{10.xe_Mc2Ko.js → 10.3rxHNnSx.js} +1 -1
  28. package/studio-dist/client/_app/immutable/nodes/{11.DuKPA7JD.js → 11.B6jWv3Kz.js} +1 -1
  29. package/studio-dist/client/_app/immutable/nodes/{12.BoZ_QrUS.js → 12.BrDHeTEq.js} +1 -1
  30. package/studio-dist/client/_app/immutable/nodes/{13.DFJiUiv8.js → 13.CE5bd4JV.js} +1 -1
  31. package/studio-dist/client/_app/immutable/nodes/{14.eaAlFU4w.js → 14.DgXD2LRx.js} +1 -1
  32. package/studio-dist/client/_app/immutable/nodes/{15.BfXgiwMC.js → 15.Cz1KI9Fv.js} +1 -1
  33. package/studio-dist/client/_app/immutable/nodes/{16.mEwy9cqh.js → 16.K9wYQPhb.js} +1 -1
  34. package/studio-dist/client/_app/immutable/nodes/{17.DP2QtQGn.js → 17.CtUmdfMg.js} +1 -1
  35. package/studio-dist/client/_app/immutable/nodes/{18.Bu0054sX.js → 18.mtosd0sL.js} +1 -1
  36. package/studio-dist/client/_app/immutable/nodes/{19.UWt6QbCm.js → 19.su55K8y_.js} +1 -1
  37. package/studio-dist/client/_app/immutable/nodes/{2.y5jKpHiR.js → 2.mqgFVWFQ.js} +1 -1
  38. package/studio-dist/client/_app/immutable/nodes/{20.B1AIHdkP.js → 20.NJuHLxuS.js} +1 -1
  39. package/studio-dist/client/_app/immutable/nodes/{21.CpAN71H8.js → 21.BhwhdQCq.js} +1 -1
  40. package/studio-dist/client/_app/immutable/nodes/{22.CrYKrN4c.js → 22.BmJEWwER.js} +1 -1
  41. package/studio-dist/client/_app/immutable/nodes/{23.pGRaHQjq.js → 23.CAVIJEH-.js} +1 -1
  42. package/studio-dist/client/_app/immutable/nodes/{24.BUoUu37z.js → 24.CMuXs5Sy.js} +1 -1
  43. package/studio-dist/client/_app/immutable/nodes/25.DhMBJYAo.js +39 -0
  44. package/studio-dist/client/_app/immutable/nodes/26.CJ4FA5FS.js +1 -0
  45. package/studio-dist/client/_app/immutable/nodes/{28.DcmYM7lb.js → 28.D64RBcfs.js} +1 -1
  46. package/studio-dist/client/_app/immutable/nodes/{29.lbHbMqNO.js → 29.yfuBeH1x.js} +1 -1
  47. package/studio-dist/client/_app/immutable/nodes/{3.Dyir4xXj.js → 3.y115j1d5.js} +1 -1
  48. package/studio-dist/client/_app/immutable/nodes/{30.DXj0Wm2A.js → 30.1WUv5bh9.js} +1 -1
  49. package/studio-dist/client/_app/immutable/nodes/4.D6vXYBoQ.js +1 -0
  50. package/studio-dist/client/_app/immutable/nodes/{5.VWSdP7oc.js → 5.hjw2O-4e.js} +1 -1
  51. package/studio-dist/client/_app/immutable/nodes/{6.Dl-XLwOj.js → 6.CAoDfDt6.js} +1 -1
  52. package/studio-dist/client/_app/immutable/nodes/{7.CFuC5L-y.js → 7.CLgPSQ8Z.js} +1 -1
  53. package/studio-dist/client/_app/immutable/nodes/{8.BCJ0DhOb.js → 8.zuaO1Hik.js} +1 -1
  54. package/studio-dist/client/_app/immutable/nodes/{9.Bq4SUzL9.js → 9.Cdsd85m2.js} +1 -1
  55. package/studio-dist/client/_app/version.json +1 -1
  56. package/studio-dist/server/chunks/0-BQvtFOrC.js +41 -0
  57. package/studio-dist/server/chunks/1-Bx2_yoiK.js +9 -0
  58. package/studio-dist/server/chunks/{10-DvOD4ksa.js → 10-CYLc3d5x.js} +3 -3
  59. package/studio-dist/server/chunks/{11-DMnBZ02H.js → 11-DcIYR5vm.js} +3 -3
  60. package/studio-dist/server/chunks/{12-CCyRyRWX.js → 12-WE1u104t.js} +3 -3
  61. package/studio-dist/server/chunks/{13-Dx1c3a_X.js → 13-joBDoxhK.js} +3 -3
  62. package/studio-dist/server/chunks/{14-Bo-dTCaZ.js → 14-Doj5F4uJ.js} +3 -3
  63. package/studio-dist/server/chunks/{15-BvUNl3KL.js → 15-nQTeHGD1.js} +3 -3
  64. package/studio-dist/server/chunks/{16-De6EzPSa.js → 16-CcTN0e8k.js} +5 -4
  65. package/studio-dist/server/chunks/{17-CZNsiZhi.js → 17-DWiFnzES.js} +10 -93
  66. package/studio-dist/server/chunks/{18-CbxxjZox.js → 18-Dcc9GnPo.js} +5 -4
  67. package/studio-dist/server/chunks/{19-DqHyladS.js → 19-BAQHPrMB.js} +3 -3
  68. package/studio-dist/server/chunks/{2-COvmA-ZA.js → 2-DXSVVaej.js} +10 -93
  69. package/studio-dist/server/chunks/20-DfQlGHPW.js +57 -0
  70. package/studio-dist/server/chunks/{21-DXK9ptAC.js → 21-qhGjkW41.js} +4 -31
  71. package/studio-dist/server/chunks/{22-DD5CLWJC.js → 22-Byy16hFA.js} +3 -3
  72. package/studio-dist/server/chunks/23-CZpFrGp4.js +97 -0
  73. package/studio-dist/server/chunks/24-EEysaT9T.js +67 -0
  74. package/studio-dist/server/chunks/{25-CAg6Xcmn.js → 25-CgiYn70L.js} +15 -96
  75. package/studio-dist/server/chunks/{26-_nfVTvNi.js → 26-Cfd6BaUb.js} +12 -93
  76. package/studio-dist/server/chunks/{27-C9edghG4.js → 27-Cqzlh9gZ.js} +3 -2
  77. package/studio-dist/server/chunks/{28-VemTJGyc.js → 28-DeYe2rpm.js} +8 -62
  78. package/studio-dist/server/chunks/{29-CXP-m29t.js → 29-6pjLM0Z1.js} +10 -93
  79. package/studio-dist/server/chunks/{3-B8KhfvHp.js → 3-E_fWDAkq.js} +9 -25
  80. package/studio-dist/server/chunks/{30-QiM1S4cJ.js → 30-Dw317sSW.js} +10 -93
  81. package/studio-dist/server/chunks/{31-BwdY9NnB.js → 31-Q4kHbp8j.js} +3 -2
  82. package/studio-dist/server/chunks/{4-CSaG4HjO.js → 4-C9BMSh4K.js} +4 -3
  83. package/studio-dist/server/chunks/{5-i5ry4y3C.js → 5-C0CF4WKG.js} +3 -3
  84. package/studio-dist/server/chunks/{6-DR1GWBMT.js → 6-BWyOJust.js} +3 -3
  85. package/studio-dist/server/chunks/{7-DSNwn3aQ.js → 7-CK4MK5gy.js} +3 -3
  86. package/studio-dist/server/chunks/{8-Bj0bx07K.js → 8-CiX7Xk9k.js} +3 -3
  87. package/studio-dist/server/chunks/{9-B3Tz0mZq.js → 9-Be5118w4.js} +3 -3
  88. package/studio-dist/server/chunks/{HeroHeader-v4Q9vaGr.js → HeroHeader-BrGN5WPw.js} +2 -2
  89. package/studio-dist/server/chunks/{Sparkline-BJ-GuhRd.js → Sparkline-DU_NVxz9.js} +2 -2
  90. package/studio-dist/server/chunks/{StatBlock-DHJMmOCx.js → StatBlock-jNsxycS1.js} +2 -2
  91. package/studio-dist/server/chunks/{Tabs-DzG6Bn9a.js → Tabs-DQKDflnT.js} +2 -2
  92. package/studio-dist/server/chunks/_dispatch-DTWViLGL.js +145 -0
  93. package/studio-dist/server/chunks/{_layout.svelte-BEIGQcIv.js → _layout.svelte-CL6GfET2.js} +7 -9
  94. package/studio-dist/server/chunks/{_page.svelte-al08ovKm.js → _page.svelte-6iMiGR11.js} +5 -5
  95. package/studio-dist/server/chunks/{_page.svelte-Byz2djto.js → _page.svelte-B-YXGvAW.js} +5 -5
  96. package/studio-dist/server/chunks/{_page.svelte-tYN7_LXI.js → _page.svelte-B5E6RqVb.js} +9 -11
  97. package/studio-dist/server/chunks/{_page.svelte-UYiF7YBK.js → _page.svelte-BCRyjlk2.js} +5 -5
  98. package/studio-dist/server/chunks/{_page.svelte-CCoTp89s.js → _page.svelte-BoYafqft.js} +3 -3
  99. package/studio-dist/server/chunks/{_page.svelte-nzffIbBP.js → _page.svelte-C7Wm6_HB.js} +3 -3
  100. package/studio-dist/server/chunks/{_page.svelte-C_VSL8NW.js → _page.svelte-Cgqt7ucn.js} +13 -71
  101. package/studio-dist/server/chunks/{_page.svelte-CophUar3.js → _page.svelte-CqI6hqMm.js} +5 -5
  102. package/studio-dist/server/chunks/{_page.svelte-BgwL2Gyu.js → _page.svelte-CvQ2rZZ1.js} +11 -13
  103. package/studio-dist/server/chunks/{_page.svelte-l4Z_xjl9.js → _page.svelte-CvTyJEyS.js} +9 -11
  104. package/studio-dist/server/chunks/{_page.svelte-DOWw416I.js → _page.svelte-CvzAttO9.js} +11 -13
  105. package/studio-dist/server/chunks/{_page.svelte-DYNorA0S.js → _page.svelte-Cx9Ptecp.js} +10 -67
  106. package/studio-dist/server/chunks/{_page.svelte-Wfx7ww_h.js → _page.svelte-Cx9dPjsT.js} +11 -13
  107. package/studio-dist/server/chunks/{_page.svelte-2cgtvHwW.js → _page.svelte-DGN5j-At.js} +13 -71
  108. package/studio-dist/server/chunks/{_page.svelte-BVVTrzTL.js → _page.svelte-DaheDIRs.js} +5 -5
  109. package/studio-dist/server/chunks/{_page.svelte-M5D2QnMS.js → _page.svelte-Dm8y5a8S.js} +10 -67
  110. package/studio-dist/server/chunks/{_page.svelte-B_pq-Z98.js → _page.svelte-DqXxyNsF.js} +7 -7
  111. package/studio-dist/server/chunks/{_page.svelte-C3aIui4o.js → _page.svelte-DqsbnAhk.js} +4 -4
  112. package/studio-dist/server/chunks/{_page.svelte-ksTJUXce.js → _page.svelte-Dt0_c1T-.js} +3 -3
  113. package/studio-dist/server/chunks/{_page.svelte-bGhsrIjS.js → _page.svelte-Dv6iwhu7.js} +3 -3
  114. package/studio-dist/server/chunks/{_page.svelte-BXyoMME1.js → _page.svelte-GPiHej3P.js} +5 -5
  115. package/studio-dist/server/chunks/{_page.svelte-CYDjW1R0.js → _page.svelte-LuRm8XxE.js} +5 -5
  116. package/studio-dist/server/chunks/{_page.svelte-Clbkk1gm.js → _page.svelte-Z7nL9SC-.js} +8 -9
  117. package/studio-dist/server/chunks/{_page.svelte-DUWbZjC7.js → _page.svelte-_kntHS6v.js} +4 -4
  118. package/studio-dist/server/chunks/{_page.svelte-BIlhmugm.js → _page.svelte-eiomv6Pa.js} +11 -13
  119. package/studio-dist/server/chunks/{_page.svelte-9OQphlnm.js → _page.svelte-jXJbd8Mx.js} +14 -69
  120. package/studio-dist/server/chunks/{_page.svelte-CHzXuw2Q.js → _page.svelte-me5SUosG.js} +3 -3
  121. package/studio-dist/server/chunks/{_server.ts-DSzRdt1U.js → _server.ts--2m_U4SL.js} +11 -94
  122. package/studio-dist/server/chunks/{_server.ts-ujoDR2_g.js → _server.ts--sGLmBsz.js} +10 -92
  123. package/studio-dist/server/chunks/{_server.ts-k2fApwOp.js → _server.ts-0ukyuE0I.js} +5 -60
  124. package/studio-dist/server/chunks/_server.ts-1eW2mTeh.js +40 -0
  125. package/studio-dist/server/chunks/{_server.ts-Bfr4u3EP.js → _server.ts-3LzqLzt0.js} +10 -92
  126. package/studio-dist/server/chunks/_server.ts-40h9Y46Y.js +122 -0
  127. package/studio-dist/server/chunks/_server.ts-5euivmMj.js +38 -0
  128. package/studio-dist/server/chunks/{_server.ts-CShsBkeE.js → _server.ts-B0uoay97.js} +7 -23
  129. package/studio-dist/server/chunks/{_server.ts-hL92cV7Z.js → _server.ts-B5vYKkI6.js} +9 -63
  130. package/studio-dist/server/chunks/{_server.ts-_RJXtmfi.js → _server.ts-B8dTbPHd.js} +8 -23
  131. package/studio-dist/server/chunks/{_server.ts-C3Jo-ju8.js → _server.ts-BA8Xdegq.js} +10 -92
  132. package/studio-dist/server/chunks/_server.ts-BBClE0n9.js +54 -0
  133. package/studio-dist/server/chunks/{_server.ts-ZS1_yMwR.js → _server.ts-BDwMoyZ_.js} +6 -32
  134. package/studio-dist/server/chunks/{_server.ts-sv4pA808.js → _server.ts-BE-Uhx4N.js} +5 -46
  135. package/studio-dist/server/chunks/{_server.ts-DV6pzF-M.js → _server.ts-BSHADOUJ.js} +4 -3
  136. package/studio-dist/server/chunks/_server.ts-BcsqAqXt.js +67 -0
  137. package/studio-dist/server/chunks/_server.ts-Bl9tMqwZ.js +159 -0
  138. package/studio-dist/server/chunks/_server.ts-BlzDnRI0.js +51 -0
  139. package/studio-dist/server/chunks/{_server.ts-DnE0f-iC.js → _server.ts-BtuemCsf.js} +4 -3
  140. package/studio-dist/server/chunks/{_server.ts-BPcErnS0.js → _server.ts-C2nYqbd9.js} +10 -92
  141. package/studio-dist/server/chunks/{_server.ts-4p6cp9ke.js → _server.ts-C6IDM_3I.js} +10 -92
  142. package/studio-dist/server/chunks/_server.ts-C8Z32vuL.js +45 -0
  143. package/studio-dist/server/chunks/_server.ts-CBXyadsy.js +26 -0
  144. package/studio-dist/server/chunks/{_server.ts-Do9RIPRo.js → _server.ts-CE6h2ATE.js} +5 -32
  145. package/studio-dist/server/chunks/_server.ts-CH06JVqZ.js +65 -0
  146. package/studio-dist/server/chunks/_server.ts-CNqcws-M.js +29 -0
  147. package/studio-dist/server/chunks/{_server.ts-CJA1djzJ.js → _server.ts-CPf8necd.js} +8 -92
  148. package/studio-dist/server/chunks/{_server.ts-uUx7uT2Y.js → _server.ts-CYv5YuHd.js} +6 -43
  149. package/studio-dist/server/chunks/{_server.ts-B2E7fxo9.js → _server.ts-CZ5GZRWX.js} +6 -91
  150. package/studio-dist/server/chunks/{_server.ts-DSAv66wD.js → _server.ts-CbThsyhY.js} +4 -3
  151. package/studio-dist/server/chunks/{_server.ts-DgbY5EB3.js → _server.ts-CeQolQOK.js} +10 -92
  152. package/studio-dist/server/chunks/_server.ts-ChoGyX5C.js +61 -0
  153. package/studio-dist/server/chunks/_server.ts-CjJYkLJH.js +61 -0
  154. package/studio-dist/server/chunks/{_server.ts-lPlBUIJX.js → _server.ts-CtjArzxf.js} +5 -60
  155. package/studio-dist/server/chunks/{_server.ts-Cq60m8Pw.js → _server.ts-D3QWZwt_.js} +4 -3
  156. package/studio-dist/server/chunks/{_server.ts-CkoJ2HCW.js → _server.ts-D6wP5bCh.js} +10 -92
  157. package/studio-dist/server/chunks/{_server.ts-DwTRjS4y.js → _server.ts-D7JwQTun.js} +10 -93
  158. package/studio-dist/server/chunks/_server.ts-DKFJdXPK.js +97 -0
  159. package/studio-dist/server/chunks/_server.ts-DNAPGKEF.js +55 -0
  160. package/studio-dist/server/chunks/_server.ts-DQiTiY3E.js +78 -0
  161. package/studio-dist/server/chunks/{_server.ts-BT0Uq2yq.js → _server.ts-DUyeSXbV.js} +10 -92
  162. package/studio-dist/server/chunks/{_server.ts-DRVz9D-J.js → _server.ts-DY7BwZCv.js} +9 -24
  163. package/studio-dist/server/chunks/{_server.ts-Cz0zgaUV.js → _server.ts-D_E276ms.js} +3 -2
  164. package/studio-dist/server/chunks/{_server.ts-B5g3eScF.js → _server.ts-DgtmTAp5.js} +5 -60
  165. package/studio-dist/server/chunks/{_server.ts-CboRJY0Q.js → _server.ts-DhTKaw7h.js} +10 -63
  166. package/studio-dist/server/chunks/_server.ts-DqKBSCPT.js +31 -0
  167. package/studio-dist/server/chunks/{_server.ts-CpmMp5D8.js → _server.ts-DyXBNnRD.js} +4 -3
  168. package/studio-dist/server/chunks/_server.ts-DzjUpduu.js +25 -0
  169. package/studio-dist/server/chunks/{_server.ts-CGiAXy5i.js → _server.ts-Dznqw6Dg.js} +8 -23
  170. package/studio-dist/server/chunks/{_server.ts-tKMjUFUP.js → _server.ts-EVwS7UXb.js} +4 -3
  171. package/studio-dist/server/chunks/_server.ts-J17j25VG.js +62 -0
  172. package/studio-dist/server/chunks/{_server.ts-BdN4AJ6o.js → _server.ts-VQchZxXq.js} +10 -91
  173. package/studio-dist/server/chunks/{_server.ts-C4BcDGqS.js → _server.ts-XLV5SvjH.js} +7 -63
  174. package/studio-dist/server/chunks/_server.ts-jZgqFIJz.js +45 -0
  175. package/studio-dist/server/chunks/{_server.ts-Bw7A4zgb.js → _server.ts-lyiGGv7w.js} +5 -3
  176. package/studio-dist/server/chunks/{brain-CXR7ZT7S.js → brain-xt_NeshR.js} +2 -2
  177. package/studio-dist/server/chunks/cleo-home-_XIqkZaL.js +109 -0
  178. package/studio-dist/server/chunks/{cli-action-DQcaqcfn.js → cli-action-VJPEn1pY.js} +2 -2
  179. package/studio-dist/server/chunks/{client-CgX38JBu.js → client-D71MZ7Vi.js} +5 -6
  180. package/studio-dist/server/chunks/cluster-label-layer-CysRMvhi.js +6721 -0
  181. package/studio-dist/server/chunks/connections-CWLPjwBP.js +15 -0
  182. package/studio-dist/server/chunks/{connections2-mi7mZqJM.js → connections2-DHVs5ytW.js} +32 -19
  183. package/studio-dist/server/chunks/{dev-BNpEUZI3.js → dev-Br5zieNA.js} +2 -2
  184. package/studio-dist/server/chunks/dist-BzgWhfUR.js +18748 -0
  185. package/studio-dist/server/chunks/{error.svelte-CplNulnS.js → error.svelte-BIToUowC.js} +6 -8
  186. package/studio-dist/server/chunks/{explorer-loader-BN_mkt3_.js → explorer-loader-B_uCSs9_.js} +2 -2
  187. package/studio-dist/server/chunks/exports-Dg-gdPPq.js +124 -0
  188. package/studio-dist/server/chunks/{hooks.server-DBsyphiX.js → hooks.server-CWBRp8NI.js} +10 -93
  189. package/studio-dist/server/chunks/{http-CRTZe306.js → http-DPU3HHl2.js} +3 -4
  190. package/studio-dist/server/chunks/{index-server-DocJvixA.js → index-server-BgfA6C0S.js} +17 -4
  191. package/studio-dist/server/chunks/{internal-D6eWgsHJ.js → internal-DPnIJYMs.js} +56 -92
  192. package/studio-dist/server/chunks/{memory2-Cgc_4D5q.js → memory-BZHnDZzu.js} +4 -4
  193. package/studio-dist/server/chunks/{nexus-adapter-9EL_VlGI.js → nexus-adapter-D1ryYG1Z.js} +5 -5
  194. package/studio-dist/server/chunks/{no-face-up-DcejJLy-.js → no-face-up-B_3h6Hgs.js} +2 -2
  195. package/studio-dist/server/chunks/project-context-BAXQmgch.js +188 -0
  196. package/studio-dist/server/chunks/{src-BUqGet2c.js → src-D2rW9bIF.js} +422 -5
  197. package/studio-dist/server/chunks/{stores-5DmdjPCH.js → stores-BZdYTyl7.js} +3 -3
  198. package/studio-dist/server/chunks/{tasks2-Bf9VHrv-.js → tasks-sWuEmiGW.js} +2349 -9
  199. package/studio-dist/server/chunks/{ui-DR8zOSpC.js → ui-CkQ-pCs3.js} +2 -2
  200. package/studio-dist/server/chunks/utils-g564cUMV.js +151 -0
  201. package/studio-dist/server/index.js +5 -16
  202. package/studio-dist/server/manifest.js +88 -88
  203. package/dist/cli/index.js.map +0 -6
  204. package/studio-dist/client/_app/immutable/assets/parse-worker.CSEr67Qi.js +0 -1127
  205. package/studio-dist/client/_app/immutable/chunks/2mEksghu2.js +0 -1
  206. package/studio-dist/client/_app/immutable/chunks/3KebaI-z.js +0 -53
  207. package/studio-dist/client/_app/immutable/chunks/3y2yNYEk2.js +0 -3
  208. package/studio-dist/client/_app/immutable/chunks/7UXYlaI1.js +0 -1
  209. package/studio-dist/client/_app/immutable/chunks/83VLmCvk.js +0 -4
  210. package/studio-dist/client/_app/immutable/chunks/84Rhmi6r.js +0 -2
  211. package/studio-dist/client/_app/immutable/chunks/9CV9TXTg2.js +0 -92
  212. package/studio-dist/client/_app/immutable/chunks/9LFtcz24.js +0 -1
  213. package/studio-dist/client/_app/immutable/chunks/9bLMgKwu2.js +0 -1
  214. package/studio-dist/client/_app/immutable/chunks/9kKqohVR2.js +0 -37
  215. package/studio-dist/client/_app/immutable/chunks/B-Ye28EY.js +0 -7
  216. package/studio-dist/client/_app/immutable/chunks/B-jnUl7o.js +0 -1
  217. package/studio-dist/client/_app/immutable/chunks/B0ORuy8x2.js +0 -1
  218. package/studio-dist/client/_app/immutable/chunks/B0xCM1wN2.js +0 -1
  219. package/studio-dist/client/_app/immutable/chunks/B0zCN4sX.js +0 -1
  220. package/studio-dist/client/_app/immutable/chunks/B1wt-iGW.js +0 -7
  221. package/studio-dist/client/_app/immutable/chunks/B2F3KUIU.js +0 -1
  222. package/studio-dist/client/_app/immutable/chunks/B2_6RrlL2.js +0 -1
  223. package/studio-dist/client/_app/immutable/chunks/B2qKEYxA2.js +0 -1
  224. package/studio-dist/client/_app/immutable/chunks/B2u2rNyI2.js +0 -8
  225. package/studio-dist/client/_app/immutable/chunks/B3_X3Lhd2.js +0 -1
  226. package/studio-dist/client/_app/immutable/chunks/B3sNtbqf.js +0 -1
  227. package/studio-dist/client/_app/immutable/chunks/B4NQP1Ax2.js +0 -6
  228. package/studio-dist/client/_app/immutable/chunks/BAtZg5v5.js +0 -2
  229. package/studio-dist/client/_app/immutable/chunks/BB6WKLm82.js +0 -1
  230. package/studio-dist/client/_app/immutable/chunks/BBX8UDtn.js +0 -1
  231. package/studio-dist/client/_app/immutable/chunks/BBs1U1iU.js +0 -1
  232. package/studio-dist/client/_app/immutable/chunks/BEli_4Jp2.js +0 -1
  233. package/studio-dist/client/_app/immutable/chunks/BEt2wIUt.js +0 -1
  234. package/studio-dist/client/_app/immutable/chunks/BEyM8qSW2.js +0 -1
  235. package/studio-dist/client/_app/immutable/chunks/BFZA3Dsk2.js +0 -1
  236. package/studio-dist/client/_app/immutable/chunks/BGdPweG1.js +0 -2
  237. package/studio-dist/client/_app/immutable/chunks/BGiusSqE.js +0 -1
  238. package/studio-dist/client/_app/immutable/chunks/BGmpyfzD.js +0 -1
  239. package/studio-dist/client/_app/immutable/chunks/BH5rhSIR.js +0 -1
  240. package/studio-dist/client/_app/immutable/chunks/BHciFt922.js +0 -2
  241. package/studio-dist/client/_app/immutable/chunks/BHnFwTQY.js +0 -1
  242. package/studio-dist/client/_app/immutable/chunks/BIvye3XP2.js +0 -59
  243. package/studio-dist/client/_app/immutable/chunks/BJ8mcpQA2.js +0 -1
  244. package/studio-dist/client/_app/immutable/chunks/BK17qSHw.js +0 -2
  245. package/studio-dist/client/_app/immutable/chunks/BLkgUtyb.js +0 -1
  246. package/studio-dist/client/_app/immutable/chunks/BMUko3r62.js +0 -5
  247. package/studio-dist/client/_app/immutable/chunks/BMwzdEaa.js +0 -2
  248. package/studio-dist/client/_app/immutable/chunks/BQZx6brg.js +0 -2
  249. package/studio-dist/client/_app/immutable/chunks/BUPJTTTd.js +0 -2
  250. package/studio-dist/client/_app/immutable/chunks/BVNGAeZe2.js +0 -146
  251. package/studio-dist/client/_app/immutable/chunks/BWfLryGm.js +0 -1
  252. package/studio-dist/client/_app/immutable/chunks/BXIfeogw.js +0 -1
  253. package/studio-dist/client/_app/immutable/chunks/BXTfFyUU.js +0 -1
  254. package/studio-dist/client/_app/immutable/chunks/BYJC6_MM.js +0 -2
  255. package/studio-dist/client/_app/immutable/chunks/BZV1ZJzH.js +0 -2
  256. package/studio-dist/client/_app/immutable/chunks/BZu9rehd.js +0 -1
  257. package/studio-dist/client/_app/immutable/chunks/Bbzm48C52.js +0 -1
  258. package/studio-dist/client/_app/immutable/chunks/BfGnlwjH.js +0 -1
  259. package/studio-dist/client/_app/immutable/chunks/Bfjb9LPp.js +0 -2
  260. package/studio-dist/client/_app/immutable/chunks/BieFfu-R.js +0 -1
  261. package/studio-dist/client/_app/immutable/chunks/Bmv63uXe2.js +0 -1
  262. package/studio-dist/client/_app/immutable/chunks/BtBW1A0u.js +0 -1
  263. package/studio-dist/client/_app/immutable/chunks/BxISGQCl2.js +0 -1
  264. package/studio-dist/client/_app/immutable/chunks/ByNR_KvT.js +0 -2
  265. package/studio-dist/client/_app/immutable/chunks/BzjhD6Hr2.js +0 -2
  266. package/studio-dist/client/_app/immutable/chunks/BzpWnq0c2.js +0 -1
  267. package/studio-dist/client/_app/immutable/chunks/C-yJVcyI2.js +0 -1
  268. package/studio-dist/client/_app/immutable/chunks/C0cQ-8kS2.js +0 -1
  269. package/studio-dist/client/_app/immutable/chunks/C1vWmhYe.js +0 -48
  270. package/studio-dist/client/_app/immutable/chunks/C1w6bBje.js +0 -1
  271. package/studio-dist/client/_app/immutable/chunks/C243sn7r.js +0 -4
  272. package/studio-dist/client/_app/immutable/chunks/C2oZaDvt.js +0 -67
  273. package/studio-dist/client/_app/immutable/chunks/C3OziSQx.js +0 -1
  274. package/studio-dist/client/_app/immutable/chunks/C3hFPbMK.js +0 -2
  275. package/studio-dist/client/_app/immutable/chunks/C4P9oFvU2.js +0 -6
  276. package/studio-dist/client/_app/immutable/chunks/C5Nlanei.js +0 -8
  277. package/studio-dist/client/_app/immutable/chunks/C6KBAXPl.js +0 -15
  278. package/studio-dist/client/_app/immutable/chunks/C8MZnWta.js +0 -1
  279. package/studio-dist/client/_app/immutable/chunks/CAoan3K12.js +0 -1
  280. package/studio-dist/client/_app/immutable/chunks/CBpcINYH.js +0 -29
  281. package/studio-dist/client/_app/immutable/chunks/CE7phgWq.js +0 -1
  282. package/studio-dist/client/_app/immutable/chunks/CFb4Co_K.js +0 -2
  283. package/studio-dist/client/_app/immutable/chunks/CGWoRK3t2.js +0 -1
  284. package/studio-dist/client/_app/immutable/chunks/CH3t4xo1.js +0 -1
  285. package/studio-dist/client/_app/immutable/chunks/CHJgk6g-.js +0 -1
  286. package/studio-dist/client/_app/immutable/chunks/CHgPjuDQ.js +0 -17
  287. package/studio-dist/client/_app/immutable/chunks/CHkCZrnr.js +0 -1
  288. package/studio-dist/client/_app/immutable/chunks/CI_91WUN.js +0 -4
  289. package/studio-dist/client/_app/immutable/chunks/CJ7-hP0H.js +0 -1
  290. package/studio-dist/client/_app/immutable/chunks/CKIrNnkY2.js +0 -1
  291. package/studio-dist/client/_app/immutable/chunks/CKoQ7Ko5.js +0 -1
  292. package/studio-dist/client/_app/immutable/chunks/CM8O4zqs.js +0 -56
  293. package/studio-dist/client/_app/immutable/chunks/CMz3AVRO.js +0 -1
  294. package/studio-dist/client/_app/immutable/chunks/CNToUR3P.js +0 -13
  295. package/studio-dist/client/_app/immutable/chunks/CNuQG1yl2.js +0 -1
  296. package/studio-dist/client/_app/immutable/chunks/CQLIZtxj.js +0 -2
  297. package/studio-dist/client/_app/immutable/chunks/CQYVNgM0.js +0 -20
  298. package/studio-dist/client/_app/immutable/chunks/CQeVOmFO2.js +0 -1
  299. package/studio-dist/client/_app/immutable/chunks/CSPHHq09.js +0 -1
  300. package/studio-dist/client/_app/immutable/chunks/CTJEdbIn.js +0 -1
  301. package/studio-dist/client/_app/immutable/chunks/CTTT3wYw.js +0 -35
  302. package/studio-dist/client/_app/immutable/chunks/CV4ck7fz.js +0 -2
  303. package/studio-dist/client/_app/immutable/chunks/CXQrVnHf.js +0 -11
  304. package/studio-dist/client/_app/immutable/chunks/CXTCtOUQ.js +0 -1
  305. package/studio-dist/client/_app/immutable/chunks/C_CsU7Qq.js +0 -1
  306. package/studio-dist/client/_app/immutable/chunks/C_IZx3682.js +0 -2
  307. package/studio-dist/client/_app/immutable/chunks/CbTnu2Po2.js +0 -1
  308. package/studio-dist/client/_app/immutable/chunks/Cba8RZ1a2.js +0 -8
  309. package/studio-dist/client/_app/immutable/chunks/Cc8xxDr5.js +0 -1
  310. package/studio-dist/client/_app/immutable/chunks/CdPxoldu.js +0 -1
  311. package/studio-dist/client/_app/immutable/chunks/CdqDTozW.js +0 -1
  312. package/studio-dist/client/_app/immutable/chunks/CdsmcCfC.js +0 -25
  313. package/studio-dist/client/_app/immutable/chunks/CeYPAoY9.js +0 -1
  314. package/studio-dist/client/_app/immutable/chunks/Cf4kGS9y.js +0 -1
  315. package/studio-dist/client/_app/immutable/chunks/CfWEqXtJ2.js +0 -1
  316. package/studio-dist/client/_app/immutable/chunks/Cg7Wj2b9.js +0 -2
  317. package/studio-dist/client/_app/immutable/chunks/CgTpKZfi2.js +0 -1
  318. package/studio-dist/client/_app/immutable/chunks/Chpy9ca7.js +0 -2
  319. package/studio-dist/client/_app/immutable/chunks/CiLKuLrQ.js +0 -4
  320. package/studio-dist/client/_app/immutable/chunks/CjNDJjwu.js +0 -1
  321. package/studio-dist/client/_app/immutable/chunks/Cjde0ZKr2.js +0 -1
  322. package/studio-dist/client/_app/immutable/chunks/Cjgnade02.js +0 -3
  323. package/studio-dist/client/_app/immutable/chunks/Ckp90om52.js +0 -2
  324. package/studio-dist/client/_app/immutable/chunks/ClAPVhCD.js +0 -1
  325. package/studio-dist/client/_app/immutable/chunks/ClT89UdO.js +0 -11
  326. package/studio-dist/client/_app/immutable/chunks/CnJf5tML.js +0 -1
  327. package/studio-dist/client/_app/immutable/chunks/CpF4Rrcc2.js +0 -1
  328. package/studio-dist/client/_app/immutable/chunks/CqCka5yX2.js +0 -1
  329. package/studio-dist/client/_app/immutable/chunks/CqtqZrOl.js +0 -1
  330. package/studio-dist/client/_app/immutable/chunks/CrJdywQt.js +0 -1
  331. package/studio-dist/client/_app/immutable/chunks/Cs0zC2l2.js +0 -1
  332. package/studio-dist/client/_app/immutable/chunks/CsMn5fBs.js +0 -141
  333. package/studio-dist/client/_app/immutable/chunks/CsvKLHQQ2.js +0 -2
  334. package/studio-dist/client/_app/immutable/chunks/Ctaresvj.js +0 -1
  335. package/studio-dist/client/_app/immutable/chunks/Ctetf8vc2.js +0 -2
  336. package/studio-dist/client/_app/immutable/chunks/Cv7yW6MG.js +0 -1
  337. package/studio-dist/client/_app/immutable/chunks/CxRIz-Zd.js +0 -1
  338. package/studio-dist/client/_app/immutable/chunks/CxbvtjIH.js +0 -3
  339. package/studio-dist/client/_app/immutable/chunks/CxfeoXkZ.js +0 -2
  340. package/studio-dist/client/_app/immutable/chunks/CySLscL2.js +0 -2
  341. package/studio-dist/client/_app/immutable/chunks/D0PKQAbM.js +0 -87
  342. package/studio-dist/client/_app/immutable/chunks/D0WQsLTu.js +0 -1
  343. package/studio-dist/client/_app/immutable/chunks/D1LBVx6r2.js +0 -1
  344. package/studio-dist/client/_app/immutable/chunks/D1NlFXu9.js +0 -1
  345. package/studio-dist/client/_app/immutable/chunks/D1QfC4hu2.js +0 -1
  346. package/studio-dist/client/_app/immutable/chunks/D1yrHAn72.js +0 -1
  347. package/studio-dist/client/_app/immutable/chunks/D2pa4reh.js +0 -7
  348. package/studio-dist/client/_app/immutable/chunks/D3QsWcIw2.js +0 -2
  349. package/studio-dist/client/_app/immutable/chunks/D4OkQuPl2.js +0 -1
  350. package/studio-dist/client/_app/immutable/chunks/D6UDnATk2.js +0 -1
  351. package/studio-dist/client/_app/immutable/chunks/D7w7HllH.js +0 -38
  352. package/studio-dist/client/_app/immutable/chunks/D93KpglN.js +0 -1
  353. package/studio-dist/client/_app/immutable/chunks/D99fQj2G2.js +0 -1
  354. package/studio-dist/client/_app/immutable/chunks/DB5ifLM-.js +0 -3
  355. package/studio-dist/client/_app/immutable/chunks/DBhP8ifO2.js +0 -15
  356. package/studio-dist/client/_app/immutable/chunks/DF_4OWhj.js +0 -2
  357. package/studio-dist/client/_app/immutable/chunks/DFpNK1vs2.js +0 -1
  358. package/studio-dist/client/_app/immutable/chunks/DGRYMk-W.js +0 -142
  359. package/studio-dist/client/_app/immutable/chunks/DH3CcQwq.js +0 -1
  360. package/studio-dist/client/_app/immutable/chunks/DHQfJeLU.js +0 -4
  361. package/studio-dist/client/_app/immutable/chunks/DL89yEDy2.js +0 -1
  362. package/studio-dist/client/_app/immutable/chunks/DLRku_0p2.js +0 -2
  363. package/studio-dist/client/_app/immutable/chunks/DMZkjPYT2.js +0 -1
  364. package/studio-dist/client/_app/immutable/chunks/DNP72foU.js +0 -1
  365. package/studio-dist/client/_app/immutable/chunks/DO2GztVm.js +0 -1
  366. package/studio-dist/client/_app/immutable/chunks/DOVNXmCK2.js +0 -1
  367. package/studio-dist/client/_app/immutable/chunks/DOqzs8kl2.js +0 -1
  368. package/studio-dist/client/_app/immutable/chunks/DQnR63hh2.js +0 -7
  369. package/studio-dist/client/_app/immutable/chunks/DTxtWPkw.js +0 -1
  370. package/studio-dist/client/_app/immutable/chunks/DVDgCC9A2.js +0 -20
  371. package/studio-dist/client/_app/immutable/chunks/DVVCJYjz.js +0 -1
  372. package/studio-dist/client/_app/immutable/chunks/DWRhYUMj2.js +0 -1
  373. package/studio-dist/client/_app/immutable/chunks/DWavBJBI.js +0 -4
  374. package/studio-dist/client/_app/immutable/chunks/DXDSWRw-.js +0 -1
  375. package/studio-dist/client/_app/immutable/chunks/DXoHaH4a.js +0 -2
  376. package/studio-dist/client/_app/immutable/chunks/DXpCX2Hi.js +0 -1
  377. package/studio-dist/client/_app/immutable/chunks/DYP3EJMY.js +0 -1
  378. package/studio-dist/client/_app/immutable/chunks/DYQphR_V.js +0 -1
  379. package/studio-dist/client/_app/immutable/chunks/DYUlIivP.js +0 -1
  380. package/studio-dist/client/_app/immutable/chunks/DYo2ye8X2.js +0 -1
  381. package/studio-dist/client/_app/immutable/chunks/DYxFu8yV.js +0 -1
  382. package/studio-dist/client/_app/immutable/chunks/DZ66sRb6.js +0 -1
  383. package/studio-dist/client/_app/immutable/chunks/D_XTiylm2.js +0 -1
  384. package/studio-dist/client/_app/immutable/chunks/DaRv9jn22.js +0 -1
  385. package/studio-dist/client/_app/immutable/chunks/DaXb9i_E.js +0 -1
  386. package/studio-dist/client/_app/immutable/chunks/Dccf4VP2.js +0 -24
  387. package/studio-dist/client/_app/immutable/chunks/DdODs-Sb.js +0 -1
  388. package/studio-dist/client/_app/immutable/chunks/DdekYWer.js +0 -2
  389. package/studio-dist/client/_app/immutable/chunks/DeHaovsF.js +0 -1
  390. package/studio-dist/client/_app/immutable/chunks/DeRRkRO52.js +0 -1
  391. package/studio-dist/client/_app/immutable/chunks/DeWI5qCn.js +0 -1
  392. package/studio-dist/client/_app/immutable/chunks/DfivR-Md.js +0 -1
  393. package/studio-dist/client/_app/immutable/chunks/DgmxpSo7.js +0 -1
  394. package/studio-dist/client/_app/immutable/chunks/DhPLWrun2.js +0 -1
  395. package/studio-dist/client/_app/immutable/chunks/DhhrVdfi.js +0 -2
  396. package/studio-dist/client/_app/immutable/chunks/Djr2dbcc2.js +0 -37
  397. package/studio-dist/client/_app/immutable/chunks/DjuRo5vv.js +0 -1
  398. package/studio-dist/client/_app/immutable/chunks/Djz4EDzO.js +0 -1
  399. package/studio-dist/client/_app/immutable/chunks/DkRfaw-K2.js +0 -1
  400. package/studio-dist/client/_app/immutable/chunks/DksB5g4W2.js +0 -1
  401. package/studio-dist/client/_app/immutable/chunks/Dmqenb5z2.js +0 -1
  402. package/studio-dist/client/_app/immutable/chunks/DnbToVyf.js +0 -2
  403. package/studio-dist/client/_app/immutable/chunks/DpGZwlmj.js +0 -1
  404. package/studio-dist/client/_app/immutable/chunks/Dq0lE5C32.js +0 -1
  405. package/studio-dist/client/_app/immutable/chunks/Dq54XqHT2.js +0 -1
  406. package/studio-dist/client/_app/immutable/chunks/DqK84mbb.js +0 -1
  407. package/studio-dist/client/_app/immutable/chunks/DqjFtSJD.js +0 -2
  408. package/studio-dist/client/_app/immutable/chunks/DrKWWDpL.js +0 -1
  409. package/studio-dist/client/_app/immutable/chunks/DsQIgu-4.js +0 -1
  410. package/studio-dist/client/_app/immutable/chunks/DsqdgJHS2.js +0 -1
  411. package/studio-dist/client/_app/immutable/chunks/DtNkZUkq.js +0 -17
  412. package/studio-dist/client/_app/immutable/chunks/DutIls4V2.js +0 -1
  413. package/studio-dist/client/_app/immutable/chunks/DvxYFW4C.js +0 -1
  414. package/studio-dist/client/_app/immutable/chunks/Dwp-76GQ.js +0 -2
  415. package/studio-dist/client/_app/immutable/chunks/DxSZd548.js +0 -1
  416. package/studio-dist/client/_app/immutable/chunks/DxiUMhk0.js +0 -5
  417. package/studio-dist/client/_app/immutable/chunks/DxslLswf.js +0 -23
  418. package/studio-dist/client/_app/immutable/chunks/Dy7EjGgb2.js +0 -9
  419. package/studio-dist/client/_app/immutable/chunks/DyGQ_VXC.js +0 -3
  420. package/studio-dist/client/_app/immutable/chunks/DySe3kTV2.js +0 -1
  421. package/studio-dist/client/_app/immutable/chunks/DyzE2Uxw.js +0 -1
  422. package/studio-dist/client/_app/immutable/chunks/DzhuJaxE2.js +0 -2
  423. package/studio-dist/client/_app/immutable/chunks/FmMHyrh6.js +0 -1
  424. package/studio-dist/client/_app/immutable/chunks/Gxs0J274.js +0 -5
  425. package/studio-dist/client/_app/immutable/chunks/HwtzDYxN.js +0 -2
  426. package/studio-dist/client/_app/immutable/chunks/ITRz_Q7H2.js +0 -15
  427. package/studio-dist/client/_app/immutable/chunks/KDNP98XY2.js +0 -1
  428. package/studio-dist/client/_app/immutable/chunks/LmVjFhpk2.js +0 -1
  429. package/studio-dist/client/_app/immutable/chunks/MiAejGV_.js +0 -1
  430. package/studio-dist/client/_app/immutable/chunks/Ml4JR6Jz2.js +0 -2
  431. package/studio-dist/client/_app/immutable/chunks/NU5S3nNs2.js +0 -2
  432. package/studio-dist/client/_app/immutable/chunks/Oh5zPjv3.js +0 -2
  433. package/studio-dist/client/_app/immutable/chunks/QZkvJ9vi.js +0 -1
  434. package/studio-dist/client/_app/immutable/chunks/Rbn8UpBm.js +0 -1
  435. package/studio-dist/client/_app/immutable/chunks/SPX3gYwn2.js +0 -1
  436. package/studio-dist/client/_app/immutable/chunks/TX-23QW3.js +0 -3
  437. package/studio-dist/client/_app/immutable/chunks/UyeQuL132.js +0 -12
  438. package/studio-dist/client/_app/immutable/chunks/VQszoXcV.js +0 -1
  439. package/studio-dist/client/_app/immutable/chunks/VtZsEMxD.js +0 -1
  440. package/studio-dist/client/_app/immutable/chunks/W2IeK61p2.js +0 -1
  441. package/studio-dist/client/_app/immutable/chunks/Wadww7ZG.js +0 -1
  442. package/studio-dist/client/_app/immutable/chunks/WgfA1zWk2.js +0 -1
  443. package/studio-dist/client/_app/immutable/chunks/WxIgAS1f.js +0 -21
  444. package/studio-dist/client/_app/immutable/chunks/XrsBoOj9.js +0 -2
  445. package/studio-dist/client/_app/immutable/chunks/Y3PX4poR.js +0 -2
  446. package/studio-dist/client/_app/immutable/chunks/YxfwqiF32.js +0 -1
  447. package/studio-dist/client/_app/immutable/chunks/Z7uO1YaO.js +0 -1
  448. package/studio-dist/client/_app/immutable/chunks/_4ykQk_8.js +0 -1
  449. package/studio-dist/client/_app/immutable/chunks/_kRcZFVn.js +0 -1
  450. package/studio-dist/client/_app/immutable/chunks/aQNM7eVA2.js +0 -1
  451. package/studio-dist/client/_app/immutable/chunks/bHKz_Fb2.js +0 -45
  452. package/studio-dist/client/_app/immutable/chunks/bJRyRGSZ.js +0 -1
  453. package/studio-dist/client/_app/immutable/chunks/dlzF6lnR.js +0 -1
  454. package/studio-dist/client/_app/immutable/chunks/fjRbpfEr2.js +0 -26
  455. package/studio-dist/client/_app/immutable/chunks/imLk4if5.js +0 -3
  456. package/studio-dist/client/_app/immutable/chunks/lgRG0R-32.js +0 -1
  457. package/studio-dist/client/_app/immutable/chunks/mFhCjxQJ2.js +0 -1
  458. package/studio-dist/client/_app/immutable/chunks/mgnH6qYg.js +0 -1
  459. package/studio-dist/client/_app/immutable/chunks/n6M_5LoW.js +0 -1
  460. package/studio-dist/client/_app/immutable/chunks/nLIOiDZp2.js +0 -1
  461. package/studio-dist/client/_app/immutable/chunks/nab7WB3u2.js +0 -1
  462. package/studio-dist/client/_app/immutable/chunks/orUmAKoW2.js +0 -1
  463. package/studio-dist/client/_app/immutable/chunks/p-fLQDfY2.js +0 -63
  464. package/studio-dist/client/_app/immutable/chunks/s0-WkOGk2.js +0 -1
  465. package/studio-dist/client/_app/immutable/chunks/sPuXfbUF.js +0 -1
  466. package/studio-dist/client/_app/immutable/chunks/t4h0vrqR2.js +0 -2
  467. package/studio-dist/client/_app/immutable/chunks/uE83FKL-.js +0 -1
  468. package/studio-dist/client/_app/immutable/chunks/uzhXlm0g2.js +0 -1
  469. package/studio-dist/client/_app/immutable/chunks/vTrEsGlD2.js +0 -1
  470. package/studio-dist/client/_app/immutable/chunks/xJgCk3dx2.js +0 -28
  471. package/studio-dist/client/_app/immutable/chunks/z0Mt579s2.js +0 -13
  472. package/studio-dist/client/_app/immutable/entry/app.BoQ7cgT2.js +0 -2
  473. package/studio-dist/client/_app/immutable/entry/start.Cg1v8DU4.js +0 -1
  474. package/studio-dist/client/_app/immutable/nodes/25.ddZ1_EFk.js +0 -1
  475. package/studio-dist/client/_app/immutable/nodes/26.6OcmQbLV.js +0 -1
  476. package/studio-dist/client/_app/immutable/nodes/4.CCjOEwVU.js +0 -1
  477. package/studio-dist/server/chunks/0-CvsKDxQ6.js +0 -126
  478. package/studio-dist/server/chunks/1-ck_x2Hf0.js +0 -9
  479. package/studio-dist/server/chunks/20-DVU22np7.js +0 -142
  480. package/studio-dist/server/chunks/23-D_tUnnoc.js +0 -181
  481. package/studio-dist/server/chunks/24-CVlymvLF.js +0 -151
  482. package/studio-dist/server/chunks/AwsRestJsonProtocol-BZuoNBmL.js +0 -416
  483. package/studio-dist/server/chunks/UnionSerde-BflIkhKj.js +0 -2653
  484. package/studio-dist/server/chunks/_dispatch-ncuRztUQ.js +0 -5597
  485. package/studio-dist/server/chunks/_server.ts-4NyKAneX.js +0 -116
  486. package/studio-dist/server/chunks/_server.ts-7hGdxdEI.js +0 -136
  487. package/studio-dist/server/chunks/_server.ts-B6b3b-yA.js +0 -131
  488. package/studio-dist/server/chunks/_server.ts-BOgGqaZp.js +0 -144
  489. package/studio-dist/server/chunks/_server.ts-BV1HiKZ0.js +0 -120
  490. package/studio-dist/server/chunks/_server.ts-BWp3g6Cr.js +0 -110
  491. package/studio-dist/server/chunks/_server.ts-C5NF-UgC.js +0 -122
  492. package/studio-dist/server/chunks/_server.ts-CDMurH5m.js +0 -2301
  493. package/studio-dist/server/chunks/_server.ts-COJHCgbq.js +0 -127
  494. package/studio-dist/server/chunks/_server.ts-CUl-Utkt.js +0 -148
  495. package/studio-dist/server/chunks/_server.ts-D0GAFJRb.js +0 -156
  496. package/studio-dist/server/chunks/_server.ts-DA6p3pmi.js +0 -117
  497. package/studio-dist/server/chunks/_server.ts-DThYFaZj.js +0 -160
  498. package/studio-dist/server/chunks/_server.ts-D_3Pm0gr.js +0 -179
  499. package/studio-dist/server/chunks/_server.ts-DcHxdMsm.js +0 -144
  500. package/studio-dist/server/chunks/_server.ts-Dlfadh2I.js +0 -144
  501. package/studio-dist/server/chunks/_server.ts-JallJnps.js +0 -240
  502. package/studio-dist/server/chunks/_server.ts-NEFTbJpM.js +0 -142
  503. package/studio-dist/server/chunks/_server.ts-d-2NvRwX.js +0 -122
  504. package/studio-dist/server/chunks/_server.ts-rUWMLkIw.js +0 -146
  505. package/studio-dist/server/chunks/abort-events-CDRAJSqb.js +0 -30
  506. package/studio-dist/server/chunks/adapters-BkMgPNUM.js +0 -359
  507. package/studio-dist/server/chunks/adapters2-CQ3PzoaK.js +0 -28
  508. package/studio-dist/server/chunks/api-mode2-3W-I1-XO.js +0 -36
  509. package/studio-dist/server/chunks/api2-CmNQzb0b.js +0 -96
  510. package/studio-dist/server/chunks/attention-consolidate-CidG1jfH.js +0 -485
  511. package/studio-dist/server/chunks/audit3-DMO_fUGp.js +0 -52
  512. package/studio-dist/server/chunks/auto-extract-B84La1Vs.js +0 -34
  513. package/studio-dist/server/chunks/brain-consolidator-JGm6mzFf.js +0 -373
  514. package/studio-dist/server/chunks/brain-doctor-Dc2WqVbs.js +0 -311
  515. package/studio-dist/server/chunks/brain-embedding-Djw9ekXu.js +0 -42
  516. package/studio-dist/server/chunks/brain-lifecycle-BOOa876K.js +0 -969
  517. package/studio-dist/server/chunks/brain-maintenance-U6VvsvmK.js +0 -133
  518. package/studio-dist/server/chunks/brain-maintenance2-CwVSmfDT.js +0 -43
  519. package/studio-dist/server/chunks/brain-retrieval2-exR8mdgh.js +0 -751
  520. package/studio-dist/server/chunks/brain-search-CpSh-SNi.js +0 -48
  521. package/studio-dist/server/chunks/brain-search2-CwI2cXgg.js +0 -716
  522. package/studio-dist/server/chunks/brain-similarity-DI4yzm9e.js +0 -113
  523. package/studio-dist/server/chunks/brain-stdp2-BxSBIlSr.js +0 -960
  524. package/studio-dist/server/chunks/brain-writer-handlers-Dwu0QCAA.js +0 -188
  525. package/studio-dist/server/chunks/brain-writer-thread-6n7wI7Gy.js +0 -360
  526. package/studio-dist/server/chunks/branch-lock-Cq7zzmFK.js +0 -1118
  527. package/studio-dist/server/chunks/branch-lock2-CmDc4CZW.js +0 -45
  528. package/studio-dist/server/chunks/cancelled-child-waiver-audit-DkesrN83.js +0 -54
  529. package/studio-dist/server/chunks/catalog-model-resolver-Bas9qnoP.js +0 -9
  530. package/studio-dist/server/chunks/catalog-model-resolver2-Cexk2TN0.js +0 -237
  531. package/studio-dist/server/chunks/catalog-resolver-CLot3XJO.js +0 -260
  532. package/studio-dist/server/chunks/catalog-resolver2-JmKb91kY.js +0 -33
  533. package/studio-dist/server/chunks/chunk-DDP5xfzh.js +0 -39
  534. package/studio-dist/server/chunks/cleo-home-CCfe6kAQ.js +0 -64
  535. package/studio-dist/server/chunks/concrete-session2-bb_vxJ2N.js +0 -43
  536. package/studio-dist/server/chunks/config-DHj9CcFs.js +0 -386
  537. package/studio-dist/server/chunks/config2-F6PPIn7D.js +0 -35
  538. package/studio-dist/server/chunks/connections-BMGJVYcS.js +0 -98
  539. package/studio-dist/server/chunks/credential-pool-vF6NdtT9.js +0 -4600
  540. package/studio-dist/server/chunks/credentials-C7EJFf5O.js +0 -35
  541. package/studio-dist/server/chunks/credentials-store-CFygIuB2.js +0 -35
  542. package/studio-dist/server/chunks/cross-db-cleanup-1LWTUKPi.js +0 -147
  543. package/studio-dist/server/chunks/data-accessor-CWgVndbR.js +0 -72
  544. package/studio-dist/server/chunks/data-safety-central-DaFxK27G.js +0 -683
  545. package/studio-dist/server/chunks/decisions-CmVXV2-H.js +0 -574
  546. package/studio-dist/server/chunks/decisions2-XQsSYdxa.js +0 -48
  547. package/studio-dist/server/chunks/depends-waiver-audit-CUmlBYHx.js +0 -56
  548. package/studio-dist/server/chunks/dialectic-evaluator2-BOyyXhdI.js +0 -96
  549. package/studio-dist/server/chunks/dist-es2-DQy2Mjn_.js +0 -43
  550. package/studio-dist/server/chunks/dist-es3-CBygU4n5.js +0 -365
  551. package/studio-dist/server/chunks/dist-es4-CavbNu4B.js +0 -162
  552. package/studio-dist/server/chunks/dist-es5-Crpm8Wsl.js +0 -465
  553. package/studio-dist/server/chunks/dist-es6-CgePHzh4.js +0 -99
  554. package/studio-dist/server/chunks/dist-es7-k6c5GEd7.js +0 -311
  555. package/studio-dist/server/chunks/dist-es8-Bd9v0_pE.js +0 -91
  556. package/studio-dist/server/chunks/dist3-23bsJhRw.js +0 -27
  557. package/studio-dist/server/chunks/dist4-DmC1zSXi.js +0 -35618
  558. package/studio-dist/server/chunks/dual-scope-db-DKnWu1KM.js +0 -5672
  559. package/studio-dist/server/chunks/dual-scope-db2-Dht3luRw.js +0 -31
  560. package/studio-dist/server/chunks/duplicate-bypass-audit-BN5w1H2y.js +0 -36
  561. package/studio-dist/server/chunks/duplicate-detector-CaVFMKdE.js +0 -692
  562. package/studio-dist/server/chunks/edge-types-CgBvb0w1.js +0 -28
  563. package/studio-dist/server/chunks/embedding-local-xEnym8Ho.js +0 -92
  564. package/studio-dist/server/chunks/event-streams-Bi2p_fVo.js +0 -232
  565. package/studio-dist/server/chunks/execution-learning-BVCw7Plq.js +0 -278
  566. package/studio-dist/server/chunks/exodus-BBuuN6aA.js +0 -2594
  567. package/studio-dist/server/chunks/externalDataInterceptor-C3C4cObe.js +0 -21
  568. package/studio-dist/server/chunks/extraction-gate-DDNBq7gu.js +0 -48
  569. package/studio-dist/server/chunks/extraction-gate2-D77EZBQ6.js +0 -375
  570. package/studio-dist/server/chunks/getSSOTokenFromFile-yZAJxDci.js +0 -21
  571. package/studio-dist/server/chunks/governor2-CtfV3wfX.js +0 -923
  572. package/studio-dist/server/chunks/graph-auto-populate-Dmsr9ZJM.js +0 -42
  573. package/studio-dist/server/chunks/graph-auto-populate2-Cz0qeebM.js +0 -156
  574. package/studio-dist/server/chunks/graph-memory-bridge-CY8ft_d7.js +0 -43
  575. package/studio-dist/server/chunks/graph-memory-bridge2-Cd0XZwqc.js +0 -429
  576. package/studio-dist/server/chunks/handler-helpers-AANBGA_p.js +0 -49
  577. package/studio-dist/server/chunks/hash-Cm6yMET4.js +0 -14
  578. package/studio-dist/server/chunks/health-monitor-FepUZN1m.js +0 -106
  579. package/studio-dist/server/chunks/identity-DRpurt56.js +0 -30
  580. package/studio-dist/server/chunks/identity2-DeAB5RXE.js +0 -114
  581. package/studio-dist/server/chunks/index-61916rmV.js +0 -632
  582. package/studio-dist/server/chunks/index-DAgVDouG.js +0 -268
  583. package/studio-dist/server/chunks/index-Dtt_h58T.js +0 -2116
  584. package/studio-dist/server/chunks/indexes-DZ52grq6.js +0 -615
  585. package/studio-dist/server/chunks/json-Bfixam3g.js +0 -126
  586. package/studio-dist/server/chunks/learnings-D6Y3YGMU.js +0 -47
  587. package/studio-dist/server/chunks/learnings2-MwBdR9vb.js +0 -171
  588. package/studio-dist/server/chunks/lifecycle-ops2-V2CR5-7X.js +0 -121
  589. package/studio-dist/server/chunks/list-BhObczvn.js +0 -229
  590. package/studio-dist/server/chunks/living-brain2-j0B_Ir8j.js +0 -285
  591. package/studio-dist/server/chunks/llm-backend-resolver-D4ANvUPL.js +0 -295
  592. package/studio-dist/server/chunks/llm-extraction-DVCu4heR.js +0 -408
  593. package/studio-dist/server/chunks/loadSharedConfigFiles-umvW7kuz.js +0 -73
  594. package/studio-dist/server/chunks/loadSso-iidd5iKx.js +0 -599
  595. package/studio-dist/server/chunks/local-model-fit-B0TxifnX.js +0 -53
  596. package/studio-dist/server/chunks/local-model-fit2-BMqo6GJm.js +0 -2664
  597. package/studio-dist/server/chunks/lock-CA7d6lj7.js +0 -57
  598. package/studio-dist/server/chunks/logger-DQIoyZbq.js +0 -34
  599. package/studio-dist/server/chunks/memory-BUbicBbE.js +0 -618
  600. package/studio-dist/server/chunks/memory-accessor-i3P-RHSg.js +0 -42
  601. package/studio-dist/server/chunks/memory-accessor2-B981tHDR.js +0 -467
  602. package/studio-dist/server/chunks/memory-bridge-BOlEWg9w.js +0 -424
  603. package/studio-dist/server/chunks/memory-sqlite2-B7dq8doO.js +0 -42
  604. package/studio-dist/server/chunks/model-runner2-B71xjp4y.js +0 -43
  605. package/studio-dist/server/chunks/mvi-helpers-BNsJ8ZpQ.js +0 -59
  606. package/studio-dist/server/chunks/nexus-plasticity-BTfU8cW_.js +0 -269
  607. package/studio-dist/server/chunks/nexus-risk-audit-p379-TU5.js +0 -54
  608. package/studio-dist/server/chunks/nexus-schema-zeygY8OD.js +0 -11
  609. package/studio-dist/server/chunks/nexus-schema2-DP0Qd7CA.js +0 -444
  610. package/studio-dist/server/chunks/nexus-sqlite-BVNIpwc7.js +0 -36
  611. package/studio-dist/server/chunks/nexus-sqlite2-BBfY2xnY.js +0 -1103
  612. package/studio-dist/server/chunks/node-http-handler-CJI8kn7X.js +0 -386
  613. package/studio-dist/server/chunks/observe-Bo9veHGe.js +0 -47
  614. package/studio-dist/server/chunks/observe2-wzO0MaMY.js +0 -245
  615. package/studio-dist/server/chunks/observer-reflector-BwNOuq1d.js +0 -62
  616. package/studio-dist/server/chunks/observer-reflector2-ggtC1hmk.js +0 -478
  617. package/studio-dist/server/chunks/on-open-Wpcw7DV4.js +0 -740
  618. package/studio-dist/server/chunks/open-cleo-db--8sYNaYY.js +0 -70
  619. package/studio-dist/server/chunks/parseKnownFiles-Dg0pMFcT.js +0 -18
  620. package/studio-dist/server/chunks/parseUrl-qgGfl-Vh.js +0 -120
  621. package/studio-dist/server/chunks/paths-CV7S5-Zm.js +0 -30012
  622. package/studio-dist/server/chunks/patterns-lh5kn13I.js +0 -48
  623. package/studio-dist/server/chunks/patterns2-CzIcT-ai.js +0 -177
  624. package/studio-dist/server/chunks/pipeline-stage-IB_pOft-.js +0 -63
  625. package/studio-dist/server/chunks/prediction-D1lSGJ4c.js +0 -217
  626. package/studio-dist/server/chunks/premature-close-audit-VG09uAco.js +0 -53
  627. package/studio-dist/server/chunks/project-context-BjiqfEBi.js +0 -166
  628. package/studio-dist/server/chunks/provider-registry2-Cu7rAF0R.js +0 -35
  629. package/studio-dist/server/chunks/quality-feedback-CuCGEI6S.js +0 -371
  630. package/studio-dist/server/chunks/quality-scoring-CCPuRQmJ.js +0 -160
  631. package/studio-dist/server/chunks/query-ops-DCrjbZb9.js +0 -78
  632. package/studio-dist/server/chunks/query-promise-BkPmGPJy.js +0 -1257
  633. package/studio-dist/server/chunks/readFile-CxwXhymG.js +0 -31
  634. package/studio-dist/server/chunks/registry-CL2gN1zd.js +0 -27
  635. package/studio-dist/server/chunks/registry2-DoPYJnUW.js +0 -233
  636. package/studio-dist/server/chunks/registry3-BajEb-ll.js +0 -42
  637. package/studio-dist/server/chunks/registry4-DCqffZkT.js +0 -142
  638. package/studio-dist/server/chunks/retry-B3oEKYpp.js +0 -105
  639. package/studio-dist/server/chunks/role-executor-CC8BU54L.js +0 -25379
  640. package/studio-dist/server/chunks/role-resolver-D9QaDT0e.js +0 -6544
  641. package/studio-dist/server/chunks/role-resolver2-nkhzS1oy.js +0 -37
  642. package/studio-dist/server/chunks/rollup-CiefjN_Y.js +0 -194
  643. package/studio-dist/server/chunks/safety-data-accessor-CniDmGJO.js +0 -276
  644. package/studio-dist/server/chunks/service-connections-accessor-yBCdcgU-.js +0 -282
  645. package/studio-dist/server/chunks/session-factory-vbengc42.js +0 -96
  646. package/studio-dist/server/chunks/session-grade-BF4ZZtN_.js +0 -244
  647. package/studio-dist/server/chunks/session-journal-Bvey70Ur.js +0 -235
  648. package/studio-dist/server/chunks/session-narrative-BirZINSU.js +0 -304
  649. package/studio-dist/server/chunks/session-store--N_xHxUH.js +0 -557
  650. package/studio-dist/server/chunks/session-store2-DAM-eVTH.js +0 -43
  651. package/studio-dist/server/chunks/sessions-33DD4hkt.js +0 -2273
  652. package/studio-dist/server/chunks/sessions2-BHswKRDP.js +0 -50
  653. package/studio-dist/server/chunks/sigil-B-RznFXz.js +0 -33
  654. package/studio-dist/server/chunks/sigil2-jRMG5DuR.js +0 -47
  655. package/studio-dist/server/chunks/signin-BAsW3mM8.js +0 -644
  656. package/studio-dist/server/chunks/sleep-consolidation-BnSwXrvq.js +0 -823
  657. package/studio-dist/server/chunks/specialists-B_ZbpQlK.js +0 -441
  658. package/studio-dist/server/chunks/sqlite-Bm5LzbPs.js +0 -5977
  659. package/studio-dist/server/chunks/sqlite-backup-CFG1-b2e.js +0 -42
  660. package/studio-dist/server/chunks/sqlite-data-accessor-DD_RFX6r.js +0 -987
  661. package/studio-dist/server/chunks/sqlite-data-accessor2-CRmgNBnq.js +0 -44
  662. package/studio-dist/server/chunks/sqlite-native-BwlIqtbs.js +0 -42
  663. package/studio-dist/server/chunks/sqlite2-CUPut2fh.js +0 -42
  664. package/studio-dist/server/chunks/src2-DK8DKufK.js +0 -290
  665. package/studio-dist/server/chunks/src3-BJjf7XRG.js +0 -798
  666. package/studio-dist/server/chunks/src4-DNleK_t_.js +0 -28
  667. package/studio-dist/server/chunks/sso-oidc-eUvwseuL.js +0 -861
  668. package/studio-dist/server/chunks/storage-B9UA3BHR.js +0 -198
  669. package/studio-dist/server/chunks/sts-g7LDMLEd.js +0 -4655
  670. package/studio-dist/server/chunks/surprisal-CwTfWQi8.js +0 -224
  671. package/studio-dist/server/chunks/surprisal-tree-7dfHsuw1.js +0 -230
  672. package/studio-dist/server/chunks/system-resolver2-Bzhue_zQ.js +0 -53
  673. package/studio-dist/server/chunks/tasks-SHX7UPGY.js +0 -19694
  674. package/studio-dist/server/chunks/tasks-schema2-CTMoQKQy.js +0 -42
  675. package/studio-dist/server/chunks/temporal-supersession-DP4GPG_B.js +0 -298
  676. package/studio-dist/server/chunks/token-cAhAD9f9.js +0 -139
  677. package/studio-dist/server/chunks/token-util-D6drEz8_.js +0 -353
  678. package/studio-dist/server/chunks/token-util2-8UPSGvbb.js +0 -97
  679. package/studio-dist/server/chunks/transcript-scanner-kJWhWmlg.js +0 -53
  680. package/studio-dist/server/chunks/transformers.node-_xbxmK5p.js +0 -38475
  681. package/studio-dist/server/chunks/typed-query-l1D_QElt.js +0 -18
  682. package/studio-dist/server/chunks/unique-constraint-BZrrwgwc.js +0 -88
  683. package/studio-dist/server/chunks/update-B2YVBZG0.js +0 -1594
  684. package/studio-dist/server/chunks/user-profile-B61ZhVmC.js +0 -89
  685. package/studio-dist/server/chunks/utils-BPSZyajG.js +0 -1176
  686. package/studio-dist/server/chunks/validation-rules-CE27rtoF.js +0 -44
  687. package/studio-dist/server/chunks/zod-DsAeKNLm.js +0 -141
  688. /package/studio-dist/client/_app/immutable/chunks/{CQCxd1p9.js → B8WnZMYa.js} +0 -0
  689. /package/studio-dist/client/_app/immutable/chunks/{D13Quv9e2.js → B_0_YCYG.js} +0 -0
  690. /package/studio-dist/client/_app/immutable/chunks/{djL6V-tr.js → CqgtdAx_.js} +0 -0
  691. /package/studio-dist/client/_app/immutable/chunks/{_FU7h_8p2.js → KrUPZzXZ.js} +0 -0
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.DMP7swbx.js","../chunks/DGftG5oL.js","../chunks/BSRBuVG3.js","../chunks/cWVw9W0E.js","../chunks/B8WnZMYa.js","../assets/0.BAKYIbXL.css","../nodes/1.CYZMFpIp.js","../chunks/CLZBEpLY.js","../nodes/2.mqgFVWFQ.js","../chunks/BB7zPpV2.js","../assets/HeroHeader.ByXNeezk.css","../chunks/rB_71s8h.js","../assets/Sparkline.DVOptay1.css","../chunks/rUtW7Hx6.js","../assets/StatBlock.DX6OXz7z.css","../chunks/DZrdToAH.js","../assets/Tabs.CU9_rsWl.css","../chunks/CTLGzgdN.js","../assets/ui.CH-9N9-0.css","../assets/2.Cnug3B4a.css","../nodes/3.y115j1d5.js","../chunks/CY3heNub.js","../assets/cluster-label-layer.aRgASjnn.css","../chunks/DEH43YwF.js","../chunks/CqgtdAx_.js","../chunks/Cge6qiwc.js","../assets/no-face-up.BlswZ73M.css","../assets/ThreeBrainRenderer.BSwu9fuL.css","../assets/3.DqDkvXKx.css","../nodes/4.D6vXYBoQ.js","../nodes/5.hjw2O-4e.js","../assets/5.B_uRJ0Jj.css","../nodes/6.CAoDfDt6.js","../chunks/CnwXLaZJ.js","../assets/memory.BscouZPQ.css","../assets/6.CmoCAENN.css","../nodes/7.CLgPSQ8Z.js","../assets/7.CK1_ePLd.css","../nodes/8.zuaO1Hik.js","../assets/8.Cx548gay.css","../nodes/9.Cdsd85m2.js","../assets/9.CxLgHkUJ.css","../nodes/10.3rxHNnSx.js","../assets/10.BxJazN1A.css","../nodes/11.B6jWv3Kz.js","../assets/11.kOP0rMCQ.css","../nodes/12.BrDHeTEq.js","../assets/12.D7ygxlsh.css","../nodes/13.CE5bd4JV.js","../assets/13.p6rC_qJV.css","../nodes/14.DgXD2LRx.js","../assets/14.Cl-Ch082.css","../nodes/15.Cz1KI9Fv.js","../chunks/DX_JOBSO.js","../chunks/BOnrCZaR.js","../assets/nexus-adapter.DuSZKvuH.css","../assets/15.CdtiwMjj.css","../nodes/16.K9wYQPhb.js","../assets/16.BzOs0cg_.css","../nodes/17.CtUmdfMg.js","../assets/17.C-9c74gE.css","../nodes/18.mtosd0sL.js","../assets/18.d18ttKnU.css","../nodes/19.su55K8y_.js","../assets/19.DQwwpjAV.css","../nodes/20.NJuHLxuS.js","../assets/20.CYAn9-TU.css","../nodes/21.BhwhdQCq.js","../assets/21.nneFKQjw.css","../nodes/22.BmJEWwER.js","../assets/22.nNcqMuWE.css","../nodes/23.CAVIJEH-.js","../assets/23.hkLGkf1W.css","../nodes/24.CMuXs5Sy.js","../chunks/EZwHPWle.js","../assets/tasks.BZWJL4jq.css","../chunks/C87Q3uxm.js","../assets/saga-board.XH0XIkul.css","../assets/24.BWCeO61w.css","../nodes/25.DhMBJYAo.js","../assets/25.BtvG5YXz.css","../nodes/26.CJ4FA5FS.js","../assets/26.Bc1bH1ab.css","../nodes/28.D64RBcfs.js","../assets/28.B2KOVxyP.css","../nodes/29.yfuBeH1x.js","../assets/29.DRNLnKHe.css","../nodes/30.1WUv5bh9.js","../assets/30.hXrXZpmS.css"])))=>i.map(i=>d[i]);
2
+ import{$ as e,A as t,D as n,E as r,H as i,I as a,J as o,M as s,O as c,Q as l,R as u,S as d,U as f,W as p,X as m,Y as h,a as g,at as _,et as v,i as y,k as b,o as x,ot as S,r as C,ut as w}from"../chunks/DGftG5oL.js";import{t as T}from"../chunks/C6jhAnil.js";import"../chunks/B8WnZMYa.js";var E={},D=t(`<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>`),O=t(`<!> <!>`,1);function k(t,y){S(y,!0);let T=g(y,`components`,23,()=>[]),E=g(y,`data_0`,3,null),k=g(y,`data_1`,3,null);p(()=>y.stores.page.set(y.page)),f(()=>{y.stores,y.page,y.constructors,T(),y.form,E(),k(),y.stores.page.notify()});let A=e(!1),j=e(!1),M=e(null);C(()=>{let e=y.stores.page.subscribe(()=>{a(A)&&(l(j,!0),u().then(()=>{l(M,document.title||`untitled page`,!0)}))});return l(A,!0),e});let N=v(()=>y.constructors[1]);var P=O(),F=h(P),I=e=>{let t=v(()=>y.constructors[0]);var n=b();d(h(n),()=>a(t),(e,t)=>{x(t(e,{get data(){return E()},get form(){return y.form},get params(){return y.page.params},children:(e,t)=>{var n=b();d(h(n),()=>a(N),(e,t)=>{x(t(e,{get data(){return k()},get form(){return y.form},get params(){return y.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),c(e,n)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),c(e,n)},L=e=>{let t=v(()=>y.constructors[0]);var n=b();d(h(n),()=>a(t),(e,t)=>{x(t(e,{get data(){return E()},get form(){return y.form},get params(){return y.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),c(e,n)};r(F,e=>{y.constructors[1]?e(I):e(L,-1)});var R=m(F,2),z=e=>{var t=D(),l=o(t),u=e=>{var t=s();i(()=>n(t,a(M))),c(e,t)};r(l,e=>{a(j)&&e(u)}),w(t),c(e,t)};r(R,e=>{a(A)&&e(z)}),c(t,P),_()}var A=y(k),j=[()=>T(()=>import(`../nodes/0.DMP7swbx.js`),__vite__mapDeps([0,1,2,3,4,5]),import.meta.url),()=>T(()=>import(`../nodes/1.CYZMFpIp.js`),__vite__mapDeps([6,1,7,3,4]),import.meta.url),()=>T(()=>import(`../nodes/2.mqgFVWFQ.js`),__vite__mapDeps([8,1,4,9,10,11,12,13,14,15,16,17,18,19]),import.meta.url),()=>T(()=>import(`../nodes/3.y115j1d5.js`),__vite__mapDeps([20,1,21,4,22,7,3,23,24,25,26,27,15,16,28]),import.meta.url),()=>T(()=>import(`../nodes/4.D6vXYBoQ.js`),__vite__mapDeps([29,1,4]),import.meta.url),()=>T(()=>import(`../nodes/5.hjw2O-4e.js`),__vite__mapDeps([30,1,4,15,16,17,18,31]),import.meta.url),()=>T(()=>import(`../nodes/6.CAoDfDt6.js`),__vite__mapDeps([32,1,4,33,15,16,17,18,34,35]),import.meta.url),()=>T(()=>import(`../nodes/7.CLgPSQ8Z.js`),__vite__mapDeps([36,1,23,24,4,25,26,27,17,15,16,18,37]),import.meta.url),()=>T(()=>import(`../nodes/8.zuaO1Hik.js`),__vite__mapDeps([38,1,4,33,15,16,17,18,34,39]),import.meta.url),()=>T(()=>import(`../nodes/9.Cdsd85m2.js`),__vite__mapDeps([40,1,4,33,15,16,17,18,34,41]),import.meta.url),()=>T(()=>import(`../nodes/10.3rxHNnSx.js`),__vite__mapDeps([42,1,4,33,15,16,17,18,34,43]),import.meta.url),()=>T(()=>import(`../nodes/11.B6jWv3Kz.js`),__vite__mapDeps([44,1,4,33,15,16,17,18,34,45]),import.meta.url),()=>T(()=>import(`../nodes/12.BrDHeTEq.js`),__vite__mapDeps([46,1,4,33,15,16,17,18,34,47]),import.meta.url),()=>T(()=>import(`../nodes/13.CE5bd4JV.js`),__vite__mapDeps([48,1,4,33,15,16,17,18,34,49]),import.meta.url),()=>T(()=>import(`../nodes/14.DgXD2LRx.js`),__vite__mapDeps([50,1,4,33,15,16,17,18,34,51]),import.meta.url),()=>T(()=>import(`../nodes/15.Cz1KI9Fv.js`),__vite__mapDeps([52,1,3,53,4,54,21,22,25,26,55,15,16,17,18,56]),import.meta.url),()=>T(()=>import(`../nodes/16.K9wYQPhb.js`),__vite__mapDeps([57,1,3,53,4,54,21,22,25,26,55,15,16,17,18,58]),import.meta.url),()=>T(()=>import(`../nodes/17.CtUmdfMg.js`),__vite__mapDeps([59,1,3,53,4,54,21,22,25,26,55,15,16,17,18,60]),import.meta.url),()=>T(()=>import(`../nodes/18.mtosd0sL.js`),__vite__mapDeps([61,1,3,53,4,54,21,22,25,26,55,15,16,17,18,62]),import.meta.url),()=>T(()=>import(`../nodes/19.su55K8y_.js`),__vite__mapDeps([63,1,4,15,16,17,18,64]),import.meta.url),()=>T(()=>import(`../nodes/20.NJuHLxuS.js`),__vite__mapDeps([65,1,3,53,4,9,10,15,16,17,18,66]),import.meta.url),()=>T(()=>import(`../nodes/21.BhwhdQCq.js`),__vite__mapDeps([67,1,4,15,16,17,18,68]),import.meta.url),()=>T(()=>import(`../nodes/22.BmJEWwER.js`),__vite__mapDeps([69,1,4,15,16,17,18,70]),import.meta.url),()=>T(()=>import(`../nodes/23.CAVIJEH-.js`),__vite__mapDeps([71,1,4,15,16,17,18,72]),import.meta.url),()=>T(()=>import(`../nodes/24.CMuXs5Sy.js`),__vite__mapDeps([73,1,3,53,2,74,24,4,13,14,25,26,15,16,17,18,75,76,77,78]),import.meta.url),()=>T(()=>import(`../nodes/25.DhMBJYAo.js`),__vite__mapDeps([79,1,3,53,2,74,24,4,13,14,25,26,15,16,17,18,75,80]),import.meta.url),()=>T(()=>import(`../nodes/26.CJ4FA5FS.js`),__vite__mapDeps([81,1,3,53,74,24,4,13,14,25,26,15,16,17,18,75,9,10,82]),import.meta.url),()=>T(()=>import(`../chunks/B_0_YCYG.js`),[],import.meta.url),()=>T(()=>import(`../nodes/28.D64RBcfs.js`),__vite__mapDeps([83,1,74,24,4,13,14,25,26,15,16,17,18,75,76,77,9,10,84]),import.meta.url),()=>T(()=>import(`../nodes/29.yfuBeH1x.js`),__vite__mapDeps([85,1,74,24,4,13,14,25,26,15,16,17,18,75,9,10,86]),import.meta.url),()=>T(()=>import(`../nodes/30.1WUv5bh9.js`),__vite__mapDeps([87,1,4,9,10,11,12,13,14,15,16,17,18,88]),import.meta.url),()=>T(()=>import(`../chunks/KrUPZzXZ.js`),[],import.meta.url)],M=[0],N={"/":[-3],"/brain":[-4],"/brain/3d":[-5],"/brain/causal":[-6],"/brain/decisions":[6],"/brain/graph":[7],"/brain/learnings":[-9],"/brain/observations":[9],"/brain/overview":[-11],"/brain/patterns":[-12],"/brain/quality":[12],"/brain/search":[-14],"/brain/tier-stats":[-15],"/code":[-16],"/code/community/[id]":[-17],"/code/flows":[-18],"/code/symbol/[name]":[-19],"/keys":[19],"/projects":[-21],"/settings/vault":[-22],"/setup":[22],"/studio/[projectId]":[-24],"/studio/[projectId]/[sagaId]":[-25],"/tasks":[-26],"/tasks/graph":[-28],"/tasks/kanban":[-29],"/tasks/pipeline":[-30],"/tasks/sessions":[-31],"/tasks/tree/[epicId]":[-32],"/tasks/[id]":[-27]},P={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},F=Object.fromEntries(Object.entries(P.transport).map(([e,t])=>[e,t.decode])),I=Object.fromEntries(Object.entries(P.transport).map(([e,t])=>[e,t.encode])),L=!1,R=(e,t)=>F[e](t);export{R as decode,F as decoders,N as dictionary,I as encoders,L as hash,P as hooks,E as matchers,j as nodes,A as root,M as server_loads};
@@ -0,0 +1 @@
1
+ import{a as e,d as t}from"../chunks/cWVw9W0E.js";export{t as load_css,e as start};
@@ -1 +1 @@
1
- import{$ as e,A as t,C as n,D as r,E as i,F as a,H as o,I as s,J as c,N as l,O as u,P as d,Q as f,T as p,U as m,X as h,Y as g,_,at as v,c as y,d as b,et as x,k as S,lt as C,nt as w,o as T,ot as E,r as D,s as O,tt as k,u as A,ut as j,v as M,w as N}from"../chunks/DyGQ_VXC.js";import"../chunks/CQCxd1p9.js";import{t as P}from"../chunks/eK8hf4s7.js";var F=t(`<span class="chip svelte-t4k058" aria-hidden="true"> </span> <span class="trigger-name svelte-t4k058"> </span>`,1),I=t(`<span class="chip placeholder svelte-t4k058" aria-hidden="true">?</span> <span class="trigger-name muted svelte-t4k058">Select project</span>`,1),L=t(`<div class="empty-msg svelte-t4k058"> </div>`),ee=t(`<span class="active-dot svelte-t4k058" aria-label="active" title="active"></span>`),te=t(`<span class="unhealthy-dot svelte-t4k058" aria-label="unhealthy" title="unhealthy"></span>`),ne=t(`<button type="button" role="option"><span class="row-chip svelte-t4k058" aria-hidden="true"> </span> <div class="row-info svelte-t4k058"><div class="row-name-row svelte-t4k058"><span class="row-name svelte-t4k058"> </span> <!> <!></div> <span class="row-path svelte-t4k058"> </span></div> <div class="row-stats svelte-t4k058" aria-hidden="true"><span class="stat-pill svelte-t4k058"> </span> <span class="stat-pill svelte-t4k058"> </span></div></button>`),R=t(`<div class="dropdown svelte-t4k058" role="listbox" aria-label="Projects"><div class="dropdown-header svelte-t4k058"><div class="search-wrap svelte-t4k058"><svg class="search-icon svelte-t4k058" width="13" height="13" viewBox="0 0 13 13" fill="none" aria-hidden="true"><circle cx="5.5" cy="5.5" r="4" stroke="currentColor" stroke-width="1.3"></circle><path d="M8.5 8.5L11 11" stroke="currentColor" stroke-width="1.3" stroke-linecap="round"></path></svg> <input type="text" class="search-input svelte-t4k058" placeholder="Filter projects..." autocomplete="off"/></div> <label class="toggle-label svelte-t4k058" title="Show test / scratch projects"><input type="checkbox" class="toggle-checkbox svelte-t4k058"/> <span class="toggle-text svelte-t4k058">Show test</span></label></div> <div class="project-list svelte-t4k058"><!></div></div>`),z=t(`<div class="project-selector svelte-t4k058"><button type="button" aria-haspopup="listbox"><!> <svg width="10" height="10" viewBox="0 0 10 10" fill="none" aria-hidden="true"><path d="M2 3.5L5 6.5L8 3.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></button> <!></div>`);function B(t,n){E(n,!0);let l=e(!1),p=e(``),w=e(!1),k=e(0),P=e(!1),B=e(void 0),V=e(void 0),H=/\/(tmp|test|fixture|scratch|sandbox)\b/i,U=x(()=>n.projects.find(e=>e.projectId===n.activeProjectId)??null),W=[`var(--info)`,`var(--success)`,`var(--warning)`,`var(--accent)`,`var(--priority-critical)`,`var(--edge-definition)`,`var(--edge-structural)`,`var(--edge-extends)`];function G(e){return W[(e.charCodeAt(0)||0)%W.length]??`var(--accent)`}function K(e){return(e[0]??`?`).toUpperCase()}let q=x(()=>{let e=n.projects;if(s(w)||(e=e.filter(e=>!H.test(e.projectPath))),s(p).trim()){let t=s(p).toLowerCase();e=e.filter(e=>e.name.toLowerCase().includes(t)||e.projectPath.toLowerCase().includes(t))}return e}),J=x(()=>s(q)[s(k)]??null);function Y(e){return e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function re(){f(l,!0),f(k,0),setTimeout(()=>s(V)?.focus(),0)}function X(){f(l,!1),f(p,``)}function ie(){s(l)?X():re()}async function Z(e){if(!(e===n.activeProjectId||s(P))){f(P,!0);try{(await fetch(`/api/project/switch`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({projectId:e})})).ok&&(X(),window.location.reload())}finally{f(P,!1)}}}function ae(e){if(e.key===`Escape`){X();return}e.key===`ArrowDown`?(e.preventDefault(),f(k,Math.min(s(k)+1,s(q).length-1),!0)):e.key===`ArrowUp`?(e.preventDefault(),f(k,Math.max(s(k)-1,0),!0)):e.key===`Enter`&&(e.preventDefault(),s(J)&&Z(s(J).projectId))}m(()=>{s(q),f(k,0)}),D(()=>{function e(e){s(B)&&!s(B).contains(e.target)&&X()}return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)});var Q=z(),$=c(Q);let oe;var se=c($),ce=e=>{var t=F(),n=g(t),i=c(n,!0);j(n);var a=h(n,2),l=c(a,!0);j(a),o((e,t)=>{_(n,`background: ${e??``}`),r(i,t),r(l,s(U).name)},[()=>G(s(U).name),()=>K(s(U).name)]),u(e,t)},le=e=>{var t=I();C(2),u(e,t)};i(se,e=>{s(U)?e(ce):e(le,-1)});var ue=h(se,2);let de;j($);var fe=h($,2),pe=e=>{var t=R(),l=c(t),m=c(l),v=h(c(m),2);A(v),b(v,`spellcheck`,!1),T(v,e=>f(V,e),()=>s(V)),j(m);var E=h(m,2),D=c(E);A(D),C(2),j(E),j(l);var F=h(l,2),I=c(F),z=e=>{var t=L(),n=c(t,!0);j(t),o(()=>r(n,s(p)?`No projects match "${s(p)}"`:`No projects`)),u(e,t)},B=e=>{var t=S();N(g(t),19,()=>s(q),e=>e.projectId,(e,t,l)=>{let p=x(()=>s(t).projectId===n.activeProjectId),m=x(()=>s(t).healthStatus===`unhealthy`),g=x(()=>s(l)===s(k));var v=ne();let y;var S=c(v),C=c(S,!0);j(S);var w=h(S,2),T=c(w),E=c(T),D=c(E,!0);j(E);var O=h(E,2),A=e=>{u(e,ee())};i(O,e=>{s(p)&&e(A)});var N=h(O,2),F=e=>{u(e,te())};i(N,e=>{s(m)&&e(F)}),j(T);var I=h(T,2),L=c(I,!0);j(I),j(w);var R=h(w,2),z=c(R),B=c(z);j(z);var V=h(z,2),H=c(V);j(V),j(R),j(v),o((e,n,i,a)=>{y=M(v,1,`project-row svelte-t4k058`,null,y,{active:s(p),unhealthy:s(m),highlighted:s(g)}),b(v,`aria-selected`,s(p)),v.disabled=s(P),_(S,`background: ${e??``}`),r(C,n),r(D,s(t).name),r(L,s(t).projectPath),r(B,`${i??``}t`),r(H,`${a??``}s`)},[()=>G(s(t).name),()=>K(s(t).name),()=>Y(s(t).taskCount),()=>Y(s(t).nodeCount)]),d(`click`,v,()=>Z(s(t).projectId)),a(`mouseenter`,v,()=>{f(k,s(l),!0)}),u(e,v)}),u(e,t)};i(I,e=>{s(q).length===0?e(z):e(B,-1)}),j(F),j(t),d(`keydown`,v,ae),y(v,()=>s(p),e=>f(p,e)),O(D,()=>s(w),e=>f(w,e)),u(e,t)};i(fe,e=>{s(l)&&e(pe)}),j(Q),T(Q,e=>f(B,e),()=>s(B)),o(()=>{oe=M($,1,`trigger svelte-t4k058`,null,oe,{open:s(l)}),b($,`aria-expanded`,s(l)),b($,`title`,s(U)?s(U).projectPath:`Select project`),de=M(ue,0,`chevron svelte-t4k058`,null,de,{rotated:s(l)})}),d(`click`,$,ie),u(t,Q),v()}l([`click`,`keydown`]);var V=t(`<a> </a>`),H=t(`<a class="skip-link" href="#main">Skip to content</a> <div class="studio-shell svelte-12qhfyh"><header class="studio-header svelte-12qhfyh"><a href="/" class="studio-logo svelte-12qhfyh"><span class="logo-mark svelte-12qhfyh">C</span> <span class="logo-text svelte-12qhfyh">CLEO Studio</span></a> <!> <nav class="studio-nav svelte-12qhfyh" aria-label="Primary"></nav></header> <main id="main" class="studio-main svelte-12qhfyh" tabindex="-1"><!></main></div>`,1);function U(e,t){E(t,!0);let i=()=>w(P,`$page`,a),[a,l]=k(),d=x(()=>t.data.activeProjectId?`/studio/${t.data.activeProjectId}`:`/projects`),f=x(()=>[{href:`/brain`,label:`Brain`,description:`5-substrate living canvas`,exact:!0},{href:`/brain/overview`,label:`Memory`,description:`BRAIN dashboard (decisions, observations, quality)`,exact:!1},{href:`/code`,label:`Code`,description:`Code intelligence`,exact:!1},{href:`/tasks`,label:`Tasks`,description:`Task management`,exact:!1},{href:`/tasks/kanban`,label:`Board`,description:`Agent-lifecycle dispatcher board (read-only)`,exact:!1},{href:s(d),label:`Console`,description:`Saga operator console — workgraph + live dispatcher board`,exact:!1},{href:`/settings/vault`,label:`Vault`,description:`Service vault — connected services + agent grants (read-only)`,exact:!1},{href:`/projects`,label:`Admin`,description:`Project registry — scan, index, and manage projects`,exact:!1}]);var m=H(),_=h(g(m),2),y=c(_),S=h(c(y),2);B(S,{get projects(){return t.data.projects},get activeProjectId(){return t.data.activeProjectId}});var C=h(S,2);N(C,21,()=>s(f),p,(e,t)=>{var n=V();let a;var l=c(n,!0);j(n),o((e,i)=>{b(n,`href`,s(t).href),a=M(n,1,`nav-link svelte-12qhfyh`,null,a,e),b(n,`title`,s(t).description),b(n,`aria-current`,i),r(l,s(t).label)},[()=>({active:s(t).exact?i().url.pathname===s(t).href:i().url.pathname.startsWith(s(t).href)}),()=>s(t).exact?i().url.pathname===s(t).href?`page`:void 0:i().url.pathname.startsWith(s(t).href)?`page`:void 0]),u(e,n)}),j(C),j(y);var T=h(y,2);n(c(T),()=>t.children),j(T),j(_),u(e,m),v(),l()}export{U as component};
1
+ import{$ as e,A as t,C as n,D as r,E as i,F as a,H as o,I as s,J as c,N as l,O as u,P as d,Q as f,T as p,U as m,X as h,Y as g,_,at as v,c as y,d as b,et as x,k as S,lt as C,nt as w,o as T,ot as E,r as D,s as O,tt as k,u as A,ut as j,v as M,w as N}from"../chunks/DGftG5oL.js";import"../chunks/B8WnZMYa.js";import{t as P}from"../chunks/BSRBuVG3.js";var F=t(`<span class="chip svelte-t4k058" aria-hidden="true"> </span> <span class="trigger-name svelte-t4k058"> </span>`,1),I=t(`<span class="chip placeholder svelte-t4k058" aria-hidden="true">?</span> <span class="trigger-name muted svelte-t4k058">Select project</span>`,1),L=t(`<div class="empty-msg svelte-t4k058"> </div>`),ee=t(`<span class="active-dot svelte-t4k058" aria-label="active" title="active"></span>`),te=t(`<span class="unhealthy-dot svelte-t4k058" aria-label="unhealthy" title="unhealthy"></span>`),ne=t(`<button type="button" role="option"><span class="row-chip svelte-t4k058" aria-hidden="true"> </span> <div class="row-info svelte-t4k058"><div class="row-name-row svelte-t4k058"><span class="row-name svelte-t4k058"> </span> <!> <!></div> <span class="row-path svelte-t4k058"> </span></div> <div class="row-stats svelte-t4k058" aria-hidden="true"><span class="stat-pill svelte-t4k058"> </span> <span class="stat-pill svelte-t4k058"> </span></div></button>`),R=t(`<div class="dropdown svelte-t4k058" role="listbox" aria-label="Projects"><div class="dropdown-header svelte-t4k058"><div class="search-wrap svelte-t4k058"><svg class="search-icon svelte-t4k058" width="13" height="13" viewBox="0 0 13 13" fill="none" aria-hidden="true"><circle cx="5.5" cy="5.5" r="4" stroke="currentColor" stroke-width="1.3"></circle><path d="M8.5 8.5L11 11" stroke="currentColor" stroke-width="1.3" stroke-linecap="round"></path></svg> <input type="text" class="search-input svelte-t4k058" placeholder="Filter projects..." autocomplete="off"/></div> <label class="toggle-label svelte-t4k058" title="Show test / scratch projects"><input type="checkbox" class="toggle-checkbox svelte-t4k058"/> <span class="toggle-text svelte-t4k058">Show test</span></label></div> <div class="project-list svelte-t4k058"><!></div></div>`),z=t(`<div class="project-selector svelte-t4k058"><button type="button" aria-haspopup="listbox"><!> <svg width="10" height="10" viewBox="0 0 10 10" fill="none" aria-hidden="true"><path d="M2 3.5L5 6.5L8 3.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></button> <!></div>`);function B(t,n){E(n,!0);let l=e(!1),p=e(``),w=e(!1),k=e(0),P=e(!1),B=e(void 0),V=e(void 0),H=/\/(tmp|test|fixture|scratch|sandbox)\b/i,U=x(()=>n.projects.find(e=>e.projectId===n.activeProjectId)??null),W=[`var(--info)`,`var(--success)`,`var(--warning)`,`var(--accent)`,`var(--priority-critical)`,`var(--edge-definition)`,`var(--edge-structural)`,`var(--edge-extends)`];function G(e){return W[(e.charCodeAt(0)||0)%W.length]??`var(--accent)`}function K(e){return(e[0]??`?`).toUpperCase()}let q=x(()=>{let e=n.projects;if(s(w)||(e=e.filter(e=>!H.test(e.projectPath))),s(p).trim()){let t=s(p).toLowerCase();e=e.filter(e=>e.name.toLowerCase().includes(t)||e.projectPath.toLowerCase().includes(t))}return e}),J=x(()=>s(q)[s(k)]??null);function Y(e){return e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function re(){f(l,!0),f(k,0),setTimeout(()=>s(V)?.focus(),0)}function X(){f(l,!1),f(p,``)}function ie(){s(l)?X():re()}async function Z(e){if(!(e===n.activeProjectId||s(P))){f(P,!0);try{(await fetch(`/api/project/switch`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({projectId:e})})).ok&&(X(),window.location.reload())}finally{f(P,!1)}}}function ae(e){if(e.key===`Escape`){X();return}e.key===`ArrowDown`?(e.preventDefault(),f(k,Math.min(s(k)+1,s(q).length-1),!0)):e.key===`ArrowUp`?(e.preventDefault(),f(k,Math.max(s(k)-1,0),!0)):e.key===`Enter`&&(e.preventDefault(),s(J)&&Z(s(J).projectId))}m(()=>{s(q),f(k,0)}),D(()=>{function e(e){s(B)&&!s(B).contains(e.target)&&X()}return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)});var Q=z(),$=c(Q);let oe;var se=c($),ce=e=>{var t=F(),n=g(t),i=c(n,!0);j(n);var a=h(n,2),l=c(a,!0);j(a),o((e,t)=>{_(n,`background: ${e??``}`),r(i,t),r(l,s(U).name)},[()=>G(s(U).name),()=>K(s(U).name)]),u(e,t)},le=e=>{var t=I();C(2),u(e,t)};i(se,e=>{s(U)?e(ce):e(le,-1)});var ue=h(se,2);let de;j($);var fe=h($,2),pe=e=>{var t=R(),l=c(t),m=c(l),v=h(c(m),2);A(v),b(v,`spellcheck`,!1),T(v,e=>f(V,e),()=>s(V)),j(m);var E=h(m,2),D=c(E);A(D),C(2),j(E),j(l);var F=h(l,2),I=c(F),z=e=>{var t=L(),n=c(t,!0);j(t),o(()=>r(n,s(p)?`No projects match "${s(p)}"`:`No projects`)),u(e,t)},B=e=>{var t=S();N(g(t),19,()=>s(q),e=>e.projectId,(e,t,l)=>{let p=x(()=>s(t).projectId===n.activeProjectId),m=x(()=>s(t).healthStatus===`unhealthy`),g=x(()=>s(l)===s(k));var v=ne();let y;var S=c(v),C=c(S,!0);j(S);var w=h(S,2),T=c(w),E=c(T),D=c(E,!0);j(E);var O=h(E,2),A=e=>{u(e,ee())};i(O,e=>{s(p)&&e(A)});var N=h(O,2),F=e=>{u(e,te())};i(N,e=>{s(m)&&e(F)}),j(T);var I=h(T,2),L=c(I,!0);j(I),j(w);var R=h(w,2),z=c(R),B=c(z);j(z);var V=h(z,2),H=c(V);j(V),j(R),j(v),o((e,n,i,a)=>{y=M(v,1,`project-row svelte-t4k058`,null,y,{active:s(p),unhealthy:s(m),highlighted:s(g)}),b(v,`aria-selected`,s(p)),v.disabled=s(P),_(S,`background: ${e??``}`),r(C,n),r(D,s(t).name),r(L,s(t).projectPath),r(B,`${i??``}t`),r(H,`${a??``}s`)},[()=>G(s(t).name),()=>K(s(t).name),()=>Y(s(t).taskCount),()=>Y(s(t).nodeCount)]),d(`click`,v,()=>Z(s(t).projectId)),a(`mouseenter`,v,()=>{f(k,s(l),!0)}),u(e,v)}),u(e,t)};i(I,e=>{s(q).length===0?e(z):e(B,-1)}),j(F),j(t),d(`keydown`,v,ae),y(v,()=>s(p),e=>f(p,e)),O(D,()=>s(w),e=>f(w,e)),u(e,t)};i(fe,e=>{s(l)&&e(pe)}),j(Q),T(Q,e=>f(B,e),()=>s(B)),o(()=>{oe=M($,1,`trigger svelte-t4k058`,null,oe,{open:s(l)}),b($,`aria-expanded`,s(l)),b($,`title`,s(U)?s(U).projectPath:`Select project`),de=M(ue,0,`chevron svelte-t4k058`,null,de,{rotated:s(l)})}),d(`click`,$,ie),u(t,Q),v()}l([`click`,`keydown`]);var V=t(`<a> </a>`),H=t(`<a class="skip-link" href="#main">Skip to content</a> <div class="studio-shell svelte-12qhfyh"><header class="studio-header svelte-12qhfyh"><a href="/" class="studio-logo svelte-12qhfyh"><span class="logo-mark svelte-12qhfyh">C</span> <span class="logo-text svelte-12qhfyh">CLEO Studio</span></a> <!> <nav class="studio-nav svelte-12qhfyh" aria-label="Primary"></nav></header> <main id="main" class="studio-main svelte-12qhfyh" tabindex="-1"><!></main></div>`,1);function U(e,t){E(t,!0);let i=()=>w(P,`$page`,a),[a,l]=k(),d=x(()=>t.data.activeProjectId?`/studio/${t.data.activeProjectId}`:`/projects`),f=x(()=>[{href:`/brain`,label:`Brain`,description:`5-substrate living canvas`,exact:!0},{href:`/brain/overview`,label:`Memory`,description:`BRAIN dashboard (decisions, observations, quality)`,exact:!1},{href:`/code`,label:`Code`,description:`Code intelligence`,exact:!1},{href:`/tasks`,label:`Tasks`,description:`Task management`,exact:!1},{href:`/tasks/kanban`,label:`Board`,description:`Agent-lifecycle dispatcher board (read-only)`,exact:!1},{href:s(d),label:`Console`,description:`Saga operator console — workgraph + live dispatcher board`,exact:!1},{href:`/settings/vault`,label:`Vault`,description:`Service vault — connected services + agent grants (read-only)`,exact:!1},{href:`/projects`,label:`Admin`,description:`Project registry — scan, index, and manage projects`,exact:!1}]);var m=H(),_=h(g(m),2),y=c(_),S=h(c(y),2);B(S,{get projects(){return t.data.projects},get activeProjectId(){return t.data.activeProjectId}});var C=h(S,2);N(C,21,()=>s(f),p,(e,t)=>{var n=V();let a;var l=c(n,!0);j(n),o((e,i)=>{b(n,`href`,s(t).href),a=M(n,1,`nav-link svelte-12qhfyh`,null,a,e),b(n,`title`,s(t).description),b(n,`aria-current`,i),r(l,s(t).label)},[()=>({active:s(t).exact?i().url.pathname===s(t).href:i().url.pathname.startsWith(s(t).href)}),()=>s(t).exact?i().url.pathname===s(t).href?`page`:void 0:i().url.pathname.startsWith(s(t).href)?`page`:void 0]),u(e,n)}),j(C),j(y);var T=h(y,2);n(c(T),()=>t.children),j(T),j(_),u(e,m),v(),l()}export{U as component};
@@ -1 +1 @@
1
- import{A as e,D as t,H as n,J as r,O as i,X as a,Y as o,at as s,ot as c,ut as l}from"../chunks/DyGQ_VXC.js";import"../chunks/CQCxd1p9.js";import{t as u}from"../chunks/DVHIxkgs.js";var d=e(`<h1> </h1> <p> </p>`,1);function f(e,f){c(f,!0);var p=d(),m=o(p),h=r(m,!0);l(m);var g=a(m,2),_=r(g,!0);l(g),n(()=>{t(h,u.status),t(_,u.error?.message)}),i(e,p),s()}export{f as component};
1
+ import{A as e,D as t,H as n,J as r,O as i,X as a,Y as o,at as s,ot as c,ut as l}from"../chunks/DGftG5oL.js";import"../chunks/B8WnZMYa.js";import{t as u}from"../chunks/CLZBEpLY.js";var d=e(`<h1> </h1> <p> </p>`,1);function f(e,f){c(f,!0);var p=d(),m=o(p),h=r(m,!0);l(m);var g=a(m,2),_=r(g,!0);l(g),n(()=>{t(h,u.status),t(_,u.error?.message)}),i(e,p),s()}export{f as component};
@@ -1 +1 @@
1
- import{A as e,D as t,E as n,H as r,I as i,J as a,K as o,M as s,O as c,V as l,X as u,Y as d,_ as f,at as p,d as m,et as h,k as g,lt as _,ot as v,ut as y,w as b,x}from"../chunks/DyGQ_VXC.js";import"../chunks/CQCxd1p9.js";import{a as S,r as C}from"../chunks/CEqOYim7.js";import{o as w}from"../chunks/CqF5Lomf.js";import{a as T,i as E,n as D,t as O}from"../chunks/BRgWBQlV.js";var k=e(`<article class="stat svelte-1x5k1qb"><span class="stat-value svelte-1x5k1qb"> </span> <span class="stat-label svelte-1x5k1qb"> </span></article>`),A=e(`<div class="panel-head svelte-1x5k1qb"><h2 class="panel-title svelte-1x5k1qb">Tier distribution by table</h2> <div class="legend svelte-1x5k1qb"><!> <!> <!></div></div>`),j=e(`<span class="seg-n svelte-1x5k1qb"> </span>`),ee=e(`<span class="seg seg-short svelte-1x5k1qb"><!></span>`),te=e(`<span class="seg-n svelte-1x5k1qb"> </span>`),ne=e(`<span class="seg seg-medium svelte-1x5k1qb"><!></span>`),M=e(`<span class="seg-n svelte-1x5k1qb"> </span>`),N=e(`<span class="seg seg-long svelte-1x5k1qb"><!></span>`),P=e(`<span class="seg-empty svelte-1x5k1qb">empty</span>`),F=e(`<a class="chart-row svelte-1x5k1qb"><span class="chart-label svelte-1x5k1qb"> </span> <div class="chart-bars svelte-1x5k1qb" aria-hidden="true"><!> <!> <!> <!></div> <span class="chart-total svelte-1x5k1qb"> </span></a>`),I=e(`<div class="chart-rows svelte-1x5k1qb"></div>`),L=e(`<div><h2 class="panel-title svelte-1x5k1qb">Upcoming long-tier promotions</h2> <span class="panel-sub svelte-1x5k1qb">Medium entries eligible after the 7-day citation gate</span></div>`),R=e(`<li class="promo-row svelte-1x5k1qb"><code class="promo-id svelte-1x5k1qb"> </code> <span class="promo-table svelte-1x5k1qb"> </span> <!> <div class="promo-end svelte-1x5k1qb"><!></div></li>`),z=e(`<ul class="promo-list svelte-1x5k1qb"></ul>`),B=e(`<div class="panel-head svelte-1x5k1qb"><h2 class="panel-title svelte-1x5k1qb">Recent observations</h2> <a class="panel-link svelte-1x5k1qb" href="/brain/observations">See all →</a></div>`),V=e(`<li class="recent-row svelte-1x5k1qb"><span class="recent-head svelte-1x5k1qb"><code class="recent-id svelte-1x5k1qb"> </code> <!> <!> <span class="recent-date svelte-1x5k1qb"> </span></span> <span class="recent-body svelte-1x5k1qb"><span class="recent-title svelte-1x5k1qb"> </span> <!></span></li>`),H=e(`<ul class="recent-list svelte-1x5k1qb"></ul>`),U=e(`<div class="panel-head svelte-1x5k1qb"><h2 class="panel-title svelte-1x5k1qb">Recent decisions</h2> <a class="panel-link svelte-1x5k1qb" href="/brain/decisions">See all →</a></div>`),W=e(`<li class="recent-row svelte-1x5k1qb"><span class="recent-head svelte-1x5k1qb"><code class="recent-id svelte-1x5k1qb"> </code> <!> <!> <span class="recent-date svelte-1x5k1qb"> </span></span> <span class="recent-body svelte-1x5k1qb"><span class="recent-title svelte-1x5k1qb"> </span></span></li>`),G=e(`<ul class="recent-list svelte-1x5k1qb"></ul>`),K=e(`<div class="stats-grid svelte-1x5k1qb"></div> <!> <div class="dual svelte-1x5k1qb"><!> <!></div> <div class="dual svelte-1x5k1qb"><!> <!></div> <div class="actions svelte-1x5k1qb"><a href="/brain/graph" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">G</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Knowledge graph</span> <span class="action-desc svelte-1x5k1qb">Force-directed view of the full substrate</span></span></a> <a href="/brain/decisions" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">D</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Decisions</span> <span class="action-desc svelte-1x5k1qb">Timeline with rationale + outcomes</span></span></a> <a href="/brain/observations" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">O</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Observations</span> <span class="action-desc svelte-1x5k1qb">Filter by tier, type, and quality</span></span></a> <a href="/brain/patterns" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">P</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Patterns</span> <span class="action-desc svelte-1x5k1qb">Recurring workflow signals</span></span></a> <a href="/brain/learnings" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">L</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Learnings</span> <span class="action-desc svelte-1x5k1qb">Actionable insights with confidence</span></span></a> <a href="/brain/search" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">S</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Search</span> <span class="action-desc svelte-1x5k1qb">Cross-table FTS retrieval</span></span></a> <a href="/brain/causal" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">C</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Causal reasoning</span> <span class="action-desc svelte-1x5k1qb">Trace blocker chains to the root</span></span></a> <a href="/brain/tier-stats" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">T</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Tier stats</span> <span class="action-desc svelte-1x5k1qb">Retention split + verify queue</span></span></a></div>`,1),q=e(`<section class="overview svelte-1x5k1qb"><header class="view-head svelte-1x5k1qb"><div class="view-ident svelte-1x5k1qb"><div class="view-icon svelte-1x5k1qb" aria-hidden="true">B</div> <div><h1 class="view-title svelte-1x5k1qb">BRAIN</h1> <p class="view-sub svelte-1x5k1qb">Cognitive memory · observations · decisions · patterns · learnings</p></div></div> <nav class="view-nav svelte-1x5k1qb" aria-label="Brain navigation"><a href="/brain" class="nav-pill nav-pill--canvas svelte-1x5k1qb">Open in Canvas →</a> <a href="/brain/search" class="nav-pill svelte-1x5k1qb">Search</a> <a href="/brain/causal" class="nav-pill svelte-1x5k1qb">Causal</a> <a href="/brain/tier-stats" class="nav-pill svelte-1x5k1qb">Tier stats</a> <a href="/brain/quality" class="nav-pill svelte-1x5k1qb">Quality</a> <a href="/brain/graph" class="nav-pill svelte-1x5k1qb">Graph</a></nav></header> <!></section>`);function J(e,J){v(J,!0);function Y(e){return e.replace(`brain_`,``)}function X(e){let t=1;for(let n of e){let e=n.short+n.medium+n.long;e>t&&(t=e)}return t}function Z(e,t){return t===0?0:Math.round(e/t*100)}var Q=q();x(`1x5k1qb`,e=>{l(()=>{o.title=`BRAIN — CLEO Studio`})});var $=u(a(Q),2),re=e=>{w(e,{title:`brain.db not found`,subtitle:`Start a CLEO session to populate memory; this view will light up as entries are recorded.`})},ie=e=>{var o=K(),l=d(o);b(l,21,()=>J.data.stats,e=>e.label,(e,n)=>{var o=k(),s=a(o),l=a(s,!0);y(s);var d=u(s,2),f=a(d,!0);y(d),y(o),r(()=>{t(l,i(n).value),t(f,i(n).label)}),c(e,o)}),y(l);var p=u(l,2),v=e=>{let o=h(()=>X(J.data.tierDistribution));C(e,{header:e=>{var t=A(),n=u(a(t),2),r=a(n);D(r,{tier:`short`});var i=u(r,2);D(i,{tier:`medium`}),D(u(i,2),{tier:`long`}),y(n),y(t),c(e,t)},children:(e,s)=>{var l=I();b(l,21,()=>J.data.tierDistribution,e=>e.table,(e,s)=>{var l=F(),d=a(l),p=a(d,!0);y(d);var g=u(d,2),_=a(g),v=e=>{var l=ee(),u=a(l),d=e=>{var n=j(),o=a(n,!0);y(n),r(()=>t(o,i(s).short)),c(e,n)},p=h(()=>Z(i(s).short,i(o))>12);n(u,e=>{i(p)&&e(d)}),y(l),r(e=>f(l,`width:${e??``}%`),[()=>Z(i(s).short,i(o))]),c(e,l)};n(_,e=>{i(s).short>0&&e(v)});var b=u(_,2),x=e=>{var l=ne(),u=a(l),d=e=>{var n=te(),o=a(n,!0);y(n),r(()=>t(o,i(s).medium)),c(e,n)},p=h(()=>Z(i(s).medium,i(o))>12);n(u,e=>{i(p)&&e(d)}),y(l),r(e=>f(l,`width:${e??``}%`),[()=>Z(i(s).medium,i(o))]),c(e,l)};n(b,e=>{i(s).medium>0&&e(x)});var S=u(b,2),C=e=>{var l=N(),u=a(l),d=e=>{var n=M(),o=a(n,!0);y(n),r(()=>t(o,i(s).long)),c(e,n)},p=h(()=>Z(i(s).long,i(o))>12);n(u,e=>{i(p)&&e(d)}),y(l),r(e=>f(l,`width:${e??``}%`),[()=>Z(i(s).long,i(o))]),c(e,l)};n(S,e=>{i(s).long>0&&e(C)});var w=u(S,2),T=e=>{c(e,P())};n(w,e=>{i(s).short===0&&i(s).medium===0&&i(s).long===0&&e(T)}),y(g);var E=u(g,2),D=a(E,!0);y(E),y(l),r((e,n)=>{m(l,`href`,e),t(p,n),t(D,i(s).short+i(s).medium+i(s).long)},[()=>`/brain/${Y(i(s).table)}`,()=>Y(i(s).table)]),c(e,l)}),y(l),c(e,l)},$$slots:{header:!0,default:!0}})};n(p,e=>{J.data.tierDistribution.length>0&&e(v)});var x=u(p,2),q=a(x);C(q,{header:e=>{c(e,L())},children:(e,o)=>{var l=g(),f=d(l),p=e=>{w(e,{title:`Nothing queued`,subtitle:`Entries need ≥ 7 days age plus citation ≥ 5 (or owner-verified) to promote.`})},m=e=>{var n=z();b(n,21,()=>J.data.upcomingPromotions,e=>e.id,(e,n)=>{var o=R(),l=a(o),d=a(l,!0);y(l);var f=u(l,2),p=a(f,!0);y(f);var m=u(f,2);S(m,{tone:`accent`,size:`sm`,subtle:!0,children:(e,a)=>{_();var o=s();r(()=>t(o,i(n).track)),c(e,o)},$$slots:{default:!0}});var h=u(m,2);T(a(h),{get daysUntil(){return i(n).daysUntil}}),y(h),y(o),r(e=>{t(d,i(n).id),t(p,e)},[()=>Y(i(n).table)]),c(e,o)}),y(n),c(e,n)};n(f,e=>{J.data.upcomingPromotions.length===0?e(p):e(m,-1)}),c(e,l)},$$slots:{header:!0,default:!0}}),O(u(q,2),{limit:6}),y(x);var Q=u(x,2),$=a(Q);C($,{header:e=>{c(e,B())},children:(e,o)=>{var l=g(),f=d(l),p=e=>{w(e,{title:`No observations yet`})},m=e=>{var n=H();b(n,21,()=>J.data.recentObservations,e=>e.id,(e,n)=>{var o=V(),l=a(o),d=a(l),f=a(d,!0);y(d);var p=u(d,2);D(p,{get tier(){return i(n).memory_tier}});var m=u(p,2);S(m,{tone:`info`,size:`sm`,subtle:!0,children:(e,a)=>{_();var o=s();r(()=>t(o,i(n).type)),c(e,o)},$$slots:{default:!0}});var h=u(m,2),g=a(h,!0);y(h),y(l);var v=u(l,2),b=a(v),x=a(b,!0);y(b),E(u(b,2),{get score(){return i(n).quality_score},width:60,showLabel:!1}),y(v),y(o),r(e=>{t(f,i(n).id),t(g,e),t(x,i(n).title)},[()=>i(n).created_at.slice(0,10)]),c(e,o)}),y(n),c(e,n)};n(f,e=>{J.data.recentObservations.length===0?e(p):e(m,-1)}),c(e,l)},$$slots:{header:!0,default:!0}}),C(u($,2),{header:e=>{c(e,U())},children:(e,o)=>{var l=g(),f=d(l),p=e=>{w(e,{title:`No decisions yet`})},m=e=>{var n=G();b(n,21,()=>J.data.recentDecisions,e=>e.id,(e,n)=>{var o=W(),l=a(o),d=a(l),f=a(d,!0);y(d);var p=u(d,2);D(p,{get tier(){return i(n).memory_tier}});var m=u(p,2);{let e=h(()=>i(n).confidence===`high`?`success`:i(n).confidence===`low`?`danger`:`warning`);S(m,{get tone(){return i(e)},size:`sm`,children:(e,a)=>{_();var o=s();r(()=>t(o,i(n).confidence??`unknown`)),c(e,o)},$$slots:{default:!0}})}var g=u(m,2),v=a(g,!0);y(g),y(l);var b=u(l,2),x=a(b),C=a(x,!0);y(x),y(b),y(o),r(e=>{t(f,i(n).id),t(v,e),t(C,i(n).decision)},[()=>i(n).created_at.slice(0,10)]),c(e,o)}),y(n),c(e,n)};n(f,e=>{J.data.recentDecisions.length===0?e(p):e(m,-1)}),c(e,l)},$$slots:{header:!0,default:!0}}),y(Q),_(2),c(e,o)};n($,e=>{J.data.stats?e(ie,-1):e(re)}),y(Q),c(e,Q),p()}export{J as component};
1
+ import{A as e,D as t,E as n,H as r,I as i,J as a,K as o,M as s,O as c,V as l,X as u,Y as d,_ as f,at as p,d as m,et as h,k as g,lt as _,ot as v,ut as y,w as b,x}from"../chunks/DGftG5oL.js";import"../chunks/B8WnZMYa.js";import{a as S,r as C}from"../chunks/DZrdToAH.js";import{o as w}from"../chunks/CTLGzgdN.js";import{a as T,i as E,n as D,t as O}from"../chunks/CnwXLaZJ.js";var k=e(`<article class="stat svelte-1x5k1qb"><span class="stat-value svelte-1x5k1qb"> </span> <span class="stat-label svelte-1x5k1qb"> </span></article>`),A=e(`<div class="panel-head svelte-1x5k1qb"><h2 class="panel-title svelte-1x5k1qb">Tier distribution by table</h2> <div class="legend svelte-1x5k1qb"><!> <!> <!></div></div>`),j=e(`<span class="seg-n svelte-1x5k1qb"> </span>`),ee=e(`<span class="seg seg-short svelte-1x5k1qb"><!></span>`),te=e(`<span class="seg-n svelte-1x5k1qb"> </span>`),ne=e(`<span class="seg seg-medium svelte-1x5k1qb"><!></span>`),M=e(`<span class="seg-n svelte-1x5k1qb"> </span>`),N=e(`<span class="seg seg-long svelte-1x5k1qb"><!></span>`),P=e(`<span class="seg-empty svelte-1x5k1qb">empty</span>`),F=e(`<a class="chart-row svelte-1x5k1qb"><span class="chart-label svelte-1x5k1qb"> </span> <div class="chart-bars svelte-1x5k1qb" aria-hidden="true"><!> <!> <!> <!></div> <span class="chart-total svelte-1x5k1qb"> </span></a>`),I=e(`<div class="chart-rows svelte-1x5k1qb"></div>`),L=e(`<div><h2 class="panel-title svelte-1x5k1qb">Upcoming long-tier promotions</h2> <span class="panel-sub svelte-1x5k1qb">Medium entries eligible after the 7-day citation gate</span></div>`),R=e(`<li class="promo-row svelte-1x5k1qb"><code class="promo-id svelte-1x5k1qb"> </code> <span class="promo-table svelte-1x5k1qb"> </span> <!> <div class="promo-end svelte-1x5k1qb"><!></div></li>`),z=e(`<ul class="promo-list svelte-1x5k1qb"></ul>`),B=e(`<div class="panel-head svelte-1x5k1qb"><h2 class="panel-title svelte-1x5k1qb">Recent observations</h2> <a class="panel-link svelte-1x5k1qb" href="/brain/observations">See all →</a></div>`),V=e(`<li class="recent-row svelte-1x5k1qb"><span class="recent-head svelte-1x5k1qb"><code class="recent-id svelte-1x5k1qb"> </code> <!> <!> <span class="recent-date svelte-1x5k1qb"> </span></span> <span class="recent-body svelte-1x5k1qb"><span class="recent-title svelte-1x5k1qb"> </span> <!></span></li>`),H=e(`<ul class="recent-list svelte-1x5k1qb"></ul>`),U=e(`<div class="panel-head svelte-1x5k1qb"><h2 class="panel-title svelte-1x5k1qb">Recent decisions</h2> <a class="panel-link svelte-1x5k1qb" href="/brain/decisions">See all →</a></div>`),W=e(`<li class="recent-row svelte-1x5k1qb"><span class="recent-head svelte-1x5k1qb"><code class="recent-id svelte-1x5k1qb"> </code> <!> <!> <span class="recent-date svelte-1x5k1qb"> </span></span> <span class="recent-body svelte-1x5k1qb"><span class="recent-title svelte-1x5k1qb"> </span></span></li>`),G=e(`<ul class="recent-list svelte-1x5k1qb"></ul>`),K=e(`<div class="stats-grid svelte-1x5k1qb"></div> <!> <div class="dual svelte-1x5k1qb"><!> <!></div> <div class="dual svelte-1x5k1qb"><!> <!></div> <div class="actions svelte-1x5k1qb"><a href="/brain/graph" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">G</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Knowledge graph</span> <span class="action-desc svelte-1x5k1qb">Force-directed view of the full substrate</span></span></a> <a href="/brain/decisions" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">D</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Decisions</span> <span class="action-desc svelte-1x5k1qb">Timeline with rationale + outcomes</span></span></a> <a href="/brain/observations" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">O</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Observations</span> <span class="action-desc svelte-1x5k1qb">Filter by tier, type, and quality</span></span></a> <a href="/brain/patterns" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">P</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Patterns</span> <span class="action-desc svelte-1x5k1qb">Recurring workflow signals</span></span></a> <a href="/brain/learnings" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">L</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Learnings</span> <span class="action-desc svelte-1x5k1qb">Actionable insights with confidence</span></span></a> <a href="/brain/search" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">S</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Search</span> <span class="action-desc svelte-1x5k1qb">Cross-table FTS retrieval</span></span></a> <a href="/brain/causal" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">C</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Causal reasoning</span> <span class="action-desc svelte-1x5k1qb">Trace blocker chains to the root</span></span></a> <a href="/brain/tier-stats" class="action svelte-1x5k1qb"><span class="action-icon svelte-1x5k1qb">T</span> <span class="action-body svelte-1x5k1qb"><span class="action-title svelte-1x5k1qb">Tier stats</span> <span class="action-desc svelte-1x5k1qb">Retention split + verify queue</span></span></a></div>`,1),q=e(`<section class="overview svelte-1x5k1qb"><header class="view-head svelte-1x5k1qb"><div class="view-ident svelte-1x5k1qb"><div class="view-icon svelte-1x5k1qb" aria-hidden="true">B</div> <div><h1 class="view-title svelte-1x5k1qb">BRAIN</h1> <p class="view-sub svelte-1x5k1qb">Cognitive memory · observations · decisions · patterns · learnings</p></div></div> <nav class="view-nav svelte-1x5k1qb" aria-label="Brain navigation"><a href="/brain" class="nav-pill nav-pill--canvas svelte-1x5k1qb">Open in Canvas →</a> <a href="/brain/search" class="nav-pill svelte-1x5k1qb">Search</a> <a href="/brain/causal" class="nav-pill svelte-1x5k1qb">Causal</a> <a href="/brain/tier-stats" class="nav-pill svelte-1x5k1qb">Tier stats</a> <a href="/brain/quality" class="nav-pill svelte-1x5k1qb">Quality</a> <a href="/brain/graph" class="nav-pill svelte-1x5k1qb">Graph</a></nav></header> <!></section>`);function J(e,J){v(J,!0);function Y(e){return e.replace(`brain_`,``)}function X(e){let t=1;for(let n of e){let e=n.short+n.medium+n.long;e>t&&(t=e)}return t}function Z(e,t){return t===0?0:Math.round(e/t*100)}var Q=q();x(`1x5k1qb`,e=>{l(()=>{o.title=`BRAIN — CLEO Studio`})});var $=u(a(Q),2),re=e=>{w(e,{title:`brain.db not found`,subtitle:`Start a CLEO session to populate memory; this view will light up as entries are recorded.`})},ie=e=>{var o=K(),l=d(o);b(l,21,()=>J.data.stats,e=>e.label,(e,n)=>{var o=k(),s=a(o),l=a(s,!0);y(s);var d=u(s,2),f=a(d,!0);y(d),y(o),r(()=>{t(l,i(n).value),t(f,i(n).label)}),c(e,o)}),y(l);var p=u(l,2),v=e=>{let o=h(()=>X(J.data.tierDistribution));C(e,{header:e=>{var t=A(),n=u(a(t),2),r=a(n);D(r,{tier:`short`});var i=u(r,2);D(i,{tier:`medium`}),D(u(i,2),{tier:`long`}),y(n),y(t),c(e,t)},children:(e,s)=>{var l=I();b(l,21,()=>J.data.tierDistribution,e=>e.table,(e,s)=>{var l=F(),d=a(l),p=a(d,!0);y(d);var g=u(d,2),_=a(g),v=e=>{var l=ee(),u=a(l),d=e=>{var n=j(),o=a(n,!0);y(n),r(()=>t(o,i(s).short)),c(e,n)},p=h(()=>Z(i(s).short,i(o))>12);n(u,e=>{i(p)&&e(d)}),y(l),r(e=>f(l,`width:${e??``}%`),[()=>Z(i(s).short,i(o))]),c(e,l)};n(_,e=>{i(s).short>0&&e(v)});var b=u(_,2),x=e=>{var l=ne(),u=a(l),d=e=>{var n=te(),o=a(n,!0);y(n),r(()=>t(o,i(s).medium)),c(e,n)},p=h(()=>Z(i(s).medium,i(o))>12);n(u,e=>{i(p)&&e(d)}),y(l),r(e=>f(l,`width:${e??``}%`),[()=>Z(i(s).medium,i(o))]),c(e,l)};n(b,e=>{i(s).medium>0&&e(x)});var S=u(b,2),C=e=>{var l=N(),u=a(l),d=e=>{var n=M(),o=a(n,!0);y(n),r(()=>t(o,i(s).long)),c(e,n)},p=h(()=>Z(i(s).long,i(o))>12);n(u,e=>{i(p)&&e(d)}),y(l),r(e=>f(l,`width:${e??``}%`),[()=>Z(i(s).long,i(o))]),c(e,l)};n(S,e=>{i(s).long>0&&e(C)});var w=u(S,2),T=e=>{c(e,P())};n(w,e=>{i(s).short===0&&i(s).medium===0&&i(s).long===0&&e(T)}),y(g);var E=u(g,2),D=a(E,!0);y(E),y(l),r((e,n)=>{m(l,`href`,e),t(p,n),t(D,i(s).short+i(s).medium+i(s).long)},[()=>`/brain/${Y(i(s).table)}`,()=>Y(i(s).table)]),c(e,l)}),y(l),c(e,l)},$$slots:{header:!0,default:!0}})};n(p,e=>{J.data.tierDistribution.length>0&&e(v)});var x=u(p,2),q=a(x);C(q,{header:e=>{c(e,L())},children:(e,o)=>{var l=g(),f=d(l),p=e=>{w(e,{title:`Nothing queued`,subtitle:`Entries need ≥ 7 days age plus citation ≥ 5 (or owner-verified) to promote.`})},m=e=>{var n=z();b(n,21,()=>J.data.upcomingPromotions,e=>e.id,(e,n)=>{var o=R(),l=a(o),d=a(l,!0);y(l);var f=u(l,2),p=a(f,!0);y(f);var m=u(f,2);S(m,{tone:`accent`,size:`sm`,subtle:!0,children:(e,a)=>{_();var o=s();r(()=>t(o,i(n).track)),c(e,o)},$$slots:{default:!0}});var h=u(m,2);T(a(h),{get daysUntil(){return i(n).daysUntil}}),y(h),y(o),r(e=>{t(d,i(n).id),t(p,e)},[()=>Y(i(n).table)]),c(e,o)}),y(n),c(e,n)};n(f,e=>{J.data.upcomingPromotions.length===0?e(p):e(m,-1)}),c(e,l)},$$slots:{header:!0,default:!0}}),O(u(q,2),{limit:6}),y(x);var Q=u(x,2),$=a(Q);C($,{header:e=>{c(e,B())},children:(e,o)=>{var l=g(),f=d(l),p=e=>{w(e,{title:`No observations yet`})},m=e=>{var n=H();b(n,21,()=>J.data.recentObservations,e=>e.id,(e,n)=>{var o=V(),l=a(o),d=a(l),f=a(d,!0);y(d);var p=u(d,2);D(p,{get tier(){return i(n).memory_tier}});var m=u(p,2);S(m,{tone:`info`,size:`sm`,subtle:!0,children:(e,a)=>{_();var o=s();r(()=>t(o,i(n).type)),c(e,o)},$$slots:{default:!0}});var h=u(m,2),g=a(h,!0);y(h),y(l);var v=u(l,2),b=a(v),x=a(b,!0);y(b),E(u(b,2),{get score(){return i(n).quality_score},width:60,showLabel:!1}),y(v),y(o),r(e=>{t(f,i(n).id),t(g,e),t(x,i(n).title)},[()=>i(n).created_at.slice(0,10)]),c(e,o)}),y(n),c(e,n)};n(f,e=>{J.data.recentObservations.length===0?e(p):e(m,-1)}),c(e,l)},$$slots:{header:!0,default:!0}}),C(u($,2),{header:e=>{c(e,U())},children:(e,o)=>{var l=g(),f=d(l),p=e=>{w(e,{title:`No decisions yet`})},m=e=>{var n=G();b(n,21,()=>J.data.recentDecisions,e=>e.id,(e,n)=>{var o=W(),l=a(o),d=a(l),f=a(d,!0);y(d);var p=u(d,2);D(p,{get tier(){return i(n).memory_tier}});var m=u(p,2);{let e=h(()=>i(n).confidence===`high`?`success`:i(n).confidence===`low`?`danger`:`warning`);S(m,{get tone(){return i(e)},size:`sm`,children:(e,a)=>{_();var o=s();r(()=>t(o,i(n).confidence??`unknown`)),c(e,o)},$$slots:{default:!0}})}var g=u(m,2),v=a(g,!0);y(g),y(l);var b=u(l,2),x=a(b),C=a(x,!0);y(x),y(b),y(o),r(e=>{t(f,i(n).id),t(v,e),t(C,i(n).decision)},[()=>i(n).created_at.slice(0,10)]),c(e,o)}),y(n),c(e,n)};n(f,e=>{J.data.recentDecisions.length===0?e(p):e(m,-1)}),c(e,l)},$$slots:{header:!0,default:!0}}),y(Q),_(2),c(e,o)};n($,e=>{J.data.stats?e(ie,-1):e(re)}),y(Q),c(e,Q),p()}export{J as component};
@@ -1 +1 @@
1
- import{$ as e,A as t,D as n,E as r,H as i,I as a,J as o,K as s,M as c,N as l,O as u,P as d,Q as f,V as p,X as m,Y as h,Z as g,at as _,d as v,et as y,lt as b,ot as x,ut as S,v as ee,w as C,x as w}from"../chunks/DyGQ_VXC.js";import"../chunks/CQCxd1p9.js";import{a as T}from"../chunks/CEqOYim7.js";import{l as E,o as D,u as O}from"../chunks/CqF5Lomf.js";import{i as te,n as ne,o as re,r as k,s as A,u as j}from"../chunks/BRgWBQlV.js";var M=t(`<div class="state svelte-cwsxhn"><!> <span>Loading patterns…</span></div>`),ie=t(`<span class="cites svelte-cwsxhn"> </span>`),ae=t(`<div class="detail-section svelte-cwsxhn"><span class="detail-label svelte-cwsxhn">Context</span> <p class="detail-text svelte-cwsxhn"> </p></div>`),oe=t(`<div class="detail-section svelte-cwsxhn"><span class="detail-label svelte-cwsxhn">Anti-pattern</span> <p class="detail-text svelte-cwsxhn"> </p></div>`),se=t(`<div class="detail-section svelte-cwsxhn"><span class="detail-label svelte-cwsxhn">Mitigation</span> <p class="detail-text svelte-cwsxhn"> </p></div>`),ce=t(`<span class="detail-meta svelte-cwsxhn"> </span>`),le=t(`<div class="row-detail svelte-cwsxhn"><!> <!> <!> <div class="detail-footer svelte-cwsxhn"><span class="detail-ts svelte-cwsxhn"> </span> <!></div></div>`),ue=t(`<li><button class="row-head svelte-cwsxhn"><span class="row-meta svelte-cwsxhn"><code class="row-id svelte-cwsxhn"> </code> <!> <!> <!> <!> <!> <!> <span class="freq svelte-cwsxhn"> </span> <!></span> <span class="row-body svelte-cwsxhn"><span class="row-text svelte-cwsxhn"> </span> <!></span></button> <!></li>`),N=t(`<ul class="list svelte-cwsxhn"></ul> <!>`,1),P=t(`<div class="toast svelte-cwsxhn" role="status" aria-live="polite"> </div>`),F=t(`<section class="page svelte-cwsxhn"><header class="page-head svelte-cwsxhn"><div class="head-left svelte-cwsxhn"><a class="back svelte-cwsxhn" href="/brain/overview">← Overview</a> <h1 class="title svelte-cwsxhn">Patterns</h1> <span class="count svelte-cwsxhn"><span class="count-n svelte-cwsxhn"> </span> <span class="count-div svelte-cwsxhn">/</span> <span class="count-total svelte-cwsxhn"> </span> <span class="count-label svelte-cwsxhn">shown</span></span></div> <div class="head-right"><!></div></header> <div class="controls svelte-cwsxhn"><!> <!></div> <!></section> <!> <!>`,1);function I(t,l){x(l,!0);let I=l.data.initial,L=e(g(I?.patterns??[])),R=e(g(I?.total??0)),z=e(g(I?.filtered??0)),B=e(!1),V=e(null),H=e(g({tier:null,type:null,status:null,minQuality:void 0})),U=e(`created_desc`),W=e(0),G=e(null),K=e(!1),q=e(null);function de(){let e=new URLSearchParams;return e.set(`offset`,String(a(W))),e.set(`limit`,`50`),e.set(`sort`,a(U)),a(H).type&&e.set(`type`,a(H).type),a(H).minQuality!==void 0&&e.set(`min_quality`,String(a(H).minQuality)),e}async function J(){f(B,!0),f(V,null);try{let e=await fetch(`/api/memory/patterns?${de().toString()}`);if(!e.ok)throw Error(`HTTP ${e.status}`);let t=await e.json();f(L,t.patterns,!0),f(R,t.total,!0),f(z,t.filtered,!0)}catch(e){f(V,e instanceof Error?e.message:`Failed to load patterns`,!0)}finally{f(B,!1)}}function fe(e){f(H,e,!0),f(W,0),J()}function pe(e){f(U,e,!0),f(W,0),J()}function me(e){f(W,e,!0),J()}function he(e){f(G,a(G)===e?null:e,!0)}function ge(e){f(q,`Stored pattern ${e}`),f(W,0),J(),setTimeout(()=>{f(q,null)},3e3)}function _e(e){f(q,`Save failed: ${e}`),setTimeout(()=>{f(q,null)},4e3)}let ve={high:`danger`,medium:`warning`,low:`neutral`},ye={success:`success`,failure:`danger`,optimization:`accent`,workflow:`info`,blocker:`danger`};var be=F();w(`cwsxhn`,e=>{p(()=>{s.title=`BRAIN Patterns — CLEO Studio`})});var Y=h(be),X=o(Y),Z=o(X),xe=m(o(Z),4),Q=o(xe),Se=o(Q,!0);S(Q);var Ce=m(Q,4),we=o(Ce,!0);S(Ce),b(2),S(xe),S(Z);var Te=m(Z,2);E(o(Te),{variant:`primary`,size:`sm`,onclick:()=>f(K,!0),children:(e,t)=>{b(),u(e,c(`+ Store pattern`))},$$slots:{default:!0}}),S(Te),S(X);var $=m(X,2),Ee=o($);j(Ee,{get value(){return a(H)},tiers:[`short`,`medium`,`long`],types:[`workflow`,`blocker`,`success`,`failure`,`optimization`],showQuality:!0,onChange:fe}),k(m(Ee,2),{get value(){return a(U)},onChange:pe}),S($);var De=m($,2),Oe=e=>{var t=M();O(o(t),{size:`md`}),b(2),S(t),u(e,t)},ke=e=>{D(e,{title:`Couldn't load patterns`,get subtitle(){return a(V)},variant:`warning`,action:e=>{E(e,{variant:`secondary`,size:`sm`,onclick:()=>{J()},children:(e,t)=>{b(),u(e,c(`Retry`))},$$slots:{default:!0}})},$$slots:{action:!0}})},Ae=e=>{D(e,{title:`No patterns match these filters`,subtitle:`Loosen filters, or store the first pattern in this project.`,action:e=>{E(e,{variant:`primary`,size:`sm`,onclick:()=>f(K,!0),children:(e,t)=>{b(),u(e,c(`Store a pattern`))},$$slots:{default:!0}})},$$slots:{action:!0}})},je=e=>{var t=N(),s=h(t);C(s,21,()=>a(L),e=>e.id,(e,t)=>{var s=ue();let l;var f=o(s),p=o(f),h=o(p),g=o(h,!0);S(h);var _=m(h,2);{let e=y(()=>ye[a(t).type]??`neutral`);T(_,{get tone(){return a(e)},size:`sm`,subtle:!0,children:(e,r)=>{b();var o=c();i(()=>n(o,a(t).type)),u(e,o)},$$slots:{default:!0}})}var x=m(_,2),C=e=>{{let r=y(()=>ve[a(t).impact]??`neutral`);T(e,{get tone(){return a(r)},size:`sm`,children:(e,r)=>{b();var o=c();i(()=>n(o,`${a(t).impact??``} impact`)),u(e,o)},$$slots:{default:!0}})}};r(x,e=>{a(t).impact&&e(C)});var w=m(x,2);ne(w,{get tier(){return a(t).memory_tier}});var E=m(w,2),D=e=>{T(e,{tone:`success`,size:`sm`,children:(e,t)=>{b(),u(e,c(`verified`))},$$slots:{default:!0}})};r(E,e=>{a(t).verified===1&&e(D)});var O=m(E,2),re=e=>{T(e,{tone:`warning`,size:`sm`,children:(e,t)=>{b(),u(e,c(`prune`))},$$slots:{default:!0}})};r(O,e=>{a(t).prune_candidate===1&&e(re)});var k=m(O,2),A=e=>{T(e,{tone:`danger`,size:`sm`,children:(e,t)=>{b(),u(e,c(`invalidated`))},$$slots:{default:!0}})};r(k,e=>{a(t).invalid_at&&e(A)});var j=m(k,2),M=o(j);S(j);var N=m(j,2),P=e=>{var r=ie(),s=o(r);S(r),i(()=>n(s,`${a(t).citation_count??``} citations`)),u(e,r)};r(N,e=>{a(t).citation_count>0&&e(P)}),S(p);var F=m(p,2),I=o(F),L=o(I,!0);S(I),te(m(I,2),{get score(){return a(t).quality_score},width:80}),S(F),S(f);var R=m(f,2),z=e=>{var s=le(),c=o(s),l=e=>{var r=ae(),s=m(o(r),2),c=o(s,!0);S(s),S(r),i(()=>n(c,a(t).context)),u(e,r)};r(c,e=>{a(t).context&&e(l)});var d=m(c,2),f=e=>{var r=oe(),s=m(o(r),2),c=o(s,!0);S(s),S(r),i(()=>n(c,a(t).anti_pattern)),u(e,r)};r(d,e=>{a(t).anti_pattern&&e(f)});var p=m(d,2),h=e=>{var r=se(),s=m(o(r),2),c=o(s,!0);S(s),S(r),i(()=>n(c,a(t).mitigation)),u(e,r)};r(p,e=>{a(t).mitigation&&e(h)});var g=m(p,2),_=o(g),v=o(_);S(_);var y=m(_,2),b=e=>{var r=ce(),s=o(r);S(r),i(e=>n(s,`Success rate ${e??``}%`),[()=>(a(t).success_rate*100).toFixed(0)]),u(e,r)};r(y,e=>{typeof a(t).success_rate==`number`&&e(b)}),S(g),S(s),i(e=>n(v,`Extracted ${e??``}`),[()=>a(t).extracted_at.slice(0,10)]),u(e,s)};r(R,e=>{a(G)===a(t).id&&e(z)}),S(s),i(()=>{l=ee(s,1,`row svelte-cwsxhn`,null,l,{invalid:!!a(t).invalid_at,prune:a(t).prune_candidate===1}),v(f,`aria-expanded`,a(G)===a(t).id),n(g,a(t).id),n(M,`${a(t).frequency??``}× seen`),n(L,a(t).pattern)}),d(`click`,f,()=>he(a(t).id)),u(e,s)}),S(s),A(m(s,2),{get offset(){return a(W)},limit:50,get total(){return a(R)},onChange:me}),u(e,t)};r(De,e=>{a(B)?e(Oe):a(V)?e(ke,1):a(L).length===0?e(Ae,2):e(je,-1)}),S(Y);var Me=m(Y,2);re(Me,{onSuccess:ge,onError:_e,get open(){return a(K)},set open(e){f(K,e,!0)}});var Ne=m(Me,2),Pe=e=>{var t=P(),r=o(t,!0);S(t),i(()=>n(r,a(q))),u(e,t)};r(Ne,e=>{a(q)&&e(Pe)}),i(()=>{n(Se,a(z)),n(we,a(R))}),u(t,be),_()}l([`click`]);export{I as component};
1
+ import{$ as e,A as t,D as n,E as r,H as i,I as a,J as o,K as s,M as c,N as l,O as u,P as d,Q as f,V as p,X as m,Y as h,Z as g,at as _,d as v,et as y,lt as b,ot as x,ut as S,v as ee,w as C,x as w}from"../chunks/DGftG5oL.js";import"../chunks/B8WnZMYa.js";import{a as T}from"../chunks/DZrdToAH.js";import{l as E,o as D,u as O}from"../chunks/CTLGzgdN.js";import{i as te,n as ne,o as re,r as k,s as A,u as j}from"../chunks/CnwXLaZJ.js";var M=t(`<div class="state svelte-cwsxhn"><!> <span>Loading patterns…</span></div>`),ie=t(`<span class="cites svelte-cwsxhn"> </span>`),ae=t(`<div class="detail-section svelte-cwsxhn"><span class="detail-label svelte-cwsxhn">Context</span> <p class="detail-text svelte-cwsxhn"> </p></div>`),oe=t(`<div class="detail-section svelte-cwsxhn"><span class="detail-label svelte-cwsxhn">Anti-pattern</span> <p class="detail-text svelte-cwsxhn"> </p></div>`),se=t(`<div class="detail-section svelte-cwsxhn"><span class="detail-label svelte-cwsxhn">Mitigation</span> <p class="detail-text svelte-cwsxhn"> </p></div>`),ce=t(`<span class="detail-meta svelte-cwsxhn"> </span>`),le=t(`<div class="row-detail svelte-cwsxhn"><!> <!> <!> <div class="detail-footer svelte-cwsxhn"><span class="detail-ts svelte-cwsxhn"> </span> <!></div></div>`),ue=t(`<li><button class="row-head svelte-cwsxhn"><span class="row-meta svelte-cwsxhn"><code class="row-id svelte-cwsxhn"> </code> <!> <!> <!> <!> <!> <!> <span class="freq svelte-cwsxhn"> </span> <!></span> <span class="row-body svelte-cwsxhn"><span class="row-text svelte-cwsxhn"> </span> <!></span></button> <!></li>`),N=t(`<ul class="list svelte-cwsxhn"></ul> <!>`,1),P=t(`<div class="toast svelte-cwsxhn" role="status" aria-live="polite"> </div>`),F=t(`<section class="page svelte-cwsxhn"><header class="page-head svelte-cwsxhn"><div class="head-left svelte-cwsxhn"><a class="back svelte-cwsxhn" href="/brain/overview">← Overview</a> <h1 class="title svelte-cwsxhn">Patterns</h1> <span class="count svelte-cwsxhn"><span class="count-n svelte-cwsxhn"> </span> <span class="count-div svelte-cwsxhn">/</span> <span class="count-total svelte-cwsxhn"> </span> <span class="count-label svelte-cwsxhn">shown</span></span></div> <div class="head-right"><!></div></header> <div class="controls svelte-cwsxhn"><!> <!></div> <!></section> <!> <!>`,1);function I(t,l){x(l,!0);let I=l.data.initial,L=e(g(I?.patterns??[])),R=e(g(I?.total??0)),z=e(g(I?.filtered??0)),B=e(!1),V=e(null),H=e(g({tier:null,type:null,status:null,minQuality:void 0})),U=e(`created_desc`),W=e(0),G=e(null),K=e(!1),q=e(null);function de(){let e=new URLSearchParams;return e.set(`offset`,String(a(W))),e.set(`limit`,`50`),e.set(`sort`,a(U)),a(H).type&&e.set(`type`,a(H).type),a(H).minQuality!==void 0&&e.set(`min_quality`,String(a(H).minQuality)),e}async function J(){f(B,!0),f(V,null);try{let e=await fetch(`/api/memory/patterns?${de().toString()}`);if(!e.ok)throw Error(`HTTP ${e.status}`);let t=await e.json();f(L,t.patterns,!0),f(R,t.total,!0),f(z,t.filtered,!0)}catch(e){f(V,e instanceof Error?e.message:`Failed to load patterns`,!0)}finally{f(B,!1)}}function fe(e){f(H,e,!0),f(W,0),J()}function pe(e){f(U,e,!0),f(W,0),J()}function me(e){f(W,e,!0),J()}function he(e){f(G,a(G)===e?null:e,!0)}function ge(e){f(q,`Stored pattern ${e}`),f(W,0),J(),setTimeout(()=>{f(q,null)},3e3)}function _e(e){f(q,`Save failed: ${e}`),setTimeout(()=>{f(q,null)},4e3)}let ve={high:`danger`,medium:`warning`,low:`neutral`},ye={success:`success`,failure:`danger`,optimization:`accent`,workflow:`info`,blocker:`danger`};var be=F();w(`cwsxhn`,e=>{p(()=>{s.title=`BRAIN Patterns — CLEO Studio`})});var Y=h(be),X=o(Y),Z=o(X),xe=m(o(Z),4),Q=o(xe),Se=o(Q,!0);S(Q);var Ce=m(Q,4),we=o(Ce,!0);S(Ce),b(2),S(xe),S(Z);var Te=m(Z,2);E(o(Te),{variant:`primary`,size:`sm`,onclick:()=>f(K,!0),children:(e,t)=>{b(),u(e,c(`+ Store pattern`))},$$slots:{default:!0}}),S(Te),S(X);var $=m(X,2),Ee=o($);j(Ee,{get value(){return a(H)},tiers:[`short`,`medium`,`long`],types:[`workflow`,`blocker`,`success`,`failure`,`optimization`],showQuality:!0,onChange:fe}),k(m(Ee,2),{get value(){return a(U)},onChange:pe}),S($);var De=m($,2),Oe=e=>{var t=M();O(o(t),{size:`md`}),b(2),S(t),u(e,t)},ke=e=>{D(e,{title:`Couldn't load patterns`,get subtitle(){return a(V)},variant:`warning`,action:e=>{E(e,{variant:`secondary`,size:`sm`,onclick:()=>{J()},children:(e,t)=>{b(),u(e,c(`Retry`))},$$slots:{default:!0}})},$$slots:{action:!0}})},Ae=e=>{D(e,{title:`No patterns match these filters`,subtitle:`Loosen filters, or store the first pattern in this project.`,action:e=>{E(e,{variant:`primary`,size:`sm`,onclick:()=>f(K,!0),children:(e,t)=>{b(),u(e,c(`Store a pattern`))},$$slots:{default:!0}})},$$slots:{action:!0}})},je=e=>{var t=N(),s=h(t);C(s,21,()=>a(L),e=>e.id,(e,t)=>{var s=ue();let l;var f=o(s),p=o(f),h=o(p),g=o(h,!0);S(h);var _=m(h,2);{let e=y(()=>ye[a(t).type]??`neutral`);T(_,{get tone(){return a(e)},size:`sm`,subtle:!0,children:(e,r)=>{b();var o=c();i(()=>n(o,a(t).type)),u(e,o)},$$slots:{default:!0}})}var x=m(_,2),C=e=>{{let r=y(()=>ve[a(t).impact]??`neutral`);T(e,{get tone(){return a(r)},size:`sm`,children:(e,r)=>{b();var o=c();i(()=>n(o,`${a(t).impact??``} impact`)),u(e,o)},$$slots:{default:!0}})}};r(x,e=>{a(t).impact&&e(C)});var w=m(x,2);ne(w,{get tier(){return a(t).memory_tier}});var E=m(w,2),D=e=>{T(e,{tone:`success`,size:`sm`,children:(e,t)=>{b(),u(e,c(`verified`))},$$slots:{default:!0}})};r(E,e=>{a(t).verified===1&&e(D)});var O=m(E,2),re=e=>{T(e,{tone:`warning`,size:`sm`,children:(e,t)=>{b(),u(e,c(`prune`))},$$slots:{default:!0}})};r(O,e=>{a(t).prune_candidate===1&&e(re)});var k=m(O,2),A=e=>{T(e,{tone:`danger`,size:`sm`,children:(e,t)=>{b(),u(e,c(`invalidated`))},$$slots:{default:!0}})};r(k,e=>{a(t).invalid_at&&e(A)});var j=m(k,2),M=o(j);S(j);var N=m(j,2),P=e=>{var r=ie(),s=o(r);S(r),i(()=>n(s,`${a(t).citation_count??``} citations`)),u(e,r)};r(N,e=>{a(t).citation_count>0&&e(P)}),S(p);var F=m(p,2),I=o(F),L=o(I,!0);S(I),te(m(I,2),{get score(){return a(t).quality_score},width:80}),S(F),S(f);var R=m(f,2),z=e=>{var s=le(),c=o(s),l=e=>{var r=ae(),s=m(o(r),2),c=o(s,!0);S(s),S(r),i(()=>n(c,a(t).context)),u(e,r)};r(c,e=>{a(t).context&&e(l)});var d=m(c,2),f=e=>{var r=oe(),s=m(o(r),2),c=o(s,!0);S(s),S(r),i(()=>n(c,a(t).anti_pattern)),u(e,r)};r(d,e=>{a(t).anti_pattern&&e(f)});var p=m(d,2),h=e=>{var r=se(),s=m(o(r),2),c=o(s,!0);S(s),S(r),i(()=>n(c,a(t).mitigation)),u(e,r)};r(p,e=>{a(t).mitigation&&e(h)});var g=m(p,2),_=o(g),v=o(_);S(_);var y=m(_,2),b=e=>{var r=ce(),s=o(r);S(r),i(e=>n(s,`Success rate ${e??``}%`),[()=>(a(t).success_rate*100).toFixed(0)]),u(e,r)};r(y,e=>{typeof a(t).success_rate==`number`&&e(b)}),S(g),S(s),i(e=>n(v,`Extracted ${e??``}`),[()=>a(t).extracted_at.slice(0,10)]),u(e,s)};r(R,e=>{a(G)===a(t).id&&e(z)}),S(s),i(()=>{l=ee(s,1,`row svelte-cwsxhn`,null,l,{invalid:!!a(t).invalid_at,prune:a(t).prune_candidate===1}),v(f,`aria-expanded`,a(G)===a(t).id),n(g,a(t).id),n(M,`${a(t).frequency??``}× seen`),n(L,a(t).pattern)}),d(`click`,f,()=>he(a(t).id)),u(e,s)}),S(s),A(m(s,2),{get offset(){return a(W)},limit:50,get total(){return a(R)},onChange:me}),u(e,t)};r(De,e=>{a(B)?e(Oe):a(V)?e(ke,1):a(L).length===0?e(Ae,2):e(je,-1)}),S(Y);var Me=m(Y,2);re(Me,{onSuccess:ge,onError:_e,get open(){return a(K)},set open(e){f(K,e,!0)}});var Ne=m(Me,2),Pe=e=>{var t=P(),r=o(t,!0);S(t),i(()=>n(r,a(q))),u(e,t)};r(Ne,e=>{a(q)&&e(Pe)}),i(()=>{n(Se,a(z)),n(we,a(R))}),u(t,be),_()}l([`click`]);export{I as component};
@@ -1 +1 @@
1
- import{$ as e,A as t,D as n,E as r,H as i,I as a,J as o,K as s,M as c,O as l,Q as u,V as d,X as f,Y as p,_ as m,at as h,et as g,lt as _,ot as v,r as y,ut as b,w as x,x as S}from"../chunks/DyGQ_VXC.js";import"../chunks/CQCxd1p9.js";import{a as C,r as w}from"../chunks/CEqOYim7.js";import{l as T,o as E,u as D}from"../chunks/CqF5Lomf.js";import{a as ee,t as te}from"../chunks/BRgWBQlV.js";var ne=t(`<div class="state svelte-u82uod"><!> <span>Loading quality data…</span></div>`),re=t(`<div class="panel-head svelte-u82uod"><h2 class="panel-title svelte-u82uod">Observations quality</h2> <div class="summary-row svelte-u82uod"><!> <!> <!></div></div>`),O=t(`<div class="bar-row svelte-u82uod"><span class="bar-label svelte-u82uod"> </span> <div class="bar-track svelte-u82uod"><div class="bar-fill svelte-u82uod"></div></div> <span class="bar-count svelte-u82uod"> </span></div>`),ie=t(`<div class="chart svelte-u82uod"></div>`),ae=t(`<h2 class="panel-title svelte-u82uod">Memory tiers (observations)</h2>`),oe=t(`<div class="donut-row svelte-u82uod"><div class="donut-bar-wrap svelte-u82uod"><div class="donut-bar svelte-u82uod"></div></div> <span class="donut-label svelte-u82uod"> </span> <span class="donut-count svelte-u82uod"> </span> <span class="donut-pct svelte-u82uod"> </span></div>`),se=t(`<div class="donut-chart svelte-u82uod"></div>`),ce=t(`<h2 class="panel-title svelte-u82uod">Memory types (observations)</h2>`),le=t(`<div class="donut-row svelte-u82uod"><div class="donut-bar-wrap svelte-u82uod"><div class="donut-bar svelte-u82uod"></div></div> <span class="donut-label svelte-u82uod"> </span> <span class="donut-count svelte-u82uod"> </span> <span class="donut-pct svelte-u82uod"> </span></div>`),ue=t(`<div class="donut-chart svelte-u82uod"></div>`),de=t(`<div class="panel-head svelte-u82uod"><h2 class="panel-title svelte-u82uod">Decisions quality</h2> <div class="summary-row svelte-u82uod"><!> <!></div></div>`),k=t(`<div class="bar-row svelte-u82uod"><span class="bar-label svelte-u82uod"> </span> <div class="bar-track svelte-u82uod"><div class="bar-fill svelte-u82uod"></div></div> <span class="bar-count svelte-u82uod"> </span></div>`),A=t(`<div class="chart svelte-u82uod"></div>`),j=t(`<div class="panel-head svelte-u82uod"><h2 class="panel-title svelte-u82uod">Patterns quality</h2> <div class="summary-row svelte-u82uod"><!></div></div>`),M=t(`<div class="bar-row svelte-u82uod"><span class="bar-label svelte-u82uod"> </span> <div class="bar-track svelte-u82uod"><div class="bar-fill svelte-u82uod"></div></div> <span class="bar-count svelte-u82uod"> </span></div>`),N=t(`<div class="chart svelte-u82uod"></div>`),P=t(`<div class="panel-head svelte-u82uod"><h2 class="panel-title svelte-u82uod">Learnings quality</h2> <div class="summary-row svelte-u82uod"><!></div></div>`),F=t(`<div class="bar-row svelte-u82uod"><span class="bar-label svelte-u82uod"> </span> <div class="bar-track svelte-u82uod"><div class="bar-fill svelte-u82uod"></div></div> <span class="bar-count svelte-u82uod"> </span></div>`),I=t(`<div class="chart svelte-u82uod"></div>`),L=t(`<div><h2 class="panel-title svelte-u82uod">Upcoming long-tier promotions</h2> <span class="panel-sub svelte-u82uod">Ready-to-promote medium entries (top 5)</span></div>`),R=t(`<li class="promo-row svelte-u82uod"><code class="promo-id svelte-u82uod"> </code> <span class="promo-table svelte-u82uod"> </span> <!> <div class="promo-end svelte-u82uod"><!></div></li>`),z=t(`<ul class="promo-list svelte-u82uod"></ul>`),B=t(`<div class="panels svelte-u82uod"><!> <!> <!> <!> <!> <!></div> <!> <!>`,1),V=t(`<section class="page svelte-u82uod"><header class="page-head svelte-u82uod"><div class="head-left svelte-u82uod"><a class="back svelte-u82uod" href="/brain/overview">← Overview</a> <h1 class="title svelte-u82uod">Quality Distribution</h1></div> <a class="canvas-pill svelte-u82uod" href="/brain">Open in Canvas →</a></header> <!></section>`);function H(t,H){v(H,!0);let U=e(null),W=e(null),G=e(!0),K=e(null),q={short:`var(--text-faint)`,medium:`var(--info)`,long:`var(--success)`,unknown:`var(--border-strong)`},J={episodic:`var(--info)`,semantic:`var(--accent)`,procedural:`var(--warning)`,unknown:`var(--border-strong)`},Y=[`var(--danger)`,`var(--warning)`,`color-mix(in srgb, var(--warning) 60%, var(--success) 40%)`,`color-mix(in srgb, var(--warning) 20%, var(--success) 80%)`,`var(--success)`];function X(e){return Math.max(...e.map(e=>e.count),1)}function Z(e,t){return Math.round(e/t*100)}async function Q(){u(G,!0),u(K,null);try{let[e,t]=await Promise.all([fetch(`/api/memory/quality`),fetch(`/api/memory/tier-stats`)]);if(!e.ok)throw Error(`HTTP ${e.status}`);u(U,await e.json(),!0),t.ok&&u(W,await t.json(),!0)}catch(e){u(K,e instanceof Error?e.message:`Failed to load quality data`,!0)}finally{u(G,!1)}}y(()=>{Q()});var $=V();S(`u82uod`,e=>{d(()=>{s.title=`BRAIN Quality — CLEO Studio`})});var fe=f(o($),2),pe=e=>{var t=ne();D(o(t),{size:`md`}),_(2),b(t),l(e,t)},me=e=>{E(e,{title:`Couldn't load quality data`,get subtitle(){return a(K)},variant:`warning`,action:e=>{T(e,{variant:`secondary`,size:`sm`,onclick:()=>{Q()},children:(e,t)=>{_(),l(e,c(`Retry`))},$$slots:{default:!0}})},$$slots:{action:!0}})},he=e=>{E(e,{title:`brain.db not available`,subtitle:`Start a CLEO session to populate memory, then return for the distribution.`})},ge=e=>{let t=g(()=>a(U));var s=B(),u=p(s),d=o(u);w(d,{header:e=>{var r=re(),s=f(o(r),2),u=o(s);C(u,{tone:`success`,size:`sm`,children:(e,r)=>{_();var o=c();i(()=>n(o,`${a(t).observations.verified_count??``} verified`)),l(e,o)},$$slots:{default:!0}});var d=f(u,2);C(d,{tone:`warning`,size:`sm`,children:(e,r)=>{_();var o=c();i(()=>n(o,`${a(t).observations.prune_count??``} prune`)),l(e,o)},$$slots:{default:!0}}),C(f(d,2),{tone:`danger`,size:`sm`,children:(e,r)=>{_();var o=c();i(()=>n(o,`${a(t).observations.invalidated_count??``} invalid`)),l(e,o)},$$slots:{default:!0}}),b(s),b(r),l(e,r)},children:(e,r)=>{var s=ie();x(s,23,()=>a(t).observations.buckets,e=>e.range,(e,r,s)=>{var c=O(),u=o(c),d=o(u,!0);b(u);var p=f(u,2),h=o(p);b(p);var g=f(p,2),_=o(g,!0);b(g),b(c),i(e=>{n(d,a(r).range),m(h,`width:${e??``}%;background:${Y[a(s)]??`var(--text-faint)`??``}`),n(_,a(r).count)},[()=>Z(a(r).count,X(a(t).observations.buckets))]),l(e,c)}),b(s),l(e,s)},$$slots:{header:!0,default:!0}});var h=f(d,2);w(h,{header:e=>{l(e,ae())},children:(e,r)=>{var s=se();x(s,21,()=>a(t).observations.tiers,e=>e.tier,(e,r)=>{let s=g(()=>a(t).observations.tiers.reduce((e,t)=>e+t.count,0)),c=g(()=>q[a(r).tier]??q.unknown);var u=oe(),d=o(u),p=o(d);b(d);var h=f(d,2),_=o(h,!0);b(h);var v=f(h,2),y=o(v,!0);b(v);var x=f(v,2),S=o(x);b(x),b(u),i((e,t)=>{m(p,`width:${e??``}%;background:${a(c)??``}`),m(h,`color:${a(c)??``}`),n(_,a(r).tier),n(y,a(r).count),n(S,`${t??``}%`)},[()=>Math.round(a(r).count/Math.max(a(s),1)*100),()=>Math.round(a(r).count/Math.max(a(s),1)*100)]),l(e,u)}),b(s),l(e,s)},$$slots:{header:!0,default:!0}});var v=f(h,2);w(v,{header:e=>{l(e,ce())},children:(e,r)=>{var s=ue();x(s,21,()=>a(t).observations.types,e=>e.memory_type,(e,r)=>{let s=g(()=>a(t).observations.types.reduce((e,t)=>e+t.count,0)),c=g(()=>J[a(r).memory_type]??J.unknown);var u=le(),d=o(u),p=o(d);b(d);var h=f(d,2),_=o(h,!0);b(h);var v=f(h,2),y=o(v,!0);b(v);var x=f(v,2),S=o(x);b(x),b(u),i((e,t)=>{m(p,`width:${e??``}%;background:${a(c)??``}`),m(h,`color:${a(c)??``}`),n(_,a(r).memory_type),n(y,a(r).count),n(S,`${t??``}%`)},[()=>Math.round(a(r).count/Math.max(a(s),1)*100),()=>Math.round(a(r).count/Math.max(a(s),1)*100)]),l(e,u)}),b(s),l(e,s)},$$slots:{header:!0,default:!0}});var y=f(v,2);w(y,{header:e=>{var r=de(),s=f(o(r),2),u=o(s);C(u,{tone:`success`,size:`sm`,children:(e,r)=>{_();var o=c();i(()=>n(o,`${a(t).decisions.verified_count??``} verified`)),l(e,o)},$$slots:{default:!0}}),C(f(u,2),{tone:`warning`,size:`sm`,children:(e,r)=>{_();var o=c();i(()=>n(o,`${a(t).decisions.prune_count??``} prune`)),l(e,o)},$$slots:{default:!0}}),b(s),b(r),l(e,r)},children:(e,r)=>{var s=A();x(s,23,()=>a(t).decisions.buckets,e=>e.range,(e,r,s)=>{var c=k(),u=o(c),d=o(u,!0);b(u);var p=f(u,2),h=o(p);b(p);var g=f(p,2),_=o(g,!0);b(g),b(c),i(e=>{n(d,a(r).range),m(h,`width:${e??``}%;background:${Y[a(s)]??`var(--text-faint)`??``}`),n(_,a(r).count)},[()=>Z(a(r).count,X(a(t).decisions.buckets))]),l(e,c)}),b(s),l(e,s)},$$slots:{header:!0,default:!0}});var S=f(y,2);w(S,{header:e=>{var r=j(),s=f(o(r),2);C(o(s),{tone:`success`,size:`sm`,children:(e,r)=>{_();var o=c();i(()=>n(o,`${a(t).patterns.verified_count??``} verified`)),l(e,o)},$$slots:{default:!0}}),b(s),b(r),l(e,r)},children:(e,r)=>{var s=N();x(s,23,()=>a(t).patterns.buckets,e=>e.range,(e,r,s)=>{var c=M(),u=o(c),d=o(u,!0);b(u);var p=f(u,2),h=o(p);b(p);var g=f(p,2),_=o(g,!0);b(g),b(c),i(e=>{n(d,a(r).range),m(h,`width:${e??``}%;background:${Y[a(s)]??`var(--text-faint)`??``}`),n(_,a(r).count)},[()=>Z(a(r).count,X(a(t).patterns.buckets))]),l(e,c)}),b(s),l(e,s)},$$slots:{header:!0,default:!0}}),w(f(S,2),{header:e=>{var r=P(),s=f(o(r),2);C(o(s),{tone:`success`,size:`sm`,children:(e,r)=>{_();var o=c();i(()=>n(o,`${a(t).learnings.verified_count??``} verified`)),l(e,o)},$$slots:{default:!0}}),b(s),b(r),l(e,r)},children:(e,r)=>{var s=I();x(s,23,()=>a(t).learnings.buckets,e=>e.range,(e,r,s)=>{var c=F(),u=o(c),d=o(u,!0);b(u);var p=f(u,2),h=o(p);b(p);var g=f(p,2),_=o(g,!0);b(g),b(c),i(e=>{n(d,a(r).range),m(h,`width:${e??``}%;background:${Y[a(s)]??`var(--text-faint)`??``}`),n(_,a(r).count)},[()=>Z(a(r).count,X(a(t).learnings.buckets))]),l(e,c)}),b(s),l(e,s)},$$slots:{header:!0,default:!0}}),b(u);var T=f(u,2),E=e=>{w(e,{header:e=>{l(e,L())},children:(e,t)=>{var r=z();x(r,21,()=>a(W).upcomingLongPromotions,e=>e.id,(e,t)=>{var r=R(),s=o(r),u=o(s,!0);b(s);var d=f(s,2),p=o(d,!0);b(d);var m=f(d,2);C(m,{tone:`accent`,size:`sm`,subtle:!0,children:(e,r)=>{_();var o=c();i(()=>n(o,a(t).track)),l(e,o)},$$slots:{default:!0}});var h=f(m,2);ee(o(h),{get daysUntil(){return a(t).daysUntil}}),b(h),b(r),i(e=>{n(u,a(t).id),n(p,e)},[()=>a(t).table.replace(`brain_`,``)]),l(e,r)}),b(r),l(e,r)},$$slots:{header:!0,default:!0}})};r(T,e=>{a(W)&&a(W).upcomingLongPromotions.length>0&&e(E)}),te(f(T,2),{limit:6}),l(e,s)};r(fe,e=>{a(G)?e(pe):a(K)?e(me,1):a(U)?e(ge,-1):e(he,2)}),b($),l(t,$),h()}export{H as component};
1
+ import{$ as e,A as t,D as n,E as r,H as i,I as a,J as o,K as s,M as c,O as l,Q as u,V as d,X as f,Y as p,_ as m,at as h,et as g,lt as _,ot as v,r as y,ut as b,w as x,x as S}from"../chunks/DGftG5oL.js";import"../chunks/B8WnZMYa.js";import{a as C,r as w}from"../chunks/DZrdToAH.js";import{l as T,o as E,u as D}from"../chunks/CTLGzgdN.js";import{a as ee,t as te}from"../chunks/CnwXLaZJ.js";var ne=t(`<div class="state svelte-u82uod"><!> <span>Loading quality data…</span></div>`),re=t(`<div class="panel-head svelte-u82uod"><h2 class="panel-title svelte-u82uod">Observations quality</h2> <div class="summary-row svelte-u82uod"><!> <!> <!></div></div>`),O=t(`<div class="bar-row svelte-u82uod"><span class="bar-label svelte-u82uod"> </span> <div class="bar-track svelte-u82uod"><div class="bar-fill svelte-u82uod"></div></div> <span class="bar-count svelte-u82uod"> </span></div>`),ie=t(`<div class="chart svelte-u82uod"></div>`),ae=t(`<h2 class="panel-title svelte-u82uod">Memory tiers (observations)</h2>`),oe=t(`<div class="donut-row svelte-u82uod"><div class="donut-bar-wrap svelte-u82uod"><div class="donut-bar svelte-u82uod"></div></div> <span class="donut-label svelte-u82uod"> </span> <span class="donut-count svelte-u82uod"> </span> <span class="donut-pct svelte-u82uod"> </span></div>`),se=t(`<div class="donut-chart svelte-u82uod"></div>`),ce=t(`<h2 class="panel-title svelte-u82uod">Memory types (observations)</h2>`),le=t(`<div class="donut-row svelte-u82uod"><div class="donut-bar-wrap svelte-u82uod"><div class="donut-bar svelte-u82uod"></div></div> <span class="donut-label svelte-u82uod"> </span> <span class="donut-count svelte-u82uod"> </span> <span class="donut-pct svelte-u82uod"> </span></div>`),ue=t(`<div class="donut-chart svelte-u82uod"></div>`),de=t(`<div class="panel-head svelte-u82uod"><h2 class="panel-title svelte-u82uod">Decisions quality</h2> <div class="summary-row svelte-u82uod"><!> <!></div></div>`),k=t(`<div class="bar-row svelte-u82uod"><span class="bar-label svelte-u82uod"> </span> <div class="bar-track svelte-u82uod"><div class="bar-fill svelte-u82uod"></div></div> <span class="bar-count svelte-u82uod"> </span></div>`),A=t(`<div class="chart svelte-u82uod"></div>`),j=t(`<div class="panel-head svelte-u82uod"><h2 class="panel-title svelte-u82uod">Patterns quality</h2> <div class="summary-row svelte-u82uod"><!></div></div>`),M=t(`<div class="bar-row svelte-u82uod"><span class="bar-label svelte-u82uod"> </span> <div class="bar-track svelte-u82uod"><div class="bar-fill svelte-u82uod"></div></div> <span class="bar-count svelte-u82uod"> </span></div>`),N=t(`<div class="chart svelte-u82uod"></div>`),P=t(`<div class="panel-head svelte-u82uod"><h2 class="panel-title svelte-u82uod">Learnings quality</h2> <div class="summary-row svelte-u82uod"><!></div></div>`),F=t(`<div class="bar-row svelte-u82uod"><span class="bar-label svelte-u82uod"> </span> <div class="bar-track svelte-u82uod"><div class="bar-fill svelte-u82uod"></div></div> <span class="bar-count svelte-u82uod"> </span></div>`),I=t(`<div class="chart svelte-u82uod"></div>`),L=t(`<div><h2 class="panel-title svelte-u82uod">Upcoming long-tier promotions</h2> <span class="panel-sub svelte-u82uod">Ready-to-promote medium entries (top 5)</span></div>`),R=t(`<li class="promo-row svelte-u82uod"><code class="promo-id svelte-u82uod"> </code> <span class="promo-table svelte-u82uod"> </span> <!> <div class="promo-end svelte-u82uod"><!></div></li>`),z=t(`<ul class="promo-list svelte-u82uod"></ul>`),B=t(`<div class="panels svelte-u82uod"><!> <!> <!> <!> <!> <!></div> <!> <!>`,1),V=t(`<section class="page svelte-u82uod"><header class="page-head svelte-u82uod"><div class="head-left svelte-u82uod"><a class="back svelte-u82uod" href="/brain/overview">← Overview</a> <h1 class="title svelte-u82uod">Quality Distribution</h1></div> <a class="canvas-pill svelte-u82uod" href="/brain">Open in Canvas →</a></header> <!></section>`);function H(t,H){v(H,!0);let U=e(null),W=e(null),G=e(!0),K=e(null),q={short:`var(--text-faint)`,medium:`var(--info)`,long:`var(--success)`,unknown:`var(--border-strong)`},J={episodic:`var(--info)`,semantic:`var(--accent)`,procedural:`var(--warning)`,unknown:`var(--border-strong)`},Y=[`var(--danger)`,`var(--warning)`,`color-mix(in srgb, var(--warning) 60%, var(--success) 40%)`,`color-mix(in srgb, var(--warning) 20%, var(--success) 80%)`,`var(--success)`];function X(e){return Math.max(...e.map(e=>e.count),1)}function Z(e,t){return Math.round(e/t*100)}async function Q(){u(G,!0),u(K,null);try{let[e,t]=await Promise.all([fetch(`/api/memory/quality`),fetch(`/api/memory/tier-stats`)]);if(!e.ok)throw Error(`HTTP ${e.status}`);u(U,await e.json(),!0),t.ok&&u(W,await t.json(),!0)}catch(e){u(K,e instanceof Error?e.message:`Failed to load quality data`,!0)}finally{u(G,!1)}}y(()=>{Q()});var $=V();S(`u82uod`,e=>{d(()=>{s.title=`BRAIN Quality — CLEO Studio`})});var fe=f(o($),2),pe=e=>{var t=ne();D(o(t),{size:`md`}),_(2),b(t),l(e,t)},me=e=>{E(e,{title:`Couldn't load quality data`,get subtitle(){return a(K)},variant:`warning`,action:e=>{T(e,{variant:`secondary`,size:`sm`,onclick:()=>{Q()},children:(e,t)=>{_(),l(e,c(`Retry`))},$$slots:{default:!0}})},$$slots:{action:!0}})},he=e=>{E(e,{title:`brain.db not available`,subtitle:`Start a CLEO session to populate memory, then return for the distribution.`})},ge=e=>{let t=g(()=>a(U));var s=B(),u=p(s),d=o(u);w(d,{header:e=>{var r=re(),s=f(o(r),2),u=o(s);C(u,{tone:`success`,size:`sm`,children:(e,r)=>{_();var o=c();i(()=>n(o,`${a(t).observations.verified_count??``} verified`)),l(e,o)},$$slots:{default:!0}});var d=f(u,2);C(d,{tone:`warning`,size:`sm`,children:(e,r)=>{_();var o=c();i(()=>n(o,`${a(t).observations.prune_count??``} prune`)),l(e,o)},$$slots:{default:!0}}),C(f(d,2),{tone:`danger`,size:`sm`,children:(e,r)=>{_();var o=c();i(()=>n(o,`${a(t).observations.invalidated_count??``} invalid`)),l(e,o)},$$slots:{default:!0}}),b(s),b(r),l(e,r)},children:(e,r)=>{var s=ie();x(s,23,()=>a(t).observations.buckets,e=>e.range,(e,r,s)=>{var c=O(),u=o(c),d=o(u,!0);b(u);var p=f(u,2),h=o(p);b(p);var g=f(p,2),_=o(g,!0);b(g),b(c),i(e=>{n(d,a(r).range),m(h,`width:${e??``}%;background:${Y[a(s)]??`var(--text-faint)`??``}`),n(_,a(r).count)},[()=>Z(a(r).count,X(a(t).observations.buckets))]),l(e,c)}),b(s),l(e,s)},$$slots:{header:!0,default:!0}});var h=f(d,2);w(h,{header:e=>{l(e,ae())},children:(e,r)=>{var s=se();x(s,21,()=>a(t).observations.tiers,e=>e.tier,(e,r)=>{let s=g(()=>a(t).observations.tiers.reduce((e,t)=>e+t.count,0)),c=g(()=>q[a(r).tier]??q.unknown);var u=oe(),d=o(u),p=o(d);b(d);var h=f(d,2),_=o(h,!0);b(h);var v=f(h,2),y=o(v,!0);b(v);var x=f(v,2),S=o(x);b(x),b(u),i((e,t)=>{m(p,`width:${e??``}%;background:${a(c)??``}`),m(h,`color:${a(c)??``}`),n(_,a(r).tier),n(y,a(r).count),n(S,`${t??``}%`)},[()=>Math.round(a(r).count/Math.max(a(s),1)*100),()=>Math.round(a(r).count/Math.max(a(s),1)*100)]),l(e,u)}),b(s),l(e,s)},$$slots:{header:!0,default:!0}});var v=f(h,2);w(v,{header:e=>{l(e,ce())},children:(e,r)=>{var s=ue();x(s,21,()=>a(t).observations.types,e=>e.memory_type,(e,r)=>{let s=g(()=>a(t).observations.types.reduce((e,t)=>e+t.count,0)),c=g(()=>J[a(r).memory_type]??J.unknown);var u=le(),d=o(u),p=o(d);b(d);var h=f(d,2),_=o(h,!0);b(h);var v=f(h,2),y=o(v,!0);b(v);var x=f(v,2),S=o(x);b(x),b(u),i((e,t)=>{m(p,`width:${e??``}%;background:${a(c)??``}`),m(h,`color:${a(c)??``}`),n(_,a(r).memory_type),n(y,a(r).count),n(S,`${t??``}%`)},[()=>Math.round(a(r).count/Math.max(a(s),1)*100),()=>Math.round(a(r).count/Math.max(a(s),1)*100)]),l(e,u)}),b(s),l(e,s)},$$slots:{header:!0,default:!0}});var y=f(v,2);w(y,{header:e=>{var r=de(),s=f(o(r),2),u=o(s);C(u,{tone:`success`,size:`sm`,children:(e,r)=>{_();var o=c();i(()=>n(o,`${a(t).decisions.verified_count??``} verified`)),l(e,o)},$$slots:{default:!0}}),C(f(u,2),{tone:`warning`,size:`sm`,children:(e,r)=>{_();var o=c();i(()=>n(o,`${a(t).decisions.prune_count??``} prune`)),l(e,o)},$$slots:{default:!0}}),b(s),b(r),l(e,r)},children:(e,r)=>{var s=A();x(s,23,()=>a(t).decisions.buckets,e=>e.range,(e,r,s)=>{var c=k(),u=o(c),d=o(u,!0);b(u);var p=f(u,2),h=o(p);b(p);var g=f(p,2),_=o(g,!0);b(g),b(c),i(e=>{n(d,a(r).range),m(h,`width:${e??``}%;background:${Y[a(s)]??`var(--text-faint)`??``}`),n(_,a(r).count)},[()=>Z(a(r).count,X(a(t).decisions.buckets))]),l(e,c)}),b(s),l(e,s)},$$slots:{header:!0,default:!0}});var S=f(y,2);w(S,{header:e=>{var r=j(),s=f(o(r),2);C(o(s),{tone:`success`,size:`sm`,children:(e,r)=>{_();var o=c();i(()=>n(o,`${a(t).patterns.verified_count??``} verified`)),l(e,o)},$$slots:{default:!0}}),b(s),b(r),l(e,r)},children:(e,r)=>{var s=N();x(s,23,()=>a(t).patterns.buckets,e=>e.range,(e,r,s)=>{var c=M(),u=o(c),d=o(u,!0);b(u);var p=f(u,2),h=o(p);b(p);var g=f(p,2),_=o(g,!0);b(g),b(c),i(e=>{n(d,a(r).range),m(h,`width:${e??``}%;background:${Y[a(s)]??`var(--text-faint)`??``}`),n(_,a(r).count)},[()=>Z(a(r).count,X(a(t).patterns.buckets))]),l(e,c)}),b(s),l(e,s)},$$slots:{header:!0,default:!0}}),w(f(S,2),{header:e=>{var r=P(),s=f(o(r),2);C(o(s),{tone:`success`,size:`sm`,children:(e,r)=>{_();var o=c();i(()=>n(o,`${a(t).learnings.verified_count??``} verified`)),l(e,o)},$$slots:{default:!0}}),b(s),b(r),l(e,r)},children:(e,r)=>{var s=I();x(s,23,()=>a(t).learnings.buckets,e=>e.range,(e,r,s)=>{var c=F(),u=o(c),d=o(u,!0);b(u);var p=f(u,2),h=o(p);b(p);var g=f(p,2),_=o(g,!0);b(g),b(c),i(e=>{n(d,a(r).range),m(h,`width:${e??``}%;background:${Y[a(s)]??`var(--text-faint)`??``}`),n(_,a(r).count)},[()=>Z(a(r).count,X(a(t).learnings.buckets))]),l(e,c)}),b(s),l(e,s)},$$slots:{header:!0,default:!0}}),b(u);var T=f(u,2),E=e=>{w(e,{header:e=>{l(e,L())},children:(e,t)=>{var r=z();x(r,21,()=>a(W).upcomingLongPromotions,e=>e.id,(e,t)=>{var r=R(),s=o(r),u=o(s,!0);b(s);var d=f(s,2),p=o(d,!0);b(d);var m=f(d,2);C(m,{tone:`accent`,size:`sm`,subtle:!0,children:(e,r)=>{_();var o=c();i(()=>n(o,a(t).track)),l(e,o)},$$slots:{default:!0}});var h=f(m,2);ee(o(h),{get daysUntil(){return a(t).daysUntil}}),b(h),b(r),i(e=>{n(u,a(t).id),n(p,e)},[()=>a(t).table.replace(`brain_`,``)]),l(e,r)}),b(r),l(e,r)},$$slots:{header:!0,default:!0}})};r(T,e=>{a(W)&&a(W).upcomingLongPromotions.length>0&&e(E)}),te(f(T,2),{limit:6}),l(e,s)};r(fe,e=>{a(G)?e(pe):a(K)?e(me,1):a(U)?e(ge,-1):e(he,2)}),b($),l(t,$),h()}export{H as component};
@@ -1 +1 @@
1
- import{$ as e,A as t,D as n,E as r,H as i,I as a,J as o,K as s,M as c,N as l,O as u,P as d,Q as f,V as p,X as m,Y as h,Z as g,at as _,d as v,et as y,k as b,lt as x,ot as S,r as C,ut as w,w as T,x as E}from"../chunks/DyGQ_VXC.js";import"../chunks/CQCxd1p9.js";import{a as D,r as O}from"../chunks/CEqOYim7.js";import{a as k,l as A,o as j,u as M}from"../chunks/CqF5Lomf.js";import{i as N,n as P}from"../chunks/BRgWBQlV.js";var F=t(`<span class="live-indicator svelte-1nj6iq2"><!> <span>searching…</span></span>`),I=t(`<button type="button" class="clear-btn svelte-1nj6iq2">clear</button>`),L=t(`<div class="panel-head svelte-1nj6iq2"><h2 class="panel-title svelte-1nj6iq2">Recent searches</h2> <!></div>`),R=t(`<li><button type="button" class="recent-item svelte-1nj6iq2"><span class="recent-arrow svelte-1nj6iq2" aria-hidden="true">↗</span> <span> </span></button></li>`),z=t(`<ul class="recent-list svelte-1nj6iq2"></ul>`),ee=t(`<div class="state svelte-1nj6iq2"><!> <span>Searching memory…</span></div>`),te=t(`<span class="hit-cites svelte-1nj6iq2"> </span>`),ne=t(`<p class="hit-preview svelte-1nj6iq2"> </p>`),re=t(`<li><a class="hit svelte-1nj6iq2"><div class="hit-head svelte-1nj6iq2"><code class="hit-id svelte-1nj6iq2"> </code> <!> <!> <!> <span class="hit-date svelte-1nj6iq2"> </span></div> <p class="hit-title svelte-1nj6iq2"> </p> <!> <div class="hit-foot svelte-1nj6iq2"><!></div></a></li>`),ie=t(`<section class="group"><div class="group-head svelte-1nj6iq2"><h3 class="group-title svelte-1nj6iq2"> </h3> <!></div> <ul class="group-list svelte-1nj6iq2"></ul></section>`),ae=t(`<div class="groups svelte-1nj6iq2"></div>`),oe=t(`<section class="page svelte-1nj6iq2"><header class="page-head svelte-1nj6iq2"><div class="head-left"><a class="back svelte-1nj6iq2" href="/brain/overview">← Overview</a> <h1 class="title svelte-1nj6iq2">Search</h1> <span class="subtitle svelte-1nj6iq2">Cross-table memory retrieval — observations, decisions, patterns, learnings</span></div></header> <div class="search-shell svelte-1nj6iq2"><!> <!></div> <!></section>`);function B(t,l){S(l,!0);let B=`cleo:brain:recent-searches`,V=l.data.initialQuery,H=e(g(V)),U=e(g([])),W=e(!1),G=e(null),K=e(g([])),q=null,J=null,se=[`observations`,`decisions`,`patterns`,`learnings`],ce={observations:`Observations`,decisions:`Decisions`,patterns:`Patterns`,learnings:`Learnings`},le={observations:`info`,decisions:`success`,patterns:`accent`,learnings:`warning`};function ue(){try{let e=localStorage.getItem(B);if(!e)return;let t=JSON.parse(e);Array.isArray(t)&&f(K,t.filter(e=>typeof e==`string`).slice(0,6),!0)}catch{f(K,[],!0)}}function de(e){try{f(K,[e,...a(K).filter(t=>t!==e)].slice(0,6),!0),localStorage.setItem(B,JSON.stringify(a(K)))}catch{}}function fe(){f(K,[],!0);try{localStorage.removeItem(B)}catch{}}async function Y(e){if(!e.trim()){f(U,[],!0),f(G,null),f(W,!1);return}J?.abort(),J=new AbortController,f(W,!0),f(G,null);try{let t=await fetch(`/api/memory/find?q=${encodeURIComponent(e)}`,{signal:J.signal});if(!t.ok)throw Error(`HTTP ${t.status}`);f(U,(await t.json()).hits,!0),de(e)}catch(e){if(e instanceof DOMException&&e.name===`AbortError`)return;f(G,e instanceof Error?e.message:`Search failed`,!0)}finally{f(W,!1)}}function pe(e){let t=e.target.value;f(H,t,!0),q&&clearTimeout(q),q=setTimeout(()=>{Y(t);try{let e=new URL(window.location.href);t.trim()?e.searchParams.set(`q`,t):e.searchParams.delete(`q`),window.history.replaceState({},``,e)}catch{}},250)}function me(e){f(H,e,!0),Y(e)}let he=y(()=>{let e={observations:[],decisions:[],patterns:[],learnings:[]};for(let t of a(U))e[t.table].push(t);return e});function ge(e){return`${`/brain/${e.table}`}#${encodeURIComponent(e.id)}`}C(()=>{ue(),V&&Y(V)});var X=oe();E(`1nj6iq2`,e=>{p(()=>{s.title=`BRAIN Search — CLEO Studio`})});var Z=m(o(X),2),Q=o(Z);k(Q,{type:`search`,get value(){return a(H)},label:`Memory search`,placeholder:`Search across observations, decisions, patterns, learnings…`,oninput:pe});var $=m(Q,2),_e=e=>{var t=F();M(o(t),{size:`sm`,label:``}),x(2),w(t),u(e,t)};r($,e=>{a(W)&&e(_e)}),w(Z);var ve=m(Z,2),ye=e=>{O(e,{header:e=>{var t=L(),n=m(o(t),2),i=e=>{var t=I();d(`click`,t,fe),u(e,t)};r(n,e=>{a(K).length>0&&e(i)}),w(t),u(e,t)},children:(e,t)=>{var s=b(),c=h(s),l=e=>{j(e,{title:`Nothing yet`,subtitle:`Type above to search memory. Your recent queries will appear here.`})},f=e=>{var t=z();T(t,20,()=>a(K),e=>e,(e,t)=>{var r=R(),a=o(r),s=m(o(a),2),c=o(s,!0);w(s),w(a),w(r),i(()=>n(c,t)),d(`click`,a,()=>me(t)),u(e,r)}),w(t),u(e,t)};r(c,e=>{a(K).length===0?e(l):e(f,-1)}),u(e,s)},$$slots:{header:!0,default:!0}})},be=y(()=>!a(H).trim()),xe=e=>{j(e,{title:`Search failed`,get subtitle(){return a(G)},variant:`warning`,action:e=>{A(e,{variant:`secondary`,size:`sm`,onclick:()=>{Y(a(H))},children:(e,t)=>{x(),u(e,c(`Retry`))},$$slots:{default:!0}})},$$slots:{action:!0}})},Se=e=>{var t=ee();M(o(t),{size:`md`}),x(2),w(t),u(e,t)},Ce=e=>{{let t=y(()=>`Nothing matched "${a(H)}". Try a broader term or a synonym.`);j(e,{title:`No matches`,get subtitle(){return a(t)}})}},we=e=>{var t=ae();T(t,20,()=>se,e=>e,(e,t)=>{let s=y(()=>a(he)[t]);var l=b(),d=h(l),f=e=>{var l=ie(),d=o(l),f=o(d),p=o(f,!0);w(f),D(m(f,2),{get tone(){return le[t]},size:`sm`,pill:!0,children:(e,t)=>{x();var r=c();i(()=>n(r,a(s).length)),u(e,r)},$$slots:{default:!0}}),w(d);var h=m(d,2);T(h,21,()=>a(s),e=>e.id,(e,t)=>{var s=re(),l=o(s),d=o(l),f=o(d),p=o(f,!0);w(f);var h=m(f,2);P(h,{get tier(){return a(t).tier}});var g=m(h,2),_=e=>{D(e,{tone:`success`,size:`sm`,children:(e,t)=>{x(),u(e,c(`verified`))},$$slots:{default:!0}})};r(g,e=>{a(t).verified===1&&e(_)});var y=m(g,2),b=e=>{var r=te(),s=o(r);w(r),i(()=>n(s,`${a(t).citations??``} citations`)),u(e,r)};r(y,e=>{a(t).citations>0&&e(b)});var S=m(y,2),C=o(S,!0);w(S),w(d);var T=m(d,2),E=o(T,!0);w(T);var O=m(T,2),k=e=>{var r=ne(),s=o(r,!0);w(r),i(()=>n(s,a(t).preview)),u(e,r)};r(O,e=>{a(t).preview&&e(k)});var A=m(O,2);N(o(A),{get score(){return a(t).quality},width:80}),w(A),w(l),w(s),i((e,r)=>{v(l,`href`,e),n(p,a(t).id),n(C,r),n(E,a(t).title)},[()=>ge(a(t)),()=>a(t).createdAt.slice(0,10)]),u(e,s)}),w(h),w(l),i(()=>n(p,ce[t])),u(e,l)};r(d,e=>{a(s).length>0&&e(f)}),u(e,l)}),w(t),u(e,t)};r(ve,e=>{a(be)?e(ye):a(G)?e(xe,1):a(W)&&a(U).length===0?e(Se,2):a(U).length===0?e(Ce,3):e(we,-1)}),w(X),u(t,X),_()}l([`click`]);export{B as component};
1
+ import{$ as e,A as t,D as n,E as r,H as i,I as a,J as o,K as s,M as c,N as l,O as u,P as d,Q as f,V as p,X as m,Y as h,Z as g,at as _,d as v,et as y,k as b,lt as x,ot as S,r as C,ut as w,w as T,x as E}from"../chunks/DGftG5oL.js";import"../chunks/B8WnZMYa.js";import{a as D,r as O}from"../chunks/DZrdToAH.js";import{a as k,l as A,o as j,u as M}from"../chunks/CTLGzgdN.js";import{i as N,n as P}from"../chunks/CnwXLaZJ.js";var F=t(`<span class="live-indicator svelte-1nj6iq2"><!> <span>searching…</span></span>`),I=t(`<button type="button" class="clear-btn svelte-1nj6iq2">clear</button>`),L=t(`<div class="panel-head svelte-1nj6iq2"><h2 class="panel-title svelte-1nj6iq2">Recent searches</h2> <!></div>`),R=t(`<li><button type="button" class="recent-item svelte-1nj6iq2"><span class="recent-arrow svelte-1nj6iq2" aria-hidden="true">↗</span> <span> </span></button></li>`),z=t(`<ul class="recent-list svelte-1nj6iq2"></ul>`),ee=t(`<div class="state svelte-1nj6iq2"><!> <span>Searching memory…</span></div>`),te=t(`<span class="hit-cites svelte-1nj6iq2"> </span>`),ne=t(`<p class="hit-preview svelte-1nj6iq2"> </p>`),re=t(`<li><a class="hit svelte-1nj6iq2"><div class="hit-head svelte-1nj6iq2"><code class="hit-id svelte-1nj6iq2"> </code> <!> <!> <!> <span class="hit-date svelte-1nj6iq2"> </span></div> <p class="hit-title svelte-1nj6iq2"> </p> <!> <div class="hit-foot svelte-1nj6iq2"><!></div></a></li>`),ie=t(`<section class="group"><div class="group-head svelte-1nj6iq2"><h3 class="group-title svelte-1nj6iq2"> </h3> <!></div> <ul class="group-list svelte-1nj6iq2"></ul></section>`),ae=t(`<div class="groups svelte-1nj6iq2"></div>`),oe=t(`<section class="page svelte-1nj6iq2"><header class="page-head svelte-1nj6iq2"><div class="head-left"><a class="back svelte-1nj6iq2" href="/brain/overview">← Overview</a> <h1 class="title svelte-1nj6iq2">Search</h1> <span class="subtitle svelte-1nj6iq2">Cross-table memory retrieval — observations, decisions, patterns, learnings</span></div></header> <div class="search-shell svelte-1nj6iq2"><!> <!></div> <!></section>`);function B(t,l){S(l,!0);let B=`cleo:brain:recent-searches`,V=l.data.initialQuery,H=e(g(V)),U=e(g([])),W=e(!1),G=e(null),K=e(g([])),q=null,J=null,se=[`observations`,`decisions`,`patterns`,`learnings`],ce={observations:`Observations`,decisions:`Decisions`,patterns:`Patterns`,learnings:`Learnings`},le={observations:`info`,decisions:`success`,patterns:`accent`,learnings:`warning`};function ue(){try{let e=localStorage.getItem(B);if(!e)return;let t=JSON.parse(e);Array.isArray(t)&&f(K,t.filter(e=>typeof e==`string`).slice(0,6),!0)}catch{f(K,[],!0)}}function de(e){try{f(K,[e,...a(K).filter(t=>t!==e)].slice(0,6),!0),localStorage.setItem(B,JSON.stringify(a(K)))}catch{}}function fe(){f(K,[],!0);try{localStorage.removeItem(B)}catch{}}async function Y(e){if(!e.trim()){f(U,[],!0),f(G,null),f(W,!1);return}J?.abort(),J=new AbortController,f(W,!0),f(G,null);try{let t=await fetch(`/api/memory/find?q=${encodeURIComponent(e)}`,{signal:J.signal});if(!t.ok)throw Error(`HTTP ${t.status}`);f(U,(await t.json()).hits,!0),de(e)}catch(e){if(e instanceof DOMException&&e.name===`AbortError`)return;f(G,e instanceof Error?e.message:`Search failed`,!0)}finally{f(W,!1)}}function pe(e){let t=e.target.value;f(H,t,!0),q&&clearTimeout(q),q=setTimeout(()=>{Y(t);try{let e=new URL(window.location.href);t.trim()?e.searchParams.set(`q`,t):e.searchParams.delete(`q`),window.history.replaceState({},``,e)}catch{}},250)}function me(e){f(H,e,!0),Y(e)}let he=y(()=>{let e={observations:[],decisions:[],patterns:[],learnings:[]};for(let t of a(U))e[t.table].push(t);return e});function ge(e){return`${`/brain/${e.table}`}#${encodeURIComponent(e.id)}`}C(()=>{ue(),V&&Y(V)});var X=oe();E(`1nj6iq2`,e=>{p(()=>{s.title=`BRAIN Search — CLEO Studio`})});var Z=m(o(X),2),Q=o(Z);k(Q,{type:`search`,get value(){return a(H)},label:`Memory search`,placeholder:`Search across observations, decisions, patterns, learnings…`,oninput:pe});var $=m(Q,2),_e=e=>{var t=F();M(o(t),{size:`sm`,label:``}),x(2),w(t),u(e,t)};r($,e=>{a(W)&&e(_e)}),w(Z);var ve=m(Z,2),ye=e=>{O(e,{header:e=>{var t=L(),n=m(o(t),2),i=e=>{var t=I();d(`click`,t,fe),u(e,t)};r(n,e=>{a(K).length>0&&e(i)}),w(t),u(e,t)},children:(e,t)=>{var s=b(),c=h(s),l=e=>{j(e,{title:`Nothing yet`,subtitle:`Type above to search memory. Your recent queries will appear here.`})},f=e=>{var t=z();T(t,20,()=>a(K),e=>e,(e,t)=>{var r=R(),a=o(r),s=m(o(a),2),c=o(s,!0);w(s),w(a),w(r),i(()=>n(c,t)),d(`click`,a,()=>me(t)),u(e,r)}),w(t),u(e,t)};r(c,e=>{a(K).length===0?e(l):e(f,-1)}),u(e,s)},$$slots:{header:!0,default:!0}})},be=y(()=>!a(H).trim()),xe=e=>{j(e,{title:`Search failed`,get subtitle(){return a(G)},variant:`warning`,action:e=>{A(e,{variant:`secondary`,size:`sm`,onclick:()=>{Y(a(H))},children:(e,t)=>{x(),u(e,c(`Retry`))},$$slots:{default:!0}})},$$slots:{action:!0}})},Se=e=>{var t=ee();M(o(t),{size:`md`}),x(2),w(t),u(e,t)},Ce=e=>{{let t=y(()=>`Nothing matched "${a(H)}". Try a broader term or a synonym.`);j(e,{title:`No matches`,get subtitle(){return a(t)}})}},we=e=>{var t=ae();T(t,20,()=>se,e=>e,(e,t)=>{let s=y(()=>a(he)[t]);var l=b(),d=h(l),f=e=>{var l=ie(),d=o(l),f=o(d),p=o(f,!0);w(f),D(m(f,2),{get tone(){return le[t]},size:`sm`,pill:!0,children:(e,t)=>{x();var r=c();i(()=>n(r,a(s).length)),u(e,r)},$$slots:{default:!0}}),w(d);var h=m(d,2);T(h,21,()=>a(s),e=>e.id,(e,t)=>{var s=re(),l=o(s),d=o(l),f=o(d),p=o(f,!0);w(f);var h=m(f,2);P(h,{get tier(){return a(t).tier}});var g=m(h,2),_=e=>{D(e,{tone:`success`,size:`sm`,children:(e,t)=>{x(),u(e,c(`verified`))},$$slots:{default:!0}})};r(g,e=>{a(t).verified===1&&e(_)});var y=m(g,2),b=e=>{var r=te(),s=o(r);w(r),i(()=>n(s,`${a(t).citations??``} citations`)),u(e,r)};r(y,e=>{a(t).citations>0&&e(b)});var S=m(y,2),C=o(S,!0);w(S),w(d);var T=m(d,2),E=o(T,!0);w(T);var O=m(T,2),k=e=>{var r=ne(),s=o(r,!0);w(r),i(()=>n(s,a(t).preview)),u(e,r)};r(O,e=>{a(t).preview&&e(k)});var A=m(O,2);N(o(A),{get score(){return a(t).quality},width:80}),w(A),w(l),w(s),i((e,r)=>{v(l,`href`,e),n(p,a(t).id),n(C,r),n(E,a(t).title)},[()=>ge(a(t)),()=>a(t).createdAt.slice(0,10)]),u(e,s)}),w(h),w(l),i(()=>n(p,ce[t])),u(e,l)};r(d,e=>{a(s).length>0&&e(f)}),u(e,l)}),w(t),u(e,t)};r(ve,e=>{a(be)?e(ye):a(G)?e(xe,1):a(W)&&a(U).length===0?e(Se,2):a(U).length===0?e(Ce,3):e(we,-1)}),w(X),u(t,X),_()}l([`click`]);export{B as component};
@@ -1 +1 @@
1
- import{$ as e,A as t,D as n,E as r,H as i,I as a,J as o,K as s,M as c,O as l,Q as u,V as d,X as f,Y as p,Z as m,_ as h,at as g,d as _,et as v,k as y,lt as b,ot as x,ut as S,w as C,x as w}from"../chunks/DyGQ_VXC.js";import"../chunks/CQCxd1p9.js";import{a as T,r as E}from"../chunks/CEqOYim7.js";import{l as D,o as O}from"../chunks/CqF5Lomf.js";import{a as k,n as A,t as j}from"../chunks/BRgWBQlV.js";var M=t(`<a class="card-head svelte-4h06go"><span class="card-table svelte-4h06go"> </span> <span class="card-total svelte-4h06go"><span class="total-number svelte-4h06go"> </span> <span class="total-label svelte-4h06go">entries</span></span></a>`),N=t(`<p class="empty-table svelte-4h06go">No entries in this table yet.</p>`),P=t(`<span class="seg-label svelte-4h06go"> </span>`),ee=t(`<div class="seg seg-short svelte-4h06go"><!></div>`),te=t(`<span class="seg-label svelte-4h06go"> </span>`),ne=t(`<div class="seg seg-medium svelte-4h06go"><!></div>`),re=t(`<span class="seg-label svelte-4h06go"> </span>`),ie=t(`<div class="seg seg-long svelte-4h06go"><!></div>`),ae=t(`<div class="stack svelte-4h06go" role="img"><!> <!> <!></div> <dl class="kv svelte-4h06go"><div class="svelte-4h06go"><dt class="svelte-4h06go"><!></dt> <dd class="svelte-4h06go"> </dd></div> <div class="svelte-4h06go"><dt class="svelte-4h06go"><!></dt> <dd class="svelte-4h06go"> </dd></div> <div class="svelte-4h06go"><dt class="svelte-4h06go"><!></dt> <dd class="svelte-4h06go"> </dd></div></dl>`,1),F=t(`<div class="promo-head svelte-4h06go"><h2 class="promo-title svelte-4h06go">Upcoming long-tier promotions</h2> <span class="promo-sub svelte-4h06go">Medium entries closest to the 7-day citation gate</span></div>`),I=t(`<li class="promo-row svelte-4h06go"><a class="promo-id svelte-4h06go"><code class="svelte-4h06go"> </code></a> <span class="promo-table-cell svelte-4h06go"> </span> <!> <div class="promo-end svelte-4h06go"><!></div></li>`),L=t(`<ul class="promo-list svelte-4h06go"></ul>`),R=t(`<div class="legend svelte-4h06go"><span class="legend-title svelte-4h06go">Tiers</span> <!> <!> <!></div> <div class="grid svelte-4h06go"></div> <!> <!>`,1),z=t(`<section class="tier-page svelte-4h06go"><header class="page-head svelte-4h06go"><div class="head-left svelte-4h06go"><a class="back svelte-4h06go" href="/brain/overview">← Overview</a> <h1 class="title svelte-4h06go">Tier Stats</h1> <span class="subtitle svelte-4h06go">Short · Medium · Long retention split across memory tables</span></div> <div class="head-right svelte-4h06go"><span class="updated svelte-4h06go"> </span> <!></div></header> <!></section>`);function B(t,B){x(B,!0);let V=B.data.stats,oe=B.data.loadedAt,H=e(m(V)),U=e(m(oe)),W=e(!1),G=e(null);function K(e){return e.replace(`brain_`,``).replace(/_/g,` `)}function q(e){return e.short+e.medium+e.long}function se(e){let t=q(e);return t===0?{short:0,medium:0,long:0}:{short:e.short/t*100,medium:e.medium/t*100,long:e.long/t*100}}async function J(){u(W,!0),u(G,null);try{let e=await fetch(`/api/memory/tier-stats`);if(!e.ok)throw Error(`HTTP ${e.status}`);u(H,await e.json(),!0),u(U,new Date().toISOString(),!0)}catch(e){u(G,e instanceof Error?e.message:`Failed to refresh tier stats`,!0)}finally{u(W,!1)}}function ce(e){try{return new Date(e).toLocaleTimeString(`en-US`,{hour12:!1})}catch{return e.slice(11,19)}}function Y(e){switch(e){case`brain_observations`:return`/brain/observations`;case`brain_decisions`:return`/brain/decisions`;case`brain_patterns`:return`/brain/patterns`;case`brain_learnings`:return`/brain/learnings`;default:return`/brain`}}var X=z();w(`4h06go`,e=>{d(()=>{s.title=`BRAIN Tier Stats — CLEO Studio`})});var Z=o(X),Q=f(o(Z),2),$=o(Q),le=o($);S($),D(f($,2),{variant:`secondary`,size:`sm`,get loading(){return a(W)},onclick:()=>{J()},children:(e,t)=>{b(),l(e,c(`Refresh`))},$$slots:{default:!0}}),S(Q),S(Z);var ue=f(Z,2),de=e=>{O(e,{title:`Couldn't load tier stats`,get subtitle(){return a(G)},variant:`warning`,action:e=>{D(e,{variant:`secondary`,size:`sm`,onclick:()=>{J()},children:(e,t)=>{b(),l(e,c(`Retry`))},$$slots:{default:!0}})},$$slots:{action:!0}})},fe=e=>{O(e,{title:`brain.db not available`,subtitle:`Start a CLEO session to populate memory — then come back for the split.`})},pe=e=>{var t=R(),s=p(t),u=f(o(s),2);A(u,{tier:`short`});var d=f(u,2);A(d,{tier:`medium`}),A(f(d,2),{tier:`long`}),S(s);var m=f(s,2);C(m,21,()=>a(H).tables,e=>e.table,(e,t)=>{let s=v(()=>q(a(t))),c=v(()=>se(a(t)));E(e,{header:e=>{var r=M(),c=o(r),u=o(c,!0);S(c);var d=f(c,2),p=o(d),m=o(p,!0);S(p),b(2),S(d),S(r),i((e,t)=>{_(r,`href`,e),n(u,t),n(m,a(s))},[()=>Y(a(t).table),()=>K(a(t).table)]),l(e,r)},children:(e,u)=>{var d=y(),m=p(d),g=e=>{l(e,N())},v=e=>{var s=ae(),u=p(s),d=o(u),m=e=>{var s=ee(),u=o(s),d=e=>{var r=P(),s=o(r,!0);S(r),i(()=>n(s,a(t).short)),l(e,r)};r(u,e=>{a(c).short>=12&&e(d)}),S(s),i(()=>{h(s,`width:${a(c).short??``}%`),_(s,`title`,`short: ${a(t).short}`)}),l(e,s)};r(d,e=>{a(c).short>0&&e(m)});var g=f(d,2),v=e=>{var s=ne(),u=o(s),d=e=>{var r=te(),s=o(r,!0);S(r),i(()=>n(s,a(t).medium)),l(e,r)};r(u,e=>{a(c).medium>=12&&e(d)}),S(s),i(()=>{h(s,`width:${a(c).medium??``}%`),_(s,`title`,`medium: ${a(t).medium}`)}),l(e,s)};r(g,e=>{a(c).medium>0&&e(v)});var y=f(g,2),b=e=>{var s=ie(),u=o(s),d=e=>{var r=re(),s=o(r,!0);S(r),i(()=>n(s,a(t).long)),l(e,r)};r(u,e=>{a(c).long>=12&&e(d)}),S(s),i(()=>{h(s,`width:${a(c).long??``}%`),_(s,`title`,`long: ${a(t).long}`)}),l(e,s)};r(y,e=>{a(c).long>0&&e(b)}),S(u);var x=f(u,2),C=o(x),w=o(C);A(o(w),{tier:`short`}),S(w);var T=f(w,2),E=o(T,!0);S(T),S(C);var D=f(C,2),O=o(D);A(o(O),{tier:`medium`}),S(O);var k=f(O,2),j=o(k,!0);S(k),S(D);var M=f(D,2),N=o(M);A(o(N),{tier:`long`}),S(N);var F=f(N,2),I=o(F,!0);S(F),S(M),S(x),i(e=>{_(u,`aria-label`,e),n(E,a(t).short),n(j,a(t).medium),n(I,a(t).long)},[()=>`${K(a(t).table)} tier split`]),l(e,s)};r(m,e=>{a(s)===0?e(g):e(v,-1)}),l(e,d)},$$slots:{header:!0,default:!0}})}),S(m);var g=f(m,2);E(g,{header:e=>{l(e,F())},children:(e,t)=>{var s=y(),u=p(s),d=e=>{O(e,{title:`Nothing queued`,subtitle:`Entries need ≥ 7 days age and citation ≥ 5 (or owner-verified) to promote.`})},m=e=>{var t=L();C(t,21,()=>a(H).upcomingLongPromotions,e=>e.id,(e,t)=>{var r=I(),s=o(r),u=o(s),d=o(u,!0);S(u),S(s);var p=f(s,2),m=o(p,!0);S(p);var h=f(p,2);T(h,{tone:`accent`,size:`sm`,subtle:!0,children:(e,r)=>{b();var o=c();i(()=>n(o,a(t).track)),l(e,o)},$$slots:{default:!0}});var g=f(h,2);k(o(g),{get daysUntil(){return a(t).daysUntil}}),S(g),S(r),i((e,r)=>{_(s,`href`,e),n(d,a(t).id),n(m,r)},[()=>Y(a(t).table),()=>K(a(t).table)]),l(e,r)}),S(t),l(e,t)};r(u,e=>{a(H).upcomingLongPromotions.length===0?e(d):e(m,-1)}),l(e,s)},$$slots:{header:!0,default:!0}}),j(f(g,2),{limit:8}),l(e,t)};r(ue,e=>{a(G)?e(de):a(H)?e(pe,-1):e(fe,1)}),S(X),i(e=>n(le,`Updated ${e??``}`),[()=>ce(a(U))]),l(t,X),g()}export{B as component};
1
+ import{$ as e,A as t,D as n,E as r,H as i,I as a,J as o,K as s,M as c,O as l,Q as u,V as d,X as f,Y as p,Z as m,_ as h,at as g,d as _,et as v,k as y,lt as b,ot as x,ut as S,w as C,x as w}from"../chunks/DGftG5oL.js";import"../chunks/B8WnZMYa.js";import{a as T,r as E}from"../chunks/DZrdToAH.js";import{l as D,o as O}from"../chunks/CTLGzgdN.js";import{a as k,n as A,t as j}from"../chunks/CnwXLaZJ.js";var M=t(`<a class="card-head svelte-4h06go"><span class="card-table svelte-4h06go"> </span> <span class="card-total svelte-4h06go"><span class="total-number svelte-4h06go"> </span> <span class="total-label svelte-4h06go">entries</span></span></a>`),N=t(`<p class="empty-table svelte-4h06go">No entries in this table yet.</p>`),P=t(`<span class="seg-label svelte-4h06go"> </span>`),ee=t(`<div class="seg seg-short svelte-4h06go"><!></div>`),te=t(`<span class="seg-label svelte-4h06go"> </span>`),ne=t(`<div class="seg seg-medium svelte-4h06go"><!></div>`),re=t(`<span class="seg-label svelte-4h06go"> </span>`),ie=t(`<div class="seg seg-long svelte-4h06go"><!></div>`),ae=t(`<div class="stack svelte-4h06go" role="img"><!> <!> <!></div> <dl class="kv svelte-4h06go"><div class="svelte-4h06go"><dt class="svelte-4h06go"><!></dt> <dd class="svelte-4h06go"> </dd></div> <div class="svelte-4h06go"><dt class="svelte-4h06go"><!></dt> <dd class="svelte-4h06go"> </dd></div> <div class="svelte-4h06go"><dt class="svelte-4h06go"><!></dt> <dd class="svelte-4h06go"> </dd></div></dl>`,1),F=t(`<div class="promo-head svelte-4h06go"><h2 class="promo-title svelte-4h06go">Upcoming long-tier promotions</h2> <span class="promo-sub svelte-4h06go">Medium entries closest to the 7-day citation gate</span></div>`),I=t(`<li class="promo-row svelte-4h06go"><a class="promo-id svelte-4h06go"><code class="svelte-4h06go"> </code></a> <span class="promo-table-cell svelte-4h06go"> </span> <!> <div class="promo-end svelte-4h06go"><!></div></li>`),L=t(`<ul class="promo-list svelte-4h06go"></ul>`),R=t(`<div class="legend svelte-4h06go"><span class="legend-title svelte-4h06go">Tiers</span> <!> <!> <!></div> <div class="grid svelte-4h06go"></div> <!> <!>`,1),z=t(`<section class="tier-page svelte-4h06go"><header class="page-head svelte-4h06go"><div class="head-left svelte-4h06go"><a class="back svelte-4h06go" href="/brain/overview">← Overview</a> <h1 class="title svelte-4h06go">Tier Stats</h1> <span class="subtitle svelte-4h06go">Short · Medium · Long retention split across memory tables</span></div> <div class="head-right svelte-4h06go"><span class="updated svelte-4h06go"> </span> <!></div></header> <!></section>`);function B(t,B){x(B,!0);let V=B.data.stats,oe=B.data.loadedAt,H=e(m(V)),U=e(m(oe)),W=e(!1),G=e(null);function K(e){return e.replace(`brain_`,``).replace(/_/g,` `)}function q(e){return e.short+e.medium+e.long}function se(e){let t=q(e);return t===0?{short:0,medium:0,long:0}:{short:e.short/t*100,medium:e.medium/t*100,long:e.long/t*100}}async function J(){u(W,!0),u(G,null);try{let e=await fetch(`/api/memory/tier-stats`);if(!e.ok)throw Error(`HTTP ${e.status}`);u(H,await e.json(),!0),u(U,new Date().toISOString(),!0)}catch(e){u(G,e instanceof Error?e.message:`Failed to refresh tier stats`,!0)}finally{u(W,!1)}}function ce(e){try{return new Date(e).toLocaleTimeString(`en-US`,{hour12:!1})}catch{return e.slice(11,19)}}function Y(e){switch(e){case`brain_observations`:return`/brain/observations`;case`brain_decisions`:return`/brain/decisions`;case`brain_patterns`:return`/brain/patterns`;case`brain_learnings`:return`/brain/learnings`;default:return`/brain`}}var X=z();w(`4h06go`,e=>{d(()=>{s.title=`BRAIN Tier Stats — CLEO Studio`})});var Z=o(X),Q=f(o(Z),2),$=o(Q),le=o($);S($),D(f($,2),{variant:`secondary`,size:`sm`,get loading(){return a(W)},onclick:()=>{J()},children:(e,t)=>{b(),l(e,c(`Refresh`))},$$slots:{default:!0}}),S(Q),S(Z);var ue=f(Z,2),de=e=>{O(e,{title:`Couldn't load tier stats`,get subtitle(){return a(G)},variant:`warning`,action:e=>{D(e,{variant:`secondary`,size:`sm`,onclick:()=>{J()},children:(e,t)=>{b(),l(e,c(`Retry`))},$$slots:{default:!0}})},$$slots:{action:!0}})},fe=e=>{O(e,{title:`brain.db not available`,subtitle:`Start a CLEO session to populate memory — then come back for the split.`})},pe=e=>{var t=R(),s=p(t),u=f(o(s),2);A(u,{tier:`short`});var d=f(u,2);A(d,{tier:`medium`}),A(f(d,2),{tier:`long`}),S(s);var m=f(s,2);C(m,21,()=>a(H).tables,e=>e.table,(e,t)=>{let s=v(()=>q(a(t))),c=v(()=>se(a(t)));E(e,{header:e=>{var r=M(),c=o(r),u=o(c,!0);S(c);var d=f(c,2),p=o(d),m=o(p,!0);S(p),b(2),S(d),S(r),i((e,t)=>{_(r,`href`,e),n(u,t),n(m,a(s))},[()=>Y(a(t).table),()=>K(a(t).table)]),l(e,r)},children:(e,u)=>{var d=y(),m=p(d),g=e=>{l(e,N())},v=e=>{var s=ae(),u=p(s),d=o(u),m=e=>{var s=ee(),u=o(s),d=e=>{var r=P(),s=o(r,!0);S(r),i(()=>n(s,a(t).short)),l(e,r)};r(u,e=>{a(c).short>=12&&e(d)}),S(s),i(()=>{h(s,`width:${a(c).short??``}%`),_(s,`title`,`short: ${a(t).short}`)}),l(e,s)};r(d,e=>{a(c).short>0&&e(m)});var g=f(d,2),v=e=>{var s=ne(),u=o(s),d=e=>{var r=te(),s=o(r,!0);S(r),i(()=>n(s,a(t).medium)),l(e,r)};r(u,e=>{a(c).medium>=12&&e(d)}),S(s),i(()=>{h(s,`width:${a(c).medium??``}%`),_(s,`title`,`medium: ${a(t).medium}`)}),l(e,s)};r(g,e=>{a(c).medium>0&&e(v)});var y=f(g,2),b=e=>{var s=ie(),u=o(s),d=e=>{var r=re(),s=o(r,!0);S(r),i(()=>n(s,a(t).long)),l(e,r)};r(u,e=>{a(c).long>=12&&e(d)}),S(s),i(()=>{h(s,`width:${a(c).long??``}%`),_(s,`title`,`long: ${a(t).long}`)}),l(e,s)};r(y,e=>{a(c).long>0&&e(b)}),S(u);var x=f(u,2),C=o(x),w=o(C);A(o(w),{tier:`short`}),S(w);var T=f(w,2),E=o(T,!0);S(T),S(C);var D=f(C,2),O=o(D);A(o(O),{tier:`medium`}),S(O);var k=f(O,2),j=o(k,!0);S(k),S(D);var M=f(D,2),N=o(M);A(o(N),{tier:`long`}),S(N);var F=f(N,2),I=o(F,!0);S(F),S(M),S(x),i(e=>{_(u,`aria-label`,e),n(E,a(t).short),n(j,a(t).medium),n(I,a(t).long)},[()=>`${K(a(t).table)} tier split`]),l(e,s)};r(m,e=>{a(s)===0?e(g):e(v,-1)}),l(e,d)},$$slots:{header:!0,default:!0}})}),S(m);var g=f(m,2);E(g,{header:e=>{l(e,F())},children:(e,t)=>{var s=y(),u=p(s),d=e=>{O(e,{title:`Nothing queued`,subtitle:`Entries need ≥ 7 days age and citation ≥ 5 (or owner-verified) to promote.`})},m=e=>{var t=L();C(t,21,()=>a(H).upcomingLongPromotions,e=>e.id,(e,t)=>{var r=I(),s=o(r),u=o(s),d=o(u,!0);S(u),S(s);var p=f(s,2),m=o(p,!0);S(p);var h=f(p,2);T(h,{tone:`accent`,size:`sm`,subtle:!0,children:(e,r)=>{b();var o=c();i(()=>n(o,a(t).track)),l(e,o)},$$slots:{default:!0}});var g=f(h,2);k(o(g),{get daysUntil(){return a(t).daysUntil}}),S(g),S(r),i((e,r)=>{_(s,`href`,e),n(d,a(t).id),n(m,r)},[()=>Y(a(t).table),()=>K(a(t).table)]),l(e,r)}),S(t),l(e,t)};r(u,e=>{a(H).upcomingLongPromotions.length===0?e(d):e(m,-1)}),l(e,s)},$$slots:{header:!0,default:!0}}),j(f(g,2),{limit:8}),l(e,t)};r(ue,e=>{a(G)?e(de):a(H)?e(pe,-1):e(fe,1)}),S(X),i(e=>n(le,`Updated ${e??``}`),[()=>ce(a(U))]),l(t,X),g()}export{B as component};
@@ -1,2 +1,2 @@
1
- import{$ as e,A as t,D as n,E as r,F as i,H as a,I as o,J as s,K as c,M as l,N as u,O as d,P as f,Q as p,V as m,X as h,Y as g,Z as _,_ as v,at as y,d as b,et as x,k as S,lt as C,ot as w,s as ee,u as te,ut as T,v as E,w as D,x as O}from"../chunks/DyGQ_VXC.js";import{r as k}from"../chunks/TX-23QW3.js";import"../chunks/CQCxd1p9.js";import{i as A,r as j}from"../chunks/CEqOYim7.js";import{a as ne,c as re,o as M,s as ie}from"../chunks/CqF5Lomf.js";import{a as ae,i as oe}from"../chunks/RptFUp2P.js";import"../chunks/BGmpyfzD.js";import{i as se,r as N,t as P}from"../chunks/D8NsLz6i.js";var ce=t(`<span class="arrow-mark svelte-1cjo1uu" aria-hidden="true">›</span>`),le=t(`<li><button type="button"><span aria-hidden="true"></span> <span class="legend-label"> </span> <!></button></li>`),ue=t(`<span class="hit-path svelte-1cjo1uu"> </span>`),de=t(`<li><button type="button" class="search-hit svelte-1cjo1uu"><span class="hit-label svelte-1cjo1uu"> </span> <span class="hit-meta svelte-1cjo1uu"><span class="hit-kind svelte-1cjo1uu"> </span> <!></span></button></li>`),fe=t(`<ul class="search-results svelte-1cjo1uu" role="listbox" aria-label="Search results"></ul>`),pe=t(`<p class="search-empty svelte-1cjo1uu"> </p>`),me=t(`<li><a class="community-row svelte-1cjo1uu"><span class="tick svelte-1cjo1uu" aria-hidden="true"></span> <span class="row-body svelte-1cjo1uu"><span class="row-label svelte-1cjo1uu"> </span> <span class="row-meta svelte-1cjo1uu"> </span></span> <span class="row-chev svelte-1cjo1uu" aria-hidden="true">→</span></a></li>`),he=t(`<span class="selected-meta svelte-1cjo1uu"> </span>`),ge=t(`<div class="panel-section selected svelte-1cjo1uu"><h2 class="panel-head svelte-1cjo1uu">Selected</h2> <div class="selected-card svelte-1cjo1uu"><span class="selected-label svelte-1cjo1uu"> </span> <span class="selected-kind svelte-1cjo1uu"> </span> <!></div></div>`),_e=t(`<div class="panel-stack svelte-1cjo1uu"><!> <!> <div class="panel-section svelte-1cjo1uu"><h2 class="panel-head svelte-1cjo1uu">Visible Labels</h2> <p class="panel-hint svelte-1cjo1uu">Toggles WHICH kinds may render a cluster caption — never leaf labels.</p> <!> <label class="toggle-row svelte-1cjo1uu"><input type="checkbox" class="svelte-1cjo1uu"/> <span>Show cluster captions</span></label></div> <div class="panel-section svelte-1cjo1uu"><h2 class="panel-head svelte-1cjo1uu">Visible Edges</h2> <p class="panel-hint svelte-1cjo1uu">Hides the kind entirely from the canvas.</p> <!></div> <div class="panel-section svelte-1cjo1uu"><h2 class="panel-head svelte-1cjo1uu">Top Communities</h2> <ul class="community-list svelte-1cjo1uu"></ul></div> <div class="panel-section svelte-1cjo1uu"><a href="/code/flows" class="flow-link svelte-1cjo1uu"><span class="flow-arrow svelte-1cjo1uu" aria-hidden="true">▸</span> <span class="flow-body svelte-1cjo1uu"><span class="flow-title svelte-1cjo1uu">Execution Flows</span> <span class="flow-sub svelte-1cjo1uu">Trace entry-points through the call graph</span></span></a></div> <!></div>`),ve=t(`<li><a class="svelte-1cjo1uu"><span class="kb-label svelte-1cjo1uu"> </span> <span class="kb-meta svelte-1cjo1uu"> </span></a></li>`),ye=t(`<div class="workbench svelte-1cjo1uu"><div class="stage svelte-1cjo1uu"><div class="stage-scanlines svelte-1cjo1uu" aria-hidden="true"></div> <!> <footer class="legend-dock svelte-1cjo1uu" aria-label="Edge legend"><span class="legend-eyebrow svelte-1cjo1uu">EDGE KINDS</span> <ul class="svelte-1cjo1uu"></ul></footer></div> <aside class="side-panel svelte-1cjo1uu" aria-label="Graph controls and details"><!> <div class="keyboard-list svelte-1cjo1uu" aria-label="Keyboard-accessible community list"><h2 class="panel-head sr-subhead svelte-1cjo1uu">All Communities</h2> <p class="panel-hint svelte-1cjo1uu">Keyboard-accessible mirror of the graph for screen readers and focus nav.</p> <ol class="svelte-1cjo1uu"></ol></div></aside></div> <p class="telemetry svelte-1cjo1uu" aria-hidden="true"> </p>`,1),be=t(`<section class="code-macro svelte-1cjo1uu" aria-labelledby="code-title"><header class="page-head svelte-1cjo1uu"><!> <div class="title-row svelte-1cjo1uu"><div class="title-block"><span class="eyebrow svelte-1cjo1uu">NEXUS · Macro</span> <h1 id="code-title" class="svelte-1cjo1uu">Code Intelligence</h1> <p class="subtitle svelte-1cjo1uu"><span class="stat-inline svelte-1cjo1uu"> </span> <span class="sep svelte-1cjo1uu" aria-hidden="true">·</span> <span class="stat-inline svelte-1cjo1uu"> </span> <span class="sep svelte-1cjo1uu" aria-hidden="true">·</span> <span class="stat-inline svelte-1cjo1uu"> </span></p></div> <div class="title-stats svelte-1cjo1uu" role="list" aria-label="Graph summary"><div class="stat-card svelte-1cjo1uu" role="listitem"><span class="stat-num svelte-1cjo1uu"> </span> <span class="stat-lbl svelte-1cjo1uu">Symbols</span></div> <div class="stat-card svelte-1cjo1uu" role="listitem"><span class="stat-num svelte-1cjo1uu"> </span> <span class="stat-lbl svelte-1cjo1uu">Relations</span></div> <div class="stat-card svelte-1cjo1uu" role="listitem"><span class="stat-num svelte-1cjo1uu"> </span> <span class="stat-lbl svelte-1cjo1uu">Communities</span></div></div></div></header> <!></section>`);function F(t,u){w(u,!0);let F=x(()=>P(u.data.communities.map(e=>({id:e.id,label:e.rawLabel,memberCount:e.size,topKind:e.topKind})),u.data.edges.map(e=>({source:e.source,target:e.target,kind:N(e.dominantType),weight:e.weight})))),xe=x(()=>o(F).nodes),Se=x(()=>o(F).edges),Ce=x(()=>o(F).clusters),I=[`contains`,`defines`,`imports`,`calls`,`extends`,`implements`,`has_method`,`has_property`,`member_of`,`accesses`,`references`,`relates_to`],L=[`community`,`folder`,`file`,`class`,`function`,`method`,`interface`,`enum`,`type_alias`],R=e(_(new Set(I))),z=e(_(new Set(L))),B=e(!0),V=e(null),H=e(null);function we(e){let t=new Set(o(R));t.has(e)?t.delete(e):t.add(e),p(R,t,!0)}function Te(e){let t=new Set(o(z));t.has(e)?t.delete(e):t.add(e),p(z,t,!0)}let U=e(``),W=e(_([])),G=null;function Ee(){G&&clearTimeout(G);let e=o(U).trim();if(e.length<2){p(W,[],!0);return}G=setTimeout(async()=>{try{let t=await fetch(`/api/nexus/search?q=${encodeURIComponent(e)}`);if(!t.ok){p(W,[],!0);return}p(W,await t.json(),!0)}catch{p(W,[],!0)}},180)}function De(e){k(`/code/symbol/${encodeURIComponent(e.label)}`)}function Oe(e){p(H,e,!0),e.kind===`community`&&k(`/code/community/${encodeURIComponent(e.id)}`)}let ke=x(()=>u.data.communities.slice(0,12));function K(e){return e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}let Ae=x(()=>u.data.edges.reduce((e,t)=>e+t.weight,0));var q=be();O(`1cjo1uu`,e=>{m(()=>{c.title=`Code Intelligence — CLEO Studio`})});var J=s(q),je=s(J);A(je,{items:[{label:`Studio`,href:`/`},{label:`Code`}]});var Me=h(je,2),Y=s(Me),Ne=h(s(Y),4),X=s(Ne),Pe=s(X);T(X);var Z=h(X,4),Fe=s(Z);T(Z);var Ie=h(Z,4),Le=s(Ie);T(Ie),T(Ne),T(Y);var Re=h(Y,2),Q=s(Re),ze=s(Q),Be=s(ze,!0);T(ze),C(2),T(Q);var $=h(Q,2),Ve=s($),He=s(Ve,!0);T(Ve),C(2),T($);var Ue=h($,2),We=s(Ue),Ge=s(We,!0);T(We),C(2),T(Ue),T(Re),T(Me),T(J);var Ke=h(J,2),qe=e=>{{let t=x(()=>u.data.emptyReason??`Run cleo nexus analyze to populate nexus.db.`);M(e,{title:`No code graph yet`,get subtitle(){return o(t)}})}},Je=e=>{var t=ye(),c=g(t),m=s(c),_=h(s(m),2);se(_,{get nodes(){return o(xe)},get edges(){return o(Se)},get clusters(){return o(Ce)},get visibleEdgeKinds(){return o(R)},get visibleNodeKinds(){return o(z)},get highlightNodeId(){return o(V)},get showClusterLabels(){return o(B)},onNodeClick:Oe,height:`calc(100vh - 220px)`,baseAlpha:.92});var y=h(_,2),w=h(s(y),2);D(w,20,()=>I,e=>e,(e,t)=>{let i=x(()=>oe[t]),c=x(()=>o(R).has(t));var l=le(),u=s(l);let p;var m=s(u);let g,_;var y=h(m,2),S=s(y,!0);T(y);var C=h(y,2),w=e=>{d(e,ce())};r(C,e=>{o(i).arrow&&e(w)}),T(u),T(l),a((e,r)=>{p=E(u,1,`legend-item svelte-1cjo1uu`,null,p,{active:o(c)}),b(u,`aria-pressed`,o(c)),b(u,`title`,e),g=E(m,1,`swatch svelte-1cjo1uu`,null,g,r),_=v(m,``,_,{background:o(i).color}),n(S,t)},[()=>ae(t),()=>({dashed:!!o(i).dash})]),f(`click`,u,()=>we(t)),d(e,l)}),T(w),T(y),T(m);var O=h(m,2),k=s(O);j(k,{elevation:1,padding:`cozy`,children:e=>{var t=_e(),c=s(t);ne(c,{type:`search`,label:`Search symbols`,placeholder:`Search symbols, classes, functions…`,oninput:Ee,get value(){return o(U)},set value(e){p(U,e,!0)}});var u=h(c,2),m=e=>{var t=fe();D(t,21,()=>o(W),e=>e.id,(e,t)=>{var i=de(),c=s(i),l=s(c),u=s(l,!0);T(l);var p=h(l,2),m=s(p),g=s(m,!0);T(m);var _=h(m,2),v=e=>{var r=ue(),i=s(r,!0);T(r),a(e=>n(i,e),[()=>o(t).filePath.split(`/`).slice(-2).join(`/`)]),d(e,r)};r(_,e=>{o(t).filePath&&e(v)}),T(p),T(c),T(i),a(()=>{n(u,o(t).label),n(g,o(t).kind)}),f(`click`,c,()=>De(o(t))),d(e,i)}),T(t),d(e,t)},_=e=>{var t=pe(),r=s(t);T(t),a(()=>n(r,`No matches for "${o(U)??``}"`)),d(e,t)},y=x(()=>o(U).trim().length>=2);r(u,e=>{o(W).length>0?e(m):o(y)&&e(_,1)});var w=h(u,2),E=h(s(w),4);ie(E,{children:e=>{var t=S();D(g(t),16,()=>L,e=>e,(e,t)=>{{let r=e=>{C();var r=l();a(()=>n(r,t)),d(e,r)},i=x(()=>o(z).has(t));re(e,{get active(){return o(i)},onclick:()=>Te(t),children:r,$$slots:{default:!0}})}}),d(e,t)},$$slots:{default:!0}});var O=h(E,2),k=s(O);te(k),C(2),T(O),T(w);var A=h(w,2);ie(h(s(A),4),{children:e=>{var t=S();D(g(t),16,()=>I,e=>e,(e,t)=>{{let r=e=>{C();var r=l();a(()=>n(r,t)),d(e,r)},i=x(()=>o(R).has(t));re(e,{get active(){return o(i)},onclick:()=>we(t),children:r,$$slots:{default:!0}})}}),d(e,t)},$$slots:{default:!0}}),T(A);var j=h(A,2),M=h(s(j),2);D(M,21,()=>o(ke),e=>e.id,(e,t)=>{var r=me(),c=s(r);let l;var u=h(s(c),2),f=s(u),m=s(f,!0);T(f);var g=h(f,2),_=s(g);T(g),T(u),C(2),T(c),T(r),a(e=>{b(c,`href`,e),l=v(c,``,l,{"--tint":o(t).color}),n(m,o(t).rawLabel),n(_,`${o(t).size??``} symbols · ${o(t).topKind??``}`)},[()=>`/code/community/${encodeURIComponent(o(t).id)}`]),i(`mouseenter`,c,()=>{p(V,o(t).id,!0)}),i(`focus`,c,()=>{p(V,o(t).id,!0)}),i(`mouseleave`,c,()=>{p(V,null)}),i(`blur`,c,()=>{p(V,null)}),d(e,r)}),T(M),T(j);var ae=h(j,4),oe=e=>{var t=ge(),i=h(s(t),2),c=s(i),l=s(c,!0);T(c);var u=h(c,2),f=s(u,!0);T(u);var p=h(u,2),m=e=>{var t=he(),r=s(t);T(t),a(()=>n(r,`${o(H).meta.memberCount??``} members`)),d(e,t)};r(p,e=>{typeof o(H).meta?.memberCount==`number`&&e(m)}),T(i),T(t),a(()=>{n(l,o(H).label),n(f,o(H).kind)}),d(e,t)};r(ae,e=>{o(H)&&e(oe)}),T(t),ee(k,()=>o(B),e=>p(B,e)),d(e,t)},$$slots:{default:!0}});var A=h(k,2),M=h(s(A),4);D(M,21,()=>u.data.communities,e=>e.id,(e,t)=>{var r=ve(),i=s(r),c=s(i),l=s(c,!0);T(c);var u=h(c,2),f=s(u);T(u),T(i),T(r),a(e=>{b(i,`href`,e),n(l,o(t).rawLabel),n(f,`${o(t).size??``} symbols · ${o(t).topKind??``}`)},[()=>`/code/community/${encodeURIComponent(o(t).id)}`]),d(e,r)}),T(M),T(A),T(O),T(c);var N=h(c,2),P=s(N);T(N),a(e=>n(P,`Aggregate cross-community relations: ${e??``} · Top-600 shown ·
1
+ import{$ as e,A as t,D as n,E as r,F as i,H as a,I as o,J as s,K as c,M as l,N as u,O as d,P as f,Q as p,V as m,X as h,Y as g,Z as _,_ as v,at as y,d as b,et as x,k as S,lt as C,ot as w,s as ee,u as te,ut as T,v as E,w as D,x as O}from"../chunks/DGftG5oL.js";import{r as k}from"../chunks/cWVw9W0E.js";import"../chunks/B8WnZMYa.js";import{i as A,r as j}from"../chunks/DZrdToAH.js";import{a as ne,c as re,o as M,s as ie}from"../chunks/CTLGzgdN.js";import{a as ae,i as oe}from"../chunks/Cge6qiwc.js";import"../chunks/DX_JOBSO.js";import{i as se,r as N,t as P}from"../chunks/BOnrCZaR.js";var ce=t(`<span class="arrow-mark svelte-1cjo1uu" aria-hidden="true">›</span>`),le=t(`<li><button type="button"><span aria-hidden="true"></span> <span class="legend-label"> </span> <!></button></li>`),ue=t(`<span class="hit-path svelte-1cjo1uu"> </span>`),de=t(`<li><button type="button" class="search-hit svelte-1cjo1uu"><span class="hit-label svelte-1cjo1uu"> </span> <span class="hit-meta svelte-1cjo1uu"><span class="hit-kind svelte-1cjo1uu"> </span> <!></span></button></li>`),fe=t(`<ul class="search-results svelte-1cjo1uu" role="listbox" aria-label="Search results"></ul>`),pe=t(`<p class="search-empty svelte-1cjo1uu"> </p>`),me=t(`<li><a class="community-row svelte-1cjo1uu"><span class="tick svelte-1cjo1uu" aria-hidden="true"></span> <span class="row-body svelte-1cjo1uu"><span class="row-label svelte-1cjo1uu"> </span> <span class="row-meta svelte-1cjo1uu"> </span></span> <span class="row-chev svelte-1cjo1uu" aria-hidden="true">→</span></a></li>`),he=t(`<span class="selected-meta svelte-1cjo1uu"> </span>`),ge=t(`<div class="panel-section selected svelte-1cjo1uu"><h2 class="panel-head svelte-1cjo1uu">Selected</h2> <div class="selected-card svelte-1cjo1uu"><span class="selected-label svelte-1cjo1uu"> </span> <span class="selected-kind svelte-1cjo1uu"> </span> <!></div></div>`),_e=t(`<div class="panel-stack svelte-1cjo1uu"><!> <!> <div class="panel-section svelte-1cjo1uu"><h2 class="panel-head svelte-1cjo1uu">Visible Labels</h2> <p class="panel-hint svelte-1cjo1uu">Toggles WHICH kinds may render a cluster caption — never leaf labels.</p> <!> <label class="toggle-row svelte-1cjo1uu"><input type="checkbox" class="svelte-1cjo1uu"/> <span>Show cluster captions</span></label></div> <div class="panel-section svelte-1cjo1uu"><h2 class="panel-head svelte-1cjo1uu">Visible Edges</h2> <p class="panel-hint svelte-1cjo1uu">Hides the kind entirely from the canvas.</p> <!></div> <div class="panel-section svelte-1cjo1uu"><h2 class="panel-head svelte-1cjo1uu">Top Communities</h2> <ul class="community-list svelte-1cjo1uu"></ul></div> <div class="panel-section svelte-1cjo1uu"><a href="/code/flows" class="flow-link svelte-1cjo1uu"><span class="flow-arrow svelte-1cjo1uu" aria-hidden="true">▸</span> <span class="flow-body svelte-1cjo1uu"><span class="flow-title svelte-1cjo1uu">Execution Flows</span> <span class="flow-sub svelte-1cjo1uu">Trace entry-points through the call graph</span></span></a></div> <!></div>`),ve=t(`<li><a class="svelte-1cjo1uu"><span class="kb-label svelte-1cjo1uu"> </span> <span class="kb-meta svelte-1cjo1uu"> </span></a></li>`),ye=t(`<div class="workbench svelte-1cjo1uu"><div class="stage svelte-1cjo1uu"><div class="stage-scanlines svelte-1cjo1uu" aria-hidden="true"></div> <!> <footer class="legend-dock svelte-1cjo1uu" aria-label="Edge legend"><span class="legend-eyebrow svelte-1cjo1uu">EDGE KINDS</span> <ul class="svelte-1cjo1uu"></ul></footer></div> <aside class="side-panel svelte-1cjo1uu" aria-label="Graph controls and details"><!> <div class="keyboard-list svelte-1cjo1uu" aria-label="Keyboard-accessible community list"><h2 class="panel-head sr-subhead svelte-1cjo1uu">All Communities</h2> <p class="panel-hint svelte-1cjo1uu">Keyboard-accessible mirror of the graph for screen readers and focus nav.</p> <ol class="svelte-1cjo1uu"></ol></div></aside></div> <p class="telemetry svelte-1cjo1uu" aria-hidden="true"> </p>`,1),be=t(`<section class="code-macro svelte-1cjo1uu" aria-labelledby="code-title"><header class="page-head svelte-1cjo1uu"><!> <div class="title-row svelte-1cjo1uu"><div class="title-block"><span class="eyebrow svelte-1cjo1uu">NEXUS · Macro</span> <h1 id="code-title" class="svelte-1cjo1uu">Code Intelligence</h1> <p class="subtitle svelte-1cjo1uu"><span class="stat-inline svelte-1cjo1uu"> </span> <span class="sep svelte-1cjo1uu" aria-hidden="true">·</span> <span class="stat-inline svelte-1cjo1uu"> </span> <span class="sep svelte-1cjo1uu" aria-hidden="true">·</span> <span class="stat-inline svelte-1cjo1uu"> </span></p></div> <div class="title-stats svelte-1cjo1uu" role="list" aria-label="Graph summary"><div class="stat-card svelte-1cjo1uu" role="listitem"><span class="stat-num svelte-1cjo1uu"> </span> <span class="stat-lbl svelte-1cjo1uu">Symbols</span></div> <div class="stat-card svelte-1cjo1uu" role="listitem"><span class="stat-num svelte-1cjo1uu"> </span> <span class="stat-lbl svelte-1cjo1uu">Relations</span></div> <div class="stat-card svelte-1cjo1uu" role="listitem"><span class="stat-num svelte-1cjo1uu"> </span> <span class="stat-lbl svelte-1cjo1uu">Communities</span></div></div></div></header> <!></section>`);function F(t,u){w(u,!0);let F=x(()=>P(u.data.communities.map(e=>({id:e.id,label:e.rawLabel,memberCount:e.size,topKind:e.topKind})),u.data.edges.map(e=>({source:e.source,target:e.target,kind:N(e.dominantType),weight:e.weight})))),xe=x(()=>o(F).nodes),Se=x(()=>o(F).edges),Ce=x(()=>o(F).clusters),I=[`contains`,`defines`,`imports`,`calls`,`extends`,`implements`,`has_method`,`has_property`,`member_of`,`accesses`,`references`,`relates_to`],L=[`community`,`folder`,`file`,`class`,`function`,`method`,`interface`,`enum`,`type_alias`],R=e(_(new Set(I))),z=e(_(new Set(L))),B=e(!0),V=e(null),H=e(null);function we(e){let t=new Set(o(R));t.has(e)?t.delete(e):t.add(e),p(R,t,!0)}function Te(e){let t=new Set(o(z));t.has(e)?t.delete(e):t.add(e),p(z,t,!0)}let U=e(``),W=e(_([])),G=null;function Ee(){G&&clearTimeout(G);let e=o(U).trim();if(e.length<2){p(W,[],!0);return}G=setTimeout(async()=>{try{let t=await fetch(`/api/nexus/search?q=${encodeURIComponent(e)}`);if(!t.ok){p(W,[],!0);return}p(W,await t.json(),!0)}catch{p(W,[],!0)}},180)}function De(e){k(`/code/symbol/${encodeURIComponent(e.label)}`)}function Oe(e){p(H,e,!0),e.kind===`community`&&k(`/code/community/${encodeURIComponent(e.id)}`)}let ke=x(()=>u.data.communities.slice(0,12));function K(e){return e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}let Ae=x(()=>u.data.edges.reduce((e,t)=>e+t.weight,0));var q=be();O(`1cjo1uu`,e=>{m(()=>{c.title=`Code Intelligence — CLEO Studio`})});var J=s(q),je=s(J);A(je,{items:[{label:`Studio`,href:`/`},{label:`Code`}]});var Me=h(je,2),Y=s(Me),Ne=h(s(Y),4),X=s(Ne),Pe=s(X);T(X);var Z=h(X,4),Fe=s(Z);T(Z);var Ie=h(Z,4),Le=s(Ie);T(Ie),T(Ne),T(Y);var Re=h(Y,2),Q=s(Re),ze=s(Q),Be=s(ze,!0);T(ze),C(2),T(Q);var $=h(Q,2),Ve=s($),He=s(Ve,!0);T(Ve),C(2),T($);var Ue=h($,2),We=s(Ue),Ge=s(We,!0);T(We),C(2),T(Ue),T(Re),T(Me),T(J);var Ke=h(J,2),qe=e=>{{let t=x(()=>u.data.emptyReason??`Run cleo nexus analyze to populate nexus.db.`);M(e,{title:`No code graph yet`,get subtitle(){return o(t)}})}},Je=e=>{var t=ye(),c=g(t),m=s(c),_=h(s(m),2);se(_,{get nodes(){return o(xe)},get edges(){return o(Se)},get clusters(){return o(Ce)},get visibleEdgeKinds(){return o(R)},get visibleNodeKinds(){return o(z)},get highlightNodeId(){return o(V)},get showClusterLabels(){return o(B)},onNodeClick:Oe,height:`calc(100vh - 220px)`,baseAlpha:.92});var y=h(_,2),w=h(s(y),2);D(w,20,()=>I,e=>e,(e,t)=>{let i=x(()=>oe[t]),c=x(()=>o(R).has(t));var l=le(),u=s(l);let p;var m=s(u);let g,_;var y=h(m,2),S=s(y,!0);T(y);var C=h(y,2),w=e=>{d(e,ce())};r(C,e=>{o(i).arrow&&e(w)}),T(u),T(l),a((e,r)=>{p=E(u,1,`legend-item svelte-1cjo1uu`,null,p,{active:o(c)}),b(u,`aria-pressed`,o(c)),b(u,`title`,e),g=E(m,1,`swatch svelte-1cjo1uu`,null,g,r),_=v(m,``,_,{background:o(i).color}),n(S,t)},[()=>ae(t),()=>({dashed:!!o(i).dash})]),f(`click`,u,()=>we(t)),d(e,l)}),T(w),T(y),T(m);var O=h(m,2),k=s(O);j(k,{elevation:1,padding:`cozy`,children:e=>{var t=_e(),c=s(t);ne(c,{type:`search`,label:`Search symbols`,placeholder:`Search symbols, classes, functions…`,oninput:Ee,get value(){return o(U)},set value(e){p(U,e,!0)}});var u=h(c,2),m=e=>{var t=fe();D(t,21,()=>o(W),e=>e.id,(e,t)=>{var i=de(),c=s(i),l=s(c),u=s(l,!0);T(l);var p=h(l,2),m=s(p),g=s(m,!0);T(m);var _=h(m,2),v=e=>{var r=ue(),i=s(r,!0);T(r),a(e=>n(i,e),[()=>o(t).filePath.split(`/`).slice(-2).join(`/`)]),d(e,r)};r(_,e=>{o(t).filePath&&e(v)}),T(p),T(c),T(i),a(()=>{n(u,o(t).label),n(g,o(t).kind)}),f(`click`,c,()=>De(o(t))),d(e,i)}),T(t),d(e,t)},_=e=>{var t=pe(),r=s(t);T(t),a(()=>n(r,`No matches for "${o(U)??``}"`)),d(e,t)},y=x(()=>o(U).trim().length>=2);r(u,e=>{o(W).length>0?e(m):o(y)&&e(_,1)});var w=h(u,2),E=h(s(w),4);ie(E,{children:e=>{var t=S();D(g(t),16,()=>L,e=>e,(e,t)=>{{let r=e=>{C();var r=l();a(()=>n(r,t)),d(e,r)},i=x(()=>o(z).has(t));re(e,{get active(){return o(i)},onclick:()=>Te(t),children:r,$$slots:{default:!0}})}}),d(e,t)},$$slots:{default:!0}});var O=h(E,2),k=s(O);te(k),C(2),T(O),T(w);var A=h(w,2);ie(h(s(A),4),{children:e=>{var t=S();D(g(t),16,()=>I,e=>e,(e,t)=>{{let r=e=>{C();var r=l();a(()=>n(r,t)),d(e,r)},i=x(()=>o(R).has(t));re(e,{get active(){return o(i)},onclick:()=>we(t),children:r,$$slots:{default:!0}})}}),d(e,t)},$$slots:{default:!0}}),T(A);var j=h(A,2),M=h(s(j),2);D(M,21,()=>o(ke),e=>e.id,(e,t)=>{var r=me(),c=s(r);let l;var u=h(s(c),2),f=s(u),m=s(f,!0);T(f);var g=h(f,2),_=s(g);T(g),T(u),C(2),T(c),T(r),a(e=>{b(c,`href`,e),l=v(c,``,l,{"--tint":o(t).color}),n(m,o(t).rawLabel),n(_,`${o(t).size??``} symbols · ${o(t).topKind??``}`)},[()=>`/code/community/${encodeURIComponent(o(t).id)}`]),i(`mouseenter`,c,()=>{p(V,o(t).id,!0)}),i(`focus`,c,()=>{p(V,o(t).id,!0)}),i(`mouseleave`,c,()=>{p(V,null)}),i(`blur`,c,()=>{p(V,null)}),d(e,r)}),T(M),T(j);var ae=h(j,4),oe=e=>{var t=ge(),i=h(s(t),2),c=s(i),l=s(c,!0);T(c);var u=h(c,2),f=s(u,!0);T(u);var p=h(u,2),m=e=>{var t=he(),r=s(t);T(t),a(()=>n(r,`${o(H).meta.memberCount??``} members`)),d(e,t)};r(p,e=>{typeof o(H).meta?.memberCount==`number`&&e(m)}),T(i),T(t),a(()=>{n(l,o(H).label),n(f,o(H).kind)}),d(e,t)};r(ae,e=>{o(H)&&e(oe)}),T(t),ee(k,()=>o(B),e=>p(B,e)),d(e,t)},$$slots:{default:!0}});var A=h(k,2),M=h(s(A),4);D(M,21,()=>u.data.communities,e=>e.id,(e,t)=>{var r=ve(),i=s(r),c=s(i),l=s(c,!0);T(c);var u=h(c,2),f=s(u);T(u),T(i),T(r),a(e=>{b(i,`href`,e),n(l,o(t).rawLabel),n(f,`${o(t).size??``} symbols · ${o(t).topKind??``}`)},[()=>`/code/community/${encodeURIComponent(o(t).id)}`]),d(e,r)}),T(M),T(A),T(O),T(c);var N=h(c,2),P=s(N);T(N),a(e=>n(P,`Aggregate cross-community relations: ${e??``} · Top-600 shown ·
2
2
  Dominant-type preserved`),[()=>K(o(Ae))]),d(e,t)};r(Ke,e=>{u.data.empty?e(qe):e(Je,-1)}),T(q),a((e,t,r,i)=>{n(Pe,`${e??``} symbols`),n(Fe,`${t??``} relations`),n(Le,`${u.data.communities.length??``} communities`),n(Be,r),n(He,i),n(Ge,u.data.communities.length)},[()=>K(u.data.totalNodes),()=>K(u.data.totalRelations),()=>K(u.data.totalNodes),()=>K(u.data.totalRelations)]),d(t,q),y()}u([`click`]);export{F as component};
@@ -1 +1 @@
1
- import{$ as e,A as t,B as n,D as r,E as i,F as a,H as o,I as s,J as c,K as l,M as u,N as d,O as f,P as p,Q as m,X as h,Y as g,Z as _,_ as v,at as y,d as b,et as x,k as S,lt as C,ot as w,ut as T,v as E,w as D,x as ee}from"../chunks/DyGQ_VXC.js";import{r as te}from"../chunks/TX-23QW3.js";import"../chunks/CQCxd1p9.js";import{i as ne,r as re}from"../chunks/CEqOYim7.js";import{c as ie,s as ae}from"../chunks/CqF5Lomf.js";import{a as oe,i as se}from"../chunks/RptFUp2P.js";import"../chunks/BGmpyfzD.js";import{i as ce,n as le}from"../chunks/D8NsLz6i.js";var ue=t(`<li><button type="button"><span aria-hidden="true"></span> <span class="legend-label"> </span> <span class="legend-count svelte-1ewb8aw"> </span></button></li>`),de=t(`<span class="member-path svelte-1ewb8aw"> </span>`),fe=t(`<li><a class="member-row svelte-1ewb8aw"><span class="member-label svelte-1ewb8aw"> </span> <span class="member-meta svelte-1ewb8aw"><span class="member-kind svelte-1ewb8aw"> </span> <!> <span class="member-count svelte-1ewb8aw"> </span></span></a></li>`),pe=t(`<span class="selected-meta svelte-1ewb8aw"> </span>`),me=t(`<div class="panel-section svelte-1ewb8aw"><h2 class="panel-head svelte-1ewb8aw">Selected</h2> <div class="selected-card svelte-1ewb8aw"><span class="selected-label svelte-1ewb8aw"> </span> <span class="selected-kind svelte-1ewb8aw"> </span> <!></div></div>`),he=t(`<div class="panel-stack svelte-1ewb8aw"><div class="panel-section svelte-1ewb8aw"><h2 class="panel-head svelte-1ewb8aw">Member kinds</h2> <!></div> <div class="panel-section svelte-1ewb8aw"><h2 class="panel-head svelte-1ewb8aw">Top by callers</h2> <ol class="member-list svelte-1ewb8aw"></ol></div> <!></div>`),ge=t(`<section class="community-view svelte-1ewb8aw" aria-labelledby="community-title"><header class="page-head svelte-1ewb8aw"><!> <div class="title-row svelte-1ewb8aw"><div><span class="eyebrow svelte-1ewb8aw">NEXUS · Community</span> <h1 id="community-title" class="svelte-1ewb8aw"> </h1> <p class="subtitle svelte-1ewb8aw"><span> </span> <span class="sep svelte-1ewb8aw" aria-hidden="true">·</span> <span> </span> <span class="sep svelte-1ewb8aw" aria-hidden="true">·</span> <span>top kind: <span class="kind-badge svelte-1ewb8aw"> </span></span></p></div></div></header> <div class="workbench svelte-1ewb8aw"><div class="stage svelte-1ewb8aw"><div class="stage-scanlines svelte-1ewb8aw" aria-hidden="true"></div> <!> <footer class="legend-dock svelte-1ewb8aw" aria-label="Edge legend"><span class="legend-eyebrow svelte-1ewb8aw"> </span> <ul class="svelte-1ewb8aw"></ul></footer></div> <aside class="side-panel svelte-1ewb8aw" aria-label="Community controls"><!></aside></div></section>`);function O(t,d){w(d,!0);let O=x(()=>le(d.data.nodes.map(e=>({id:e.id,label:e.label,kind:e.kind,filePath:e.filePath,callerCount:e.callerCount,communityId:d.data.communityId})),d.data.edges.map(e=>({source:e.source,target:e.target,type:e.type})))),k=x(()=>s(O).nodes),A=x(()=>s(O).edges),_e=x(()=>s(O).clusters),j=[`calls`,`extends`,`implements`,`has_method`,`has_property`,`defines`,`imports`,`accesses`,`references`],M=[`class`,`interface`,`function`,`method`,`enum`,`type_alias`,`file`],N=e(_(new Set(j))),P=e(_(new Set(M))),F=e(null),I=e(null);function ve(e){let t=new Set(s(N));t.has(e)?t.delete(e):t.add(e),m(N,t,!0)}function ye(e){let t=new Set(s(P));t.has(e)?t.delete(e):t.add(e),m(P,t,!0)}function be(e){m(I,e,!0),e.kind!==`community`&&te(`/code/symbol/${encodeURIComponent(e.label)}`)}let xe=x(()=>[...d.data.nodes].sort((e,t)=>t.callerCount-e.callerCount).slice(0,20));function Se(e){return e.split(`/`).slice(-2).join(`/`)}let Ce=x(()=>{let e=new Map;for(let t of s(A))e.set(t.kind,(e.get(t.kind)??0)+1);return e}),we=x(()=>{let e=new Map;for(let t of s(k))e.set(t.kind,(e.get(t.kind)??0)+1);return e});var L=ge();ee(`1ewb8aw`,e=>{n(()=>{l.title=`${d.data.communityLabel??``} — Code — CLEO Studio`})});var R=c(L),z=c(R);{let e=x(()=>[{label:`Studio`,href:`/`},{label:`Code`,href:`/code`},{label:d.data.communityLabel}]);ne(z,{get items(){return s(e)}})}var B=h(z,2),V=c(B),H=h(c(V),2),Te=c(H,!0);T(H);var U=h(H,2),W=c(U),Ee=c(W);T(W);var G=h(W,4),De=c(G);T(G);var K=h(G,4),q=h(c(K)),Oe=c(q,!0);T(q),T(K),T(U),T(V),T(B),T(R);var J=h(R,2),Y=c(J),X=h(c(Y),2);ce(X,{get nodes(){return s(k)},get edges(){return s(A)},get clusters(){return s(_e)},get visibleEdgeKinds(){return s(N)},get visibleNodeKinds(){return s(P)},get highlightNodeId(){return s(F)},showClusterLabels:!1,onNodeClick:be,height:`calc(100vh - 220px)`,baseAlpha:.92});var Z=h(X,2),Q=c(Z),ke=c(Q);T(Q);var Ae=h(Q,2);D(Ae,20,()=>j,e=>e,(e,t)=>{let n=x(()=>se[t]),i=x(()=>s(N).has(t)),a=x(()=>s(Ce).get(t)??0);var l=ue(),u=c(l);let d;var m=c(u);let g,_;var y=h(m,2),S=c(y,!0);T(y);var C=h(y,2),w=c(C,!0);T(C),T(u),T(l),o((e,o)=>{d=E(u,1,`legend-item svelte-1ewb8aw`,null,d,{active:s(i),disabled:s(a)===0}),u.disabled=s(a)===0,b(u,`aria-pressed`,s(i)),b(u,`title`,e),g=E(m,1,`swatch svelte-1ewb8aw`,null,g,o),_=v(m,``,_,{background:s(n).color}),r(S,t),r(w,s(a))},[()=>oe(t),()=>({dashed:!!s(n).dash})]),p(`click`,u,()=>ve(t)),f(e,l)}),T(Ae),T(Z),T(Y);var $=h(Y,2);re(c($),{elevation:1,padding:`cozy`,children:e=>{var t=he(),n=c(t);ae(h(c(n),2),{children:e=>{var t=S();D(g(t),16,()=>M,e=>e,(e,t)=>{let n=x(()=>s(we).get(t)??0);{let i=e=>{C();var n=u();o(()=>r(n,t)),f(e,n)},a=x(()=>s(P).has(t)),c=x(()=>s(n)===0);ie(e,{get active(){return s(a)},get disabled(){return s(c)},get count(){return s(n)},onclick:()=>ye(t),children:i,$$slots:{default:!0}})}}),f(e,t)},$$slots:{default:!0}}),T(n);var l=h(n,2),d=h(c(l),2);D(d,21,()=>s(xe),e=>e.id,(e,t)=>{var n=fe(),l=c(n),u=c(l),d=c(u,!0);T(u);var p=h(u,2),g=c(p),_=c(g,!0);T(g);var v=h(g,2),y=e=>{var n=de(),i=c(n,!0);T(n),o(e=>r(i,e),[()=>Se(s(t).filePath)]),f(e,n)};i(v,e=>{s(t).filePath&&e(y)});var x=h(v,2),S=c(x);T(x),T(p),T(l),T(n),o(e=>{b(l,`href`,`/code/symbol/${e??``}`),r(d,s(t).label),r(_,s(t).kind),r(S,`${s(t).callerCount??``}×`)},[()=>encodeURIComponent(s(t).label)]),a(`mouseenter`,l,()=>{m(F,s(t).id,!0)}),a(`mouseleave`,l,()=>{m(F,null)}),a(`focus`,l,()=>{m(F,s(t).id,!0)}),a(`blur`,l,()=>{m(F,null)}),f(e,n)}),T(d),T(l);var p=h(l,2),_=e=>{var t=me(),n=h(c(t),2),a=c(n),l=c(a,!0);T(a);var u=h(a,2),d=c(u,!0);T(u);var p=h(u,2),m=e=>{var t=pe(),n=c(t,!0);T(t),o(e=>r(n,e),[()=>Se(s(I).meta.filePath)]),f(e,t)};i(p,e=>{typeof s(I).meta?.filePath==`string`&&e(m)}),T(n),T(t),o(()=>{r(l,s(I).label),r(d,s(I).kind)}),f(e,t)};i(p,e=>{s(I)&&e(_)}),T(t),f(e,t)},$$slots:{default:!0}}),T($),T(J),T(L),o(()=>{r(Te,d.data.communityLabel),r(Ee,`${d.data.summary.memberCount??``} members`),r(De,`${d.data.summary.internalEdgeCount??``} internal edges`),r(Oe,d.data.summary.topKind),r(ke,`EDGES (${d.data.summary.internalEdgeCount??``})`)}),f(t,L),y()}d([`click`]);export{O as component};
1
+ import{$ as e,A as t,B as n,D as r,E as i,F as a,H as o,I as s,J as c,K as l,M as u,N as d,O as f,P as p,Q as m,X as h,Y as g,Z as _,_ as v,at as y,d as b,et as x,k as S,lt as C,ot as w,ut as T,v as E,w as D,x as ee}from"../chunks/DGftG5oL.js";import{r as te}from"../chunks/cWVw9W0E.js";import"../chunks/B8WnZMYa.js";import{i as ne,r as re}from"../chunks/DZrdToAH.js";import{c as ie,s as ae}from"../chunks/CTLGzgdN.js";import{a as oe,i as se}from"../chunks/Cge6qiwc.js";import"../chunks/DX_JOBSO.js";import{i as ce,n as le}from"../chunks/BOnrCZaR.js";var ue=t(`<li><button type="button"><span aria-hidden="true"></span> <span class="legend-label"> </span> <span class="legend-count svelte-1ewb8aw"> </span></button></li>`),de=t(`<span class="member-path svelte-1ewb8aw"> </span>`),fe=t(`<li><a class="member-row svelte-1ewb8aw"><span class="member-label svelte-1ewb8aw"> </span> <span class="member-meta svelte-1ewb8aw"><span class="member-kind svelte-1ewb8aw"> </span> <!> <span class="member-count svelte-1ewb8aw"> </span></span></a></li>`),pe=t(`<span class="selected-meta svelte-1ewb8aw"> </span>`),me=t(`<div class="panel-section svelte-1ewb8aw"><h2 class="panel-head svelte-1ewb8aw">Selected</h2> <div class="selected-card svelte-1ewb8aw"><span class="selected-label svelte-1ewb8aw"> </span> <span class="selected-kind svelte-1ewb8aw"> </span> <!></div></div>`),he=t(`<div class="panel-stack svelte-1ewb8aw"><div class="panel-section svelte-1ewb8aw"><h2 class="panel-head svelte-1ewb8aw">Member kinds</h2> <!></div> <div class="panel-section svelte-1ewb8aw"><h2 class="panel-head svelte-1ewb8aw">Top by callers</h2> <ol class="member-list svelte-1ewb8aw"></ol></div> <!></div>`),ge=t(`<section class="community-view svelte-1ewb8aw" aria-labelledby="community-title"><header class="page-head svelte-1ewb8aw"><!> <div class="title-row svelte-1ewb8aw"><div><span class="eyebrow svelte-1ewb8aw">NEXUS · Community</span> <h1 id="community-title" class="svelte-1ewb8aw"> </h1> <p class="subtitle svelte-1ewb8aw"><span> </span> <span class="sep svelte-1ewb8aw" aria-hidden="true">·</span> <span> </span> <span class="sep svelte-1ewb8aw" aria-hidden="true">·</span> <span>top kind: <span class="kind-badge svelte-1ewb8aw"> </span></span></p></div></div></header> <div class="workbench svelte-1ewb8aw"><div class="stage svelte-1ewb8aw"><div class="stage-scanlines svelte-1ewb8aw" aria-hidden="true"></div> <!> <footer class="legend-dock svelte-1ewb8aw" aria-label="Edge legend"><span class="legend-eyebrow svelte-1ewb8aw"> </span> <ul class="svelte-1ewb8aw"></ul></footer></div> <aside class="side-panel svelte-1ewb8aw" aria-label="Community controls"><!></aside></div></section>`);function O(t,d){w(d,!0);let O=x(()=>le(d.data.nodes.map(e=>({id:e.id,label:e.label,kind:e.kind,filePath:e.filePath,callerCount:e.callerCount,communityId:d.data.communityId})),d.data.edges.map(e=>({source:e.source,target:e.target,type:e.type})))),k=x(()=>s(O).nodes),A=x(()=>s(O).edges),_e=x(()=>s(O).clusters),j=[`calls`,`extends`,`implements`,`has_method`,`has_property`,`defines`,`imports`,`accesses`,`references`],M=[`class`,`interface`,`function`,`method`,`enum`,`type_alias`,`file`],N=e(_(new Set(j))),P=e(_(new Set(M))),F=e(null),I=e(null);function ve(e){let t=new Set(s(N));t.has(e)?t.delete(e):t.add(e),m(N,t,!0)}function ye(e){let t=new Set(s(P));t.has(e)?t.delete(e):t.add(e),m(P,t,!0)}function be(e){m(I,e,!0),e.kind!==`community`&&te(`/code/symbol/${encodeURIComponent(e.label)}`)}let xe=x(()=>[...d.data.nodes].sort((e,t)=>t.callerCount-e.callerCount).slice(0,20));function Se(e){return e.split(`/`).slice(-2).join(`/`)}let Ce=x(()=>{let e=new Map;for(let t of s(A))e.set(t.kind,(e.get(t.kind)??0)+1);return e}),we=x(()=>{let e=new Map;for(let t of s(k))e.set(t.kind,(e.get(t.kind)??0)+1);return e});var L=ge();ee(`1ewb8aw`,e=>{n(()=>{l.title=`${d.data.communityLabel??``} — Code — CLEO Studio`})});var R=c(L),z=c(R);{let e=x(()=>[{label:`Studio`,href:`/`},{label:`Code`,href:`/code`},{label:d.data.communityLabel}]);ne(z,{get items(){return s(e)}})}var B=h(z,2),V=c(B),H=h(c(V),2),Te=c(H,!0);T(H);var U=h(H,2),W=c(U),Ee=c(W);T(W);var G=h(W,4),De=c(G);T(G);var K=h(G,4),q=h(c(K)),Oe=c(q,!0);T(q),T(K),T(U),T(V),T(B),T(R);var J=h(R,2),Y=c(J),X=h(c(Y),2);ce(X,{get nodes(){return s(k)},get edges(){return s(A)},get clusters(){return s(_e)},get visibleEdgeKinds(){return s(N)},get visibleNodeKinds(){return s(P)},get highlightNodeId(){return s(F)},showClusterLabels:!1,onNodeClick:be,height:`calc(100vh - 220px)`,baseAlpha:.92});var Z=h(X,2),Q=c(Z),ke=c(Q);T(Q);var Ae=h(Q,2);D(Ae,20,()=>j,e=>e,(e,t)=>{let n=x(()=>se[t]),i=x(()=>s(N).has(t)),a=x(()=>s(Ce).get(t)??0);var l=ue(),u=c(l);let d;var m=c(u);let g,_;var y=h(m,2),S=c(y,!0);T(y);var C=h(y,2),w=c(C,!0);T(C),T(u),T(l),o((e,o)=>{d=E(u,1,`legend-item svelte-1ewb8aw`,null,d,{active:s(i),disabled:s(a)===0}),u.disabled=s(a)===0,b(u,`aria-pressed`,s(i)),b(u,`title`,e),g=E(m,1,`swatch svelte-1ewb8aw`,null,g,o),_=v(m,``,_,{background:s(n).color}),r(S,t),r(w,s(a))},[()=>oe(t),()=>({dashed:!!s(n).dash})]),p(`click`,u,()=>ve(t)),f(e,l)}),T(Ae),T(Z),T(Y);var $=h(Y,2);re(c($),{elevation:1,padding:`cozy`,children:e=>{var t=he(),n=c(t);ae(h(c(n),2),{children:e=>{var t=S();D(g(t),16,()=>M,e=>e,(e,t)=>{let n=x(()=>s(we).get(t)??0);{let i=e=>{C();var n=u();o(()=>r(n,t)),f(e,n)},a=x(()=>s(P).has(t)),c=x(()=>s(n)===0);ie(e,{get active(){return s(a)},get disabled(){return s(c)},get count(){return s(n)},onclick:()=>ye(t),children:i,$$slots:{default:!0}})}}),f(e,t)},$$slots:{default:!0}}),T(n);var l=h(n,2),d=h(c(l),2);D(d,21,()=>s(xe),e=>e.id,(e,t)=>{var n=fe(),l=c(n),u=c(l),d=c(u,!0);T(u);var p=h(u,2),g=c(p),_=c(g,!0);T(g);var v=h(g,2),y=e=>{var n=de(),i=c(n,!0);T(n),o(e=>r(i,e),[()=>Se(s(t).filePath)]),f(e,n)};i(v,e=>{s(t).filePath&&e(y)});var x=h(v,2),S=c(x);T(x),T(p),T(l),T(n),o(e=>{b(l,`href`,`/code/symbol/${e??``}`),r(d,s(t).label),r(_,s(t).kind),r(S,`${s(t).callerCount??``}×`)},[()=>encodeURIComponent(s(t).label)]),a(`mouseenter`,l,()=>{m(F,s(t).id,!0)}),a(`mouseleave`,l,()=>{m(F,null)}),a(`focus`,l,()=>{m(F,s(t).id,!0)}),a(`blur`,l,()=>{m(F,null)}),f(e,n)}),T(d),T(l);var p=h(l,2),_=e=>{var t=me(),n=h(c(t),2),a=c(n),l=c(a,!0);T(a);var u=h(a,2),d=c(u,!0);T(u);var p=h(u,2),m=e=>{var t=pe(),n=c(t,!0);T(t),o(e=>r(n,e),[()=>Se(s(I).meta.filePath)]),f(e,t)};i(p,e=>{typeof s(I).meta?.filePath==`string`&&e(m)}),T(n),T(t),o(()=>{r(l,s(I).label),r(d,s(I).kind)}),f(e,t)};i(p,e=>{s(I)&&e(_)}),T(t),f(e,t)},$$slots:{default:!0}}),T($),T(J),T(L),o(()=>{r(Te,d.data.communityLabel),r(Ee,`${d.data.summary.memberCount??``} members`),r(De,`${d.data.summary.internalEdgeCount??``} internal edges`),r(Oe,d.data.summary.topKind),r(ke,`EDGES (${d.data.summary.internalEdgeCount??``})`)}),f(t,L),y()}d([`click`]);export{O as component};
@@ -1 +1 @@
1
- import{$ as e,A as t,D as n,E as r,H as i,I as a,J as o,K as s,N as c,O as l,P as u,Q as d,T as f,V as p,X as m,Y as h,at as g,et as _,ft as v,ot as y,ut as b,v as ee,w as x,x as S}from"../chunks/DyGQ_VXC.js";import{r as C}from"../chunks/TX-23QW3.js";import"../chunks/CQCxd1p9.js";import{i as w,r as T}from"../chunks/CEqOYim7.js";import{o as E}from"../chunks/CqF5Lomf.js";import"../chunks/BGmpyfzD.js";import{i as D,r as O}from"../chunks/D8NsLz6i.js";var k=t(`<span class="sep svelte-1c4j9m0" aria-hidden="true">·</span> <span class="flow-path svelte-1c4j9m0"> </span>`,1),A=t(`<li><button type="button"><span class="flow-label svelte-1c4j9m0"> </span> <span class="flow-sub svelte-1c4j9m0"><span> </span> <!></span></button></li>`),j=t(`<div class="group svelte-1c4j9m0"><h2 class="group-head svelte-1c4j9m0"><span class="kind-mark svelte-1c4j9m0" aria-hidden="true"></span> <span class="group-count svelte-1c4j9m0"> </span></h2> <ul class="svelte-1c4j9m0"></ul></div>`),M=t(`<div class="list-stack svelte-1c4j9m0"></div>`),N=t(`<div class="placeholder svelte-1c4j9m0">Select an entry-point to trace.</div>`),P=t(`<span class="group-count svelte-1c4j9m0"> </span>`),F=t('<p class="timeline-empty svelte-1c4j9m0">This flow has no explicit `step_in_process` ordering — the canvas above shows the BFS reach set instead.</p>'),I=t(`<li class="timeline-step svelte-1c4j9m0"><span class="step-idx svelte-1c4j9m0"> </span> <span class="step-arrow svelte-1c4j9m0" aria-hidden="true">→</span> <span class="step-body svelte-1c4j9m0"><span class="step-src svelte-1c4j9m0"> </span> <span class="step-sep svelte-1c4j9m0" aria-hidden="true">⟶</span> <span class="step-dst svelte-1c4j9m0"> </span> <span class="step-type svelte-1c4j9m0"> </span></span></li>`),L=t(`<ol class="timeline-list svelte-1c4j9m0"></ol>`),R=t(`<div class="workbench svelte-1c4j9m0"><aside class="flow-list svelte-1c4j9m0" aria-label="Entry-point list"><!></aside> <div class="flow-stage svelte-1c4j9m0"><div class="stage svelte-1c4j9m0" aria-label="Selected flow canvas"><div class="stage-scanlines svelte-1c4j9m0" aria-hidden="true"></div> <!></div> <div class="timeline svelte-1c4j9m0" aria-label="Step timeline"><h2 class="group-head svelte-1c4j9m0"><span class="kind-mark kind-mark-timeline svelte-1c4j9m0" aria-hidden="true"></span> Timeline <!></h2> <!></div></div></div>`),z=t(`<section class="flows-view svelte-1c4j9m0" aria-labelledby="flows-title"><header class="page-head svelte-1c4j9m0"><!> <div class="title-row svelte-1c4j9m0"><div><span class="eyebrow svelte-1c4j9m0">NEXUS · Flows</span> <h1 id="flows-title" class="svelte-1c4j9m0">Execution Flows</h1> <p class="subtitle svelte-1c4j9m0"> </p></div></div></header> <!></section>`);function B(t,c){y(c,!0);let B=e(null),V=_(()=>{let e=c.data.flows;if(e.length===0)return null;let t=a(B)??e[0].id;return e.find(e=>e.id===t)??e[0]}),H=_(()=>new Set(a(V)?.reachIds??[])),U=_(()=>a(V)?{nodes:c.data.nodes.filter(e=>a(H).has(e.id)).map(e=>({id:e.id,substrate:`nexus`,kind:e.kind||`symbol`,label:e.label,category:e.id===a(V).id?`entry`:`reached`,weight:e.id===a(V).id?1:.35,meta:{filePath:e.filePath}})),edges:c.data.edges.filter(e=>a(H).has(e.source)&&a(H).has(e.target)&&e.source!==e.target).map((e,t)=>({id:`flow-${t}-${e.source}-${e.target}`,source:e.source,target:e.target,kind:O(e.type),directional:!0}))}:{nodes:[],edges:[]}),W=_(()=>{if(!a(V))return[];let e=c.data.edges.filter(e=>a(H).has(e.source)&&a(H).has(e.target)&&typeof e.stepIndex==`number`).sort((e,t)=>(e.stepIndex??0)-(t.stepIndex??0)),t=e=>c.data.nodes.find(t=>t.id===e)?.label??e;return e.map(e=>({source:t(e.source),target:t(e.target),type:e.type,stepIndex:e.stepIndex??0}))}),G=_(()=>{let e=new Map;for(let t of c.data.flows){let n=t.kind||`other`,r=e.get(n)??[];r.push(t),e.set(n,r)}return[...e.entries()].sort((e,t)=>t[1].length-e[1].length)});function K(e){e.id!==a(V)?.id&&C(`/code/symbol/${encodeURIComponent(e.label)}`)}let q=new Set([`calls`,`defines`,`imports`,`extends`,`implements`,`references`,`has_method`]);var J=z();S(`1c4j9m0`,e=>{p(()=>{s.title=`Execution Flows — Code — CLEO Studio`})});var Y=o(J),X=o(Y);w(X,{items:[{label:`Studio`,href:`/`},{label:`Code`,href:`/code`},{label:`Flows`}]});var Z=m(X,2),Q=o(Z),$=m(o(Q),4),te=o($);b($),b(Q),b(Z),b(Y);var ne=m(Y,2),re=e=>{E(e,{title:`No flows yet`,subtitle:`Nexus hasn't captured any entry-points. Run cleo nexus analyze and ensure your project exposes entry-point symbols (functions with entry_point_of edges or high-out-degree call roots).`})},ie=e=>{var t=R(),s=o(t);T(o(s),{elevation:1,padding:`compact`,children:e=>{var t=M();x(t,21,()=>a(G),([e,t])=>e,(e,t)=>{var s=_(()=>v(a(t),2));let c=()=>a(s)[0],f=()=>a(s)[1];var p=j(),g=o(p),y=m(o(g)),S=m(y),C=o(S,!0);b(S),b(g);var w=m(g,2);x(w,21,f,e=>e.id,(e,t)=>{var s=A(),c=o(s);let f;var p=o(c),g=o(p,!0);b(p);var _=m(p,2),v=o(_),y=o(v);b(v);var x=m(v,2),S=e=>{var r=k(),s=m(h(r),2),c=o(s,!0);b(s),i(e=>n(c,e),[()=>a(t).filePath.split(`/`).slice(-2).join(`/`)]),l(e,r)};r(x,e=>{a(t).filePath&&e(S)}),b(_),b(c),b(s),i(()=>{f=ee(c,1,`flow-item svelte-1c4j9m0`,null,f,{active:a(B)===a(t).id}),n(g,a(t).label),n(y,`${a(t).reachIds.length-1} fanout`)}),u(`click`,c,()=>{d(B,a(t).id,!0)}),l(e,s)}),b(w),b(p),i(()=>{n(y,` ${c()??``} `),n(C,f().length)}),l(e,p)}),b(t),l(e,t)},$$slots:{default:!0}}),b(s);var c=m(s,2),p=o(c),g=m(o(p),2),y=e=>{D(e,{get nodes(){return a(U).nodes},get edges(){return a(U).edges},get visibleEdgeKinds(){return q},showClusterLabels:!1,onNodeClick:K,get highlightNodeId(){return a(V).id},height:`calc(100vh - 440px)`,baseAlpha:.92})},S=e=>{l(e,N())};r(g,e=>{a(V)?e(y):e(S,-1)}),b(p);var C=m(p,2),w=o(C),E=m(o(w),2),O=e=>{var t=P(),r=o(t,!0);b(t),i(()=>n(r,a(W).length)),l(e,t)};r(E,e=>{a(W).length>0&&e(O)}),b(w);var z=m(w,2),H=e=>{l(e,F())},J=e=>{var t=L();x(t,21,()=>a(W),f,(e,t)=>{var r=I(),s=o(r),c=o(s,!0);b(s);var u=m(s,4),d=o(u),f=o(d,!0);b(d);var p=m(d,4),h=o(p,!0);b(p);var g=m(p,2),_=o(g,!0);b(g),b(u),b(r),i(()=>{n(c,a(t).stepIndex),n(f,a(t).source),n(h,a(t).target),n(_,a(t).type)}),l(e,r)}),b(t),l(e,t)};r(z,e=>{a(W).length===0?e(H):e(J,-1)}),b(C),b(c),b(t),l(e,t)};r(ne,e=>{c.data.empty?e(re):e(ie,-1)}),b(J),i(()=>n(te,`${c.data.flows.length??``} entry-points · ${c.data.hasProcesses?`process-annotated`:`call-graph derived`}`)),l(t,J),g()}c([`click`]);export{B as component};
1
+ import{$ as e,A as t,D as n,E as r,H as i,I as a,J as o,K as s,N as c,O as l,P as u,Q as d,T as f,V as p,X as m,Y as h,at as g,et as _,ft as v,ot as y,ut as b,v as ee,w as x,x as S}from"../chunks/DGftG5oL.js";import{r as C}from"../chunks/cWVw9W0E.js";import"../chunks/B8WnZMYa.js";import{i as w,r as T}from"../chunks/DZrdToAH.js";import{o as E}from"../chunks/CTLGzgdN.js";import"../chunks/DX_JOBSO.js";import{i as D,r as O}from"../chunks/BOnrCZaR.js";var k=t(`<span class="sep svelte-1c4j9m0" aria-hidden="true">·</span> <span class="flow-path svelte-1c4j9m0"> </span>`,1),A=t(`<li><button type="button"><span class="flow-label svelte-1c4j9m0"> </span> <span class="flow-sub svelte-1c4j9m0"><span> </span> <!></span></button></li>`),j=t(`<div class="group svelte-1c4j9m0"><h2 class="group-head svelte-1c4j9m0"><span class="kind-mark svelte-1c4j9m0" aria-hidden="true"></span> <span class="group-count svelte-1c4j9m0"> </span></h2> <ul class="svelte-1c4j9m0"></ul></div>`),M=t(`<div class="list-stack svelte-1c4j9m0"></div>`),N=t(`<div class="placeholder svelte-1c4j9m0">Select an entry-point to trace.</div>`),P=t(`<span class="group-count svelte-1c4j9m0"> </span>`),F=t('<p class="timeline-empty svelte-1c4j9m0">This flow has no explicit `step_in_process` ordering — the canvas above shows the BFS reach set instead.</p>'),I=t(`<li class="timeline-step svelte-1c4j9m0"><span class="step-idx svelte-1c4j9m0"> </span> <span class="step-arrow svelte-1c4j9m0" aria-hidden="true">→</span> <span class="step-body svelte-1c4j9m0"><span class="step-src svelte-1c4j9m0"> </span> <span class="step-sep svelte-1c4j9m0" aria-hidden="true">⟶</span> <span class="step-dst svelte-1c4j9m0"> </span> <span class="step-type svelte-1c4j9m0"> </span></span></li>`),L=t(`<ol class="timeline-list svelte-1c4j9m0"></ol>`),R=t(`<div class="workbench svelte-1c4j9m0"><aside class="flow-list svelte-1c4j9m0" aria-label="Entry-point list"><!></aside> <div class="flow-stage svelte-1c4j9m0"><div class="stage svelte-1c4j9m0" aria-label="Selected flow canvas"><div class="stage-scanlines svelte-1c4j9m0" aria-hidden="true"></div> <!></div> <div class="timeline svelte-1c4j9m0" aria-label="Step timeline"><h2 class="group-head svelte-1c4j9m0"><span class="kind-mark kind-mark-timeline svelte-1c4j9m0" aria-hidden="true"></span> Timeline <!></h2> <!></div></div></div>`),z=t(`<section class="flows-view svelte-1c4j9m0" aria-labelledby="flows-title"><header class="page-head svelte-1c4j9m0"><!> <div class="title-row svelte-1c4j9m0"><div><span class="eyebrow svelte-1c4j9m0">NEXUS · Flows</span> <h1 id="flows-title" class="svelte-1c4j9m0">Execution Flows</h1> <p class="subtitle svelte-1c4j9m0"> </p></div></div></header> <!></section>`);function B(t,c){y(c,!0);let B=e(null),V=_(()=>{let e=c.data.flows;if(e.length===0)return null;let t=a(B)??e[0].id;return e.find(e=>e.id===t)??e[0]}),H=_(()=>new Set(a(V)?.reachIds??[])),U=_(()=>a(V)?{nodes:c.data.nodes.filter(e=>a(H).has(e.id)).map(e=>({id:e.id,substrate:`nexus`,kind:e.kind||`symbol`,label:e.label,category:e.id===a(V).id?`entry`:`reached`,weight:e.id===a(V).id?1:.35,meta:{filePath:e.filePath}})),edges:c.data.edges.filter(e=>a(H).has(e.source)&&a(H).has(e.target)&&e.source!==e.target).map((e,t)=>({id:`flow-${t}-${e.source}-${e.target}`,source:e.source,target:e.target,kind:O(e.type),directional:!0}))}:{nodes:[],edges:[]}),W=_(()=>{if(!a(V))return[];let e=c.data.edges.filter(e=>a(H).has(e.source)&&a(H).has(e.target)&&typeof e.stepIndex==`number`).sort((e,t)=>(e.stepIndex??0)-(t.stepIndex??0)),t=e=>c.data.nodes.find(t=>t.id===e)?.label??e;return e.map(e=>({source:t(e.source),target:t(e.target),type:e.type,stepIndex:e.stepIndex??0}))}),G=_(()=>{let e=new Map;for(let t of c.data.flows){let n=t.kind||`other`,r=e.get(n)??[];r.push(t),e.set(n,r)}return[...e.entries()].sort((e,t)=>t[1].length-e[1].length)});function K(e){e.id!==a(V)?.id&&C(`/code/symbol/${encodeURIComponent(e.label)}`)}let q=new Set([`calls`,`defines`,`imports`,`extends`,`implements`,`references`,`has_method`]);var J=z();S(`1c4j9m0`,e=>{p(()=>{s.title=`Execution Flows — Code — CLEO Studio`})});var Y=o(J),X=o(Y);w(X,{items:[{label:`Studio`,href:`/`},{label:`Code`,href:`/code`},{label:`Flows`}]});var Z=m(X,2),Q=o(Z),$=m(o(Q),4),te=o($);b($),b(Q),b(Z),b(Y);var ne=m(Y,2),re=e=>{E(e,{title:`No flows yet`,subtitle:`Nexus hasn't captured any entry-points. Run cleo nexus analyze and ensure your project exposes entry-point symbols (functions with entry_point_of edges or high-out-degree call roots).`})},ie=e=>{var t=R(),s=o(t);T(o(s),{elevation:1,padding:`compact`,children:e=>{var t=M();x(t,21,()=>a(G),([e,t])=>e,(e,t)=>{var s=_(()=>v(a(t),2));let c=()=>a(s)[0],f=()=>a(s)[1];var p=j(),g=o(p),y=m(o(g)),S=m(y),C=o(S,!0);b(S),b(g);var w=m(g,2);x(w,21,f,e=>e.id,(e,t)=>{var s=A(),c=o(s);let f;var p=o(c),g=o(p,!0);b(p);var _=m(p,2),v=o(_),y=o(v);b(v);var x=m(v,2),S=e=>{var r=k(),s=m(h(r),2),c=o(s,!0);b(s),i(e=>n(c,e),[()=>a(t).filePath.split(`/`).slice(-2).join(`/`)]),l(e,r)};r(x,e=>{a(t).filePath&&e(S)}),b(_),b(c),b(s),i(()=>{f=ee(c,1,`flow-item svelte-1c4j9m0`,null,f,{active:a(B)===a(t).id}),n(g,a(t).label),n(y,`${a(t).reachIds.length-1} fanout`)}),u(`click`,c,()=>{d(B,a(t).id,!0)}),l(e,s)}),b(w),b(p),i(()=>{n(y,` ${c()??``} `),n(C,f().length)}),l(e,p)}),b(t),l(e,t)},$$slots:{default:!0}}),b(s);var c=m(s,2),p=o(c),g=m(o(p),2),y=e=>{D(e,{get nodes(){return a(U).nodes},get edges(){return a(U).edges},get visibleEdgeKinds(){return q},showClusterLabels:!1,onNodeClick:K,get highlightNodeId(){return a(V).id},height:`calc(100vh - 440px)`,baseAlpha:.92})},S=e=>{l(e,N())};r(g,e=>{a(V)?e(y):e(S,-1)}),b(p);var C=m(p,2),w=o(C),E=m(o(w),2),O=e=>{var t=P(),r=o(t,!0);b(t),i(()=>n(r,a(W).length)),l(e,t)};r(E,e=>{a(W).length>0&&e(O)}),b(w);var z=m(w,2),H=e=>{l(e,F())},J=e=>{var t=L();x(t,21,()=>a(W),f,(e,t)=>{var r=I(),s=o(r),c=o(s,!0);b(s);var u=m(s,4),d=o(u),f=o(d,!0);b(d);var p=m(d,4),h=o(p,!0);b(p);var g=m(p,2),_=o(g,!0);b(g),b(u),b(r),i(()=>{n(c,a(t).stepIndex),n(f,a(t).source),n(h,a(t).target),n(_,a(t).type)}),l(e,r)}),b(t),l(e,t)};r(z,e=>{a(W).length===0?e(H):e(J,-1)}),b(C),b(c),b(t),l(e,t)};r(ne,e=>{c.data.empty?e(re):e(ie,-1)}),b(J),i(()=>n(te,`${c.data.flows.length??``} entry-points · ${c.data.hasProcesses?`process-annotated`:`call-graph derived`}`)),l(t,J),g()}c([`click`]);export{B as component};
@@ -1 +1 @@
1
- import{$ as e,A as t,B as n,D as r,E as i,H as a,I as o,J as s,K as c,N as l,O as u,P as d,Q as f,X as p,Y as m,Z as h,_ as g,at as _,d as v,et as y,lt as b,ot as x,ut as S,v as C,w,x as T}from"../chunks/DyGQ_VXC.js";import{r as E}from"../chunks/TX-23QW3.js";import"../chunks/CQCxd1p9.js";import{i as ee,r as te,t as ne}from"../chunks/CEqOYim7.js";import{n as re}from"../chunks/CqF5Lomf.js";import{a as ie,i as ae}from"../chunks/RptFUp2P.js";import"../chunks/BGmpyfzD.js";import{i as oe,r as se}from"../chunks/D8NsLz6i.js";var ce=t(`<span class="sep svelte-16icikf" aria-hidden="true">·</span> <span class="path svelte-16icikf"> </span>`,1),le=t(`<span class="kind-badge svelte-16icikf"> </span> <!>`,1),ue=t(`<div class="hop-rings svelte-16icikf" aria-hidden="true"><span class="ring ring-1 svelte-16icikf"></span> <span class="ring ring-2 svelte-16icikf"></span></div>`),de=t(`<li><button type="button"><span aria-hidden="true"></span> <span> </span> <span class="legend-count svelte-16icikf"> </span></button></li>`),fe=t(`<p class="panel-hint svelte-16icikf">Center = amber · hop-1 = blue · hop-2 = slate.</p>`),pe=t(`<p class="panel-hint svelte-16icikf">Substrate-native palette — matches macro + community views.</p>`),me=t(`<li><a class="chip chip-caller svelte-16icikf"><span class="chip-label svelte-16icikf"> </span> <span class="chip-kind svelte-16icikf"> </span></a></li>`),he=t(`<div class="panel-section svelte-16icikf"><h2 class="panel-head svelte-16icikf"><span class="dot dot-caller svelte-16icikf" aria-hidden="true"></span> </h2> <ul class="chip-list svelte-16icikf"></ul></div>`),ge=t(`<li><a class="chip chip-callee svelte-16icikf"><span class="chip-label svelte-16icikf"> </span> <span class="chip-kind svelte-16icikf"> </span></a></li>`),_e=t(`<div class="panel-section svelte-16icikf"><h2 class="panel-head svelte-16icikf"><span class="dot dot-callee svelte-16icikf" aria-hidden="true"></span> </h2> <ul class="chip-list svelte-16icikf"></ul></div>`),ve=t(`<div class="panel-section svelte-16icikf"><h2 class="panel-head svelte-16icikf">File</h2> <p class="file-path svelte-16icikf"> </p></div>`),ye=t(`<div class="panel-stack svelte-16icikf"><!> <!> <!> <!> <!> <!></div>`),be=t(`<section class="symbol-view svelte-16icikf" aria-labelledby="symbol-title"><header class="page-head svelte-16icikf"><!> <div class="title-row svelte-16icikf"><div><span class="eyebrow svelte-16icikf">NEXUS · Ego</span> <h1 id="symbol-title" class="sym-title svelte-16icikf"> </h1> <p class="subtitle svelte-16icikf"><!></p></div> <div class="stat-row svelte-16icikf"><div class="stat callers-stat svelte-16icikf"><span class="stat-num svelte-16icikf"> </span> <span class="stat-lbl svelte-16icikf">Callers</span></div> <div class="stat callees-stat svelte-16icikf"><span class="stat-num svelte-16icikf"> </span> <span class="stat-lbl svelte-16icikf">Callees</span></div> <div class="stat svelte-16icikf"><span class="stat-num svelte-16icikf"> </span> <span class="stat-lbl svelte-16icikf">Hop-2</span></div></div></div></header> <div class="workbench svelte-16icikf"><div><div class="stage-scanlines svelte-16icikf" aria-hidden="true"></div> <!> <!> <footer class="legend-dock svelte-16icikf" aria-label="Edge legend"><span class="legend-eyebrow svelte-16icikf">EDGES</span> <ul class="svelte-16icikf"></ul></footer></div> <aside class="side-panel svelte-16icikf" aria-label="Ego network details"><!></aside></div></section>`);function D(t,l){x(l,!0);let D=e(`hop`),xe={0:`var(--warning)`,1:`var(--info)`,2:`var(--text-faint)`},O=y(()=>{let e=l.data.nodes.map(e=>{let t=o(D)===`hop`?xe[e.hop]:void 0,n={hop:e.hop,filePath:e.filePath,callerCount:e.callerCount};return t&&(n.colorOverride=t),{id:e.id,substrate:`nexus`,kind:e.kind||`symbol`,label:e.label,category:e.communityId??null,weight:Math.min(1,Math.log10(e.callerCount+1)/3),meta:n}}),t=new Set(e.map(e=>e.id));return{nodes:e,edges:l.data.edges.filter(e=>t.has(e.source)&&t.has(e.target)&&e.source!==e.target).map((e,t)=>{let n=se(e.type);return{id:`ego-${t}-${e.source}-${e.target}-${n}`,source:e.source,target:e.target,kind:n,directional:!0}})}}),Se=y(()=>o(O).nodes),k=y(()=>o(O).edges),A=[`calls`,`extends`,`implements`,`defines`,`imports`,`has_method`,`has_property`,`accesses`,`references`],j=e(h(new Set(A)));function Ce(e){let t=new Set(o(j));t.has(e)?t.delete(e):t.add(e),f(j,t,!0)}let M=y(()=>l.data.nodes.filter(e=>e.hop===1?l.data.edges.some(t=>t.target===l.data.center?.id&&t.source===e.id):!1)),N=y(()=>l.data.nodes.filter(e=>e.hop===1?l.data.edges.some(t=>t.source===l.data.center?.id&&t.target===e.id):!1)),we=y(()=>l.data.nodes.filter(e=>e.hop===2).length);function Te(e){e.id!==l.data.center?.id&&E(`/code/symbol/${encodeURIComponent(e.label)}`)}let Ee=y(()=>{let e=new Map;for(let t of o(k))e.set(t.kind,(e.get(t.kind)??0)+1);return e});function De(e){return e.split(`/`).slice(-2).join(`/`)}let Oe=y(()=>[{label:`Studio`,href:`/`},{label:`Code`,href:`/code`},...l.data.center?.communityId&&l.data.communityLabel?[{label:l.data.communityLabel,href:`/code/community/${encodeURIComponent(l.data.center.communityId)}`}]:[],{label:l.data.symbolName}]);var P=be();T(`16icikf`,e=>{n(()=>{c.title=`${l.data.symbolName??``} — Code — CLEO Studio`})});var F=s(P),I=s(F);ee(I,{get items(){return o(Oe)}});var L=p(I,2),R=s(L),z=p(s(R),2),ke=s(z,!0);S(z);var B=p(z,2),Ae=s(B),je=e=>{var t=le(),n=m(t),o=s(n,!0);S(n);var c=p(n,2),d=e=>{var t=ce(),n=p(m(t),2),i=s(n,!0);S(n),a(()=>r(i,l.data.center.filePath)),u(e,t)};i(c,e=>{l.data.center.filePath&&e(d)}),a(()=>r(o,l.data.center.kind)),u(e,t)};i(Ae,e=>{l.data.center&&e(je)}),S(B),S(R);var V=p(R,2),H=s(V),U=s(H),Me=s(U,!0);S(U),b(2),S(H);var W=p(H,2),G=s(W),Ne=s(G,!0);S(G),b(2),S(W);var K=p(W,2),q=s(K),Pe=s(q,!0);S(q),b(2),S(K),S(V),S(L),S(F);var J=p(F,2),Y=s(J);let X;var Z=p(s(Y),2),Fe=e=>{u(e,ue())};i(Z,e=>{o(D)===`hop`&&e(Fe)});var Q=p(Z,2);oe(Q,{get nodes(){return o(Se)},get edges(){return o(k)},get visibleEdgeKinds(){return o(j)},onNodeClick:Te,showClusterLabels:!1,height:`calc(100vh - 220px)`,baseAlpha:.94});var Ie=p(Q,2),Le=p(s(Ie),2);w(Le,20,()=>A,e=>e,(e,t)=>{let n=y(()=>ae[t]),i=y(()=>o(j).has(t)),c=y(()=>o(Ee).get(t)??0);var l=de(),f=s(l);let m;var h=s(f);let _,b;var x=p(h,2),w=s(x,!0);S(x);var T=p(x,2),E=s(T,!0);S(T),S(f),S(l),a((e,a)=>{m=C(f,1,`legend-item svelte-16icikf`,null,m,{active:o(i),disabled:o(c)===0}),f.disabled=o(c)===0,v(f,`aria-pressed`,o(i)),v(f,`title`,e),_=C(h,1,`swatch svelte-16icikf`,null,_,a),b=g(h,``,b,{background:o(n).color}),r(w,t),r(E,o(c))},[()=>ie(t),()=>({dashed:!!o(n).dash})]),d(`click`,f,()=>Ce(t)),u(e,l)}),S(Le),S(Ie),S(Y);var $=p(Y,2);te(s($),{elevation:1,padding:`cozy`,children:e=>{var t=ye(),n=s(t);ne(n,{items:[{value:`hop`,label:`Hop coloring`},{value:`kind`,label:`Kind coloring`}],get value(){return o(D)},onchange:e=>{f(D,e===`kind`?`kind`:`hop`,!0)}});var c=p(n,2);re(c,{value:`hop`,get active(){return o(D)},children:e=>{u(e,fe())},$$slots:{default:!0}});var d=p(c,2);re(d,{value:`kind`,get active(){return o(D)},children:e=>{u(e,pe())},$$slots:{default:!0}});var m=p(d,2),h=e=>{var t=he(),n=s(t),i=p(s(n));S(n);var c=p(n,2);w(c,21,()=>o(M),e=>e.id,(e,t)=>{var n=me(),i=s(n),c=s(i),l=s(c,!0);S(c);var d=p(c,2),f=s(d,!0);S(d),S(i),S(n),a(e=>{v(i,`href`,e),r(l,o(t).label),r(f,o(t).kind)},[()=>`/code/symbol/${encodeURIComponent(o(t).label)}`]),u(e,n)}),S(c),S(t),a(()=>r(i,` Callers (${o(M).length??``})`)),u(e,t)};i(m,e=>{o(M).length>0&&e(h)});var g=p(m,2),_=e=>{var t=_e(),n=s(t),i=p(s(n));S(n);var c=p(n,2);w(c,21,()=>o(N),e=>e.id,(e,t)=>{var n=ge(),i=s(n),c=s(i),l=s(c,!0);S(c);var d=p(c,2),f=s(d,!0);S(d),S(i),S(n),a(e=>{v(i,`href`,e),r(l,o(t).label),r(f,o(t).kind)},[()=>`/code/symbol/${encodeURIComponent(o(t).label)}`]),u(e,n)}),S(c),S(t),a(()=>r(i,` Callees (${o(N).length??``})`)),u(e,t)};i(g,e=>{o(N).length>0&&e(_)});var y=p(g,2),b=e=>{var t=ve(),n=p(s(t),2),i=s(n,!0);S(n),S(t),a(e=>{v(n,`title`,l.data.center.filePath),r(i,e)},[()=>De(l.data.center.filePath)]),u(e,t)};i(y,e=>{l.data.center?.filePath&&e(b)}),S(t),u(e,t)},$$slots:{default:!0}}),S($),S(J),S(P),a(()=>{r(ke,l.data.symbolName),r(Me,o(M).length),r(Ne,o(N).length),r(Pe,o(we)),X=C(Y,1,`stage svelte-16icikf`,null,X,{"mode-hop":o(D)===`hop`})}),u(t,P),_()}l([`click`]);export{D as component};
1
+ import{$ as e,A as t,B as n,D as r,E as i,H as a,I as o,J as s,K as c,N as l,O as u,P as d,Q as f,X as p,Y as m,Z as h,_ as g,at as _,d as v,et as y,lt as b,ot as x,ut as S,v as C,w,x as T}from"../chunks/DGftG5oL.js";import{r as E}from"../chunks/cWVw9W0E.js";import"../chunks/B8WnZMYa.js";import{i as ee,r as te,t as ne}from"../chunks/DZrdToAH.js";import{n as re}from"../chunks/CTLGzgdN.js";import{a as ie,i as ae}from"../chunks/Cge6qiwc.js";import"../chunks/DX_JOBSO.js";import{i as oe,r as se}from"../chunks/BOnrCZaR.js";var ce=t(`<span class="sep svelte-16icikf" aria-hidden="true">·</span> <span class="path svelte-16icikf"> </span>`,1),le=t(`<span class="kind-badge svelte-16icikf"> </span> <!>`,1),ue=t(`<div class="hop-rings svelte-16icikf" aria-hidden="true"><span class="ring ring-1 svelte-16icikf"></span> <span class="ring ring-2 svelte-16icikf"></span></div>`),de=t(`<li><button type="button"><span aria-hidden="true"></span> <span> </span> <span class="legend-count svelte-16icikf"> </span></button></li>`),fe=t(`<p class="panel-hint svelte-16icikf">Center = amber · hop-1 = blue · hop-2 = slate.</p>`),pe=t(`<p class="panel-hint svelte-16icikf">Substrate-native palette — matches macro + community views.</p>`),me=t(`<li><a class="chip chip-caller svelte-16icikf"><span class="chip-label svelte-16icikf"> </span> <span class="chip-kind svelte-16icikf"> </span></a></li>`),he=t(`<div class="panel-section svelte-16icikf"><h2 class="panel-head svelte-16icikf"><span class="dot dot-caller svelte-16icikf" aria-hidden="true"></span> </h2> <ul class="chip-list svelte-16icikf"></ul></div>`),ge=t(`<li><a class="chip chip-callee svelte-16icikf"><span class="chip-label svelte-16icikf"> </span> <span class="chip-kind svelte-16icikf"> </span></a></li>`),_e=t(`<div class="panel-section svelte-16icikf"><h2 class="panel-head svelte-16icikf"><span class="dot dot-callee svelte-16icikf" aria-hidden="true"></span> </h2> <ul class="chip-list svelte-16icikf"></ul></div>`),ve=t(`<div class="panel-section svelte-16icikf"><h2 class="panel-head svelte-16icikf">File</h2> <p class="file-path svelte-16icikf"> </p></div>`),ye=t(`<div class="panel-stack svelte-16icikf"><!> <!> <!> <!> <!> <!></div>`),be=t(`<section class="symbol-view svelte-16icikf" aria-labelledby="symbol-title"><header class="page-head svelte-16icikf"><!> <div class="title-row svelte-16icikf"><div><span class="eyebrow svelte-16icikf">NEXUS · Ego</span> <h1 id="symbol-title" class="sym-title svelte-16icikf"> </h1> <p class="subtitle svelte-16icikf"><!></p></div> <div class="stat-row svelte-16icikf"><div class="stat callers-stat svelte-16icikf"><span class="stat-num svelte-16icikf"> </span> <span class="stat-lbl svelte-16icikf">Callers</span></div> <div class="stat callees-stat svelte-16icikf"><span class="stat-num svelte-16icikf"> </span> <span class="stat-lbl svelte-16icikf">Callees</span></div> <div class="stat svelte-16icikf"><span class="stat-num svelte-16icikf"> </span> <span class="stat-lbl svelte-16icikf">Hop-2</span></div></div></div></header> <div class="workbench svelte-16icikf"><div><div class="stage-scanlines svelte-16icikf" aria-hidden="true"></div> <!> <!> <footer class="legend-dock svelte-16icikf" aria-label="Edge legend"><span class="legend-eyebrow svelte-16icikf">EDGES</span> <ul class="svelte-16icikf"></ul></footer></div> <aside class="side-panel svelte-16icikf" aria-label="Ego network details"><!></aside></div></section>`);function D(t,l){x(l,!0);let D=e(`hop`),xe={0:`var(--warning)`,1:`var(--info)`,2:`var(--text-faint)`},O=y(()=>{let e=l.data.nodes.map(e=>{let t=o(D)===`hop`?xe[e.hop]:void 0,n={hop:e.hop,filePath:e.filePath,callerCount:e.callerCount};return t&&(n.colorOverride=t),{id:e.id,substrate:`nexus`,kind:e.kind||`symbol`,label:e.label,category:e.communityId??null,weight:Math.min(1,Math.log10(e.callerCount+1)/3),meta:n}}),t=new Set(e.map(e=>e.id));return{nodes:e,edges:l.data.edges.filter(e=>t.has(e.source)&&t.has(e.target)&&e.source!==e.target).map((e,t)=>{let n=se(e.type);return{id:`ego-${t}-${e.source}-${e.target}-${n}`,source:e.source,target:e.target,kind:n,directional:!0}})}}),Se=y(()=>o(O).nodes),k=y(()=>o(O).edges),A=[`calls`,`extends`,`implements`,`defines`,`imports`,`has_method`,`has_property`,`accesses`,`references`],j=e(h(new Set(A)));function Ce(e){let t=new Set(o(j));t.has(e)?t.delete(e):t.add(e),f(j,t,!0)}let M=y(()=>l.data.nodes.filter(e=>e.hop===1?l.data.edges.some(t=>t.target===l.data.center?.id&&t.source===e.id):!1)),N=y(()=>l.data.nodes.filter(e=>e.hop===1?l.data.edges.some(t=>t.source===l.data.center?.id&&t.target===e.id):!1)),we=y(()=>l.data.nodes.filter(e=>e.hop===2).length);function Te(e){e.id!==l.data.center?.id&&E(`/code/symbol/${encodeURIComponent(e.label)}`)}let Ee=y(()=>{let e=new Map;for(let t of o(k))e.set(t.kind,(e.get(t.kind)??0)+1);return e});function De(e){return e.split(`/`).slice(-2).join(`/`)}let Oe=y(()=>[{label:`Studio`,href:`/`},{label:`Code`,href:`/code`},...l.data.center?.communityId&&l.data.communityLabel?[{label:l.data.communityLabel,href:`/code/community/${encodeURIComponent(l.data.center.communityId)}`}]:[],{label:l.data.symbolName}]);var P=be();T(`16icikf`,e=>{n(()=>{c.title=`${l.data.symbolName??``} — Code — CLEO Studio`})});var F=s(P),I=s(F);ee(I,{get items(){return o(Oe)}});var L=p(I,2),R=s(L),z=p(s(R),2),ke=s(z,!0);S(z);var B=p(z,2),Ae=s(B),je=e=>{var t=le(),n=m(t),o=s(n,!0);S(n);var c=p(n,2),d=e=>{var t=ce(),n=p(m(t),2),i=s(n,!0);S(n),a(()=>r(i,l.data.center.filePath)),u(e,t)};i(c,e=>{l.data.center.filePath&&e(d)}),a(()=>r(o,l.data.center.kind)),u(e,t)};i(Ae,e=>{l.data.center&&e(je)}),S(B),S(R);var V=p(R,2),H=s(V),U=s(H),Me=s(U,!0);S(U),b(2),S(H);var W=p(H,2),G=s(W),Ne=s(G,!0);S(G),b(2),S(W);var K=p(W,2),q=s(K),Pe=s(q,!0);S(q),b(2),S(K),S(V),S(L),S(F);var J=p(F,2),Y=s(J);let X;var Z=p(s(Y),2),Fe=e=>{u(e,ue())};i(Z,e=>{o(D)===`hop`&&e(Fe)});var Q=p(Z,2);oe(Q,{get nodes(){return o(Se)},get edges(){return o(k)},get visibleEdgeKinds(){return o(j)},onNodeClick:Te,showClusterLabels:!1,height:`calc(100vh - 220px)`,baseAlpha:.94});var Ie=p(Q,2),Le=p(s(Ie),2);w(Le,20,()=>A,e=>e,(e,t)=>{let n=y(()=>ae[t]),i=y(()=>o(j).has(t)),c=y(()=>o(Ee).get(t)??0);var l=de(),f=s(l);let m;var h=s(f);let _,b;var x=p(h,2),w=s(x,!0);S(x);var T=p(x,2),E=s(T,!0);S(T),S(f),S(l),a((e,a)=>{m=C(f,1,`legend-item svelte-16icikf`,null,m,{active:o(i),disabled:o(c)===0}),f.disabled=o(c)===0,v(f,`aria-pressed`,o(i)),v(f,`title`,e),_=C(h,1,`swatch svelte-16icikf`,null,_,a),b=g(h,``,b,{background:o(n).color}),r(w,t),r(E,o(c))},[()=>ie(t),()=>({dashed:!!o(n).dash})]),d(`click`,f,()=>Ce(t)),u(e,l)}),S(Le),S(Ie),S(Y);var $=p(Y,2);te(s($),{elevation:1,padding:`cozy`,children:e=>{var t=ye(),n=s(t);ne(n,{items:[{value:`hop`,label:`Hop coloring`},{value:`kind`,label:`Kind coloring`}],get value(){return o(D)},onchange:e=>{f(D,e===`kind`?`kind`:`hop`,!0)}});var c=p(n,2);re(c,{value:`hop`,get active(){return o(D)},children:e=>{u(e,fe())},$$slots:{default:!0}});var d=p(c,2);re(d,{value:`kind`,get active(){return o(D)},children:e=>{u(e,pe())},$$slots:{default:!0}});var m=p(d,2),h=e=>{var t=he(),n=s(t),i=p(s(n));S(n);var c=p(n,2);w(c,21,()=>o(M),e=>e.id,(e,t)=>{var n=me(),i=s(n),c=s(i),l=s(c,!0);S(c);var d=p(c,2),f=s(d,!0);S(d),S(i),S(n),a(e=>{v(i,`href`,e),r(l,o(t).label),r(f,o(t).kind)},[()=>`/code/symbol/${encodeURIComponent(o(t).label)}`]),u(e,n)}),S(c),S(t),a(()=>r(i,` Callers (${o(M).length??``})`)),u(e,t)};i(m,e=>{o(M).length>0&&e(h)});var g=p(m,2),_=e=>{var t=_e(),n=s(t),i=p(s(n));S(n);var c=p(n,2);w(c,21,()=>o(N),e=>e.id,(e,t)=>{var n=ge(),i=s(n),c=s(i),l=s(c,!0);S(c);var d=p(c,2),f=s(d,!0);S(d),S(i),S(n),a(e=>{v(i,`href`,e),r(l,o(t).label),r(f,o(t).kind)},[()=>`/code/symbol/${encodeURIComponent(o(t).label)}`]),u(e,n)}),S(c),S(t),a(()=>r(i,` Callees (${o(N).length??``})`)),u(e,t)};i(g,e=>{o(N).length>0&&e(_)});var y=p(g,2),b=e=>{var t=ve(),n=p(s(t),2),i=s(n,!0);S(n),S(t),a(e=>{v(n,`title`,l.data.center.filePath),r(i,e)},[()=>De(l.data.center.filePath)]),u(e,t)};i(y,e=>{l.data.center?.filePath&&e(b)}),S(t),u(e,t)},$$slots:{default:!0}}),S($),S(J),S(P),a(()=>{r(ke,l.data.symbolName),r(Me,o(M).length),r(Ne,o(N).length),r(Pe,o(we)),X=C(Y,1,`stage svelte-16icikf`,null,X,{"mode-hop":o(D)===`hop`})}),u(t,P),_()}l([`click`]);export{D as component};
@@ -1,2 +1,2 @@
1
- import{$ as e,A as t,D as n,E as r,F as i,H as a,I as o,J as s,K as c,M as l,N as u,O as d,P as f,Q as p,T as m,V as h,X as g,Y as _,Z as v,at as y,et as b,lt as x,ot as S,r as C,ut as w,w as T,x as E}from"../chunks/DyGQ_VXC.js";import"../chunks/CQCxd1p9.js";import{a as D,r as O}from"../chunks/CEqOYim7.js";import{a as k,l as A,r as ee}from"../chunks/CqF5Lomf.js";var te=t(`<div class="form-error svelte-1vi3pl9" role="alert"> </div>`),ne=t(`<form class="add-form svelte-1vi3pl9"><!> <!> <!> <!> <div class="form-actions svelte-1vi3pl9"><!></div></form>`),j=t(`<li class="svelte-1vi3pl9"><span> </span> <button type="button" class="toast-close svelte-1vi3pl9">×</button></li>`),M=t(`<ul class="toasts svelte-1vi3pl9" aria-live="polite"></ul>`),N=t(`<p class="muted svelte-1vi3pl9">Loading credentials…</p>`),P=t(`<div class="load-error svelte-1vi3pl9" role="alert"> </div> <!>`,1),F=t(`<p class="muted svelte-1vi3pl9">No credentials in the pool yet. Click <strong>Add credential</strong> or run <code>cleo llm add</code> from the CLI.</p>`),I=t(`<h2 class="group-title svelte-1vi3pl9"> <span class="muted svelte-1vi3pl9"> </span></h2>`),re=t(`<span class="muted svelte-1vi3pl9">—</span>`),ie=t(`<tr><td class="svelte-1vi3pl9"> </td><td class="svelte-1vi3pl9"><!></td><td class="svelte-1vi3pl9"> </td><td class="svelte-1vi3pl9"> </td><td class="svelte-1vi3pl9"><!></td><td class="actions-col svelte-1vi3pl9"><!></td></tr>`),ae=t(`<table class="entries svelte-1vi3pl9"><thead><tr><th scope="col" class="svelte-1vi3pl9">Label</th><th scope="col" class="svelte-1vi3pl9">Source</th><th scope="col" class="svelte-1vi3pl9">Auth type</th><th scope="col" class="svelte-1vi3pl9">Expiry</th><th scope="col" class="svelte-1vi3pl9">Last status</th><th scope="col" class="actions-col svelte-1vi3pl9"><span class="visually-hidden svelte-1vi3pl9">Actions</span></th></tr></thead><tbody></tbody></table>`),oe=t(`<div class="groups svelte-1vi3pl9"></div>`),se=t(`<section class="keys-page svelte-1vi3pl9"><header class="page-header svelte-1vi3pl9"><div><h1 class="svelte-1vi3pl9">Credential pool</h1> <p class="muted svelte-1vi3pl9">Manage the unified LLM credential pool. Secrets are write-only — values are never returned
1
+ import{$ as e,A as t,D as n,E as r,F as i,H as a,I as o,J as s,K as c,M as l,N as u,O as d,P as f,Q as p,T as m,V as h,X as g,Y as _,Z as v,at as y,et as b,lt as x,ot as S,r as C,ut as w,w as T,x as E}from"../chunks/DGftG5oL.js";import"../chunks/B8WnZMYa.js";import{a as D,r as O}from"../chunks/DZrdToAH.js";import{a as k,l as A,r as ee}from"../chunks/CTLGzgdN.js";var te=t(`<div class="form-error svelte-1vi3pl9" role="alert"> </div>`),ne=t(`<form class="add-form svelte-1vi3pl9"><!> <!> <!> <!> <div class="form-actions svelte-1vi3pl9"><!></div></form>`),j=t(`<li class="svelte-1vi3pl9"><span> </span> <button type="button" class="toast-close svelte-1vi3pl9">×</button></li>`),M=t(`<ul class="toasts svelte-1vi3pl9" aria-live="polite"></ul>`),N=t(`<p class="muted svelte-1vi3pl9">Loading credentials…</p>`),P=t(`<div class="load-error svelte-1vi3pl9" role="alert"> </div> <!>`,1),F=t(`<p class="muted svelte-1vi3pl9">No credentials in the pool yet. Click <strong>Add credential</strong> or run <code>cleo llm add</code> from the CLI.</p>`),I=t(`<h2 class="group-title svelte-1vi3pl9"> <span class="muted svelte-1vi3pl9"> </span></h2>`),re=t(`<span class="muted svelte-1vi3pl9">—</span>`),ie=t(`<tr><td class="svelte-1vi3pl9"> </td><td class="svelte-1vi3pl9"><!></td><td class="svelte-1vi3pl9"> </td><td class="svelte-1vi3pl9"> </td><td class="svelte-1vi3pl9"><!></td><td class="actions-col svelte-1vi3pl9"><!></td></tr>`),ae=t(`<table class="entries svelte-1vi3pl9"><thead><tr><th scope="col" class="svelte-1vi3pl9">Label</th><th scope="col" class="svelte-1vi3pl9">Source</th><th scope="col" class="svelte-1vi3pl9">Auth type</th><th scope="col" class="svelte-1vi3pl9">Expiry</th><th scope="col" class="svelte-1vi3pl9">Last status</th><th scope="col" class="actions-col svelte-1vi3pl9"><span class="visually-hidden svelte-1vi3pl9">Actions</span></th></tr></thead><tbody></tbody></table>`),oe=t(`<div class="groups svelte-1vi3pl9"></div>`),se=t(`<section class="keys-page svelte-1vi3pl9"><header class="page-header svelte-1vi3pl9"><div><h1 class="svelte-1vi3pl9">Credential pool</h1> <p class="muted svelte-1vi3pl9">Manage the unified LLM credential pool. Secrets are write-only — values are never returned
2
2
  to the browser.</p></div> <!></header> <!> <!> <!></section>`);function L(t,u){S(u,!0);let L=e(v([])),R=e(!0),z=e(null),B=e(!1),V=e(`anthropic`),H=e(``),U=e(``),W=e(!1),G=e(null),K=e(null),q=e(v([])),ce=b(()=>{let e=new Map;for(let t of o(L)){let n=e.get(t.provider);n?n.push(t):e.set(t.provider,[t])}return Array.from(e.entries()).sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>({provider:e,entries:t.slice().sort((e,t)=>e.priority-t.priority)}))}),le=[{value:`anthropic`,label:`Anthropic`},{value:`openai`,label:`OpenAI`},{value:`gemini`,label:`Gemini`},{value:`moonshot`,label:`Moonshot`},{value:`openrouter`,label:`OpenRouter`},{value:`bedrock`,label:`AWS Bedrock`},{value:`deepseek`,label:`DeepSeek`},{value:`xai`,label:`xAI`},{value:`groq`,label:`Groq`},{value:`kimi-code`,label:`Kimi Code`},{value:`ollama`,label:`Ollama`}];async function J(){p(R,!0),p(z,null);try{let e=await fetch(`/api/credentials`),t=await e.json();!e.ok||!t.success?p(z,t.error?.message??`HTTP ${e.status}`,!0):t.data&&p(L,t.data.entries,!0)}catch(e){p(z,e instanceof Error?e.message:String(e),!0)}finally{p(R,!1)}}async function ue(e){if(e.preventDefault(),!o(W)){p(W,!0),p(G,null);try{let e=await fetch(`/api/credentials`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({provider:o(V),label:o(H),apiKey:o(U)})}),t=await e.json();if(!e.ok||!t.success){p(G,t.error?.message??`HTTP ${e.status}`,!0);return}p(q,[...o(q),`Added '${o(V)}/${o(H)}' (manual / api_key)`],!0),p(V,`anthropic`),p(H,``),p(U,``),p(B,!1),await J()}catch(e){p(G,e instanceof Error?e.message:String(e),!0)}finally{p(W,!1)}}}async function de(e){let t=`${e.provider}::${e.label}`;if(o(K)!==t&&confirm(`Remove credential '${e.provider}/${e.label}' (source: ${e.source})?\n\nThis will also suppress its source from future seed passes.`)){p(K,t);try{let t=encodeURIComponent(e.provider),n=encodeURIComponent(e.label),r=await fetch(`/api/credentials/${t}/${n}`,{method:`DELETE`}),i=await r.json();if(!r.ok||!i.success){p(q,[...o(q),`Failed to remove '${e.provider}/${e.label}': ${i.error?.message??`unknown error`}`],!0);return}let a=i.data;if(a){let e=[`Removed '${a.provider}/${a.label}'`,a.suppressed?`suppressed source`:null,a.cleaned.length>0?`cleaned ${a.cleaned.length} path(s)`:null].filter(Boolean);p(q,[...o(q),e.join(` · `)],!0);for(let e of a.hints)p(q,[...o(q),`hint: ${e}`],!0)}await J()}catch(e){p(q,[...o(q),`Network error: ${e instanceof Error?e.message:e}`],!0)}finally{p(K,null)}}}function fe(e){p(q,o(q).filter((t,n)=>n!==e),!0)}function pe(e){if(e===null)return`never`;let t=e-Date.now();if(t<0)return`expired`;let n=Math.round(t/6e4);if(n<60)return`${n}m`;let r=Math.round(n/60);return r<48?`${r}h`:`${Math.round(r/24)}d`}function me(e){return e===`ok`?`success`:e===`exhausted`?`warning`:e===`invalid`?`danger`:`neutral`}C(J);var Y=se();E(`1vi3pl9`,e=>{h(()=>{c.title=`Credentials — CLEO Studio`})});var X=s(Y);A(g(s(X),2),{variant:`primary`,onclick:()=>p(B,!o(B)),children:(e,t)=>{x();var r=l();a(()=>n(r,o(B)?`Cancel`:`Add credential`)),d(e,r)},$$slots:{default:!0}}),w(X);var Z=g(X,2),Q=e=>{O(e,{padding:`cozy`,children:(e,t)=>{var c=ne(),u=s(c);ee(u,{label:`Provider`,name:`provider`,get options(){return le},get value(){return o(V)},set value(e){p(V,e,!0)}});var f=g(u,2);k(f,{label:`Label`,name:`label`,placeholder:`e.g. work-pri or personal-1`,required:!0,get value(){return o(H)},set value(e){p(H,e,!0)}});var m=g(f,2);k(m,{label:`API key`,name:`apiKey`,type:`password`,placeholder:`paste the raw key — never displayed again`,required:!0,description:`Stored at 0600 in ~/.cleo/llm-credentials.json; the API will never echo it back.`,get value(){return o(U)},set value(e){p(U,e,!0)}});var h=g(m,2),_=e=>{var t=te(),r=s(t,!0);w(t),a(()=>n(r,o(G))),d(e,t)};r(h,e=>{o(G)&&e(_)});var v=g(h,2);A(s(v),{type:`submit`,get loading(){return o(W)},get disabled(){return o(W)},children:(e,t)=>{x(),d(e,l(`Save credential`))},$$slots:{default:!0}}),w(v),w(c),i(`submit`,c,ue),d(e,c)},$$slots:{default:!0}})};r(Z,e=>{o(B)&&e(Q)});var $=g(Z,2),he=e=>{var t=M();T(t,21,()=>o(q),m,(e,t,r)=>{var i=j(),c=s(i),l=s(c,!0);w(c);var u=g(c,2);w(i),a(()=>n(l,o(t))),f(`click`,u,()=>fe(r)),d(e,i)}),w(t),d(e,t)};r($,e=>{o(q).length>0&&e(he)});var ge=g($,2),_e=e=>{d(e,N())},ve=e=>{O(e,{padding:`cozy`,children:(e,t)=>{var r=P(),i=_(r),c=s(i);w(i),A(g(i,2),{variant:`secondary`,onclick:J,children:(e,t)=>{x(),d(e,l(`Retry`))},$$slots:{default:!0}}),a(()=>n(c,`Failed to load credentials: ${o(z)??``}`)),d(e,r)},$$slots:{default:!0}})},ye=e=>{O(e,{padding:`cozy`,children:(e,t)=>{d(e,F())},$$slots:{default:!0}})},be=e=>{var t=oe();T(t,21,()=>o(ce),e=>e.provider,(e,t)=>{O(e,{padding:`cozy`,header:e=>{var r=I(),i=s(r),c=g(i),l=s(c);w(c),w(r),a(()=>{n(i,`${o(t).provider??``} `),n(l,`· ${o(t).entries.length??``} ${o(t).entries.length===1?`entry`:`entries`}`)}),d(e,r)},children:(e,i)=>{var c=ae(),u=g(s(c));T(u,21,()=>o(t).entries,e=>e.label,(e,t)=>{var i=ie(),c=s(i),u=s(c,!0);w(c);var f=g(c);D(s(f),{tone:`info`,size:`sm`,children:(e,r)=>{x();var i=l();a(()=>n(i,o(t).source)),d(e,i)},$$slots:{default:!0}}),w(f);var p=g(f),m=s(p,!0);w(p);var h=g(p),_=s(h,!0);w(h);var v=g(h),y=s(v),S=e=>{{let r=b(()=>me(o(t).lastStatus));D(e,{get tone(){return o(r)},size:`sm`,children:(e,r)=>{x();var i=l();a(()=>n(i,o(t).lastStatus)),d(e,i)},$$slots:{default:!0}})}},C=e=>{d(e,re())};r(y,e=>{o(t).lastStatus?e(S):e(C,-1)}),w(v);var T=g(v),E=s(T);{let e=b(()=>o(K)===`${o(t).provider}::${o(t).label}`),n=b(()=>o(K)!==null);A(E,{variant:`danger`,size:`sm`,get loading(){return o(e)},get disabled(){return o(n)},onclick:()=>de(o(t)),children:(e,t)=>{x(),d(e,l(`Remove`))},$$slots:{default:!0}})}w(T),w(i),a(e=>{n(u,o(t).label),n(m,o(t).authType),n(_,e)},[()=>pe(o(t).expiresAt)]),d(e,i)}),w(u),w(c),d(e,c)},$$slots:{header:!0,default:!0}})}),w(t),d(e,t)};r(ge,e=>{o(R)?e(_e):o(z)?e(ve,1):o(L).length===0?e(ye,2):e(be,-1)}),w(Y),d(t,Y),y()}u([`click`]);export{L as component};