@rizom/brain 0.2.0-alpha.367 → 0.2.0-alpha.368

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 (28) hide show
  1. package/dist/brain.js +37 -37
  2. package/dist/chunks/{app-yd32mksm.js → app-8ra52y7h.js} +2 -2
  3. package/dist/chunks/{index-jayjg24d.js → index-73p25fze.js} +3 -3
  4. package/dist/chunks/{index-jayjg24d.js.map → index-73p25fze.js.map} +1 -1
  5. package/dist/chunks/{index-4m0x16b0.js → index-btdnz7tq.js} +2 -2
  6. package/dist/chunks/{index-51vjv16n.js → index-ssjqpwz8.js} +2 -2
  7. package/dist/index.js +1 -1
  8. package/dist/model.js +38 -38
  9. package/dist/model.js.map +2 -2
  10. package/dist/ui/studio-app.css +5 -6
  11. package/dist/ui/studio-app.js +97 -97
  12. package/dist/ui/studio-app.js.map +8 -6
  13. package/dist/ui/studio-asset-manifest.json +10 -10
  14. package/dist/ui/studio-chunks/{account-view-x4x23bba.js → account-view-jaz2s37s.js} +1 -1
  15. package/dist/ui/studio-chunks/{main-1zqwy1pt.js → main-5kjr6001.js} +2 -2
  16. package/dist/ui/studio-chunks/{main-1zqwy1pt.js.map → main-5kjr6001.js.map} +2 -2
  17. package/dist/ui/studio-chunks/{main-gza6av7a.js → main-a0txvxhh.js} +3 -3
  18. package/dist/ui/studio-chunks/{main-gza6av7a.js.map → main-a0txvxhh.js.map} +4 -4
  19. package/dist/ui/studio-chunks/{main-9hc6fxah.js → main-fn39pm5j.js} +1 -1
  20. package/dist/ui/studio-chunks/studio-chat-workspace-tep5fwgz.js +5 -0
  21. package/dist/ui/studio-chunks/{studio-chat-workspace-htkcczf9.js.map → studio-chat-workspace-tep5fwgz.js.map} +3 -3
  22. package/package.json +1 -1
  23. package/dist/ui/studio-chunks/studio-chat-workspace-htkcczf9.js +0 -5
  24. /package/dist/chunks/{app-yd32mksm.js.map → app-8ra52y7h.js.map} +0 -0
  25. /package/dist/chunks/{index-4m0x16b0.js.map → index-btdnz7tq.js.map} +0 -0
  26. /package/dist/chunks/{index-51vjv16n.js.map → index-ssjqpwz8.js.map} +0 -0
  27. /package/dist/ui/studio-chunks/{account-view-x4x23bba.js.map → account-view-jaz2s37s.js.map} +0 -0
  28. /package/dist/ui/studio-chunks/{main-9hc6fxah.js.map → main-fn39pm5j.js.map} +0 -0
@@ -1,4 +1,4 @@
1
- import{sa as O}from"./main-1zqwy1pt.js";import{eb as p,ib as z,jb as y}from"./main-912t6xba.js";var kn=p(z(),1);var Bt=p(y(),1);var pe=p(y(),1);var Xt=p(y(),1);var Ao=p(y(),1);var mn=p(y(),1);var fn=p(y(),1);var Io=p(y(),1);var pn=p(z(),1);var tt=p(y(),1),lt=p(y(),1);var Et=p(y(),1);var mt=p(y(),1);var ft=p(y(),1);var ge=p(y(),1),gn=p(y(),1);var hn=p(y(),1);var vn=p(y(),1);var Po=p(y(),1);var bn=p(y(),1);var jn=p(y(),1);var yn=p(y(),1);var _=p(y(),1);var Y=p(y(),1);var he=p(y(),1);var F=p(z(),1),ot=p(z(),1),wn=p(y(),1),qn=p(z(),1),R=p(z(),1),ve=p(z(),1),zn=p(z(),1),Q=p(z(),1),Qr=p(z(),1),w=p(z(),1),Nn=p(z(),1),C=p(z(),1),$n=p(y(),1),zt=p(z(),1),be=p(y(),1),J=p(z(),1),Mn=p(y(),1),Yt=p(z(),1),Sn=p(y(),1),P=p(z(),1),En=p(z(),1),Tn=p(z(),1),_t=p(z(),1),W=p(z(),1),Qt=p(z(),1),On=p(z(),1),Dn=p(z(),1),S=p(z(),1),Nt=p(z(),1),Rn=p(z(),1),D=p(y(),1),Z=p(y(),1),An=p(y(),1),Jt=p(z(),1),B=p(y(),1),In=p(y(),1);var $t=p(y(),1);var yt=p(y(),1);var j=p(z(),1),r=p(y(),1),et=p(z(),1),Co=Object.create,Go=Object.getPrototypeOf,le=Object.defineProperty,Vo=Object.getOwnPropertyNames,Wo=Object.prototype.hasOwnProperty;function Lo(t){return this[t]}var Ho,Bo,je=(t,e,n)=>{var o=t!=null&&typeof t==="object";if(o){var x=e?Ho??=new WeakMap:Bo??=new WeakMap,a=x.get(t);if(a)return a}n=t!=null?Co(Go(t)):{};let s=e||!t||!t.__esModule?le(n,"default",{value:t,enumerable:!0}):n;if(t&&typeof t==="object"||typeof t==="function"){for(let l of Vo(t))if(!Wo.call(s,l))le(s,l,{get:Lo.bind(t,l),enumerable:!0})}if(o)x.set(t,s);return s},Pn=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Xo=(t)=>t;function Yo(t,e){this[t]=Xo.bind(null,e)}var Cn=(t,e)=>{for(var n in e)le(t,n,{get:e[n],enumerable:!0,configurable:!0,set:Yo.bind(e,n)})},_o=Pn(function(t){(function(){function e(){}function n(c){return""+c}function o(c,i,d){var h=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;try{n(h);var f=!1}catch(g){f=!0}return f&&(console.error("The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",typeof Symbol==="function"&&Symbol.toStringTag&&h[Symbol.toStringTag]||h.constructor.name||"Object"),n(h)),{$$typeof:m,key:h==null?null:""+h,children:c,containerInfo:i,implementation:d}}function x(c,i){if(c==="font")return"";if(typeof i==="string")return i==="use-credentials"?i:""}function a(c){return c===null?"`null`":c===void 0?"`undefined`":c===""?"an empty string":'something with type "'+typeof c+'"'}function s(c){return c===null?"`null`":c===void 0?"`undefined`":c===""?"an empty string":typeof c==="string"?JSON.stringify(c):typeof c==="number"?"`"+c+"`":'something with type "'+typeof c+'"'}function l(){var c=k.H;return c===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
1
+ import{sa as O}from"./main-5kjr6001.js";import{eb as p,ib as z,jb as y}from"./main-912t6xba.js";var kn=p(z(),1);var Bt=p(y(),1);var pe=p(y(),1);var Xt=p(y(),1);var Ao=p(y(),1);var mn=p(y(),1);var fn=p(y(),1);var Io=p(y(),1);var pn=p(z(),1);var tt=p(y(),1),lt=p(y(),1);var Et=p(y(),1);var mt=p(y(),1);var ft=p(y(),1);var ge=p(y(),1),gn=p(y(),1);var hn=p(y(),1);var vn=p(y(),1);var Po=p(y(),1);var bn=p(y(),1);var jn=p(y(),1);var yn=p(y(),1);var _=p(y(),1);var Y=p(y(),1);var he=p(y(),1);var F=p(z(),1),ot=p(z(),1),wn=p(y(),1),qn=p(z(),1),R=p(z(),1),ve=p(z(),1),zn=p(z(),1),Q=p(z(),1),Qr=p(z(),1),w=p(z(),1),Nn=p(z(),1),C=p(z(),1),$n=p(y(),1),zt=p(z(),1),be=p(y(),1),J=p(z(),1),Mn=p(y(),1),Yt=p(z(),1),Sn=p(y(),1),P=p(z(),1),En=p(z(),1),Tn=p(z(),1),_t=p(z(),1),W=p(z(),1),Qt=p(z(),1),On=p(z(),1),Dn=p(z(),1),S=p(z(),1),Nt=p(z(),1),Rn=p(z(),1),D=p(y(),1),Z=p(y(),1),An=p(y(),1),Jt=p(z(),1),B=p(y(),1),In=p(y(),1);var $t=p(y(),1);var yt=p(y(),1);var j=p(z(),1),r=p(y(),1),et=p(z(),1),Co=Object.create,Go=Object.getPrototypeOf,le=Object.defineProperty,Vo=Object.getOwnPropertyNames,Wo=Object.prototype.hasOwnProperty;function Lo(t){return this[t]}var Ho,Bo,je=(t,e,n)=>{var o=t!=null&&typeof t==="object";if(o){var x=e?Ho??=new WeakMap:Bo??=new WeakMap,a=x.get(t);if(a)return a}n=t!=null?Co(Go(t)):{};let s=e||!t||!t.__esModule?le(n,"default",{value:t,enumerable:!0}):n;if(t&&typeof t==="object"||typeof t==="function"){for(let l of Vo(t))if(!Wo.call(s,l))le(s,l,{get:Lo.bind(t,l),enumerable:!0})}if(o)x.set(t,s);return s},Pn=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Xo=(t)=>t;function Yo(t,e){this[t]=Xo.bind(null,e)}var Cn=(t,e)=>{for(var n in e)le(t,n,{get:e[n],enumerable:!0,configurable:!0,set:Yo.bind(e,n)})},_o=Pn(function(t){(function(){function e(){}function n(c){return""+c}function o(c,i,d){var h=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;try{n(h);var f=!1}catch(g){f=!0}return f&&(console.error("The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",typeof Symbol==="function"&&Symbol.toStringTag&&h[Symbol.toStringTag]||h.constructor.name||"Object"),n(h)),{$$typeof:m,key:h==null?null:""+h,children:c,containerInfo:i,implementation:d}}function x(c,i){if(c==="font")return"";if(typeof i==="string")return i==="use-credentials"?i:""}function a(c){return c===null?"`null`":c===void 0?"`undefined`":c===""?"an empty string":'something with type "'+typeof c+'"'}function s(c){return c===null?"`null`":c===void 0?"`undefined`":c===""?"an empty string":typeof c==="string"?JSON.stringify(c):typeof c==="number"?"`"+c+"`":'something with type "'+typeof c+'"'}function l(){var c=k.H;return c===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
2
2
  1. You might have mismatching versions of React and the renderer (such as React DOM)
3
3
  2. You might be breaking the Rules of Hooks
4
4
  3. You might have more than one copy of React in the same app
@@ -0,0 +1,5 @@
1
+ import{$ as gt,F as Kt,G as Ft,H as Qt,_ as Y,ea as Yt,h as _t,j as mt,la as Xt,s as ht,u as Jt,w as Q,x as Gt}from"./main-a0txvxhh.js";import"./main-7a0tw7ba.js";import{Da as Bt,Ha as Wt,Ia as Vt,Va as t,bb as te,cb as ee,sa as Zt,va as Ut,ya as O}from"./main-5kjr6001.js";import{eb as pt,ib as Ve}from"./main-912t6xba.js";var n={shell:{k1xSpc:"xrvj5dj",kUk6DE:"x98rzlu",kAzted:"x2lwn1j",k7Eaqz:"xeuugli",kVQacm:"xb3r6kr",$$css:!0},root:{k1xSpc:"x78zum5",kXwgrk:"xdt5ytf",kZKoxP:"xtdtrs8",kskxy:"x1wj9ous",kAzted:"x2lwn1j",k7Eaqz:"xeuugli",kVQacm:"xb3r6kr",$$css:!0},frame:{k1xSpc:"x78zum5",kXwgrk:"xdt5ytf",k7Eaqz:"xeuugli",kAzted:"x2lwn1j",kVQacm:"xb3r6kr",kmVPX3:"x11alobv x54aoxz",kOIVth:"x33pbmt",$$css:!0},room:{k1xSpc:"xrvj5dj",kumcoG:"x8z353p xf4kbi9",kOIVth:"x1rzw5jd",kUk6DE:"x98rzlu",kAzted:"x2lwn1j",k7Eaqz:"xeuugli",kVQacm:"xb3r6kr",$$css:!0},roomWithoutSessions:{kumcoG:"x1mkdm3x",$$css:!0},emptyThreadHead:{k1K539:"xod5an3",$$css:!0},emptyConversation:{kogj98:"x1ghz6dp",$$css:!0},sessions:{k1xSpc:"x1lliihq xubcuz8",k7Eaqz:"xeuugli",kAzted:"x2lwn1j",kORKVm:"x1odjw0f",$$css:!0},picker:{k1xSpc:"xrvj5dj",k9llMU:"x16p6thf",kskxy:"x1j65ot3",kAzted:"x2lwn1j",kVQacm:"xb3r6kr",$$css:!0},thread:{k1xSpc:"x78zum5",kXwgrk:"xdt5ytf",k7Eaqz:"xeuugli",kAzted:"x2lwn1j",kVQacm:"xb3r6kr",$$css:!0},threadHead:{k1xSpc:"x78zum5",kGNEyG:"x1pha0wt",kjj79g:"x1qughib",kOIVth:"x1c1vhfx",k7Eaqz:"xeuugli",k1K539:"x91k8ka",$$css:!0},title:{kogj98:"x1ghz6dp",kMv6JI:"xssy22x",kGuDYH:"x1pvqxga",ka26j:"xkhxzli",k63SB2:"xo1l8bm",kLWn49:"xwn7fz2",kHjlTd:"xj0a0fe",kMwMTN:"xqvuw85",$$css:!0},headCopy:{k7Eaqz:"xeuugli",kUk6DE:"x98rzlu",$$css:!0},actions:{k1xSpc:"x78zum5",kwnvtZ:"x1a02dak",kGNEyG:"x6s0dn4",kOIVth:"x883omv",$$css:!0},sessionList:{k1xSpc:"xrvj5dj",kfiyM8:"x10ukxgv",kAzted:"x2lwn1j",k7Eaqz:"xeuugli",kORKVm:"x1odjw0f",$$css:!0},session:{k1xSpc:"xrvj5dj",kOIVth:"x17d4w8g",kzqmXN:"xh8yej3",k7Eaqz:"xeuugli",kmVPX3:"x1g8o3q3",kMzoRj:"xc342km",kt9PQ7:"xso031l",ksu8eU:"x1y0btm7",kVAM5u:"xy1lt07",kWkggS:"xjbqb8w",kMwMTN:"xqvuw85",k9WMMc:"xdpxx8g",kkrTdU:"x1ypdohk",kDPRdz:"x1711cle",k3Woio:"x16dl9wz",kiEn40:"x1bqaal",$$css:!0},activeSession:{kMwMTN:"x1myn341",$$css:!0},sessionTitle:{kMv6JI:"x5ddh9m",kGuDYH:"xif65rj",k63SB2:"xo1l8bm",kLWn49:"xfrs9s4",kHjlTd:"xj0a0fe",k1xSpc:"x104kibb",kgKLqz:"x1ua5tub",kJFfOR:"x1h7i4cw",kVQacm:"xb3r6kr",$$css:!0},timestamp:{kMv6JI:"xa9opjo",kGuDYH:"x1j6dyjg",kLWn49:"xa7kkou",kMwMTN:"x1ar3pfp",kHjlTd:"xj0a0fe",$$css:!0},summary:{kAzted:"x21xpn4",kGO01o:"xsag5q8",kMv6JI:"x5ddh9m",kGuDYH:"xfifm61",kMwMTN:"x1ar3pfp",kkrTdU:"x1ypdohk",$$css:!0},context:{k7Eaqz:"xeuugli",kt9PQ7:"xso031l",kfdmCh:"x1q0q8m5",kL6WhQ:"xpqg30t",$$css:!0},contextBody:{k1xSpc:"xrvj5dj",kOIVth:"xou54vl",kskxy:"x1551h31 x1jku9b6",kORKVm:"x1odjw0f",kGO01o:"x1l90r2v",k7Eaqz:"xeuugli",$$css:!0},contextItem:{k1xSpc:"xrvj5dj",kOIVth:"x17d4w8g",k7Eaqz:"xeuugli",kmVPX3:"x1b4vry6",kt9PQ7:"xso031l",kfdmCh:"x1q0q8m5",kL6WhQ:"xpqg30t",kMv6JI:"x5ddh9m",kGuDYH:"xfifm61",kLWn49:"x1dbl2gt",$$css:!0},threadScroll:{kUk6DE:"x98rzlu",kAzted:"x2lwn1j",k7Eaqz:"xeuugli",kORKVm:"x1odjw0f",kZeWKH:"xish69e",k5wCbM:"x1597r2g",k6w4Gs:"xgwpcrc",$$css:!0},manuscript:{k7Eaqz:"xeuugli",$$css:!0},turn:{k1xSpc:"xrvj5dj",kumcoG:"xpczwk3 xfs71jk",kOIVth:"xou54vl",kmVPX3:"x10czhz2",kt9PQ7:"xso031l",kfdmCh:"x1q0q8m5",kL6WhQ:"xpqg30t",k7Eaqz:"xeuugli",$$css:!0},speaker:{kLKAdn:"x1yrsyyn",kMv6JI:"xa9opjo",kGuDYH:"x1j6dyjg",kLWn49:"x1dbl2gt",kMwMTN:"x1ar3pfp",$$css:!0},turnBody:{k1xSpc:"xrvj5dj",kOIVth:"x1v2ro7d",k7Eaqz:"xeuugli",kMv6JI:"xssy22x",kGuDYH:"xosj86m",k63SB2:"xo1l8bm",kLWn49:"x11m8ghp",kMwMTN:"xqvuw85",kHjlTd:"xj0a0fe",$$css:!0},userBody:{k63SB2:"x1s688f",$$css:!0},paragraph:{kogj98:"x1ghz6dp",khDVqt:"x126k92a",kHjlTd:"xj0a0fe",$$css:!0},cards:{k1xSpc:"xrvj5dj",kOIVth:"x1v2ro7d",k7Eaqz:"xeuugli",$$css:!0},card:{k1xSpc:"xrvj5dj",kOIVth:"x883omv",k7Eaqz:"xeuugli",kmVPX3:"x1tamke2",kMzoRj:"xmkeg23",ksu8eU:"x1y0btm7",kVAM5u:"xy1lt07",kaIpWk:"x1sxf85j",kMv6JI:"x5ddh9m",kGuDYH:"xfifm61",k63SB2:"xo1l8bm",kLWn49:"x1dbl2gt",kHjlTd:"xj0a0fe",kXHlph:"xw2csxc",$$css:!0},kicker:{kMv6JI:"xa9opjo",kGuDYH:"x1j6dyjg",kMwMTN:"x1ar3pfp",$$css:!0},cardHeading:{kogj98:"x1ghz6dp",kGuDYH:"xif65rj",k63SB2:"x1s688f",$$css:!0},cardText:{kogj98:"x1ghz6dp",kMv6JI:"x5ddh9m",kGuDYH:"xfifm61",kLWn49:"x1dbl2gt",$$css:!0},empty:{kogj98:"xhv1u6h",kMv6JI:"x5ddh9m",kGuDYH:"xfifm61",kLWn49:"x1dbl2gt",kMwMTN:"x1ar3pfp",kHjlTd:"xj0a0fe",$$css:!0},error:{kMwMTN:"x1mel2pz",$$css:!0},form:{k1xSpc:"xrvj5dj",kOIVth:"x1v2ro7d",k7Eaqz:"xeuugli",$$css:!0},composer:{kmuXW:"x2lah0s",k7Eaqz:"xeuugli",kLKAdn:"xz9dl7a",kEafiO:"x178xt8z",kPef9Z:"x13fuv20",kLZC3w:"xvg7k2t",$$css:!0},fieldLabel:{k1xSpc:"xrvj5dj",kOIVth:"x167g77z",kMv6JI:"x5ddh9m",kGuDYH:"xfifm61",kMwMTN:"xqvuw85",$$css:!0},input:{kzqmXN:"xh8yej3",kB7OPa:"x9f619",k7Eaqz:"xeuugli",kAzted:"xseoqlg",kskxy:"x19aweqf",kHenm0:"x288g5",kmVPX3:"xc7ga6q",kMzoRj:"xmkeg23",ksu8eU:"x1y0btm7",kVAM5u:"xy1lt07",kaIpWk:"x1sxf85j",kWkggS:"xjbqb8w",kMv6JI:"x5ddh9m",kGuDYH:"xif65rj",kLWn49:"x1evy7pa",kMwMTN:"xqvuw85",k3Woio:"x16dl9wz",kiEn40:"x7s97pk",$$css:!0},attachButton:{k1xSpc:"x3nfvp2",kGNEyG:"x6s0dn4",kAzted:"x1ba4aug",kmVPX3:"x153ncpu",kB7OPa:"x9f619",kMzoRj:"xmkeg23",ksu8eU:"x1y0btm7",kVAM5u:"xy1lt07",kaIpWk:"x1sxf85j",kMv6JI:"x5ddh9m",kGuDYH:"xfifm61",kMwMTN:"xqvuw85",kkrTdU:"x1ypdohk",k8PahR:"xt2bx3g",kfQpEX:"x1fanpfn",$$css:!0},uploadInput:{kVAEAm:"x10l6tqk",kzqmXN:"x1i1rx1s",kZKoxP:"xjm9jq1",kz4h6p:"x1hyvwdk",kVQacm:"xb3r6kr",khDVqt:"xuxw1ft",$$css:!0},uploadList:{k1xSpc:"x78zum5",kwnvtZ:"x1a02dak",kOIVth:"x167g77z",k1K539:"xod5an3",$$css:!0},upload:{k1xSpc:"x1rg5ohu",kogj98:"x1ghz6dp",ks0D6T:"x193iq5w",kMv6JI:"xa9opjo",kGuDYH:"x1j6dyjg",k63SB2:"xo1l8bm",kMwMTN:"x1ar3pfp",kHjlTd:"xj0a0fe",$$css:!0},button:{kAzted:"x1ba4aug",kmVPX3:"x153ncpu",kMzoRj:"xmkeg23",ksu8eU:"x1y0btm7",kVAM5u:"xy1lt07",kaIpWk:"x1sxf85j",kWkggS:"xjbqb8w",kMwMTN:"xqvuw85",kMv6JI:"x5ddh9m",kGuDYH:"xfifm61",kkrTdU:"x1ypdohk",k3Woio:"x16dl9wz",kiEn40:"x7s97pk",kWCcOm:"xijokvz",kYPGJ8:"xtgyt42",$$css:!0},primaryButton:{kWkggS:"x15vqgvx",kVAM5u:"xawfzfr",kMwMTN:"xb8ja0n",$$css:!0},subheading:{kogj98:"x1ghz6dp",kMv6JI:"x5ddh9m",kGuDYH:"xif65rj",k63SB2:"x1s688f",kLWn49:"x1evy7pa",$$css:!0}};function s(e,...o){return`${e} ${Zt(...o).className??""}`}var rt=t.object({type:t.literal("event"),event:t.string().min(1),fromState:t.string().min(1).optional()}),ao=t.object({conversationId:t.string().min(1),interfaceType:t.string().min(1),channelId:t.string().min(1).optional(),channelName:t.string().min(1),userPermissionLevel:t.enum(["admin","trusted","public"]),isAnchor:t.boolean(),action:rt});var me=1,he="/api/chat",l=t.string().trim().min(1).max(256),jt=t.string().regex(/^upload-[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i),lt=t.string().trim().min(1).max(48),dt=t.string().datetime(),Ct=t.string().regex(/^\/(?!\/)/).max(2048),U=t.string().regex(/^(?:\/(?!\/)|https?:\/\/)/).max(2048),ge=t.looseObject({kind:t.literal("tool-approval"),id:l,toolCallId:l.optional(),toolName:t.string().trim().min(1).max(256),input:t.record(t.string(),t.unknown()).optional(),summary:t.string().max(4096),completionSummary:t.string().max(4096).optional(),preview:t.string().max(1e5).optional(),state:t.enum(["approval-requested","approval-responded","output-available","output-denied","output-error"]),output:t.unknown().optional(),error:t.string().max(4096).optional()}),xe=t.looseObject({entityType:t.string().trim().min(1).max(128).optional(),entityId:l.optional(),attachmentType:t.string().trim().min(1).max(128).optional()}),Se=t.looseObject({mediaType:t.string().trim().min(1).max(255),url:U,downloadUrl:U.optional(),previewUrl:U.optional(),filename:t.string().trim().min(1).max(255).optional(),sizeBytes:t.number().int().nonnegative().optional(),source:xe.optional()}),At=t.looseObject({kind:t.literal("attachment"),id:l,jobId:l.optional(),title:t.string().max(4096),description:t.string().max(20000).optional(),attachment:Se}),ye=t.looseObject({id:l,title:t.string().max(4096).optional(),source:t.string().trim().min(1).max(512),url:U.optional(),entityType:t.string().trim().min(1).max(128).optional(),entityId:l.optional(),excerpt:t.string().max(20000).optional(),provenance:t.record(t.string(),t.unknown()).optional()}),Ot=t.looseObject({kind:t.literal("sources"),id:l,title:t.string().max(4096).optional(),sources:t.array(ye).min(1).max(100)}),fe=t.discriminatedUnion("type",[t.object({type:t.literal("prompt"),id:l,label:t.string().trim().min(1).max(256),prompt:t.string().min(1).max(1e5),description:t.string().max(4096).optional()}),t.object({type:t.literal("event"),id:l,label:t.string().trim().min(1).max(256),event:t.string().trim().min(1).max(256),fromState:t.string().trim().min(1).max(256).optional(),description:t.string().max(4096).optional()})]),wt=t.looseObject({kind:t.literal("actions"),id:l,title:t.string().max(4096).optional(),actions:t.array(fe).min(1).max(100)}),Nt=t.discriminatedUnion("kind",[ge,At,Ot,wt]);var ke=t.object({id:l,toolCallId:l.optional(),toolName:t.string().trim().min(1).max(256),summary:t.string().max(4096),completionSummary:t.string().max(4096).optional(),preview:t.string().max(1e5).optional(),args:t.unknown()}),Tt=t.object({toolName:t.string().trim().min(1).max(256),args:t.record(t.string(),t.unknown()).optional(),jobId:l.optional(),data:t.unknown().optional(),error:t.object({message:t.string().max(4096),code:t.string().trim().min(1).max(256).optional()}).optional()}),ze=t.looseObject({text:t.string().max(1e6),toolResults:t.array(Tt).max(100).optional(),cards:t.array(Nt).max(100).optional(),pendingConfirmations:t.array(ke).max(100).optional(),usage:t.object({promptTokens:t.number().int().nonnegative(),completionTokens:t.number().int().nonnegative(),totalTokens:t.number().int().nonnegative()})});function ve(e=he){let o=be(e);return{stream:o,actions:`${o}/actions`,sessions:`${o}/sessions`,sessionArchive:`${o}/sessions/archive`,messages:`${o}/messages`,uploads:`${o}/uploads`,contextSessions:`${o}/context-sessions`,documentAttachments:`${o}/attachments/document`,imageAttachments:`${o}/attachments/image`,jobStatus:`${o}/jobs/status`}}function be(e){let o=e.trim();if(!o.startsWith("/")||o.startsWith("//")||o.length>512||/[\s"'<>\\]/u.test(o)||o.includes("?")||o.includes("#"))throw Error("Chat API path must be a same-origin absolute path without query or fragment");let r=o.replace(/\/+$/,"");if(r.length===0)throw Error("Chat API path must not be the site root");return r}var Rt=t.strictObject({version:t.literal(1),sourceId:t.string().trim().regex(/^[a-z][a-z0-9-]*$/).max(64),itemId:t.string().trim().min(1).max(300),titleSeed:t.string().trim().min(1).max(160).refine((e)=>!/[\p{Cc}\p{Cf}]/u.test(e))}),Ze=t.looseObject({id:l,title:lt,lastActiveAt:dt,contextHandoff:Rt.optional()}),Ce=t.looseObject({sessions:t.array(Ze).max(100)}),Ie=t.looseObject({kind:t.string().trim().min(1).max(64),id:l}),je=t.looseObject({kind:t.literal("text"),filename:t.string().trim().min(1).max(255),mediaType:t.string().trim().min(1).max(255),sizeBytes:t.number().int().nonnegative(),createdAt:dt,source:Ie.optional()}),Ae=t.looseObject({id:l,role:t.enum(["user","assistant"]),content:t.string().max(1e6),attachments:t.array(je).max(100).optional(),cards:t.array(Nt).max(100).optional()}),Oe=t.looseObject({messages:t.array(Ae).max(100)}),ro=t.object({type:t.literal("text"),text:t.string().max(1e6)}),lo=t.object({type:t.literal("file"),mediaType:t.string().trim().min(1).max(255).optional(),filename:t.string().trim().min(1).max(255).optional(),url:t.string().min(1).max(2000000)}),Lt=t.object({kind:t.literal("upload"),id:jt}),co=t.object({type:t.literal("data-upload"),data:t.looseObject({ref:Lt})}),we=t.object({id:l,approved:t.boolean(),toolCallId:l.optional(),toolName:t.string().trim().min(1).max(256).optional(),input:t.record(t.string(),t.unknown()).optional(),title:t.string().max(4096).optional()}),uo=t.looseObject({state:t.literal("approval-responded"),toolCallId:l.optional(),toolName:t.string().trim().min(1).max(256).optional(),input:t.record(t.string(),t.unknown()).optional(),title:t.string().max(4096).optional(),approval:we}),ct=t.object({id:l.optional(),role:t.enum(["user","assistant","system"]),parts:t.array(t.unknown()).max(1000).optional(),content:t.string().max(1e6).optional()}),Ne=(e)=>t.string().trim().min(1).max(e).refine((o)=>!/[\p{Cc}\p{Cf}]/u.test(o)),Te=t.strictObject({sourceId:t.string().trim().regex(/^[a-z][a-z0-9-]*$/).max(64),itemId:t.string().trim().min(1).max(300),label:Ne(160)}),Re=t.object({id:l.optional(),messages:t.array(ct).min(1).max(200),trigger:t.string().trim().min(1).max(64).optional(),inboxContext:Te.optional()}).strict(),Pt=t.enum(["pending","processing","completed","failed"]),Le=t.looseObject({type:t.enum(["job","batch"]),status:Pt,operationType:t.enum(["file_operations","content_operations","data_processing","batch_processing"]),operationTarget:t.string().max(1024).optional(),message:t.string().max(4096).optional(),progress:t.object({current:t.number().nonnegative(),total:t.number().nonnegative(),percentage:t.number().min(0).max(100)}).optional()}),Pe=t.looseObject({status:t.enum(["tool-running","tool-completed","tool-awaiting-approval","tool-failed"]),toolName:t.string().trim().min(1).max(256),error:t.string().max(4096).optional()}),Ee=t.discriminatedUnion("type",[t.looseObject({type:t.literal("start"),messageId:l.optional()}),t.looseObject({type:t.literal("start-step")}),t.looseObject({type:t.literal("finish-step")}),t.looseObject({type:t.literal("finish"),finishReason:t.enum(["length","error","stop","content-filter","tool-calls","other"]).optional()}),t.looseObject({type:t.literal("abort"),reason:t.string().max(4096).optional()}),t.looseObject({type:t.literal("error"),errorText:t.string().max(20000)}),t.looseObject({type:t.literal("text-start"),id:l}),t.looseObject({type:t.literal("text-delta"),id:l,delta:t.string().max(1e6)}),t.looseObject({type:t.literal("text-end"),id:l}),t.looseObject({type:t.literal("reasoning-start"),id:l}),t.looseObject({type:t.literal("reasoning-delta"),id:l,delta:t.string().max(1e6)}),t.looseObject({type:t.literal("reasoning-end"),id:l}),t.looseObject({type:t.literal("tool-input-start"),toolCallId:l,toolName:t.string().trim().min(1).max(256),title:t.string().max(4096).optional()}),t.looseObject({type:t.literal("tool-input-delta"),toolCallId:l,inputTextDelta:t.string().max(1e6)}),t.looseObject({type:t.literal("tool-input-available"),toolCallId:l,toolName:t.string().trim().min(1).max(256),input:t.unknown(),title:t.string().max(4096).optional()}),t.looseObject({type:t.literal("tool-input-error"),toolCallId:l,toolName:t.string().trim().min(1).max(256),input:t.unknown(),errorText:t.string().max(20000),title:t.string().max(4096).optional()}),t.looseObject({type:t.literal("tool-approval-request"),approvalId:l,toolCallId:l}),t.looseObject({type:t.literal("tool-output-available"),toolCallId:l,output:t.unknown(),preliminary:t.boolean().optional()}),t.looseObject({type:t.literal("tool-output-error"),toolCallId:l,errorText:t.string().max(20000)}),t.looseObject({type:t.literal("tool-output-denied"),toolCallId:l}),t.looseObject({type:t.literal("source-url"),sourceId:l,url:U,title:t.string().max(4096).optional()}),t.looseObject({type:t.literal("source-document"),sourceId:l,mediaType:t.string().trim().min(1).max(255),title:t.string().max(4096),filename:t.string().trim().min(1).max(255).optional()}),t.looseObject({type:t.literal("file"),url:U,mediaType:t.string().trim().min(1).max(255)}),t.looseObject({type:t.literal("data-progress"),id:l.optional(),data:Le,transient:t.boolean().optional()}),t.looseObject({type:t.literal("data-status"),id:l.optional(),data:Pe,transient:t.boolean().optional()}),t.looseObject({type:t.literal("data-tool-result"),id:l.optional(),data:Tt,transient:t.boolean().optional()}),t.looseObject({type:t.literal("data-actions"),id:l.optional(),data:wt,transient:t.boolean().optional()}),t.looseObject({type:t.literal("data-sources"),id:l.optional(),data:Ot,transient:t.boolean().optional()}),t.looseObject({type:t.literal("data-attachment"),id:l.optional(),data:At,transient:t.boolean().optional()})]),$e=t.strictObject({conversationId:l}),Me=t.object({title:lt}).strict(),qe=t.object({renamed:t.boolean(),title:lt}),He=t.object({archived:t.boolean()}),Ue=t.object({deleted:t.boolean()}),De=t.object({conversationId:l,action:rt}).strict(),_e=t.looseObject({id:l,status:Pt,message:t.string().max(4096).optional()}),Be=t.looseObject({id:jt,ref:Lt,filename:t.string().trim().min(1).max(255),mediaType:t.string().trim().min(1).max(255),sizeBytes:t.number().int().nonnegative(),createdAt:dt,url:Ct,downloadUrl:Ct}).refine((e)=>e.id===e.ref.id,{path:["ref","id"],message:"Upload response ids must match"});class R extends Error{operation;status;kind;constructor(e,o,r="http"){super(`Chat API could not ${e} (${o})`);this.name="ChatApiError",this.operation=e,this.status=o,this.kind=r}}function It(e){let o=e.endsWith("\r")?e.slice(0,-1):e;if(!o.startsWith("data:"))return;let r=o.slice(5).trimStart();if(r.length===0||r==="[DONE]")return;let g;try{g=JSON.parse(r)}catch{throw new R("read stream",502,"invalid-response")}let d=Ee.safeParse(g);if(!d.success)throw new R("read stream",502,"invalid-response");return d.data}async function*Et(e){if(!e.ok)throw new R("read stream",e.status);if(!e.body)throw new R("read stream",502,"invalid-response");let o=e.body.getReader(),r=new TextDecoder,g="";try{for(;;){let{value:d,done:p}=await o.read();g+=r.decode(d,{stream:!p});let x=g.indexOf(`
2
+ `);while(x>=0){let u=g.slice(0,x);g=g.slice(x+1);let h=It(u);if(h)yield h;x=g.indexOf(`
3
+ `)}if(p)break}if(g.length>0){let d=It(g);if(d)yield d}}finally{o.releaseLock()}}function $t(e={}){let o=ve(e.apiPath),r=e.fetch??globalThis.fetch,g=e.credentials??"include";async function d(u,h,f,k){let E=await r(h,{...k,credentials:g});if(!E.ok)throw new R(u,E.status);let N;try{N=await E.json()}catch{throw new R(u,502,"invalid-response")}let I=f.safeParse(N);if(!I.success)throw new R(u,502,"invalid-response");return I.data}function p(u,h){let f=l.parse(h);return`${u}?id=${encodeURIComponent(f)}`}function x(u,h,f){let k=p(u,h);return f?`${k}&download=1`:k}return{version:me,paths:o,async streamMessages(u,h={}){let f=Re.parse(u),k=await r(o.stream,{method:"POST",credentials:g,headers:{"Content-Type":"application/json"},body:JSON.stringify(f),...h.signal?{signal:h.signal}:{}});if(!k.ok)throw new R("send messages",k.status);return k},async listSessions(){return(await d("list sessions",o.sessions,Ce)).sessions},async getMessages(u){return(await d("load messages",p(o.messages,u),Oe)).messages},async renameSession(u,h){let f=Me.parse({title:h});return d("rename session",p(o.sessions,u),qe,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(f)})},async archiveSession(u){return d("archive session",p(o.sessionArchive,u),He,{method:"PUT"})},async deleteSession(u){return d("delete session",p(o.sessions,u),Ue,{method:"DELETE"})},getJobStatus(u){return d("load job status",p(o.jobStatus,u),_e)},openContextSession(u){return d("open context session",o.contextSessions,$e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(Rt.parse(u))})},runAction(u){let h=De.parse(u);return d("run action",o.actions,ze,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(h)})},async upload(u,h){let f=t.string().trim().min(1).max(255).parse(h),k=new FormData;return k.set("file",u,f),d("upload file",o.uploads,Be,{method:"POST",body:k})},getUploadUrl(u,h=!1){return x(o.uploads,u,h)},getDocumentAttachmentUrl(u,h=!1){return x(o.documentAttachments,u,h)},getImageAttachmentUrl(u,h=!1){return x(o.imageAttachments,u,h)}}}var c=pt(Ve(),1);function Mt(){return{messageId:"assistant-stream",text:"",cards:[],approvals:[],progress:[],statuses:[],toolInputs:{},finished:!1,error:null}}function qt(e,o){switch(o.type){case"start":return o.messageId?{...e,messageId:o.messageId}:e;case"text-delta":return{...e,text:`${e.text}${o.delta}`};case"tool-input-available":return{...e,toolInputs:{...e.toolInputs,[o.toolCallId]:{toolCallId:o.toolCallId,toolName:o.toolName,input:o.input,...o.title?{title:o.title}:{}}}};case"tool-approval-request":{let r=e.toolInputs[o.toolCallId],g={approvalId:o.approvalId,toolCallId:o.toolCallId,toolName:r?.toolName??"tool",...We(r?.input)?{input:r.input}:{},...r?.title?{title:r.title}:{}};return{...e,approvals:[...e.approvals.filter((d)=>d.approvalId!==o.approvalId),g]}}case"tool-output-available":case"tool-output-error":case"tool-output-denied":return{...e,approvals:e.approvals.filter((r)=>r.toolCallId!==o.toolCallId)};case"data-progress":return{...e,progress:[...e.progress,o.data]};case"data-status":return{...e,statuses:[...e.statuses,o.data]};case"data-actions":case"data-sources":case"data-attachment":return{...e,cards:[...e.cards,o.data]};case"finish":return{...e,finished:!0};case"abort":return{...e,finished:!0,error:o.reason??"Response stopped"};case"error":return{...e,finished:!0,error:o.errorText};default:return e}}function ut(e){return{id:e.messageId,role:"assistant",content:e.text,...e.cards.length>0?{cards:e.cards}:{}}}function Ht(e,o){let r={id:e.approvalId,approved:o,toolCallId:e.toolCallId,toolName:e.toolName,...e.input?{input:e.input}:{},...e.title?{title:e.title}:{}};return ct.parse({role:"assistant",parts:[{state:"approval-responded",toolCallId:e.toolCallId,toolName:e.toolName,...e.input?{input:e.input}:{},...e.title?{title:e.title}:{},approval:r}]})}function We(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var a=pt(Ut(),1),B={sessions:["studio","chat","sessions"],messages:(e)=>["studio","chat","messages",e]};function Oo(e){let o=_t(),r=c.useMemo(()=>$t({apiPath:e.apiPath,fetch:(i,m)=>globalThis.fetch(i,m)}),[e.apiPath]),[g]=c.useState(()=>new Gt),d=e.draftStore??g,p=Q(e.apiPath,e.sessionId),x=c.useRef(p);x.current=p;let{text:u,uploads:h}=c.useSyncExternalStore(d.subscribe,()=>d.read(p),()=>d.read(p)),f=c.useCallback((i)=>d.update(p,{text:i}),[d,p]),k=c.useCallback((i)=>d.update(p,{uploads:typeof i==="function"?i(d.read(p).uploads):i}),[d,p]),[E,N]=c.useState([]),[I,V]=c.useState(null),[z,M]=c.useState(!1),[xt,X]=c.useState(!1),[L,tt]=c.useState(!1),[St,w]=c.useState(null);c.useEffect(()=>{e.onNavigationStateChange?.({hasDraft:Boolean(u||h.length),busy:z||L})},[u,h,z,L,e.onNavigationStateChange]),c.useEffect(()=>()=>e.onNavigationStateChange?.({hasDraft:!1,busy:!1}),[e.onNavigationStateChange]);let oe=Ft(),[ae,ne]=c.useState(!1),[yt,et]=c.useState(!1),ft=c.useRef(null),se=c.useRef(null),J=c.useRef(null),D=c.useRef(!0),[ie,ot]=c.useState(!1),b=c.useRef(null),Z=c.useRef(!1);c.useEffect(()=>(Z.current=!0,()=>{Z.current=!1;let i=b.current;b.current=null,i?.abort()}),[]);let _=c.useRef(null),at=c.useRef(null),q=mt({queryKey:B.sessions,queryFn:()=>r.listSessions()}),H=mt({queryKey:B.messages(e.sessionId??""),queryFn:()=>r.getMessages(e.sessionId??""),enabled:e.sessionId!==null&&!z&&E.length===0}),G=q.data??[],kt=q.isPending||G.length>0,nt=H.data??[],zt=G.find((i)=>i.id===e.sessionId),T=c.useMemo(()=>{let i=[...nt,...E];if(I&&(I.text||I.cards.length>0))i.push(ut(I));return i},[E,nt,I]),re=c.useMemo(()=>T.flatMap((i)=>(i.cards??[]).filter((m)=>m.kind==="sources"||m.kind==="attachment")),[T]);c.useEffect(()=>{if(e.sessionId&&at.current===e.sessionId){at.current=null;return}let i=b.current;b.current=null,i?.abort(),M(!1),N([]),V(null),tt(!1),X(!1),w(null)},[e.sessionId]),c.useEffect(()=>{D.current=!0,ot(!1)},[e.sessionId]),c.useEffect(()=>{let i=J.current,m=i?.firstElementChild;if(!i||!m)return;let y=()=>{if(D.current)i.scrollTop=i.scrollHeight};y();let S=new ResizeObserver(y);return S.observe(m),()=>S.disconnect()},[]),c.useEffect(()=>{if(D.current){let i=J.current;if(i)i.scrollTop=i.scrollHeight}},[I,T.length]);let j=c.useCallback((i,m=!1)=>{e.navigate(Jt(e.studioBasePath,i),{preserveWork:m}),et(!1)},[e.navigate,e.studioBasePath]);c.useEffect(()=>{if(!e.handoff||e.sessionId)return;let i=`${e.handoff.sourceId}\x00${e.handoff.itemId}`;if(_.current===i)return;_.current=i,f(e.handoff.prompt),w(null),r.openContextSession({version:1,sourceId:e.handoff.sourceId,itemId:e.handoff.itemId,titleSeed:e.handoff.label}).then(({conversationId:m})=>{if(!Z.current||x.current!==p||_.current!==i)return;d.adopt(p,Q(e.apiPath,m)),j(m,!0)}).catch((m)=>{if(!Z.current||x.current!==p||_.current!==i)return;_.current=null,w(W(m,"Context could not be attached"))})},[r,j,e.handoff,e.sessionId,e.apiPath,d,p,f]);let K=c.useCallback(async(i,m,y)=>{b.current?.abort();let S=new AbortController;b.current=S,M(!0),w(null);let C=Mt();V(C);let P=!1,F=!1,it=()=>{if(F||!C.text&&C.cards.length===0)return;F=!0;let v=ut(C);N((A)=>[...A,v]),V({...C,text:"",cards:[]})};try{let v=await r.streamMessages({id:i,messages:m,trigger:"submit-message"},{signal:S.signal});P=!0,y?.();for await(let A of Et(v)){if(b.current!==S)return P;C=qt(C,A),V(C)}if(b.current!==S)return P;it();try{let A=await r.getMessages(i);if(b.current!==S)return P;o.setQueryData(B.messages(i),A),N([])}catch{}await o.invalidateQueries({queryKey:B.sessions})}catch(v){if(b.current!==S)return P;if(it(),!S.signal.aborted)w(W(v,"Chat could not complete the response"))}finally{if(b.current===S)b.current=null,M(!1)}return P},[r,o]),st=c.useCallback(async(i)=>{let m=i.trim();if(!m&&h.length===0||z||L)return;let y=e.sessionId??`web-${crypto.randomUUID()}`,S=Q(e.apiPath,y),C=crypto.randomUUID(),P=h.map((v)=>({type:"data-upload",data:{ref:v.ref}})),F=[...m?[{type:"text",text:m}]:[],...P];if(N((v)=>[...v,{id:C,role:"user",content:m||h.map((A)=>A.filename).join(", ")}]),!await K(y,[{id:C,role:"user",parts:F}],()=>{if(!e.sessionId&&Z.current&&x.current===p)d.adopt(p,S),at.current=y,j(y,!0);let v=d.read(S);d.update(S,{text:v.text===i?"":v.text,uploads:v.uploads.filter((A)=>!h.some((pe)=>pe.id===A.id))})})&&(x.current===S||!e.sessionId&&x.current===p))N((v)=>v.filter((A)=>A.id!==C))},[j,e.sessionId,e.apiPath,d,p,K,z,L,h]),le=(i)=>{i.preventDefault(),st(u)},vt=c.useCallback(async(i,m)=>{if(!e.sessionId||z)return;await K(e.sessionId,[Ht(i,m)])},[e.sessionId,K,z]),de=c.useCallback(async(i)=>{if(i.type==="prompt"){await st(i.prompt);return}if(!e.sessionId||z)return;M(!0),w(null);try{let m=await r.runAction({conversationId:e.sessionId,action:{type:"event",event:i.event,...i.fromState?{fromState:i.fromState}:{}}});if(!Z.current||x.current!==p)return;N((y)=>[...y,{id:crypto.randomUUID(),role:"assistant",content:m.text,...m.cards?{cards:m.cards}:{}}])}catch(m){if(Z.current&&x.current===p)w(W(m,"Chat action failed"))}finally{if(Z.current&&x.current===p)M(!1)}},[r,e.sessionId,z,st,p]),ce=c.useCallback(async(i)=>{let m=Array.from(i.target.files??[]);if(i.target.value="",m.length===0)return;tt(!0),w(null);try{let y=await Promise.all(m.map((S)=>r.upload(S,S.name)));k((S)=>[...S,...y])}catch(y){if(Z.current&&x.current===p)w(W(y,"Upload failed"))}finally{if(Z.current&&x.current===p)tt(!1)}},[r,k,p]),ue=c.useCallback(async()=>{if(!e.sessionId||z||L||u||h.length)return;M(!0),X(!0);try{if(await r.archiveSession(e.sessionId),await o.invalidateQueries({queryKey:B.sessions}),Z.current&&x.current===p)j(void 0,!0)}catch(i){if(Z.current&&x.current===p)w(W(i,"Conversation could not be archived"))}finally{if(Z.current&&x.current===p)M(!1),X(!1)}},[r,j,e.sessionId,o,z,L,u,h.length,p]),bt=Object.fromEntries(e.workspaces.flatMap((i)=>i.badge===void 0?[]:[[i.id,i.badge]]));return a.jsxDEV("div",{className:s("studio",Kt.frame,n.root),"data-view":"chat","data-studio-shell":"",children:[a.jsxDEV(Xt,{contextLabel:"Chat",navigation:{types:e.types,workspaces:e.workspaces,activeEntityType:null,activeWorkspaceId:ht,workspaceBadges:bt,selectEntityType:e.selectEntityType,selectWorkspace:e.selectWorkspace}},void 0,!1,void 0,this),a.jsxDEV("div",{className:gt("studio-chat-shell",n.shell,Y.shell,oe&&Y.shellCollapsed),children:[a.jsxDEV("aside",{className:gt("rail studio-chat-studio-rail",Y.rail),children:a.jsxDEV(Yt,{renderMode:"desktop",types:e.types,active:null,onSelect:e.selectEntityType,workspaces:e.workspaces,activeWorkspace:ht,workspaceBadges:bt,onSelectWorkspace:e.selectWorkspace},void 0,!1,void 0,this)},void 0,!1,void 0,this),a.jsxDEV("main",{className:s("studio-chat-workspace",n.frame),children:[a.jsxDEV("div",{children:[q.error&&a.jsxDEV("section",{role:"alert",children:[a.jsxDEV("p",{children:"Sessions could not be refreshed. Your conversation and draft are still available."},void 0,!1,void 0,this),a.jsxDEV(O,{type:"button",variant:"ghost",disabled:q.isFetching,onClick:()=>void q.refetch(),children:"Retry sessions"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),a.jsxDEV(ee,{model:{title:"Chat",totals:[],access:te("trusted")},action:a.jsxDEV("div",{className:s("studio-chat-head-actions",n.actions),children:[a.jsxDEV("span",{ref:ft,className:"studio-chat-mobile-sessions",children:a.jsxDEV(O,{"aria-expanded":yt,"aria-haspopup":"dialog",variant:"outline",type:"button",onClick:()=>et(!0),children:"Sessions"},void 0,!1,void 0,this)},void 0,!1,void 0,this),a.jsxDEV(O,{variant:"outline",type:"button",onClick:()=>j(),children:"New conversation"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),a.jsxDEV(Bt,{open:yt,onOpenChange:(i)=>{et(i)},children:a.jsxDEV(Wt,{"aria-describedby":void 0,onCloseAutoFocus:(i)=>{i.preventDefault(),ft.current?.querySelector("button")?.focus()},children:[a.jsxDEV(Vt,{children:"Conversations"},void 0,!1,void 0,this),a.jsxDEV(Dt,{popup:!0,activeSessionId:e.sessionId,loading:q.isPending,sessions:G,onNew:()=>j(),onSelect:j},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),a.jsxDEV("div",{className:s("studio-chat-room",n.room,!kt&&n.roomWithoutSessions),children:[kt&&a.jsxDEV(Dt,{activeSessionId:e.sessionId,loading:q.isPending,sessions:G,onNew:()=>j(),onSelect:j},void 0,!1,void 0,this),a.jsxDEV("section",{className:s("studio-chat-thread",n.thread),"aria-label":"Conversation",children:[a.jsxDEV("header",{className:s("studio-chat-thread-head",n.threadHead,!e.sessionId&&T.length===0&&n.emptyThreadHead),children:[a.jsxDEV("div",{className:s("studio-chat-head-copy",n.headCopy),children:a.jsxDEV("h2",{className:s("studio-chat-session-heading",n.title),children:zt?.title??"New conversation"},void 0,!1,void 0,this)},void 0,!1,void 0,this),e.sessionId?a.jsxDEV(O,{className:"studio-chat-header-action",variant:"ghost",type:"button",onClick:()=>void ue(),disabled:z||L||Boolean(u)||h.length>0,title:u||h.length?"Send or clear the draft before archiving":void 0,children:xt?"Archiving…":"Archive"},void 0,!1,void 0,this):null]},void 0,!0,void 0,this),(e.sessionId!==null||T.length>0)&&a.jsxDEV("details",{className:s("studio-chat-working-set",n.context),open:ae,onToggle:(i)=>ne(i.currentTarget.open),children:[a.jsxDEV("summary",{className:s("studio-chat-working-set-summary",n.summary),children:"Working set"},void 0,!1,void 0,this),a.jsxDEV(Ye,{cards:re,messages:T,progress:I?.progress??[],session:zt},void 0,!1,void 0,this)]},void 0,!0,void 0,this),a.jsxDEV("div",{ref:J,onScroll:(i)=>{let m=i.currentTarget,y=m.scrollHeight-m.clientHeight-m.scrollTop<=48;D.current=y,ot(!y)},className:s("studio-chat-thread-scroll",n.threadScroll),children:a.jsxDEV("div",{className:s("studio-chat-manuscript",n.manuscript),children:[H.error&&a.jsxDEV("section",{role:"alert",children:[a.jsxDEV("p",{children:[nt.length>0?"Showing previously loaded messages. ":"","Conversation could not be loaded."]},void 0,!0,void 0,this),a.jsxDEV(O,{type:"button",variant:"ghost",disabled:H.isFetching,onClick:()=>void H.refetch(),children:"Retry conversation"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),H.isPending&&e.sessionId&&T.length===0?a.jsxDEV("p",{className:s("studio-chat-empty",n.empty),children:"Opening conversation…"},void 0,!1,void 0,this):null,!H.error&&(!e.sessionId||!H.isPending)&&T.length===0?a.jsxDEV(Je,{},void 0,!1,void 0,this):null,T.map((i)=>a.jsxDEV(Ge,{message:i,onAction:de,onApproval:vt},i.id,!1,void 0,this)),I?.approvals.map((i)=>a.jsxDEV(Fe,{approval:i,disabled:z,onDecision:vt},i.approvalId,!1,void 0,this)),z?a.jsxDEV("p",{className:s("studio-chat-stream-status",n.empty),role:"status",children:"Working…"},void 0,!1,void 0,this):null,St?a.jsxDEV("p",{className:s("studio-chat-error",n.empty,n.error),role:"alert",children:St},void 0,!1,void 0,this):null,a.jsxDEV("div",{ref:se},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),a.jsxDEV(Qe,{onJumpToLatest:ie?()=>{D.current=!0,ot(!1);let i=J.current;if(i)i.scrollTop=i.scrollHeight}:void 0,draft:u,sending:z,uploading:L,uploads:h,onDraft:f,locked:xt,onRemoveUpload:(i)=>k((m)=>m.filter((y)=>y.id!==i)),onFiles:ce,onSubmit:le,onStop:b.current?()=>b.current?.abort():void 0},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}function Dt(e){return a.jsxDEV("aside",{className:e.popup?s("studio-chat-session-picker",n.picker):s("studio-chat-sessions",n.sessions),"aria-label":"Chat sessions",children:[e.popup&&a.jsxDEV("header",{className:s("studio-chat-sessions-head",n.threadHead),children:[a.jsxDEV("div",{className:s("studio-chat-head-copy",n.headCopy),children:a.jsxDEV("h2",{className:s("studio-chat-sessions-title",n.subheading),children:"Sessions"},void 0,!1,void 0,this)},void 0,!1,void 0,this),a.jsxDEV("button",{className:s("studio-chat-new",n.button),type:"button","aria-label":"New conversation",onClick:e.onNew,children:"+"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),a.jsxDEV("div",{className:s("studio-chat-session-list",n.sessionList),children:[e.loading?a.jsxDEV("p",{className:s("studio-chat-empty",n.empty),children:"Loading sessions…"},void 0,!1,void 0,this):null,!e.loading&&e.sessions.length===0?a.jsxDEV("p",{className:s("studio-chat-empty",n.empty),children:"No conversations yet."},void 0,!1,void 0,this):null,e.sessions.map((o)=>a.jsxDEV("button",{className:s("studio-chat-session",n.session,o.id===e.activeSessionId&&n.activeSession),"data-active":o.id===e.activeSessionId?"true":"false",type:"button",onClick:()=>e.onSelect(o.id),children:[a.jsxDEV("strong",{className:s("studio-chat-session-title",n.sessionTitle),children:o.title},void 0,!1,void 0,this),a.jsxDEV("time",{className:s("studio-chat-session-time",n.timestamp),dateTime:o.lastActiveAt,title:o.lastActiveAt,children:Xe(o.lastActiveAt)},void 0,!1,void 0,this)]},o.id,!0,void 0,this))]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}function Je(){return a.jsxDEV("section",{className:s("studio-chat-empty",n.empty,n.emptyConversation),"aria-label":"New conversation",children:a.jsxDEV("p",{className:s("",n.cardText),children:"No messages yet. Your draft stays in the composer until you send it."},void 0,!1,void 0,this)},void 0,!1,void 0,this)}function Ge(e){return a.jsxDEV("article",{className:s("studio-chat-turn",n.turn),"data-role":e.message.role,children:[a.jsxDEV("span",{className:s("studio-chat-turn-label",n.speaker),children:e.message.role==="user"?"You":"Brain"},void 0,!1,void 0,this),a.jsxDEV("div",{className:s("studio-chat-turn-body",n.turnBody,e.message.role==="user"&&n.userBody),children:[e.message.content?e.message.role==="assistant"?a.jsxDEV(Qt,{className:s("studio-chat-prose",n.cards),presentation:"chat",children:e.message.content},void 0,!1,void 0,this):a.jsxDEV("p",{className:s("studio-chat-text",n.paragraph),children:e.message.content},void 0,!1,void 0,this):null,e.message.attachments?.map((o)=>a.jsxDEV("p",{className:s("studio-chat-upload",n.upload),children:o.filename},`${o.filename}-${o.createdAt}`,!1,void 0,this)),e.message.cards?.length?a.jsxDEV("div",{className:s("studio-chat-cards",n.cards),children:e.message.cards.map((o)=>a.jsxDEV(Ke,{card:o,onAction:e.onAction,onApproval:e.onApproval},`${o.kind}-${o.id}`,!1,void 0,this))},void 0,!1,void 0,this):null]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}function Ke(e){let{card:o}=e;if(o.kind==="actions")return a.jsxDEV("section",{className:s("studio-chat-card",n.card),children:[a.jsxDEV("span",{className:s("studio-chat-card-kicker",n.kicker),children:"Actions"},void 0,!1,void 0,this),o.title?a.jsxDEV("strong",{children:o.title},void 0,!1,void 0,this):null,a.jsxDEV("div",{className:s("studio-chat-card-actions",n.actions),children:o.actions.map((d)=>a.jsxDEV("button",{className:s("studio-chat-card-action",n.button),type:"button",onClick:()=>void e.onAction(d),children:d.label},d.id,!1,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this);if(o.kind==="sources")return a.jsxDEV("section",{className:s("studio-chat-card",n.card),children:[a.jsxDEV("span",{className:s("studio-chat-card-kicker",n.kicker),children:"Sources"},void 0,!1,void 0,this),a.jsxDEV("ul",{children:o.sources.map((d)=>a.jsxDEV("li",{children:d.url?a.jsxDEV("a",{href:d.url,children:d.title??d.source},void 0,!1,void 0,this):d.title??d.source},d.id,!1,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this);if(o.kind==="attachment")return a.jsxDEV("section",{className:s("studio-chat-card",n.card),children:[a.jsxDEV("span",{className:s("studio-chat-card-kicker",n.kicker),children:"Artifact"},void 0,!1,void 0,this),a.jsxDEV("strong",{children:o.title},void 0,!1,void 0,this),o.description?a.jsxDEV("p",{className:s("studio-chat-card-description",n.cardText),children:o.description},void 0,!1,void 0,this):null,o.attachment.previewUrl||o.attachment.downloadUrl?a.jsxDEV("div",{className:s("studio-chat-card-actions",n.actions),children:a.jsxDEV("a",{className:s("studio-chat-card-action",n.button),href:o.attachment.previewUrl??o.attachment.downloadUrl,children:"Open"},void 0,!1,void 0,this)},void 0,!1,void 0,this):null]},void 0,!0,void 0,this);let r=o.state==="approval-requested",g={approvalId:o.id,toolCallId:o.toolCallId??o.id,toolName:o.toolName,...o.input?{input:o.input}:{},...o.summary?{title:o.summary}:{}};return a.jsxDEV("section",{className:s("studio-chat-card",n.card),children:[a.jsxDEV("span",{className:s("studio-chat-card-kicker",n.kicker),children:r?"Approval required":"Approval record"},void 0,!1,void 0,this),a.jsxDEV("strong",{children:o.summary},void 0,!1,void 0,this),o.preview?a.jsxDEV("p",{className:s("studio-chat-card-preview",n.paragraph),children:o.preview},void 0,!1,void 0,this):null,r?a.jsxDEV("div",{className:s("studio-chat-approval-actions",n.actions),children:[a.jsxDEV("button",{className:s("studio-chat-approval-action",n.button),type:"button",onClick:()=>void e.onApproval(g,!1),children:"Decline"},void 0,!1,void 0,this),a.jsxDEV("button",{className:s("studio-chat-approval-action",n.button,n.primaryButton),"data-primary":"true",type:"button",onClick:()=>void e.onApproval(g,!0),children:"Approve"},void 0,!1,void 0,this)]},void 0,!0,void 0,this):null]},void 0,!0,void 0,this)}function Fe(e){return a.jsxDEV("section",{className:s("studio-chat-approval",n.card),children:[a.jsxDEV("span",{className:s("studio-chat-card-kicker",n.kicker),children:"Approval required"},void 0,!1,void 0,this),a.jsxDEV("strong",{children:e.approval.title??e.approval.toolName},void 0,!1,void 0,this),a.jsxDEV("div",{className:s("studio-chat-approval-actions",n.actions),children:[a.jsxDEV("button",{className:s("studio-chat-approval-action",n.button),type:"button",disabled:e.disabled,onClick:()=>void e.onDecision(e.approval,!1),children:"Decline"},void 0,!1,void 0,this),a.jsxDEV("button",{className:s("studio-chat-approval-action",n.button,n.primaryButton),"data-primary":"true",type:"button",disabled:e.disabled,onClick:()=>void e.onDecision(e.approval,!0),children:"Approve"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}function Qe(e){let o=(r)=>{if(r.key==="Enter"&&!r.shiftKey&&!r.nativeEvent.isComposing)r.preventDefault(),r.currentTarget.form?.requestSubmit()};return a.jsxDEV("footer",{className:s("studio-chat-composer",n.composer),children:[e.onJumpToLatest&&a.jsxDEV(O,{type:"button",variant:"ghost",onClick:e.onJumpToLatest,children:"Jump to latest ↓"},void 0,!1,void 0,this),e.uploads.length>0?a.jsxDEV("div",{className:s("studio-chat-upload-list",n.uploadList),children:e.uploads.map((r)=>a.jsxDEV("span",{className:s("studio-chat-upload",n.upload),children:[r.filename," ",a.jsxDEV(O,{type:"button",variant:"ghost",size:"sm","aria-label":`Remove ${r.filename} from message`,disabled:e.locked,onClick:()=>e.onRemoveUpload(r.id),children:"×"},void 0,!1,void 0,this)]},r.id,!0,void 0,this))},void 0,!1,void 0,this):null,a.jsxDEV("form",{className:s("studio-chat-composer-form",n.form),onSubmit:e.onSubmit,children:[a.jsxDEV("label",{className:s("studio-chat-message-label",n.fieldLabel),children:["Message",a.jsxDEV("textarea",{className:s("studio-chat-message",n.input),"aria-label":"Message",placeholder:"Write to your brain…",value:e.draft,disabled:e.locked,onChange:(r)=>e.onDraft(r.target.value),onKeyDown:o},void 0,!1,void 0,this)]},void 0,!0,void 0,this),a.jsxDEV("div",{className:s("studio-chat-composer-actions",n.actions),children:[a.jsxDEV("label",{className:s("studio-chat-composer-action",n.attachButton),"aria-label":"Attach files",children:[e.uploading?"Attaching…":"Attach files",a.jsxDEV("input",{className:s("studio-chat-upload-input",n.uploadInput),type:"file",multiple:!0,disabled:e.locked||e.sending||e.uploading,onChange:(r)=>void e.onFiles(r)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),e.locked?a.jsxDEV(O,{type:"button",disabled:!0,children:"Archiving…"},void 0,!1,void 0,this):e.sending?a.jsxDEV(O,{type:"button",variant:"outline",onClick:e.onStop,disabled:!e.onStop,title:"Stop receiving the response. Completed actions are not undone.",children:"Stop"},void 0,!1,void 0,this):a.jsxDEV(O,{className:"studio-chat-composer-action",type:"submit","aria-label":"Send message",disabled:e.uploading||!e.draft.trim()&&e.uploads.length===0,children:"Send"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}function Ye(e){return a.jsxDEV("aside",{className:s("studio-chat-context",n.contextBody),"aria-label":"Working set",children:a.jsxDEV("div",{className:s("studio-chat-context-list",n.cards),children:[e.session?.contextHandoff?a.jsxDEV("section",{className:s("studio-chat-context-card",n.contextItem),children:[a.jsxDEV("span",{className:s("studio-chat-context-kicker",n.kicker),children:"Linked context"},void 0,!1,void 0,this),a.jsxDEV("h3",{className:s("studio-chat-context-card-title",n.cardHeading),children:e.session.contextHandoff.titleSeed},void 0,!1,void 0,this),a.jsxDEV("p",{className:s("studio-chat-context-card-text",n.cardText),children:[e.session.contextHandoff.sourceId," ·"," ",e.session.contextHandoff.itemId]},void 0,!0,void 0,this)]},void 0,!0,void 0,this):null,e.cards.length===0&&e.progress.length===0?a.jsxDEV("p",{className:s("studio-chat-empty",n.empty),children:"Sources, artifacts, and durable jobs appear here as the conversation develops."},void 0,!1,void 0,this):null,e.cards.map((o,r)=>a.jsxDEV("section",{className:s("studio-chat-context-card",n.contextItem),children:[a.jsxDEV("span",{className:s("studio-chat-context-kicker",n.kicker),children:o.kind==="sources"?"Sources":"Artifact"},void 0,!1,void 0,this),a.jsxDEV("h3",{className:s("studio-chat-context-card-title",n.cardHeading),children:o.kind==="sources"?o.title??`${o.sources.length} consulted`:o.kind==="attachment"?o.title:"Conversation context"},void 0,!1,void 0,this),o.kind==="sources"?a.jsxDEV(a.Fragment,{children:[a.jsxDEV("ul",{children:o.sources.slice(0,5).map((g)=>a.jsxDEV("li",{children:g.title??g.source},g.id,!1,void 0,this))},void 0,!1,void 0,this),o.sources.length>5?a.jsxDEV("p",{className:s("studio-chat-context-card-text",n.cardText),children:[o.sources.length-5," more sources in the conversation."]},void 0,!0,void 0,this):null]},void 0,!0,void 0,this):o.kind==="attachment"&&o.description?a.jsxDEV("p",{className:s("studio-chat-context-card-text",n.cardText),children:o.description},void 0,!1,void 0,this):null]},`${o.kind}-${o.id}-${r}`,!0,void 0,this)),e.progress.map((o,r)=>a.jsxDEV("section",{className:s("studio-chat-context-card",n.contextItem),children:[a.jsxDEV("span",{className:s("studio-chat-context-kicker",n.kicker),children:"Durable job"},void 0,!1,void 0,this),a.jsxDEV("h3",{className:s("studio-chat-context-card-title",n.cardHeading),children:o.operationTarget??o.operationType},void 0,!1,void 0,this),a.jsxDEV("p",{className:s("studio-chat-context-card-text",n.cardText),children:o.message??o.status},void 0,!1,void 0,this)]},`${o.type}-${r}`,!0,void 0,this)),e.messages.length>0?a.jsxDEV("section",{className:s("studio-chat-context-card",n.contextItem),children:[a.jsxDEV("span",{className:s("studio-chat-context-kicker",n.kicker),children:"Activity"},void 0,!1,void 0,this),a.jsxDEV("h3",{className:s("studio-chat-context-card-title",n.cardHeading),children:"Visible conversation"},void 0,!1,void 0,this),a.jsxDEV("p",{className:s("studio-chat-context-card-text",n.cardText),children:[e.messages.length," visible messages."]},void 0,!0,void 0,this)]},void 0,!0,void 0,this):null]},void 0,!0,void 0,this)},void 0,!1,void 0,this)}function Xe(e){let o=new Date(e);if(Number.isNaN(o.getTime()))return"";return new Intl.DateTimeFormat(void 0,{day:"numeric",year:o.getFullYear()===new Date().getFullYear()?void 0:"numeric",month:"short",timeZoneName:"short",hour:"2-digit",minute:"2-digit"}).format(o)}function W(e,o){return e instanceof Error&&e.message?e.message:o}export{Oo as StudioChatWorkspace};
4
+
5
+ //# debugId=84718F9E1CF8297664756E2164756E21