orcheo-studio 0.23.2 → 0.24.1
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/.bumpversion.cfg +1 -1
- package/dist/assets/{arc-BokkJPzk.js → arc-DhTjQsml.js} +1 -1
- package/dist/assets/{architectureDiagram-VXUJARFQ-CzmPOZBu.js → architectureDiagram-VXUJARFQ-CGDm4iVL.js} +1 -1
- package/dist/assets/{blockDiagram-VD42YOAC-DG89LeH9.js → blockDiagram-VD42YOAC-B5xlwwyL.js} +1 -1
- package/dist/assets/{c4Diagram-YG6GDRKO-DymWpJZb.js → c4Diagram-YG6GDRKO-DtVXFxFX.js} +1 -1
- package/dist/assets/channel-CeR8j9Si.js +1 -0
- package/dist/assets/{chunk-4BX2VUAB-DulKpeK2.js → chunk-4BX2VUAB-CA8vZ6Tb.js} +1 -1
- package/dist/assets/{chunk-55IACEB6-Bi6MBeyB.js → chunk-55IACEB6-CxNWLhGM.js} +1 -1
- package/dist/assets/{chunk-B4BG7PRW-teHvBEMz.js → chunk-B4BG7PRW-BW8UEmwi.js} +1 -1
- package/dist/assets/{chunk-DI55MBZ5-Clydm5zE.js → chunk-DI55MBZ5-_6YQcHqR.js} +1 -1
- package/dist/assets/{chunk-FMBD7UC4-BGh0gUNB.js → chunk-FMBD7UC4-L-9FXYi4.js} +1 -1
- package/dist/assets/{chunk-QN33PNHL-D-9fma_8.js → chunk-QN33PNHL-DZtaWvmZ.js} +1 -1
- package/dist/assets/{chunk-QZHKN3VN-Bux-KM8v.js → chunk-QZHKN3VN-B3c4-un7.js} +1 -1
- package/dist/assets/{chunk-TZMSLE5B-pgx8j0M-.js → chunk-TZMSLE5B-DmyAt3KD.js} +1 -1
- package/dist/assets/classDiagram-2ON5EDUG-B2tKUrqn.js +1 -0
- package/dist/assets/classDiagram-v2-WZHVMYZB-B2tKUrqn.js +1 -0
- package/dist/assets/clone-BN-HxSe-.js +1 -0
- package/dist/assets/{cose-bilkent-S5V4N54A-CszLJ5HU.js → cose-bilkent-S5V4N54A-r3dremCG.js} +1 -1
- package/dist/assets/{dagre-6UL2VRFP-Cr25CaNe.js → dagre-6UL2VRFP-C6AizynV.js} +1 -1
- package/dist/assets/{diagram-PSM6KHXK-CnsZe68H.js → diagram-PSM6KHXK-CKTAJrFm.js} +1 -1
- package/dist/assets/{diagram-QEK2KX5R-CN8ov45N.js → diagram-QEK2KX5R-B4BLbqZ6.js} +1 -1
- package/dist/assets/{diagram-S2PKOQOG-v2bUyBL7.js → diagram-S2PKOQOG-CLy2S4hE.js} +1 -1
- package/dist/assets/{erDiagram-Q2GNP2WA-BxxatPhi.js → erDiagram-Q2GNP2WA-DlemVcfS.js} +1 -1
- package/dist/assets/{flowDiagram-NV44I4VS-DIKLSwgl.js → flowDiagram-NV44I4VS-CpBPPeuN.js} +1 -1
- package/dist/assets/{ganttDiagram-JELNMOA3-D_0u3tXB.js → ganttDiagram-JELNMOA3-BY4cJPdg.js} +1 -1
- package/dist/assets/{gitGraphDiagram-V2S2FVAM-B_nu7ypr.js → gitGraphDiagram-V2S2FVAM-D7RJFr3i.js} +1 -1
- package/dist/assets/{graph-DmMuvtfO.js → graph-CJZvtDnb.js} +1 -1
- package/dist/assets/index-CARUdnbv.js +795 -0
- package/dist/assets/index-DcCYJX3c.css +1 -0
- package/dist/assets/{infoDiagram-HS3SLOUP-DLLSS3lr.js → infoDiagram-HS3SLOUP-CcSzbqKG.js} +1 -1
- package/dist/assets/{isUndefined-u8cwznUN.js → isUndefined-BbMiFvTc.js} +1 -1
- package/dist/assets/{journeyDiagram-XKPGCS4Q-fF1HZxKQ.js → journeyDiagram-XKPGCS4Q-DTmP5k2H.js} +1 -1
- package/dist/assets/{kanban-definition-3W4ZIXB7-CcmlUntf.js → kanban-definition-3W4ZIXB7-BSA4gDhk.js} +1 -1
- package/dist/assets/{layout-CuCF7WdL.js → layout-D3BxIqM1.js} +1 -1
- package/dist/assets/{linear-BVXj8lVL.js → linear-CemsbS51.js} +1 -1
- package/dist/assets/{min-DEoUCRl0.js → min-DkRMnH62.js} +1 -1
- package/dist/assets/{mindmap-definition-VGOIOE7T-DtNTD5Hm.js → mindmap-definition-VGOIOE7T-CNj0QY6e.js} +1 -1
- package/dist/assets/{pieDiagram-ADFJNKIX-a07QMF4s.js → pieDiagram-ADFJNKIX-CPQsqbb4.js} +1 -1
- package/dist/assets/{quadrantDiagram-AYHSOK5B-NxQVfG-F.js → quadrantDiagram-AYHSOK5B-CPX25nd3.js} +1 -1
- package/dist/assets/{requirementDiagram-UZGBJVZJ-DfwcBFwx.js → requirementDiagram-UZGBJVZJ-7mxxRNiB.js} +1 -1
- package/dist/assets/{sankeyDiagram-TZEHDZUN-BeRNGGtP.js → sankeyDiagram-TZEHDZUN-CPhitUZ9.js} +1 -1
- package/dist/assets/{sequenceDiagram-WL72ISMW-dTp9Xfca.js → sequenceDiagram-WL72ISMW-BwLMsC7F.js} +1 -1
- package/dist/assets/{stateDiagram-FKZM4ZOC-uXrzw1Ia.js → stateDiagram-FKZM4ZOC-Crx9CUqD.js} +1 -1
- package/dist/assets/stateDiagram-v2-4FDKWEC3-elh6u9Fl.js +1 -0
- package/dist/assets/{timeline-definition-IT6M3QCI-Jx4tDH4r.js → timeline-definition-IT6M3QCI-DDh1Iim0.js} +1 -1
- package/dist/assets/{treemap-GDKQZRPO-CYRu_RLQ.js → treemap-GDKQZRPO-Bc6lNY0z.js} +1 -1
- package/dist/assets/{xychartDiagram-PRI3JC2R-DVYMDr6g.js → xychartDiagram-PRI3JC2R-BAGZwI3e.js} +1 -1
- package/dist/index.html +2 -2
- package/package.json +2 -74
- package/src/features/account/pages/service-tokens.tsx +13 -60
- package/src/features/workflow/components/panels/rjsf-cron-widget.tsx +421 -0
- package/src/features/workflow/components/panels/rjsf-theme.tsx +2 -0
- package/src/features/workflow/data/templates/candidate-badges.ts +11 -1
- package/src/features/workflow/data/workflow-types.ts +3 -0
- package/src/features/workflow/lib/workflow-storage-api.ts +118 -2
- package/src/features/workflow/lib/workflow-storage-helpers.ts +65 -0
- package/src/features/workflow/lib/workflow-storage.ts +17 -0
- package/src/features/workflow/lib/workflow-storage.types.ts +16 -0
- package/src/features/workflow/pages/workflow/components/workflow-config-sheet.tsx +26 -5
- package/src/features/workflow/pages/workflow/components/workflow-tab-content.tsx +64 -1
- package/src/features/workflow/pages/workflow/hooks/controller/build-layout-props.ts +5 -0
- package/src/features/workflow/pages/workflow-gallery/candidate-updates.ts +107 -0
- package/src/features/workflow/pages/workflow-gallery/use-workflow-gallery-actions.ts +29 -4
- package/src/features/workflow/pages/workflow-gallery/use-workflow-gallery-state.ts +29 -25
- package/src/features/workflow/pages/workflow-gallery/workflow-card.tsx +187 -6
- package/src/features/workflow/pages/workflow-gallery/workflow-gallery-tabs.tsx +6 -0
- package/src/features/workflow/pages/workflow-gallery.tsx +2 -0
- package/src/lib/api.ts +2 -17
- package/vite.config.ts +0 -7
- package/dist/assets/channel-DPwJ8Ajm.js +0 -1
- package/dist/assets/classDiagram-2ON5EDUG-CYBYFsly.js +0 -1
- package/dist/assets/classDiagram-v2-WZHVMYZB-CYBYFsly.js +0 -1
- package/dist/assets/clone-tT9-ZTc-.js +0 -1
- package/dist/assets/index-BVY_PYJU.css +0 -1
- package/dist/assets/index-DVxGch9w.js +0 -790
- package/dist/assets/stateDiagram-v2-4FDKWEC3-dqZSxN9f.js +0 -1
- package/src/features/workflow/components/layouts/workflow-page-layout.tsx +0 -69
- package/src/features/workflow/data/templates/template-owner.ts +0 -7
package/dist/assets/{xychartDiagram-PRI3JC2R-DVYMDr6g.js → xychartDiagram-PRI3JC2R-BAGZwI3e.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{s as gi,g as xi,q as Xt,p as di,a as fi,b as pi,_ as a,l as Nt,H as mi,e as yi,y as bi,F as St,i as Ai,D as Yt,E as wi,K as Ci,aI as Si,R as Wt}from"./index-
|
|
1
|
+
import{s as gi,g as xi,q as Xt,p as di,a as fi,b as pi,_ as a,l as Nt,H as mi,e as yi,y as bi,F as St,i as Ai,D as Yt,E as wi,K as Ci,aI as Si,R as Wt}from"./index-CARUdnbv.js";import{i as _i}from"./init-Gi6I4Gst.js";import{o as ki}from"./ordinal-Cboi1Yqb.js";import{l as zt}from"./linear-CemsbS51.js";import"./defaultLocale-C4B-KCzX.js";function Ri(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 yt(){var e=ki().unknown(void 0),t=e.domain,i=e.range,s=0,n=1,o,g,m=!1,p=0,k=0,v=.5;delete e.unknown;function C(){var b=t().length,E=n<s,D=E?n:s,P=E?s:n;o=(P-D)/Math.max(1,b-p+k*2),m&&(o=Math.floor(o)),D+=(P-D-o*(b-p))*v,g=o*(1-p),m&&(D=Math.round(D),g=Math.round(g));var I=Ri(b).map(function(y){return D+o*y});return i(E?I.reverse():I)}return e.domain=function(b){return arguments.length?(t(b),C()):t()},e.range=function(b){return arguments.length?([s,n]=b,s=+s,n=+n,C()):[s,n]},e.rangeRound=function(b){return[s,n]=b,s=+s,n=+n,m=!0,C()},e.bandwidth=function(){return g},e.step=function(){return o},e.round=function(b){return arguments.length?(m=!!b,C()):m},e.padding=function(b){return arguments.length?(p=Math.min(1,k=+b),C()):p},e.paddingInner=function(b){return arguments.length?(p=Math.min(1,b),C()):p},e.paddingOuter=function(b){return arguments.length?(k=+b,C()):k},e.align=function(b){return arguments.length?(v=Math.max(0,Math.min(1,b)),C()):v},e.copy=function(){return yt(t(),[s,n]).round(m).paddingInner(p).paddingOuter(k).align(v)},_i.apply(C(),arguments)}var bt=(function(){var e=a(function(F,h,u,x){for(u=u||{},x=F.length;x--;u[F[x]]=h);return u},"o"),t=[1,10,12,14,16,18,19,21,23],i=[2,6],s=[1,3],n=[1,5],o=[1,6],g=[1,7],m=[1,5,10,12,14,16,18,19,21,23,34,35,36],p=[1,25],k=[1,26],v=[1,28],C=[1,29],b=[1,30],E=[1,31],D=[1,32],P=[1,33],I=[1,34],y=[1,35],_=[1,36],c=[1,37],W=[1,43],z=[1,42],U=[1,47],X=[1,50],l=[1,10,12,14,16,18,19,21,23,34,35,36],L=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],S=[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],R=[1,64],$={trace:a(function(){},"trace"),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:a(function(h,u,x,d,w,r,at){var f=r.length-1;switch(w){case 5:d.setOrientation(r[f]);break;case 9:d.setDiagramTitle(r[f].text.trim());break;case 12:d.setLineData({text:"",type:"text"},r[f]);break;case 13:d.setLineData(r[f-1],r[f]);break;case 14:d.setBarData({text:"",type:"text"},r[f]);break;case 15:d.setBarData(r[f-1],r[f]);break;case 16:this.$=r[f].trim(),d.setAccTitle(this.$);break;case 17:case 18:this.$=r[f].trim(),d.setAccDescription(this.$);break;case 19:this.$=r[f-1];break;case 20:this.$=[Number(r[f-2]),...r[f]];break;case 21:this.$=[Number(r[f])];break;case 22:d.setXAxisTitle(r[f]);break;case 23:d.setXAxisTitle(r[f-1]);break;case 24:d.setXAxisTitle({type:"text",text:""});break;case 25:d.setXAxisBand(r[f]);break;case 26:d.setXAxisRangeData(Number(r[f-2]),Number(r[f]));break;case 27:this.$=r[f-1];break;case 28:this.$=[r[f-2],...r[f]];break;case 29:this.$=[r[f]];break;case 30:d.setYAxisTitle(r[f]);break;case 31:d.setYAxisTitle(r[f-1]);break;case 32:d.setYAxisTitle({type:"text",text:""});break;case 33:d.setYAxisRangeData(Number(r[f-2]),Number(r[f]));break;case 37:this.$={text:r[f],type:"text"};break;case 38:this.$={text:r[f],type:"text"};break;case 39:this.$={text:r[f],type:"markdown"};break;case 40:this.$=r[f];break;case 41:this.$=r[f-1]+""+r[f];break}},"anonymous"),table:[e(t,i,{3:1,4:2,7:4,5:s,34:n,35:o,36:g}),{1:[3]},e(t,i,{4:2,7:4,3:8,5:s,34:n,35:o,36:g}),e(t,i,{4:2,7:4,6:9,3:10,5:s,8:[1,11],34:n,35:o,36:g}),{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(m,[2,34]),e(m,[2,35]),e(m,[2,36]),{1:[2,1]},e(t,i,{4:2,7:4,3:21,5:s,34:n,35:o,36:g}),{1:[2,3]},e(m,[2,5]),e(t,[2,7],{4:22,34:n,35:o,36:g}),{11:23,37:24,38:p,39:k,40:27,41:v,42:C,43:b,44:E,45:D,46:P,47:I,48:y,49:_,50:c},{11:39,13:38,24:W,27:z,29:40,30:41,37:24,38:p,39:k,40:27,41:v,42:C,43:b,44:E,45:D,46:P,47:I,48:y,49:_,50:c},{11:45,15:44,27:U,33:46,37:24,38:p,39:k,40:27,41:v,42:C,43:b,44:E,45:D,46:P,47:I,48:y,49:_,50:c},{11:49,17:48,24:X,37:24,38:p,39:k,40:27,41:v,42:C,43:b,44:E,45:D,46:P,47:I,48:y,49:_,50:c},{11:52,17:51,24:X,37:24,38:p,39:k,40:27,41:v,42:C,43:b,44:E,45:D,46:P,47:I,48:y,49:_,50:c},{20:[1,53]},{22:[1,54]},e(l,[2,18]),{1:[2,2]},e(l,[2,8]),e(l,[2,9]),e(L,[2,37],{40:55,41:v,42:C,43:b,44:E,45:D,46:P,47:I,48:y,49:_,50:c}),e(L,[2,38]),e(L,[2,39]),e(S,[2,40]),e(S,[2,42]),e(S,[2,43]),e(S,[2,44]),e(S,[2,45]),e(S,[2,46]),e(S,[2,47]),e(S,[2,48]),e(S,[2,49]),e(S,[2,50]),e(S,[2,51]),e(l,[2,10]),e(l,[2,22],{30:41,29:56,24:W,27:z}),e(l,[2,24]),e(l,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:p,39:k,40:27,41:v,42:C,43:b,44:E,45:D,46:P,47:I,48:y,49:_,50:c},e(l,[2,11]),e(l,[2,30],{33:60,27:U}),e(l,[2,32]),{31:[1,61]},e(l,[2,12]),{17:62,24:X},{25:63,27:R},e(l,[2,14]),{17:65,24:X},e(l,[2,16]),e(l,[2,17]),e(S,[2,41]),e(l,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},e(l,[2,31]),{27:[1,69]},e(l,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},e(l,[2,15]),e(l,[2,26]),e(l,[2,27]),{11:59,32:72,37:24,38:p,39:k,40:27,41:v,42:C,43:b,44:E,45:D,46:P,47:I,48:y,49:_,50:c},e(l,[2,33]),e(l,[2,19]),{25:73,27:R},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:a(function(h,u){if(u.recoverable)this.trace(h);else{var x=new Error(h);throw x.hash=u,x}},"parseError"),parse:a(function(h){var u=this,x=[0],d=[],w=[null],r=[],at=this.table,f="",lt=0,It=0,hi=2,Mt=1,li=r.slice.call(arguments,1),T=Object.create(this.lexer),Y={yy:{}};for(var dt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,dt)&&(Y.yy[dt]=this.yy[dt]);T.setInput(h,Y.yy),Y.yy.lexer=T,Y.yy.parser=this,typeof T.yylloc>"u"&&(T.yylloc={});var ft=T.yylloc;r.push(ft);var ci=T.options&&T.options.ranges;typeof Y.yy.parseError=="function"?this.parseError=Y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ui(V){x.length=x.length-2*V,w.length=w.length-V,r.length=r.length-V}a(ui,"popStack");function Vt(){var V;return V=d.pop()||T.lex()||Mt,typeof V!="number"&&(V instanceof Array&&(d=V,V=d.pop()),V=u.symbols_[V]||V),V}a(Vt,"lex");for(var M,H,B,pt,q={},ct,O,Bt,ut;;){if(H=x[x.length-1],this.defaultActions[H]?B=this.defaultActions[H]:((M===null||typeof M>"u")&&(M=Vt()),B=at[H]&&at[H][M]),typeof B>"u"||!B.length||!B[0]){var mt="";ut=[];for(ct in at[H])this.terminals_[ct]&&ct>hi&&ut.push("'"+this.terminals_[ct]+"'");T.showPosition?mt="Parse error on line "+(lt+1)+`:
|
|
2
2
|
`+T.showPosition()+`
|
|
3
3
|
Expecting `+ut.join(", ")+", got '"+(this.terminals_[M]||M)+"'":mt="Parse error on line "+(lt+1)+": Unexpected "+(M==Mt?"end of input":"'"+(this.terminals_[M]||M)+"'"),this.parseError(mt,{text:T.match,token:this.terminals_[M]||M,line:T.yylineno,loc:ft,expected:ut})}if(B[0]instanceof Array&&B.length>1)throw new Error("Parse Error: multiple actions possible at state: "+H+", token: "+M);switch(B[0]){case 1:x.push(M),w.push(T.yytext),r.push(T.yylloc),x.push(B[1]),M=null,It=T.yyleng,f=T.yytext,lt=T.yylineno,ft=T.yylloc;break;case 2:if(O=this.productions_[B[1]][1],q.$=w[w.length-O],q._$={first_line:r[r.length-(O||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(O||1)].first_column,last_column:r[r.length-1].last_column},ci&&(q._$.range=[r[r.length-(O||1)].range[0],r[r.length-1].range[1]]),pt=this.performAction.apply(q,[f,It,lt,Y.yy,B[1],w,r].concat(li)),typeof pt<"u")return pt;O&&(x=x.slice(0,-1*O*2),w=w.slice(0,-1*O),r=r.slice(0,-1*O)),x.push(this.productions_[B[1]][0]),w.push(q.$),r.push(q._$),Bt=at[x[x.length-2]][x[x.length-1]],x.push(Bt);break;case 3:return!0}}return!0},"parse")},Et=(function(){var F={EOF:1,parseError:a(function(u,x){if(this.yy.parser)this.yy.parser.parseError(u,x);else throw new Error(u)},"parseError"),setInput:a(function(h,u){return this.yy=u||this.yy||{},this._input=h,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},"setInput"),input:a(function(){var h=this._input[0];this.yytext+=h,this.yyleng++,this.offset++,this.match+=h,this.matched+=h;var u=h.match(/(?:\r\n?|\n).*/g);return u?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),h},"input"),unput:a(function(h){var u=h.length,x=h.split(/(?:\r\n?|\n)/g);this._input=h+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-u),this.offset-=u;var d=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),x.length-1&&(this.yylineno-=x.length-1);var w=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:x?(x.length===d.length?this.yylloc.first_column:0)+d[d.length-x.length].length-x[0].length:this.yylloc.first_column-u},this.options.ranges&&(this.yylloc.range=[w[0],w[0]+this.yyleng-u]),this.yyleng=this.yytext.length,this},"unput"),more:a(function(){return this._more=!0,this},"more"),reject:a(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},"reject"),less:a(function(h){this.unput(this.match.slice(h))},"less"),pastInput:a(function(){var h=this.matched.substr(0,this.matched.length-this.match.length);return(h.length>20?"...":"")+h.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:a(function(){var h=this.match;return h.length<20&&(h+=this._input.substr(0,20-h.length)),(h.substr(0,20)+(h.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:a(function(){var h=this.pastInput(),u=new Array(h.length+1).join("-");return h+this.upcomingInput()+`
|
package/dist/index.html
CHANGED
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
<link rel="icon" type="image/svg+xml" href="/favicon.ico" />
|
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
7
|
<title>Orcheo</title>
|
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
|
9
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-CARUdnbv.js"></script>
|
|
9
|
+
<link rel="stylesheet" crossorigin href="/assets/index-DcCYJX3c.css">
|
|
10
10
|
</head>
|
|
11
11
|
<body>
|
|
12
12
|
<div id="root"></div>
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "orcheo-studio",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.24.1",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "Orcheo UI for Orcheo workflow orchestration platform",
|
|
7
7
|
"keywords": [
|
|
@@ -35,29 +35,16 @@
|
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@evilmartians/agent-prism-data": "^0.0.8",
|
|
37
37
|
"@evilmartians/agent-prism-types": "^0.0.8",
|
|
38
|
-
"@monaco-editor/react": "^4.7.0",
|
|
39
38
|
"@openai/chatkit-react": "^1.1.1",
|
|
40
|
-
"@radix-ui/react-accordion": "^1.2.3",
|
|
41
39
|
"@radix-ui/react-alert-dialog": "^1.1.6",
|
|
42
|
-
"@radix-ui/react-aspect-ratio": "^1.1.2",
|
|
43
40
|
"@radix-ui/react-avatar": "^1.1.3",
|
|
44
|
-
"@radix-ui/react-checkbox": "^1.1.4",
|
|
45
41
|
"@radix-ui/react-collapsible": "^1.1.3",
|
|
46
|
-
"@radix-ui/react-context-menu": "^2.2.6",
|
|
47
42
|
"@radix-ui/react-dialog": "^1.1.6",
|
|
48
43
|
"@radix-ui/react-dropdown-menu": "^2.1.6",
|
|
49
|
-
"@radix-ui/react-hover-card": "^1.1.6",
|
|
50
|
-
"@radix-ui/react-icons": "^1.3.0",
|
|
51
44
|
"@radix-ui/react-label": "^2.1.2",
|
|
52
|
-
"@radix-ui/react-menubar": "^1.1.6",
|
|
53
|
-
"@radix-ui/react-navigation-menu": "^1.2.5",
|
|
54
|
-
"@radix-ui/react-popover": "^1.1.6",
|
|
55
|
-
"@radix-ui/react-progress": "^1.1.2",
|
|
56
|
-
"@radix-ui/react-radio-group": "^1.2.3",
|
|
57
45
|
"@radix-ui/react-scroll-area": "^1.2.3",
|
|
58
46
|
"@radix-ui/react-select": "^2.1.6",
|
|
59
47
|
"@radix-ui/react-separator": "^1.1.2",
|
|
60
|
-
"@radix-ui/react-slider": "^1.2.3",
|
|
61
48
|
"@radix-ui/react-slot": "^1.1.2",
|
|
62
49
|
"@radix-ui/react-switch": "^1.1.3",
|
|
63
50
|
"@radix-ui/react-tabs": "^1.1.3",
|
|
@@ -70,81 +57,22 @@
|
|
|
70
57
|
"@rjsf/validator-ajv8": "^5.24.13",
|
|
71
58
|
"@vitejs/plugin-react": "^4.3.4",
|
|
72
59
|
"@xyflow/react": "^12.6.0",
|
|
73
|
-
"ag-grid-react": "^32.1.0",
|
|
74
|
-
"antd": "^5.20.5",
|
|
75
|
-
"aos": "^2.3.4",
|
|
76
60
|
"autoprefixer": "^10.4.20",
|
|
77
|
-
"canvas-confetti": "^1.9.3",
|
|
78
61
|
"class-variance-authority": "^0.7.1",
|
|
79
62
|
"classnames": "^2.5.1",
|
|
80
63
|
"clsx": "^2.1.1",
|
|
81
|
-
"cmdk": "^1.0.0",
|
|
82
|
-
"d3": "^7.9.0",
|
|
83
|
-
"d3-sankey": "^0.12.3",
|
|
84
|
-
"date-fns": "^3.6.0",
|
|
85
|
-
"diff": "^8.0.3",
|
|
86
|
-
"diff-match-patch": "^1.0.5",
|
|
87
|
-
"echarts-for-react": "^3.0.2",
|
|
88
|
-
"embla-carousel-react": "^8.5.2",
|
|
89
|
-
"emoji-picker-react": "^4.11.1",
|
|
90
|
-
"esbuild": "^0.25.4",
|
|
91
|
-
"esbuild-plugin-globals": "^0.2.0",
|
|
92
|
-
"ethers": "^6.13.2",
|
|
93
|
-
"formik": "^2.4.6",
|
|
94
|
-
"framer-motion": "^11.3.24",
|
|
95
|
-
"highcharts": "^11.4.7",
|
|
96
|
-
"highcharts-react-official": "^3.2.1",
|
|
97
|
-
"input-otp": "^1.4.2",
|
|
98
|
-
"jspdf": "^4.1.0",
|
|
99
|
-
"jspdf-autotable": "^5.0.2",
|
|
100
|
-
"leaflet": "^1.9.4",
|
|
101
64
|
"lucide-react": "^0.477.0",
|
|
102
|
-
"mapbox-gl": "^1.13.3",
|
|
103
65
|
"mermaid": "^11.12.3",
|
|
104
|
-
"moment": "^2.30.1",
|
|
105
|
-
"papaparse": "^5.4.1",
|
|
106
|
-
"patch-package": "^8.0.0",
|
|
107
|
-
"plotly": "^1.0.6",
|
|
108
66
|
"postcss": "^8.5.3",
|
|
109
67
|
"react": "^19.0.0",
|
|
110
|
-
"react-big-calendar": "latest",
|
|
111
|
-
"react-chartjs-2": "latest",
|
|
112
|
-
"react-circular-progressbar": "latest",
|
|
113
|
-
"react-colorful": "latest",
|
|
114
|
-
"react-confetti": "latest",
|
|
115
|
-
"react-day-picker": "latest",
|
|
116
|
-
"react-dnd": "latest",
|
|
117
|
-
"react-dnd-html5-backend": "latest",
|
|
118
68
|
"react-dom": "^19.0.0",
|
|
119
|
-
"react-dropzone": "latest",
|
|
120
|
-
"react-feather": "latest",
|
|
121
|
-
"react-hook-form": "latest",
|
|
122
|
-
"react-hot-toast": "latest",
|
|
123
|
-
"react-intersection-observer": "latest",
|
|
124
69
|
"react-json-pretty": "^2.2.0",
|
|
125
|
-
"react-konva": "latest",
|
|
126
|
-
"react-leaflet": "latest",
|
|
127
|
-
"react-markdown": "latest",
|
|
128
|
-
"react-masonry-css": "latest",
|
|
129
|
-
"react-pdf": "latest",
|
|
130
|
-
"react-plotly.js": "latest",
|
|
131
70
|
"react-resizable-panels": "3.0.6",
|
|
132
71
|
"react-router-dom": "latest",
|
|
133
|
-
"react-split": "^2.0.14",
|
|
134
|
-
"react-syntax-highlighter": "^15.6.1",
|
|
135
|
-
"react-type-animation": "latest",
|
|
136
|
-
"recharts": "^2.15.1",
|
|
137
|
-
"sonner": "^2.0.1",
|
|
138
|
-
"styled-components": "^6.1.13",
|
|
139
72
|
"tailwind-merge": "^3.0.2",
|
|
140
73
|
"tailwindcss": "^3.4.17",
|
|
141
74
|
"tailwindcss-animate": "^1.0.7",
|
|
142
|
-
"
|
|
143
|
-
"tsparticles": "^3.5.0",
|
|
144
|
-
"vaul": "^1.1.2",
|
|
145
|
-
"vite": "^6.2.0",
|
|
146
|
-
"yup": "^1.4.0",
|
|
147
|
-
"zod": "^3.23.8"
|
|
75
|
+
"vite": "^6.2.0"
|
|
148
76
|
},
|
|
149
77
|
"devDependencies": {
|
|
150
78
|
"@eslint/js": "^9.21.0",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useEffect, useState } from "react";
|
|
2
|
-
import { Copy, KeyRound,
|
|
2
|
+
import { Copy, KeyRound, Trash2 } from "lucide-react";
|
|
3
3
|
import { Button } from "@/design-system/ui/button";
|
|
4
4
|
import { Input } from "@/design-system/ui/input";
|
|
5
5
|
import { Label } from "@/design-system/ui/label";
|
|
@@ -43,7 +43,6 @@ import {
|
|
|
43
43
|
getActiveWorkspace,
|
|
44
44
|
listServiceTokens,
|
|
45
45
|
revokeServiceToken,
|
|
46
|
-
rotateServiceToken,
|
|
47
46
|
type ServiceToken,
|
|
48
47
|
} from "@/lib/api";
|
|
49
48
|
|
|
@@ -63,8 +62,6 @@ const EXPIRY_OPTIONS = [
|
|
|
63
62
|
{ value: "30d", label: "30 days", seconds: 2592000 },
|
|
64
63
|
] as const;
|
|
65
64
|
|
|
66
|
-
const ROTATION_OVERLAP_SECONDS = 300;
|
|
67
|
-
|
|
68
65
|
const formatDate = (value: string | null | undefined): string =>
|
|
69
66
|
value ? new Date(value).toLocaleString() : "—";
|
|
70
67
|
|
|
@@ -90,13 +87,12 @@ export default function ServiceTokens() {
|
|
|
90
87
|
const [workspaceName, setWorkspaceName] = useState<string | null>(null);
|
|
91
88
|
|
|
92
89
|
const [createOpen, setCreateOpen] = useState(false);
|
|
93
|
-
const [
|
|
90
|
+
const [name, setName] = useState("");
|
|
94
91
|
const [selectedScopes, setSelectedScopes] = useState<Set<string>>(new Set());
|
|
95
92
|
const [expiry, setExpiry] = useState<string>("never");
|
|
96
93
|
const [isMinting, setIsMinting] = useState(false);
|
|
97
94
|
|
|
98
95
|
const [revealed, setRevealed] = useState<RevealedSecret | null>(null);
|
|
99
|
-
const [rotatingId, setRotatingId] = useState<string | null>(null);
|
|
100
96
|
const [revokingId, setRevokingId] = useState<string | null>(null);
|
|
101
97
|
const [revokeTarget, setRevokeTarget] = useState<string | null>(null);
|
|
102
98
|
|
|
@@ -137,7 +133,7 @@ export default function ServiceTokens() {
|
|
|
137
133
|
}, []);
|
|
138
134
|
|
|
139
135
|
const resetCreateForm = () => {
|
|
140
|
-
|
|
136
|
+
setName("");
|
|
141
137
|
setSelectedScopes(new Set());
|
|
142
138
|
setExpiry("never");
|
|
143
139
|
};
|
|
@@ -161,14 +157,14 @@ export default function ServiceTokens() {
|
|
|
161
157
|
(option) => option.value === expiry,
|
|
162
158
|
);
|
|
163
159
|
const token = await createServiceToken({
|
|
164
|
-
|
|
160
|
+
name: name.trim() || undefined,
|
|
165
161
|
scopes: [...selectedScopes],
|
|
166
162
|
expires_in_seconds: expiryOption?.seconds ?? undefined,
|
|
167
163
|
});
|
|
168
164
|
setTokens((prev) => [token, ...prev]);
|
|
169
165
|
setRevealed({
|
|
170
166
|
title: "API key created",
|
|
171
|
-
identifier: token.identifier,
|
|
167
|
+
identifier: token.name ?? token.identifier,
|
|
172
168
|
secret: token.secret ?? "",
|
|
173
169
|
});
|
|
174
170
|
resetCreateForm();
|
|
@@ -185,32 +181,6 @@ export default function ServiceTokens() {
|
|
|
185
181
|
}
|
|
186
182
|
};
|
|
187
183
|
|
|
188
|
-
const handleRotate = async (tokenId: string) => {
|
|
189
|
-
setRotatingId(tokenId);
|
|
190
|
-
try {
|
|
191
|
-
const rotated = await rotateServiceToken(
|
|
192
|
-
tokenId,
|
|
193
|
-
ROTATION_OVERLAP_SECONDS,
|
|
194
|
-
);
|
|
195
|
-
const tokenList = await listServiceTokens();
|
|
196
|
-
setTokens(tokenList.tokens);
|
|
197
|
-
setRevealed({
|
|
198
|
-
title: "API key rotated",
|
|
199
|
-
identifier: rotated.identifier,
|
|
200
|
-
secret: rotated.secret ?? "",
|
|
201
|
-
});
|
|
202
|
-
toast({ title: "API key rotated" });
|
|
203
|
-
} catch (err) {
|
|
204
|
-
toast({
|
|
205
|
-
title: "Failed to rotate API key",
|
|
206
|
-
description: err instanceof Error ? err.message : undefined,
|
|
207
|
-
variant: "destructive",
|
|
208
|
-
});
|
|
209
|
-
} finally {
|
|
210
|
-
setRotatingId(null);
|
|
211
|
-
}
|
|
212
|
-
};
|
|
213
|
-
|
|
214
184
|
const handleRevoke = async () => {
|
|
215
185
|
const tokenId = revokeTarget;
|
|
216
186
|
if (!tokenId) {
|
|
@@ -277,7 +247,7 @@ export default function ServiceTokens() {
|
|
|
277
247
|
<Table>
|
|
278
248
|
<TableHeader>
|
|
279
249
|
<TableRow>
|
|
280
|
-
<TableHead>
|
|
250
|
+
<TableHead>Name</TableHead>
|
|
281
251
|
<TableHead>Key</TableHead>
|
|
282
252
|
<TableHead>Scopes</TableHead>
|
|
283
253
|
<TableHead>Issued</TableHead>
|
|
@@ -294,7 +264,7 @@ export default function ServiceTokens() {
|
|
|
294
264
|
return (
|
|
295
265
|
<TableRow key={token.identifier}>
|
|
296
266
|
<TableCell className="font-mono text-sm">
|
|
297
|
-
{token.identifier}
|
|
267
|
+
{token.name ?? token.identifier}
|
|
298
268
|
</TableCell>
|
|
299
269
|
<TableCell className="font-mono text-sm text-muted-foreground">
|
|
300
270
|
{token.secret_preview
|
|
@@ -332,30 +302,13 @@ export default function ServiceTokens() {
|
|
|
332
302
|
</TableCell>
|
|
333
303
|
<TableCell className="text-right">
|
|
334
304
|
<div className="flex justify-end gap-1">
|
|
335
|
-
<Button
|
|
336
|
-
variant="ghost"
|
|
337
|
-
size="sm"
|
|
338
|
-
onClick={() => void handleRotate(token.identifier)}
|
|
339
|
-
disabled={
|
|
340
|
-
!isActive ||
|
|
341
|
-
rotatingId === token.identifier ||
|
|
342
|
-
revokingId === token.identifier
|
|
343
|
-
}
|
|
344
|
-
>
|
|
345
|
-
<RotateCw className="mr-2 h-4 w-4" />
|
|
346
|
-
{rotatingId === token.identifier
|
|
347
|
-
? "Rotating..."
|
|
348
|
-
: "Rotate"}
|
|
349
|
-
</Button>
|
|
350
305
|
<Button
|
|
351
306
|
variant="ghost"
|
|
352
307
|
size="sm"
|
|
353
308
|
className="text-destructive hover:text-destructive"
|
|
354
309
|
onClick={() => setRevokeTarget(token.identifier)}
|
|
355
310
|
disabled={
|
|
356
|
-
!isActive ||
|
|
357
|
-
rotatingId === token.identifier ||
|
|
358
|
-
revokingId === token.identifier
|
|
311
|
+
!isActive || revokingId === token.identifier
|
|
359
312
|
}
|
|
360
313
|
>
|
|
361
314
|
<Trash2 className="mr-2 h-4 w-4" />
|
|
@@ -391,12 +344,12 @@ export default function ServiceTokens() {
|
|
|
391
344
|
</DialogHeader>
|
|
392
345
|
<div className="space-y-4">
|
|
393
346
|
<div className="space-y-1.5">
|
|
394
|
-
<Label htmlFor="token-
|
|
347
|
+
<Label htmlFor="token-name">Name (optional)</Label>
|
|
395
348
|
<Input
|
|
396
|
-
id="token-
|
|
397
|
-
placeholder="
|
|
398
|
-
value={
|
|
399
|
-
onChange={(event) =>
|
|
349
|
+
id="token-name"
|
|
350
|
+
placeholder="e.g. Local, CI, Production"
|
|
351
|
+
value={name}
|
|
352
|
+
onChange={(event) => setName(event.target.value)}
|
|
400
353
|
disabled={isMinting}
|
|
401
354
|
/>
|
|
402
355
|
</div>
|