@theoremjs/studio 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.
- package/README.md +1 -0
- package/package.json +3 -3
- package/page/assets/{Banner-ChigGVCM.js → Banner-Buiul23B.js} +2 -2
- package/page/assets/{ContextMenu-BcXTDSnA.js → ContextMenu-Dw9_F5b0.js} +2 -2
- package/page/assets/{ToolResultCharts-DsbzvrBK.js → ToolResultCharts-CVlI3NkJ.js} +1 -1
- package/page/assets/{TraceInspector-B34qMQJH.js → TraceInspector-TusXx3zZ.js} +1 -1
- package/page/assets/{TraceOverview-Drp2Sl4p.js → TraceOverview-DrHQgMQO.js} +1 -1
- package/page/assets/{_virtual_studio-type-sources-B0u0_Vhq.js → _virtual_studio-type-sources-BwZOives.js} +49 -18
- package/page/assets/browser-engine-BTOR18GA.js +11 -0
- package/page/assets/{browser-transport-Bn77Eq5d.js → browser-transport-BEFsWdzI.js} +3 -3
- package/page/assets/{compile-egress-CGwmX2BX.js → compile-egress-BSxOdX4K.js} +1 -1
- package/page/assets/{encode-files-Dq98bb-f.js → encode-files-Bc3HJyAh.js} +1 -1
- package/page/assets/{export-agent-wlS68_dE.js → export-agent-BnlMWFTv.js} +1 -1
- package/page/assets/{guardrail-tester-BHcoZE5K.js → guardrail-tester-DRsOgbwK.js} +1 -1
- package/page/assets/host-patterns-C9RMP16Q.js +1 -0
- package/page/assets/{index-BmHkdZXS.js → index-D2T8e_8Q.js} +6 -6
- package/page/assets/{live-ingress-DsA4_80F.js → live-ingress-lDUGPwth.js} +1 -1
- package/page/assets/{live-messages-B19ZuTGI.js → live-messages-BYi31jQk.js} +1 -1
- package/page/assets/{reader-CN15b9m8.js → reader-B0gVhfoZ.js} +1 -1
- package/page/assets/{shaped-data-BO_JTcQq.js → shaped-data-BcarWqd5.js} +2 -2
- package/page/assets/{stub-DDddt29Y.js → stub-DEZDrr-l.js} +1 -1
- package/page/assets/{studio-code-pane-BSXwNg0B.js → studio-code-pane-PndbSO1v.js} +3 -3
- package/page/assets/{studio-console-C1hyAfeb.js → studio-console-e6kqu38F.js} +1 -1
- package/page/assets/{studio-decision-CZDF06ic.js → studio-decision-DFM0psog.js} +1 -1
- package/page/assets/{studio-embedding-SqSYd_e1.js → studio-embedding-4qgdJ4gh.js} +1 -1
- package/page/assets/{studio-host-console-BlbRUrR_.js → studio-host-console-DajI604W.js} +2 -2
- package/page/assets/{studio-live-Dd0AEV_k.js → studio-live-B1a0aWbl.js} +1 -1
- package/page/assets/{studio-map-BIIZcltt.js → studio-map-CdrEm07d.js} +1 -1
- package/page/assets/{studio-type-checker-Cp6IxLBp.js → studio-type-checker-DosSRFbd.js} +1 -1
- package/page/assets/tool-schema-BrqSc6vO.js +18 -0
- package/page/assets/{trace-record-C-XxCjSg.js → trace-record-C3zNksA_.js} +1 -1
- package/page/assets/{tree-D1IYOD_9.js → tree-DeO1319a.js} +1 -1
- package/page/assets/{turn-client-BMBqw-ho.js → turn-client-DwVPS3TX.js} +1 -1
- package/page/assets/types-EVrOoUBG.js +1 -0
- package/page/assets/{use-one-call-BtrXMol7.js → use-one-call-9e3o5vH-.js} +1 -1
- package/page/assets/{workspace-BMzjmPeQ.js → workspace-Ck0o-_fd.js} +1 -1
- package/page/index.html +15 -15
- package/page/assets/browser-engine-rJc_aHJo.js +0 -9
- package/page/assets/host-patterns-DCz9Cmrt.js +0 -1
- package/page/assets/tool-schema-BF2BK9h8.js +0 -18
- package/page/assets/types-CBmpjaet.js +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/studio-monaco-xfyfezQS.js","assets/editor.api-Cd3ViPQa.js","assets/preload-helper-DpV6A1kQ.js","assets/editor-DjpsE8to.css","assets/studio-monaco-CbKf90i6.css","assets/register-CDgivxvX.js","assets/studio-type-checker-
|
|
2
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,u as n}from"./themeProps-3IqahpCr.js";import{t as r}from"./preload-helper-DpV6A1kQ.js";import{Bt as i,D as a,T as o,Un as s,Vt as c,fr as l,k as u}from"./tool-schema-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/studio-monaco-xfyfezQS.js","assets/editor.api-Cd3ViPQa.js","assets/preload-helper-DpV6A1kQ.js","assets/editor-DjpsE8to.css","assets/studio-monaco-CbKf90i6.css","assets/register-CDgivxvX.js","assets/studio-type-checker-DosSRFbd.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,u as n}from"./themeProps-3IqahpCr.js";import{t as r}from"./preload-helper-DpV6A1kQ.js";import{Bt as i,D as a,T as o,Un as s,Vt as c,fr as l,k as u}from"./tool-schema-BrqSc6vO.js";import{En as d,Sn as f,qt as p}from"./shaped-data-BcarWqd5.js";import{S as m,U as h,_ as g,h as _,m as v,v as y,y as b}from"./tree-DeO1319a.js";import{r as x}from"./live-ingress-lDUGPwth.js";import{n as S,t as C}from"./types-EVrOoUBG.js";import{n as w}from"./stub-DEZDrr-l.js";import{F as T,M as E,k as ee,r as te}from"./workspace-Ck0o-_fd.js";import{t as ne}from"./PaneState-BvA2tLQg.js";import{K as re}from"./index-D2T8e_8Q.js";var D=class extends Error{line;column;constructor(e,t,n){super(e),this.line=t,this.column=n}},ie=class{text;of;i=0;line=1;column=1;constructor(e,t=`profile`){this.text=e,this.of=t}get done(){return this.i>=this.text.length}pos(){return{line:this.line,column:this.column}}fail(e){throw new D(e,this.line,this.column)}peek(e=0){return this.text[this.i+e]??``}bump(){let e=this.text[this.i]??``;return this.i+=1,e===`
|
|
3
3
|
`?(this.line+=1,this.column=1):this.column+=1,e}skip(){for(;;){let e=this.peek();if(e===` `||e===` `||e===`
|
|
4
4
|
`||e===`\r`||e===``)this.bump();else if(e===`/`&&this.peek(1)===`/`)for(;!this.done&&this.peek()!==`
|
|
5
5
|
`;)this.bump();else if(e===`/`&&this.peek(1)===`*`){for(this.bump(),this.bump();!this.done&&(this.peek()!==`*`||this.peek(1)!==`/`);)this.bump();this.done&&this.fail(`This comment never closes.`),this.bump(),this.bump()}else return}}starts(e){return this.skip(),this.text.startsWith(e,this.i)}eat(e){if(!this.starts(e))return!1;for(let t=0;t<e.length;t+=1)this.bump();return!0}expect(e){this.eat(e)||this.fail(`Expected '${e}'.`)}ident(){this.skip();let e=this.peek();if(!/^[A-Za-z_$]/.test(e))return;let t=``;for(;/^[A-Za-z0-9_$]/.test(this.peek());)t+=this.bump();return t}expectIdent(){let e=this.ident();return e===void 0&&this.fail(`Expected a name.`),e}peekIdent(){return this.skip(),/^[A-Za-z_$][A-Za-z0-9_$]*/.exec(this.text.slice(this.i))?.[0]}rest(){return this.skip(),this.text.slice(this.i)}};function O(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function k(e){e.skip();let t=e.peek();t!==`'`&&t!==`"`&&e.fail(`Expected a string.`),e.bump();let n=``;for(;!e.done&&e.peek()!==t;){let t=e.bump();if(t!==`\\`){n+=t;continue}let r=e.bump(),i={n:`
|
|
6
6
|
`,r:`\r`,t:` `,"\\":`\\`,"'":`'`,'"':`"`};if(r in i)n+=i[r];else if(r===`u`){let t=``;for(let n=0;n<4;n+=1)t+=e.bump();n+=String.fromCharCode(Number.parseInt(t,16))}else n+=r}return e.peek()!==t&&e.fail(`This string never closes.`),e.bump(),n}function ae(e){e.skip();let t=e.pos(),n=``;for(e.peek()===`-`&&(n+=e.bump());/^[0-9.eE+-]/.test(e.peek())&&n.length<64;)n+=e.bump();let r=Number(n);if(!Number.isFinite(r))throw new D(`'${n}' is not a number.`,t.line,t.column);return r}function oe(e,t,n,r){let i=0;for(;!e.done;){if(r()&&i===0)return;let a=e.peek();a===`'`||a===`"`?k(e):(a!==``&&t.includes(a)?i+=1:a!==``&&n.includes(a)&&--i,e.bump())}}function se(e){oe(e,`<([{`,`>)]}`,()=>(e.skip(),e.peek()===`;`||e.peek()===`
|
|
7
7
|
`))}function ce(e){oe(e,`{([`,`})]`,()=>e.peek()===`;`),e.peek()===`;`&&e.bump()}function le(e,t,n){e.expect(`{`);let r={};for(;!e.eat(`}`);){e.eat(`...`)&&e.fail(`This file doesn't use spreads.`);let i=e.pos(),a;if(a=e.peek()===`'`||e.peek()===`"`?k(e):e.expectIdent(),a===`__proto__`)throw new D(`'__proto__' sets what an object inherits, not a setting.`,i.line,i.column);if(Object.hasOwn(r,a))throw new D(`'${a}' is set twice.`,i.line,i.column);let o=t?`${t}.${a}`:a;n.push({path:o,line:i.line,column:i.column}),e.expect(`:`),r[a]=F(e,o,n),e.eat(`,`),e.done&&e.fail(`This object never closes.`)}return r}function ue(e,t,n){e.expect(`[`);let r=[],i=0;for(;!e.eat(`]`);){e.eat(`...`)&&e.fail(`This file doesn't use spreads.`),e.skip();let a=e.pos(),o=t?`${t}.${String(i)}`:String(i);n.push({path:o,line:a.line,column:a.column}),r.push(F(e,o,n)),i+=1,e.eat(`,`),e.done&&e.fail(`This array never closes.`)}return r}function de(e,t,n){let[r]=t;return e!==`z.fromJSONSchema`&&n.fail(`The studio reads a schema as JSON Schema: z.fromJSONSchema({ ... }), not '${e}'.`),O(r)||n.fail(`z.fromJSONSchema() needs a schema.`),r}function A(e){return O(e)&&e.kind===`member`}function fe(e,t){return{kind:`member`,object:e,name:t}}function pe(e){if(typeof e.object==`string`)return`${e.object}.${e.name}`;if(A(e.object)){let t=pe(e.object);return t?`${t}.${e.name}`:void 0}}function j(e,t,n){let r=e[0];return O(r)||t.fail(n),r}function me(e,t,n){let r=j(e,t,`registerTool() needs the tool object.`),i=r.type,a=typeof i==`string`&&C.includes(i);if(i!==void 0&&!a){let e=n.findLast(e=>e.path===`type`)??t.pos();throw new D(S,e.line,e.column)}return{kind:`registerTool`,tool:r}}function he(e,t,n,r){if(n.of===`provider`){if(e!==`registerProvider`)return n.fail(`'${e}' isn't part of a provider's code.`);let[r,i={}]=t;return typeof r!=`string`&&n.fail(`registerProvider() needs the definition it registers from.`),(!O(i)||t.length>2)&&n.fail(`registerProvider() takes the definition and its settings.`),{kind:`provider`,definition:r,spec:i}}return e===`compileDetect`?j(t,n,`compileDetect() needs the detect object.`):e===`defineProfile`?j(t,n,`defineProfile() needs the profile object.`):e===`registerTool`?me(t,n,r):e===`registerStructured`?{kind:`registerStructured`,args:t}:e===`registerProfile`||e===`registerProvider`?{kind:e}:n.fail(`'${e}' isn't part of this file.`)}function ge(e,t,n){return(typeof t!=`string`||e.some(e=>typeof e!=`string`))&&n.fail(`.join() here joins lines of one string.`),e.join(t)}function _e(e,t,n){if(e.name===`join`&&Array.isArray(e.object))return ge(e.object,t[0],n);if(e.name===`resolve`&&e.object===`Promise`)return t[0];let r=pe(e);return r?.startsWith(`z.`)?de(r,t,n):n.fail(`This call isn't part of this file.`)}function ve(e,t,n,r){return typeof e==`string`?he(e,t,n,r):(A(e)||n.fail(`This call isn't part of this file.`),_e(e,t,n))}function ye(e){return/^(async\s*)?\(\s*\)\s*=>/.test(e.rest())}function be(e,t,n){return e.peekIdent()===`async`&&e.expectIdent(),e.expect(`(`),e.eat(`)`)||e.fail(`A handler here takes no arguments. It returns a fixed value.`),e.expect(`=>`),F(e,t,n)}var M=class{name;constructor(e){this.name=e}};function N(e){return e instanceof M?e.name:e}function P(e,t,n){return ye(e)?be(e,t,n):Se(xe(e,t,n),e,t,n)}function xe(e,t,n){e.skip();let r=e.peek();if(r===`'`||r===`"`)return k(e);if(r==="`"&&e.fail(`This file doesn't use template strings.`),r===`-`||/^[0-9]/.test(r))return ae(e);if(r===`{`)return le(e,t,n);if(r===`[`)return ue(e,t,n);if(r===`(`){e.bump();let r=P(e,t,n);return e.expect(`)`),r}let i=e.ident();return i===`true`?!0:i===`false`?!1:i===`null`?null:(i===void 0&&e.fail(`Expected a value.`),new M(i))}function F(e,t,n){e.skip();let r=e.pos(),i=P(e,t,n);if(!(i instanceof M))return i;if(i.name!==`undefined`)throw new D(`'${i.name}' is set somewhere else. Write its value here.`,r.line,r.column)}function Se(e,t,n,r){let i=e;for(;;)if(t.eat(`.`)){let e=t.expectIdent();i=fe(N(i),e)}else if(t.eat(`(`)){let e=r.length,a=[];for(;!t.eat(`)`);)a.push(N(P(t,n,r))),t.eat(`,`),t.done&&t.fail(`This call never closes.`);i=ve(N(i),a,t,r.slice(e))}else return A(i)&&t.fail(`This file doesn't stop on a property.`),i}function Ce(e,t){e.expectIdent();let n=e.expectIdent();e.expect(`=`);let r=P(e,``,t.spans);(e.eat(`satisfies`)||e.eat(`as`))&&se(e),e.eat(`;`),e.of===`provider`?e.fail(`A provider's code is its registerProvider() call and nothing else.`):n===`profile`?(O(r)||e.fail(`profile has to be the defineProfile() object.`),t.profile&&e.fail(`This file defines two profiles.`),t.profile=r):n===`questions`?(O(r)||e.fail(`questions has to be an object.`),t.questions=r):n===`images`&&(O(r)||e.fail(`images has to be an object.`),t.images=r)}function we(e,t){let n=P(e,``,t.spans);if(e.eat(`;`),O(n)){if(n.kind===`provider`&&typeof n.definition==`string`&&O(n.spec))t.provider&&e.fail(`This code registers two providers.`),t.provider={definition:n.definition,spec:n.spec};else if(n.kind===`registerTool`){let r=n.tool;O(r)||e.fail(`registerTool() needs the tool object.`),t.tools.push(r)}else if(n.kind===`registerStructured`){let[r,i]=Array.isArray(n.args)?n.args:[];(typeof r!=`string`||!O(i))&&e.fail(`registerStructured() needs an id and a spec.`),t.structured={id:r,spec:i}}}}function I(e,t=`profile`){let n=new ie(e,t),r={tools:[],spans:[]};for(n.skip();!n.done;n.skip())n.peekIdent()===`import`?(n.expectIdent(),ce(n)):(n.peekIdent()===`export`&&n.expectIdent(),n.peekIdent()===`const`?Ce(n,r):we(n,r));return t===`provider`?r.provider||n.fail(`This code needs registerProvider().`):r.profile||n.fail(`This file needs defineProfile().`),r}function L(e,t=``){return typeof e==`string`?e:t}function R(e){return typeof e==`number`?e:null}function Te(e,t){if(e===void 0)return``;if(typeof e==`string`)return e;if(!Array.isArray(e))throw new D(t,1,1);return e.map(e=>{if(typeof e==`string`)return e;if(O(e)&&typeof e.private==`string`)return`{private: ${e.private}}`;throw new D(t,1,1)}).join(``)}function z(e){return e===void 0?``:JSON.stringify(e,null,2)}function Ee(e,t){return T(e)===T(t)}function B(e){return O(e)?JSON.stringify(e,null,2):JSON.stringify(e)}function V(e){return Array.isArray(e)?e.map(e=>{if(!O(e)||typeof e.name!=`string`)throw new D(`A pattern needs a name.`,1,1);return Array.isArray(e.words)?{name:e.name,kind:`words`,pattern:``,flags:``,words:e.words.filter(e=>typeof e==`string`)}:{name:e.name,kind:`pattern`,pattern:L(e.pattern),flags:L(e.flags),words:[]}}):[]}function H(e){return O(e)?e:void 0}function U(e){return Array.isArray(e)?e.filter(e=>typeof e==`string`):[]}function W(e){return Array.isArray(e)?U(e):void 0}function G(e){return L(e)||void 0}function K(e){return Array.isArray(e)?U(e).join(`
|
|
8
|
-
`)||void 0:G(e)}function q(e,t,n){return O(e)?t(e):n}function De(e,t,n){if(!O(n))return;if(Array.isArray(n.names)){e.innocentNames=U(n.names);return}if(!(t in e.allow))return;let r=e.allow[t];r.hosts=U(n.hosts),r.fromTools=n.fromTools!==!1}function Oe(e,t,n){let r=H(n.at)??{};e.detect[t]={...e.detect[t],...r};let i=e.sources[t];i&&(n.theorem===!1&&(i.theorem=!1),i.patterns=V(n.patterns),i.hint=L(n.hint)),De(e,t,n.allow)}function ke(e,t){let n=d(f,()=>`ignore`);return O(t.at)&&Object.assign(n,t.at),{key:e,label:L(t.label),at:n,patterns:V(t.patterns),hint:L(t.hint)}}function Ae(e){let t=g().guardrails;if(!O(e))return t;let n={detect:structuredClone(t.detect),sources:structuredClone(t.sources),allow:structuredClone(t.allow),innocentNames:[...t.innocentNames]},r=[],i=new Set(p);for(let[t,a]of Object.entries(H(e.detect)??{}))O(a)&&(i.has(t)?Oe(n,t,a):r.push(ke(t,a)));let a=H(e.quota),o=H(e.blockedReply),s=H(e.network),c=H(e.taint);return{...t,...n,own:r,quotaEnabled:a!==void 0,quotaPerDay:R(a?.perDay),blockedReplyOnBlock:L(o?.onBlock),blockedReplyMaxRetries:R(o?.maxRetries),allowPrivateNetworks:s?.allowPrivateNetworks===!0,allowedHosts:U(s?.allowedHosts),allowedSchemes:U(s?.allowedSchemes),taintAfterRemoteRead:L(c?.afterRemoteRead),taintRemoteDestination:L(c?.remoteDestination)}}var je={"continue.instruction":(e,t)=>{e.turnBehaviour.continueInstruction=t},"canary.bind_note":(e,t)=>{e.guardrails.canaryBindNote=t},"quota.exhausted":(e,t)=>{e.guardrails.quotaMessage=t},"repair.default_guidance":(e,t)=>{e.outputs.repairGuidance=t},"egress.default_repair_guidance":(e,t)=>{e.guardrails.egressRepairGuidance=t},"egress.refusal":(e,t)=>{e.guardrails.egressRefusal=t}};function Me(e,t){if(!O(t))return;let n={};for(let[r,i]of Object.entries(t)){if(typeof i!=`string`)continue;let t=je[r];t?t(e,i):v[r]||(n[r]=i)}e.labels=n}function Ne(e,t,n,r,i){let a=n??y({modelId:e});if(!O(t))return{...a,modelId:e};let o=O(t.efforts)?Object.entries(t.efforts).map(([e,t])=>({alias:e,level:t})):[],s=O(t.compaction)?t.compaction:void 0,c=L(s?.profile),l=R(t.timeoutMs);return{...a,modelId:e,protocol:L(t.protocol,a.protocol),provider:L(t.provider,a.provider),apiId:L(t.apiId),options:H(t.options)??{},timeoutMs:l,efforts:o,defaultEffort:L(t.defaultEffort),allowEffortSelect:t.allowEffortSelect===!0,summaries:typeof t.summaries==`boolean`?t.summaries:null,maxOutputTokens:R(t.maxOutputTokens),temperature:typeof t.temperature==`number`?t.temperature:null,builtInTools:Array.isArray(t.builtInTools)?t.builtInTools.filter(e=>typeof e==`string`):[],keySlot:L(t.keySlot),fallbackKeySlot:L(t.fallbackKeySlot),compactTiming:L(s?.timing),compactMaxTokens:R(s?.maxTokens),compactAt:typeof s?.compactAt==`number`?s.compactAt:void 0,compactKeep:R(s?.previousExchanges),compactMeter:L(s?.meter),compactWith:c?Pe(c,r,`models.${e}.compaction.profile`,i):``}}function Pe(e,t,n,r){return t?t(e)??X(r,n,`'${e}' is not an agent here, so it can't write this model's summaries.`):``}function Fe(e,t){let n=t.output;if(e===`function`&&O(t.handler)&&O(n)&&!Ee(t.handler,w(n)))return z(t.handler)}function Ie(e){let t=H(e.mapping)??{};return{endpoint:G(e.endpoint),method:G(e.method),headersJson:O(e.headers)?z(e.headers):void 0,pathParams:W(t.pathParams),queryParams:W(t.queryParams),bodyParam:G(t.bodyParam),serverUrl:G(e.serverUrl),mcpToolName:G(e.mcpToolName)}}function Le(e){let t=H(e.auth)??{};return{authType:L(t.type),authSlot:G(t.slot),authService:G(t.service),authHeaderName:G(t.headerName),authHeaderPrefix:typeof t.headerPrefix==`string`?t.headerPrefix:void 0,authQueryParam:G(t.queryParam),authUnauthenticated:L(t.onUnauthenticated),authScopes:W(t.scopes),authClientId:G(t.clientId),authRedirectUri:G(t.redirectUri)}}function Re(e,t,n){let r=t??b(),i=L(e.type,r.toolType),a=H(e.labels)??{},o=L(e.profile),s=e.answeredBy===`page`;return{...r,key:t?.key??m(`tool`),toolName:L(e.name,r.toolName),toolType:i,description:L(e.description),category:L(e.category,`studio`),access:L(e.access,r.access),permission:L(e.permission,r.permission),loadTier:L(e.loadTier,r.loadTier),paths:W(e.paths)??[`*`],inputJson:e.input===void 0?r.inputJson:B(e.input),outputJson:e.output===void 0?r.outputJson:B(e.output),activity:K(a.activity),activityPast:K(a.activityPast),activityFailed:K(a.activityFailed),request:K(a.request),stubOutputJson:s?t?.stubOutputJson:Fe(i,e),answeredBy:s?`page`:void 0,...Ie(e),agentKey:o?n?.(o):void 0,maxCallsPerTurn:R(e.maxCallsPerTurn),...Le(e)}}function ze(e,t){let n=new Map(t.map(e=>[e.id,e]));return Object.entries(e).map(([e,t])=>{let r=n.get(e),i=O(t)?t:{},a=L(i.type,`choice`),o=i.criteria,s=Array.isArray(o)?o.map((e,t)=>({key:r?.criteria[t]?.key??m(`criterion`),label:``,text:L(e)})):O(o)?Object.entries(o).map(([e,t],n)=>({key:r?.criteria[n]?.key??m(`criterion`),label:e,text:L(t)})):[];return{key:r?.key??m(`question`),id:e,type:a,instructions:L(i.instructions),criteria:s,...a===`box`&&L(i.image)?{image:L(i.image)}:{}}})}function Be(e){if(!Array.isArray(e))return[];let t=[];for(let n of e)if(O(n)){if(typeof n.uri==`string`){let e=L(n.name);t.push({key:m(`reference`),uri:n.uri,...e?{name:e}:{}})}else typeof n.data==`string`&&t.push({key:m(`reference`),name:L(n.name),mimeType:L(n.mimeType),data:n.data})}return t}function Ve(e,t){return e?h.filter(n=>!n.optional||n.role===`branch`||!n.profileTypes.includes(e)?!1:n.profilePath in t).map(e=>e.id):g().included}function He(e,t,n,r){let i=[],a=new Set;for(let o of e){let e=Re(o,t.get(L(o.name)),n);if(e.toolName&&a.has(e.toolName)){let t=r.filter(e=>e.path===`name`)[i.length]??{line:1,column:1};throw new D(`'${e.toolName}' is registered twice.`,t.line,t.column)}e.toolName&&a.add(e.toolName),i.push(e)}return i}function Ue(e,t,n){if(t===void 0)return[];let r=n.findLast(e=>e.path===`tools.allow`)??{line:1,column:1};if(!Array.isArray(t))throw new D(`tools.allow has to be a list of tool names.`,r.line,r.column);let i=new Map(e.map(e=>[e.toolName,e])),a=[],o=new Set;for(let[e,s]of t.entries()){let t=n.find(t=>t.path===`tools.allow.${String(e)}`)??r;if(typeof s!=`string`||s.trim()===``)throw new D(`tools.allow names tools.`,t.line,t.column);if(o.has(s))throw new D(`'${s}' is listed twice in tools.allow.`,t.line,t.column);o.add(s);let c=i.get(s);if(!c)throw new D(`'${s}' is in tools.allow, and this file has no registerTool for it.`,t.line,t.column);a.push(c)}return a}function We(e,t,n){let r=H(t.identity)??{},i=r.systemByRole;return{...e,agentId:L(t.id),profileType:n,handle:L(r.handle),system:Te(r.system,`The system prompt has to be text.`),systemByRoleJson:O(i)||Array.isArray(i)?z(i):``}}function Ge(e){return{...O(e.providerContinuation)&&(e.providerContinuation.history===`provider`||e.providerContinuation.history===`stateless`)?{providerHistory:e.providerContinuation.history}:{},defaultModel:L(e.defaultModel),allowModelSelect:e.allowModelSelect===!0,maxSteps:R(e.maxSteps),key:L(e.key),fallbackKey:L(e.fallbackKey)}}function Ke(e){return s.includes(e)}function qe(e){let t=H(e.context);return{text:e.text!==!1,attachmentsAccept:U(H(e.attachments)?.accept),voiceAccept:U(H(e.voice)?.accept),maxFiles:R(e.maxFiles),maxBytes:R(e.maxBytes),maxTurnBytes:R(e.maxTurnBytes),limitsByMimeJson:z(e.limitsByMime),slotsJson:z(e.slots),contextFrom:U(t?.from).filter(Ke),contextMaxChars:R(t?.maxChars)}}function Je(e){return Object.fromEntries(Object.entries(e??{}).map(([e,t])=>[e,H(t)?.onFail===`fix`?`fix`:`drop`]))}function Ye(e,t){let n=t?.id??L(e?.structured),r=H(e?.streaming),i=H(e?.validation);return{mode:n?`structured`:`text`,schemaId:n,schemaJson:z(t?.spec.jsonSchema),streamMode:L(r?.mode),streamThoughts:r?.streamThoughts!==!1,validationEnabled:i!==void 0,maxRetries:R(i?.maxRetries),itemRules:Je(H(i?.items)),repairGuidance:``}}function Xe(e){let t=H(e.resumption),n=Array.isArray(t?.allowContinue)?t.allowContinue:[...i],r=Array.isArray(t?.autoContinue)?t.autoContinue:[...c];return{resumeEnabled:n.length>0||r.length>0,allowContinue:n,autoContinue:r,maxContinues:R(t?.maxContinues),continueInstruction:``,allowSteering:e.allowSteering!==!1,atStepLimit:e.atStepLimit===`answer`?`answer`:`stop`}}function Ze(e){let t=g().observability,n=typeof e.writeTo==`string`&&e.writeTo?e.writeTo:t.destination;return{...t,writeTo:e.writeTo!==!1&&n,destination:n,sampleRate:typeof e.sampleRate==`number`?e.sampleRate:t.sampleRate,include:{...t.include,...H(e.include)},scrub:{...t.scrub,...H(e.scrub)},retainForDays:R(e.retainForDays),rotateAfterMiB:R(e.rotateAfterMiB),resourceJson:z(e.resource)}}function Qe(e){return{aspectRatio:L(e.aspectRatio),resolution:L(e.resolution),mimeType:L(e.mimeType),quality:L(e.quality),background:L(e.background),n:R(e.n),seed:R(e.seed),outputCompression:R(e.outputCompression),includeText:e.includeText===!0,references:Be(e.references)}}function $e(e){return{voice:L(e.voice),style:L(e.style),speed:R(e.speed),format:L(e.format)}}function J(e,t){let n=e[t];return typeof n==`boolean`?n:x(t)}function et(e){let t=H(e.ingress)??{},n=H(e.vad)??{},r=H(e.contextCompression),i=H(r?.slidingWindow),a=H(e.transcription);return{ingressAudio:J(t,`audio`),ingressVideo:J(t,`video`),ingressText:J(t,`text`),voice:L(e.voice),sessionResumption:e.sessionResumption===!0,greeting:L(e.greeting),resumedPrompt:L(H(e.resumed)?.prompt),resumedAfterMs:R(H(e.resumed)?.afterMs),contextCompression:r!==void 0,compressionTriggerTokens:R(r?.triggerTokens),compressionTargetTokens:R(i?.targetTokens),transcriptionInput:a?.input===!0,transcriptionOutput:a?.output===!0,vadActivityHandling:L(n.activityHandling),vadStartSensitivity:L(n.startSensitivity),vadEndSensitivity:L(n.endSensitivity),vadPrefixPaddingMs:R(n.prefixPaddingMs),vadSilenceDurationMs:R(n.silenceDurationMs)}}function tt(e,t,n){let r=R(H(t.profile?.inputs)?.maxStateBytes);return{contract:L(e.contract),maxStateBytes:r,questions:t.questions?ze(t.questions,n.questions):[],images:t.images?nt(t.images,n.images):[]}}function nt(e,t){let n=new Map(t.map(e=>[e.name,e]));return Object.entries(e).map(([e,t])=>{let r=e.replace(/^<|>$/g,``),i=O(t)?t:{};return{key:n.get(r)?.key??m(`image`),name:r,mimeType:L(i.mimeType),data:L(i.data)}})}function rt(e){let t=L(e.type);if(t&&!_.includes(t))throw new D(`'${t}' is not a profile type.`,1,1);return t}var it=[`turnBehaviour.atStepLimit`,`outputs.validation.items.*.onFail`];function at(e,t){for(let n of it){let r=l(n)?.options??[];for(let[i,a]of Y(e,n.split(`.`),[]))a!==void 0&&!r.includes(a)&&X(t,i,`${JSON.stringify(a)} is not one of ${r.map(e=>`'${e}'`).join(`, `)}.`)}}function Y(e,t,n){let[r,...i]=t;return r===void 0?[[n.join(`.`),e]]:O(e)?(r===`*`?Object.keys(e):[r]).flatMap(t=>Y(e[t],i,[...n,t])):[]}function ot(e,t,n){let r=e.profile??{},i=rt(r);at(r,e.spans);let a=new Map(t.modelBindings.map(e=>[e.modelId,e])),o=new Map(t.toolSpecs.map(e=>[e.toolName,e])),s=H(r.tools)??{},c=H(r.inputs),l=H(r.outputs),u={...t,identity:We(t.identity,r,i),included:Ve(i,r),models:Ge(r),modelBindings:Object.entries(H(r.models)??{}).map(([t,r])=>Ne(t,r,a.get(t),n,e.spans)),tools:{t2Loader:L(s.t2Loader),parallel:s.parallel===!0},toolSpecs:[],inputs:c&&i!==`decision`?qe(c):t.inputs,outputs:l||e.structured?Ye(l,e.structured):t.outputs,turnBehaviour:q(r.turnBehaviour,Xe,t.turnBehaviour),guardrails:q(r.guardrails,Ae,t.guardrails),observability:q(r.observability,Ze,t.observability),image:q(r.image,Qe,t.image),speech:q(r.speech,$e,t.speech),live:q(r.live,et,t.live),decision:q(r.decision,n=>tt(n,e,t.decision),t.decision),labels:{}},d=He(e.tools,o,n,e.spans),f=Ue(d,s.allow,e.spans);u.toolSpecs=f;let p=new Set(f.map(e=>e.toolName));return u.tools.t2Loader&&!p.has(u.tools.t2Loader)&&(u.tools={...u.tools,t2Loader:``}),Me(u,r.labels),{draft:u,registered:d}}function st(e,t,n){try{let r=I(e),{draft:i,registered:a}=ot(r,t,n);return{ok:!0,draft:i,spans:r.spans,registered:a}}catch(e){if(e instanceof D)return{ok:!1,errors:[{message:e.message,line:e.line,column:e.column}]};throw e}}function X(e,t,n){let r=e.findLast(e=>e.path===t)??{line:1,column:1};throw new D(n,r.line,r.column)}var ct=new Set([`id`,`connection`,`keySlot`,`fallbackKeySlot`]);function lt(e,t,n){let{spec:r}=e;for(let e of Object.keys(r))ct.has(e)||X(n,e,`'${e}' isn't a provider setting the studio holds.`);r.id!==t.id&&X(n,`id`,`The id stays '${t.id}': models and code name the provider by it.`);let i=a(e.definition);if(!i){let t=u().flatMap(e=>o(e)??[]).join(`, `);X(n,``,`'${e.definition}' isn't one of the kernel's providers: ${t}.`)}let s=r.connection===void 0?{}:ut(r.connection,n),c=Object.keys(s).length===0&&t.connection===void 0,l={id:t.id,definition:i,...c?{}:{connection:s}};for(let e of[`keySlot`,`fallbackKeySlot`]){let t=r[e];t!==void 0&&(typeof t!=`string`&&X(n,e,`${e} names a key slot.`),l[e]=t)}return l}function ut(e,t){let n=`connection holds text settings here.`,r={};O(e)||X(t,`connection`,n);for(let[i,a]of Object.entries(e))typeof a!=`string`&&X(t,`connection`,n),r[i]=a;return r}function dt(e,t){try{let n=I(e,`provider`);if(!n.provider)throw new D(`This code needs registerProvider().`,1,1);return{ok:!0,provider:lt(n.provider,t,n.spans),spans:n.spans}}catch(e){if(e instanceof D)return{ok:!1,errors:[{message:e.message,line:e.line,column:e.column}]};throw e}}var Z=e(n(),1),Q=t(),ft=300,pt=2e3;function mt({editor:e,monaco:t,spans:n,errors:r},i){let a=e?.getModel();t&&a&&t.editor.setModelMarkers(a,`studio`,[...r.map(e=>$(t,e.line,e.column,e.message)),...gt(t,n,i)])}function ht({text:e,hold:t,isReadOnly:n=!1,issues:i,onApply:a}){let o=(0,Z.useRef)(null),s=(0,Z.useRef)(a),c=(0,Z.useRef)(e),l=(0,Z.useRef)(n);l.current=n;let u=(0,Z.useRef)(i),d=(0,Z.useRef)({spans:[],errors:[],setting:!1,dirty:!1});return s.current=a,c.current=e,u.current=i,(0,Z.useEffect)(()=>{let e=o.current;if(!e)return;let t={disposed:!1},n,i,a=0,f,p=!1,m=!1,h=()=>{a+=1,i&&clearTimeout(i),i=void 0,f?.stop(),f=void 0,p=!1,m=!1},g=t=>e.contains(t)?!0:t instanceof Element&&!!t.closest(`.suggest-widget, .parameter-hints-widget, .monaco-hover, .monaco-menu-container, .context-view`),_=()=>!!document.querySelector(`.suggest-widget.visible, .parameter-hints-widget.visible`),v,y=()=>{mt(d.current,u.current)};return(async()=>{let o=await r(()=>import(`./studio-monaco-xfyfezQS.js`),__vite__mapDeps([0,1,2,3,4]));await r(()=>import(`./register-CDgivxvX.js`),__vite__mapDeps([5,2,1,3]));let u=(await r(async()=>{let{default:e}=await import(`./editor.worker-6GY8RhDc.js`);return{default:e}},[])).default;if(self.MonacoEnvironment={getWorker(){return new u}},t.disposed||!e.isConnected)return;let b=document.documentElement.dataset.theme===`dark`||globalThis.matchMedia(`(prefers-color-scheme: dark)`).matches,x=o.Uri.parse(`file:///agent.ts`);o.editor.getModel(x)?.dispose();let S=o.editor.createModel(c.current,`typescript`,x),C=o.editor.create(e,{model:S,readOnly:l.current,language:`typescript`,theme:b?`vs-dark`:`vs`,minimap:{enabled:!1},fontSize:13,wordWrap:`on`,wrappingIndent:`indent`,scrollBeyondLastLine:!1,automaticLayout:!0,fixedOverflowWidgets:!0,tabSize:2,padding:{top:12},quickSuggestions:{other:!0,comments:!1,strings:!0},suggestOnTriggerCharacters:!0,acceptSuggestionOnEnter:`on`,tabCompletion:`on`,wordBasedSuggestions:`currentDocument`,parameterHints:{enabled:!0},suggest:{preview:!0,showIcons:!0}});d.current.editor=C,d.current.monaco=o;let w=()=>{i&&clearTimeout(i),i=setTimeout(()=>{t.disposed||(_()?w():h())},pt)},T=()=>{if(f){m&&w();return}if(p)return;let e=a,n=()=>t.disposed||e!==a;p=!0,r(async()=>{let{openTypeChecker:e}=await import(`./studio-type-checker-Cp6IxLBp.js`);return{openTypeChecker:e}},__vite__mapDeps([6,2])).then(({openTypeChecker:r})=>{if(n())return;let i=r(o,C,()=>{t.disposed||e!==a||(m=!0,w())});n()?i.stop():f=i}).catch(()=>{}).finally(()=>{e===a&&(p=!1)})};C.onKeyDown(e=>{let t=e.browserEvent;t.metaKey||t.ctrlKey||t.altKey||m&&w()});let E=e=>{let t=e.target;t instanceof Node&&!g(t)&&h()};document.addEventListener(`pointerdown`,E,!0),v=()=>{document.removeEventListener(`pointerdown`,E,!0)},C.onDidBlurEditorText(()=>{queueMicrotask(()=>{if(t.disposed||C.hasTextFocus())return;let e=document.activeElement;e&&g(e)||h()})}),C.onDidChangeModelContent(()=>{if(d.current.setting)return;T();let e=C.getValue();d.current.dirty=e!==c.current,n&&clearTimeout(n),n=setTimeout(()=>{let t=s.current(e);d.current.spans=t.spans,d.current.errors=t.errors,y()},ft)}),y()})(),()=>{t.disposed=!0,v?.(),h(),n&&clearTimeout(n);let e=d.current.editor?.getModel();d.current.editor?.dispose(),e?.dispose(),d.current.editor=void 0}},[]),(0,Z.useEffect)(()=>{let{editor:n}=d.current;n&&!t&&(d.current.dirty&&n.getValue()!==e||(n.getValue()===e||(d.current.setting=!0,n.setValue(e),d.current.setting=!1),d.current.dirty=!1))},[e,t]),(0,Z.useEffect)(()=>{d.current.editor?.updateOptions({readOnly:n})},[n]),(0,Z.useEffect)(()=>{mt(d.current,i)},[i]),(0,Q.jsx)(`div`,{ref:o,className:`studio-fill`})}function $(e,t,n,r){return{startLineNumber:t,startColumn:n,endLineNumber:t,endColumn:n+1,message:r,severity:e.MarkerSeverity.Error}}function gt(e,t,n){return n.flatMap(n=>{let r=n.field?`${n.nodeId}.${n.field}`:n.nodeId,i=t.find(e=>e.path===r)??(n.field?t.find(e=>e.path===n.field):void 0);return i?[$(e,i.line,i.column,n.message)]:[]})}function _t({source:e,blocked:t,issues:n,state:r}){let i=(0,Z.useRef)(e);e&&(i.current=e);let a=(0,Z.useCallback)(e=>{let t=te(r.workspace,r.focus);if(!t)return{errors:[{message:`No agent is open.`,line:1,column:1}],spans:[]};let n=st(e,{...t,toolSpecs:r.workspace.toolSpecs},e=>r.workspace.agents.find(t=>t.identity.agentId.trim()===e)?.key);return n.ok?(r.update(e=>ee(e,r.focus,n.draft,n.registered)),{errors:[],spans:n.spans}):{errors:n.errors,spans:[]}},[r]);return i.current?(0,Q.jsx)(`div`,{className:`studio-fill`,children:(0,Q.jsx)(ht,{text:e??i.current,hold:e==null,issues:n,onApply:a})}):(0,Q.jsx)(ne,{title:`No code yet`,description:`${t??``} to generate the TypeScript.`})}function vt({provider:e,issues:t,state:n,isEditable:r}){let i=(0,Z.useCallback)(t=>{let r=n.workspace.providers.find(t=>t.id===e.id);if(!r)return{errors:[{message:`No provider is open.`,line:1,column:1}],spans:[]};let i=dt(t,r);return i.ok?(n.update(e=>E(e,i.provider)),{errors:[],spans:i.spans}):{errors:i.errors,spans:[]}},[n,e.id]);return(0,Q.jsx)(`div`,{className:`studio-fill`,children:(0,Q.jsx)(ht,{text:re(e),hold:!1,isReadOnly:!r||o(e.definition)===void 0,issues:t,onApply:i},e.id)})}export{_t as CodeBody,vt as ProviderCode};
|
|
8
|
+
`)||void 0:G(e)}function q(e,t,n){return O(e)?t(e):n}function De(e,t,n){if(!O(n))return;if(Array.isArray(n.names)){e.innocentNames=U(n.names);return}if(!(t in e.allow))return;let r=e.allow[t];r.hosts=U(n.hosts),r.fromTools=n.fromTools!==!1}function Oe(e,t,n){let r=H(n.at)??{};e.detect[t]={...e.detect[t],...r};let i=e.sources[t];i&&(n.theorem===!1&&(i.theorem=!1),i.patterns=V(n.patterns),i.hint=L(n.hint)),De(e,t,n.allow)}function ke(e,t){let n=d(f,()=>`ignore`);return O(t.at)&&Object.assign(n,t.at),{key:e,label:L(t.label),at:n,patterns:V(t.patterns),hint:L(t.hint)}}function Ae(e){let t=g().guardrails;if(!O(e))return t;let n={detect:structuredClone(t.detect),sources:structuredClone(t.sources),allow:structuredClone(t.allow),innocentNames:[...t.innocentNames]},r=[],i=new Set(p);for(let[t,a]of Object.entries(H(e.detect)??{}))O(a)&&(i.has(t)?Oe(n,t,a):r.push(ke(t,a)));let a=H(e.quota),o=H(e.blockedReply),s=H(e.network),c=H(e.taint);return{...t,...n,own:r,quotaEnabled:a!==void 0,quotaPerDay:R(a?.perDay),blockedReplyOnBlock:L(o?.onBlock),blockedReplyMaxRetries:R(o?.maxRetries),allowPrivateNetworks:s?.allowPrivateNetworks===!0,allowedHosts:U(s?.allowedHosts),allowedSchemes:U(s?.allowedSchemes),taintAfterRemoteRead:L(c?.afterRemoteRead),taintRemoteDestination:L(c?.remoteDestination)}}var je={"continue.instruction":(e,t)=>{e.turnBehaviour.continueInstruction=t},"canary.bind_note":(e,t)=>{e.guardrails.canaryBindNote=t},"quota.exhausted":(e,t)=>{e.guardrails.quotaMessage=t},"repair.default_guidance":(e,t)=>{e.outputs.repairGuidance=t},"egress.default_repair_guidance":(e,t)=>{e.guardrails.egressRepairGuidance=t},"egress.refusal":(e,t)=>{e.guardrails.egressRefusal=t}};function Me(e,t){if(!O(t))return;let n={};for(let[r,i]of Object.entries(t)){if(typeof i!=`string`)continue;let t=je[r];t?t(e,i):v[r]||(n[r]=i)}e.labels=n}function Ne(e,t,n,r,i){let a=n??y({modelId:e});if(!O(t))return{...a,modelId:e};let o=O(t.efforts)?Object.entries(t.efforts).map(([e,t])=>({alias:e,level:t})):[],s=O(t.compaction)?t.compaction:void 0,c=L(s?.profile),l=R(t.timeoutMs);return{...a,modelId:e,protocol:L(t.protocol,a.protocol),provider:L(t.provider,a.provider),apiId:L(t.apiId),options:H(t.options)??{},timeoutMs:l,efforts:o,defaultEffort:L(t.defaultEffort),allowEffortSelect:t.allowEffortSelect===!0,summaries:typeof t.summaries==`boolean`?t.summaries:null,maxOutputTokens:R(t.maxOutputTokens),temperature:typeof t.temperature==`number`?t.temperature:null,builtInTools:Array.isArray(t.builtInTools)?t.builtInTools.filter(e=>typeof e==`string`):[],keySlot:L(t.keySlot),fallbackKeySlot:L(t.fallbackKeySlot),compactTiming:L(s?.timing),compactMaxTokens:R(s?.maxTokens),compactAt:typeof s?.compactAt==`number`?s.compactAt:void 0,compactKeep:R(s?.previousExchanges),compactMeter:L(s?.meter),compactWith:c?Pe(c,r,`models.${e}.compaction.profile`,i):``}}function Pe(e,t,n,r){return t?t(e)??X(r,n,`'${e}' is not an agent here, so it can't write this model's summaries.`):``}function Fe(e,t){let n=t.output;if(e===`function`&&O(t.handler)&&O(n)&&!Ee(t.handler,w(n)))return z(t.handler)}function Ie(e){let t=H(e.mapping)??{};return{endpoint:G(e.endpoint),method:G(e.method),headersJson:O(e.headers)?z(e.headers):void 0,pathParams:W(t.pathParams),queryParams:W(t.queryParams),bodyParam:G(t.bodyParam),serverUrl:G(e.serverUrl),mcpToolName:G(e.mcpToolName)}}function Le(e){let t=H(e.auth)??{};return{authType:L(t.type),authSlot:G(t.slot),authService:G(t.service),authHeaderName:G(t.headerName),authHeaderPrefix:typeof t.headerPrefix==`string`?t.headerPrefix:void 0,authQueryParam:G(t.queryParam),authUnauthenticated:L(t.onUnauthenticated),authScopes:W(t.scopes),authClientId:G(t.clientId),authRedirectUri:G(t.redirectUri)}}function Re(e,t,n){let r=t??b(),i=L(e.type,r.toolType),a=H(e.labels)??{},o=L(e.profile),s=e.answeredBy===`page`;return{...r,key:t?.key??m(`tool`),toolName:L(e.name,r.toolName),toolType:i,description:L(e.description),category:L(e.category,`studio`),access:L(e.access,r.access),permission:L(e.permission,r.permission),loadTier:L(e.loadTier,r.loadTier),paths:W(e.paths)??[`*`],inputJson:e.input===void 0?r.inputJson:B(e.input),outputJson:e.output===void 0?r.outputJson:B(e.output),activity:K(a.activity),activityPast:K(a.activityPast),activityFailed:K(a.activityFailed),request:K(a.request),stubOutputJson:s?t?.stubOutputJson:Fe(i,e),answeredBy:s?`page`:void 0,...Ie(e),agentKey:o?n?.(o):void 0,maxCallsPerTurn:R(e.maxCallsPerTurn),...Le(e)}}function ze(e,t){let n=new Map(t.map(e=>[e.id,e]));return Object.entries(e).map(([e,t])=>{let r=n.get(e),i=O(t)?t:{},a=L(i.type,`choice`),o=i.criteria,s=Array.isArray(o)?o.map((e,t)=>({key:r?.criteria[t]?.key??m(`criterion`),label:``,text:L(e)})):O(o)?Object.entries(o).map(([e,t],n)=>({key:r?.criteria[n]?.key??m(`criterion`),label:e,text:L(t)})):[];return{key:r?.key??m(`question`),id:e,type:a,instructions:L(i.instructions),criteria:s,...a===`box`&&L(i.image)?{image:L(i.image)}:{}}})}function Be(e){if(!Array.isArray(e))return[];let t=[];for(let n of e)if(O(n)){if(typeof n.uri==`string`){let e=L(n.name);t.push({key:m(`reference`),uri:n.uri,...e?{name:e}:{}})}else typeof n.data==`string`&&t.push({key:m(`reference`),name:L(n.name),mimeType:L(n.mimeType),data:n.data})}return t}function Ve(e,t){return e?h.filter(n=>!n.optional||n.role===`branch`||!n.profileTypes.includes(e)?!1:n.profilePath in t).map(e=>e.id):g().included}function He(e,t,n,r){let i=[],a=new Set;for(let o of e){let e=Re(o,t.get(L(o.name)),n);if(e.toolName&&a.has(e.toolName)){let t=r.filter(e=>e.path===`name`)[i.length]??{line:1,column:1};throw new D(`'${e.toolName}' is registered twice.`,t.line,t.column)}e.toolName&&a.add(e.toolName),i.push(e)}return i}function Ue(e,t,n){if(t===void 0)return[];let r=n.findLast(e=>e.path===`tools.allow`)??{line:1,column:1};if(!Array.isArray(t))throw new D(`tools.allow has to be a list of tool names.`,r.line,r.column);let i=new Map(e.map(e=>[e.toolName,e])),a=[],o=new Set;for(let[e,s]of t.entries()){let t=n.find(t=>t.path===`tools.allow.${String(e)}`)??r;if(typeof s!=`string`||s.trim()===``)throw new D(`tools.allow names tools.`,t.line,t.column);if(o.has(s))throw new D(`'${s}' is listed twice in tools.allow.`,t.line,t.column);o.add(s);let c=i.get(s);if(!c)throw new D(`'${s}' is in tools.allow, and this file has no registerTool for it.`,t.line,t.column);a.push(c)}return a}function We(e,t,n){let r=H(t.identity)??{},i=r.systemByRole;return{...e,agentId:L(t.id),profileType:n,handle:L(r.handle),system:Te(r.system,`The system prompt has to be text.`),systemByRoleJson:O(i)||Array.isArray(i)?z(i):``}}function Ge(e){return{...O(e.providerContinuation)&&(e.providerContinuation.history===`provider`||e.providerContinuation.history===`stateless`)?{providerHistory:e.providerContinuation.history}:{},defaultModel:L(e.defaultModel),allowModelSelect:e.allowModelSelect===!0,maxSteps:R(e.maxSteps),key:L(e.key),fallbackKey:L(e.fallbackKey)}}function Ke(e){return s.includes(e)}function qe(e){let t=H(e.context);return{text:e.text!==!1,attachmentsAccept:U(H(e.attachments)?.accept),voiceAccept:U(H(e.voice)?.accept),maxFiles:R(e.maxFiles),maxBytes:R(e.maxBytes),maxTurnBytes:R(e.maxTurnBytes),limitsByMimeJson:z(e.limitsByMime),slotsJson:z(e.slots),contextFrom:U(t?.from).filter(Ke),contextMaxChars:R(t?.maxChars)}}function Je(e){return Object.fromEntries(Object.entries(e??{}).map(([e,t])=>[e,H(t)?.onFail===`fix`?`fix`:`drop`]))}function Ye(e,t){let n=t?.id??L(e?.structured),r=H(e?.streaming),i=H(e?.validation);return{mode:n?`structured`:`text`,schemaId:n,schemaJson:z(t?.spec.jsonSchema),streamMode:L(r?.mode),streamThoughts:r?.streamThoughts!==!1,validationEnabled:i!==void 0,maxRetries:R(i?.maxRetries),itemRules:Je(H(i?.items)),repairGuidance:``}}function Xe(e){let t=H(e.resumption),n=Array.isArray(t?.allowContinue)?t.allowContinue:[...i],r=Array.isArray(t?.autoContinue)?t.autoContinue:[...c];return{resumeEnabled:n.length>0||r.length>0,allowContinue:n,autoContinue:r,maxContinues:R(t?.maxContinues),continueInstruction:``,allowSteering:e.allowSteering!==!1,atStepLimit:e.atStepLimit===`answer`?`answer`:`stop`}}function Ze(e){let t=g().observability,n=typeof e.writeTo==`string`&&e.writeTo?e.writeTo:t.destination;return{...t,writeTo:e.writeTo!==!1&&n,destination:n,sampleRate:typeof e.sampleRate==`number`?e.sampleRate:t.sampleRate,include:{...t.include,...H(e.include)},scrub:{...t.scrub,...H(e.scrub)},retainForDays:R(e.retainForDays),rotateAfterMiB:R(e.rotateAfterMiB),resourceJson:z(e.resource)}}function Qe(e){return{aspectRatio:L(e.aspectRatio),resolution:L(e.resolution),mimeType:L(e.mimeType),quality:L(e.quality),background:L(e.background),n:R(e.n),seed:R(e.seed),outputCompression:R(e.outputCompression),includeText:e.includeText===!0,references:Be(e.references)}}function $e(e){return{voice:L(e.voice),style:L(e.style),speed:R(e.speed),format:L(e.format)}}function J(e,t){let n=e[t];return typeof n==`boolean`?n:x(t)}function et(e){let t=H(e.ingress)??{},n=H(e.vad)??{},r=H(e.contextCompression),i=H(r?.slidingWindow),a=H(e.transcription);return{ingressAudio:J(t,`audio`),ingressVideo:J(t,`video`),ingressText:J(t,`text`),voice:L(e.voice),sessionResumption:e.sessionResumption===!0,greeting:L(e.greeting),resumedPrompt:L(H(e.resumed)?.prompt),resumedAfterMs:R(H(e.resumed)?.afterMs),contextCompression:r!==void 0,compressionTriggerTokens:R(r?.triggerTokens),compressionTargetTokens:R(i?.targetTokens),transcriptionInput:a?.input===!0,transcriptionOutput:a?.output===!0,vadActivityHandling:L(n.activityHandling),vadStartSensitivity:L(n.startSensitivity),vadEndSensitivity:L(n.endSensitivity),vadPrefixPaddingMs:R(n.prefixPaddingMs),vadSilenceDurationMs:R(n.silenceDurationMs)}}function tt(e,t,n){let r=R(H(t.profile?.inputs)?.maxStateBytes);return{contract:L(e.contract),maxStateBytes:r,questions:t.questions?ze(t.questions,n.questions):[],images:t.images?nt(t.images,n.images):[]}}function nt(e,t){let n=new Map(t.map(e=>[e.name,e]));return Object.entries(e).map(([e,t])=>{let r=e.replace(/^<|>$/g,``),i=O(t)?t:{};return{key:n.get(r)?.key??m(`image`),name:r,mimeType:L(i.mimeType),data:L(i.data)}})}function rt(e){let t=L(e.type);if(t&&!_.includes(t))throw new D(`'${t}' is not a profile type.`,1,1);return t}var it=[`turnBehaviour.atStepLimit`,`outputs.validation.items.*.onFail`];function at(e,t){for(let n of it){let r=l(n)?.options??[];for(let[i,a]of Y(e,n.split(`.`),[]))a!==void 0&&!r.includes(a)&&X(t,i,`${JSON.stringify(a)} is not one of ${r.map(e=>`'${e}'`).join(`, `)}.`)}}function Y(e,t,n){let[r,...i]=t;return r===void 0?[[n.join(`.`),e]]:O(e)?(r===`*`?Object.keys(e):[r]).flatMap(t=>Y(e[t],i,[...n,t])):[]}function ot(e,t,n){let r=e.profile??{},i=rt(r);at(r,e.spans);let a=new Map(t.modelBindings.map(e=>[e.modelId,e])),o=new Map(t.toolSpecs.map(e=>[e.toolName,e])),s=H(r.tools)??{},c=H(r.inputs),l=H(r.outputs),u={...t,identity:We(t.identity,r,i),included:Ve(i,r),models:Ge(r),modelBindings:Object.entries(H(r.models)??{}).map(([t,r])=>Ne(t,r,a.get(t),n,e.spans)),tools:{t2Loader:L(s.t2Loader),parallel:s.parallel===!0},toolSpecs:[],inputs:c&&i!==`decision`?qe(c):t.inputs,outputs:l||e.structured?Ye(l,e.structured):t.outputs,turnBehaviour:q(r.turnBehaviour,Xe,t.turnBehaviour),guardrails:q(r.guardrails,Ae,t.guardrails),observability:q(r.observability,Ze,t.observability),image:q(r.image,Qe,t.image),speech:q(r.speech,$e,t.speech),live:q(r.live,et,t.live),decision:q(r.decision,n=>tt(n,e,t.decision),t.decision),labels:{}},d=He(e.tools,o,n,e.spans),f=Ue(d,s.allow,e.spans);u.toolSpecs=f;let p=new Set(f.map(e=>e.toolName));return u.tools.t2Loader&&!p.has(u.tools.t2Loader)&&(u.tools={...u.tools,t2Loader:``}),Me(u,r.labels),{draft:u,registered:d}}function st(e,t,n){try{let r=I(e),{draft:i,registered:a}=ot(r,t,n);return{ok:!0,draft:i,spans:r.spans,registered:a}}catch(e){if(e instanceof D)return{ok:!1,errors:[{message:e.message,line:e.line,column:e.column}]};throw e}}function X(e,t,n){let r=e.findLast(e=>e.path===t)??{line:1,column:1};throw new D(n,r.line,r.column)}var ct=new Set([`id`,`connection`,`keySlot`,`fallbackKeySlot`]);function lt(e,t,n){let{spec:r}=e;for(let e of Object.keys(r))ct.has(e)||X(n,e,`'${e}' isn't a provider setting the studio holds.`);r.id!==t.id&&X(n,`id`,`The id stays '${t.id}': models and code name the provider by it.`);let i=a(e.definition);if(!i){let t=u().flatMap(e=>o(e)??[]).join(`, `);X(n,``,`'${e.definition}' isn't one of the kernel's providers: ${t}.`)}let s=r.connection===void 0?{}:ut(r.connection,n),c=Object.keys(s).length===0&&t.connection===void 0,l={id:t.id,definition:i,...c?{}:{connection:s}};for(let e of[`keySlot`,`fallbackKeySlot`]){let t=r[e];t!==void 0&&(typeof t!=`string`&&X(n,e,`${e} names a key slot.`),l[e]=t)}return l}function ut(e,t){let n=`connection holds text settings here.`,r={};O(e)||X(t,`connection`,n);for(let[i,a]of Object.entries(e))typeof a!=`string`&&X(t,`connection`,n),r[i]=a;return r}function dt(e,t){try{let n=I(e,`provider`);if(!n.provider)throw new D(`This code needs registerProvider().`,1,1);return{ok:!0,provider:lt(n.provider,t,n.spans),spans:n.spans}}catch(e){if(e instanceof D)return{ok:!1,errors:[{message:e.message,line:e.line,column:e.column}]};throw e}}var Z=e(n(),1),Q=t(),ft=300,pt=2e3;function mt({editor:e,monaco:t,spans:n,errors:r},i){let a=e?.getModel();t&&a&&t.editor.setModelMarkers(a,`studio`,[...r.map(e=>$(t,e.line,e.column,e.message)),...gt(t,n,i)])}function ht({text:e,hold:t,isReadOnly:n=!1,issues:i,onApply:a}){let o=(0,Z.useRef)(null),s=(0,Z.useRef)(a),c=(0,Z.useRef)(e),l=(0,Z.useRef)(n);l.current=n;let u=(0,Z.useRef)(i),d=(0,Z.useRef)({spans:[],errors:[],setting:!1,dirty:!1});return s.current=a,c.current=e,u.current=i,(0,Z.useEffect)(()=>{let e=o.current;if(!e)return;let t={disposed:!1},n,i,a=0,f,p=!1,m=!1,h=()=>{a+=1,i&&clearTimeout(i),i=void 0,f?.stop(),f=void 0,p=!1,m=!1},g=t=>e.contains(t)?!0:t instanceof Element&&!!t.closest(`.suggest-widget, .parameter-hints-widget, .monaco-hover, .monaco-menu-container, .context-view`),_=()=>!!document.querySelector(`.suggest-widget.visible, .parameter-hints-widget.visible`),v,y=()=>{mt(d.current,u.current)};return(async()=>{let o=await r(()=>import(`./studio-monaco-xfyfezQS.js`),__vite__mapDeps([0,1,2,3,4]));await r(()=>import(`./register-CDgivxvX.js`),__vite__mapDeps([5,2,1,3]));let u=(await r(async()=>{let{default:e}=await import(`./editor.worker-6GY8RhDc.js`);return{default:e}},[])).default;if(self.MonacoEnvironment={getWorker(){return new u}},t.disposed||!e.isConnected)return;let b=document.documentElement.dataset.theme===`dark`||globalThis.matchMedia(`(prefers-color-scheme: dark)`).matches,x=o.Uri.parse(`file:///agent.ts`);o.editor.getModel(x)?.dispose();let S=o.editor.createModel(c.current,`typescript`,x),C=o.editor.create(e,{model:S,readOnly:l.current,language:`typescript`,theme:b?`vs-dark`:`vs`,minimap:{enabled:!1},fontSize:13,wordWrap:`on`,wrappingIndent:`indent`,scrollBeyondLastLine:!1,automaticLayout:!0,fixedOverflowWidgets:!0,tabSize:2,padding:{top:12},quickSuggestions:{other:!0,comments:!1,strings:!0},suggestOnTriggerCharacters:!0,acceptSuggestionOnEnter:`on`,tabCompletion:`on`,wordBasedSuggestions:`currentDocument`,parameterHints:{enabled:!0},suggest:{preview:!0,showIcons:!0}});d.current.editor=C,d.current.monaco=o;let w=()=>{i&&clearTimeout(i),i=setTimeout(()=>{t.disposed||(_()?w():h())},pt)},T=()=>{if(f){m&&w();return}if(p)return;let e=a,n=()=>t.disposed||e!==a;p=!0,r(async()=>{let{openTypeChecker:e}=await import(`./studio-type-checker-DosSRFbd.js`);return{openTypeChecker:e}},__vite__mapDeps([6,2])).then(({openTypeChecker:r})=>{if(n())return;let i=r(o,C,()=>{t.disposed||e!==a||(m=!0,w())});n()?i.stop():f=i}).catch(()=>{}).finally(()=>{e===a&&(p=!1)})};C.onKeyDown(e=>{let t=e.browserEvent;t.metaKey||t.ctrlKey||t.altKey||m&&w()});let E=e=>{let t=e.target;t instanceof Node&&!g(t)&&h()};document.addEventListener(`pointerdown`,E,!0),v=()=>{document.removeEventListener(`pointerdown`,E,!0)},C.onDidBlurEditorText(()=>{queueMicrotask(()=>{if(t.disposed||C.hasTextFocus())return;let e=document.activeElement;e&&g(e)||h()})}),C.onDidChangeModelContent(()=>{if(d.current.setting)return;T();let e=C.getValue();d.current.dirty=e!==c.current,n&&clearTimeout(n),n=setTimeout(()=>{let t=s.current(e);d.current.spans=t.spans,d.current.errors=t.errors,y()},ft)}),y()})(),()=>{t.disposed=!0,v?.(),h(),n&&clearTimeout(n);let e=d.current.editor?.getModel();d.current.editor?.dispose(),e?.dispose(),d.current.editor=void 0}},[]),(0,Z.useEffect)(()=>{let{editor:n}=d.current;n&&!t&&(d.current.dirty&&n.getValue()!==e||(n.getValue()===e||(d.current.setting=!0,n.setValue(e),d.current.setting=!1),d.current.dirty=!1))},[e,t]),(0,Z.useEffect)(()=>{d.current.editor?.updateOptions({readOnly:n})},[n]),(0,Z.useEffect)(()=>{mt(d.current,i)},[i]),(0,Q.jsx)(`div`,{ref:o,className:`studio-fill`})}function $(e,t,n,r){return{startLineNumber:t,startColumn:n,endLineNumber:t,endColumn:n+1,message:r,severity:e.MarkerSeverity.Error}}function gt(e,t,n){return n.flatMap(n=>{let r=n.field?`${n.nodeId}.${n.field}`:n.nodeId,i=t.find(e=>e.path===r)??(n.field?t.find(e=>e.path===n.field):void 0);return i?[$(e,i.line,i.column,n.message)]:[]})}function _t({source:e,blocked:t,issues:n,state:r}){let i=(0,Z.useRef)(e);e&&(i.current=e);let a=(0,Z.useCallback)(e=>{let t=te(r.workspace,r.focus);if(!t)return{errors:[{message:`No agent is open.`,line:1,column:1}],spans:[]};let n=st(e,{...t,toolSpecs:r.workspace.toolSpecs},e=>r.workspace.agents.find(t=>t.identity.agentId.trim()===e)?.key);return n.ok?(r.update(e=>ee(e,r.focus,n.draft,n.registered)),{errors:[],spans:n.spans}):{errors:n.errors,spans:[]}},[r]);return i.current?(0,Q.jsx)(`div`,{className:`studio-fill`,children:(0,Q.jsx)(ht,{text:e??i.current,hold:e==null,issues:n,onApply:a})}):(0,Q.jsx)(ne,{title:`No code yet`,description:`${t??``} to generate the TypeScript.`})}function vt({provider:e,issues:t,state:n,isEditable:r}){let i=(0,Z.useCallback)(t=>{let r=n.workspace.providers.find(t=>t.id===e.id);if(!r)return{errors:[{message:`No provider is open.`,line:1,column:1}],spans:[]};let i=dt(t,r);return i.ok?(n.update(e=>E(e,i.provider)),{errors:[],spans:i.spans}):{errors:i.errors,spans:[]}},[n,e.id]);return(0,Q.jsx)(`div`,{className:`studio-fill`,children:(0,Q.jsx)(ht,{text:re(e),hold:!1,isReadOnly:!r||o(e.definition)===void 0,issues:t,onApply:i},e.id)})}export{_t as CodeBody,vt as ProviderCode};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,u as n}from"./themeProps-3IqahpCr.js";import{l as r,n as i,t as a,u as o}from"./SegmentedControlItem-h-aaXzyS.js";import{t as s}from"./VStack-CkVMcNiK.js";import{n as c,t as l}from"./StackItem-CQviqAfM.js";import{c as u,u as d}from"./browser-transport-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,u as n}from"./themeProps-3IqahpCr.js";import{l as r,n as i,t as a,u as o}from"./SegmentedControlItem-h-aaXzyS.js";import{t as s}from"./VStack-CkVMcNiK.js";import{n as c,t as l}from"./StackItem-CQviqAfM.js";import{c as u,u as d}from"./browser-transport-BEFsWdzI.js";import{p as f,v as p}from"./groupStyles-C7Ter7zC.js";import{r as m,t as ee}from"./IconButton-DlOGzJIX.js";import{a as h,g as te,i as ne,l as g,s as re,u as ie}from"./SidePanel-BL32abk8.js";import{t as _}from"./Text-bum6zWWx.js";import{n as v}from"./labels-provider-4TIWDvsE.js";import{n as ae,t as y}from"./Card-Lp-0P5eL.js";import{n as b}from"./ScrollableArea-Ckugdj1N.js";import{i as x}from"./Banner-Buiul23B.js";import{a as oe}from"./arrive-DvbqpeRS.js";import{t as se}from"./Center-nHS1JSux.js";import{a as S,o as ce}from"./shaped-data-BcarWqd5.js";import{n as C}from"./trace-patterns-DnYJa0nI.js";import{Ot as le,S as ue,_ as w,g as T,h as de,o as fe,w as pe}from"./index-D2T8e_8Q.js";var E=e(n(),1),me=new Set([`image/png`,`image/jpeg`]),D=`image/png,image/jpeg`;function he(e,t){let n=e.replace(/\.[^.]*$/,``).toLowerCase().replace(/[^a-z0-9]+/g,`_`).replace(/^_+|_+$/g,``)||`image`,r=`<${n}>`;for(let e=2;t.includes(r);e+=1)r=`<${n}_${String(e)}>`;return r}async function O(e){if(!me.has(e.type))return null;let t=new Uint8Array(await e.arrayBuffer()),n=``;for(let e=0;e<t.length;e+=32768)n+=String.fromCharCode(...t.subarray(e,e+32768));return{mimeType:e.type,data:btoa(n)}}function k(e){return`data:${e.mimeType};base64,${e.data}`}function A(e,t){return typeof e==`string`?e===t:Array.isArray(e)?e.some(e=>A(e,t)):typeof e==`object`&&e?Object.values(e).some(e=>A(e,t)):!1}function j(e,t){return Object.fromEntries(Object.entries(e).filter(([e])=>A(t,e)))}function M(e,t,n){let r=he(e,[...Object.keys(t),...n.map(e=>`<${e}>`)]);return{key:r.slice(1,-1),reference:r}}function N(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:void 0}function P(e,t){let{images:n,state:r}=t;for(let[i,a]of e){let{key:e,reference:o}=M(i.name,{...t.host,...n},Object.keys(r));n={...n,[o]:a},r={...r,[e]:o}}return{images:n,state:r}}function F(e,t){let n=e;for(let e of t.split(`.`)){if(typeof n!=`object`||!n)return;n=Array.isArray(n)?n[Number(e)]:n[e]}return n}function I(e,t,n){let r=Object.keys(e),i=n===void 0||n in e?n:F(t,n);return e[(typeof i==`string`&&i in e?i:void 0)??r.find(e=>A(t,e))??r[0]??``]}function L(e,t,n){return{x:e.left*t,y:e.top*n,width:(e.right-e.left)*t,height:(e.bottom-e.top)*n,line:Math.max(2,Math.round(Math.min(t,n)/200))}}var R=.45;async function ge(e,t,n){let r=new Image;r.src=e,await r.decode();let i=document.createElement(`canvas`);i.width=r.naturalWidth,i.height=r.naturalHeight;let a=i.getContext(`2d`);if(!a)return e;let o=L(t,i.width,i.height);return a.drawImage(r,0,0),a.fillStyle=n.shade,a.globalAlpha=R,a.beginPath(),a.rect(0,0,i.width,i.height),a.rect(o.x,o.y,o.width,o.height),a.fill(`evenodd`),a.globalAlpha=1,a.strokeStyle=n.outline,a.lineWidth=o.line,a.strokeRect(o.x,o.y,o.width,o.height),i.toDataURL(`image/png`)}function _e(e){let t=e.right-e.left,n=e.bottom-e.top;return{width:100/t,height:100/n,left:-e.left/t*100,top:-e.top/n*100}}function ve(e){return e.every(e=>typeof e==`string`)}function z(e){return e==null||typeof e==`string`?``:typeof e==`number`?0:typeof e==`boolean`?!1:Array.isArray(e)?[]:Object.fromEntries(Object.entries(e).map(([e,t])=>[e,z(t)]))}function ye(e){let t=e[0];if(typeof t!=`object`||!t||Array.isArray(t))return null;let n=Object.keys(t);return n.length===0||n.length>4||!e.every(e=>typeof e==`object`&&!!e&&!Array.isArray(e)&&Object.keys(e).join()===n.join()&&Object.values(e).every(e=>typeof e!=`object`||!e))?null:n.map(t=>{let n=e.map(e=>String(e[t]??``).length),r=Math.max(t.length,...n);return{key:t,weight:Math.min(4,Math.max(1,Math.round(r/10)))}})}var B=t();function be(e){return e===null?[]:Array.isArray(e)?e:[e]}function V(){let e=v(),[t,n]=(0,E.useState)(null);return{read:async e=>{n(null);let t=[];for(let r of be(e)){let e=await O(r);e?t.push([r,e]):n(r.name)}return t},status:t===null?void 0:{type:`error`,message:e(`@theorem.decision.image_bad`,{file:t})}}}function xe({onImages:e}){let t=v(),{read:n,status:r}=V();return(0,B.jsx)(T,{label:t(`@theorem.decision.add_image`),isLabelHidden:!0,mode:`dropzone`,isMultiple:!0,accept:D,value:null,placeholder:t(`@theorem.decision.add_image_hint`),status:r,statusVariant:`detached`,onChange:t=>{n(t).then(t=>{t.length>0&&e(t)})}})}var Se={search:()=>[],bootstrap:()=>[]},Ce=48;function H(e,t,n){return Math.min(Math.max(e.split(`
|
|
2
2
|
`).length,t),n)}var U=(0,E.createContext)({images:{},onImages:()=>{}});function we({value:e,label:t,isLabelHidden:n}){let r=v(),{images:i,onImages:a}=(0,E.useContext)(U),{read:o,status:s}=V(),[f,p]=(0,E.useState)(!1),m=Object.hasOwn(i,e)?k(i[e]):void 0;return(0,B.jsxs)(c,{gap:2,vAlign:`center`,children:[(0,B.jsx)(d,{src:m,alt:t,label:e,onClick:m?()=>p(!0):void 0}),m?(0,B.jsx)(u,{isOpen:f,onOpenChange:p,media:{src:m,alt:t,caption:e},hasZoom:!0}):null,(0,B.jsx)(l,{size:`fill`,children:(0,B.jsx)(T,{label:t,isLabelHidden:n,accept:D,value:null,placeholder:r(`@theorem.decision.replace_image`),status:s,statusVariant:`detached`,onChange:t=>{o(t).then(([t])=>{t&&a({...i,[e]:t[1]})})}})})]})}function W({value:e,onChange:t,label:n,isLabelHidden:r}){let{images:i}=(0,E.useContext)(U),[a]=(0,E.useState)(()=>typeof e==`string`&&(e.length>Ce||e.includes(`
|
|
3
3
|
`))),[o]=(0,E.useState)(()=>typeof e==`string`&&Object.hasOwn(i,e));if(o&&typeof e==`string`)return(0,B.jsx)(we,{value:e,label:n,isLabelHidden:r});if(typeof e==`boolean`)return(0,B.jsx)(de,{label:n,value:e,onChange:t});if(typeof e==`number`)return(0,B.jsx)(pe,{label:n,isLabelHidden:r,size:`sm`,value:e,isWheelEnabled:!1,onChange:t});if(e===null)return(0,B.jsx)(b,{label:n,isLabelHidden:r,size:`sm`,value:``,placeholder:`null`,isDisabled:!0,onChange:()=>{}});let s=String(e);return a?(0,B.jsx)(w,{label:n,isLabelHidden:r,size:`sm`,rows:H(s,2,12),value:s,onChange:t}):(0,B.jsx)(b,{label:n,isLabelHidden:r,size:`sm`,value:s,onChange:t})}function G({label:e,isRequired:t,description:n,children:r}){let i=(0,E.useId)();return(0,B.jsxs)(s,{gap:2,role:`group`,"aria-labelledby":i,children:[(0,B.jsx)(f,{label:e,inputID:``,labelID:i,isGroupLabel:!0,isRequired:t,description:n}),r]})}function K({children:e,...t}){return(0,B.jsx)(G,{...t,children:(0,B.jsx)(`div`,{style:{paddingInlineStart:12,borderInlineStart:`1px solid var(--color-border)`},children:e})})}function q({field:e,onAdd:t}){let n=v();return(0,B.jsx)(c,{children:(0,B.jsx)(m,{label:n(`@theorem.decision.add_item`,{field:e}),size:`sm`,variant:`ghost`,icon:(0,B.jsx)(le,{size:14}),onClick:t})})}function J({index:e,onRemove:t}){let n=v();return(0,B.jsx)(ee,{label:n(`@theorem.decision.remove_item`,{item:n(`@theorem.data.item`,{index:String(e+1)})}),size:`sm`,variant:`ghost`,icon:(0,B.jsx)(p,{size:14}),onClick:t})}function Y({value:e,onChange:t}){return(0,B.jsx)(s,{gap:3,children:Object.entries(e).map(([n,r])=>(0,B.jsx)(X,{label:S(n),value:r,onChange:r=>t({...e,[n]:r})},n))})}function Te({value:e,onChange:t,label:n}){let r=v(),i=oe(e);if(ve(e))return(0,B.jsx)(ue,{label:n,size:`sm`,value:e.map((e,t)=>({id:`${String(t)}:${e}`,label:e})),searchSource:Se,hasCreate:!0,debounceMs:0,placeholder:r(`@theorem.decision.add_value`),onChange:e=>t(e.map(e=>e.label))});let a=ye(e),o=(0,B.jsx)(q,{field:n,onAdd:()=>t([...e,z(e.at(-1))])}),u=n=>(0,B.jsx)(J,{index:n,onRemove:()=>{i.drop(n),t(e.filter((e,t)=>t!==n))}});if(a){let r={display:`grid`,gap:8,alignItems:`start`,gridTemplateColumns:`${a.map(e=>`minmax(0, ${String(e.weight)}fr)`).join(` `)} auto`},s=e;return(0,B.jsxs)(G,{label:n,children:[(0,B.jsxs)(`div`,{style:r,"aria-hidden":!0,children:[a.map(e=>(0,B.jsx)(_,{type:`supporting`,color:`secondary`,maxLines:1,children:S(e.key)},e.key)),(0,B.jsx)(`span`,{style:{width:28}})]}),i.rows.map(({index:e,key:n})=>{let i=s[e];return(0,B.jsxs)(`div`,{style:r,children:[a.map(n=>(0,B.jsx)(W,{label:`${S(n.key)} ${String(e+1)}`,isLabelHidden:!0,value:i[n.key]??null,onChange:r=>t(s.map((t,i)=>i===e?{...t,[n.key]:r}:t))},n.key)),u(e)]},n)}),o]})}return(0,B.jsx)(K,{label:n,children:(0,B.jsxs)(s,{gap:3,children:[i.rows.map(({item:n,index:i,key:a})=>{let o=r(`@theorem.data.item`,{index:String(i+1)}),s=n=>t(e.map((e,t)=>t===i?n:e));return(0,B.jsxs)(c,{gap:2,vAlign:`start`,children:[(0,B.jsx)(l,{size:`fill`,children:ce(n)?(0,B.jsx)(W,{label:o,isLabelHidden:!0,value:n,onChange:s}):(0,B.jsx)(X,{label:o,value:n,onChange:s})}),u(i)]},a)}),o]})})}function X({value:e,onChange:t,label:n}){return Array.isArray(e)?(0,B.jsx)(Te,{label:n,value:e,onChange:t}):typeof e==`object`&&e?(0,B.jsx)(K,{label:n,children:(0,B.jsx)(Y,{value:e,onChange:t})}):(0,B.jsx)(W,{label:n,value:e,onChange:t})}function Ee({value:e,onChange:t,label:n}){return typeof e==`object`&&e&&!Array.isArray(e)?(0,B.jsx)(Y,{value:e,onChange:t}):(0,B.jsx)(X,{label:n,value:e,onChange:t})}var De={"--theorem-console-card":`var(--color-background-muted)`},Z=`(width < 768px)`,Q=(0,E.createContext)(!0);function $(){return(0,E.useSyncExternalStore)(e=>{let t=globalThis.matchMedia(Z);return t.addEventListener(`change`,e),()=>{t.removeEventListener(`change`,e)}},()=>globalThis.matchMedia(Z).matches,()=>!1)}function Oe({flush:e,wide:t,maxWidth:n,children:r}){return(0,B.jsx)(s,{height:`100%`,paddingInline:3,style:e?De:void 0,children:(0,B.jsx)(y,{variant:`transparent`,height:`100%`,padding:0,style:e?{overflowY:`auto`}:{...re,overflowY:`auto`},children:(0,B.jsx)(se,{axis:`horizontal`,width:`100%`,minHeight:`100%`,children:(0,B.jsx)(s,{width:`100%`,maxWidth:t?void 0:n,gap:3,padding:4,children:r})})})})}function ke({inspector:e,maxWidth:t,flush:n=!1,columns:i=!1,requestLabel:a,className:s,style:c,children:l}){let u=(0,E.useRef)(null);return(0,B.jsx)(x,{inspector:e,children:(0,B.jsx)(o,{ref:u,height:`fill`,className:s,style:c,header:e.toggle?(0,B.jsx)(ie,{children:e.toggle}):void 0,content:(0,B.jsx)(r,{padding:0,isScrollable:!1,children:(0,B.jsx)(Ae,{layoutRef:u,flush:n,columns:i,maxWidth:t,requestLabel:a,children:l})})})})}function Ae({layoutRef:e,flush:t,columns:n,maxWidth:r,requestLabel:i,children:a}){let o=$(),s=E.Children.toArray(a).length,c=n&&s>1;return c&&!o?(0,B.jsx)(je,{requestLabel:i,basisWidth:e.current?.clientWidth??0,children:a}):(0,B.jsx)(Oe,{flush:t,wide:c,maxWidth:r,children:a})}function je({requestLabel:e=`Request`,basisWidth:t,children:n}){let i=v(),a=(0,E.useRef)(null),s=te({defaultSize:t>0?Math.round(t*.4):`40%`,minSize:280,maxSize:`70%`,containerRef:a}),[c,l]=E.Children.toArray(n),u={name:e,show:e,hide:e,resize:i(`@theorem.panel.resize`,{name:e})};return(0,B.jsx)(Q,{value:!1,children:(0,B.jsx)(o,{ref:a,height:`fill`,start:(0,B.jsx)(g,{side:`start`,className:`theorem-console-request`,labels:u,resizable:s,open:!0,children:(0,B.jsx)(h,{label:e,children:c})}),content:(0,B.jsx)(r,{padding:0,isScrollable:!1,children:(0,B.jsx)(ne,{inset:`beside`,className:`theorem-console-response`,children:l})})})})}function Me({children:e}){return(0,B.jsx)(y,{variant:`muted`,padding:0,className:`theorem-console-card`,style:C,children:(0,B.jsx)(Q,{value:!1,children:e})})}function Ne({label:e,fill:t=!1,children:n}){return(0,E.use)(Q)?(0,B.jsx)(y,{variant:`muted`,padding:t?0:4,className:`theorem-console-card`,style:C,children:t?n:(0,B.jsx)(s,{height:`100%`,gap:3,children:n})}):t?n:(0,B.jsx)(h,{label:e,padding:4,children:n})}function Pe(e){return t=>{t.key===`Enter`&&(t.metaKey||t.ctrlKey)&&(t.preventDefault(),e())}}function Fe({title:e,view:t,hasFields:n,onView:r,onRun:o,children:l}){let u=v(),d=(0,E.use)(Q),f=(0,B.jsxs)(s,{gap:3,padding:d?void 0:4,onKeyDown:Pe(o),children:[(0,B.jsxs)(c,{gap:2,hAlign:`between`,vAlign:`center`,children:[(0,B.jsx)(_,{type:`supporting`,color:`secondary`,as:`h3`,children:e}),(0,B.jsxs)(i,{label:u(`@theorem.decision.view`),size:`sm`,value:t,onChange:e=>{r(e===`json`?`json`:`fields`)},children:[(0,B.jsx)(a,{value:`fields`,label:u(`@theorem.decision.fields`),isDisabled:!n}),(0,B.jsx)(a,{value:`json`,label:u(`@theorem.data.json`)})]})]}),l]});return d?(0,B.jsx)(y,{variant:`muted`,padding:4,className:`theorem-console-card`,style:C,children:f}):f}var Ie={"--font-family-body":`var(--font-family-code)`};function Le({label:e,text:t,isInvalid:n,onChange:r}){return(0,B.jsx)(w,{label:e,isLabelHidden:!0,value:t,onChange:r,rows:H(t,8,24),hasSpellCheck:!1,status:n?{type:`error`}:void 0,controlStyle:Ie})}function Re({note:e,isReady:t,isRunning:n,runLabel:r,runningLabel:i,stopLabel:a,onRun:o,onStop:s}){return(0,B.jsxs)(c,{gap:3,hAlign:`between`,vAlign:`center`,children:[(0,B.jsx)(_,{type:`supporting`,color:`secondary`,style:t?void 0:{color:`var(--color-error)`},hasTabularNumbers:!0,children:e}),(0,B.jsxs)(c,{gap:2,vAlign:`center`,children:[n?(0,B.jsx)(m,{label:a,variant:`ghost`,onClick:s}):null,(0,B.jsx)(m,{label:n?i:r,variant:`primary`,isLoading:n,isDisabled:!t,onClick:o})]})]})}function ze(){let e=ae();return(0,E.useMemo)(()=>{let t=new Intl.NumberFormat(e,{style:`unit`,unit:`byte`,unitDisplay:`narrow`}),n=new Intl.NumberFormat(e,{style:`unit`,unit:`kilobyte`,unitDisplay:`narrow`,maximumFractionDigits:1});return e=>e<1024?t.format(e):n.format(e/1024)},[e])}function Be({payload:e,runtime:t=null,traces:n,onActivity:r},i,a){return(0,E.useMemo)(()=>{let o=t?a(e,t,{traces:n}):i(e,{traces:n});return r?fe(o,r):o},[e,t,n,r,i,a])}export{N as C,j as S,I as _,Fe as a,k as b,ze as c,G as d,J as f,xe as g,H as h,Le as i,q as l,U as m,ke as n,Ne as o,Ee as p,Me as r,Re as s,Be as t,K as u,_e as v,ge as x,P as y};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,u as n}from"./themeProps-3IqahpCr.js";import{n as r,o as i,p as a,s as o}from"./browser-transport-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,u as n}from"./themeProps-3IqahpCr.js";import{n as r,o as i,p as a,s as o}from"./browser-transport-BEFsWdzI.js";import{n as s,t as c}from"./labels-provider-4TIWDvsE.js";import{a as l,t as u}from"./Banner-Buiul23B.js";import{c as d}from"./reader-B0gVhfoZ.js";import{p as f,u as p}from"./tree-DeO1319a.js";import{n as m,t as h}from"./PaneState-BvA2tLQg.js";import{C as g,S as _,a as v,c as y,g as b,i as x,m as S,n as C,o as w,p as T,s as E,t as D,y as O}from"./studio-console-e6kqu38F.js";import{i as k,t as A}from"./use-one-call-9e3o5vH-.js";import{$ as j,et as M,l as N}from"./index-D2T8e_8Q.js";var P=(e,t,n,r)=>e.decide(n,t,r);function F(e){let{iface:t,describeFailure:n}=o(e),{call:r,...i}=A(e,`deciding`,P);return{iface:t,describeFailure:n,...i,decide:r}}var I=e(n(),1),L=t();function R(e,t){let n;try{n=JSON.parse(e)}catch{return{ok:!1,reason:`invalid_json`}}if(n===null)return{ok:!1,reason:`null_state`,state:n};let r=new TextEncoder().encode(JSON.stringify(n)).byteLength;return t!==void 0&&r>t?{ok:!1,reason:`too_large`,bytes:r,state:n}:{ok:!0,state:n,bytes:r}}function z(e,t,n,r){return t.ok?n===void 0?null:e(`@theorem.decision.state_size`,{size:r(t.bytes),limit:r(n)}):t.reason===`too_large`?e(`@theorem.decision.too_large`,{limit:r(n??0)}):e(t.reason===`invalid_json`?`@theorem.decision.invalid_json`:`@theorem.decision.null_state`)}function B(e){return e.failure||e.result?`settled`:e.status===`deciding`?`waiting`:`idle`}function V(e,t){let[n,r]=(0,I.useState)(e),i=R(n,t),[a,o]=(0,I.useState)(()=>i.state===void 0?`json`:`fields`);return{text:n,setText:r,check:i,shown:i.state===void 0?`json`:a,setView:o}}function H({form:e,iface:t,images:n,onImages:r,note:i,isRunning:a,onRun:o,onStop:c}){let l=s(),{text:u,setText:d,check:f,shown:p,setView:m}=e,h=t.questions.some(e=>e.type===`box`)||Object.keys(n).length>0,_=p===`fields`?f.state:void 0,y=g(_);return(0,L.jsxs)(v,{title:l(`@theorem.decision.state`),view:p,hasFields:f.state!==void 0,onView:m,onRun:o,children:[_===void 0?(0,L.jsx)(x,{label:l(`@theorem.decision.state`),text:u,isInvalid:!f.ok,onChange:d}):(0,L.jsx)(S,{value:{images:n,onImages:r},children:(0,L.jsx)(T,{label:l(`@theorem.decision.state`),value:_,onChange:e=>{d(JSON.stringify(e,null,2))}})}),h&&y?(0,L.jsx)(b,{onImages:e=>{let i=O(e,{images:n,host:t.images,state:y});r(i.images),d(JSON.stringify(i.state,null,2))}}):null,(0,L.jsx)(E,{note:i,isReady:f.ok,isRunning:a,runLabel:l(`@theorem.decision.decide`),runningLabel:l(`@theorem.decision.deciding`),stopLabel:l(`@theorem.decision.stop`),onRun:o,onStop:c})]})}function U({iface:e,decision:t,asked:n,onQuestion:r,questionText:i}){let a=s(),o=t.status===`deciding`;return(0,L.jsxs)(L.Fragment,{children:[t.failure?(0,L.jsx)(u,{status:`error`,role:`alert`,title:t.failure.error}):null,o&&!t.result?(0,L.jsx)(m,{label:a(`@theorem.decision.deciding`),since:t.startedAt}):null,t.result?(0,L.jsx)(k,{iface:e,result:t.result,asked:n,onQuestion:r,questionText:i,elapsedMs:t.elapsedMs,isStale:o}):null]})}function W(e,t,n,r,i){if(t===`idle`)return null;if(!e)return i;let a=t===`waiting`;return(0,L.jsx)(w,{label:n.answers,fill:a,children:a?(0,L.jsx)(m,{label:n.deciding,since:r}):i})}function G({transport:e,iface:t,decision:n,defaultState:r=`{}`,defaultImages:i,onQuestion:a,questionText:o,maxWidth:c=`960px`,trace:u,flush:d,columns:f=!1,className:p,style:m}){let h=s(),g=y(),v=V(r,t.maxStateBytes),{check:b}=v,[x,S]=(0,I.useState)(i??{}),[w,T]=(0,I.useState)(),E=l(t,e.traces,u);return(0,L.jsxs)(C,{inspector:E,maxWidth:c,flush:d,columns:f,requestLabel:h(`@theorem.decision.state`),className:p,style:m,children:[(0,L.jsx)(H,{form:v,iface:t,images:x,onImages:S,note:z(h,b,t.maxStateBytes,g),isRunning:n.status===`deciding`,onRun:()=>{if(!b.ok)return;let e=_(x,b.state);T({images:{...t.images,...e},state:b.state}),n.decide(b.state,Object.keys(e).length>0?e:void 0)},onStop:n.cancel}),W(f,B(n),{answers:h(`@theorem.decision.answers`),deciding:h(`@theorem.decision.deciding`)},n.startedAt,(0,L.jsx)(U,{iface:t,decision:n,asked:w,onQuestion:a,questionText:o}))]})}function K(e){let t=s(),n=F(e.transport);return n.describeFailure?(0,L.jsx)(h,{title:n.describeFailure.error}):n.iface?(0,L.jsx)(G,{...e,iface:n.iface,decision:n}):(0,L.jsx)(m,{label:t(`@theorem.chat.loading`)})}function q({endpoint:e,http:t,transport:n,theme:r,mode:a,labels:o,...s}){let l=(0,I.useRef)(t);l.current=t;let u=(0,I.useMemo)(()=>n??d({...l.current,endpoint:e}),[n,e]);return(0,L.jsx)(i,{theme:r,mode:a,children:(0,L.jsx)(c,{labels:o,children:(0,L.jsx)(K,{...s,transport:u})})})}var J;function Y(e){if(e.agentId===`pantry.jev`)return J??=M(),{defaultState:j,defaultImages:{...(0,I.use)(J)}};let{profile:t}=e;return{defaultState:(t.type===`decision`?Object.values(t.models)[0]:void 0)?.apiId.startsWith(`respan/`)?f:p}}function X(e){return typeof e==`string`?e:Array.isArray(e)?e.map(X).join(` `):Object.entries(e).map(([e,t])=>`${e}: ${X(t)}`).join(` `)}function Z(e){let t=D(e,a,r);return(0,L.jsx)(Q,{...e,transport:t})}function Q({payload:e,transport:t,trace:n,flush:r,columns:i,className:a}){let{open:o}=(0,I.useContext)(N),s=Y(e),{questions:c}=e,l=(0,I.useMemo)(()=>c&&Object.fromEntries(Object.entries(c).map(([e,t])=>[e,X(t.instructions)])),[c]);return(0,L.jsx)(q,{transport:t,...s,trace:n,flush:r,columns:i,className:a,onQuestion:o,questionText:l})}export{Q as DecisionView,Z as StudioDecision};
|