@shumai-one/shumai 0.3.1 → 0.3.3

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 (185) hide show
  1. package/bin/{chunk-dwswqq3g.js → chunk-0a0sdyta.js} +1 -1
  2. package/bin/{chunk-qmtvy2j4.js → chunk-0dcv6kpk.js} +2 -2
  3. package/bin/chunk-1cjgpspz.js +2 -0
  4. package/bin/chunk-1pgtq4rc.js +2 -0
  5. package/bin/chunk-1rsp4hc5.js +1 -0
  6. package/bin/{chunk-7eycsyk6.js → chunk-2475z7vk.js} +1 -1
  7. package/bin/chunk-25qj10ny.js +1 -0
  8. package/bin/{chunk-gn8snrnk.js → chunk-2fc5hk8r.js} +1 -1
  9. package/bin/{chunk-qc6dmzn0.js → chunk-2jvqhps9.js} +2 -2
  10. package/bin/{chunk-ve7v8wtv.js → chunk-3823qzr0.js} +2 -2
  11. package/bin/{chunk-zxpef55w.js → chunk-3g9g2c7h.js} +3 -3
  12. package/bin/chunk-3gcnj1eq.js +2 -0
  13. package/bin/chunk-41m51y08.js +2 -0
  14. package/bin/chunk-4g7h9qhr.js +8 -0
  15. package/bin/chunk-4v5ykazp.js +1 -0
  16. package/bin/{chunk-k20bhxed.js → chunk-525eypdk.js} +1 -1
  17. package/bin/{chunk-h2wsm7h3.js → chunk-57kgmgfs.js} +2 -2
  18. package/bin/{chunk-gvn079hy.js → chunk-5cm4vge8.js} +2 -2
  19. package/bin/{chunk-31mjcykb.js → chunk-5vwkfxy7.js} +2 -2
  20. package/bin/chunk-5x3vzer8.js +1 -0
  21. package/bin/chunk-67rr836p.js +3 -0
  22. package/bin/chunk-6jgq154r.js +2 -0
  23. package/bin/chunk-7436fyrg.js +2 -0
  24. package/bin/{chunk-s05f0v9t.js → chunk-749c09cw.js} +1 -1
  25. package/bin/{chunk-9p2d0mk1.js → chunk-7anqxx1z.js} +1 -1
  26. package/bin/{chunk-s7qpj715.js → chunk-7pjes19z.js} +2 -2
  27. package/bin/{chunk-f8cn9m28.js → chunk-7x7jtkh8.js} +1 -1
  28. package/bin/chunk-804ndet8.js +2 -0
  29. package/bin/chunk-8a75zqbz.js +2 -0
  30. package/bin/{chunk-tsncwscz.js → chunk-9a7a1p1j.js} +2 -2
  31. package/bin/chunk-9e99n265.js +12 -0
  32. package/bin/chunk-9g6vy76b.js +2 -0
  33. package/bin/{chunk-wap08p4j.js → chunk-9sdhdhv4.js} +2 -2
  34. package/bin/{chunk-g2dk56e7.js → chunk-9vgjhemh.js} +1 -1
  35. package/bin/{chunk-1dawjfk8.js → chunk-9zvteyz0.js} +2 -2
  36. package/bin/chunk-a8daqpfh.js +7 -0
  37. package/bin/{chunk-na2nympm.js → chunk-am1m29pv.js} +1 -1
  38. package/bin/{chunk-xawwxdq9.js → chunk-bd6x5ns9.js} +2 -2
  39. package/bin/{chunk-wr5byz6r.js → chunk-bn4ewsy8.js} +1 -1
  40. package/bin/{chunk-ss45w8ks.js → chunk-bw6wyw7k.js} +2 -2
  41. package/bin/{chunk-8yz1expv.js → chunk-c0c88nje.js} +48 -48
  42. package/bin/chunk-c7rj0f5r.js +3 -0
  43. package/bin/chunk-cdqvg03f.js +3 -0
  44. package/bin/{chunk-zs9b0f3z.js → chunk-d3kpqay2.js} +2 -2
  45. package/bin/chunk-d6v81kjj.js +1 -0
  46. package/bin/chunk-dfcrtdk2.js +1 -0
  47. package/bin/chunk-eczsk2xd.js +62 -0
  48. package/bin/{chunk-yahb7wan.js → chunk-ey7vty63.js} +2 -2
  49. package/bin/{chunk-nzy3pjjm.js → chunk-fwqpq2sy.js} +2 -2
  50. package/bin/{chunk-vnfmh5ke.js → chunk-g097058z.js} +2 -2
  51. package/bin/{chunk-a76c5r3c.js → chunk-g224r7mc.js} +2 -2
  52. package/bin/chunk-g5e93f59.js +2 -0
  53. package/bin/chunk-g5xkj9p3.js +2 -0
  54. package/bin/chunk-gaemak59.js +4 -0
  55. package/bin/{chunk-hrzm70wg.js → chunk-gh4w2bdg.js} +1 -1
  56. package/bin/chunk-gpeyctxd.js +2 -0
  57. package/bin/{chunk-nqh128dt.js → chunk-gpmaaca1.js} +2 -2
  58. package/bin/{chunk-1d22tysv.js → chunk-h4a3ms2b.js} +2 -2
  59. package/bin/chunk-h73653yp.js +1 -0
  60. package/bin/chunk-hp139z0j.js +2 -0
  61. package/bin/chunk-hz6s7by4.js +11 -0
  62. package/bin/chunk-j4y8c864.js +1 -0
  63. package/bin/chunk-jkh04dka.js +8 -0
  64. package/bin/chunk-m268vcdm.js +2 -0
  65. package/bin/{chunk-vy24ncn2.js → chunk-m6sssvg3.js} +1 -1
  66. package/bin/chunk-mggfc9ya.js +2 -0
  67. package/bin/chunk-mhwp74hh.js +3 -0
  68. package/bin/{chunk-vgb8bzcg.js → chunk-mm810jv7.js} +2 -2
  69. package/bin/chunk-p1bcbtmg.js +3 -0
  70. package/bin/chunk-p86w1eaw.js +45 -0
  71. package/bin/{chunk-1nh6xgek.js → chunk-p8enen2a.js} +1 -1
  72. package/bin/chunk-pbb1tdwt.js +1 -0
  73. package/bin/chunk-pbfkw90e.js +1 -0
  74. package/bin/chunk-pdajhyqm.js +2 -0
  75. package/bin/{chunk-ph3e1bpp.js → chunk-pqxh0cg7.js} +2 -2
  76. package/bin/chunk-q8me9zev.js +1 -0
  77. package/bin/chunk-qshm5vcn.js +2 -0
  78. package/bin/chunk-qx2mzv89.js +2 -0
  79. package/bin/{chunk-amsb41z5.js → chunk-r5jmnsqj.js} +1 -1
  80. package/bin/{chunk-arpna31w.js → chunk-rt0pvhdf.js} +1 -1
  81. package/bin/{chunk-kgb16ggd.css → chunk-s10v4b01.css} +1 -1
  82. package/bin/{chunk-vt4zpasm.js → chunk-s1b5kf34.js} +2 -2
  83. package/bin/{chunk-ws07a9kv.js → chunk-t15a1vp6.js} +1 -1
  84. package/bin/{chunk-3rcc5s99.js → chunk-tc7q988r.js} +2 -2
  85. package/bin/chunk-ts9f4zqh.js +5 -0
  86. package/bin/chunk-tzmzqmcg.js +7 -0
  87. package/bin/chunk-v0xbr5e6.js +2 -0
  88. package/bin/{chunk-08mxv0sm.js → chunk-v0yhkcj5.js} +2 -2
  89. package/bin/{chunk-3t7mjvdv.js → chunk-v75fanse.js} +2 -2
  90. package/bin/chunk-va6hxm7n.js +3 -0
  91. package/bin/chunk-vf3bg920.js +3 -0
  92. package/bin/{chunk-ejfmxjw6.js → chunk-vg6mkdj1.js} +2 -2
  93. package/bin/{chunk-j0p1peav.js → chunk-wkth5xwr.js} +2 -2
  94. package/bin/chunk-wpntb95k.js +2 -0
  95. package/bin/{chunk-mahxw48e.js → chunk-wtzkfwmx.js} +2 -2
  96. package/bin/{chunk-hfp4hpca.js → chunk-x0r8dcq0.js} +2 -2
  97. package/bin/{chunk-etces6ff.js → chunk-xcbb21j9.js} +2 -2
  98. package/bin/{chunk-mcxsk75h.js → chunk-xgb533n0.js} +3 -3
  99. package/bin/{chunk-7jjc175m.js → chunk-xn9cpax1.js} +3 -3
  100. package/bin/{chunk-5vqan9c4.js → chunk-xsw3pb5p.js} +2 -2
  101. package/bin/chunk-yedr4r8a.js +2 -0
  102. package/bin/chunk-yfjn4qn2.js +1 -0
  103. package/bin/chunk-yfkcv10v.js +2 -0
  104. package/bin/{chunk-20y3wte3.js → chunk-yj6tmjsc.js} +2 -2
  105. package/bin/chunk-z9560a6e.js +1 -0
  106. package/bin/chunk-zgsy3k3h.js +3 -0
  107. package/bin/shumai-app.html +1 -1
  108. package/bin/shumai-app.js +381 -330
  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/schema.prisma +25 -0
  113. package/bin/chunk-08dr94gp.js +0 -2
  114. package/bin/chunk-0ed7h2xm.js +0 -2
  115. package/bin/chunk-0t4z17qr.js +0 -2
  116. package/bin/chunk-2ynx0den.js +0 -8
  117. package/bin/chunk-31a3k77j.js +0 -2
  118. package/bin/chunk-3jdef7n4.js +0 -6
  119. package/bin/chunk-4ahve1nf.js +0 -2
  120. package/bin/chunk-4hdx2tv0.js +0 -2
  121. package/bin/chunk-4p7xpfey.js +0 -2
  122. package/bin/chunk-5e1xqaj4.js +0 -2
  123. package/bin/chunk-5f81c951.js +0 -1
  124. package/bin/chunk-5s7c0qww.js +0 -1
  125. package/bin/chunk-5zntjzxw.js +0 -3
  126. package/bin/chunk-6a2eb3b5.js +0 -3
  127. package/bin/chunk-6gy7c4d7.js +0 -1
  128. package/bin/chunk-7d4scsf6.js +0 -1
  129. package/bin/chunk-7d5kep8c.js +0 -2
  130. package/bin/chunk-7y8dng8t.js +0 -2
  131. package/bin/chunk-8m6zg15c.js +0 -4
  132. package/bin/chunk-8n60m9x3.js +0 -1
  133. package/bin/chunk-8qyke29r.js +0 -7
  134. package/bin/chunk-90et6bwm.js +0 -3
  135. package/bin/chunk-a10tf0d8.js +0 -3
  136. package/bin/chunk-a9t667xv.js +0 -1
  137. package/bin/chunk-b10meywb.js +0 -2
  138. package/bin/chunk-b1e3tec3.js +0 -62
  139. package/bin/chunk-bdjhb77e.js +0 -2
  140. package/bin/chunk-bmqw3j2d.js +0 -2
  141. package/bin/chunk-c3fvs0bv.js +0 -4
  142. package/bin/chunk-c5my1b3k.js +0 -7
  143. package/bin/chunk-dhekxndw.js +0 -3
  144. package/bin/chunk-dwaj1yn4.js +0 -2
  145. package/bin/chunk-er1rb6yj.js +0 -1
  146. package/bin/chunk-etqpzc9e.js +0 -3
  147. package/bin/chunk-fdpjw17x.js +0 -7
  148. package/bin/chunk-gqh4ttjh.js +0 -3
  149. package/bin/chunk-h270n69j.js +0 -7
  150. package/bin/chunk-hz31j0hk.js +0 -4
  151. package/bin/chunk-jm6bxtzt.js +0 -41
  152. package/bin/chunk-k9w6mk9d.js +0 -3
  153. package/bin/chunk-m4py21f3.js +0 -2
  154. package/bin/chunk-mqbxagfd.js +0 -2
  155. package/bin/chunk-nr89225z.js +0 -2
  156. package/bin/chunk-nrf5r23d.js +0 -1
  157. package/bin/chunk-nt9tfjx6.js +0 -12
  158. package/bin/chunk-p396vw9h.js +0 -8
  159. package/bin/chunk-p9xfyqh1.js +0 -2
  160. package/bin/chunk-pgae67hk.js +0 -3
  161. package/bin/chunk-ph11924k.js +0 -1
  162. package/bin/chunk-pj0fgb2x.js +0 -6
  163. package/bin/chunk-pp072ksj.js +0 -2
  164. package/bin/chunk-q5cdjzbv.js +0 -3
  165. package/bin/chunk-qgq96tbp.js +0 -2
  166. package/bin/chunk-qvgc9e08.js +0 -3
  167. package/bin/chunk-rfh4ppaa.js +0 -1
  168. package/bin/chunk-rrhq3t4s.js +0 -1
  169. package/bin/chunk-sf6fwvrs.js +0 -8
  170. package/bin/chunk-sr9bty78.js +0 -1
  171. package/bin/chunk-t2txvzkp.js +0 -3
  172. package/bin/chunk-td54rdfj.js +0 -8
  173. package/bin/chunk-vb9m47z9.js +0 -1
  174. package/bin/chunk-vf066xwh.js +0 -3
  175. package/bin/chunk-w3a50kz8.js +0 -3
  176. package/bin/chunk-w9w5301f.js +0 -4
  177. package/bin/chunk-wny0qagx.js +0 -3
  178. package/bin/chunk-wqhk76de.js +0 -14
  179. package/bin/chunk-wrz9e73c.js +0 -2
  180. package/bin/chunk-x5dcgk62.js +0 -6
  181. package/bin/chunk-y2nw8rbx.js +0 -4
  182. package/bin/chunk-y9ttm07y.js +0 -3
  183. package/bin/chunk-zg0vm233.js +0 -2
  184. package/bin/chunk-zhd2mkbr.js +0 -1
  185. package/bin/chunk-zx9cv3t8.js +0 -2
@@ -1,2 +0,0 @@
1
- import{Ta as BK,Va as gJ}from"./chunk-31mjcykb.js";import{Xa as ZJ}from"./chunk-hfp4hpca.js";import{ab as ZK,bb as _K,cb as $K,db as GK,eb as zK,fb as QK,gb as HK,hb as UK}from"./chunk-20y3wte3.js";import{rg as $J}from"./chunk-yahb7wan.js";import{Rg as QJ,Tg as HJ,Ug as UJ,Vg as w,Zg as KK,ch as WK,dh as XK}from"./chunk-nr89225z.js";import{Di as DJ,Ji as eJ,Kh as z,Mh as U,Qi as kJ,Vh as zJ,Wh as p,_h as nJ,ai as aJ,ak as O,ck as N,gh as NK,hh as iJ,ih as J,ik as W,jh as X,ji as rJ,jj as wJ,jk as TJ,kh as lJ,kk as RJ,lk as SJ,mk as fJ,nk as hJ,ok as YK,ph as v,pj as JK,qh as _J,qi as oJ,si as sJ,th as dJ,uh as h,ui as XJ,vh as GJ,vi as YJ,xi as tJ,xj as uJ}from"./chunk-b1e3tec3.js";import{Xk as vK}from"./chunk-ws07a9kv.js";var _=vK(NK(),1);function cK({teamId:B,projectId:Z,projectName:$,rootFolderId:P,dragState:b,onSelect:M,selectedFolderId:A,hideCollections:m,hideShares:C,ancestorFolders:D}){let q=GJ(),Q=lJ(),{canEdit:V}=WK(Z),j=dJ({from:"/projects/$projectId/recently-deleted",shouldThrow:!1}),[L,r]=_.useState(!0),[T,BJ]=_.useState(!0),[u,bJ]=_.useState(!0),{data:c,fetchNextPage:i,hasNextPage:g,isFetchingNextPage:R}=_J({queryKey:["shares",Z],queryFn:async({pageParam:K})=>{let Y=await U.api.projects[":projectId"].shares.$get({param:{projectId:Z},query:{first:"20",after:K}});if(!Y.ok)throw Error(W.failed_fetch_share_links());return await Y.json()},initialPageParam:"",getNextPageParam:(K)=>K.pageInfo?.cursor||void 0,enabled:!!Z}),{data:l,fetchNextPage:o,hasNextPage:d,isFetchingNextPage:n}=_J({queryKey:["collections",Z],queryFn:async({pageParam:K})=>{let Y=await U.api.projects[":projectId"].collections.$get({param:{projectId:Z},query:{first:"20",after:K}});if(!Y.ok)throw Error(W.failed_fetch_collections());return await Y.json()},initialPageParam:"",getNextPageParam:(K)=>K.pageInfo?.cursor||void 0,enabled:!!Z}),{ref:qJ,inView:s}=$J(),{ref:VJ,inView:t}=$J();_.useEffect(()=>{if(s&&d&&!n)o()},[s,d,n,o]),_.useEffect(()=>{if(t&&g&&!R)i()},[t,g,R,i]);let AJ=_.useMemo(()=>l?.pages.flatMap((K)=>K.data)||[],[l]),OJ=_.useMemo(()=>c?.pages.flatMap((K)=>K.data)||[],[c]),{mutate:PJ}=v({mutationFn:async()=>{let K=await U.api.projects[":projectId"].collections.$post({param:{projectId:Z},json:{name:W.untitled_collection(),filter:{sourceFolderId:P,searchFilter:{conditions:[],recursively:!0}}}});if(!K.ok)throw Error(W.failed_create_collection());return await K.json()},onSuccess:(K)=>{Q.invalidateQueries({queryKey:["collections",Z]}),z.success(W.collection_created()),q({to:"/projects/$projectId/collections/$collectionId",params:{projectId:Z,collectionId:K.id}})},onError:(K)=>{z.error(`Error: ${K.message}`)}}),{mutate:MJ}=v({mutationFn:async()=>{let K=await U.api.projects[":projectId"].shares.$post({param:{projectId:Z},json:{name:new Date().toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"})}});if(!K.ok)throw Error(W.failed_create_share_link());return await K.json()},onSuccess:(K)=>{Q.invalidateQueries({queryKey:["shares",Z]}),z.success(W.share_link_created()),q({to:"/projects/$projectId/shares/$shareId",params:{projectId:Z,shareId:K.id}})},onError:(K)=>{z.error(`Error: ${K.message}`)}}),e=h({from:"/projects/$projectId/collections/$collectionId",shouldThrow:!1}),LJ=h({from:"/projects/$projectId/shares/$shareId",shouldThrow:!1}),G=h({from:"/projects/$projectId/folders/$folderId",shouldThrow:!1}),[y,yJ]=_.useState(null),[F,EJ]=_.useState("collection"),[E,JJ]=_.useState(""),[qK,k]=_.useState(!1),[vJ,NJ]=_.useState(null),[S,CJ]=_.useState("collection"),[VK,f]=_.useState(!1),{mutate:IJ}=v({mutationFn:async({id:K,name:Y})=>{let H=await U.api.folders[":folderId"].$put({param:{folderId:K},json:{name:Y}});if(!H.ok)throw Error(W.failed_rename_folder());return await H.json()},onSuccess:()=>{Q.invalidateQueries({queryKey:["search",B]}),Q.invalidateQueries({queryKey:["folders"]}),z.success(W.folder_renamed()),k(!1)},onError:(K)=>{z.error(`Error: ${K.message}`)}}),{mutate:AK}=v({mutationFn:async(K)=>{if(!(await U.api.folders.$delete({json:{ids:[K]}})).ok)throw Error(W.failed_delete_folder());return K},onSuccess:(K)=>{if(Q.invalidateQueries({queryKey:["search",B]}),Q.invalidateQueries({queryKey:["folders"]}),z.success(W.folder_deleted()),f(!1),G?.folderId===K)q({to:"/projects/$projectId",params:{projectId:Z}})},onError:(K)=>{z.error(`Error: ${K.message}`)}}),[OK,a]=_.useState(!1),[KJ,xJ]=_.useState(!1),[FJ,pJ]=_.useState([]),PK=async(K)=>{a(!0),xJ(!0),pJ([]);try{let Y=await U.api.files["download-links"].$post({json:{ids:[K]}});if(!Y.ok)throw Error(W.failed_to_prepare_download_links());let H=await Y.json();pJ(H.files)}catch(Y){z.error(W.failed_to_prepare_download_links()),a(!1),console.error(Y)}finally{xJ(!1)}},MK=()=>{let K=[...FJ];if(a(!1),K.length===0)return;z.info(W.starting_download_files({count:K.length}),{duration:5000});let Y=(WJ)=>new Promise((I)=>setTimeout(I,WJ));(async()=>{for(let I=0;I<K.length;I+=5){let EK=K.slice(I,I+5);for(let cJ of EK){let x=document.createElement("a");x.href=cJ.url,x.download=cJ.name,x.target="_blank",document.body.appendChild(x),x.click(),x.remove()}await Y(1000)}})().catch((WJ)=>{console.error("Background downloads failed:",WJ),z.error(W.some_downloads_failed())})},{mutate:mJ}=v({mutationFn:async({id:K,name:Y})=>{let H=await U.api.collections[":collectionId"].$patch({param:{collectionId:K},json:{name:Y}});if(!H.ok)throw Error(W.failed_rename_collection());return await H.json()},onSuccess:()=>{Q.invalidateQueries({queryKey:["collections",Z]}),z.success(W.collection_renamed()),k(!1)},onError:(K)=>{z.error(`Error: ${K.message}`)}}),{mutate:LK}=v({mutationFn:async(K)=>{let Y=await U.api.collections[":collectionId"].$delete({param:{collectionId:K}});if(!Y.ok)throw Error(W.failed_delete_collection());return await Y.json()},onSuccess:(K,Y)=>{if(Q.invalidateQueries({queryKey:["collections",Z]}),z.success(W.collection_deleted()),f(!1),e?.collectionId===Y)q({to:"/projects/$projectId",params:{projectId:Z}})},onError:(K)=>{z.error(`Error: ${K.message}`)}}),{mutate:jJ}=v({mutationFn:async({id:K,name:Y})=>{let H=await U.api.shares[":shareId"].$put({param:{shareId:K},json:{name:Y}});if(!H.ok)throw Error(W.failed_rename_share_link());return await H.json()},onSuccess:()=>{Q.invalidateQueries({queryKey:["shares",Z]}),z.success(W.share_link_renamed()),k(!1)},onError:(K)=>{z.error(`Error: ${K.message}`)}}),{mutate:yK}=v({mutationFn:async(K)=>{if(!(await U.api.shares[":shareId"].$delete({param:{shareId:K}})).ok)throw Error(W.failed_delete_share_link());return K},onSuccess:(K)=>{if(Q.invalidateQueries({queryKey:["shares",Z]}),z.success(W.share_link_deleted()),f(!1),LJ?.shareId===K)q({to:"/projects/$projectId",params:{projectId:Z}})},onError:(K)=>{z.error(`Error: ${K.message}`)}});return X("div",{className:"flex flex-col h-full overflow-hidden p-3 gap-4 bg-background",children:[X("div",{className:O("flex flex-col overflow-hidden transition-all duration-300 ease-in-out border-b border-border pb-4",L?"flex-1 min-h-[50%] h-full":"flex-none h-[44px] max-h-[44px]"),children:[J("header",{className:"group flex items-center justify-between px-2 mb-1 flex-none",children:X("div",{className:"flex-1 flex items-center gap-1.5 cursor-pointer select-none text-muted-foreground hover:text-foreground transition-colors",onClick:()=>r(!L),children:[J("h3",{className:"text-xs font-semibold uppercase tracking-wider",children:W.folder_tree_assets()}),L?J(XJ,{className:"h-3.5 w-3.5 opacity-0 group-hover:opacity-100 transition-opacity duration-200"}):J(YJ,{className:"h-3.5 w-3.5 opacity-0 group-hover:opacity-100 transition-opacity duration-200"})]})}),J(ZJ,{className:O("flex-1 min-h-0 transition-all duration-300 ease-in-out [&>div>div]:block!",L?"opacity-100 visible pointer-events-auto":"opacity-0 invisible pointer-events-none h-0"),children:X("div",{className:"space-y-0.5 pr-3",children:[J(bK,{teamId:B,projectId:Z,folder:{id:P,name:$,type:"folder",sizeByte:0,fileCount:0,status:"processed",createdAt:"",updatedAt:""},level:0,isRoot:!0,dragState:b,onSelect:M,selectedFolderId:A,canEdit:V,onRenameTrigger:(K,Y)=>{yJ(K),EJ("folder"),JJ(Y),k(!0)},onDeleteTrigger:(K)=>{NJ(K),CJ("folder"),f(!0)},onDownloadTrigger:(K)=>{PK(K)},ancestorFolders:D},P),V&&X("div",{className:O("group flex cursor-pointer items-center gap-2 rounded-md px-2 py-1.5 text-sm transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",j&&"bg-sidebar-accent text-sidebar-accent-foreground font-medium"),onClick:()=>q({to:"/projects/$projectId/recently-deleted",params:{projectId:Z}}),children:[J("div",{className:"flex h-4 w-4 items-center justify-center",children:J(uJ,{className:"h-4 w-4 text-sidebar-primary"})}),J("span",{className:"flex-1 truncate text-sidebar-foreground",children:W.recently_deleted()})]})]})})]}),!m&&X("div",{className:O("flex flex-col overflow-hidden transition-all duration-300 ease-in-out border-b border-border pb-4",T?"flex-1 min-h-0 h-full":"flex-none h-[44px] max-h-[44px]"),children:[X("header",{className:"group flex items-center justify-between px-2 mb-1 flex-none",children:[X("div",{className:"flex-1 flex items-center gap-1.5 cursor-pointer select-none text-muted-foreground hover:text-foreground transition-colors",onClick:()=>BJ(!T),children:[J("h3",{className:"text-xs font-semibold uppercase tracking-wider",children:W.collections()}),T?J(XJ,{className:"h-3.5 w-3.5 opacity-0 group-hover:opacity-100 transition-opacity duration-200"}):J(YJ,{className:"h-3.5 w-3.5 opacity-0 group-hover:opacity-100 transition-opacity duration-200"})]}),V&&J("button",{onClick:()=>PJ(),className:"text-muted-foreground hover:text-foreground flex-none",children:J(wJ,{className:"h-3.5 w-3.5"})})]}),J(ZJ,{className:O("flex-1 min-h-0 transition-all duration-300 ease-in-out [&>div>div]:block!",T?"opacity-100 visible pointer-events-auto":"opacity-0 invisible pointer-events-none h-0"),children:X("div",{className:"space-y-0.5 pr-3",children:[X("div",{className:"group flex cursor-pointer items-center gap-2 rounded-md px-2 py-1.5 text-sm transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",onClick:()=>q({to:"/projects/$projectId/collections",params:{projectId:Z}}),children:[J("div",{className:"flex h-4 w-4 items-center justify-center",children:J(kJ,{className:"h-4 w-4 text-sidebar-primary"})}),J("span",{className:"flex-1 truncate text-sidebar-foreground",children:W.all_collections_count({count:l?.pages[0]?.pageInfo?.total||0})})]}),AJ.map((K)=>{let Y=e?.collectionId===K.id;return X("div",{className:O("group flex cursor-pointer items-center justify-between rounded-md px-2 py-1 text-sm transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground min-w-0",Y&&"bg-sidebar-accent text-sidebar-accent-foreground font-medium"),onClick:()=>q({to:"/projects/$projectId/collections/$collectionId",params:{projectId:Z,collectionId:K.id}}),children:[X("div",{className:"flex items-center gap-2 min-w-0 flex-1",children:[J("div",{className:"flex h-4 w-4 items-center justify-center shrink-0",children:J(rJ,{className:"h-4 w-4 text-sidebar-primary"})}),J("span",{className:"truncate text-sidebar-foreground flex-1",children:K.name})]}),V&&J("div",{className:"opacity-0 group-hover:opacity-100 transition-opacity shrink-0",onClick:(H)=>H.stopPropagation(),children:X(QJ,{modal:!1,children:[J(HJ,{asChild:!0,children:J(N,{variant:"ghost",size:"icon-sm",className:"h-6 w-6 shrink-0 hover:bg-muted hover:text-muted-foreground p-0",children:J(zJ,{className:"h-3.5 w-3.5"})})}),X(UJ,{align:"end",className:"w-32",children:[J(w,{onClick:()=>{yJ(K.id),EJ("collection"),JJ(K.name),k(!0)},children:W.rename()}),J(w,{className:"text-destructive focus:text-destructive focus:bg-destructive/10",onClick:()=>{NJ(K.id),CJ("collection"),f(!0)},children:W.delete()})]})]})})]},K.id)}),J("div",{ref:qJ,className:"h-1"}),n&&J("div",{className:"flex justify-center p-2",children:J(p,{className:"h-4 w-4 animate-spin text-muted-foreground"})})]})})]}),!C&&X("div",{className:O("flex flex-col overflow-hidden transition-all duration-300 ease-in-out",u?"flex-1 min-h-0 h-full":"flex-none h-[44px] max-h-[44px]"),children:[X("header",{className:"group flex items-center justify-between px-2 mb-1 flex-none",children:[X("div",{className:"flex-1 flex items-center gap-1.5 cursor-pointer select-none text-muted-foreground hover:text-foreground transition-colors",onClick:()=>bJ(!u),children:[J("h3",{className:"text-xs font-semibold uppercase tracking-wider",children:W.share_links()}),u?J(XJ,{className:"h-3.5 w-3.5 opacity-0 group-hover:opacity-100 transition-opacity duration-200"}):J(YJ,{className:"h-3.5 w-3.5 opacity-0 group-hover:opacity-100 transition-opacity duration-200"})]}),V&&J("div",{className:"flex items-center gap-1 flex-none",children:J("button",{onClick:()=>MJ(),className:"text-muted-foreground hover:text-foreground",children:J(wJ,{className:"h-3.5 w-3.5"})})})]}),J(ZJ,{className:O("flex-1 min-h-0 transition-all duration-300 ease-in-out [&>div>div]:block!",u?"opacity-100 visible pointer-events-auto":"opacity-0 invisible pointer-events-none h-0"),children:X("div",{className:"space-y-0.5 pr-3",children:[X("div",{className:"group flex cursor-pointer items-center gap-2 rounded-md px-2 py-1.5 text-sm transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",onClick:()=>q({to:"/projects/$projectId/shares",params:{projectId:Z}}),children:[J("div",{className:"flex h-4 w-4 items-center justify-center",children:J(kJ,{className:"h-4 w-4 text-sidebar-primary"})}),J("span",{className:"flex-1 truncate text-sidebar-foreground",children:W.all_share_links_count({count:c?.pages[0]?.pageInfo?.total||0})})]}),OJ.map((K)=>J(CK,{link:K,projectId:Z,dragState:b,canEdit:V,onRenameTrigger:(Y,H)=>{yJ(Y),EJ("share"),JJ(H),k(!0)},onDeleteTrigger:(Y)=>{NJ(Y),CJ("share"),f(!0)}},K.id)),J("div",{ref:VJ,className:"h-1"}),R&&J("div",{className:"flex justify-center p-2",children:J(p,{className:"h-4 w-4 animate-spin text-muted-foreground"})})]})})]}),J(TJ,{open:qK,onOpenChange:k,children:X(RJ,{onClick:(K)=>K.stopPropagation(),children:[J(SJ,{children:J(hJ,{children:F==="collection"?W.rename_collection():F==="share"?W.rename_share_link():W.rename_folder()})}),J("div",{className:"py-4",children:J(XK,{value:E,onChange:(K)=>JJ(K.target.value),placeholder:W.enter_new_name(),onKeyDown:(K)=>{if(K.key==="Enter"&&E.trim()){if(F==="collection")mJ({id:y,name:E});else if(F==="share")jJ({id:y,name:E});else if(F==="folder")IJ({id:y,name:E})}}})}),X(fJ,{children:[J(N,{variant:"ghost",onClick:()=>k(!1),children:W.cancel()}),J(N,{disabled:!E.trim(),onClick:()=>{if(F==="collection")mJ({id:y,name:E});else if(F==="share")jJ({id:y,name:E});else if(F==="folder")IJ({id:y,name:E})},children:W.rename()})]})]})}),J(ZK,{open:VK,onOpenChange:f,children:X(_K,{onClick:(K)=>K.stopPropagation(),children:[X($K,{children:[J(zK,{children:S==="collection"?W.delete_collection_confirm():S==="share"?W.delete_share_link_confirm():W.delete_folder_confirm()}),J(QK,{children:W.delete_confirm_description({type:S==="collection"?W.collection():S==="share"?W.share_link():W.folder().toLowerCase()})})]}),X(GK,{children:[J(UK,{children:W.cancel()}),J(HK,{className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",onClick:()=>{if(S==="collection")LK(vJ);else if(S==="share")yK(vJ);else if(S==="folder")AK(vJ)},children:W.delete()})]})]})}),J(TJ,{open:OK,onOpenChange:a,children:X(RJ,{className:"sm:max-w-md",children:[X(SJ,{children:[J(hJ,{children:KJ?W.preparing_download():W.confirm_download()}),J(YK,{children:KJ?W.resolving_files_wait():W.folder_files_download_description()})]}),KJ?X("div",{className:"space-y-4 py-6 flex flex-col items-center justify-center",children:[J(p,{className:"h-8 w-8 animate-spin text-primary"}),J("span",{className:"text-sm font-medium text-muted-foreground mt-2",children:W.preparing_download_links()})]}):X("div",{className:"space-y-4 py-2",children:[J("div",{className:"text-sm text-muted-foreground",children:W.download_includes_files({count:FJ.length})}),X("div",{className:"flex items-start gap-3 p-3 text-sm rounded-lg bg-amber-50 dark:bg-amber-950/30 text-amber-800 dark:text-amber-300 border border-amber-200 dark:border-amber-900/30",children:[J(aJ,{className:"h-5 w-5 shrink-0 mt-0.5"}),X("div",{children:[J("p",{className:"font-semibold",children:W.no_folder_structure()}),J("p",{className:"mt-0.5 text-xs text-amber-700/90 dark:text-amber-400/90",children:W.folder_structure_warning()})]})]})]}),J(fJ,{children:!KJ?X(iJ,{children:[J(N,{variant:"outline",onClick:()=>a(!1),children:W.cancel()}),X(N,{onClick:MK,className:"gap-2",disabled:FJ.length===0,children:[J(DJ,{className:"h-4 w-4"}),W.start_download()]})]}):J(N,{disabled:!0,variant:"outline",children:W.cancel()})})]})})]})}function CK({link:B,projectId:Z,dragState:$,canEdit:P,onRenameTrigger:b,onDeleteTrigger:M}){let A=GJ(),C=h({from:"/projects/$projectId/shares/$shareId",shouldThrow:!1})?.shareId===B.id,{ref:D,isDropTarget:q}=gJ({id:`share:${B.id}`,data:{type:"share-link",id:B.id}}),Q=!!$?.isActive;return X("div",{ref:D,className:O("group flex cursor-pointer items-center justify-between rounded-md px-2 py-1 text-sm transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground min-w-0",C&&"bg-sidebar-accent text-sidebar-accent-foreground font-medium",q&&Q&&"bg-sidebar-accent ring-2 ring-primary ring-inset"),onClick:()=>A({to:"/projects/$projectId/shares/$shareId",params:{projectId:Z,shareId:B.id}}),children:[X("div",{className:"flex items-center gap-2 min-w-0 flex-1",children:[J("div",{className:"flex h-4 w-4 items-center justify-center shrink-0",children:J(JK,{className:"h-4 w-4 text-sidebar-primary"})}),J("span",{className:"truncate text-sidebar-foreground flex-1",children:B.name})]}),P&&J("div",{className:"opacity-0 group-hover:opacity-100 transition-opacity shrink-0",onClick:(V)=>V.stopPropagation(),children:X(QJ,{modal:!1,children:[J(HJ,{asChild:!0,children:J(N,{variant:"ghost",size:"icon-sm",className:"h-6 w-6 shrink-0 hover:bg-muted hover:text-muted-foreground p-0",children:J(zJ,{className:"h-3.5 w-3.5"})})}),X(UJ,{align:"end",className:"w-32",children:[J(w,{onClick:()=>{b(B.id,B.name)},children:W.rename()}),J(w,{className:"text-destructive focus:text-destructive focus:bg-destructive/10",onClick:()=>{M(B.id)},children:W.delete()})]})]})})]})}function bK({teamId:B,projectId:Z,folder:$,level:P,isRoot:b,dragState:M,onSelect:A,selectedFolderId:m,canEdit:C,onRenameTrigger:D,onDeleteTrigger:q,onDownloadTrigger:Q,ancestorFolders:V}){let j=_.useMemo(()=>{return V?.some((G)=>G.id===$.id)??!1},[V,$.id]),[L,r]=_.useState(b||j);_.useEffect(()=>{if(j)r(!0)},[j]);let T=GJ(),BJ=h({from:"/projects/$projectId/folders/$folderId",select:(G)=>({folderId:G.folderId}),shouldThrow:!1}),u=h({from:"/projects/$projectId/",shouldThrow:!1}),bJ=b?!!u:BJ?.folderId===$.id,{data:c,fetchNextPage:i,hasNextPage:g,isFetchingNextPage:R,isLoading:l}=_J({queryKey:["folders",$.id,"children",{assetType:"folder"}],queryFn:async({pageParam:G})=>{let y=await U.api.folders[":folderId"].children.$get({param:{folderId:$.id},query:{assetType:"folder",after:G,first:"20"}});if(!y.ok)throw Error(W.failed_to_fetch_folder_children());return await y.json()},initialPageParam:"",getNextPageParam:(G)=>{return G.pageInfo?.cursor||void 0},enabled:L||!!b}),{ref:o,inView:d}=$J();_.useEffect(()=>{if(d&&g&&!R)i()},[d,g,R,i]);let n=c?.pages.flatMap((G)=>G.data??[])??[],qJ=(G)=>{G.stopPropagation(),r(!L)},s=()=>{if(A){A($);return}if(b)T({to:"/projects/$projectId",params:{projectId:Z}});else T({to:"/projects/$projectId/folders/$folderId",params:{projectId:Z,folderId:$.id}})},{ref:VJ,isDragging:t}=BK({id:`tree:${$.id}`,data:{type:"folder",item:$},disabled:!!b||!!A||!C}),{ref:AJ,isDropTarget:OJ}=gJ({id:`tree:${$.id}`,data:{type:"folder",item:$},disabled:M?.draggedIds.has($.id)||!!A||!C}),PJ=(G)=>{VJ(G),AJ(G)},MJ=_.useMemo(()=>{if(A)return!1;if(!M?.isActive)return!1;if(M.draggedIds.has($.id))return!1;return!0},[M,$.id,A]),e=OJ&&MJ,LJ=m===$.id;return X("div",{children:[X("div",{ref:PJ,className:O("group flex cursor-pointer items-center gap-1 rounded-md px-2 py-1.5 text-sm transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground min-w-0",(bJ||LJ)&&"bg-sidebar-accent text-sidebar-accent-foreground font-medium",t&&"opacity-50",e&&"bg-sidebar-accent ring-2 ring-primary ring-inset"),style:{...b?{}:{paddingLeft:`${P*12+8}px`}},onClick:s,children:[!b&&J("button",{onClick:qJ,className:"flex h-4 w-4 items-center justify-center shrink-0",children:L?J(oJ,{className:"h-3 w-3"}):J(sJ,{className:"h-3 w-3"})}),b?J(tJ,{className:"h-4 w-4 text-sidebar-primary shrink-0"}):J(eJ,{className:"h-4 w-4 text-sidebar-primary shrink-0"}),J("span",{className:"flex-1 truncate text-sidebar-foreground",children:$.name}),C&&!b&&J("div",{className:"opacity-0 group-hover:opacity-100 transition-opacity shrink-0",onClick:(G)=>G.stopPropagation(),children:X(QJ,{modal:!1,children:[J(HJ,{asChild:!0,children:J(N,{variant:"ghost",size:"icon-sm",className:"h-6 w-6 shrink-0 hover:bg-muted hover:text-muted-foreground p-0",children:J(zJ,{className:"h-3.5 w-3.5"})})}),X(UJ,{align:"end",className:"w-32",children:[X(w,{onClick:()=>{D($.id,$.name)},children:[J(nJ,{className:"mr-2 h-4 w-4"}),W.rename()]}),X(w,{onClick:()=>{Q($.id)},children:[J(DJ,{className:"mr-2 h-4 w-4"}),W.download()]}),J(KK,{}),X(w,{className:"text-destructive focus:text-destructive focus:bg-destructive/10",onClick:()=>{q($.id)},children:[J(uJ,{className:"mr-2 h-4 w-4"}),W.delete()]})]})]})})]}),L&&X("div",{children:[l&&J("div",{className:"flex items-center justify-center p-2",style:{paddingLeft:`${(P+1)*12+8}px`},children:J(p,{className:"h-4 w-4 animate-spin"})}),n.map((G)=>J(bK,{teamId:B,projectId:Z,folder:G,level:P+1,dragState:M,onSelect:A,selectedFolderId:m,canEdit:C,onRenameTrigger:D,onDeleteTrigger:q,onDownloadTrigger:Q,ancestorFolders:V},G.id)),g&&J("div",{ref:o,className:"flex items-center justify-center p-2",style:{paddingLeft:`${(P+1)*12+8}px`},children:R&&J(p,{className:"h-4 w-4 animate-spin"})})]})]})}
2
- export{cK as ga};
@@ -1,3 +0,0 @@
1
- import{Eh as O,Fh as R,Kh as $,Mh as D,gh as x,nh as v}from"./chunk-b1e3tec3.js";import{Xk as b}from"./chunk-ws07a9kv.js";var E=null,I=R((p)=>({projectState:null,setProjectState:(c)=>{if(E)clearTimeout(E),E=null;p({projectState:c})},clearProjectState:()=>{if(E)clearTimeout(E);E=setTimeout(()=>{p({projectState:null}),E=null},10)}}));var H=R((p)=>({isChatbotOpen:!1,setIsChatbotOpen:(c)=>p({isChatbotOpen:c}),isHistoryMode:!1,setIsHistoryMode:(c)=>p({isHistoryMode:c}),currentSessionId:null,setCurrentSessionId:(c)=>p({currentSessionId:c}),chatAssets:[],addAssets:(c)=>p((j)=>{let f=new Set(j.chatAssets.map((T)=>T.id)),F=c.filter((T)=>!f.has(T.id));return{chatAssets:[...j.chatAssets,...F]}}),removeAsset:(c)=>p((j)=>({chatAssets:j.chatAssets.filter((f)=>f.id!==c)})),clearAssets:()=>p({chatAssets:[]}),messages:[],setMessages:(c)=>p({messages:c}),historySessions:[],setHistorySessions:(c)=>p({historySessions:c}),isStreaming:!1,setIsStreaming:(c)=>p({isStreaming:c}),selectedAgentId:null,setSelectedAgentId:(c)=>p({selectedAgentId:c}),scrollTop:0,isAtBottom:!0,setScrollState:(c,j)=>p({scrollTop:c,isAtBottom:j}),fetchHistorySessions:async(c)=>{try{let j=await D.api.teams[":teamId"].chat.sessions.$get({param:{teamId:c},query:{first:"50"}});if(j.ok){let f=await j.json();p({historySessions:f.data||[]})}}catch(j){console.error("Failed to fetch history sessions:",j)}},loadSession:async(c,j)=>{try{let f=await D.api.teams[":teamId"].chat.sessions[":sessionId"].messages.$get({param:{teamId:c,sessionId:j}});if(f.ok){let F=await f.json(),P=H.getState().historySessions.find((J)=>J.id===j)?.agentId||null;p({currentSessionId:j,messages:F,isHistoryMode:!1,scrollTop:0,isAtBottom:!0,...P?{selectedAgentId:P}:{}})}else throw Error("Failed to load session messages")}catch(f){let F=f instanceof Error?f.message:"Failed to load session";$.error(F)}},deleteSession:async(c,j)=>{try{if((await D.api.teams[":teamId"].chat.sessions[":sessionId"].$delete({param:{teamId:c,sessionId:j}})).ok)$.success("Session deleted successfully"),p((F)=>({historySessions:F.historySessions.filter((T)=>T.id!==j),currentSessionId:F.currentSessionId===j?null:F.currentSessionId,messages:F.currentSessionId===j?[]:F.messages}));else throw Error("Failed to delete session")}catch(f){let F=f instanceof Error?f.message:"Failed to delete session";$.error(F)}},startNewSession:()=>{p({currentSessionId:null,messages:[],chatAssets:[],scrollTop:0,isAtBottom:!0})},sendMessage:async(c,j,f,F,T)=>{let P=H.getState();if(P.isStreaming)return;let J=`temp-${Date.now()}`,C={id:J,role:"user",content:[{type:"text",text:j}],timestamp:Date.now()},V=[...P.messages];if(P.chatAssets.length>0){let G={id:`temp-context-${Date.now()}`,role:"custom",customType:"context_display_info",details:{assets:P.chatAssets.map((k)=>({id:k.id,name:k.name,type:k.type}))},timestamp:Date.now()-1};V.push(G)}V.push(C),p({messages:V,isStreaming:!0,chatAssets:[],isAtBottom:!0});let A=P.chatAssets.map((K)=>K.id),_=P.selectedAgentId;if(!_){$.error("No agent selected");return}try{let K=await D.api.teams[":teamId"].chat.$post({param:{teamId:c},json:{agentId:_,textPrompt:j,assetIds:A,sessionId:P.currentSessionId||void 0,contextAssetId:F,projectId:f}});if(!K.ok)throw Error("Failed to start chat");let G=K.headers.get("x-session-id");if(G&&!P.currentSessionId)p({currentSessionId:G});let k=K.body?.getReader();if(!k)throw Error("No stream body");let W=new TextDecoder,X="";while(!0){let{done:M,value:S}=await k.read();if(M)break;X+=W.decode(S,{stream:!0});let h=X.split(`
2
- `);X=h.pop()||"";for(let u of h){let Y=u.trim();if(!Y)continue;if(Y.startsWith("data: ")){let y=Y.slice(6);try{let Q=JSON.parse(y);if(Q.type==="session"){if(!H.getState().currentSessionId)p({currentSessionId:Q.sessionId})}else if(Q.type==="entry"){let w=Q.entry,L=w;if(L.role==="toolResult"&&typeof L.toolName==="string"&&["create_file","create_folder","create_version"].includes(L.toolName)&&!L.isError)T?.();p((N)=>{let z=N.messages.some((q)=>q.id===w.id),Z=N.messages.filter((q)=>{if(w.role==="user"&&!z)return!(q.id.startsWith("temp-")&&!q.id.startsWith("temp-context-"));if(w.role==="custom"&&w.customType==="context_display_info"&&!z)return!q.id.startsWith("temp-context-");return!0}),B=Z.findIndex((q)=>q.id===w.id);if(B!==-1){let q=[...Z];return q[B]=w,{messages:q}}else return{messages:[...Z,w]}})}else if(Q.type==="done"){if(Q.status==="failed")$.error(Q.error||"Workflow failed")}}catch(Q){console.error("Error parsing SSE line:",Q)}}}}H.getState().fetchHistorySessions(c)}catch(K){let G=K instanceof Error?K.message:"Failed to send message";$.error(G),p((k)=>({messages:k.messages.filter((W)=>W.id!==J)}))}finally{p({isStreaming:!1})}},abortActiveSession:async(c)=>{let{currentSessionId:j,isStreaming:f}=H.getState();if(!j||!f)return;try{if((await D.api.teams[":teamId"].chat.sessions[":sessionId"].abort.$post({param:{teamId:c,sessionId:j}})).ok)$.success("Agent execution stopped");else throw Error("Failed to abort agent execution")}catch(F){let T=F instanceof Error?F.message:"Failed to abort execution";$.error(T)}}}));var U=b(x(),1);function l(p){let c=p.match(/teams\/([^/]+)/);if(c)return{teamId:c[1]};let j=p.match(/projects\/([^/]+)/);if(j)return{projectId:j[1]};return{}}function s(){let[p,c]=U.useState(),j=O({select:(P)=>P.location.pathname}),{teamId:f,projectId:F}=l(j),{data:T}=v({queryKey:["projects",F,"team"],queryFn:async()=>{let P=await D.api.projects[":projectId"].team.$get({param:{projectId:F}});if(!P.ok)throw Error("failed to fetch project team");return await P.json()},enabled:!!F});return U.useEffect(()=>{if(f)c(f);else if(T?.teamId)c(T.teamId)},[f,T]),p}
3
- export{s as ig,I as jg,H as kg};
@@ -1 +0,0 @@
1
- import{g as v}from"./chunk-qgq96tbp.js";import"./chunk-vt4zpasm.js";import"./chunk-8yz1expv.js";import"./chunk-nzy3pjjm.js";import"./chunk-h270n69j.js";import"./chunk-mqbxagfd.js";import"./chunk-zhd2mkbr.js";import"./chunk-bdjhb77e.js";import"./chunk-p9xfyqh1.js";import"./chunk-31mjcykb.js";import"./chunk-hfp4hpca.js";import"./chunk-wrz9e73c.js";import"./chunk-1nh6xgek.js";import"./chunk-3rcc5s99.js";import"./chunk-20y3wte3.js";import"./chunk-5e1xqaj4.js";import"./chunk-ejfmxjw6.js";import"./chunk-7y8dng8t.js";import"./chunk-3t7mjvdv.js";import"./chunk-pgae67hk.js";import"./chunk-tsncwscz.js";import"./chunk-h2wsm7h3.js";import"./chunk-etces6ff.js";import"./chunk-yahb7wan.js";import"./chunk-mahxw48e.js";import"./chunk-wap08p4j.js";import"./chunk-nr89225z.js";import{Ah as q,ih as k}from"./chunk-b1e3tec3.js";import"./chunk-ws07a9kv.js";function B(){let{shareId:w,folderId:A}=C.useParams();return k(v,{shareId:w,initialFolderId:A})}var C=q("/share/$shareId/folders/$folderId")({component:B});export{C as Route};
@@ -1,6 +0,0 @@
1
- // @bun
2
- import{Tb as S}from"./chunk-s05f0v9t.js";import{Ub as h,Vb as x}from"./chunk-hrzm70wg.js";import{$b as T}from"./chunk-ss45w8ks.js";import{ic as g,jc as v,kc as b,lc as k}from"./chunk-6a2eb3b5.js";import{mc as E}from"./chunk-amsb41z5.js";import{nc as C}from"./chunk-gn8snrnk.js";import{Ye as f,Ze as y}from"./chunk-w9w5301f.js";import{bf as O}from"./chunk-k9w6mk9d.js";import{df as I}from"./chunk-wny0qagx.js";import{tk as L}from"./chunk-jm6bxtzt.js";import"./chunk-hz31j0hk.js";import"./chunk-ws07a9kv.js";function u(Q,_){if(Q)return Q;if(T("PI_CACHE_RETENTION",_)==="long")return"long";return"short"}function m(Q,_,Z){let $=u(_,Z);if($==="none")return{retention:$};let X=$==="long"&&K(Q).supportsLongCacheRetention?"1h":void 0;return{retention:$,cacheControl:{type:"ephemeral",...X&&{ttl:X}}}}var r="2.1.75",i=["Read","Write","Edit","Bash","Grep","Glob","AskUserQuestion","EnterPlanMode","ExitPlanMode","KillShell","NotebookEdit","Skill","Task","TaskOutput","TodoWrite","WebFetch","WebSearch"],l=new Map(i.map((Q)=>[Q.toLowerCase(),Q])),H=(Q)=>l.get(Q.toLowerCase())??Q,a=(Q,_)=>{if(_&&_.length>0){let Z=Q.toLowerCase(),$=_.find((X)=>X.name.toLowerCase()===Z);if($)return $.name}return Q};function n(Q){if(!Q.some((X)=>X.type==="image"))return E(Q.map((X)=>X.text).join(`
3
- `));let Z=Q.map((X)=>{if(X.type==="text")return{type:"text",text:E(X.text)};return{type:"image",source:{type:"base64",media_type:X.mimeType,data:X.data}}});if(!Z.some((X)=>X.type==="text"))Z.unshift({type:"text",text:"(see attached image)"});return Z}var s="fine-grained-tool-streaming-2025-05-14",t="interleaved-thinking-2025-05-14";function K(Q){return{supportsEagerToolInputStreaming:Q.compat?.supportsEagerToolInputStreaming??!0,supportsLongCacheRetention:Q.compat?.supportsLongCacheRetention??!0,sendSessionAffinityHeaders:Q.compat?.sendSessionAffinityHeaders??!1,supportsCacheControlOnTools:Q.compat?.supportsCacheControlOnTools??!0,supportsTemperature:Q.compat?.supportsTemperature??!0,allowEmptySignature:Q.compat?.allowEmptySignature??!1,supportsToolReferences:Q.compat?.supportsToolReferences??o(Q)}}function o(Q){if(Q.provider!=="anthropic"||Q.id.includes("haiku"))return!1;let _=Q.id.match(/^claude-(?:opus|sonnet|fable)-(\d+)(?:-(\d+))?(?:-|$)/);if(!_)return!1;let Z=Number(_[1]),$=_[2]&&_[2].length<8?Number(_[2]):0;return Z>4||Z===4&&$>=5}function B(...Q){let _={};for(let Z of Q)if(Z)Object.assign(_,Z);return _}function z(Q,_){if(!Q)return!1;let Z=_.toLowerCase();for(let[$,X]of Object.entries(Q))if($.toLowerCase()===Z&&X!==null&&X.trim().length>0)return!0;return!1}function c(Q,_,Z){if(_)return;if(z(Z,"authorization")||z(Z,"x-api-key")||z(Z,"cf-aig-authorization"))return;throw Error(`No API key for provider: ${Q}`)}var e=new Set(["message_start","message_delta","message_stop","content_block_start","content_block_delta","content_block_stop"]);function p(Q){if(!Q.event&&Q.data.length===0)return null;let _={event:Q.event,data:Q.data.join(`
4
- `),raw:[...Q.raw]};return Q.event=null,Q.data=[],Q.raw=[],_}function R(Q,_){if(Q==="")return p(_);if(_.raw.push(Q),Q.startsWith(":"))return null;let Z=Q.indexOf(":"),$=Z===-1?Q:Q.slice(0,Z),X=Z===-1?"":Q.slice(Z+1);if(X.startsWith(" "))X=X.slice(1);if($==="event")_.event=X;else if($==="data")_.data.push(X);return null}function QQ(Q){let _=Q.indexOf("\r"),Z=Q.indexOf(`
5
- `);if(_===-1)return Z;if(Z===-1)return _;return Math.min(_,Z)}function F(Q){let _=QQ(Q);if(_===-1)return null;let Z=_+1;if(Q[_]==="\r"&&Q[Z]===`
6
- `)Z+=1;return{line:Q.slice(0,_),rest:Q.slice(Z)}}async function*XQ(Q,_){let Z=Q.getReader(),$=new TextDecoder,X={event:null,data:[],raw:[]},U="";try{while(!0){if(_?.aborted)throw Error("Request was aborted");let{value:q,done:P}=await Z.read();if(P)break;U+=$.decode(q,{stream:!0});let D=F(U);while(D){U=D.rest;let G=R(D.line,X);if(G)yield G;D=F(U)}}U+=$.decode();let V=F(U);while(V){U=V.rest;let q=R(V.line,X);if(q)yield q;V=F(U)}if(U.length>0){let q=R(U,X);if(q)yield q}let j=p(X);if(j)yield j}finally{Z.releaseLock()}}async function*YQ(Q,_){if(!Q.body)throw Error("Attempted to iterate over an Anthropic response with no body");let Z=!1,$=!1;for await(let X of XQ(Q.body,_)){if(X.event==="error")throw Error(X.data);if(!e.has(X.event??""))continue;try{let U=f(X.data);if(U.type==="message_start")Z=!0;else if(U.type==="message_stop")$=!0;yield U}catch(U){let V=U instanceof Error?U.message:String(U);throw Error(`Could not parse Anthropic SSE event ${X.event}: ${V}; data=${X.data}; raw=${X.raw.join("\\n")}`)}}if(Z&&!$)throw Error("Anthropic stream ended before message_stop")}var N=(Q,_,Z)=>{let $=new I;return(async()=>{let X={role:"assistant",content:[],api:Q.api,provider:Q.provider,model:Q.id,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:"stop",timestamp:Date.now()};try{let U,V;if(Z?.client)U=Z.client,V=!1;else{let Y=Z?.apiKey;c(Q.provider,Y,Z?.headers);let W;if(Q.provider==="github-copilot"){let d=h(_.messages);W=x({messages:_.messages,hasImages:d})}let w=u(Z?.cacheRetention,Z?.env)==="none"?void 0:Z?.sessionId,M=$Q(Q,Y,Z?.interleavedThinking??!0,GQ(Q,_),Z?.headers,W,w);U=M.client,V=M.isOAuthToken}let j=UQ(Q,_,V,Z),q=await Z?.onPayload?.(j,Q);if(q!==void 0)j=q;let P={...Z?.signal?{signal:Z.signal}:{},...Z?.timeoutMs!==void 0?{timeout:Z.timeoutMs}:{},maxRetries:Z?.maxRetries??0},D=await U.messages.create({...j,stream:!0},P).asResponse();await Z?.onResponse?.({status:D.status,headers:C(D.headers)},Q),$.push({type:"start",partial:X});let G=X.content;for await(let Y of YQ(D,Z?.signal))if(Y.type==="message_start")X.responseId=Y.message.id,X.usage.input=Y.message.usage.input_tokens||0,X.usage.output=Y.message.usage.output_tokens||0,X.usage.cacheRead=Y.message.usage.cache_read_input_tokens||0,X.usage.cacheWrite=Y.message.usage.cache_creation_input_tokens||0,X.usage.cacheWrite1h=Y.message.usage.cache_creation?.ephemeral_1h_input_tokens||0,X.usage.totalTokens=X.usage.input+X.usage.output+X.usage.cacheRead+X.usage.cacheWrite,O(Q,X.usage);else if(Y.type==="content_block_start"){if(Y.content_block.type==="text"){let W={type:"text",text:"",index:Y.index};X.content.push(W),$.push({type:"text_start",contentIndex:X.content.length-1,partial:X})}else if(Y.content_block.type==="thinking"){let W={type:"thinking",thinking:"",thinkingSignature:"",index:Y.index};X.content.push(W),$.push({type:"thinking_start",contentIndex:X.content.length-1,partial:X})}else if(Y.content_block.type==="redacted_thinking"){let W={type:"thinking",thinking:"[Reasoning redacted]",thinkingSignature:Y.content_block.data,redacted:!0,index:Y.index};X.content.push(W),$.push({type:"thinking_start",contentIndex:X.content.length-1,partial:X})}else if(Y.content_block.type==="tool_use"){let W={type:"toolCall",id:Y.content_block.id,name:V?a(Y.content_block.name,_.tools):Y.content_block.name,arguments:Y.content_block.input??{},partialJson:"",index:Y.index};X.content.push(W),$.push({type:"toolcall_start",contentIndex:X.content.length-1,partial:X})}}else if(Y.type==="content_block_delta"){if(Y.delta.type==="text_delta"){let W=G.findIndex((w)=>w.index===Y.index),J=G[W];if(J&&J.type==="text")J.text+=Y.delta.text,$.push({type:"text_delta",contentIndex:W,delta:Y.delta.text,partial:X})}else if(Y.delta.type==="thinking_delta"){let W=G.findIndex((w)=>w.index===Y.index),J=G[W];if(J&&J.type==="thinking")J.thinking+=Y.delta.thinking,$.push({type:"thinking_delta",contentIndex:W,delta:Y.delta.thinking,partial:X})}else if(Y.delta.type==="input_json_delta"){let W=G.findIndex((w)=>w.index===Y.index),J=G[W];if(J&&J.type==="toolCall")J.partialJson+=Y.delta.partial_json,J.arguments=y(J.partialJson),$.push({type:"toolcall_delta",contentIndex:W,delta:Y.delta.partial_json,partial:X})}else if(Y.delta.type==="signature_delta"){let W=G.findIndex((w)=>w.index===Y.index),J=G[W];if(J&&J.type==="thinking")J.thinkingSignature=J.thinkingSignature||"",J.thinkingSignature+=Y.delta.signature}}else if(Y.type==="content_block_stop"){let W=G.findIndex((w)=>w.index===Y.index),J=G[W];if(J){if(delete J.index,J.type==="text")$.push({type:"text_end",contentIndex:W,content:J.text,partial:X});else if(J.type==="thinking")$.push({type:"thinking_end",contentIndex:W,content:J.thinking,partial:X});else if(J.type==="toolCall")J.arguments=y(J.partialJson),delete J.partialJson,$.push({type:"toolcall_end",contentIndex:W,toolCall:J,partial:X})}}else if(Y.type==="message_delta"){if(Y.delta.stop_reason){let W=JQ(Y.delta.stop_reason,Y.delta.stop_details);if(X.stopReason=W.stopReason,W.errorMessage)X.errorMessage=W.errorMessage}if(Y.usage){if(Y.usage.input_tokens!=null)X.usage.input=Y.usage.input_tokens;if(Y.usage.output_tokens!=null)X.usage.output=Y.usage.output_tokens;if(Y.usage.cache_read_input_tokens!=null)X.usage.cacheRead=Y.usage.cache_read_input_tokens;if(Y.usage.cache_creation_input_tokens!=null)X.usage.cacheWrite=Y.usage.cache_creation_input_tokens;let W=Y.usage.output_tokens_details?.thinking_tokens;if(W!=null)X.usage.reasoning=W}X.usage.totalTokens=X.usage.input+X.usage.output+X.usage.cacheRead+X.usage.cacheWrite,O(Q,X.usage)}if(Z?.signal?.aborted)throw Error("Request was aborted");if(X.stopReason==="aborted"||X.stopReason==="error")throw Error(X.errorMessage||"An unknown error occurred");$.push({type:"done",reason:X.stopReason,message:X}),$.end()}catch(U){for(let V of X.content)delete V.index,delete V.partialJson;X.stopReason=Z?.signal?.aborted?"aborted":"error",X.errorMessage=U instanceof Error?U.message:JSON.stringify(U),$.push({type:"error",reason:X.stopReason,error:X}),$.end()}})(),$};function ZQ(Q,_){let Z=_?Q.thinkingLevelMap?.[_]:void 0;if(typeof Z==="string")return Z;switch(_){case"minimal":case"low":return"low";case"medium":return"medium";case"high":return"high";default:return"high"}}var RQ=(Q,_,Z)=>{c(Q.provider,Z?.apiKey,Z?.headers);let $=v(Q,_,Z,Z?.apiKey);if(!Z?.reasoning)return N(Q,_,{...$,thinkingEnabled:!1});if(Q.compat?.forceAdaptiveThinking===!0){let V=ZQ(Q,Z.reasoning);return N(Q,_,{...$,thinkingEnabled:!0,effort:V})}let X=b($.maxTokens,Q.maxTokens,Z.reasoning,Z.thinkingBudgets),U=g(Q,_,X.maxTokens);return N(Q,_,{...$,maxTokens:U,thinkingEnabled:!0,thinkingBudgetTokens:Math.min(X.thinkingBudget,Math.max(0,U-1024))})};function _Q(Q){return Q.includes("sk-ant-oat")}function $Q(Q,_,Z,$,X,U,V){let j=Z&&Q.compat?.forceAdaptiveThinking!==!0,q=[];if($)q.push(s);if(j)q.push(t);if(Q.provider==="github-copilot")return{client:new L({apiKey:null,authToken:_??null,baseURL:Q.baseUrl,dangerouslyAllowBrowser:!0,defaultHeaders:B({accept:"application/json","anthropic-dangerous-direct-browser-access":"true",...q.length>0?{"anthropic-beta":q.join(",")}:{}},Q.headers,U,X)}),isOAuthToken:!1};if(_&&_Q(_))return{client:new L({apiKey:null,authToken:_,baseURL:Q.baseUrl,dangerouslyAllowBrowser:!0,defaultHeaders:B({accept:"application/json","anthropic-dangerous-direct-browser-access":"true","anthropic-beta":["claude-code-20250219","oauth-2025-04-20",...q].join(","),"user-agent":`claude-cli/${r}`,"x-app":"cli"},Q.headers,X)}),isOAuthToken:!0};let P=V&&K(Q).sendSessionAffinityHeaders?{"x-session-affinity":V}:{},D=B({accept:"application/json","anthropic-dangerous-direct-browser-access":"true",...q.length>0?{"anthropic-beta":q.join(",")}:{}},P,Q.headers,X);return{client:new L({apiKey:_??null,authToken:null,baseURL:Q.baseUrl,dangerouslyAllowBrowser:!0,defaultHeaders:D}),isOAuthToken:!1}}function UQ(Q,_,Z,$){let{cacheControl:X}=m(Q,$?.cacheRetention,$?.env),U=K(Q),V=k(_.messages,Q,WQ),j=Z?H:(W)=>W,q=S({..._,messages:V},U.supportsToolReferences,j),P=q.immediate,D=[...q.deferred.values()];if(P.length===0&&D.length>0)P=D,D=[];let G=new Set(D.map((W)=>j(W.name))),Y={model:Q.id,messages:qQ(V,Z,X,U.allowEmptySignature,G,j),max_tokens:$?.maxTokens??Q.maxTokens,stream:!0};if(Z){if(Y.system=[{type:"text",text:"You are Claude Code, Anthropic's official CLI for Claude.",...X?{cache_control:X}:{}}],_.systemPrompt)Y.system.push({type:"text",text:E(_.systemPrompt),...X?{cache_control:X}:{}})}else if(_.systemPrompt)Y.system=[{type:"text",text:E(_.systemPrompt),...X?{cache_control:X}:{}}];if($?.temperature!==void 0&&!$?.thinkingEnabled&&U.supportsTemperature)Y.temperature=$.temperature;if(P.length>0||D.length>0)Y.tools=[...A(P,Z,U.supportsEagerToolInputStreaming,U.supportsCacheControlOnTools?X:void 0),...A(D,Z,U.supportsEagerToolInputStreaming,void 0,!0)];if(Q.reasoning){if($?.thinkingEnabled){let W=$.thinkingDisplay??"summarized";if(Q.compat?.forceAdaptiveThinking===!0){if(Y.thinking={type:"adaptive",display:W},$.effort)Y.output_config=$.effort==="xhigh"?{effort:$.effort}:{effort:$.effort}}else Y.thinking={type:"enabled",budget_tokens:$.thinkingBudgetTokens||1024,display:W}}else if($?.thinkingEnabled===!1&&Q.thinkingLevelMap?.off!==null)Y.thinking={type:"disabled"}}if($?.metadata){let W=$.metadata.user_id;if(typeof W==="string")Y.metadata={user_id:W}}if($?.toolChoice)if(typeof $.toolChoice==="string")Y.tool_choice={type:$.toolChoice};else Y.tool_choice=$.toolChoice;return Y}function WQ(Q){return Q.replace(/[^a-zA-Z0-9_-]/g,"_").slice(0,64)}function VQ(Q,_,Z,$,X){let U=[];for(let j of Q.addedToolNames??[]){let q=X(j);if(!Z.has(q)||$.has(q))continue;$.add(q),U.push({type:"tool_reference",tool_name:_?H(j):j})}let V=n(Q.content);return{toolResult:{type:"tool_result",tool_use_id:Q.toolCallId,content:U.length>0?U:V,is_error:Q.isError},siblingContent:U.length===0?[]:typeof V==="string"?[{type:"text",text:V}]:V}}function qQ(Q,_,Z,$=!1,X=new Set,U=(V)=>V){let V=[],j=new Set;for(let q=0;q<Q.length;q++){let P=Q[q];if(P.role==="user")if(typeof P.content==="string"){if(P.content.trim().length>0)V.push({role:"user",content:E(P.content)})}else{let G=P.content.map((Y)=>{if(Y.type==="text")return{type:"text",text:E(Y.text)};else return{type:"image",source:{type:"base64",media_type:Y.mimeType,data:Y.data}}}).filter((Y)=>{if(Y.type==="text")return Y.text.trim().length>0;return!0});if(G.length===0)continue;V.push({role:"user",content:G})}else if(P.role==="assistant"){let D=[];for(let G of P.content)if(G.type==="text"){if(G.text.trim().length===0)continue;D.push({type:"text",text:E(G.text)})}else if(G.type==="thinking"){if(G.redacted){D.push({type:"redacted_thinking",data:G.thinkingSignature});continue}let Y=G.thinkingSignature,W=!!Y&&Y.trim().length>0;if(G.thinking.trim().length===0&&!W)continue;if(!W)D.push($?{type:"thinking",thinking:E(G.thinking),signature:""}:{type:"text",text:E(G.thinking)});else D.push({type:"thinking",thinking:E(G.thinking),signature:Y})}else if(G.type==="toolCall")D.push({type:"tool_use",id:G.id,name:_?H(G.name):G.name,input:G.arguments??{}});if(D.length===0)continue;V.push({role:"assistant",content:D})}else if(P.role==="toolResult"){let D=[],G=[],Y=q;while(Y<Q.length&&Q[Y].role==="toolResult"){let W=VQ(Q[Y],_,X,j,U);D.push(W.toolResult),G.push(...W.siblingContent),Y++}q=Y-1,V.push({role:"user",content:[...D,...G]})}}if(Z&&V.length>0){let q=V[V.length-1];if(q.role==="user"){if(Array.isArray(q.content)){let P=q.content[q.content.length-1];if(P&&(P.type==="text"||P.type==="image"||P.type==="tool_result"))P.cache_control=Z}else if(typeof q.content==="string")q.content=[{type:"text",text:q.content,cache_control:Z}]}}return V}function GQ(Q,_){return!!_.tools?.length&&!K(Q).supportsEagerToolInputStreaming}function A(Q,_,Z,$,X=!1){if(!Q)return[];return Q.map((U,V)=>{let j=U.parameters;return{name:_?H(U.name):U.name,description:U.description,...Z?{eager_input_streaming:!0}:{},input_schema:{type:"object",properties:j.properties??{},required:j.required??[]},...X?{defer_loading:!0}:{},...$&&V===Q.length-1?{cache_control:$}:{}}})}function JQ(Q,_){switch(Q){case"end_turn":return{stopReason:"stop"};case"max_tokens":return{stopReason:"length"};case"tool_use":return{stopReason:"toolUse"};case"refusal":return{stopReason:"error",errorMessage:_?.explanation||"The model refused to complete the request"};case"pause_turn":return{stopReason:"stop"};case"stop_sequence":return{stopReason:"stop"};case"sensitive":return{stopReason:"error"};default:throw Error(`Unhandled stop reason: ${Q}`)}}export{RQ as streamSimple,N as stream};
@@ -1,2 +0,0 @@
1
- // @bun
2
- import{pk as V,qk as k,rk as _,sk as E}from"./chunk-y9ttm07y.js";import{uk as b,vk as f,wk as A}from"./chunk-wqhk76de.js";import"./chunk-dhekxndw.js";import{yk as L}from"./chunk-etqpzc9e.js";import{zk as N}from"./chunk-k20bhxed.js";import"./chunk-c3fvs0bv.js";import"./chunk-hz31j0hk.js";import{Ek as B}from"./chunk-90et6bwm.js";import{Qk as M}from"./chunk-5zntjzxw.js";import{Uk as D,Vk as U}from"./chunk-vf066xwh.js";import"./chunk-qvgc9e08.js";import"./chunk-ws07a9kv.js";var y=new Set(["openai","openai-codex","opencode"]);function H(w){if(w)return w;if(typeof process<"u"&&process.env.PI_CACHE_RETENTION==="long")return"long";return"short"}function S(w){return{sendSessionIdHeader:w.compat?.sendSessionIdHeader??!0,supportsLongCacheRetention:w.compat?.supportsLongCacheRetention??!0}}function T(w,F){return F==="long"&&w.supportsLongCacheRetention?"24h":void 0}function C(w){if(w instanceof Error){let F=w.status,z=typeof F==="number"?F:void 0;if(z!==void 0)return`OpenAI API error (${z}): ${w.message}`;return w.message}try{return JSON.stringify(w)}catch{return String(w)}}var I=(w,F,z)=>{let G=new U;return(async()=>{let Q={role:"assistant",content:[],api:w.api,provider:w.provider,model:w.id,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:"stop",timestamp:Date.now()};try{let W=z?.apiKey;if(!W)throw Error(`No API key for provider: ${w.provider}`);let X=H(z?.cacheRetention)==="none"?void 0:z?.sessionId,Z=v(w,F,W,z?.headers,X),Y=x(w,F,z),$=await z?.onPayload?.(Y,w);if($!==void 0)Y=$;let j={...z?.signal?{signal:z.signal}:{},...z?.timeoutMs!==void 0?{timeout:z.timeoutMs}:{},maxRetries:z?.maxRetries??0},{data:K,response:q}=await Z.responses.create(Y,j).withResponse();if(await z?.onResponse?.({status:q.status,headers:B(q.headers)},w),G.push({type:"start",partial:Q}),await A(K,Q,G,w,{serviceTier:z?.serviceTier,applyServiceTierPricing:(P,O)=>h(P,O,w)}),z?.signal?.aborted)throw Error("Request was aborted");if(Q.stopReason==="aborted"||Q.stopReason==="error")throw Error("An unknown error occurred");G.push({type:"done",reason:Q.stopReason,message:Q}),G.end()}catch(W){for(let J of Q.content)delete J.index,delete J.partialJson;Q.stopReason=z?.signal?.aborted?"aborted":"error",Q.errorMessage=C(W),G.push({type:"error",reason:Q.stopReason,error:Q}),G.end()}})(),G},i=(w,F,z)=>{let G=z?.apiKey;if(!G)throw Error(`No API key for provider: ${w.provider}`);let Q=M(w,z,G),W=z?.reasoning?D(w,z.reasoning):void 0;return I(w,F,{...Q,reasoningEffort:W==="off"?void 0:W})};function v(w,F,z,G,Q){let W=S(w),J={...w.headers};if(w.provider==="github-copilot"){let Z=_(F.messages),Y=E({messages:F.messages,hasImages:Z});Object.assign(J,Y)}if(Q){if(W.sendSessionIdHeader)J.session_id=Q;J["x-client-request-id"]=Q}if(G)Object.assign(J,G);let X=w.provider==="cloudflare-ai-gateway"?{...J,Authorization:J.Authorization??null,"cf-aig-authorization":`Bearer ${z}`}:J;return new N({apiKey:z,baseURL:V(w.provider)?k(w):w.baseUrl,dangerouslyAllowBrowser:!0,defaultHeaders:X})}function x(w,F,z){let G=b(w,F,y),Q=H(z?.cacheRetention),W=S(w),J={model:w.id,input:G,stream:!0,prompt_cache_key:Q==="none"?void 0:L(z?.sessionId),prompt_cache_retention:T(W,Q),store:!1};if(z?.maxTokens)J.max_output_tokens=z?.maxTokens;if(z?.temperature!==void 0)J.temperature=z?.temperature;if(z?.serviceTier!==void 0)J.service_tier=z.serviceTier;if(F.tools&&F.tools.length>0)J.tools=f(F.tools);if(w.reasoning){if(z?.reasoningEffort||z?.reasoningSummary){let X=z?.reasoningEffort?w.thinkingLevelMap?.[z.reasoningEffort]??z.reasoningEffort:"medium";J.reasoning={effort:X,summary:z?.reasoningSummary||"auto"},J.include=["reasoning.encrypted_content"]}else if(w.provider!=="github-copilot"&&w.thinkingLevelMap?.off!==null)J.reasoning={effort:w.thinkingLevelMap?.off??"none"}}return J}function R(w,F){switch(F){case"flex":return 0.5;case"priority":return w.id==="gpt-5.5"?2.5:2;default:return 1}}function h(w,F,z){let G=R(z,F);if(G===1)return;w.cost.input*=G,w.cost.output*=G,w.cost.cacheRead*=G,w.cost.cacheWrite*=G,w.cost.total=w.cost.input+w.cost.output+w.cost.cacheRead+w.cost.cacheWrite}export{i as streamSimpleOpenAIResponses,I as streamOpenAIResponses};
@@ -1,3 +0,0 @@
1
- // @bun
2
- var q=new Set;function F(b){return q.add(b),()=>{q.delete(b)}}function A(b){if(b instanceof Error)return b.message||b.name;if(typeof b==="string")return b;return String(b)}function B(b){if(!(b instanceof Error))return{name:"ThrownValue",message:A(b)};let k=b.code;return{name:b.name||void 0,message:b.message||b.name,stack:b.stack,code:typeof k==="string"||typeof k==="number"?k:void 0}}function H(b,k,z){return{type:b,timestamp:Date.now(),error:B(k),details:z}}function J(b,k){b.diagnostics=[...b.diagnostics??[],k]}
3
- export{F as Ue,A as Ve,H as We,J as Xe};
@@ -1,2 +0,0 @@
1
- import{h as WG,i as VG}from"./chunk-vt4zpasm.js";import{o as qG,r as BG}from"./chunk-8yz1expv.js";import{u as zG}from"./chunk-h270n69j.js";import{Wa as HG}from"./chunk-31mjcykb.js";import{rf as _G}from"./chunk-5e1xqaj4.js";import{sf as v,tf as g,uf as F,wf as u}from"./chunk-ejfmxjw6.js";import{jg as ZG}from"./chunk-pgae67hk.js";import{dh as $G}from"./chunk-nr89225z.js";import{Mh as B,Qh as OG,Vi as UG,Wh as P,ck as XG,gh as oG,hh as JG,ih as O,ik as YG,jh as z,nh as N,qh as w,vh as KG}from"./chunk-b1e3tec3.js";import{Xk as nG}from"./chunk-ws07a9kv.js";var X=nG(oG(),1);function $J({shareId:K,initialFolderId:QG,initialFileId:f,startTime:TG,versionId:V,compare:MG,compareLeftId:b,compareRightId:A,compareActiveSide:p="left"}){let H=KG(),W=!!MG&&!!b&&!!A,[Z,h]=X.useState(()=>{return localStorage.getItem(`share_pwd_${K}`)||""}),[D,NG]=X.useState(""),{data:U,error:Q,isLoading:yG}=N({queryKey:["share-info",K,Z],queryFn:async()=>{let G=await B.api.shares[":shareId"].info.$get({param:{shareId:K}},{headers:{"x-share-password":Z}});if(G.status===401)throw Error("Unauthorized");if(G.status===403){let J=await G.json();throw Error(J.error||"Forbidden")}if(!G.ok)throw Error("Failed to fetch share info");return await G.json()},retry:!1}),Y=QG||U?.rootFolderId,_=f||null,m=V||_,[c,l]=X.useState([]),{data:R}=N({queryKey:["public-share-folder",K,Y,Z],queryFn:async()=>{let G=await B.api.shares[":shareId"].files[":fileId"].$get({param:{shareId:K,fileId:Y}},{headers:{"x-share-password":Z}});if(G.status===401)throw Error("Unauthorized");return await G.json()},enabled:!!U&&!!Y});X.useEffect(()=>{if(R?.ancestorFolders&&U){let G=R.ancestorFolders.findIndex((J)=>J.id===U.rootFolderId);if(G!==-1)l(R.ancestorFolders.slice(0,G));else if(Y===U.rootFolderId)l([])}},[R,U,Y]);let[y,E]=X.useState(new Set),[EG,LG]=X.useState(360),[j,kG]=X.useState(()=>!f),L=X.useRef(null),[I,C]=X.useState([]),[bG,n]=X.useState(0),[AG,o]=X.useState(null),[d,RG]=X.useState(null),[PG,DG]=X.useState(void 0),{data:i,fetchNextPage:jG,hasNextPage:CG,isFetchingNextPage:SG,error:t}=w({queryKey:["public-share-children",K,Y,"folder",Z],queryFn:async({pageParam:G})=>{let J=await B.api.shares[":shareId"].folders[":folderId"].children.$get({param:{shareId:K,folderId:Y},query:{assetType:"folder",after:G}},{headers:{"x-share-password":Z}});if(J.status===401)throw Error("Unauthorized");if(J.status===403)throw Error("Expired");return await J.json()},enabled:!!U&&!!Y,initialPageParam:"",getNextPageParam:(G)=>G.pageInfo?.cursor||void 0,retry:!1}),{data:a,fetchNextPage:xG,hasNextPage:wG,isFetchingNextPage:vG}=w({queryKey:["public-share-children",K,Y,"file",Z],queryFn:async({pageParam:G})=>{let J=await B.api.shares[":shareId"].folders[":folderId"].children.$get({param:{shareId:K,folderId:Y},query:{assetType:"file",after:G}},{headers:{"x-share-password":Z}});if(J.status===401)throw Error("Unauthorized");if(J.status===403)throw Error("Expired");return await J.json()},enabled:!!U&&!!Y,initialPageParam:"",getNextPageParam:(G)=>G.pageInfo?.cursor||void 0,retry:!1}),{data:gG}=N({queryKey:["public-share-fields",K,Z],queryFn:async()=>{let G=await B.api.shares[":shareId"].fields.$get({param:{shareId:K}},{headers:{"x-share-password":Z}});if(G.status===401)throw Error("Unauthorized");return await G.json()},enabled:!!U}),{data:q,isLoading:FG}=N({queryKey:["public-share-file",K,_,Z],queryFn:async()=>{let G=await B.api.shares[":shareId"].files[":fileId"].$get({param:{shareId:K,fileId:_}},{headers:{"x-share-password":Z}});if(G.status===401)throw Error("Unauthorized");return await G.json()},enabled:!!_&&!!U}),{data:uG,isLoading:fG}=N({queryKey:["public-share-file",K,V,Z],queryFn:async()=>{let G=await B.api.shares[":shareId"].files[":fileId"].$get({param:{shareId:K,fileId:V}},{headers:{"x-share-password":Z}});if(G.status===401)throw Error("Unauthorized");return await G.json()},enabled:!!V&&!!U}),$=V?uG:q,pG=FG||!!V&&fG;X.useEffect(()=>{if(t?.message==="Unauthorized")h(""),localStorage.removeItem(`share_pwd_${K}`)},[t,K]);let k=X.useMemo(()=>i?.pages.flatMap((G)=>G.data??[])??[],[i]),S=X.useMemo(()=>a?.pages.flatMap((G)=>G.data??[])??[],[a]),s=X.useMemo(()=>{if($)return $;if(y.size!==1)return null;let G=Array.from(y)[0];return[...k,...S].find((J)=>J.id===G)||null},[y,k,S,$]),hG=(G)=>{G.preventDefault(),h(D),localStorage.setItem(`share_pwd_${K}`,D)},mG=(G)=>{if(G.type==="folder"||G.targetType==="folder")H({to:"/share/$shareId/folders/$folderId",params:{shareId:K,folderId:G.id}});else H({to:"/share/$shareId/files/$fileId",params:{shareId:K,fileId:G.versionStack?G.versionStack.id:G.id}});E(new Set)},cG=(G)=>{if(!U)return;let J=G==="root"?U.rootFolderId:G;if(J===U.rootFolderId)H({to:"/share/$shareId",params:{shareId:K}});else H({to:"/share/$shareId/folders/$folderId",params:{shareId:K,folderId:J}});E(new Set)},lG=(G)=>{o(G.id||null);let J=G.annotations;if(J&&J.length>0)C(J);else C([]);if(W){if(G.second!==null&&G.second!==void 0)DG({second:G.second,nonce:Date.now()});return}if(G.second!==null&&G.second!==void 0)L.current?.seekTo(G.second),L.current?.pause();else if(J&&J.length>0)L.current?.pause()},r=()=>{C([]),o(null)},x=(G)=>{if(!_)return;H({to:"/share/$shareId/files/$fileId",params:{shareId:K,fileId:_},search:(J)=>({...J,...G})})},IG=()=>{x({compare:void 0,cmpLeft:void 0,cmpRight:void 0,cmpActive:void 0,version:p==="left"?b:A})},{setProjectState:e,clearProjectState:GG}=ZG();X.useEffect(()=>{if(U&&Y){let G=Y===U.rootFolderId?U.name:k.find((J)=>J.id===Y)?.name||U.name;e({teamId:"",projectId:U.projectId,projectName:U.name,ancestorFolders:c,currentAsset:{name:$?.name||G,type:_?"file":"folder",version:q?.versionStack?q.versionStack.versions.find((J)=>J.id===m)?.version??q.versionStack.versions.length:void 0,proxyType:$?.proxyType||null},isRootFolder:Y===U.rootFolderId&&!_,isPublic:!0,shareId:K,fileId:_||void 0,downloadInfo:$?{originalKey:$.media?.original?.key,videoTranscodes:$.media?.videoTranscodes?.map((J)=>({key:J.key,width:J.width,height:J.height,isRaw:J.isRaw}))}:void 0,onFolderClick:cG,isRightSidebarCollapsed:j,onRightSidebarToggle:()=>kG((J)=>!J),versions:q?.versionStack?.versions,compareMode:W,canCompareVersions:(q?.versionStack?.versions?.length??0)>=2,onCompareVersions:()=>{let J=qG(q?.versionStack?.versions);if(!J||!_)return;H({to:"/share/$shareId/files/$fileId",params:{shareId:K,fileId:_},search:(M)=>({...M,compare:!0,cmpLeft:J.left.id,cmpRight:J.right.id,cmpActive:"left"})})}})}return()=>GG()},[U,Y,k,$,q,m,_,c,e,GG,j,W,H,K]);let T;if(yG&&!Q)T=O("div",{className:"flex flex-1 items-center justify-center bg-background",children:O(P,{className:"h-8 w-8 animate-spin text-foreground"})});else if(Q)if(Q.message==="Unauthorized"){let G=Z!=="";T=O("div",{className:"flex flex-1 items-center justify-center p-4",children:z(v,{className:"w-full max-w-md",children:[z(g,{className:"text-center",children:[O("div",{className:"mx-auto mb-4 flex h-12 w-12 items-center justify-center rounded-full bg-primary/10",children:O(UG,{className:"h-6 w-6 text-primary"})}),O(F,{children:YG.password_protected()})]}),O(u,{children:z("form",{onSubmit:hG,className:"space-y-4",children:[z("div",{className:"space-y-2",children:[O($G,{type:"password",placeholder:"Enter password",value:D,onChange:(J)=>NG(J.target.value),autoFocus:!0}),G&&O("p",{className:"text-sm font-medium text-destructive",children:"Incorrect password. Please try again."})]}),O(XG,{type:"submit",className:"w-full",children:"Access Share"})]})})]})})}else{let G=Q.message.includes("expired"),J=Q.message.includes("disabled");T=O("div",{className:"flex flex-1 items-center justify-center p-4",children:z(v,{className:"w-full max-w-md",children:[z(g,{className:"text-center",children:[O("div",{className:"mx-auto mb-4 flex h-12 w-12 items-center justify-center rounded-full bg-destructive/10",children:O(OG,{className:"h-6 w-6 text-destructive"})}),O(F,{children:G?"Share Expired":J?"Share Disabled":"Error"})]}),O(u,{className:"text-center text-muted-foreground",children:Q.message})]})})}else if(!U)T=O("div",{className:"flex flex-1 items-center justify-center bg-background",children:O(P,{className:"h-8 w-8 animate-spin text-foreground"})});else T=z("div",{className:"flex flex-1 overflow-hidden relative",children:[_?z("div",{className:"flex-1 relative bg-muted/30",children:[pG&&!W&&O("div",{className:"absolute inset-0 z-10 flex items-center justify-center bg-background/50",children:O(P,{className:"h-8 w-8 animate-spin text-foreground"})}),W&&b&&A?O(VG,{isPublic:!0,shareId:K,versions:$?.versionStack?.versions??[],leftId:b,rightId:A,activeSide:p,annotations:I,seekRequest:PG,onActiveSideChange:(G)=>x({cmpActive:G}),onSwitchVersion:(G,J)=>x(G==="left"?{cmpLeft:J}:{cmpRight:J}),onExit:IG,onActiveAssetChange:RG,onPlay:r,onTimeUpdate:n}):$&&O(WG,{file:$,mediaControllerRef:L,onPlay:r,onTimeUpdate:n,annotations:I,startTime:TG,shareId:K})]}):Y&&O(zG,{teamId:"",projectId:U.projectId,assetId:Y,folders:k,files:S,selectedItem:null,selectedIds:y,onItemSelect:(G,J)=>{if(J.metaKey||J.ctrlKey){let M=new Set(y);if(M.has(G.id))M.delete(G.id);else M.add(G.id);E(M)}else E(new Set([G.id]))},onItemDoubleClick:mG,onSaveField:()=>{},displayStyle:U.viewMode??"card",onClearSelection:()=>E(new Set),fetchNextFoldersPage:jG,hasNextFoldersPage:CG,isFetchingNextFoldersPage:SG,fetchNextFilesPage:xG,hasNextFilesPage:wG,isFetchingNextFilesPage:vG,isShareView:!0,isPublic:!0}),!j&&z(JG,{children:[O(HG,{onResize:(G)=>LG((J)=>Math.max(240,Math.min(600,J-G)))}),O("div",{style:{width:EG},className:"flex-shrink-0 border-l",children:O(BG,{teamId:"",projectId:U.projectId,file:W?d:s,onSaveField:()=>{},members:[],readOnly:!0,publicFields:gG,onCommentSelect:lG,isPublic:!0,shareId:K,currentTime:bG,onTyping:()=>{L.current?.pause()},selectedCommentId:AG,hideAnnotationControl:(W?d:s)?.proxyType==="audio"})})]})]});return z("div",{className:"flex h-screen flex-col bg-background",children:[O(_G,{}),T]})}
2
- export{$J as g};
@@ -1,3 +0,0 @@
1
- // @bun
2
- function f(b){return b.replace(/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,"")}
3
- export{f as Wk};
@@ -1 +0,0 @@
1
- import{j as V}from"./chunk-0ed7h2xm.js";import"./chunk-bmqw3j2d.js";import"./chunk-zx9cv3t8.js";import"./chunk-8yz1expv.js";import"./chunk-nzy3pjjm.js";import"./chunk-h270n69j.js";import"./chunk-mqbxagfd.js";import"./chunk-zhd2mkbr.js";import"./chunk-bdjhb77e.js";import"./chunk-p9xfyqh1.js";import"./chunk-31mjcykb.js";import"./chunk-hfp4hpca.js";import"./chunk-wrz9e73c.js";import"./chunk-1nh6xgek.js";import"./chunk-3rcc5s99.js";import"./chunk-20y3wte3.js";import{yf as U}from"./chunk-vnfmh5ke.js";import"./chunk-qc6dmzn0.js";import{Bf as N}from"./chunk-ve7v8wtv.js";import"./chunk-7y8dng8t.js";import"./chunk-3t7mjvdv.js";import"./chunk-pgae67hk.js";import"./chunk-tsncwscz.js";import"./chunk-h2wsm7h3.js";import"./chunk-etces6ff.js";import"./chunk-yahb7wan.js";import"./chunk-mahxw48e.js";import"./chunk-wap08p4j.js";import{bh as K}from"./chunk-nr89225z.js";import{Ah as H,Mh as J,gh as Z,ih as q,nh as D,oh as G}from"./chunk-b1e3tec3.js";import{Xk as Y}from"./chunk-ws07a9kv.js";var W=Y(Z(),1);function _(){let{projectId:h}=$.useParams(),{teamId:v,ensureTeamIdForProject:w}=K();W.useEffect(()=>{w(h)},[h,w]);let{data:A}=G(U(h)),b=A?.rootFolder,{data:X}=D({queryKey:["folders",b],queryFn:async()=>{let B=await J.api.folders[":folderId"].$get({param:{folderId:b}});if(!B.ok)throw Error("failed to fetch folder");return await B.json()},enabled:!!b});if(!v||!b||!X)return q(N,{});return q(V,{teamId:v,projectId:h,projectName:A.name??"",assetId:b,rootFolderId:b})}var $=H("/projects/$projectId/")({component:_});export{$ as Route};
@@ -1 +0,0 @@
1
- import{j as V}from"./chunk-0ed7h2xm.js";import"./chunk-bmqw3j2d.js";import"./chunk-zx9cv3t8.js";import"./chunk-8yz1expv.js";import"./chunk-nzy3pjjm.js";import"./chunk-h270n69j.js";import"./chunk-mqbxagfd.js";import"./chunk-zhd2mkbr.js";import"./chunk-bdjhb77e.js";import"./chunk-p9xfyqh1.js";import"./chunk-31mjcykb.js";import"./chunk-hfp4hpca.js";import"./chunk-wrz9e73c.js";import"./chunk-1nh6xgek.js";import"./chunk-3rcc5s99.js";import"./chunk-20y3wte3.js";import{jf as U}from"./chunk-ph3e1bpp.js";import"./chunk-qc6dmzn0.js";import{Bf as N}from"./chunk-ve7v8wtv.js";import"./chunk-7y8dng8t.js";import"./chunk-3t7mjvdv.js";import"./chunk-pgae67hk.js";import"./chunk-tsncwscz.js";import"./chunk-h2wsm7h3.js";import"./chunk-etces6ff.js";import"./chunk-yahb7wan.js";import"./chunk-mahxw48e.js";import"./chunk-wap08p4j.js";import{bh as K}from"./chunk-nr89225z.js";import{Ah as H,Mh as J,gh as Z,ih as q,nh as B,oh as G}from"./chunk-b1e3tec3.js";import{Xk as Y}from"./chunk-ws07a9kv.js";var W=Y(Z(),1);function _(){let{projectId:h}=$.useParams(),{teamId:v,ensureTeamIdForProject:w}=K();W.useEffect(()=>{w(h)},[h,w]);let{data:A}=G(U(h)),b=A?.rootFolder,{data:X}=B({queryKey:["folders",b],queryFn:()=>(async()=>{return await(await J.api.folders[":folderId"].$get({param:{folderId:b}})).json()})(),enabled:!!b});if(!v||!b||!X)return q(N,{});return q(V,{teamId:v,projectId:h,projectName:A.name??"",assetId:"recently-deleted",rootFolderId:b})}var $=H("/projects/$projectId/recently-deleted")({component:_});export{$ as Route};
@@ -1,8 +0,0 @@
1
- // @bun
2
- import{Ue as QN,Ve as h,We as VN,Xe as ZN}from"./chunk-q5cdjzbv.js";import{uk as g,vk as NN,wk as v}from"./chunk-wqhk76de.js";import"./chunk-dhekxndw.js";import{yk as e}from"./chunk-etqpzc9e.js";import"./chunk-c3fvs0bv.js";import"./chunk-hz31j0hk.js";import{Ek as b}from"./chunk-90et6bwm.js";import{Qk as s}from"./chunk-5zntjzxw.js";import{Uk as t,Vk as o}from"./chunk-vf066xwh.js";import"./chunk-qvgc9e08.js";import"./chunk-ws07a9kv.js";function c(N){let Q=N.filter((Z)=>Z!==void 0);if(Q.length===0)return{cleanup:()=>{}};if(Q.length===1)return{signal:Q[0],cleanup:()=>{}};let V=new AbortController,$=[],X=(Z)=>{if(!V.signal.aborted)V.abort(Z.reason)};for(let Z of Q){if(Z.aborted){X(Z);break}let G=()=>X(Z);Z.addEventListener("abort",G,{once:!0}),$.push({signal:Z,listener:G})}return{signal:V.signal,cleanup:()=>{for(let{signal:Z,listener:G}of $)Z.removeEventListener("abort",G)}}}var jN=function(N,Q){if(typeof N==="string"&&/^\.\.?\//.test(N))return N.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(V,$,X,Z,G){return $?Q?".jsx":".js":X&&(!Z||!G)?V:X+Z+"."+G.toLowerCase()+"js"});return N},C=null,$N=(N)=>import(jN(N)),UN="node:os";if(typeof process<"u"&&(process.versions?.node||process.versions?.bun))$N(UN).then((N)=>{C=N});var _N="https://chatgpt.com/backend-api",BN="https://api.openai.com/auth",WN=0,p=1000,HN=60000,l=1e4,RN=15000,XN=new Set(["openai","openai-codex","opencode"]),qN=1009,AN=new Set(["completed","incomplete","failed","cancelled","queued","in_progress"]);function wN(N){return/GoUsageLimitError|FreeUsageLimitError|Monthly usage limit reached|available balance|insufficient_quota|out of budget|quota exceeded|billing/i.test(N)}function CN(N,Q){if(N===429&&wN(Q))return!1;if(N===429||N===500||N===502||N===503||N===504)return!0;return/rate.?limit|overloaded|service.?unavailable|upstream.?connect|connection.?refused/i.test(Q)}function EN(N){let Q=N.get("retry-after-ms");if(Q!==null){let Z=Number(Q);if(Number.isFinite(Z))return Math.max(0,Z)}let V=N.get("retry-after");if(!V)return;let $=Number(V);if(Number.isFinite($))return Math.max(0,$*1000);let X=Date.parse(V);if(!Number.isNaN(X))return Math.max(0,X-Date.now());return}function fN(N,Q){let V=Q?.maxRetryDelayMs??HN;return V>0?Math.min(N,V):N}function d(N,Q){return new Promise((V,$)=>{if(Q?.aborted){$(Error("Request was aborted"));return}let X=setTimeout(V,N);Q?.addEventListener("abort",()=>{clearTimeout(X),$(Error("Request was aborted"))})})}function a(N){if(N===void 0)return;if(!Number.isFinite(N)||N<0)throw Error(`Invalid timeoutMs: ${String(N)}`);return Math.floor(N)}function MN(){let N=new AbortController,Q,V=setTimeout(()=>{Q=Error(`Codex SSE response headers timed out after ${l}ms`),N.abort(Q)},l);return{signal:N.signal,clear:()=>clearTimeout(V),error:()=>Q}}var SN=(N,Q,V)=>{let $=new o;return(async()=>{let X={role:"assistant",content:[],api:"openai-codex-responses",provider:N.provider,model:N.id,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:"stop",timestamp:Date.now()};try{let Z=V?.apiKey;if(!Z)throw Error(`No API key for provider: ${N.provider}`);let G=NQ(Z),J=xN(N,Q,V),Y=await V?.onPayload?.(J,N);if(Y!==void 0)J=Y;let P=V?.sessionId||QQ(),O=VQ(N.headers,V?.headers,G,Z,V?.sessionId),z=ZQ(N.headers,V?.headers,G,Z,P),B=JSON.stringify(J),L=a(V?.timeoutMs),W=a(V?.websocketConnectTimeoutMs),D=V?.transport||"auto",j=D!=="sse"&&PN(V?.sessionId);if(j)i(V?.sessionId);if(D!=="sse"&&!j){let U=!1;try{if(await sN(hN(N.baseUrl),J,z,X,$,N,()=>{U=!0},L,W,V),V?.signal?.aborted)throw Error("Request was aborted");$.push({type:"done",reason:X.stopReason,message:X}),$.end();return}catch(_){if(V?.signal?.aborted||kN(_))throw _;if(ZN(X,VN("provider_transport_failure",_,{configuredTransport:D,fallbackTransport:U?void 0:"sse",eventsEmitted:U,phase:U?"after_message_stream_start":"before_message_stream_start",requestBytes:new TextEncoder().encode(B).byteLength})),uN(V?.sessionId,_),U)throw _;i(V?.sessionId)}}let F,K,R=V?.maxRetries??WN;for(let U=0;U<=R;U++){if(V?.signal?.aborted)throw Error("Request was aborted");try{let _=MN(),A=c([V?.signal,_.signal]);try{F=await fetch(FN(N.baseUrl),{method:"POST",headers:O,body:B,signal:A.signal})}catch(w){let f=_.error();throw f&&!V?.signal?.aborted?f:w}finally{A.cleanup(),_.clear()}if(await V?.onResponse?.({status:F.status,headers:b(F.headers)},N),F.ok)break;let m=await F.text();if(U<R&&CN(F.status,m)){let w=EN(F.headers),f=w===void 0?p*2**U:F.status===429?fN(w,V):w;await d(f,V?.signal);continue}let DN=new Response(m,{status:F.status,statusText:F.statusText}),u=await eN(DN);throw Error(u.friendlyMessage||u.message)}catch(_){if(_ instanceof Error){if(_.name==="AbortError"||_.message==="Request was aborted")throw Error("Request was aborted")}if(K=_ instanceof Error?_:Error(String(_)),U<R&&!K.message.includes("usage limit")){let A=p*2**U;await d(A,V?.signal);continue}throw K}}if(!F?.ok)throw K??Error("Failed after retries");if(!F.body)throw Error("No response body");if($.push({type:"start",partial:X}),await IN(F,X,$,N,V),V?.signal?.aborted)throw Error("Request was aborted");$.push({type:"done",reason:X.stopReason,message:X}),$.end()}catch(Z){for(let G of X.content)delete G.partialJson;X.stopReason=V?.signal?.aborted?"aborted":"error",X.errorMessage=Z instanceof Error?Z.message:String(Z),$.push({type:"error",reason:X.stopReason,error:X}),$.end()}})(),$},OQ=(N,Q,V)=>{let $=V?.apiKey;if(!$)throw Error(`No API key for provider: ${N.provider}`);let X=s(N,V,$),Z=V?.reasoning?t(N,V.reasoning):void 0;return SN(N,Q,{...X,reasoningEffort:Z==="off"?void 0:Z})};function xN(N,Q,V){let $=g(N,Q,XN,{includeSystemPrompt:!1}),X={model:N.id,store:!1,stream:!0,instructions:Q.systemPrompt||"You are a helpful assistant.",input:$,text:{verbosity:V?.textVerbosity||"low"},include:["reasoning.encrypted_content"],prompt_cache_key:e(V?.sessionId),tool_choice:"auto",parallel_tool_calls:!0};if(V?.temperature!==void 0)X.temperature=V.temperature;if(V?.serviceTier!==void 0)X.service_tier=V.serviceTier;if(Q.tools&&Q.tools.length>0)X.tools=NN(Q.tools,{strict:null});if(V?.reasoningEffort!==void 0){let Z=V.reasoningEffort==="none"?N.thinkingLevelMap?.off??"none":N.thinkingLevelMap?.[V.reasoningEffort]??V.reasoningEffort;if(Z!==null)X.reasoning={effort:Z,summary:V.reasoningSummary??"auto"}}return X}function TN(N,Q){switch(Q){case"flex":return 0.5;case"priority":return N.id==="gpt-5.5"?2.5:2;default:return 1}}function GN(N,Q,V){let $=TN(V,Q);if($===1)return;N.cost.input*=$,N.cost.output*=$,N.cost.cacheRead*=$,N.cost.cacheWrite*=$,N.cost.total=N.cost.input+N.cost.output+N.cost.cacheRead+N.cost.cacheWrite}function YN(N,Q){if(N==="default"&&(Q==="flex"||Q==="priority"))return Q;return N??Q}function FN(N){let V=(N&&N.trim().length>0?N:_N).replace(/\/+$/,"");if(V.endsWith("/codex/responses"))return V;if(V.endsWith("/codex"))return`${V}/responses`;return`${V}/codex/responses`}function hN(N){let Q=new URL(FN(N));if(Q.protocol==="https:")Q.protocol="wss:";if(Q.protocol==="http:")Q.protocol="ws:";return Q.toString()}async function IN(N,Q,V,$,X){await v(JN(gN(N,X?.signal)),Q,V,$,{serviceTier:X?.serviceTier,resolveServiceTier:YN,applyServiceTierPricing:(Z,G)=>GN(Z,G,$)})}class x extends Error{code;payload;constructor(N,Q){super(N);this.name="CodexApiError",this.code=Q?.code,this.payload=Q?.payload,this.cause=Q?.cause}}class I extends Error{payload;constructor(N,Q){super(N);this.name="CodexProtocolError",this.payload=Q?.payload,this.cause=Q?.cause}}function kN(N){return N instanceof x||N instanceof I}async function*JN(N){for await(let Q of N){let V=typeof Q.type==="string"?Q.type:void 0;if(!V)continue;if(V==="error"){let $=Q.code||"",X=Q.message||"";throw new x(`Codex error: ${X||$||JSON.stringify(Q)}`,{code:$||void 0,payload:Q})}if(V==="response.failed"){let $=Q.response,X=$?.error?.code,Z=$?.error?.message;throw new x(Z||"Codex response failed",{code:X,payload:Q})}if(V==="response.done"||V==="response.completed"||V==="response.incomplete"){let $=Q.response,X=$?{...$,status:bN($.status)}:$;yield{...Q,type:"response.completed",response:X};return}yield Q}}function bN(N){if(typeof N!=="string")return;return AN.has(N)?N:void 0}async function*gN(N,Q){if(!N.body)return;let V=N.body.getReader(),$=new TextDecoder,X="",Z=()=>{V.cancel().catch(()=>{})};Q?.addEventListener("abort",Z,{once:!0});try{while(!0){if(Q?.aborted)throw Error("Request was aborted");let{done:G,value:J}=await V.read();if(Q?.aborted)throw Error("Request was aborted");if(G)break;X+=$.decode(J,{stream:!0});let Y=X.indexOf(`
3
-
4
- `);while(Y!==-1){let P=X.slice(0,Y);X=X.slice(Y+2);let O=P.split(`
5
- `).filter((z)=>z.startsWith("data:")).map((z)=>z.slice(5).trim());if(O.length>0){let z=O.join(`
6
- `).trim();if(z&&z!=="[DONE]")try{yield JSON.parse(z)}catch(B){throw new I(`Invalid Codex SSE JSON: ${h(B)}`,{cause:B,payload:z})}}Y=X.indexOf(`
7
-
8
- `)}}}finally{Q?.removeEventListener("abort",Z);try{await V.cancel()}catch{}try{V.releaseLock()}catch{}}}var vN="responses_websockets=2026-02-06",yN=300000,H=new Map,E=new Map,T=new Set;function y(N){let Q=E.get(N);if(!Q)Q={requests:0,connectionsCreated:0,connectionsReused:0,cachedContextRequests:0,storeTrueRequests:0,fullContextRequests:0,deltaRequests:0,lastInputItems:0,websocketFailures:0,sseFallbacks:0},E.set(N,Q);return Q}function DQ(N){let Q=E.get(N);return Q?{...Q}:void 0}function jQ(N){if(N){E.delete(N),T.delete(N);return}E.clear(),T.clear()}function mN(N){let Q=(V)=>{if(V.idleTimer)clearTimeout(V.idleTimer);q(V.socket,1000,"debug_close")};if(N){let V=H.get(N);if(V)Q(V);H.delete(N);return}for(let V of H.values())Q(V);H.clear()}QN(mN);function PN(N){return N?T.has(N):!1}function i(N){if(!N)return;let Q=y(N);Q.sseFallbacks++,Q.websocketFallbackActive=PN(N)}function uN(N,Q){if(!N)return;T.add(N);let V=y(N);V.websocketFailures++,V.lastWebSocketError=h(Q),V.websocketFallbackActive=!0}var M=null;async function cN(){if(M)return M;if(process?.versions?.bun&&(process.env.HTTP_PROXY||process.env.HTTPS_PROXY||process.env.http_proxy||process.env.https_proxy)){let V=(await $N("proxy-from-env")).getProxyForUrl;return M=class extends WebSocket{constructor($,X){let Z={};if(Array.isArray(X)||typeof X==="string")Z={protocols:X};else Z={...X};let G=V($.toString().replace(/^wss:/,"https:").replace(/^ws:/,"http:"));super($,{...Z,...G?{proxy:G}:{}})}},M}let N=globalThis.WebSocket;if(typeof N!=="function")return null;return N}class zN extends Error{code;reason;wasClean;constructor(N,Q){super(N);this.name="WebSocketCloseError",this.code=Q?.code,this.reason=Q?.reason,this.wasClean=Q?.wasClean}}function pN(N){let Q=N.readyState;return typeof Q==="number"?Q:void 0}function S(N){let Q=pN(N);return Q===void 0||Q===1}function q(N,Q=1000,V="done"){try{N.close(Q,V)}catch{}}function r(N,Q){if(Q.idleTimer)clearTimeout(Q.idleTimer);Q.idleTimer=setTimeout(()=>{if(Q.busy)return;q(Q.socket,1000,"idle_timeout"),H.delete(N)},yN)}async function k(N,Q,V,$=RN){let X=await cN();if(!X)throw Error("WebSocket transport is not available in this runtime");let Z=b(Q);return delete Z["OpenAI-Beta"],new Promise((G,J)=>{let Y=!1,P,O;try{O=new X(N,{headers:Z})}catch(F){J(F instanceof Error?F:Error(String(F)));return}let z=()=>{if(P)clearTimeout(P),P=void 0;O.removeEventListener("open",L),O.removeEventListener("error",W),O.removeEventListener("close",D),V?.removeEventListener("abort",j)},B=(F,K)=>{if(Y)return;if(Y=!0,z(),K)q(O,1000,K);J(F)},L=()=>{if(Y)return;Y=!0,z(),G(O)},W=(F)=>{B(LN(F))},D=(F)=>{B(KN(F))},j=()=>{B(Error("Request was aborted"),"aborted")};if(O.addEventListener("open",L),O.addEventListener("error",W),O.addEventListener("close",D),V?.addEventListener("abort",j),$>0)P=setTimeout(()=>{B(Error(`WebSocket connect timeout after ${$}ms`),"connect_timeout")},$);if(V?.aborted)j()})}async function lN(N,Q,V,$,X){if(!V){let Y=await k(N,Q,$,X);return{socket:Y,reused:!1,release:()=>q(Y)}}let Z=H.get(V);if(Z){if(Z.idleTimer)clearTimeout(Z.idleTimer),Z.idleTimer=void 0;if(!Z.busy&&S(Z.socket))return Z.busy=!0,{socket:Z.socket,entry:Z,reused:!0,release:({keep:Y}={})=>{if(!Y||!S(Z.socket)){q(Z.socket),H.delete(V);return}Z.busy=!1,r(V,Z)}};if(Z.busy){let Y=await k(N,Q,$,X);return{socket:Y,reused:!1,release:()=>{q(Y)}}}if(!S(Z.socket))q(Z.socket),H.delete(V)}let G=await k(N,Q,$,X),J={socket:G,busy:!0};return H.set(V,J),{socket:G,entry:J,reused:!1,release:({keep:Y}={})=>{if(!Y||!S(J.socket)){if(q(J.socket),J.idleTimer)clearTimeout(J.idleTimer);if(H.get(V)===J)H.delete(V);return}J.busy=!1,r(V,J)}}}function LN(N){if(N&&typeof N==="object"){let Q="message"in N?N.message:void 0;if(typeof Q==="string"&&Q.length>0)return Error(Q);let V="error"in N?N.error:void 0;if(V instanceof Error&&V.message.length>0)return V;if(V&&typeof V==="object"&&"message"in V){let $=V.message;if(typeof $==="string"&&$.length>0)return Error($)}}return Error("WebSocket error")}function KN(N){if(N&&typeof N==="object"){let Q="code"in N?N.code:void 0,V="reason"in N?N.reason:void 0,$="wasClean"in N?N.wasClean:void 0,X=typeof Q==="number"?` ${Q}`:"",Z=typeof V==="string"&&V.length>0?` ${V}`:"";if(!Z&&Q===qN)Z=" message too big";return new zN(`WebSocket closed${X}${Z}`.trim(),{code:typeof Q==="number"?Q:void 0,reason:typeof V==="string"&&V.length>0?V:void 0,wasClean:typeof $==="boolean"?$:void 0})}return Error("WebSocket closed")}async function dN(N){if(typeof N==="string")return N;if(N instanceof ArrayBuffer)return new TextDecoder().decode(new Uint8Array(N));if(ArrayBuffer.isView(N)){let Q=N;return new TextDecoder().decode(new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength))}if(N&&typeof N==="object"&&"arrayBuffer"in N){let V=await N.arrayBuffer();return new TextDecoder().decode(new Uint8Array(V))}return null}async function*aN(N,Q,V){let $=[],X=null,Z=!1,G=null,J=!1,Y=()=>{if(!X)return;let L=X;X=null,L()},P=(L)=>{(async()=>{let W=null;try{if(!L||typeof L!=="object"||!("data"in L))return;if(W=await dN(L.data),!W)return;let D=JSON.parse(W),j=typeof D.type==="string"?D.type:"";if(j==="response.completed"||j==="response.done"||j==="response.incomplete")J=!0,Z=!0;$.push(D),Y()}catch(D){G=new I(`Invalid Codex WebSocket JSON: ${h(D)}`,{cause:D,payload:W}),Z=!0,Y()}})()},O=(L)=>{G=LN(L),Z=!0,Y()},z=(L)=>{if(J){Z=!0,Y();return}if(!G)G=KN(L);Z=!0,Y()},B=()=>{G=Error("Request was aborted"),Z=!0,Y()};N.addEventListener("message",P),N.addEventListener("error",O),N.addEventListener("close",z),Q?.addEventListener("abort",B);try{while(!0){if(Q?.aborted)throw Error("Request was aborted");if($.length>0){yield $.shift();continue}if(Z)break;let L;await new Promise((W,D)=>{if(X=W,V!==void 0&&V>0)L=setTimeout(()=>{let j=Error(`WebSocket idle timeout after ${V}ms`);G=j,Z=!0,X=null,q(N,1000,"idle_timeout"),D(j)},V)}).finally(()=>{if(L)clearTimeout(L)})}if(G)throw G;if(!J)throw Error("WebSocket stream closed before response.completed")}finally{N.removeEventListener("message",P),N.removeEventListener("error",O),N.removeEventListener("close",z),Q?.removeEventListener("abort",B)}}function n(N){let{input:Q,previous_response_id:V,...$}=N;return $}function iN(N,Q){return JSON.stringify(N??[])===JSON.stringify(Q??[])}function rN(N,Q){return JSON.stringify(n(N))===JSON.stringify(n(Q))}function nN(N,Q){if(!rN(N,Q.lastRequestBody))return;let V=N.input??[],$=[...Q.lastRequestBody.input??[],...Q.lastResponseItems];if(V.length<$.length)return;let X=V.slice(0,$.length);if(!iN(X,$))return;return V.slice($.length)}function tN(N,Q){let V=N.continuation;if(!V)return Q;let $=nN(Q,V);if(!$||!V.lastResponseId)return N.continuation=void 0,Q;return{...Q,previous_response_id:V.lastResponseId,input:$}}async function*oN(N,Q,V,$){let X=!1;for await(let Z of N){if(!X)X=!0,$(),V.push({type:"start",partial:Q});yield Z}}async function sN(N,Q,V,$,X,Z,G,J,Y,P){let{socket:O,entry:z,reused:B,release:L}=await lN(N,V,P?.sessionId,P?.signal,Y),W=!0,D=P?.transport==="websocket-cached"||P?.transport==="auto",j=Q,F=D&&z?tN(z,j):j,K=P?.sessionId?y(P.sessionId):void 0;if(K){if(K.requests++,B)K.connectionsReused++;else K.connectionsCreated++;if(D)K.cachedContextRequests++;if(F.store===!0)K.storeTrueRequests++;if(K.lastInputItems=F.input?.length??0,F.previous_response_id)K.deltaRequests++,K.lastDeltaInputItems=F.input?.length??0,K.lastPreviousResponseId=F.previous_response_id;else K.fullContextRequests++,K.lastDeltaInputItems=void 0,K.lastPreviousResponseId=void 0}try{if(O.send(JSON.stringify({type:"response.create",...F})),await v(oN(JN(aN(O,P?.signal,J)),$,X,G),$,X,Z,{serviceTier:P?.serviceTier,resolveServiceTier:YN,applyServiceTierPricing:(R,U)=>GN(R,U,Z)}),P?.signal?.aborted)W=!1;else if(D&&z&&$.responseId){let R=g(Z,{messages:[$]},XN,{includeSystemPrompt:!1}).filter((U)=>U.type!=="function_call_output");z.continuation={lastRequestBody:j,lastResponseId:$.responseId,lastResponseItems:R}}}catch(R){if(z)z.continuation=void 0;throw W=!1,R}finally{L({keep:W})}}async function eN(N){let Q=await N.text(),V=Q||N.statusText||"Request failed",$;try{let Z=JSON.parse(Q)?.error;if(Z){let G=Z.code||Z.type||"";if(/usage_limit_reached|usage_not_included|rate_limit_exceeded/i.test(G)||N.status===429){let J=Z.plan_type?` (${Z.plan_type.toLowerCase()} plan)`:"",Y=Z.resets_at?Math.max(0,Math.round((Z.resets_at*1000-Date.now())/60000)):void 0,P=Y!==void 0?` Try again in ~${Y} min.`:"";$=`You have hit your ChatGPT usage limit${J}.${P}`.trim()}V=Z.message||$||V}}catch{}return{message:V,friendlyMessage:$}}function NQ(N){try{let Q=N.split(".");if(Q.length!==3)throw Error("Invalid token");let $=JSON.parse(atob(Q[1]))?.[BN]?.chatgpt_account_id;if(!$)throw Error("No account ID in token");return $}catch{throw Error("Failed to extract accountId from token")}}function QQ(){if(typeof globalThis.crypto?.randomUUID==="function")return globalThis.crypto.randomUUID();return`codex_${Date.now()}_${Math.random().toString(36).slice(2,10)}`}function ON(N,Q,V,$){let X=new Headers(N);for(let[G,J]of Object.entries(Q||{}))X.set(G,J);X.set("Authorization",`Bearer ${$}`),X.set("chatgpt-account-id",V),X.set("originator","pi");let Z=C?`pi (${C.platform()} ${C.release()}; ${C.arch()})`:"pi (browser)";return X.set("User-Agent",Z),X}function VQ(N,Q,V,$,X){let Z=ON(N,Q,V,$);if(Z.set("OpenAI-Beta","responses=experimental"),Z.set("accept","text/event-stream"),Z.set("content-type","application/json"),X)Z.set("session-id",X),Z.set("x-client-request-id",X);return Z}function ZQ(N,Q,V,$,X){let Z=ON(N,Q,V,$);return Z.delete("accept"),Z.delete("content-type"),Z.delete("OpenAI-Beta"),Z.delete("openai-beta"),Z.set("OpenAI-Beta",vN),Z.set("x-client-request-id",X),Z.set("session-id",X),Z}export{OQ as streamSimpleOpenAICodexResponses,SN as streamOpenAICodexResponses,jQ as resetOpenAICodexWebSocketDebugStats,DQ as getOpenAICodexWebSocketDebugStats,mN as closeOpenAICodexWebSocketSessions};
@@ -1 +0,0 @@
1
- import{g as B}from"./chunk-qgq96tbp.js";import"./chunk-vt4zpasm.js";import"./chunk-8yz1expv.js";import"./chunk-nzy3pjjm.js";import"./chunk-h270n69j.js";import"./chunk-mqbxagfd.js";import"./chunk-zhd2mkbr.js";import"./chunk-bdjhb77e.js";import"./chunk-p9xfyqh1.js";import"./chunk-31mjcykb.js";import"./chunk-hfp4hpca.js";import"./chunk-wrz9e73c.js";import"./chunk-1nh6xgek.js";import"./chunk-3rcc5s99.js";import"./chunk-20y3wte3.js";import"./chunk-5e1xqaj4.js";import"./chunk-ejfmxjw6.js";import"./chunk-7y8dng8t.js";import"./chunk-3t7mjvdv.js";import"./chunk-pgae67hk.js";import"./chunk-tsncwscz.js";import"./chunk-h2wsm7h3.js";import"./chunk-etces6ff.js";import"./chunk-yahb7wan.js";import"./chunk-mahxw48e.js";import"./chunk-wap08p4j.js";import"./chunk-nr89225z.js";import{Ah as w,ih as q}from"./chunk-b1e3tec3.js";import"./chunk-ws07a9kv.js";function O(){let{shareId:C,fileId:D}=k.useParams(),{start:E,version:G,compare:H,cmpLeft:J,cmpRight:K,cmpActive:N}=k.useSearch();return q(B,{shareId:C,initialFileId:D,startTime:E,versionId:G,compare:H,compareLeftId:J,compareRightId:K,compareActiveSide:N})}var k=w("/share/$shareId/files/$fileId")({component:O});export{k as Route};
@@ -1,3 +0,0 @@
1
- // @bun
2
- var f=new Set;function h(b){return f.add(b),()=>{f.delete(b)}}
3
- export{h as me};