@vibe-forge/client 0.6.0 → 0.7.2
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/dist/assets/{arc-CMAHd5G3.js → arc-3Inn4weF.js} +1 -1
- package/dist/assets/{blockDiagram-c4efeb88-DKww-VCP.js → blockDiagram-c4efeb88-CDUTPZC5.js} +1 -1
- package/dist/assets/{c4Diagram-c83219d4-DKrjVHyY.js → c4Diagram-c83219d4-C6HJlK_i.js} +1 -1
- package/dist/assets/channel-DpfFJ11i.js +1 -0
- package/dist/assets/{classDiagram-beda092f-BXx5rdo3.js → classDiagram-beda092f-BbTSEeM-.js} +1 -1
- package/dist/assets/{classDiagram-v2-2358418a-CnR3WLsr.js → classDiagram-v2-2358418a-XUN9iLKI.js} +1 -1
- package/dist/assets/clone-Dpf8N0T0.js +1 -0
- package/dist/assets/{createText-1719965b-CmOsl1W7.js → createText-1719965b-DPPzBI6W.js} +1 -1
- package/dist/assets/{edges-96097737-CQeQgpjD.js → edges-96097737-B2PDevbO.js} +1 -1
- package/dist/assets/{erDiagram-0228fc6a-ZUNB-ucF.js → erDiagram-0228fc6a-CDx-zkVG.js} +1 -1
- package/dist/assets/{flowDb-c6c81e3f-DuuKeSLX.js → flowDb-c6c81e3f-AXQhNDwJ.js} +1 -1
- package/dist/assets/{flowDiagram-50d868cf-Bc6n85yR.js → flowDiagram-50d868cf-DIFzlLzz.js} +1 -1
- package/dist/assets/flowDiagram-v2-4f6560a1-B3kWo3j-.js +1 -0
- package/dist/assets/{flowchart-elk-definition-6af322e1-cAG5afW9.js → flowchart-elk-definition-6af322e1-CBunCaHi.js} +1 -1
- package/dist/assets/{ganttDiagram-a2739b55-Dp6xhY5I.js → ganttDiagram-a2739b55-DPMS1mgp.js} +1 -1
- package/dist/assets/{gitGraphDiagram-82fe8481-MlIIRBdG.js → gitGraphDiagram-82fe8481-lsQFHHkQ.js} +1 -1
- package/dist/assets/{graph-D7Es8jZ-.js → graph-BlL8UTXV.js} +1 -1
- package/dist/assets/{index-5325376f-DC18ottv.js → index-5325376f-D5mAuW3d.js} +1 -1
- package/dist/assets/{index-D37AbgPQ.js → index-BPyYnHE3.js} +83 -71
- package/dist/assets/{infoDiagram-8eee0895-CXk21kFp.js → infoDiagram-8eee0895-CQ5qoRoz.js} +1 -1
- package/dist/assets/{journeyDiagram-c64418c1-899BKBHL.js → journeyDiagram-c64418c1-COrg8_ZP.js} +1 -1
- package/dist/assets/{layout-DLaxdy48.js → layout-DjdlpleO.js} +1 -1
- package/dist/assets/{line-_lw5YbRM.js → line-DC6oQAQt.js} +1 -1
- package/dist/assets/{linear-D5iu84ui.js → linear-CRrvE1Sj.js} +1 -1
- package/dist/assets/{mermaid.core-C6sW3GFM.js → mermaid.core-Chovhfjq.js} +4 -4
- package/dist/assets/{mindmap-definition-8da855dc-BS9Xy9KN.js → mindmap-definition-8da855dc-CGLpitPv.js} +1 -1
- package/dist/assets/{pieDiagram-a8764435-DZt9cEgs.js → pieDiagram-a8764435-BuuRwI2Y.js} +1 -1
- package/dist/assets/{quadrantDiagram-1e28029f-BTIeHOgn.js → quadrantDiagram-1e28029f-3Aap76t1.js} +1 -1
- package/dist/assets/{requirementDiagram-08caed73-BHJAKD2g.js → requirementDiagram-08caed73-IN9gT6dQ.js} +1 -1
- package/dist/assets/{sankeyDiagram-a04cb91d-DnAkVOK8.js → sankeyDiagram-a04cb91d-BocKz01i.js} +1 -1
- package/dist/assets/{sequenceDiagram-c5b8d532-92tE3oFv.js → sequenceDiagram-c5b8d532-BW9zy30M.js} +1 -1
- package/dist/assets/{stateDiagram-1ecb1508-DG0ObiMg.js → stateDiagram-1ecb1508-BjmUkr7N.js} +1 -1
- package/dist/assets/{stateDiagram-v2-c2b004d7-BKoJx2ci.js → stateDiagram-v2-c2b004d7-CWKpgiA4.js} +1 -1
- package/dist/assets/{styles-b4e223ce-Ba6G4ri9.js → styles-b4e223ce-B5ZUhrVa.js} +1 -1
- package/dist/assets/{styles-ca3715f6-Bn6RIIVW.js → styles-ca3715f6-Dg6_iMfO.js} +1 -1
- package/dist/assets/{styles-d45a18b0-_dELBUI6.js → styles-d45a18b0-BntmyMbR.js} +1 -1
- package/dist/assets/{svgDrawCommon-b86b1483-CRK-ZoIs.js → svgDrawCommon-b86b1483-CdnpTDnc.js} +1 -1
- package/dist/assets/{timeline-definition-faaaa080-DvQ_RA_i.js → timeline-definition-faaaa080-D3aQK7FD.js} +1 -1
- package/dist/assets/{xychartDiagram-f5964ef8-CJxeDLfg.js → xychartDiagram-f5964ef8-BkxgYbPP.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +8 -7
- package/src/components/config/record-editors/ModelServicesRecordEditor.tsx +45 -1
- package/src/hooks/chat/use-chat-session-actions.ts +6 -1
- package/src/hooks/chat/use-chat-session-messages.ts +1 -1
- package/src/resources/adapters.ts +5 -0
- package/src/resources/locales/en.json +8 -0
- package/src/resources/locales/zh.json +8 -0
- package/dist/assets/channel-Bi4g8rj9.js +0 -1
- package/dist/assets/clone-DPrpP2ky.js +0 -1
- package/dist/assets/flowDiagram-v2-4f6560a1-BZqaeqoh.js +0 -1
package/dist/assets/{xychartDiagram-f5964ef8-CJxeDLfg.js → xychartDiagram-f5964ef8-BkxgYbPP.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{s as zt,a as Ft,v as wt,x as Nt,b as Xt,c as Yt,l as St,aH as Ht,e as $t,z as Ut,ap as ot,aJ as Ct,aL as qt,aY as jt,i as Gt}from"./mermaid.core-
|
|
1
|
+
import{s as zt,a as Ft,v as wt,x as Nt,b as Xt,c as Yt,l as St,aH as Ht,e as $t,z as Ut,ap as ot,aJ as Ct,aL as qt,aY as jt,i as Gt}from"./mermaid.core-Chovhfjq.js";import{a as Qt}from"./createText-1719965b-DPPzBI6W.js";import"./index-BPyYnHE3.js";import{i as Kt}from"./init-Gi6I4Gst.js";import{o as Jt}from"./ordinal-Cboi1Yqb.js";import{l as ft}from"./linear-CRrvE1Sj.js";import{l as pt}from"./line-DC6oQAQt.js";import"./array-BKyUJesY.js";import"./path-CbwjOpE9.js";function Zt(e,t,i){e=+e,t=+t,i=(n=arguments.length)<2?(t=e,e=0,1):n<3?1:+i;for(var s=-1,n=Math.max(0,Math.ceil((t-e)/i))|0,o=new Array(n);++s<n;)o[s]=e+s*i;return o}function st(){var e=Jt().unknown(void 0),t=e.domain,i=e.range,s=0,n=1,o,c,f=!1,d=0,R=0,_=.5;delete e.unknown;function A(){var m=t().length,T=n<s,S=T?n:s,P=T?s:n;o=(P-S)/Math.max(1,m-d+R*2),f&&(o=Math.floor(o)),S+=(P-S-o*(m-d))*_,c=o*(1-d),f&&(S=Math.round(S),c=Math.round(c));var p=Zt(m).map(function(C){return S+o*C});return i(T?p.reverse():p)}return e.domain=function(m){return arguments.length?(t(m),A()):t()},e.range=function(m){return arguments.length?([s,n]=m,s=+s,n=+n,A()):[s,n]},e.rangeRound=function(m){return[s,n]=m,s=+s,n=+n,f=!0,A()},e.bandwidth=function(){return c},e.step=function(){return o},e.round=function(m){return arguments.length?(f=!!m,A()):f},e.padding=function(m){return arguments.length?(d=Math.min(1,R=+m),A()):d},e.paddingInner=function(m){return arguments.length?(d=Math.min(1,m),A()):d},e.paddingOuter=function(m){return arguments.length?(R=+m,A()):R},e.align=function(m){return arguments.length?(_=Math.max(0,Math.min(1,m)),A()):_},e.copy=function(){return st(t(),[s,n]).round(f).paddingInner(d).paddingOuter(R).align(_)},Kt.apply(A(),arguments)}var nt=function(){var e=function(V,r,l,u){for(l=l||{},u=V.length;u--;l[V[u]]=r);return l},t=[1,10,12,14,16,18,19,21,23],i=[2,6],s=[1,3],n=[1,5],o=[1,6],c=[1,7],f=[1,5,10,12,14,16,18,19,21,23,34,35,36],d=[1,25],R=[1,26],_=[1,28],A=[1,29],m=[1,30],T=[1,31],S=[1,32],P=[1,33],p=[1,34],C=[1,35],h=[1,36],L=[1,37],z=[1,43],lt=[1,42],ct=[1,47],$=[1,50],w=[1,10,12,14,16,18,19,21,23,34,35,36],Q=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],v=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],ut=[1,64],K={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:function(r,l,u,g,b,a,F){var x=a.length-1;switch(b){case 5:g.setOrientation(a[x]);break;case 9:g.setDiagramTitle(a[x].text.trim());break;case 12:g.setLineData({text:"",type:"text"},a[x]);break;case 13:g.setLineData(a[x-1],a[x]);break;case 14:g.setBarData({text:"",type:"text"},a[x]);break;case 15:g.setBarData(a[x-1],a[x]);break;case 16:this.$=a[x].trim(),g.setAccTitle(this.$);break;case 17:case 18:this.$=a[x].trim(),g.setAccDescription(this.$);break;case 19:this.$=a[x-1];break;case 20:this.$=[Number(a[x-2]),...a[x]];break;case 21:this.$=[Number(a[x])];break;case 22:g.setXAxisTitle(a[x]);break;case 23:g.setXAxisTitle(a[x-1]);break;case 24:g.setXAxisTitle({type:"text",text:""});break;case 25:g.setXAxisBand(a[x]);break;case 26:g.setXAxisRangeData(Number(a[x-2]),Number(a[x]));break;case 27:this.$=a[x-1];break;case 28:this.$=[a[x-2],...a[x]];break;case 29:this.$=[a[x]];break;case 30:g.setYAxisTitle(a[x]);break;case 31:g.setYAxisTitle(a[x-1]);break;case 32:g.setYAxisTitle({type:"text",text:""});break;case 33:g.setYAxisRangeData(Number(a[x-2]),Number(a[x]));break;case 37:this.$={text:a[x],type:"text"};break;case 38:this.$={text:a[x],type:"text"};break;case 39:this.$={text:a[x],type:"markdown"};break;case 40:this.$=a[x];break;case 41:this.$=a[x-1]+""+a[x];break}},table:[e(t,i,{3:1,4:2,7:4,5:s,34:n,35:o,36:c}),{1:[3]},e(t,i,{4:2,7:4,3:8,5:s,34:n,35:o,36:c}),e(t,i,{4:2,7:4,6:9,3:10,5:s,8:[1,11],34:n,35:o,36:c}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},e(f,[2,34]),e(f,[2,35]),e(f,[2,36]),{1:[2,1]},e(t,i,{4:2,7:4,3:21,5:s,34:n,35:o,36:c}),{1:[2,3]},e(f,[2,5]),e(t,[2,7],{4:22,34:n,35:o,36:c}),{11:23,37:24,38:d,39:R,40:27,41:_,42:A,43:m,44:T,45:S,46:P,47:p,48:C,49:h,50:L},{11:39,13:38,24:z,27:lt,29:40,30:41,37:24,38:d,39:R,40:27,41:_,42:A,43:m,44:T,45:S,46:P,47:p,48:C,49:h,50:L},{11:45,15:44,27:ct,33:46,37:24,38:d,39:R,40:27,41:_,42:A,43:m,44:T,45:S,46:P,47:p,48:C,49:h,50:L},{11:49,17:48,24:$,37:24,38:d,39:R,40:27,41:_,42:A,43:m,44:T,45:S,46:P,47:p,48:C,49:h,50:L},{11:52,17:51,24:$,37:24,38:d,39:R,40:27,41:_,42:A,43:m,44:T,45:S,46:P,47:p,48:C,49:h,50:L},{20:[1,53]},{22:[1,54]},e(w,[2,18]),{1:[2,2]},e(w,[2,8]),e(w,[2,9]),e(Q,[2,37],{40:55,41:_,42:A,43:m,44:T,45:S,46:P,47:p,48:C,49:h,50:L}),e(Q,[2,38]),e(Q,[2,39]),e(v,[2,40]),e(v,[2,42]),e(v,[2,43]),e(v,[2,44]),e(v,[2,45]),e(v,[2,46]),e(v,[2,47]),e(v,[2,48]),e(v,[2,49]),e(v,[2,50]),e(v,[2,51]),e(w,[2,10]),e(w,[2,22],{30:41,29:56,24:z,27:lt}),e(w,[2,24]),e(w,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:d,39:R,40:27,41:_,42:A,43:m,44:T,45:S,46:P,47:p,48:C,49:h,50:L},e(w,[2,11]),e(w,[2,30],{33:60,27:ct}),e(w,[2,32]),{31:[1,61]},e(w,[2,12]),{17:62,24:$},{25:63,27:ut},e(w,[2,14]),{17:65,24:$},e(w,[2,16]),e(w,[2,17]),e(v,[2,41]),e(w,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},e(w,[2,31]),{27:[1,69]},e(w,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},e(w,[2,15]),e(w,[2,26]),e(w,[2,27]),{11:59,32:72,37:24,38:d,39:R,40:27,41:_,42:A,43:m,44:T,45:S,46:P,47:p,48:C,49:h,50:L},e(w,[2,33]),e(w,[2,19]),{25:73,27:ut},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:function(r,l){if(l.recoverable)this.trace(r);else{var u=new Error(r);throw u.hash=l,u}},parse:function(r){var l=this,u=[0],g=[],b=[null],a=[],F=this.table,x="",U=0,gt=0,Vt=2,xt=1,Bt=a.slice.call(arguments,1),k=Object.create(this.lexer),B={yy:{}};for(var Z in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Z)&&(B.yy[Z]=this.yy[Z]);k.setInput(r,B.yy),B.yy.lexer=k,B.yy.parser=this,typeof k.yylloc>"u"&&(k.yylloc={});var tt=k.yylloc;a.push(tt);var Wt=k.options&&k.options.ranges;typeof B.yy.parseError=="function"?this.parseError=B.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ot(){var I;return I=g.pop()||k.lex()||xt,typeof I!="number"&&(I instanceof Array&&(g=I,I=g.pop()),I=l.symbols_[I]||I),I}for(var D,W,E,it,O={},q,M,dt,j;;){if(W=u[u.length-1],this.defaultActions[W]?E=this.defaultActions[W]:((D===null||typeof D>"u")&&(D=Ot()),E=F[W]&&F[W][D]),typeof E>"u"||!E.length||!E[0]){var et="";j=[];for(q in F[W])this.terminals_[q]&&q>Vt&&j.push("'"+this.terminals_[q]+"'");k.showPosition?et="Parse error on line "+(U+1)+`:
|
|
2
2
|
`+k.showPosition()+`
|
|
3
3
|
Expecting `+j.join(", ")+", got '"+(this.terminals_[D]||D)+"'":et="Parse error on line "+(U+1)+": Unexpected "+(D==xt?"end of input":"'"+(this.terminals_[D]||D)+"'"),this.parseError(et,{text:k.match,token:this.terminals_[D]||D,line:k.yylineno,loc:tt,expected:j})}if(E[0]instanceof Array&&E.length>1)throw new Error("Parse Error: multiple actions possible at state: "+W+", token: "+D);switch(E[0]){case 1:u.push(D),b.push(k.yytext),a.push(k.yylloc),u.push(E[1]),D=null,gt=k.yyleng,x=k.yytext,U=k.yylineno,tt=k.yylloc;break;case 2:if(M=this.productions_[E[1]][1],O.$=b[b.length-M],O._$={first_line:a[a.length-(M||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(M||1)].first_column,last_column:a[a.length-1].last_column},Wt&&(O._$.range=[a[a.length-(M||1)].range[0],a[a.length-1].range[1]]),it=this.performAction.apply(O,[x,gt,U,B.yy,E[1],b,a].concat(Bt)),typeof it<"u")return it;M&&(u=u.slice(0,-1*M*2),b=b.slice(0,-1*M),a=a.slice(0,-1*M)),u.push(this.productions_[E[1]][0]),b.push(O.$),a.push(O._$),dt=F[u[u.length-2]][u[u.length-1]],u.push(dt);break;case 3:return!0}}return!0}},It=function(){var V={EOF:1,parseError:function(l,u){if(this.yy.parser)this.yy.parser.parseError(l,u);else throw new Error(l)},setInput:function(r,l){return this.yy=l||this.yy||{},this._input=r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var r=this._input[0];this.yytext+=r,this.yyleng++,this.offset++,this.match+=r,this.matched+=r;var l=r.match(/(?:\r\n?|\n).*/g);return l?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),r},unput:function(r){var l=r.length,u=r.split(/(?:\r\n?|\n)/g);this._input=r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-l),this.offset-=l;var g=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),u.length-1&&(this.yylineno-=u.length-1);var b=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:u?(u.length===g.length?this.yylloc.first_column:0)+g[g.length-u.length].length-u[0].length:this.yylloc.first_column-l},this.options.ranges&&(this.yylloc.range=[b[0],b[0]+this.yyleng-l]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
4
|
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(r){this.unput(this.match.slice(r))},pastInput:function(){var r=this.matched.substr(0,this.matched.length-this.match.length);return(r.length>20?"...":"")+r.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var r=this.match;return r.length<20&&(r+=this._input.substr(0,20-r.length)),(r.substr(0,20)+(r.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var r=this.pastInput(),l=new Array(r.length+1).join("-");return r+this.upcomingInput()+`
|
package/dist/index.html
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
href="https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200"
|
|
15
15
|
rel="stylesheet"
|
|
16
16
|
>
|
|
17
|
-
<script type="module" crossorigin src="/__VF_PROJECT_AI_CLIENT_BASE__/assets/index-
|
|
17
|
+
<script type="module" crossorigin src="/__VF_PROJECT_AI_CLIENT_BASE__/assets/index-BPyYnHE3.js"></script>
|
|
18
18
|
<link rel="stylesheet" crossorigin href="/__VF_PROJECT_AI_CLIENT_BASE__/assets/index-fcJ9v94I.css">
|
|
19
19
|
</head>
|
|
20
20
|
<body>
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vibe-forge/client",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.7.2",
|
|
5
5
|
"imports": {
|
|
6
6
|
"#~/*": [
|
|
7
7
|
"./src/*",
|
|
@@ -36,12 +36,13 @@
|
|
|
36
36
|
"swr": "^2.2.5",
|
|
37
37
|
"vite": "^5.4.8",
|
|
38
38
|
"zod": "^3.24.1",
|
|
39
|
-
"@vibe-forge/
|
|
40
|
-
"@vibe-forge/adapter-codex": "^0.6
|
|
41
|
-
"@vibe-forge/
|
|
42
|
-
"@vibe-forge/
|
|
43
|
-
"@vibe-forge/
|
|
44
|
-
"@vibe-forge/
|
|
39
|
+
"@vibe-forge/core": "^0.7.3",
|
|
40
|
+
"@vibe-forge/adapter-codex": "^0.7.6",
|
|
41
|
+
"@vibe-forge/adapter-opencode": "^0.1.2",
|
|
42
|
+
"@vibe-forge/adapter-claude-code": "^0.7.2",
|
|
43
|
+
"@vibe-forge/channel-lark": "^0.7.0",
|
|
44
|
+
"@vibe-forge/plugin-chrome-devtools": "^0.7.0",
|
|
45
|
+
"@vibe-forge/register": "^0.7.0"
|
|
45
46
|
},
|
|
46
47
|
"devDependencies": {
|
|
47
48
|
"@types/react": "^18.3.12",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import './ModelServicesRecordEditor.scss'
|
|
2
2
|
|
|
3
|
-
import { Button, Input, Tooltip } from 'antd'
|
|
3
|
+
import { Button, Input, InputNumber, Tooltip } from 'antd'
|
|
4
4
|
import { useEffect, useMemo, useState } from 'react'
|
|
5
5
|
|
|
6
6
|
import { ComplexTextEditor, StringArrayEditor } from '../ConfigEditors'
|
|
@@ -176,6 +176,48 @@ export const ModelServicesRecordEditor = ({
|
|
|
176
176
|
}}
|
|
177
177
|
/>
|
|
178
178
|
</FieldRow>
|
|
179
|
+
<FieldRow
|
|
180
|
+
title={t('config.fields.modelServices.item.timeoutMs.label')}
|
|
181
|
+
description={t('config.fields.modelServices.item.timeoutMs.desc')}
|
|
182
|
+
icon={getTypeIcon('number')}
|
|
183
|
+
>
|
|
184
|
+
<InputNumber
|
|
185
|
+
min={1}
|
|
186
|
+
step={1000}
|
|
187
|
+
value={typeof recordValue.timeoutMs === 'number' ? recordValue.timeoutMs : undefined}
|
|
188
|
+
onChange={(nextValue) => {
|
|
189
|
+
onChange({
|
|
190
|
+
...value,
|
|
191
|
+
[key]: {
|
|
192
|
+
...recordValue,
|
|
193
|
+
...(typeof nextValue === 'number' ? { timeoutMs: nextValue } : { timeoutMs: undefined })
|
|
194
|
+
}
|
|
195
|
+
})
|
|
196
|
+
}}
|
|
197
|
+
/>
|
|
198
|
+
</FieldRow>
|
|
199
|
+
<FieldRow
|
|
200
|
+
title={t('config.fields.modelServices.item.maxOutputTokens.label')}
|
|
201
|
+
description={t('config.fields.modelServices.item.maxOutputTokens.desc')}
|
|
202
|
+
icon={getTypeIcon('number')}
|
|
203
|
+
>
|
|
204
|
+
<InputNumber
|
|
205
|
+
min={1}
|
|
206
|
+
step={256}
|
|
207
|
+
value={typeof recordValue.maxOutputTokens === 'number' ? recordValue.maxOutputTokens : undefined}
|
|
208
|
+
onChange={(nextValue) => {
|
|
209
|
+
onChange({
|
|
210
|
+
...value,
|
|
211
|
+
[key]: {
|
|
212
|
+
...recordValue,
|
|
213
|
+
...(typeof nextValue === 'number'
|
|
214
|
+
? { maxOutputTokens: nextValue }
|
|
215
|
+
: { maxOutputTokens: undefined })
|
|
216
|
+
}
|
|
217
|
+
})
|
|
218
|
+
}}
|
|
219
|
+
/>
|
|
220
|
+
</FieldRow>
|
|
179
221
|
<FieldRow
|
|
180
222
|
title={t('config.fields.modelServices.item.extra.label')}
|
|
181
223
|
description={t('config.fields.modelServices.item.extra.desc')}
|
|
@@ -219,6 +261,8 @@ export const ModelServicesRecordEditor = ({
|
|
|
219
261
|
apiKey: '',
|
|
220
262
|
models: [],
|
|
221
263
|
modelsAlias: {},
|
|
264
|
+
timeoutMs: undefined,
|
|
265
|
+
maxOutputTokens: undefined,
|
|
222
266
|
extra: {}
|
|
223
267
|
}
|
|
224
268
|
})
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { App } from 'antd'
|
|
2
|
-
import { useCallback, useState } from 'react'
|
|
2
|
+
import { useCallback, useEffect, useState } from 'react'
|
|
3
3
|
import { useTranslation } from 'react-i18next'
|
|
4
4
|
import { useNavigate } from 'react-router-dom'
|
|
5
5
|
import { useSWRConfig } from 'swr'
|
|
@@ -31,6 +31,11 @@ export function useChatSessionActions({
|
|
|
31
31
|
const [isCreating, setIsCreating] = useState(false)
|
|
32
32
|
const isThinking = isCreating || session?.status === 'running'
|
|
33
33
|
|
|
34
|
+
useEffect(() => {
|
|
35
|
+
if (!isCreating || session?.id == null || session.id === '') return
|
|
36
|
+
setIsCreating(false)
|
|
37
|
+
}, [isCreating, session?.id])
|
|
38
|
+
|
|
34
39
|
const send = useCallback(async (text: string) => {
|
|
35
40
|
if (text.trim() === '' || isThinking) return false
|
|
36
41
|
if (!hasAvailableModels) {
|
|
@@ -195,7 +195,7 @@ export function useChatSessionMessages({
|
|
|
195
195
|
onMessage(data: WSEvent) {
|
|
196
196
|
if (isDisposed) return
|
|
197
197
|
if (data.type === 'error') {
|
|
198
|
-
setConnectionError(data.message)
|
|
198
|
+
setConnectionError(data.data?.message ?? data.message ?? 'Unknown error')
|
|
199
199
|
return
|
|
200
200
|
}
|
|
201
201
|
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { adapterDisplayName as claudeCodeDisplayName, adapterIcon as claudeCodeIcon } from '@vibe-forge/adapter-claude-code/icon'
|
|
2
2
|
import { adapterDisplayName as codexDisplayName, adapterIcon as codexIcon } from '@vibe-forge/adapter-codex/icon'
|
|
3
|
+
import { adapterDisplayName as opencodeDisplayName, adapterIcon as opencodeIcon } from '@vibe-forge/adapter-opencode/icon'
|
|
3
4
|
|
|
4
5
|
export const adapterDisplayMap = {
|
|
5
6
|
'claude-code': {
|
|
@@ -9,6 +10,10 @@ export const adapterDisplayMap = {
|
|
|
9
10
|
codex: {
|
|
10
11
|
title: codexDisplayName,
|
|
11
12
|
icon: codexIcon
|
|
13
|
+
},
|
|
14
|
+
opencode: {
|
|
15
|
+
title: opencodeDisplayName,
|
|
16
|
+
icon: opencodeIcon
|
|
12
17
|
}
|
|
13
18
|
} as const
|
|
14
19
|
|
|
@@ -688,6 +688,14 @@
|
|
|
688
688
|
"label": "Model Aliases",
|
|
689
689
|
"desc": "Alias mapping for models"
|
|
690
690
|
},
|
|
691
|
+
"timeoutMs": {
|
|
692
|
+
"label": "Timeout (ms)",
|
|
693
|
+
"desc": "Provider timeout in milliseconds. Codex uses it as stream idle timeout; Claude Code Router uses global API timeout."
|
|
694
|
+
},
|
|
695
|
+
"maxOutputTokens": {
|
|
696
|
+
"label": "Max Output Tokens",
|
|
697
|
+
"desc": "Default output token cap for this service. Codex uses maxOutputTokens; Claude Code Router uses the maxtoken transformer."
|
|
698
|
+
},
|
|
691
699
|
"extra": {
|
|
692
700
|
"label": "Extra Settings",
|
|
693
701
|
"desc": "Additional configuration for the service"
|
|
@@ -689,6 +689,14 @@
|
|
|
689
689
|
"label": "模型别名",
|
|
690
690
|
"desc": "模型别名映射"
|
|
691
691
|
},
|
|
692
|
+
"timeoutMs": {
|
|
693
|
+
"label": "超时(毫秒)",
|
|
694
|
+
"desc": "模型服务超时。Codex 会映射为流空闲超时,Claude Code Router 会映射为全局 API 超时。"
|
|
695
|
+
},
|
|
696
|
+
"maxOutputTokens": {
|
|
697
|
+
"label": "最大输出 Token",
|
|
698
|
+
"desc": "该服务的默认输出上限。Codex 会映射为 maxOutputTokens,Claude Code Router 会映射为 maxtoken transformer。"
|
|
699
|
+
},
|
|
692
700
|
"extra": {
|
|
693
701
|
"label": "扩展配置",
|
|
694
702
|
"desc": "模型服务扩展参数"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{al as o,am as n}from"./mermaid.core-C6sW3GFM.js";const l=(a,r)=>o.lang.round(n.parse(a)[r]);export{l as c};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as r}from"./graph-D7Es8jZ-.js";var a=4;function n(o){return r(o,a)}export{n as c};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{f as o,p as e}from"./flowDb-c6c81e3f-DuuKeSLX.js";import{f as a,g as t}from"./styles-d45a18b0-_dELBUI6.js";import{ar as i}from"./mermaid.core-C6sW3GFM.js";import"./graph-D7Es8jZ-.js";import"./layout-DLaxdy48.js";import"./index-D37AbgPQ.js";import"./index-5325376f-DC18ottv.js";import"./clone-DPrpP2ky.js";import"./edges-96097737-CQeQgpjD.js";import"./createText-1719965b-CmOsl1W7.js";import"./line-_lw5YbRM.js";import"./array-BKyUJesY.js";import"./path-CbwjOpE9.js";import"./channel-Bi4g8rj9.js";const n={parser:e,db:o,renderer:t,styles:a,init:r=>{r.flowchart||(r.flowchart={}),r.flowchart.arrowMarkerAbsolute=r.arrowMarkerAbsolute,i({flowchart:{arrowMarkerAbsolute:r.arrowMarkerAbsolute}}),t.setConf(r.flowchart),o.clear(),o.setGen("gen-2")}};export{n as diagram};
|