@shumai-one/shumai 0.3.2 → 0.3.4

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 (191) hide show
  1. package/bin/{chunk-qmtvy2j4.js → chunk-03pw611p.js} +2 -2
  2. package/bin/{chunk-1nh6xgek.js → chunk-05m8w09t.js} +1 -1
  3. package/bin/chunk-0ark0qrm.js +1 -0
  4. package/bin/{chunk-arpna31w.js → chunk-1apsnd7e.js} +1 -1
  5. package/bin/{chunk-g2dk56e7.js → chunk-1bfrnc6b.js} +1 -1
  6. package/bin/chunk-21h9kgp5.js +1 -0
  7. package/bin/{chunk-na2nympm.js → chunk-2967rnmn.js} +1 -1
  8. package/bin/chunk-2errtbmb.js +2 -0
  9. package/bin/{chunk-hrzm70wg.js → chunk-2jnyk045.js} +1 -1
  10. package/bin/{chunk-etces6ff.js → chunk-2mr99scd.js} +2 -2
  11. package/bin/chunk-2pxev94x.js +2 -0
  12. package/bin/chunk-2y9t0qxp.js +45 -0
  13. package/bin/{chunk-s7qpj715.js → chunk-2ydhnafa.js} +2 -2
  14. package/bin/chunk-38hp9gfh.js +2 -0
  15. package/bin/chunk-3t7v2de9.js +307 -0
  16. package/bin/{chunk-20y3wte3.js → chunk-3vbx3x11.js} +2 -2
  17. package/bin/{chunk-d3s00sn0.js → chunk-3xfhbvar.js} +2 -2
  18. package/bin/chunk-4153rke8.js +12 -0
  19. package/bin/{chunk-7jjc175m.js → chunk-4a185tez.js} +3 -3
  20. package/bin/{chunk-zxpef55w.js → chunk-4rexdetz.js} +3 -3
  21. package/bin/{chunk-1dawjfk8.js → chunk-58y9bagr.js} +2 -2
  22. package/bin/chunk-5dqn7egd.js +11 -0
  23. package/bin/{chunk-9p2d0mk1.js → chunk-5e48saab.js} +1 -1
  24. package/bin/{chunk-vnfmh5ke.js → chunk-5qwzveck.js} +2 -2
  25. package/bin/chunk-61hfhfce.js +2 -0
  26. package/bin/chunk-6ab9eftx.js +3 -0
  27. package/bin/chunk-6b0f3d07.js +2 -0
  28. package/bin/chunk-6gjn8trh.js +3 -0
  29. package/bin/{chunk-gn8snrnk.js → chunk-75x3w5hx.js} +1 -1
  30. package/bin/chunk-7e39zmss.js +1 -0
  31. package/bin/chunk-7h1m1e0b.js +1 -0
  32. package/bin/chunk-7kdz1eng.js +3 -0
  33. package/bin/chunk-7pcba64w.js +1 -0
  34. package/bin/{chunk-s05f0v9t.js → chunk-7xfx7741.js} +1 -1
  35. package/bin/chunk-898hrxwq.js +2 -0
  36. package/bin/{chunk-ph3e1bpp.js → chunk-89chaa11.js} +2 -2
  37. package/bin/chunk-8btfb5g6.js +2 -0
  38. package/bin/{chunk-gvn079hy.js → chunk-8pa1n500.js} +2 -2
  39. package/bin/{chunk-vy24ncn2.js → chunk-8qe7cpbr.js} +1 -1
  40. package/bin/{chunk-ws07a9kv.js → chunk-8tnq43k9.js} +1 -1
  41. package/bin/{chunk-1d22tysv.js → chunk-8wzepzp3.js} +2 -2
  42. package/bin/chunk-9deae0n7.js +3 -0
  43. package/bin/{chunk-3rcc5s99.js → chunk-ankkm2wz.js} +2 -2
  44. package/bin/chunk-ardp3pze.js +2 -0
  45. package/bin/chunk-axe5rq99.js +7 -0
  46. package/bin/chunk-bagxeg82.js +2 -0
  47. package/bin/{chunk-ss45w8ks.js → chunk-bhqrqt97.js} +2 -2
  48. package/bin/chunk-bn1sts8x.js +3 -0
  49. package/bin/{chunk-31mjcykb.js → chunk-bpb0szs5.js} +2 -2
  50. package/bin/{chunk-tsncwscz.js → chunk-c1j58ekb.js} +2 -2
  51. package/bin/chunk-c4nenmry.js +2 -0
  52. package/bin/chunk-c9f6n4sf.js +3 -0
  53. package/bin/chunk-cwh21vfb.js +2 -0
  54. package/bin/chunk-cwpmf8tx.js +2 -0
  55. package/bin/{chunk-ejfmxjw6.js → chunk-d2xrh0vv.js} +2 -2
  56. package/bin/chunk-d4sg0z3y.js +2 -0
  57. package/bin/chunk-d4sjezbk.js +8 -0
  58. package/bin/{chunk-vgb8bzcg.js → chunk-ddfx823h.js} +2 -2
  59. package/bin/chunk-dtjx1097.js +2 -0
  60. package/bin/chunk-e32bzfza.js +1 -0
  61. package/bin/chunk-e6rmqgzv.js +2 -0
  62. package/bin/chunk-ersxsrz8.js +62 -0
  63. package/bin/chunk-gg1wfpm8.js +3 -0
  64. package/bin/{chunk-qc6dmzn0.js → chunk-gg8dmkwd.js} +2 -2
  65. package/bin/chunk-gnx9g8px.js +2 -0
  66. package/bin/{chunk-xawwxdq9.js → chunk-h0k9zw29.js} +2 -2
  67. package/bin/chunk-htrzgs2a.css +1 -0
  68. package/bin/chunk-j2jdrmaa.js +2 -0
  69. package/bin/{chunk-v2kfr8fx.js → chunk-j5dejr3e.js} +2 -2
  70. package/bin/{chunk-wap08p4j.js → chunk-j5q3t199.js} +2 -2
  71. package/bin/chunk-jgxhv36z.js +3 -0
  72. package/bin/{chunk-dwswqq3g.js → chunk-jnx8p6kj.js} +1 -1
  73. package/bin/chunk-k41vt2gq.js +1 -0
  74. package/bin/chunk-k78m3rar.js +2 -0
  75. package/bin/chunk-kfbztymc.js +4 -0
  76. package/bin/chunk-kgr3ytpb.js +5 -0
  77. package/bin/chunk-khc3dydj.js +2 -0
  78. package/bin/chunk-krpr6g8a.js +1 -0
  79. package/bin/chunk-m8tnsds1.js +2 -0
  80. package/bin/chunk-mfmcsdd7.js +1 -0
  81. package/bin/chunk-msjv1ykh.js +2 -0
  82. package/bin/chunk-n73dbqps.js +1 -0
  83. package/bin/{chunk-5vqan9c4.js → chunk-n7cmya8k.js} +2 -2
  84. package/bin/{chunk-hfp4hpca.js → chunk-nabagpah.js} +2 -2
  85. package/bin/chunk-nn5qpr0q.js +1 -0
  86. package/bin/{chunk-ve7v8wtv.js → chunk-pew69nxg.js} +2 -2
  87. package/bin/{chunk-7eycsyk6.js → chunk-q2shr586.js} +1 -1
  88. package/bin/chunk-q7v8sj72.js +1 -0
  89. package/bin/chunk-q9tm2d21.js +8 -0
  90. package/bin/{chunk-mcxsk75h.js → chunk-qw5yjhab.js} +3 -3
  91. package/bin/{chunk-j0p1peav.js → chunk-r9thyg31.js} +2 -2
  92. package/bin/{chunk-h2wsm7h3.js → chunk-s584wxzj.js} +2 -2
  93. package/bin/{chunk-wr5byz6r.js → chunk-s5s1rk4n.js} +1 -1
  94. package/bin/{chunk-zs9b0f3z.js → chunk-scfbmsy7.js} +2 -2
  95. package/bin/{chunk-k20bhxed.js → chunk-sddrv3ep.js} +1 -1
  96. package/bin/{chunk-amsb41z5.js → chunk-sfmhbk59.js} +1 -1
  97. package/bin/chunk-tbdgkpgw.js +2 -0
  98. package/bin/chunk-twhj7h73.js +1 -0
  99. package/bin/{chunk-mahxw48e.js → chunk-v5zdafv4.js} +2 -2
  100. package/bin/{chunk-3t7mjvdv.js → chunk-vzx1r87y.js} +2 -2
  101. package/bin/{chunk-a76c5r3c.js → chunk-w3xzd86e.js} +2 -2
  102. package/bin/{chunk-nzy3pjjm.js → chunk-xkh6b42h.js} +2 -2
  103. package/bin/chunk-yn7mxpmb.js +7 -0
  104. package/bin/{chunk-yahb7wan.js → chunk-z544s59c.js} +2 -2
  105. package/bin/{chunk-f8cn9m28.js → chunk-zned6mj8.js} +1 -1
  106. package/bin/{chunk-08mxv0sm.js → chunk-zpq34g0w.js} +2 -2
  107. package/bin/shumai-app.html +1 -1
  108. package/bin/shumai-app.js +495 -372
  109. package/package.json +7 -7
  110. package/prisma/migrations/20260801065040_add_audit_log/migration.sql +33 -0
  111. package/prisma/migrations/20260805021613_add_asset_autofill_context/migration.sql +2 -0
  112. package/prisma/migrations/20260806082136_add_sharelink_watermark/migration.sql +69 -0
  113. package/prisma/migrations/20260806085643_add_watermark_file_status/migration.sql +7 -0
  114. package/prisma/migrations/20260807140837_clean_media_remove_raw_transcodes_and_original_download_url/migration.sql +86 -0
  115. package/prisma/migrations/20260808014542_add_sharelink_allow_download/migration.sql +2 -0
  116. package/prisma/schema.prisma +93 -0
  117. package/bin/chunk-08dr94gp.js +0 -2
  118. package/bin/chunk-0t4z17qr.js +0 -2
  119. package/bin/chunk-2ynx0den.js +0 -8
  120. package/bin/chunk-31a3k77j.js +0 -2
  121. package/bin/chunk-3jdef7n4.js +0 -6
  122. package/bin/chunk-4ahve1nf.js +0 -2
  123. package/bin/chunk-4hdnrwh1.js +0 -1
  124. package/bin/chunk-4hdx2tv0.js +0 -2
  125. package/bin/chunk-4htdb0xp.js +0 -1
  126. package/bin/chunk-4p7xpfey.js +0 -2
  127. package/bin/chunk-5f81c951.js +0 -1
  128. package/bin/chunk-5zntjzxw.js +0 -3
  129. package/bin/chunk-6a2eb3b5.js +0 -3
  130. package/bin/chunk-6t3gdd7e.js +0 -2
  131. package/bin/chunk-7d5kep8c.js +0 -2
  132. package/bin/chunk-7kzqkp5z.js +0 -1
  133. package/bin/chunk-7sh6409h.js +0 -1
  134. package/bin/chunk-7y8dng8t.js +0 -2
  135. package/bin/chunk-8e5zvy88.js +0 -307
  136. package/bin/chunk-8m6zg15c.js +0 -4
  137. package/bin/chunk-8qyke29r.js +0 -7
  138. package/bin/chunk-90et6bwm.js +0 -3
  139. package/bin/chunk-9c7fxjej.js +0 -2
  140. package/bin/chunk-a10tf0d8.js +0 -3
  141. package/bin/chunk-b10meywb.js +0 -2
  142. package/bin/chunk-b1e3tec3.js +0 -62
  143. package/bin/chunk-bdjhb77e.js +0 -2
  144. package/bin/chunk-beay9amy.js +0 -1
  145. package/bin/chunk-c3fvs0bv.js +0 -4
  146. package/bin/chunk-c5my1b3k.js +0 -7
  147. package/bin/chunk-dhekxndw.js +0 -3
  148. package/bin/chunk-dwaj1yn4.js +0 -2
  149. package/bin/chunk-er1rb6yj.js +0 -1
  150. package/bin/chunk-etqpzc9e.js +0 -3
  151. package/bin/chunk-fdpjw17x.js +0 -7
  152. package/bin/chunk-gqh4ttjh.js +0 -3
  153. package/bin/chunk-hz31j0hk.js +0 -4
  154. package/bin/chunk-jm6bxtzt.js +0 -41
  155. package/bin/chunk-jstc7pka.js +0 -2
  156. package/bin/chunk-k0a35mg9.js +0 -2
  157. package/bin/chunk-k9w6mk9d.js +0 -3
  158. package/bin/chunk-kgb16ggd.css +0 -1
  159. package/bin/chunk-m4py21f3.js +0 -2
  160. package/bin/chunk-mm1j72a8.js +0 -7
  161. package/bin/chunk-nr89225z.js +0 -2
  162. package/bin/chunk-nrf5r23d.js +0 -1
  163. package/bin/chunk-nt9tfjx6.js +0 -12
  164. package/bin/chunk-p396vw9h.js +0 -8
  165. package/bin/chunk-p9xfyqh1.js +0 -2
  166. package/bin/chunk-pj0fgb2x.js +0 -6
  167. package/bin/chunk-pp072ksj.js +0 -2
  168. package/bin/chunk-q5cdjzbv.js +0 -3
  169. package/bin/chunk-qn96vbke.js +0 -2
  170. package/bin/chunk-qvgc9e08.js +0 -3
  171. package/bin/chunk-rrxjvewm.js +0 -2
  172. package/bin/chunk-s5rfya1p.js +0 -1
  173. package/bin/chunk-scsy69bp.js +0 -1
  174. package/bin/chunk-sf6fwvrs.js +0 -8
  175. package/bin/chunk-t2txvzkp.js +0 -3
  176. package/bin/chunk-td54rdfj.js +0 -8
  177. package/bin/chunk-vb9m47z9.js +0 -1
  178. package/bin/chunk-vf066xwh.js +0 -3
  179. package/bin/chunk-w3a50kz8.js +0 -3
  180. package/bin/chunk-w9w5301f.js +0 -4
  181. package/bin/chunk-wny0qagx.js +0 -3
  182. package/bin/chunk-wqhk76de.js +0 -14
  183. package/bin/chunk-wrz9e73c.js +0 -2
  184. package/bin/chunk-x5dcgk62.js +0 -6
  185. package/bin/chunk-xwmsxg5x.js +0 -1
  186. package/bin/chunk-y2nw8rbx.js +0 -4
  187. package/bin/chunk-y9ttm07y.js +0 -3
  188. package/bin/chunk-z0ej44ak.js +0 -3
  189. package/bin/chunk-zemgtnk0.js +0 -1
  190. package/bin/chunk-zg0vm233.js +0 -2
  191. package/bin/chunk-zhd2mkbr.js +0 -1
@@ -1 +0,0 @@
1
- import{a as u,b as y,c as E,d as G,e as v,f as V}from"./chunk-s7qpj715.js";import{t as tp}from"./chunk-nzy3pjjm.js";import"./chunk-bdjhb77e.js";import{sf as M,tf as A,uf as S,vf as H,wf as C}from"./chunk-ejfmxjw6.js";import{pg as R}from"./chunk-h2wsm7h3.js";import{rg as op}from"./chunk-yahb7wan.js";import{Pg as np}from"./chunk-wap08p4j.js";import{Ah as ip,Lj as m,Mh as h,Ph as cp,Wh as J,_j as b,ak as K,bj as w,dk as B,ek as D,fk as L,gh as Q,ih as p,ik as n,jh as t,mh as s,nh as $,qh as pp,qj as vp}from"./chunk-b1e3tec3.js";import{Xk as k}from"./chunk-ws07a9kv.js";var Vp=k(Q(),1);var x=k(Q(),1);var U=k(Q(),1);var j=m("inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-[color,box-shadow] outline-none hover:bg-muted hover:text-muted-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-transparent",outline:"border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground"},size:{default:"h-9 min-w-9 px-2",sm:"h-8 min-w-8 px-1.5",lg:"h-10 min-w-10 px-2.5"}},defaultVariants:{variant:"default",size:"default"}});var a=U.createContext({size:"default",variant:"default",spacing:0});function l({className:i,variant:c,size:P,spacing:g=0,children:_,...z}){return p(b.Root,{"data-slot":"toggle-group","data-variant":c,"data-size":P,"data-spacing":g,style:{"--gap":g},className:K("group/toggle-group flex w-fit items-center gap-[--spacing(var(--gap))] rounded-md data-[spacing=default]:data-[variant=outline]:shadow-xs",i),...z,children:p(a.Provider,{value:{variant:c,size:P,spacing:g},children:_})})}function O({className:i,children:c,variant:P,size:g,..._}){let z=U.useContext(a);return p(b.Item,{"data-slot":"toggle-group-item","data-variant":z.variant||P,"data-size":z.size||g,"data-spacing":z.spacing,className:K(j({variant:z.variant||P,size:z.size||g}),"w-auto min-w-0 shrink-0 px-3 focus:z-10 focus-visible:z-10","data-[spacing=0]:rounded-none data-[spacing=0]:shadow-none data-[spacing=0]:first:rounded-l-md data-[spacing=0]:last:rounded-r-md data-[spacing=0]:data-[variant=outline]:border-l-0 data-[spacing=0]:data-[variant=outline]:first:border-l",i),..._,children:c})}function e({teamId:i}){let[c,P]=x.useState("team"),[g,_]=x.useState("1h"),{data:z,isLoading:I}=$({queryKey:["teams",i,"ai-usage",g,"team"],queryFn:async()=>{let o=await h.api.teams[":teamId"]["ai-usage"].$get({param:{teamId:i},query:{timeframe:g}});if(!o.ok)throw Error("Failed to fetch team AI usage");return await o.json()},enabled:!!i&&c==="team"}),{data:N,isLoading:q}=$({queryKey:["teams",i,"members"],queryFn:async()=>{let o=await h.api.teams[":teamId"].members.$get({param:{teamId:i},query:{}});if(!o.ok)throw Error("Failed to fetch team members");return await o.json()},enabled:!!i&&c==="members"}),W=s({queries:(N||[]).map((o)=>({queryKey:["teams",i,"ai-usage",g,o.id],queryFn:async()=>{let r=await h.api.teams[":teamId"]["ai-usage"].$get({param:{teamId:i},query:{timeframe:g,userId:o.id}});if(!r.ok)throw Error(`Failed to fetch AI usage for member ${o.id}`);return await r.json()},enabled:!!i&&c==="members"}))}),X=q||W.some((o)=>o.isLoading),F=(o)=>{if(!o)return"U";let r=o.split(" ");if(r.length>1)return`${r[0][0]}${r[r.length-1][0]}`.toUpperCase();return o.substring(0,2).toUpperCase()},T=(o)=>{if(!o)return"";switch(o.toLowerCase()){case"owner":return n.owner();case"editor":return n.editor();case"reviewer":return n.reviewer();default:return o}},f=(o)=>(o??0).toLocaleString(),Y=(o)=>`$${(o??0).toFixed(6)}`;return t(M,{className:"border-border/60 shadow-sm",children:[t(A,{className:"flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between pb-6",children:[t("div",{children:[p(S,{className:"text-xl font-semibold tracking-tight",children:n.ai_usage()}),p(H,{className:"text-sm text-muted-foreground mt-1",children:n.ai_usage_description()})]}),t("div",{className:"flex flex-wrap items-center gap-3",children:[t(l,{type:"single",value:c,onValueChange:(o)=>{if(o)P(o)},className:"border rounded-lg p-1 bg-muted/30",children:[p(O,{value:"team",className:"px-3 py-1.5 text-xs font-medium",children:n.team_view()}),p(O,{value:"members",className:"px-3 py-1.5 text-xs font-medium",children:n.members_view()})]}),t(l,{type:"single",value:g,onValueChange:(o)=>{if(o)_(o)},className:"border rounded-lg p-1 bg-muted/30",children:[p(O,{value:"1h",className:"px-2.5 py-1.5 text-xs font-medium",children:"1h"}),p(O,{value:"24h",className:"px-2.5 py-1.5 text-xs font-medium",children:"24h"}),p(O,{value:"7d",className:"px-2.5 py-1.5 text-xs font-medium",children:"7d"}),p(O,{value:"30d",className:"px-2.5 py-1.5 text-xs font-medium",children:"30d"})]})]})]}),p(C,{children:c==="team"?I?p("div",{className:"flex h-48 items-center justify-center",children:p(J,{className:"h-6 w-6 animate-spin text-muted-foreground"})}):p("div",{className:"rounded-md border",children:t(u,{children:[p(y,{children:t(G,{children:[p(v,{children:n.team()}),p(v,{className:"text-right",children:n.input_tokens()}),p(v,{className:"text-right",children:n.output_tokens()}),p(v,{className:"text-right",children:n.cache_read_tokens()}),p(v,{className:"text-right",children:n.total_tokens()}),p(v,{className:"text-right",children:n.cost()})]})}),p(E,{children:t(G,{children:[p(V,{className:"font-medium",children:n.team()}),p(V,{className:"text-right",children:f(z?.team?.inputTokens)}),p(V,{className:"text-right",children:f(z?.team?.outputTokens)}),p(V,{className:"text-right",children:f(z?.team?.cacheReadTokens)}),p(V,{className:"text-right font-medium",children:f(z?.team?.totalTokens)}),p(V,{className:"text-right font-medium",children:Y(z?.team?.cost)})]})})]})}):X?p("div",{className:"flex h-48 items-center justify-center",children:p(J,{className:"h-6 w-6 animate-spin text-muted-foreground"})}):p("div",{className:"rounded-md border",children:t(u,{children:[p(y,{children:t(G,{children:[p(v,{children:n.members()}),p(v,{children:n.role()}),p(v,{className:"text-right",children:n.input_tokens()}),p(v,{className:"text-right",children:n.output_tokens()}),p(v,{className:"text-right",children:n.cache_read_tokens()}),p(v,{className:"text-right",children:n.total_tokens()}),p(v,{className:"text-right",children:n.cost()})]})}),p(E,{children:(N||[]).map((o,r)=>{let Z=W[r]?.data?.member;return t(G,{children:[p(V,{children:t("div",{className:"flex items-center gap-3",children:[t(B,{className:"h-8 w-8 rounded-full",children:[o.image&&p(D,{src:o.image,alt:o.name,className:"object-cover"}),p(L,{className:"bg-primary/20 text-xs",children:F(o.name)})]}),t("div",{className:"flex flex-col",children:[p("span",{className:"text-sm font-medium leading-none",children:o.name}),p("span",{className:"text-xs text-muted-foreground mt-0.5",children:o.email})]})]})}),p(V,{className:"text-xs text-muted-foreground",children:T(o.role)}),p(V,{className:"text-right",children:f(Z?.inputTokens)}),p(V,{className:"text-right",children:f(Z?.outputTokens)}),p(V,{className:"text-right",children:f(Z?.cacheReadTokens)}),p(V,{className:"text-right font-medium",children:f(Z?.totalTokens)}),p(V,{className:"text-right font-medium",children:Y(Z?.cost)})]},o.id)})})]})})})]})}var d=k(Q(),1);function fp({teamId:i}){let[c,P]=d.useState(null),{ref:g,inView:_}=op(),{data:z,isLoading:I,isError:N,fetchNextPage:q,hasNextPage:W,isFetchingNextPage:X}=pp({queryKey:["teams",i,"agent-sessions"],queryFn:async({pageParam:f})=>{let Y=await h.api.teams[":teamId"]["agent-sessions"].$get({param:{teamId:i},query:{first:"20",after:f?String(f):void 0}});if(!Y.ok)throw Error("Failed to fetch agent sessions");return await Y.json()},initialPageParam:"",getNextPageParam:(f)=>f.pageInfo.cursor||void 0,enabled:!!i});d.useEffect(()=>{if(_&&W&&!X)q()},[_,W,X,q]);let F=z?.pages.flatMap((f)=>f.data).filter((f)=>f.id!=="pending")||[],T=(f)=>{switch(f){case"comment":return p(R,{variant:"outline",className:"bg-blue-500/10 text-blue-600 dark:text-blue-400 border-blue-500/20",children:n.session_type_comment()});case"chat":return p(R,{variant:"outline",className:"bg-violet-500/10 text-violet-600 dark:text-violet-400 border-violet-500/20",children:n.session_type_chat()});case"naming":return p(R,{variant:"outline",className:"bg-amber-500/10 text-amber-600 dark:text-amber-400 border-amber-500/20",children:n.session_type_naming()});default:return p(R,{variant:"outline",className:"bg-muted text-muted-foreground border-border",children:f})}};return t("div",{className:"space-y-6",children:[t(M,{className:"border border-border/50 shadow-xs",children:[p(A,{className:"pb-4",children:p("div",{className:"flex items-center justify-between",children:t("div",{children:[t(S,{className:"text-xl font-bold flex items-center gap-2",children:[p(w,{className:"w-5 h-5 text-violet-500"}),n.sessions()]}),p(H,{className:"mt-1 text-sm text-muted-foreground",children:n.sessions_description()})]})})}),p(C,{children:I?p("div",{className:"flex h-64 items-center justify-center",children:p(J,{className:"h-8 w-8 animate-spin text-muted-foreground"})}):N?p("div",{className:"flex h-64 items-center justify-center text-destructive",children:"Failed to load agent sessions."}):F.length===0?t("div",{className:"flex flex-col items-center justify-center py-12 text-center text-muted-foreground",children:[p(w,{className:"w-10 h-10 text-muted-foreground/40 mb-3"}),p("p",{className:"text-base font-medium",children:n.no_sessions_found()})]}):t("div",{className:"rounded-md border border-border/50 overflow-hidden",children:[t(u,{children:[p(y,{className:"bg-muted/40",children:t(G,{children:[p(v,{children:n.session_name()}),p(v,{children:n.creator()}),p(v,{children:n.session_type()}),p(v,{className:"text-right",children:n.create_time()})]})}),p(E,{children:F.map((f)=>t(G,{onClick:()=>P(f.id),className:"cursor-pointer hover:bg-muted/50 transition-colors",children:[p(V,{className:"font-medium",children:t("div",{className:"flex flex-col",children:[p("span",{className:"text-sm font-semibold text-foreground",children:f.name||n.untitled_session()}),p("span",{className:"text-xs font-mono text-muted-foreground/70",children:f.id})]})}),p(V,{children:t("div",{className:"flex items-center gap-2",children:[t(B,{className:"h-6 w-6",children:[p(D,{src:f.creator?.image||void 0}),p(L,{className:"text-[10px]",children:f.creator?.name?.[0]?.toUpperCase()||"?"})]}),p("span",{className:"text-sm text-foreground/90",children:f.creator?.name||"System / Agent"})]})}),p(V,{children:T(f.type)}),p(V,{className:"text-right text-xs text-muted-foreground",children:np(f.createdAt)})]},f.id))})]}),p("div",{ref:g,className:"py-4 flex justify-center",children:X&&p(J,{className:"h-6 w-6 animate-spin text-muted-foreground"})})]})})]}),p(tp,{sessionId:c,open:!!c,onOpenChange:(f)=>{if(!f)P(null)}})]})}function zp(){let{teamId:i}=gp.useParams(),[c,P]=Vp.useState("ai-usage"),{data:g,isLoading:_}=$({queryKey:["teams",i,"me"],queryFn:async()=>{let z=await h.api.teams[":teamId"].me.$get({param:{teamId:i}});if(!z.ok)throw Error("Failed to fetch me");return await z.json()},enabled:!!i});if(_)return p("div",{className:"flex h-screen items-center justify-center",children:p(J,{className:"h-8 w-8 animate-spin text-muted-foreground"})});if(g?.role?.toLowerCase()!=="owner")return t("div",{className:"flex h-full flex-col items-center justify-center p-8 text-center",children:[p(vp,{className:"h-12 w-12 text-destructive mb-4"}),p("h2",{className:"text-xl font-bold tracking-tight mb-2",children:n.access_denied()}),p("p",{className:"text-sm text-muted-foreground max-w-md",children:n.only_owner_dashboard()})]});return p("div",{className:"h-full bg-background font-sans selection:bg-primary/20 transition-colors duration-300",children:t("div",{className:"flex flex-col md:flex-row h-full",children:[p("div",{className:"w-full h-full md:w-72 bg-sidebar border-b md:border-b-0 md:border-r border-sidebar-border z-10 md:left-16 overflow-y-auto transition-colors duration-300",children:t("nav",{className:"p-4 space-y-1 mt-4",children:[p("div",{className:"mb-2 px-4 text-xs font-semibold text-sidebar-foreground/60 uppercase tracking-wider",children:n.dashboard()}),p("div",{className:"mt-4 mb-2 px-4 text-xs font-semibold text-sidebar-foreground/60 uppercase tracking-wider pt-4 border-t border-sidebar-border",children:n.ai()}),t("button",{onClick:()=>P("ai-usage"),className:K("w-full flex items-center gap-3 px-4 py-3 text-sm font-medium rounded-lg transition-all",c==="ai-usage"?"bg-sidebar-accent text-sidebar-accent-foreground ring-1 ring-sidebar-border":"text-sidebar-foreground/75 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground"),children:[p(cp,{className:"w-5 h-5"}),n.usage(),c==="ai-usage"&&p("div",{className:"ml-auto w-1.5 h-1.5 rounded-full bg-sidebar-primary"})]}),t("button",{onClick:()=>P("ai-sessions"),className:K("w-full flex items-center gap-3 px-4 py-3 text-sm font-medium rounded-lg transition-all",c==="ai-sessions"?"bg-sidebar-accent text-sidebar-accent-foreground ring-1 ring-sidebar-border":"text-sidebar-foreground/75 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground"),children:[p(w,{className:"w-5 h-5"}),n.sessions(),c==="ai-sessions"&&p("div",{className:"ml-auto w-1.5 h-1.5 rounded-full bg-sidebar-primary"})]})]})}),p("div",{className:"flex-1 overflow-y-auto p-4 md:p-8",children:t("div",{className:"max-w-6xl mx-auto space-y-8",children:[c==="ai-usage"&&p(e,{teamId:i}),c==="ai-sessions"&&p(fp,{teamId:i})]})})]})})}var gp=ip("/teams/$teamId/dashboard")({component:zp});export{gp as Route};