@knoflows/engine 0.1.0-alpha.10 → 0.1.0-alpha.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/dist/engine.js +12 -12
  2. package/package.json +1 -1
  3. package/static/assets/i18n/en.json +18 -0
  4. package/static/assets/i18n/es.json +18 -0
  5. package/static/{chunk-BFkZ796p.js → chunk-03U2wfYJ.js} +1 -1
  6. package/static/{chunk-jct1_zOr.js → chunk-6rAx_awr.js} +1 -1
  7. package/static/{chunk-3mppll1n.js → chunk-BGEuPXoV.js} +1 -1
  8. package/static/{chunk-hZzW00VR.js → chunk-BLVF0pVH.js} +1 -1
  9. package/static/{chunk-CJRNatUw.js → chunk-BfWasMGf.js} +1 -1
  10. package/static/{chunk-B8MrNxxk.js → chunk-Bvpl_AF9.js} +1 -1
  11. package/static/{chunk-CEcbtdnK.js → chunk-C2eCmH-q.js} +1 -1
  12. package/static/{chunk-DjibVmY7.js → chunk-CAjGF9LB.js} +1 -1
  13. package/static/{chunk-BAc0DRm8.js → chunk-CT8olEiD.js} +1 -1
  14. package/static/chunk-CUsAuTTX.js +1 -0
  15. package/static/chunk-CgXl_TS9.js +1 -0
  16. package/static/{chunk-BbcTWKT2.js → chunk-CqGGDoIh.js} +1 -1
  17. package/static/{chunk-tYnBYi0l.js → chunk-Crj-4pl_.js} +1 -1
  18. package/static/{chunk-DNOjVPY0.js → chunk-Ct30cLzT.js} +1 -1
  19. package/static/{chunk-wbdetocK.js → chunk-Cw0wBuEr.js} +3 -3
  20. package/static/chunk-CxICQyU8.js +1 -0
  21. package/static/{chunk-B2hO-qT3.js → chunk-DGHakffX.js} +1 -1
  22. package/static/chunk-DIakbH9x.js +1 -0
  23. package/static/{chunk-BjZIiizu.js → chunk-DIntI-KR.js} +1 -1
  24. package/static/{chunk-W5GAgssE.js → chunk-DPWE5cPY.js} +1 -1
  25. package/static/{chunk-Cd8F2jeN.js → chunk-DU6MKU0d.js} +1 -1
  26. package/static/{chunk-Cf_xd8ER.js → chunk-DUR5PalP.js} +1 -1
  27. package/static/{chunk-2KSNHCgb.js → chunk-DWLHaSHg.js} +1 -1
  28. package/static/{chunk-CDWIMt6y.js → chunk-D_R_EFd2.js} +1 -1
  29. package/static/{chunk-Ojn34cvU.js → chunk-DinAvqzQ.js} +1 -1
  30. package/static/{chunk-CWbxWv5I.js → chunk-DlsGU_Dk.js} +1 -1
  31. package/static/{chunk-DblClAqu.js → chunk-DwA32gts.js} +1 -1
  32. package/static/{chunk-DQnMulwi.js → chunk-IOVwMLns.js} +1 -1
  33. package/static/{chunk-cHfOiAJm.js → chunk-L_FnMwpH.js} +1 -1
  34. package/static/{chunk-XLpSkczx.js → chunk-NAyA7aWR.js} +1 -1
  35. package/static/{chunk-eSxb3-OU.js → chunk-TNH96m0D.js} +1 -1
  36. package/static/{chunk-CJDp11v5.js → chunk-Vz5kd858.js} +1 -1
  37. package/static/{chunk-BUuwGTt7.js → chunk-dUlsh7QS.js} +6 -6
  38. package/static/{chunk-A4AkMf2s.js → chunk-h3oyPsBC.js} +1 -1
  39. package/static/{chunk-BVw7xkK9.js → chunk-hKpVm95g.js} +1 -1
  40. package/static/chunk-qYK5KaAK.js +1 -0
  41. package/static/{chunk-mzyds3TS.js → chunk-qwukwlIj.js} +1 -1
  42. package/static/{chunk-CgqRVtSF.js → chunk-vPa4eOmU.js} +1 -1
  43. package/static/index.html +1 -1
  44. package/static/{main-MNK6ZYDO.js → main-HV5WDK2F.js} +1 -1
  45. package/static/chunk-6BQlxALO.js +0 -1
  46. package/static/chunk-BNOYZq-b.js +0 -1
  47. package/static/chunk-BhGgxvgu.js +0 -1
  48. package/static/chunk-D6YfO72h.js +0 -1
  49. package/static/chunk-DoXxOh8j.js +0 -1
@@ -1 +1 @@
1
- import {a as ae$1,l as le}from'./chunk-CJDp11v5.js';import'./chunk-2KSNHCgb.js';import {U}from'./chunk-Cf_xd8ER.js';import {C,$ as $$1,T as Ie,V as Ve,a as ae,q as qo,H as Hw,s,r,o,Q as QE,M as Mi,L as Ln,K as Kt,f as _i,v as vw,R as Rw,g as Kc,m as bD,h as gh,N as ND,p as gI,P as Ph,O as Ow,B as _D,w as nl,x as ch,A as xD,E as VD,U as Lh,F as LD,G as Pu,I as Lu}from'./main-MNK6ZYDO.js';var L=(t,p)=>p.id;function $(t,p){if(t&1&&(_i(0,"p",3),vw(1),Kc()),t&2){let e=VD();gI(),Ph(e.loadError());}}function z(t,p){if(t&1&&(_i(0,"option",6),vw(1),Kc()),t&2){let e=p.$implicit;ch("value",e.id),gI(),Lh("",e.name," (",e.id,")");}}function H(t,p){if(t&1){let e=LD();_i(0,"label"),vw(1),Rw(2,"transloco"),_i(3,"input",10),Rw(4,"transloco"),gh("input",function(o){Pu(e);let s=VD(2);return Lu(s.setSubjectId(o))}),Kc()();}if(t&2){let e=VD(2);gI(),nl(" ",Ow(2,3,"jobs.start.subjectId")," "),gI(2),ch("value",e.subjectId())("placeholder",Ow(4,5,"jobs.start.subjectIdPlaceholder"));}}function G(t,p){if(t&1){let e=LD();bD(0,H,5,7,"label"),_i(1,"app-workflow-input-form",9),gh("valuesChange",function(o){Pu(e);let s=VD();return Lu(s.inputValues.set(o))}),Kc();}if(t&2){let e=VD();_D(e.needsSubjectId()?0:-1),gI(),ch("fields",p.inputSchema)("values",e.inputValues());}}function K(t,p){if(t&1&&(_i(0,"p",8),vw(1),Kc()),t&2){let e=VD();gI(),Ph(e.actionError());}}var re=(()=>{class t{constructor(){this.workflowsApi=C(U),this.jobsApi=C($$1),this.router=C(Ie),this.transloco=C(Ve),this.route=C(ae),this.workflows=qo([]),this.selectedWorkflowId=qo(""),this.subjectId=qo(""),this.inputValues=qo({}),this.loadError=qo(null),this.actionError=qo(null),this.starting=qo(false),this.selectedWorkflow=Hw(()=>this.workflows().find(e=>e.id===this.selectedWorkflowId())??null),this.needsSubjectId=Hw(()=>{let e=this.selectedWorkflow();return e!=null&&e.appliesTo!=="none"}),this.workflowsApi.list({subjectHandling:"per-subject"}).subscribe({next:e=>{this.workflows.set(e);let n=this.route.snapshot.queryParamMap.get("workflowId"),o=n&&e.some(C=>C.id===n)?n:e[0]?.id;o&&this.selectWorkflow(o);let s=this.route.snapshot.queryParamMap.get("subjectId");s&&this.subjectId.set(s);},error:e=>{this.loadError.set(this.errorMessage(e,this.transloco.translate("jobs.errors.loadWorkflows")));}});}selectWorkflow(e){this.selectedWorkflowId.set(e);let n=this.workflows().find(o=>o.id===e);this.inputValues.set(ae$1(n?.inputSchema??[])),this.actionError.set(null);}onWorkflowChange(e){let n=e.target.value;this.selectWorkflow(n);}setSubjectId(e){this.subjectId.set(e.target.value);}start(){let e=this.selectedWorkflow();if(e){if(this.needsSubjectId()&&!this.subjectId().trim()){this.actionError.set(this.transloco.translate("jobs.errors.subjectIdRequired"));return}this.actionError.set(null),this.starting.set(true),this.jobsApi.start(s(r({workflowId:e.id},this.needsSubjectId()?{subjectId:this.subjectId().trim()}:{}),{inputValues:r({},this.inputValues())})).subscribe({next:n=>{this.starting.set(false),this.router.navigate(["/jobs",n.id]);},error:n=>{this.starting.set(false),this.actionError.set(this.errorMessage(n,this.transloco.translate("jobs.errors.startFailed")));}});}}errorMessage(e,n){return e instanceof o||e instanceof Error?e.message:n}static{this.\u0275fac=function(n){return new(n||t)};}static{this.\u0275cmp=QE({type:t,selectors:[["app-job-runner"]],decls:26,vars:23,consts:[[1,"runner"],["routerLink","/jobs"],[1,"lede"],["data-testid","load-error",1,"error"],["data-testid","start-form",1,"panel"],["data-testid","workflow-select",3,"change","value"],[3,"value"],["data-testid","start-button","type","button",3,"click","disabled"],["data-testid","action-error",1,"error"],[3,"valuesChange","fields","values"],["data-testid","subject-id","type","text",3,"input","value","placeholder"]],template:function(n,o){if(n&1&&(_i(0,"main",0)(1,"a",1),vw(2),Rw(3,"transloco"),Kc(),_i(4,"h1"),vw(5),Rw(6,"transloco"),Kc(),_i(7,"p",2),vw(8),Rw(9,"transloco"),Kc(),bD(10,$,2,1,"p",3),_i(11,"section",4)(12,"h2"),vw(13),Rw(14,"transloco"),Kc(),_i(15,"label"),vw(16),Rw(17,"transloco"),_i(18,"select",5),gh("change",function(C){return o.onWorkflowChange(C)}),ND(19,z,2,3,"option",6,L),Kc()(),bD(21,G,2,3),_i(22,"button",7),gh("click",function(){return o.start()}),vw(23),Rw(24,"transloco"),Kc()(),bD(25,K,2,1,"p",8),Kc()),n&2){let s;gI(2),Ph(Ow(3,11,"jobs.detail.backToStart")),gI(3),Ph(Ow(6,13,"jobs.title")),gI(3),Ph(Ow(9,15,"jobs.lede")),gI(2),_D(o.loadError()?10:-1),gI(3),Ph(Ow(14,17,"jobs.start.heading")),gI(3),nl(" ",Ow(17,19,"jobs.start.workflow")," "),gI(2),ch("value",o.selectedWorkflowId()),gI(),xD(o.workflows()),gI(2),_D((s=o.selectedWorkflow())?21:-1,s),gI(),ch("disabled",o.starting()),gI(),nl(" ",Ow(24,21,o.starting()?"jobs.start.starting":"jobs.start.button")," "),gI(2),_D(o.actionError()?25:-1);}},dependencies:[Mi,Ln,le,Kt],styles:[".runner[_ngcontent-%COMP%]{max-width:52rem;margin:0 auto;padding:1.5rem;color:#1c1917;line-height:1.45}.lede[_ngcontent-%COMP%]{color:#57534e}.panel[_ngcontent-%COMP%]{margin-top:1.25rem;padding:1rem 0;border-top:1px solid #d6d3d1}label[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.35rem;margin:.75rem 0;font-size:.95rem}input[type=text][_ngcontent-%COMP%], select[_ngcontent-%COMP%]{font:inherit;padding:.4rem .5rem;border:1px solid #a8a29e;background:#fff}button[_ngcontent-%COMP%]{font:inherit;margin-top:.5rem;padding:.45rem .9rem;border:1px solid #44403c;background:#f5f5f4;cursor:pointer}button[_ngcontent-%COMP%]:disabled{opacity:.6;cursor:not-allowed}.error[_ngcontent-%COMP%]{color:#9f1239}"]});}}return t})();export{re as JobRunnerComponent};
1
+ import {a as ae$1,l as le}from'./chunk-Vz5kd858.js';import'./chunk-DWLHaSHg.js';import {U}from'./chunk-DUR5PalP.js';import {C,$ as $$1,T as Ie,V as Ve,a as ae,q as qo,H as Hw,s,r,o,Q as QE,M as Mi,L as Ln,K as Kt,f as _i,v as vw,R as Rw,g as Kc,m as bD,h as gh,N as ND,p as gI,P as Ph,O as Ow,B as _D,w as nl,x as ch,A as xD,E as VD,U as Lh,F as LD,G as Pu,I as Lu}from'./main-HV5WDK2F.js';var L=(t,p)=>p.id;function $(t,p){if(t&1&&(_i(0,"p",3),vw(1),Kc()),t&2){let e=VD();gI(),Ph(e.loadError());}}function z(t,p){if(t&1&&(_i(0,"option",6),vw(1),Kc()),t&2){let e=p.$implicit;ch("value",e.id),gI(),Lh("",e.name," (",e.id,")");}}function H(t,p){if(t&1){let e=LD();_i(0,"label"),vw(1),Rw(2,"transloco"),_i(3,"input",10),Rw(4,"transloco"),gh("input",function(o){Pu(e);let s=VD(2);return Lu(s.setSubjectId(o))}),Kc()();}if(t&2){let e=VD(2);gI(),nl(" ",Ow(2,3,"jobs.start.subjectId")," "),gI(2),ch("value",e.subjectId())("placeholder",Ow(4,5,"jobs.start.subjectIdPlaceholder"));}}function G(t,p){if(t&1){let e=LD();bD(0,H,5,7,"label"),_i(1,"app-workflow-input-form",9),gh("valuesChange",function(o){Pu(e);let s=VD();return Lu(s.inputValues.set(o))}),Kc();}if(t&2){let e=VD();_D(e.needsSubjectId()?0:-1),gI(),ch("fields",p.inputSchema)("values",e.inputValues());}}function K(t,p){if(t&1&&(_i(0,"p",8),vw(1),Kc()),t&2){let e=VD();gI(),Ph(e.actionError());}}var re=(()=>{class t{constructor(){this.workflowsApi=C(U),this.jobsApi=C($$1),this.router=C(Ie),this.transloco=C(Ve),this.route=C(ae),this.workflows=qo([]),this.selectedWorkflowId=qo(""),this.subjectId=qo(""),this.inputValues=qo({}),this.loadError=qo(null),this.actionError=qo(null),this.starting=qo(false),this.selectedWorkflow=Hw(()=>this.workflows().find(e=>e.id===this.selectedWorkflowId())??null),this.needsSubjectId=Hw(()=>{let e=this.selectedWorkflow();return e!=null&&e.appliesTo!=="none"}),this.workflowsApi.list({subjectHandling:"per-subject"}).subscribe({next:e=>{this.workflows.set(e);let n=this.route.snapshot.queryParamMap.get("workflowId"),o=n&&e.some(C=>C.id===n)?n:e[0]?.id;o&&this.selectWorkflow(o);let s=this.route.snapshot.queryParamMap.get("subjectId");s&&this.subjectId.set(s);},error:e=>{this.loadError.set(this.errorMessage(e,this.transloco.translate("jobs.errors.loadWorkflows")));}});}selectWorkflow(e){this.selectedWorkflowId.set(e);let n=this.workflows().find(o=>o.id===e);this.inputValues.set(ae$1(n?.inputSchema??[])),this.actionError.set(null);}onWorkflowChange(e){let n=e.target.value;this.selectWorkflow(n);}setSubjectId(e){this.subjectId.set(e.target.value);}start(){let e=this.selectedWorkflow();if(e){if(this.needsSubjectId()&&!this.subjectId().trim()){this.actionError.set(this.transloco.translate("jobs.errors.subjectIdRequired"));return}this.actionError.set(null),this.starting.set(true),this.jobsApi.start(s(r({workflowId:e.id},this.needsSubjectId()?{subjectId:this.subjectId().trim()}:{}),{inputValues:r({},this.inputValues())})).subscribe({next:n=>{this.starting.set(false),this.router.navigate(["/jobs",n.id]);},error:n=>{this.starting.set(false),this.actionError.set(this.errorMessage(n,this.transloco.translate("jobs.errors.startFailed")));}});}}errorMessage(e,n){return e instanceof o||e instanceof Error?e.message:n}static{this.\u0275fac=function(n){return new(n||t)};}static{this.\u0275cmp=QE({type:t,selectors:[["app-job-runner"]],decls:26,vars:23,consts:[[1,"runner"],["routerLink","/jobs"],[1,"lede"],["data-testid","load-error",1,"error"],["data-testid","start-form",1,"panel"],["data-testid","workflow-select",3,"change","value"],[3,"value"],["data-testid","start-button","type","button",3,"click","disabled"],["data-testid","action-error",1,"error"],[3,"valuesChange","fields","values"],["data-testid","subject-id","type","text",3,"input","value","placeholder"]],template:function(n,o){if(n&1&&(_i(0,"main",0)(1,"a",1),vw(2),Rw(3,"transloco"),Kc(),_i(4,"h1"),vw(5),Rw(6,"transloco"),Kc(),_i(7,"p",2),vw(8),Rw(9,"transloco"),Kc(),bD(10,$,2,1,"p",3),_i(11,"section",4)(12,"h2"),vw(13),Rw(14,"transloco"),Kc(),_i(15,"label"),vw(16),Rw(17,"transloco"),_i(18,"select",5),gh("change",function(C){return o.onWorkflowChange(C)}),ND(19,z,2,3,"option",6,L),Kc()(),bD(21,G,2,3),_i(22,"button",7),gh("click",function(){return o.start()}),vw(23),Rw(24,"transloco"),Kc()(),bD(25,K,2,1,"p",8),Kc()),n&2){let s;gI(2),Ph(Ow(3,11,"jobs.detail.backToStart")),gI(3),Ph(Ow(6,13,"jobs.title")),gI(3),Ph(Ow(9,15,"jobs.lede")),gI(2),_D(o.loadError()?10:-1),gI(3),Ph(Ow(14,17,"jobs.start.heading")),gI(3),nl(" ",Ow(17,19,"jobs.start.workflow")," "),gI(2),ch("value",o.selectedWorkflowId()),gI(),xD(o.workflows()),gI(2),_D((s=o.selectedWorkflow())?21:-1,s),gI(),ch("disabled",o.starting()),gI(),nl(" ",Ow(24,21,o.starting()?"jobs.start.starting":"jobs.start.button")," "),gI(2),_D(o.actionError()?25:-1);}},dependencies:[Mi,Ln,le,Kt],styles:[".runner[_ngcontent-%COMP%]{max-width:52rem;margin:0 auto;padding:1.5rem;color:#1c1917;line-height:1.45}.lede[_ngcontent-%COMP%]{color:#57534e}.panel[_ngcontent-%COMP%]{margin-top:1.25rem;padding:1rem 0;border-top:1px solid #d6d3d1}label[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.35rem;margin:.75rem 0;font-size:.95rem}input[type=text][_ngcontent-%COMP%], select[_ngcontent-%COMP%]{font:inherit;padding:.4rem .5rem;border:1px solid #a8a29e;background:#fff}button[_ngcontent-%COMP%]{font:inherit;margin-top:.5rem;padding:.45rem .9rem;border:1px solid #44403c;background:#f5f5f4;cursor:pointer}button[_ngcontent-%COMP%]:disabled{opacity:.6;cursor:not-allowed}.error[_ngcontent-%COMP%]{color:#9f1239}"]});}}return t})();export{re as JobRunnerComponent};
@@ -1 +1 @@
1
- import {q as qo,H as Hw,a8 as a,i as ie}from'./main-MNK6ZYDO.js';var f=(()=>{class e{connect(t){let n=new URLSearchParams;t?.jobId&&n.set("jobId",t.jobId),t?.batchId&&n.set("batchId",t.batchId);let r=n.toString(),p=`${a.apiBaseUrl}/events${r?`?${r}`:""}`,a$1=qo([]),b=Hw(()=>{let o=a$1();return o.length>0?o[o.length-1]:void 0}),s=new EventSource(p);return s.onmessage=o=>{let c;try{c=JSON.parse(o.data);}catch(d){return}a$1.update(d=>[...d,c]);},{events:a$1.asReadonly(),latest:b,close:()=>{s.onmessage=null,s.close();}}}static{this.\u0275fac=function(n){return new(n||e)};}static{this.\u0275prov=ie({token:e,factory:e.\u0275fac,providedIn:"root"});}}return e})();export{f};
1
+ import {q as qo,H as Hw,a8 as a,i as ie}from'./main-HV5WDK2F.js';var f=(()=>{class e{connect(t){let n=new URLSearchParams;t?.jobId&&n.set("jobId",t.jobId),t?.batchId&&n.set("batchId",t.batchId);let r=n.toString(),p=`${a.apiBaseUrl}/events${r?`?${r}`:""}`,a$1=qo([]),b=Hw(()=>{let o=a$1();return o.length>0?o[o.length-1]:void 0}),s=new EventSource(p);return s.onmessage=o=>{let c;try{c=JSON.parse(o.data);}catch(d){return}a$1.update(d=>[...d,c]);},{events:a$1.asReadonly(),latest:b,close:()=>{s.onmessage=null,s.close();}}}static{this.\u0275fac=function(n){return new(n||e)};}static{this.\u0275prov=ie({token:e,factory:e.\u0275fac,providedIn:"root"});}}return e})();export{f};
@@ -1 +1 @@
1
- import {f}from'./chunk-2KSNHCgb.js';import {u}from'./chunk-CxBYhrEj.js';import {W,I}from'./chunk-DNOjVPY0.js';import {L as Lt,u as ut,p as pc,a as as,d as dc,K as Kl,c as cc,J as Ji,l as ls}from'./chunk-3mppll1n.js';import'./chunk-CEcbtdnK.js';import {Q as QE,l as lh,C,$,V as Ve,b as at,q as qo,H as Hw,u as ue$1,a9 as Ng,o,M as Mi,L as Ln,d as dd,z as zc,c as t7,Z as y7,K as Kt,f as _i,v as vw,R as Rw,g as Kc,h as gh,m as bD,p as gI,P as Ph,O as Ow,x as ch,w as nl,B as _D,E as VD,N as ND,A as xD,F as LD,a5 as ah,a3 as xw,G as Pu,I as Lu}from'./main-MNK6ZYDO.js';var ae=t=>["/jobs",t],se=(t,d)=>d.id;function le(t,d){t&1&&(_i(0,"p",3),vw(1),Rw(2,"transloco"),Kc()),t&2&&(gI(),Ph(Ow(2,1,"common.loading")));}function de(t,d){if(t&1&&(_i(0,"p",4),vw(1),Kc()),t&2){let e=VD();gI(),Ph(e.loadError());}}function ce(t,d){if(t&1&&(_i(0,"p",5),vw(1),Kc()),t&2){let e=VD(2);gI(),Ph(e.actionError());}}function pe(t,d){t&1&&(_i(0,"p",6),vw(1),Rw(2,"transloco"),Kc()),t&2&&(gI(),Ph(Ow(2,1,"worktrees.activeWarning")));}function me(t,d){t&1&&(_i(0,"p",7),vw(1),Rw(2,"transloco"),Kc()),t&2&&(gI(),Ph(Ow(2,1,"worktrees.emptyState")));}function he(t,d){if(t&1){let e=LD();_i(0,"tr")(1,"td")(2,"label",9),gh("nzCheckedChange",function(l){let _=Pu(e).$implicit,oe=VD(3);return Lu(oe.toggleSelected(_.id,l))}),Kc()(),_i(3,"td")(4,"a",10),vw(5),Kc()(),_i(6,"td"),vw(7),Kc(),_i(8,"td"),vw(9),Kc(),_i(10,"td",11),vw(11),Kc(),_i(12,"td")(13,"nz-tag"),vw(14),Rw(15,"transloco"),Kc()(),_i(16,"td"),vw(17),Kc()();}if(t&2){let e=d.$implicit,n=VD(3);ah("data-testid","worktree-row-"+e.id),gI(2),ch("nzChecked",n.isSelected(e.id)),ah("data-testid","worktree-select-"+e.id),gI(2),ch("routerLink",xw(14,ae,e.id)),ah("data-testid","worktree-job-"+e.id),gI(),Ph(e.id),gI(2),Ph(n.repoName(e)),gI(2),Ph(e.branch??"\u2014"),gI(2),Ph(e.worktreePath),gI(2),ah("data-testid","worktree-status-"+e.id),gI(),Ph(Ow(15,12,n.statusKey(e.status))),gI(3),Ph(e.createdAt);}}function ue(t,d){if(t&1&&(_i(0,"nz-table",8)(1,"thead")(2,"tr"),lh(3,"th"),_i(4,"th"),vw(5),Rw(6,"transloco"),Kc(),_i(7,"th"),vw(8),Rw(9,"transloco"),Kc(),_i(10,"th"),vw(11),Rw(12,"transloco"),Kc(),_i(13,"th"),vw(14),Rw(15,"transloco"),Kc(),_i(16,"th"),vw(17),Rw(18,"transloco"),Kc(),_i(19,"th"),vw(20),Rw(21,"transloco"),Kc()()(),_i(22,"tbody"),ND(23,he,18,16,"tr",null,se),Kc()()),t&2){let e=VD(2);ch("nzData",e.jobs())("nzShowPagination",false),gI(5),Ph(Ow(6,8,"worktrees.column.job")),gI(3),Ph(Ow(9,10,"worktrees.column.repository")),gI(3),Ph(Ow(12,12,"worktrees.column.branch")),gI(3),Ph(Ow(15,14,"worktrees.column.path")),gI(3),Ph(Ow(18,16,"worktrees.column.status")),gI(3),Ph(Ow(21,18,"worktrees.column.created")),gI(3),xD(e.jobs());}}function fe(t,d){if(t&1&&(bD(0,ce,2,1,"p",5),bD(1,pe,3,3,"p",6),bD(2,me,3,3,"p",7)(3,ue,25,20,"nz-table",8)),t&2){let e=VD();_D(e.actionError()?0:-1),gI(),_D(e.selectedHasActive()?1:-1),gI(),_D(e.jobs().length===0?2:3);}}var ne=(()=>{class t{constructor(){this.jobsApi=C($),this.reposApi=C(f),this.transloco=C(Ve),this.destroyRef=C(at),this.jobs=qo([]),this.repos=qo([]),this.selectedIds=qo([]),this.loading=qo(true),this.loadError=qo(null),this.actionError=qo(null),this.deleting=qo(false),this.selectedHasActive=Hw(()=>this.selectedJobs().some(e=>!u(e.status))),this.selectedJobs=Hw(()=>{let e=new Set(this.selectedIds());return this.jobs().filter(n=>e.has(n.id))}),this.reload();}statusKey(e){return `jobs.status.${e}`}repoName(e){return this.repos().find(l=>ge(e,l))?.name??"\u2014"}isSelected(e){return this.selectedIds().includes(e)}toggleSelected(e,n){this.selectedIds.update(l=>n?l.includes(e)?l:[...l,e]:l.filter(_=>_!==e)),this.actionError.set(null);}deleteSelected(){if(!(this.deleting()||this.selectedIds().length===0)){if(this.selectedHasActive()){this.actionError.set(this.transloco.translate("worktrees.activeWarning"));return}this.deleting.set(true),this.actionError.set(null),this.jobsApi.deleteWorktrees(this.selectedIds()).pipe(ue$1(this.destroyRef)).subscribe({next:()=>{this.deleting.set(false),this.selectedIds.set([]),this.reload();},error:e=>{this.deleting.set(false),this.actionError.set(this.errorMessage(e,this.transloco.translate("worktrees.deleteFailed")));}});}}reload(){this.loading.set(true),this.loadError.set(null),Ng({jobs:this.jobsApi.list({liveWorktree:true}),repos:this.reposApi.list()}).pipe(ue$1(this.destroyRef)).subscribe({next:({jobs:e,repos:n})=>{this.jobs.set(e),this.repos.set(n),this.loading.set(false);},error:e=>{this.loading.set(false),this.loadError.set(this.errorMessage(e,this.transloco.translate("worktrees.loadFailed")));}});}errorMessage(e,n){return e instanceof o||e instanceof Error?e.message:n}static{this.\u0275fac=function(n){return new(n||t)};}static{this.\u0275cmp=QE({type:t,selectors:[["app-worktree-list"]],decls:11,vars:8,consts:[["data-testid","worktrees-manage",1,"list-page"],[1,"header"],["nz-button","","nzDanger","","type","button","data-testid","delete-worktrees",3,"click","disabled"],["data-testid","loading"],["data-testid","load-error",1,"error"],["data-testid","action-error",1,"error"],["data-testid","active-warning",1,"warn"],["data-testid","empty-state",1,"empty"],["data-testid","worktree-table",3,"nzData","nzShowPagination"],["nz-checkbox","",3,"nzCheckedChange","nzChecked"],[3,"routerLink"],[1,"path-cell"]],template:function(n,l){n&1&&(_i(0,"div",0)(1,"header",1)(2,"h1"),vw(3),Rw(4,"transloco"),Kc(),_i(5,"button",2),gh("click",function(){return l.deleteSelected()}),vw(6),Rw(7,"transloco"),Kc()(),bD(8,le,3,3,"p",3)(9,de,2,1,"p",4)(10,fe,4,3),Kc()),n&2&&(gI(3),Ph(Ow(4,4,"worktrees.title")),gI(2),ch("disabled",l.deleting()||l.selectedIds().length===0),gI(),nl(" ",Ow(7,6,"worktrees.deleteSelected")," "),gI(2),_D(l.loading()?8:l.loadError()?9:10));},dependencies:[Mi,Ln,dd,zc,t7,y7,Lt,ut,pc,as,dc,Kl,cc,Ji,ls,W,I,Kt],styles:[".list-page[_ngcontent-%COMP%]{max-width:72rem;margin:0 auto;padding:1.25rem 1.5rem 3rem;display:flex;flex-direction:column;gap:1rem}.header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.empty[_ngcontent-%COMP%]{text-align:center;padding:2.5rem 1rem;border:1px dashed #d6d3d1;background:#fff9}.error[_ngcontent-%COMP%]{color:#9f1239}.warn[_ngcontent-%COMP%]{color:#92400e}.path-cell[_ngcontent-%COMP%]{overflow-wrap:anywhere;word-break:break-word}"]});}}return t})();function ge(t,d){let e=(t.worktreePath??"").replaceAll("\\","/"),n=d.localPath.replaceAll("\\","/").replace(/\/+$/,""),l=(d.worktreeBasePath??xe(n)).replaceAll("\\","/");return e.startsWith(l)||e.startsWith(n)}function xe(t){let d=t.split("/"),e=d.pop()??"repo";return `${d.join("/")}/${e}-worktrees`}var $e=(()=>{class t{static{this.\u0275fac=function(n){return new(n||t)};}static{this.\u0275cmp=QE({type:t,selectors:[["app-worktrees-manage"]],decls:1,vars:0,template:function(n,l){n&1&&lh(0,"app-worktree-list");},dependencies:[ne],encapsulation:2});}}return t})();export{$e as WorktreesManageComponent};
1
+ import {f}from'./chunk-DWLHaSHg.js';import {u}from'./chunk-CxBYhrEj.js';import {W,I}from'./chunk-Ct30cLzT.js';import {L as Lt,u as ut,p as pc,a as as,d as dc,K as Kl,c as cc,J as Ji,l as ls}from'./chunk-BGEuPXoV.js';import'./chunk-C2eCmH-q.js';import {Q as QE,l as lh,C,$,V as Ve,b as at,q as qo,H as Hw,u as ue$1,a9 as Ng,o,M as Mi,L as Ln,d as dd,z as zc,c as t7,Z as y7,K as Kt,f as _i,v as vw,R as Rw,g as Kc,h as gh,m as bD,p as gI,P as Ph,O as Ow,x as ch,w as nl,B as _D,E as VD,N as ND,A as xD,F as LD,a5 as ah,a3 as xw,G as Pu,I as Lu}from'./main-HV5WDK2F.js';var ae=t=>["/jobs",t],se=(t,d)=>d.id;function le(t,d){t&1&&(_i(0,"p",3),vw(1),Rw(2,"transloco"),Kc()),t&2&&(gI(),Ph(Ow(2,1,"common.loading")));}function de(t,d){if(t&1&&(_i(0,"p",4),vw(1),Kc()),t&2){let e=VD();gI(),Ph(e.loadError());}}function ce(t,d){if(t&1&&(_i(0,"p",5),vw(1),Kc()),t&2){let e=VD(2);gI(),Ph(e.actionError());}}function pe(t,d){t&1&&(_i(0,"p",6),vw(1),Rw(2,"transloco"),Kc()),t&2&&(gI(),Ph(Ow(2,1,"worktrees.activeWarning")));}function me(t,d){t&1&&(_i(0,"p",7),vw(1),Rw(2,"transloco"),Kc()),t&2&&(gI(),Ph(Ow(2,1,"worktrees.emptyState")));}function he(t,d){if(t&1){let e=LD();_i(0,"tr")(1,"td")(2,"label",9),gh("nzCheckedChange",function(l){let _=Pu(e).$implicit,oe=VD(3);return Lu(oe.toggleSelected(_.id,l))}),Kc()(),_i(3,"td")(4,"a",10),vw(5),Kc()(),_i(6,"td"),vw(7),Kc(),_i(8,"td"),vw(9),Kc(),_i(10,"td",11),vw(11),Kc(),_i(12,"td")(13,"nz-tag"),vw(14),Rw(15,"transloco"),Kc()(),_i(16,"td"),vw(17),Kc()();}if(t&2){let e=d.$implicit,n=VD(3);ah("data-testid","worktree-row-"+e.id),gI(2),ch("nzChecked",n.isSelected(e.id)),ah("data-testid","worktree-select-"+e.id),gI(2),ch("routerLink",xw(14,ae,e.id)),ah("data-testid","worktree-job-"+e.id),gI(),Ph(e.id),gI(2),Ph(n.repoName(e)),gI(2),Ph(e.branch??"\u2014"),gI(2),Ph(e.worktreePath),gI(2),ah("data-testid","worktree-status-"+e.id),gI(),Ph(Ow(15,12,n.statusKey(e.status))),gI(3),Ph(e.createdAt);}}function ue(t,d){if(t&1&&(_i(0,"nz-table",8)(1,"thead")(2,"tr"),lh(3,"th"),_i(4,"th"),vw(5),Rw(6,"transloco"),Kc(),_i(7,"th"),vw(8),Rw(9,"transloco"),Kc(),_i(10,"th"),vw(11),Rw(12,"transloco"),Kc(),_i(13,"th"),vw(14),Rw(15,"transloco"),Kc(),_i(16,"th"),vw(17),Rw(18,"transloco"),Kc(),_i(19,"th"),vw(20),Rw(21,"transloco"),Kc()()(),_i(22,"tbody"),ND(23,he,18,16,"tr",null,se),Kc()()),t&2){let e=VD(2);ch("nzData",e.jobs())("nzShowPagination",false),gI(5),Ph(Ow(6,8,"worktrees.column.job")),gI(3),Ph(Ow(9,10,"worktrees.column.repository")),gI(3),Ph(Ow(12,12,"worktrees.column.branch")),gI(3),Ph(Ow(15,14,"worktrees.column.path")),gI(3),Ph(Ow(18,16,"worktrees.column.status")),gI(3),Ph(Ow(21,18,"worktrees.column.created")),gI(3),xD(e.jobs());}}function fe(t,d){if(t&1&&(bD(0,ce,2,1,"p",5),bD(1,pe,3,3,"p",6),bD(2,me,3,3,"p",7)(3,ue,25,20,"nz-table",8)),t&2){let e=VD();_D(e.actionError()?0:-1),gI(),_D(e.selectedHasActive()?1:-1),gI(),_D(e.jobs().length===0?2:3);}}var ne=(()=>{class t{constructor(){this.jobsApi=C($),this.reposApi=C(f),this.transloco=C(Ve),this.destroyRef=C(at),this.jobs=qo([]),this.repos=qo([]),this.selectedIds=qo([]),this.loading=qo(true),this.loadError=qo(null),this.actionError=qo(null),this.deleting=qo(false),this.selectedHasActive=Hw(()=>this.selectedJobs().some(e=>!u(e.status))),this.selectedJobs=Hw(()=>{let e=new Set(this.selectedIds());return this.jobs().filter(n=>e.has(n.id))}),this.reload();}statusKey(e){return `jobs.status.${e}`}repoName(e){return this.repos().find(l=>ge(e,l))?.name??"\u2014"}isSelected(e){return this.selectedIds().includes(e)}toggleSelected(e,n){this.selectedIds.update(l=>n?l.includes(e)?l:[...l,e]:l.filter(_=>_!==e)),this.actionError.set(null);}deleteSelected(){if(!(this.deleting()||this.selectedIds().length===0)){if(this.selectedHasActive()){this.actionError.set(this.transloco.translate("worktrees.activeWarning"));return}this.deleting.set(true),this.actionError.set(null),this.jobsApi.deleteWorktrees(this.selectedIds()).pipe(ue$1(this.destroyRef)).subscribe({next:()=>{this.deleting.set(false),this.selectedIds.set([]),this.reload();},error:e=>{this.deleting.set(false),this.actionError.set(this.errorMessage(e,this.transloco.translate("worktrees.deleteFailed")));}});}}reload(){this.loading.set(true),this.loadError.set(null),Ng({jobs:this.jobsApi.list({liveWorktree:true}),repos:this.reposApi.list()}).pipe(ue$1(this.destroyRef)).subscribe({next:({jobs:e,repos:n})=>{this.jobs.set(e),this.repos.set(n),this.loading.set(false);},error:e=>{this.loading.set(false),this.loadError.set(this.errorMessage(e,this.transloco.translate("worktrees.loadFailed")));}});}errorMessage(e,n){return e instanceof o||e instanceof Error?e.message:n}static{this.\u0275fac=function(n){return new(n||t)};}static{this.\u0275cmp=QE({type:t,selectors:[["app-worktree-list"]],decls:11,vars:8,consts:[["data-testid","worktrees-manage",1,"list-page"],[1,"header"],["nz-button","","nzDanger","","type","button","data-testid","delete-worktrees",3,"click","disabled"],["data-testid","loading"],["data-testid","load-error",1,"error"],["data-testid","action-error",1,"error"],["data-testid","active-warning",1,"warn"],["data-testid","empty-state",1,"empty"],["data-testid","worktree-table",3,"nzData","nzShowPagination"],["nz-checkbox","",3,"nzCheckedChange","nzChecked"],[3,"routerLink"],[1,"path-cell"]],template:function(n,l){n&1&&(_i(0,"div",0)(1,"header",1)(2,"h1"),vw(3),Rw(4,"transloco"),Kc(),_i(5,"button",2),gh("click",function(){return l.deleteSelected()}),vw(6),Rw(7,"transloco"),Kc()(),bD(8,le,3,3,"p",3)(9,de,2,1,"p",4)(10,fe,4,3),Kc()),n&2&&(gI(3),Ph(Ow(4,4,"worktrees.title")),gI(2),ch("disabled",l.deleting()||l.selectedIds().length===0),gI(),nl(" ",Ow(7,6,"worktrees.deleteSelected")," "),gI(2),_D(l.loading()?8:l.loadError()?9:10));},dependencies:[Mi,Ln,dd,zc,t7,y7,Lt,ut,pc,as,dc,Kl,cc,Ji,ls,W,I,Kt],styles:[".list-page[_ngcontent-%COMP%]{max-width:72rem;margin:0 auto;padding:1.25rem 1.5rem 3rem;display:flex;flex-direction:column;gap:1rem}.header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.empty[_ngcontent-%COMP%]{text-align:center;padding:2.5rem 1rem;border:1px dashed #d6d3d1;background:#fff9}.error[_ngcontent-%COMP%]{color:#9f1239}.warn[_ngcontent-%COMP%]{color:#92400e}.path-cell[_ngcontent-%COMP%]{overflow-wrap:anywhere;word-break:break-word}"]});}}return t})();function ge(t,d){let e=(t.worktreePath??"").replaceAll("\\","/"),n=d.localPath.replaceAll("\\","/").replace(/\/+$/,""),l=(d.worktreeBasePath??xe(n)).replaceAll("\\","/");return e.startsWith(l)||e.startsWith(n)}function xe(t){let d=t.split("/"),e=d.pop()??"repo";return `${d.join("/")}/${e}-worktrees`}var $e=(()=>{class t{static{this.\u0275fac=function(n){return new(n||t)};}static{this.\u0275cmp=QE({type:t,selectors:[["app-worktrees-manage"]],decls:1,vars:0,template:function(n,l){n&1&&lh(0,"app-worktree-list");},dependencies:[ne],encapsulation:2});}}return t})();export{$e as WorktreesManageComponent};
@@ -1 +1 @@
1
- import {C,dC as ms,u as ue,bz as Gl,al as Se,cA as Kg,i as ie,as as oe,b as at,bx as re,dD as Dr,df as Qg,cl as ql}from'./main-MNK6ZYDO.js';var u=()=>{},R=(()=>{class e{ngZone=C(oe);destroyRef=C(at);resizeSource$=new re;listeners=0;renderer=C(Dr).createRenderer(null,null);disposeHandle=u;handler=()=>{this.ngZone.run(()=>{this.resizeSource$.next();});};constructor(){this.destroyRef.onDestroy(()=>{this.handler=u;});}connect(){return this.registerListener(),this.resizeSource$.pipe(Qg(16),ql(()=>this.unregisterListener()))}disconnet(){this.unregisterListener();}registerListener(){this.listeners===0&&this.ngZone.runOutsideAngular(()=>{this.disposeHandle=this.renderer.listen("window","resize",this.handler);}),this.listeners+=1;}unregisterListener(){this.listeners-=1,this.listeners===0&&(this.disposeHandle(),this.disposeHandle=u);}static \u0275fac=function(n){return new(n||e)};static \u0275prov=ie({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),$=(()=>{class e{get singletonRegistry(){return this._singletonRegistry}_singletonRegistry=new Map;registerSingletonWithKey(t,n){let i=this.singletonRegistry.has(t),r=i?this.singletonRegistry.get(t):this.withNewTarget(n);i||this.singletonRegistry.set(t,r);}unregisterSingletonWithKey(t){this.singletonRegistry.has(t)&&this.singletonRegistry.delete(t);}getSingletonWithKey(t){return this.singletonRegistry.has(t)?this.singletonRegistry.get(t).target:null}withNewTarget(t){return {target:t}}static \u0275fac=function(n){return new(n||e)};static \u0275prov=ie({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var M=(function(e){return e.xxxl="xxxl",e.xxl="xxl",e.xl="xl",e.lg="lg",e.md="md",e.sm="sm",e.xs="xs",e})(M||{});var b={xs:"(max-width: 575px)",sm:"(min-width: 576px)",md:"(min-width: 768px)",lg:"(min-width: 992px)",xl:"(min-width: 1200px)",xxl:"(min-width: 1600px)",xxxl:"(min-width: 1920px)"};var z=(()=>{class e{resizeService=C(R);mediaMatcher=C(ms);constructor(){this.resizeService.connect().pipe(ue()).subscribe();}subscribe(t,n){return n?this.resizeService.connect().pipe(Gl(void 0),Se(()=>this.matchMedia(t,true)),Kg((i,r)=>i[0]===r[0]),Se(i=>i[1])):this.resizeService.connect().pipe(Gl(void 0),Se(()=>this.matchMedia(t)),Kg())}matchMedia(t,n){let i=M.md,r={};return Object.keys(t).map(S=>{let d=S,g=this.mediaMatcher.matchMedia(b[d]).matches;r[d]=g,g&&(i=d);}),n?[i,r]:i}static \u0275fac=function(n){return new(n||e)};static \u0275prov=ie({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();export{$,M,R,b,z};
1
+ import {C,dC as ms,u as ue,bB as Gl,al as Se,cB as Kg,i as ie,as as oe,b as at,bz as re,dD as Dr,dg as Qg,cm as ql}from'./main-HV5WDK2F.js';var u=()=>{},R=(()=>{class e{ngZone=C(oe);destroyRef=C(at);resizeSource$=new re;listeners=0;renderer=C(Dr).createRenderer(null,null);disposeHandle=u;handler=()=>{this.ngZone.run(()=>{this.resizeSource$.next();});};constructor(){this.destroyRef.onDestroy(()=>{this.handler=u;});}connect(){return this.registerListener(),this.resizeSource$.pipe(Qg(16),ql(()=>this.unregisterListener()))}disconnet(){this.unregisterListener();}registerListener(){this.listeners===0&&this.ngZone.runOutsideAngular(()=>{this.disposeHandle=this.renderer.listen("window","resize",this.handler);}),this.listeners+=1;}unregisterListener(){this.listeners-=1,this.listeners===0&&(this.disposeHandle(),this.disposeHandle=u);}static \u0275fac=function(n){return new(n||e)};static \u0275prov=ie({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),$=(()=>{class e{get singletonRegistry(){return this._singletonRegistry}_singletonRegistry=new Map;registerSingletonWithKey(t,n){let i=this.singletonRegistry.has(t),r=i?this.singletonRegistry.get(t):this.withNewTarget(n);i||this.singletonRegistry.set(t,r);}unregisterSingletonWithKey(t){this.singletonRegistry.has(t)&&this.singletonRegistry.delete(t);}getSingletonWithKey(t){return this.singletonRegistry.has(t)?this.singletonRegistry.get(t).target:null}withNewTarget(t){return {target:t}}static \u0275fac=function(n){return new(n||e)};static \u0275prov=ie({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var M=(function(e){return e.xxxl="xxxl",e.xxl="xxl",e.xl="xl",e.lg="lg",e.md="md",e.sm="sm",e.xs="xs",e})(M||{});var b={xs:"(max-width: 575px)",sm:"(min-width: 576px)",md:"(min-width: 768px)",lg:"(min-width: 992px)",xl:"(min-width: 1200px)",xxl:"(min-width: 1600px)",xxxl:"(min-width: 1920px)"};var z=(()=>{class e{resizeService=C(R);mediaMatcher=C(ms);constructor(){this.resizeService.connect().pipe(ue()).subscribe();}subscribe(t,n){return n?this.resizeService.connect().pipe(Gl(void 0),Se(()=>this.matchMedia(t,true)),Kg((i,r)=>i[0]===r[0]),Se(i=>i[1])):this.resizeService.connect().pipe(Gl(void 0),Se(()=>this.matchMedia(t)),Kg())}matchMedia(t,n){let i=M.md,r={};return Object.keys(t).map(S=>{let d=S,g=this.mediaMatcher.matchMedia(b[d]).matches;r[d]=g,g&&(i=d);}),n?[i,r]:i}static \u0275fac=function(n){return new(n||e)};static \u0275prov=ie({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();export{$,M,R,b,z};
@@ -1 +1 @@
1
- import {$ as $$1,R,y,T,P,q,D,N,w,V,_}from'./chunk-A4AkMf2s.js';import {y as yx,c as cy,W as Wm}from'./chunk-BUuwGTt7.js';import {a as ai,z}from'./chunk-CWbxWv5I.js';import {_ as _n,C as Cn}from'./chunk-Ojn34cvU.js';import {C,aj as $,b as at,V as Ve,q as qo,H as Hw,a9 as Ng,u as ue,s,r,ak as Ml,al as Se,aa as Xi,ab as Dg,o,Q as QE,M as Mi,n as n8,am as S4,J as J6,k as k3,d as dd,z as zc,c as t7,Z as y7,X as Xb,e as V5,D as D5,K as Kt$1,f as _i,v as vw,R as Rw,g as Kc,h as gh,m as bD,p as gI,P as Ph,O as Ow,w as nl,B as _D,an as YE,ao as uu,ap as pT,aq as kt$1,ar as _r,as as oe,at as z0,au as a3,av as hT,aw as Le,ax as m1,ay as St,az as c8,aA as pt,aB as Se$1,aC as Tt,aD as Ie,aE as ly,aF as Z0,l as lh,a4 as Mh,x as ch,a5 as ah,aG as Sw,aH as h1,aI as wo,aJ as Ih,aK as qD,aL as WD,E as VD,N as ND,A as xD,F as LD,j as oE,y as sE,aM as ut,aN as nh,S as SD,aO as el,aP as tl,G as Pu,I as Lu}from'./main-MNK6ZYDO.js';import {G as Gn,u as un}from'./chunk-eSxb3-OU.js';import {W,I}from'./chunk-DNOjVPY0.js';import {p as pc,a as as,d as dc,K as Kl,c as cc,J as Ji,l as ls}from'./chunk-3mppll1n.js';import'./chunk-CEcbtdnK.js';var yt=["switchElement"];function bt(i,p){i&1&&lh(0,"nz-icon",3);}function Et(i,p){if(i&1&&(el(0),vw(1),tl()),i&2){let e=VD(2);gI(),Ph(e.nzCheckedChildren);}}function It(i,p){if(i&1&&nh(0,Et,2,1,"ng-container",6),i&2){let e=VD();ch("nzStringTemplateOutlet",e.nzCheckedChildren);}}function wt(i,p){if(i&1&&(el(0),vw(1),tl()),i&2){let e=VD(2);gI(),Ph(e.nzUnCheckedChildren);}}function Nt(i,p){if(i&1&&nh(0,wt,2,1,"ng-container",6),i&2){let e=VD();ch("nzStringTemplateOutlet",e.nzUnCheckedChildren);}}var kt="switch",J=(()=>{let i,p=[],e=[];return class K{static{let t=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;i=[ut()],pT(null,null,i,{kind:"field",name:"nzSize",static:false,private:false,access:{has:r=>"nzSize"in r,get:r=>r.nzSize,set:(r,u)=>{r.nzSize=u;}},metadata:t},p,e),t&&Object.defineProperty(this,Symbol.metadata,{enumerable:true,configurable:true,writable:true,value:t});}_nzModuleName=kt;nzConfigService=C(kt$1);el=C(_r).nativeElement;ngZone=C(oe);cdr=C(z0);focusMonitor=C(a3);destroyRef=C(at);isChecked=false;onChange=()=>{};onTouched=()=>{};switchElement;nzLoading=false;nzDisabled=false;nzControl=false;nzCheckedChildren=null;nzUnCheckedChildren=null;nzSize=hT(this,p,"default");nzId=(hT(this,e),null);dir=C(Le).valueSignal;isNzDisableFirstChange=true;size=qo(this.nzSize);formSize=C(m1,{optional:true});finalSize=Hw(()=>this.formSize?.()||this.size());updateValue(t){this.isChecked!==t&&(this.isChecked=t,this.onChange(this.isChecked));}focus(){this.focusMonitor.focusVia(this.switchElement.nativeElement,"keyboard");}blur(){this.switchElement.nativeElement.blur();}constructor(){this.destroyRef.onDestroy(()=>{this.focusMonitor.stopMonitoring(this.switchElement.nativeElement);});}ngOnChanges(t){let{nzSize:r}=t;r&&this.size.set(r.currentValue);}ngOnInit(){St(this.el,"click").pipe(ue(this.destroyRef)).subscribe(t=>{t.preventDefault(),!(this.nzControl||this.nzDisabled||this.nzLoading)&&this.ngZone.run(()=>{this.updateValue(!this.isChecked),this.cdr.markForCheck();});}),St(this.switchElement.nativeElement,"keydown").pipe(ue(this.destroyRef)).subscribe(t=>{if(this.nzControl||this.nzDisabled||this.nzLoading)return;let{keyCode:r}=t;r!==37&&r!==39&&r!==32&&r!==13||(t.preventDefault(),this.ngZone.run(()=>{r===37?this.updateValue(false):r===39?this.updateValue(true):(r===32||r===13)&&this.updateValue(!this.isChecked),this.cdr.markForCheck();}));});}ngAfterViewInit(){this.focusMonitor.monitor(this.switchElement.nativeElement,true).pipe(ue(this.destroyRef)).subscribe(t=>{t||Promise.resolve().then(()=>this.onTouched());});}writeValue(t){this.isChecked=t,this.cdr.markForCheck();}registerOnChange(t){this.onChange=t;}registerOnTouched(t){this.onTouched=t;}setDisabledState(t){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||t,this.isNzDisableFirstChange=false,this.cdr.markForCheck();}static \u0275fac=function(r){return new(r||K)};static \u0275cmp=QE({type:K,selectors:[["nz-switch"]],viewQuery:function(r,u){if(r&1&&Ih(yt,7),r&2){let q;qD(q=WD())&&(u.switchElement=q.first);}},inputs:{nzLoading:[2,"nzLoading","nzLoading",Z0],nzDisabled:[2,"nzDisabled","nzDisabled",Z0],nzControl:[2,"nzControl","nzControl",Z0],nzCheckedChildren:"nzCheckedChildren",nzUnCheckedChildren:"nzUnCheckedChildren",nzSize:"nzSize",nzId:"nzId"},exportAs:["nzSwitch"],features:[Sw([{provide:h1,useExisting:wo(()=>K),multi:true}]),ly],decls:8,vars:15,consts:[["switchElement",""],["nz-wave","","type","button",1,"ant-switch",3,"disabled","nzWaveExtraNode"],[1,"ant-switch-handle"],["nzType","loading",1,"ant-switch-loading-icon"],[1,"ant-switch-inner"],[1,"ant-click-animating-node"],[4,"nzStringTemplateOutlet"]],template:function(r,u){r&1&&(_i(0,"button",1,0)(2,"span",2),bD(3,bt,1,0,"nz-icon",3),Kc(),_i(4,"span",4),bD(5,It,1,1,"ng-container")(6,Nt,1,1,"ng-container"),Kc(),lh(7,"div",5),Kc()),r&2&&(Mh("ant-switch-checked",u.isChecked)("ant-switch-loading",u.nzLoading)("ant-switch-disabled",u.nzDisabled)("ant-switch-small",u.finalSize()==="small")("ant-switch-rtl",u.dir()==="rtl"),ch("disabled",u.nzDisabled)("nzWaveExtraNode",true),ah("id",u.nzId),gI(3),_D(u.nzLoading?3:-1),gI(2),_D(u.isChecked?5:6));},dependencies:[c8,y7,pt,Se$1,Tt,Ie],encapsulation:2})}})(),ht=(()=>{class i{static \u0275fac=function(o){return new(o||i)};static \u0275mod=YE({type:i});static \u0275inj=uu({imports:[J]})}return i})();var Y=(i,p)=>p.id,Dt=(i,p)=>p.key;function Ot(i,p){i&1&&(_i(0,"div",4),lh(1,"nz-alert",9),Rw(2,"transloco"),Kc()),i&2&&(gI(),ch("nzMessage",Ow(2,1,"settings.restartRequired.message")));}function Vt(i,p){i&1&&(_i(0,"p",5),vw(1),Rw(2,"transloco"),Kc()),i&2&&(gI(),Ph(Ow(2,1,"common.loading")));}function Pt(i,p){if(i&1&&(_i(0,"p",6),vw(1),Kc()),i&2){let e=VD();gI(),Ph(e.loadError());}}function At(i,p){if(i&1&&(_i(0,"nz-tag",11),vw(1),Rw(2,"transloco"),Kc()),i&2){let e=VD().$implicit;ah("data-testid",e.id+"-default-chip"),gI(),Ph(Ow(2,2,"settings.defaultAgent.label"));}}function Ft(i,p){if(i&1){let e=LD();_i(0,"tr")(1,"td",10)(2,"span"),vw(3),Kc(),bD(4,At,3,4,"nz-tag",11),Kc(),_i(5,"td")(6,"nz-tag"),vw(7),Rw(8,"transloco"),Kc()(),_i(9,"td"),vw(10),Kc(),_i(11,"td",12)(12,"button",13),gh("click",function(){let t=Pu(e).$implicit,r=VD(2);return Lu(r.openEdit(t))}),vw(13),Rw(14,"transloco"),Kc(),_i(15,"button",14),Rw(16,"transloco"),Rw(17,"transloco"),Rw(18,"transloco"),gh("nzOnConfirm",function(){let t=Pu(e).$implicit,r=VD(2);return Lu(r.removeInstance(t.id))}),vw(19),Rw(20,"transloco"),Kc()()();}if(i&2){let e=p.$implicit,o=VD(2);ah("data-testid","instance-"+e.id),gI(),ah("data-testid",e.id+"-name"),gI(2),Ph(e.displayName),gI(),_D(o.isDefaultAgent(e)?4:-1),gI(2),ah("data-testid",e.id+"-type"),gI(),Ph(Ow(8,15,o.typeLabelKey(e))),gI(2),ah("data-testid",e.id+"-expires"),gI(),nl(" ",e.expiresOn??""," "),gI(2),ah("data-testid",e.id+"-edit"),gI(),nl(" ",Ow(14,17,"settings.edit")," "),gI(2),ch("nzPopconfirmTitle",Ow(16,19,"settings.deleteConfirm"))("nzOkText",Ow(17,21,"settings.delete"))("nzCancelText",Ow(18,23,"common.cancel")),ah("data-testid",e.id+"-delete"),gI(4),nl(" ",Ow(20,25,"settings.delete")," ");}}function Bt(i,p){if(i&1&&(_i(0,"nz-table",7)(1,"thead")(2,"tr")(3,"th"),vw(4),Rw(5,"transloco"),Kc(),_i(6,"th"),vw(7),Rw(8,"transloco"),Kc(),_i(9,"th"),vw(10),Rw(11,"transloco"),Kc(),_i(12,"th"),vw(13),Rw(14,"transloco"),Kc()()(),_i(15,"tbody"),ND(16,Ft,21,27,"tr",null,Y),Kc()()),i&2){let e=VD();ch("nzData",e.instances())("nzFrontPagination",false)("nzShowPagination",false),gI(4),Ph(Ow(5,7,"settings.column.displayName")),gI(3),Ph(Ow(8,9,"settings.column.type")),gI(3),Ph(Ow(11,11,"settings.column.expiresOn")),gI(3),Ph(Ow(14,13,"settings.column.actions")),gI(3),xD(e.instances());}}function Rt(i,p){if(i&1&&(_i(0,"li"),vw(1),Kc()),i&2){let e=p.$implicit;gI(),Ph(e);}}function Lt(i,p){if(i&1&&(_i(0,"section",16)(1,"h3"),vw(2),Rw(3,"transloco"),Kc(),_i(4,"ul"),ND(5,Rt,2,1,"li",null,SD),Kc()()),i&2){let e=VD(2);gI(2),Ph(Ow(3,1,"settings.validation")),gI(3),xD(e.validationErrors());}}function Kt(i,p){if(i&1&&(_i(0,"p",17),vw(1),Kc()),i&2){let e=VD(2);gI(),Ph(e.secretSaveError());}}function qt(i,p){if(i&1&&(lh(0,"nz-option",24),Rw(1,"transloco")),i&2){let e=p.$implicit;ch("nzValue",e.id)("nzLabel",Ow(1,2,e.labelKey));}}function $t(i,p){if(i&1){let e=LD();_i(0,"label",18)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i(4,"input",32),gh("ngModelChange",function(t){let r=Pu(e).$implicit,u=VD(2);return Lu(u.setDraftConfig(r.key,t))}),Kc(),oE(),Kc();}if(i&2){let e=p.$implicit,o=VD(2);gI(2),Ph(Ow(3,3,e.labelKey)),gI(2),ch("ngModel",o.configValue(o.draft().config,e.key)),ah("data-testid","provider-config-"+e.key),sE();}}function jt(i,p){if(i&1){let e=LD();_i(0,"button",33),gh("click",function(){Pu(e);let t=VD(2);return Lu(t.fetchModels())}),vw(1),Rw(2,"transloco"),Kc();}if(i&2){let e=VD(2);ch("nzLoading",e.fetchingModels())("disabled",!e.canFetchModels()),gI(),nl(" ",Ow(2,3,"settings.model.fetch")," ");}}function Ut(i,p){if(i&1&&lh(0,"nz-option",24),i&2){let e=VD(3);ch("nzValue",e.configValue(e.draft().config,"model"))("nzLabel",e.configValue(e.draft().config,"model"));}}function Wt(i,p){if(i&1&&lh(0,"nz-option",24),i&2){let e=p.$implicit;ch("nzValue",e.id)("nzLabel",e.displayName);}}function Zt(i,p){if(i&1&&(_i(0,"p",35),vw(1),Kc()),i&2){let e=VD(3);gI(),Ph(e.modelsError());}}function Ht(i,p){if(i&1){let e=LD();_i(0,"div",18)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i(4,"nz-select",34),Rw(5,"transloco"),gh("ngModelChange",function(t){Pu(e);let r=VD(2);return Lu(r.setDraftConfig("model",t??""))}),bD(6,Ut,1,2,"nz-option",24),ND(7,Wt,1,2,"nz-option",24,Y),Kc(),oE(),bD(9,Zt,2,1,"p",35),_i(10,"p",22),vw(11),Rw(12,"transloco"),Kc()(),_i(13,"label",36)(14,"span"),vw(15),Rw(16,"transloco"),Kc(),_i(17,"nz-switch",37),gh("ngModelChange",function(t){Pu(e);let r=VD(2);return Lu(r.setDefaultAgentDraft(t))}),Kc(),oE(),Kc();}if(i&2){let e=VD(2);gI(2),Ph(Ow(3,8,"settings.model.label")),gI(2),ch("nzPlaceHolder",Ow(5,10,"settings.model.placeholder"))("ngModel",e.configValue(e.draft().config,"model")),sE(),gI(2),_D(e.selectedModelMissingFromList()?6:-1),gI(),xD(e.availableModels()),gI(2),_D(e.modelsError()?9:-1),gI(2),Ph(Ow(12,12,"settings.model.hint")),gI(4),Ph(Ow(16,14,"settings.defaultAgent.toggle")),gI(2),ch("ngModel",e.draft().defaultAgent),sE();}}function Qt(i,p){if(i&1){let e=LD();_i(0,"div",8)(1,"div",15)(2,"h2"),vw(3),Rw(4,"transloco"),Kc(),bD(5,Lt,7,3,"section",16),bD(6,Kt,2,1,"p",17),_i(7,"label",18)(8,"span"),vw(9),Rw(10,"transloco"),Kc(),_i(11,"input",19),gh("ngModelChange",function(t){Pu(e);let r=VD();return Lu(r.onDisplayNameChange(t))}),Kc(),oE(),Kc(),_i(12,"label",20)(13,"span"),vw(14),Rw(15,"transloco"),Kc(),_i(16,"input",21),gh("ngModelChange",function(t){Pu(e);let r=VD();return Lu(r.onIdChange(t))}),Kc(),oE(),_i(17,"p",22),vw(18),Rw(19,"transloco"),Kc()(),_i(20,"div",18)(21,"span"),vw(22),Rw(23,"transloco"),Kc(),_i(24,"nz-select",23),gh("ngModelChange",function(t){Pu(e);let r=VD();return Lu(r.onTypeChange(t))}),ND(25,qt,2,4,"nz-option",24,Y),Kc(),oE(),Kc(),ND(27,$t,5,5,"label",18,Dt),_i(29,"label",18)(30,"span"),vw(31),Rw(32,"transloco"),Kc(),_i(33,"div",25)(34,"input",26),Rw(35,"transloco"),gh("ngModelChange",function(t){Pu(e);let r=VD();return Lu(r.setSecretValue(t))}),Kc(),oE(),bD(36,jt,3,5,"button",27),Kc()(),bD(37,Ht,18,16),_i(38,"label",18)(39,"span"),vw(40),Rw(41,"transloco"),Kc(),_i(42,"input",28),gh("ngModelChange",function(t){Pu(e);let r=VD();return Lu(r.setExpiresOn(t))}),Kc(),oE(),_i(43,"p",22),vw(44),Rw(45,"transloco"),Kc()(),_i(46,"div",29)(47,"button",30),gh("click",function(){Pu(e);let t=VD();return Lu(t.closeModal())}),vw(48),Rw(49,"transloco"),Kc(),_i(50,"button",31),gh("click",function(){Pu(e);let t=VD();return Lu(t.saveModal())}),vw(51),Rw(52,"transloco"),Kc()()()();}if(i&2){let e=VD();gI(3),nl(" ",Ow(4,21,e.draft().originalId?"settings.editProvider":"settings.addProvider")," "),gI(2),_D(e.validationErrors().length>0?5:-1),gI(),_D(e.secretSaveError()?6:-1),gI(3),Ph(Ow(10,23,"settings.displayName")),gI(2),ch("ngModel",e.draft().displayName),sE(),gI(3),Ph(Ow(15,25,"settings.instanceId")),gI(2),ch("ngModel",e.draft().id),sE(),gI(2),Ph(Ow(19,27,"settings.instanceIdHint")),gI(4),Ph(Ow(23,29,"settings.type.label")),gI(2),ch("ngModel",e.draft().optionId),sE(),gI(),xD(e.typeOptions),gI(2),xD(e.configFields(e.draft().type)),gI(4),Ph(Ow(32,31,"settings.apiKey.label")),gI(3),ch("ngModel",e.draft().secretValue)("placeholder",Ow(35,33,e.draft().originalId?"settings.apiKey.placeholderEdit":"settings.apiKey.placeholderCreate")),sE(),gI(2),_D(e.draft().kind==="agent"?36:-1),gI(),_D(e.draft().kind==="agent"?37:-1),gI(3),Ph(Ow(41,35,"settings.expiresOn.label")),gI(2),ch("ngModel",e.draft().expiresOn),sE(),gI(2),Ph(Ow(45,37,"settings.expiresOn.hint")),gI(4),nl(" ",Ow(49,39,"common.cancel")," "),gI(2),ch("nzLoading",e.saving()),gI(),nl(" ",Ow(52,41,"common.save")," ");}}var Ui=(()=>{class i{constructor(){this.api=C($),this.providersApi=C($$1),this.message=C(yx),this.destroyRef=C(at),this.transloco=C(Ve),this.loaded=qo({providerInstances:[]}),this.status=qo([]),this.draft=qo(R()),this.loading=qo(true),this.saving=qo(false),this.loadError=qo(null),this.validationErrors=qo([]),this.secretSaveError=qo(null),this.restartRequired=qo(false),this.modalOpen=qo(false),this.availableModels=qo([]),this.fetchingModels=qo(false),this.modelsError=qo(null),this.instances=Hw(()=>this.loaded().providerInstances??[]),this.typeOptions=y,this.configFields=T,this.typeLabelKey=P,this.isAgent=cy,Ng({settings:this.api.getSettings(),status:this.api.getProviderStatus()}).pipe(ue(this.destroyRef)).subscribe({next:({settings:e,status:o})=>{this.applySettings(e,false),this.status.set(o),this.loading.set(false);},error:e=>{this.loading.set(false),this.loadError.set(this.errorMessage(e,this.transloco.translate("settings.loadFailed")));}});}configValue(e,o){let t=e[o];return typeof t=="string"?t:""}isDefaultAgent(e){return cy(e)&&this.loaded().defaultAgentInstanceId===e.id}selectedModelMissingFromList(){let e=this.configValue(this.draft().config,"model");return e?!this.availableModels().some(o=>o.id===e):false}canFetchModels(){let e=this.draft();return e.kind==="agent"&&(e.secretValue.trim().length>0||e.originalId!=null)}openCreate(){this.resetModal(R());}openEdit(e){this.resetModal(q(e,this.isDefaultAgent(e)));}closeModal(){this.modalOpen.set(false);}onDisplayNameChange(e){this.draft.update(o=>D(o,e,this.existingIds(o)));}onIdChange(e){this.draft.update(o=>N(o,e));}onTypeChange(e){this.availableModels.set([]),this.modelsError.set(null),this.draft.update(o=>{let t=w(o,e);return t.kind!=="agent"||o.kind==="agent"?t:s(r({},t),{defaultAgent:this.shouldDefaultNewAgent(o)})});}setDraftConfig(e,o){this.draft.update(t=>s(r({},t),{config:s(r({},t.config),{[e]:o})}));}setSecretValue(e){this.draft.update(o=>s(r({},o),{secretValue:e}));}setExpiresOn(e){this.draft.update(o=>s(r({},o),{expiresOn:e}));}setDefaultAgentDraft(e){this.draft.update(o=>s(r({},o),{defaultAgent:e}));}fetchModels(){let e=this.draft();if(e.kind!=="agent"||!this.canFetchModels())return;let o=e.secretValue.trim();this.fetchingModels.set(true),this.modelsError.set(null),this.providersApi.previewModels(o?{type:e.type,apiKey:o}:{type:e.type,instanceId:e.originalId}).pipe(ue(this.destroyRef)).subscribe({next:t=>{this.availableModels.set(t),this.fetchingModels.set(false);},error:t=>{this.fetchingModels.set(false),this.modelsError.set(this.errorMessage(t,this.transloco.translate("settings.model.fetchFailed")));}});}saveModal(){let e=this.draft();if(this.validationErrors.set([]),this.secretSaveError.set(null),!e.displayName.trim()){this.validationErrors.set([this.transloco.translate("settings.displayNameRequired")]);return}if(e.originalId==null&&!e.secretValue.trim()){this.validationErrors.set([this.transloco.translate("settings.apiKey.required")]);return}let o=Wm.safeParse(V(e));if(!o.success){this.validationErrors.set(_(o.error));return}this.saving.set(true);let t=o.data,r$1=t.kind==="agent"?{defaultAgent:e.defaultAgent}:{};(e.originalId==null?this.api.createProviderInstance(r(r({},t),r$1)):this.api.updateProviderInstance(e.originalId,r({displayName:t.displayName,config:t.config,secretKey:t.secretKey,expiresOn:t.expiresOn??null},r$1))).pipe(Ml(T=>{this.applySettings(T.settings,T.restartRequired);let P=e.secretValue.trim();return P?this.api.setSecret(t.secretKey,P).pipe(Se(()=>({kind:"ok"})),Xi(_t=>Dg({kind:"secret-failed",err:_t}))):Dg({kind:"ok"})}),ue(this.destroyRef)).subscribe({next:T=>{if(this.saving.set(false),T.kind==="secret-failed"){this.draft.update(P=>s(r({},P),{originalId:t.id,id:t.id,idAutoSync:false,secretKey:t.secretKey})),this.secretSaveError.set(this.errorMessage(T.err,this.transloco.translate("settings.apiKey.setFailedAfterSave"))),this.refreshStatus();return}this.modalOpen.set(false),this.refreshStatus();},error:T=>{this.saving.set(false),this.message.error(this.errorMessage(T,this.transloco.translate("settings.saveFailed")));}});}removeInstance(e){this.api.deleteProviderInstance(e).subscribe({next:o=>this.applySettings(o.settings,o.restartRequired),error:o=>{this.message.error(this.errorMessage(o,this.transloco.translate("settings.saveFailed")));}});}resetModal(e){this.validationErrors.set([]),this.secretSaveError.set(null),this.availableModels.set([]),this.modelsError.set(null),this.fetchingModels.set(false),this.draft.set(e),this.modalOpen.set(true);}shouldDefaultNewAgent(e){return e.originalId&&e.originalId===this.loaded().defaultAgentInstanceId?true:!this.loaded().defaultAgentInstanceId}existingIds(e){return this.instances().map(o=>o.id).filter(o=>o!==e.originalId)}applySettings(e,o){let t=e.providerInstances??[];this.loaded.set(r({providerInstances:t},e.defaultAgentInstanceId?{defaultAgentInstanceId:e.defaultAgentInstanceId}:{})),o&&this.restartRequired.set(true);}refreshStatus(){this.api.getProviderStatus().subscribe({next:e=>this.status.set(e),error:()=>{}});}errorMessage(e,o$1){return e instanceof o||e instanceof Error?e.message:o$1}static{this.\u0275fac=function(o){return new(o||i)};}static{this.\u0275cmp=QE({type:i,selectors:[["app-settings"]],decls:17,vars:12,consts:[["data-testid","settings-page",1,"settings"],[1,"header"],[1,"lede"],["nz-button","","nzType","primary","type","button","data-testid","add-provider",3,"click"],["data-testid","restart-required-banner"],["data-testid","loading"],["data-testid","load-error",1,"error"],["data-testid","provider-instances",3,"nzData","nzFrontPagination","nzShowPagination"],["data-testid","provider-modal",1,"modal-backdrop"],["nzType","warning","nzShowIcon","","nzBanner","",3,"nzMessage"],[1,"name-cell"],["nzColor","blue"],[1,"actions"],["nz-button","","nzType","link","type","button",3,"click"],["nz-button","","nzType","link","nzDanger","","type","button","nz-popconfirm","",3,"nzOnConfirm","nzPopconfirmTitle","nzOkText","nzCancelText"],["role","dialog",1,"modal-panel"],["data-testid","validation-errors",1,"errors"],["data-testid","secret-save-error",1,"error"],[1,"field"],["nz-input","","data-testid","provider-display-name",3,"ngModelChange","ngModel"],[1,"field","field-id"],["nz-input","","data-testid","provider-id",3,"ngModelChange","ngModel"],[1,"hint"],["data-testid","provider-type",3,"ngModelChange","ngModel"],[3,"nzValue","nzLabel"],[1,"api-key-row"],["nz-input","","type","password","autocomplete","off","data-testid","provider-api-key",3,"ngModelChange","ngModel","placeholder"],["nz-button","","type","button","data-testid","provider-fetch-models",3,"nzLoading","disabled"],["nz-input","","type","date","data-testid","provider-expires-on",3,"ngModelChange","ngModel"],[1,"modal-actions"],["nz-button","","type","button","data-testid","provider-cancel",3,"click"],["nz-button","","nzType","primary","type","button","data-testid","provider-save",3,"click","nzLoading"],["nz-input","",3,"ngModelChange","ngModel"],["nz-button","","type","button","data-testid","provider-fetch-models",3,"click","nzLoading","disabled"],["data-testid","provider-model","nzAllowClear","",3,"ngModelChange","nzPlaceHolder","ngModel"],["data-testid","provider-models-error",1,"error"],[1,"field","field-switch"],["data-testid","provider-default-agent",3,"ngModelChange","ngModel"]],template:function(o,t){o&1&&(_i(0,"main",0)(1,"header",1)(2,"div")(3,"h1"),vw(4),Rw(5,"transloco"),Kc(),_i(6,"p",2),vw(7),Rw(8,"transloco"),Kc()(),_i(9,"button",3),gh("click",function(){return t.openCreate()}),vw(10),Rw(11,"transloco"),Kc()(),bD(12,Ot,3,3,"div",4),bD(13,Vt,3,3,"p",5)(14,Pt,2,1,"p",6)(15,Bt,18,15,"nz-table",7),bD(16,Qt,53,43,"div",8),Kc()),o&2&&(gI(4),Ph(Ow(5,6,"settings.title")),gI(3),Ph(Ow(8,8,"settings.lede")),gI(3),nl(" ",Ow(11,10,"settings.addProvider")," "),gI(2),_D(t.restartRequired()?12:-1),gI(),_D(t.loading()?13:t.loadError()?14:15),gI(3),_D(t.modalOpen()?16:-1));},dependencies:[Mi,n8,S4,J6,k3,Gn,un,dd,zc,t7,y7,ai,z,_n,Cn,Xb,V5,D5,ht,J,pc,as,dc,Kl,cc,Ji,ls,W,I,Kt$1],styles:[".settings[_ngcontent-%COMP%]{max-width:72rem;margin:0 auto;padding:1.25rem 1.5rem 3rem;display:flex;flex-direction:column;gap:1rem}.header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.lede[_ngcontent-%COMP%]{margin:.25rem 0 0;color:#57534e}.field[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.35rem;margin:.5rem 0}.field[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{font-size:.85rem;color:#57534e}.field-id[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{font-family:ui-monospace,Consolas,monospace;font-size:.85rem;color:#57534e}.hint[_ngcontent-%COMP%]{margin:0;font-size:.8rem;color:#78716c}.errors[_ngcontent-%COMP%]{border:1px solid #fecdd3;background:#fff1f2;padding:.75rem 1rem}.errors[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0 0 .35rem;font-size:1rem}.error[_ngcontent-%COMP%]{color:#9f1239}.actions[_ngcontent-%COMP%]{white-space:nowrap}.name-cell[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.api-key-row[_ngcontent-%COMP%]{display:flex;gap:.5rem;align-items:center}.api-key-row[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{flex:1}.field-switch[_ngcontent-%COMP%]{flex-direction:row;align-items:center;justify-content:space-between}.modal-backdrop[_ngcontent-%COMP%]{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:4rem 1rem 2rem;background:#1c191759}.modal-panel[_ngcontent-%COMP%]{width:min(32rem,100%);max-height:calc(100vh - 6rem);overflow:auto;background:#fff;border-radius:.5rem;padding:1.25rem 1.5rem 1.5rem;box-shadow:0 10px 30px #1c19172e}.modal-panel[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0 0 .75rem;font-size:1.15rem}.modal-actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}"]});}}return i})();export{Ui as ProvidersManageComponent,Ui as SettingsComponent};
1
+ import {$ as $$1,R,y,T,P,q,D,N,w,V,_}from'./chunk-h3oyPsBC.js';import {T as Tx,f as fy,B as Bm}from'./chunk-dUlsh7QS.js';import {a as ai,z}from'./chunk-DlsGU_Dk.js';import {_ as _n,C as Cn}from'./chunk-DinAvqzQ.js';import {C,aj as $,b as at,V as Ve,q as qo,H as Hw,a9 as Ng,u as ue,s,r,ak as Ml,al as Se,aa as Xi,ab as Dg,o,Q as QE,M as Mi,n as n8,am as S4,J as J6,k as k3,d as dd,z as zc,c as t7,Z as y7,X as Xb,e as V5,D as D5,K as Kt$1,f as _i,v as vw,R as Rw,g as Kc,h as gh,m as bD,p as gI,P as Ph,O as Ow,w as nl,B as _D,an as YE,ao as uu,ap as pT,aq as kt$1,ar as _r,as as oe,at as z0,au as a3,av as hT,aw as Le,ax as m1,ay as St,az as c8,aA as pt,aB as Se$1,aC as Tt,aD as Ie,aE as ly,aF as Z0,l as lh,a4 as Mh,x as ch,a5 as ah,aG as Sw,aH as h1,aI as wo,aJ as Ih,aK as qD,aL as WD,E as VD,N as ND,A as xD,F as LD,j as oE,y as sE,aM as ut,aN as nh,S as SD,aO as el,aP as tl,G as Pu,I as Lu}from'./main-HV5WDK2F.js';import {G as Gn,u as un}from'./chunk-TNH96m0D.js';import {W,I}from'./chunk-Ct30cLzT.js';import {p as pc,a as as,d as dc,K as Kl,c as cc,J as Ji,l as ls}from'./chunk-BGEuPXoV.js';import'./chunk-C2eCmH-q.js';var yt=["switchElement"];function bt(i,p){i&1&&lh(0,"nz-icon",3);}function Et(i,p){if(i&1&&(el(0),vw(1),tl()),i&2){let e=VD(2);gI(),Ph(e.nzCheckedChildren);}}function It(i,p){if(i&1&&nh(0,Et,2,1,"ng-container",6),i&2){let e=VD();ch("nzStringTemplateOutlet",e.nzCheckedChildren);}}function wt(i,p){if(i&1&&(el(0),vw(1),tl()),i&2){let e=VD(2);gI(),Ph(e.nzUnCheckedChildren);}}function Nt(i,p){if(i&1&&nh(0,wt,2,1,"ng-container",6),i&2){let e=VD();ch("nzStringTemplateOutlet",e.nzUnCheckedChildren);}}var kt="switch",J=(()=>{let i,p=[],e=[];return class K{static{let t=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;i=[ut()],pT(null,null,i,{kind:"field",name:"nzSize",static:false,private:false,access:{has:r=>"nzSize"in r,get:r=>r.nzSize,set:(r,u)=>{r.nzSize=u;}},metadata:t},p,e),t&&Object.defineProperty(this,Symbol.metadata,{enumerable:true,configurable:true,writable:true,value:t});}_nzModuleName=kt;nzConfigService=C(kt$1);el=C(_r).nativeElement;ngZone=C(oe);cdr=C(z0);focusMonitor=C(a3);destroyRef=C(at);isChecked=false;onChange=()=>{};onTouched=()=>{};switchElement;nzLoading=false;nzDisabled=false;nzControl=false;nzCheckedChildren=null;nzUnCheckedChildren=null;nzSize=hT(this,p,"default");nzId=(hT(this,e),null);dir=C(Le).valueSignal;isNzDisableFirstChange=true;size=qo(this.nzSize);formSize=C(m1,{optional:true});finalSize=Hw(()=>this.formSize?.()||this.size());updateValue(t){this.isChecked!==t&&(this.isChecked=t,this.onChange(this.isChecked));}focus(){this.focusMonitor.focusVia(this.switchElement.nativeElement,"keyboard");}blur(){this.switchElement.nativeElement.blur();}constructor(){this.destroyRef.onDestroy(()=>{this.focusMonitor.stopMonitoring(this.switchElement.nativeElement);});}ngOnChanges(t){let{nzSize:r}=t;r&&this.size.set(r.currentValue);}ngOnInit(){St(this.el,"click").pipe(ue(this.destroyRef)).subscribe(t=>{t.preventDefault(),!(this.nzControl||this.nzDisabled||this.nzLoading)&&this.ngZone.run(()=>{this.updateValue(!this.isChecked),this.cdr.markForCheck();});}),St(this.switchElement.nativeElement,"keydown").pipe(ue(this.destroyRef)).subscribe(t=>{if(this.nzControl||this.nzDisabled||this.nzLoading)return;let{keyCode:r}=t;r!==37&&r!==39&&r!==32&&r!==13||(t.preventDefault(),this.ngZone.run(()=>{r===37?this.updateValue(false):r===39?this.updateValue(true):(r===32||r===13)&&this.updateValue(!this.isChecked),this.cdr.markForCheck();}));});}ngAfterViewInit(){this.focusMonitor.monitor(this.switchElement.nativeElement,true).pipe(ue(this.destroyRef)).subscribe(t=>{t||Promise.resolve().then(()=>this.onTouched());});}writeValue(t){this.isChecked=t,this.cdr.markForCheck();}registerOnChange(t){this.onChange=t;}registerOnTouched(t){this.onTouched=t;}setDisabledState(t){this.nzDisabled=this.isNzDisableFirstChange&&this.nzDisabled||t,this.isNzDisableFirstChange=false,this.cdr.markForCheck();}static \u0275fac=function(r){return new(r||K)};static \u0275cmp=QE({type:K,selectors:[["nz-switch"]],viewQuery:function(r,u){if(r&1&&Ih(yt,7),r&2){let q;qD(q=WD())&&(u.switchElement=q.first);}},inputs:{nzLoading:[2,"nzLoading","nzLoading",Z0],nzDisabled:[2,"nzDisabled","nzDisabled",Z0],nzControl:[2,"nzControl","nzControl",Z0],nzCheckedChildren:"nzCheckedChildren",nzUnCheckedChildren:"nzUnCheckedChildren",nzSize:"nzSize",nzId:"nzId"},exportAs:["nzSwitch"],features:[Sw([{provide:h1,useExisting:wo(()=>K),multi:true}]),ly],decls:8,vars:15,consts:[["switchElement",""],["nz-wave","","type","button",1,"ant-switch",3,"disabled","nzWaveExtraNode"],[1,"ant-switch-handle"],["nzType","loading",1,"ant-switch-loading-icon"],[1,"ant-switch-inner"],[1,"ant-click-animating-node"],[4,"nzStringTemplateOutlet"]],template:function(r,u){r&1&&(_i(0,"button",1,0)(2,"span",2),bD(3,bt,1,0,"nz-icon",3),Kc(),_i(4,"span",4),bD(5,It,1,1,"ng-container")(6,Nt,1,1,"ng-container"),Kc(),lh(7,"div",5),Kc()),r&2&&(Mh("ant-switch-checked",u.isChecked)("ant-switch-loading",u.nzLoading)("ant-switch-disabled",u.nzDisabled)("ant-switch-small",u.finalSize()==="small")("ant-switch-rtl",u.dir()==="rtl"),ch("disabled",u.nzDisabled)("nzWaveExtraNode",true),ah("id",u.nzId),gI(3),_D(u.nzLoading?3:-1),gI(2),_D(u.isChecked?5:6));},dependencies:[c8,y7,pt,Se$1,Tt,Ie],encapsulation:2})}})(),ht=(()=>{class i{static \u0275fac=function(o){return new(o||i)};static \u0275mod=YE({type:i});static \u0275inj=uu({imports:[J]})}return i})();var Y=(i,p)=>p.id,Dt=(i,p)=>p.key;function Ot(i,p){i&1&&(_i(0,"div",4),lh(1,"nz-alert",9),Rw(2,"transloco"),Kc()),i&2&&(gI(),ch("nzMessage",Ow(2,1,"settings.restartRequired.message")));}function Vt(i,p){i&1&&(_i(0,"p",5),vw(1),Rw(2,"transloco"),Kc()),i&2&&(gI(),Ph(Ow(2,1,"common.loading")));}function Pt(i,p){if(i&1&&(_i(0,"p",6),vw(1),Kc()),i&2){let e=VD();gI(),Ph(e.loadError());}}function At(i,p){if(i&1&&(_i(0,"nz-tag",11),vw(1),Rw(2,"transloco"),Kc()),i&2){let e=VD().$implicit;ah("data-testid",e.id+"-default-chip"),gI(),Ph(Ow(2,2,"settings.defaultAgent.label"));}}function Ft(i,p){if(i&1){let e=LD();_i(0,"tr")(1,"td",10)(2,"span"),vw(3),Kc(),bD(4,At,3,4,"nz-tag",11),Kc(),_i(5,"td")(6,"nz-tag"),vw(7),Rw(8,"transloco"),Kc()(),_i(9,"td"),vw(10),Kc(),_i(11,"td",12)(12,"button",13),gh("click",function(){let t=Pu(e).$implicit,r=VD(2);return Lu(r.openEdit(t))}),vw(13),Rw(14,"transloco"),Kc(),_i(15,"button",14),Rw(16,"transloco"),Rw(17,"transloco"),Rw(18,"transloco"),gh("nzOnConfirm",function(){let t=Pu(e).$implicit,r=VD(2);return Lu(r.removeInstance(t.id))}),vw(19),Rw(20,"transloco"),Kc()()();}if(i&2){let e=p.$implicit,o=VD(2);ah("data-testid","instance-"+e.id),gI(),ah("data-testid",e.id+"-name"),gI(2),Ph(e.displayName),gI(),_D(o.isDefaultAgent(e)?4:-1),gI(2),ah("data-testid",e.id+"-type"),gI(),Ph(Ow(8,15,o.typeLabelKey(e))),gI(2),ah("data-testid",e.id+"-expires"),gI(),nl(" ",e.expiresOn??""," "),gI(2),ah("data-testid",e.id+"-edit"),gI(),nl(" ",Ow(14,17,"settings.edit")," "),gI(2),ch("nzPopconfirmTitle",Ow(16,19,"settings.deleteConfirm"))("nzOkText",Ow(17,21,"settings.delete"))("nzCancelText",Ow(18,23,"common.cancel")),ah("data-testid",e.id+"-delete"),gI(4),nl(" ",Ow(20,25,"settings.delete")," ");}}function Bt(i,p){if(i&1&&(_i(0,"nz-table",7)(1,"thead")(2,"tr")(3,"th"),vw(4),Rw(5,"transloco"),Kc(),_i(6,"th"),vw(7),Rw(8,"transloco"),Kc(),_i(9,"th"),vw(10),Rw(11,"transloco"),Kc(),_i(12,"th"),vw(13),Rw(14,"transloco"),Kc()()(),_i(15,"tbody"),ND(16,Ft,21,27,"tr",null,Y),Kc()()),i&2){let e=VD();ch("nzData",e.instances())("nzFrontPagination",false)("nzShowPagination",false),gI(4),Ph(Ow(5,7,"settings.column.displayName")),gI(3),Ph(Ow(8,9,"settings.column.type")),gI(3),Ph(Ow(11,11,"settings.column.expiresOn")),gI(3),Ph(Ow(14,13,"settings.column.actions")),gI(3),xD(e.instances());}}function Rt(i,p){if(i&1&&(_i(0,"li"),vw(1),Kc()),i&2){let e=p.$implicit;gI(),Ph(e);}}function Lt(i,p){if(i&1&&(_i(0,"section",16)(1,"h3"),vw(2),Rw(3,"transloco"),Kc(),_i(4,"ul"),ND(5,Rt,2,1,"li",null,SD),Kc()()),i&2){let e=VD(2);gI(2),Ph(Ow(3,1,"settings.validation")),gI(3),xD(e.validationErrors());}}function Kt(i,p){if(i&1&&(_i(0,"p",17),vw(1),Kc()),i&2){let e=VD(2);gI(),Ph(e.secretSaveError());}}function qt(i,p){if(i&1&&(lh(0,"nz-option",24),Rw(1,"transloco")),i&2){let e=p.$implicit;ch("nzValue",e.id)("nzLabel",Ow(1,2,e.labelKey));}}function $t(i,p){if(i&1){let e=LD();_i(0,"label",18)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i(4,"input",32),gh("ngModelChange",function(t){let r=Pu(e).$implicit,u=VD(2);return Lu(u.setDraftConfig(r.key,t))}),Kc(),oE(),Kc();}if(i&2){let e=p.$implicit,o=VD(2);gI(2),Ph(Ow(3,3,e.labelKey)),gI(2),ch("ngModel",o.configValue(o.draft().config,e.key)),ah("data-testid","provider-config-"+e.key),sE();}}function jt(i,p){if(i&1){let e=LD();_i(0,"button",33),gh("click",function(){Pu(e);let t=VD(2);return Lu(t.fetchModels())}),vw(1),Rw(2,"transloco"),Kc();}if(i&2){let e=VD(2);ch("nzLoading",e.fetchingModels())("disabled",!e.canFetchModels()),gI(),nl(" ",Ow(2,3,"settings.model.fetch")," ");}}function Ut(i,p){if(i&1&&lh(0,"nz-option",24),i&2){let e=VD(3);ch("nzValue",e.configValue(e.draft().config,"model"))("nzLabel",e.configValue(e.draft().config,"model"));}}function Wt(i,p){if(i&1&&lh(0,"nz-option",24),i&2){let e=p.$implicit;ch("nzValue",e.id)("nzLabel",e.displayName);}}function Zt(i,p){if(i&1&&(_i(0,"p",35),vw(1),Kc()),i&2){let e=VD(3);gI(),Ph(e.modelsError());}}function Ht(i,p){if(i&1){let e=LD();_i(0,"div",18)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i(4,"nz-select",34),Rw(5,"transloco"),gh("ngModelChange",function(t){Pu(e);let r=VD(2);return Lu(r.setDraftConfig("model",t??""))}),bD(6,Ut,1,2,"nz-option",24),ND(7,Wt,1,2,"nz-option",24,Y),Kc(),oE(),bD(9,Zt,2,1,"p",35),_i(10,"p",22),vw(11),Rw(12,"transloco"),Kc()(),_i(13,"label",36)(14,"span"),vw(15),Rw(16,"transloco"),Kc(),_i(17,"nz-switch",37),gh("ngModelChange",function(t){Pu(e);let r=VD(2);return Lu(r.setDefaultAgentDraft(t))}),Kc(),oE(),Kc();}if(i&2){let e=VD(2);gI(2),Ph(Ow(3,8,"settings.model.label")),gI(2),ch("nzPlaceHolder",Ow(5,10,"settings.model.placeholder"))("ngModel",e.configValue(e.draft().config,"model")),sE(),gI(2),_D(e.selectedModelMissingFromList()?6:-1),gI(),xD(e.availableModels()),gI(2),_D(e.modelsError()?9:-1),gI(2),Ph(Ow(12,12,"settings.model.hint")),gI(4),Ph(Ow(16,14,"settings.defaultAgent.toggle")),gI(2),ch("ngModel",e.draft().defaultAgent),sE();}}function Qt(i,p){if(i&1){let e=LD();_i(0,"div",8)(1,"div",15)(2,"h2"),vw(3),Rw(4,"transloco"),Kc(),bD(5,Lt,7,3,"section",16),bD(6,Kt,2,1,"p",17),_i(7,"label",18)(8,"span"),vw(9),Rw(10,"transloco"),Kc(),_i(11,"input",19),gh("ngModelChange",function(t){Pu(e);let r=VD();return Lu(r.onDisplayNameChange(t))}),Kc(),oE(),Kc(),_i(12,"label",20)(13,"span"),vw(14),Rw(15,"transloco"),Kc(),_i(16,"input",21),gh("ngModelChange",function(t){Pu(e);let r=VD();return Lu(r.onIdChange(t))}),Kc(),oE(),_i(17,"p",22),vw(18),Rw(19,"transloco"),Kc()(),_i(20,"div",18)(21,"span"),vw(22),Rw(23,"transloco"),Kc(),_i(24,"nz-select",23),gh("ngModelChange",function(t){Pu(e);let r=VD();return Lu(r.onTypeChange(t))}),ND(25,qt,2,4,"nz-option",24,Y),Kc(),oE(),Kc(),ND(27,$t,5,5,"label",18,Dt),_i(29,"label",18)(30,"span"),vw(31),Rw(32,"transloco"),Kc(),_i(33,"div",25)(34,"input",26),Rw(35,"transloco"),gh("ngModelChange",function(t){Pu(e);let r=VD();return Lu(r.setSecretValue(t))}),Kc(),oE(),bD(36,jt,3,5,"button",27),Kc()(),bD(37,Ht,18,16),_i(38,"label",18)(39,"span"),vw(40),Rw(41,"transloco"),Kc(),_i(42,"input",28),gh("ngModelChange",function(t){Pu(e);let r=VD();return Lu(r.setExpiresOn(t))}),Kc(),oE(),_i(43,"p",22),vw(44),Rw(45,"transloco"),Kc()(),_i(46,"div",29)(47,"button",30),gh("click",function(){Pu(e);let t=VD();return Lu(t.closeModal())}),vw(48),Rw(49,"transloco"),Kc(),_i(50,"button",31),gh("click",function(){Pu(e);let t=VD();return Lu(t.saveModal())}),vw(51),Rw(52,"transloco"),Kc()()()();}if(i&2){let e=VD();gI(3),nl(" ",Ow(4,21,e.draft().originalId?"settings.editProvider":"settings.addProvider")," "),gI(2),_D(e.validationErrors().length>0?5:-1),gI(),_D(e.secretSaveError()?6:-1),gI(3),Ph(Ow(10,23,"settings.displayName")),gI(2),ch("ngModel",e.draft().displayName),sE(),gI(3),Ph(Ow(15,25,"settings.instanceId")),gI(2),ch("ngModel",e.draft().id),sE(),gI(2),Ph(Ow(19,27,"settings.instanceIdHint")),gI(4),Ph(Ow(23,29,"settings.type.label")),gI(2),ch("ngModel",e.draft().optionId),sE(),gI(),xD(e.typeOptions),gI(2),xD(e.configFields(e.draft().type)),gI(4),Ph(Ow(32,31,"settings.apiKey.label")),gI(3),ch("ngModel",e.draft().secretValue)("placeholder",Ow(35,33,e.draft().originalId?"settings.apiKey.placeholderEdit":"settings.apiKey.placeholderCreate")),sE(),gI(2),_D(e.draft().kind==="agent"?36:-1),gI(),_D(e.draft().kind==="agent"?37:-1),gI(3),Ph(Ow(41,35,"settings.expiresOn.label")),gI(2),ch("ngModel",e.draft().expiresOn),sE(),gI(2),Ph(Ow(45,37,"settings.expiresOn.hint")),gI(4),nl(" ",Ow(49,39,"common.cancel")," "),gI(2),ch("nzLoading",e.saving()),gI(),nl(" ",Ow(52,41,"common.save")," ");}}var Ui=(()=>{class i{constructor(){this.api=C($),this.providersApi=C($$1),this.message=C(Tx),this.destroyRef=C(at),this.transloco=C(Ve),this.loaded=qo({providerInstances:[]}),this.status=qo([]),this.draft=qo(R()),this.loading=qo(true),this.saving=qo(false),this.loadError=qo(null),this.validationErrors=qo([]),this.secretSaveError=qo(null),this.restartRequired=qo(false),this.modalOpen=qo(false),this.availableModels=qo([]),this.fetchingModels=qo(false),this.modelsError=qo(null),this.instances=Hw(()=>this.loaded().providerInstances??[]),this.typeOptions=y,this.configFields=T,this.typeLabelKey=P,this.isAgent=fy,Ng({settings:this.api.getSettings(),status:this.api.getProviderStatus()}).pipe(ue(this.destroyRef)).subscribe({next:({settings:e,status:o})=>{this.applySettings(e,false),this.status.set(o),this.loading.set(false);},error:e=>{this.loading.set(false),this.loadError.set(this.errorMessage(e,this.transloco.translate("settings.loadFailed")));}});}configValue(e,o){let t=e[o];return typeof t=="string"?t:""}isDefaultAgent(e){return fy(e)&&this.loaded().defaultAgentInstanceId===e.id}selectedModelMissingFromList(){let e=this.configValue(this.draft().config,"model");return e?!this.availableModels().some(o=>o.id===e):false}canFetchModels(){let e=this.draft();return e.kind==="agent"&&(e.secretValue.trim().length>0||e.originalId!=null)}openCreate(){this.resetModal(R());}openEdit(e){this.resetModal(q(e,this.isDefaultAgent(e)));}closeModal(){this.modalOpen.set(false);}onDisplayNameChange(e){this.draft.update(o=>D(o,e,this.existingIds(o)));}onIdChange(e){this.draft.update(o=>N(o,e));}onTypeChange(e){this.availableModels.set([]),this.modelsError.set(null),this.draft.update(o=>{let t=w(o,e);return t.kind!=="agent"||o.kind==="agent"?t:s(r({},t),{defaultAgent:this.shouldDefaultNewAgent(o)})});}setDraftConfig(e,o){this.draft.update(t=>s(r({},t),{config:s(r({},t.config),{[e]:o})}));}setSecretValue(e){this.draft.update(o=>s(r({},o),{secretValue:e}));}setExpiresOn(e){this.draft.update(o=>s(r({},o),{expiresOn:e}));}setDefaultAgentDraft(e){this.draft.update(o=>s(r({},o),{defaultAgent:e}));}fetchModels(){let e=this.draft();if(e.kind!=="agent"||!this.canFetchModels())return;let o=e.secretValue.trim();this.fetchingModels.set(true),this.modelsError.set(null),this.providersApi.previewModels(o?{type:e.type,apiKey:o}:{type:e.type,instanceId:e.originalId}).pipe(ue(this.destroyRef)).subscribe({next:t=>{this.availableModels.set(t),this.fetchingModels.set(false);},error:t=>{this.fetchingModels.set(false),this.modelsError.set(this.errorMessage(t,this.transloco.translate("settings.model.fetchFailed")));}});}saveModal(){let e=this.draft();if(this.validationErrors.set([]),this.secretSaveError.set(null),!e.displayName.trim()){this.validationErrors.set([this.transloco.translate("settings.displayNameRequired")]);return}if(e.originalId==null&&!e.secretValue.trim()){this.validationErrors.set([this.transloco.translate("settings.apiKey.required")]);return}let o=Bm.safeParse(V(e));if(!o.success){this.validationErrors.set(_(o.error));return}this.saving.set(true);let t=o.data,r$1=t.kind==="agent"?{defaultAgent:e.defaultAgent}:{};(e.originalId==null?this.api.createProviderInstance(r(r({},t),r$1)):this.api.updateProviderInstance(e.originalId,r({displayName:t.displayName,config:t.config,secretKey:t.secretKey,expiresOn:t.expiresOn??null},r$1))).pipe(Ml(T=>{this.applySettings(T.settings,T.restartRequired);let P=e.secretValue.trim();return P?this.api.setSecret(t.secretKey,P).pipe(Se(()=>({kind:"ok"})),Xi(_t=>Dg({kind:"secret-failed",err:_t}))):Dg({kind:"ok"})}),ue(this.destroyRef)).subscribe({next:T=>{if(this.saving.set(false),T.kind==="secret-failed"){this.draft.update(P=>s(r({},P),{originalId:t.id,id:t.id,idAutoSync:false,secretKey:t.secretKey})),this.secretSaveError.set(this.errorMessage(T.err,this.transloco.translate("settings.apiKey.setFailedAfterSave"))),this.refreshStatus();return}this.modalOpen.set(false),this.refreshStatus();},error:T=>{this.saving.set(false),this.message.error(this.errorMessage(T,this.transloco.translate("settings.saveFailed")));}});}removeInstance(e){this.api.deleteProviderInstance(e).subscribe({next:o=>this.applySettings(o.settings,o.restartRequired),error:o=>{this.message.error(this.errorMessage(o,this.transloco.translate("settings.saveFailed")));}});}resetModal(e){this.validationErrors.set([]),this.secretSaveError.set(null),this.availableModels.set([]),this.modelsError.set(null),this.fetchingModels.set(false),this.draft.set(e),this.modalOpen.set(true);}shouldDefaultNewAgent(e){return e.originalId&&e.originalId===this.loaded().defaultAgentInstanceId?true:!this.loaded().defaultAgentInstanceId}existingIds(e){return this.instances().map(o=>o.id).filter(o=>o!==e.originalId)}applySettings(e,o){let t=e.providerInstances??[];this.loaded.set(r({providerInstances:t},e.defaultAgentInstanceId?{defaultAgentInstanceId:e.defaultAgentInstanceId}:{})),o&&this.restartRequired.set(true);}refreshStatus(){this.api.getProviderStatus().subscribe({next:e=>this.status.set(e),error:()=>{}});}errorMessage(e,o$1){return e instanceof o||e instanceof Error?e.message:o$1}static{this.\u0275fac=function(o){return new(o||i)};}static{this.\u0275cmp=QE({type:i,selectors:[["app-settings"]],decls:17,vars:12,consts:[["data-testid","settings-page",1,"settings"],[1,"header"],[1,"lede"],["nz-button","","nzType","primary","type","button","data-testid","add-provider",3,"click"],["data-testid","restart-required-banner"],["data-testid","loading"],["data-testid","load-error",1,"error"],["data-testid","provider-instances",3,"nzData","nzFrontPagination","nzShowPagination"],["data-testid","provider-modal",1,"modal-backdrop"],["nzType","warning","nzShowIcon","","nzBanner","",3,"nzMessage"],[1,"name-cell"],["nzColor","blue"],[1,"actions"],["nz-button","","nzType","link","type","button",3,"click"],["nz-button","","nzType","link","nzDanger","","type","button","nz-popconfirm","",3,"nzOnConfirm","nzPopconfirmTitle","nzOkText","nzCancelText"],["role","dialog",1,"modal-panel"],["data-testid","validation-errors",1,"errors"],["data-testid","secret-save-error",1,"error"],[1,"field"],["nz-input","","data-testid","provider-display-name",3,"ngModelChange","ngModel"],[1,"field","field-id"],["nz-input","","data-testid","provider-id",3,"ngModelChange","ngModel"],[1,"hint"],["data-testid","provider-type",3,"ngModelChange","ngModel"],[3,"nzValue","nzLabel"],[1,"api-key-row"],["nz-input","","type","password","autocomplete","off","data-testid","provider-api-key",3,"ngModelChange","ngModel","placeholder"],["nz-button","","type","button","data-testid","provider-fetch-models",3,"nzLoading","disabled"],["nz-input","","type","date","data-testid","provider-expires-on",3,"ngModelChange","ngModel"],[1,"modal-actions"],["nz-button","","type","button","data-testid","provider-cancel",3,"click"],["nz-button","","nzType","primary","type","button","data-testid","provider-save",3,"click","nzLoading"],["nz-input","",3,"ngModelChange","ngModel"],["nz-button","","type","button","data-testid","provider-fetch-models",3,"click","nzLoading","disabled"],["data-testid","provider-model","nzAllowClear","",3,"ngModelChange","nzPlaceHolder","ngModel"],["data-testid","provider-models-error",1,"error"],[1,"field","field-switch"],["data-testid","provider-default-agent",3,"ngModelChange","ngModel"]],template:function(o,t){o&1&&(_i(0,"main",0)(1,"header",1)(2,"div")(3,"h1"),vw(4),Rw(5,"transloco"),Kc(),_i(6,"p",2),vw(7),Rw(8,"transloco"),Kc()(),_i(9,"button",3),gh("click",function(){return t.openCreate()}),vw(10),Rw(11,"transloco"),Kc()(),bD(12,Ot,3,3,"div",4),bD(13,Vt,3,3,"p",5)(14,Pt,2,1,"p",6)(15,Bt,18,15,"nz-table",7),bD(16,Qt,53,43,"div",8),Kc()),o&2&&(gI(4),Ph(Ow(5,6,"settings.title")),gI(3),Ph(Ow(8,8,"settings.lede")),gI(3),nl(" ",Ow(11,10,"settings.addProvider")," "),gI(2),_D(t.restartRequired()?12:-1),gI(),_D(t.loading()?13:t.loadError()?14:15),gI(3),_D(t.modalOpen()?16:-1));},dependencies:[Mi,n8,S4,J6,k3,Gn,un,dd,zc,t7,y7,ai,z,_n,Cn,Xb,V5,D5,ht,J,pc,as,dc,Kl,cc,Ji,ls,W,I,Kt$1],styles:[".settings[_ngcontent-%COMP%]{max-width:72rem;margin:0 auto;padding:1.25rem 1.5rem 3rem;display:flex;flex-direction:column;gap:1rem}.header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.lede[_ngcontent-%COMP%]{margin:.25rem 0 0;color:#57534e}.field[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.35rem;margin:.5rem 0}.field[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{font-size:.85rem;color:#57534e}.field-id[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{font-family:ui-monospace,Consolas,monospace;font-size:.85rem;color:#57534e}.hint[_ngcontent-%COMP%]{margin:0;font-size:.8rem;color:#78716c}.errors[_ngcontent-%COMP%]{border:1px solid #fecdd3;background:#fff1f2;padding:.75rem 1rem}.errors[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0 0 .35rem;font-size:1rem}.error[_ngcontent-%COMP%]{color:#9f1239}.actions[_ngcontent-%COMP%]{white-space:nowrap}.name-cell[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.api-key-row[_ngcontent-%COMP%]{display:flex;gap:.5rem;align-items:center}.api-key-row[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{flex:1}.field-switch[_ngcontent-%COMP%]{flex-direction:row;align-items:center;justify-content:space-between}.modal-backdrop[_ngcontent-%COMP%]{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:4rem 1rem 2rem;background:#1c191759}.modal-panel[_ngcontent-%COMP%]{width:min(32rem,100%);max-height:calc(100vh - 6rem);overflow:auto;background:#fff;border-radius:.5rem;padding:1.25rem 1.5rem 1.5rem;box-shadow:0 10px 30px #1c19172e}.modal-panel[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0 0 .75rem;font-size:1.15rem}.modal-actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}"]});}}return i})();export{Ui as ProvidersManageComponent,Ui as SettingsComponent};
@@ -1 +1 @@
1
- import {an as YE,ao as uu,bo as P1,ap as pT,C,at as z0,aw as Le$1,av as hT,bp as Vt,Q as QE,aC as Tt,aD as Ie$1,b8 as es,aF as Z0,b9 as BD,m as bD,f as _i,g as Kc,B as _D,p as gI,bq as sw,a4 as Mh,br as vh,aK as qD,aL as WD,aM as ut,bs as l9,r,aE as ly,E as VD,aN as nh,x as ch,l as lh,a6 as Nw,bm as $D,N as ND,a7 as MD,A as xD,bt as XE,bu as uh,ag as _h,aO as el,v as vw,aP as tl,P as Ph,bv as rh,aJ as Ih,bw as Er,S as SD}from'./main-MNK6ZYDO.js';var Ce=["*"];function fe(e,a){if(e&1&&(_i(0,"div",0),lh(1,"nz-skeleton-element",4),Kc()),e&2){let t=VD(2);gI(),ch("nzSize",t.avatar.size||"default")("nzShape",t.avatar.shape||"circle");}}function _e(e,a){if(e&1&&lh(0,"h3",5),e&2){let t=VD(2);_h("width",t.toCSSUnit(t.title.width));}}function ve(e,a){if(e&1&&lh(0,"li"),e&2){let t=a.$index,n=VD(3);_h("width",n.toCSSUnit(n.widthList[t]));}}function ge(e,a){if(e&1&&(_i(0,"ul",3),ND(1,ve,1,2,"li",6,SD),Kc()),e&2){let t=VD(2);gI(),xD(t.rowsList);}}function he(e,a){if(e&1&&(bD(0,fe,2,2,"div",0),_i(1,"div",1),bD(2,_e,1,2,"h3",2),bD(3,ge,3,0,"ul",3),Kc()),e&2){let t=VD();_D(t.nzAvatar?0:-1),gI(2),_D(t.nzTitle?2:-1),gI(),_D(t.nzParagraph?3:-1);}}function Se(e,a){e&1&&$D(0);}var Te=(()=>{class e{nzActive=false;nzType;nzBlock=false;static \u0275fac=function(n){return new(n||e)};static \u0275dir=XE({type:e,selectors:[["nz-skeleton-element"]],hostAttrs:[1,"ant-skeleton","ant-skeleton-element"],hostVars:4,hostBindings:function(n,i){n&2&&Mh("ant-skeleton-active",i.nzActive)("ant-skeleton-block",i.nzBlock);},inputs:{nzActive:[2,"nzActive","nzActive",Z0],nzType:"nzType",nzBlock:[2,"nzBlock","nzBlock",Z0]}})}return e})();var ye=(()=>{class e{nzShape="circle";nzSize="default";styleMap={};ngOnChanges(t){if(t.nzSize&&typeof this.nzSize=="number"){let n=`${this.nzSize}px`;this.styleMap={width:n,height:n,"line-height":n};}else this.styleMap={};}static \u0275fac=function(n){return new(n||e)};static \u0275cmp=QE({type:e,selectors:[["nz-skeleton-element","nzType","avatar"]],inputs:{nzShape:"nzShape",nzSize:"nzSize"},features:[ly],decls:1,vars:10,consts:[[1,"ant-skeleton-avatar"]],template:function(n,i){n&1&&uh(0,"span",0),n&2&&(sw(i.styleMap),Mh("ant-skeleton-avatar-square",i.nzShape==="square")("ant-skeleton-avatar-circle",i.nzShape==="circle")("ant-skeleton-avatar-lg",i.nzSize==="large")("ant-skeleton-avatar-sm",i.nzSize==="small"));},encapsulation:2})}return e})();var ce=(()=>{class e{cdr=C(z0);nzActive=false;nzLoading=true;nzRound=false;nzTitle=true;nzAvatar=false;nzParagraph=true;title;avatar;paragraph;rowsList=[];widthList=[];toCSSUnit(t=""){return l9(t)}getTitleProps(){let t=!!this.nzAvatar,n=!!this.nzParagraph,i="";return !t&&n?i="38%":t&&n&&(i="50%"),r({width:i},this.getProps(this.nzTitle))}getAvatarProps(){let t=this.nzTitle&&!this.nzParagraph?"square":"circle";return r({shape:t,size:"large"},this.getProps(this.nzAvatar))}getParagraphProps(){let t=!!this.nzAvatar,n=!!this.nzTitle,i={};return (!t||!n)&&(i.width="61%"),!t&&n?i.rows=3:i.rows=2,r(r({},i),this.getProps(this.nzParagraph))}getProps(t){return t&&typeof t=="object"?t:{}}getWidthList(){let{width:t,rows:n}=this.paragraph,i=[];return t&&Array.isArray(t)?i=t:t&&!Array.isArray(t)&&(i=[],i[n-1]=t),i}updateProps(){this.title=this.getTitleProps(),this.avatar=this.getAvatarProps(),this.paragraph=this.getParagraphProps(),this.rowsList=[...Array(this.paragraph.rows)],this.widthList=this.getWidthList(),this.cdr.markForCheck();}ngOnInit(){this.updateProps();}ngOnChanges(t){(t.nzTitle||t.nzAvatar||t.nzParagraph)&&this.updateProps();}static \u0275fac=function(n){return new(n||e)};static \u0275cmp=QE({type:e,selectors:[["nz-skeleton"]],hostAttrs:[1,"ant-skeleton"],hostVars:6,hostBindings:function(n,i){n&2&&Mh("ant-skeleton-with-avatar",!!i.nzAvatar)("ant-skeleton-active",i.nzActive)("ant-skeleton-round",i.nzRound);},inputs:{nzActive:[2,"nzActive","nzActive",Z0],nzLoading:[2,"nzLoading","nzLoading",Z0],nzRound:[2,"nzRound","nzRound",Z0],nzTitle:"nzTitle",nzAvatar:"nzAvatar",nzParagraph:"nzParagraph"},exportAs:["nzSkeleton"],features:[ly],ngContentSelectors:Ce,decls:2,vars:1,consts:[[1,"ant-skeleton-header"],[1,"ant-skeleton-content"],[1,"ant-skeleton-title",3,"width"],[1,"ant-skeleton-paragraph"],["nzType","avatar",3,"nzSize","nzShape"],[1,"ant-skeleton-title"],[3,"width"]],template:function(n,i){n&1&&(BD(),bD(0,he,4,3)(1,Se,1,0)),n&2&&_D(i.nzLoading?0:1);},dependencies:[Te,ye],encapsulation:2})}return e})(),pe=(()=>{class e{static \u0275fac=function(n){return new(n||e)};static \u0275mod=YE({type:e});static \u0275inj=uu({})}return e})();function Ne(e,a){}function ke(e,a){if(e&1&&(_i(0,"div",0),nh(1,Ne,0,0,"ng-template",2),Kc()),e&2){let t=VD();gI(),ch("ngTemplateOutlet",t.nzAvatar);}}function be(e,a){if(e&1&&(el(0),vw(1),tl()),e&2){let t=VD(3);gI(),Ph(t.nzTitle);}}function Me(e,a){if(e&1&&(_i(0,"div",3),nh(1,be,2,1,"ng-container",5),Kc()),e&2){let t=VD(2);gI(),ch("nzStringTemplateOutlet",t.nzTitle);}}function Ae(e,a){if(e&1&&(el(0),vw(1),tl()),e&2){let t=VD(3);gI(),Ph(t.nzDescription);}}function De(e,a){if(e&1&&(_i(0,"div",4),nh(1,Ae,2,1,"ng-container",5),Kc()),e&2){let t=VD(2);gI(),ch("nzStringTemplateOutlet",t.nzDescription);}}function Ee(e,a){if(e&1&&(_i(0,"div",1),bD(1,Me,2,1,"div",3),bD(2,De,2,1,"div",4),Kc()),e&2){let t=VD();gI(),_D(t.nzTitle?1:-1),gI(),_D(t.nzDescription?2:-1);}}var me=["*"];function we(e,a){e&1&&$D(0);}var Pe=()=>({rows:4});function Be(e,a){if(e&1&&(el(0),vw(1),tl()),e&2){let t=VD(3);gI(),Ph(t.nzTitle);}}function Oe(e,a){if(e&1&&(_i(0,"div",6),nh(1,Be,2,1,"ng-container",9),Kc()),e&2){let t=VD(2);gI(),ch("nzStringTemplateOutlet",t.nzTitle);}}function Fe(e,a){if(e&1&&(el(0),vw(1),tl()),e&2){let t=VD(3);gI(),Ph(t.nzExtra);}}function Le(e,a){if(e&1&&(_i(0,"div",7),nh(1,Fe,2,1,"ng-container",9),Kc()),e&2){let t=VD(2);gI(),ch("nzStringTemplateOutlet",t.nzExtra);}}function He(e,a){}function Ie(e,a){if(e&1&&nh(0,He,0,0,"ng-template",8),e&2){let t=VD(2);ch("ngTemplateOutlet",t.listOfNzCardTabComponent.template);}}function qe(e,a){if(e&1&&(_i(0,"div",0)(1,"div",5),bD(2,Oe,2,1,"div",6),bD(3,Le,2,1,"div",7),Kc(),bD(4,Ie,1,1,null,8),Kc()),e&2){let t=VD();gI(2),_D(t.nzTitle?2:-1),gI(),_D(t.nzExtra?3:-1),gI(),_D(t.listOfNzCardTabComponent?4:-1);}}function je(e,a){}function Re(e,a){if(e&1&&(_i(0,"div",1),nh(1,je,0,0,"ng-template",8),Kc()),e&2){let t=VD();gI(),ch("ngTemplateOutlet",t.nzCover);}}function Ge(e,a){e&1&&lh(0,"nz-skeleton",3),e&2&&ch("nzActive",true)("nzTitle",false)("nzParagraph",Nw(3,Pe));}function Qe(e,a){e&1&&$D(0);}function Ve(e,a){}function $e(e,a){if(e&1&&(_i(0,"li")(1,"span"),nh(2,Ve,0,0,"ng-template",8),Kc()()),e&2){let t=a.$implicit,n=a.$count;_h("width",100/n,"%"),gI(2),ch("ngTemplateOutlet",t);}}function Ue(e,a){if(e&1&&(_i(0,"ul",4),ND(1,$e,3,3,"li",10,MD),Kc()),e&2){let t=VD();gI(),xD(t.nzActions);}}var We=(()=>{class e{nzHoverable=true;static \u0275fac=function(n){return new(n||e)};static \u0275dir=XE({type:e,selectors:[["","nz-card-grid",""]],hostAttrs:[1,"ant-card-grid"],hostVars:2,hostBindings:function(n,i){n&2&&Mh("ant-card-hoverable",i.nzHoverable);},inputs:{nzHoverable:[2,"nzHoverable","nzHoverable",Z0]},exportAs:["nzCardGrid"]})}return e})(),Ze=(()=>{class e{nzTitle=null;nzDescription=null;nzAvatar=null;static \u0275fac=function(n){return new(n||e)};static \u0275cmp=QE({type:e,selectors:[["nz-card-meta"]],hostAttrs:[1,"ant-card-meta"],inputs:{nzTitle:"nzTitle",nzDescription:"nzDescription",nzAvatar:"nzAvatar"},exportAs:["nzCardMeta"],decls:2,vars:2,consts:[[1,"ant-card-meta-avatar"],[1,"ant-card-meta-detail"],[3,"ngTemplateOutlet"],[1,"ant-card-meta-title"],[1,"ant-card-meta-description"],[4,"nzStringTemplateOutlet"]],template:function(n,i){n&1&&(bD(0,ke,2,1,"div",0),bD(1,Ee,3,2,"div",1)),n&2&&(_D(i.nzAvatar?0:-1),gI(),_D(i.nzTitle||i.nzDescription?1:-1));},dependencies:[es,Tt,Ie$1],encapsulation:2})}return e})(),Je=(()=>{class e{template;static \u0275fac=function(n){return new(n||e)};static \u0275cmp=QE({type:e,selectors:[["nz-card-tab"]],viewQuery:function(n,i){if(n&1&&Ih(Er,7),n&2){let S;qD(S=WD())&&(i.template=S.first);}},exportAs:["nzCardTab"],ngContentSelectors:me,decls:1,vars:0,template:function(n,i){n&1&&(BD(),rh(0,we,1,0,"ng-template"));},encapsulation:2})}return e})(),ze="card",Ke=(()=>{let e,a=[],t=[],n,i=[],S=[],W,Z=[],J=[];return class U{static{let C=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;e=[ut()],n=[ut()],W=[ut()],pT(null,null,e,{kind:"field",name:"nzBordered",static:false,private:false,access:{has:r=>"nzBordered"in r,get:r=>r.nzBordered,set:(r,l)=>{r.nzBordered=l;}},metadata:C},a,t),pT(null,null,n,{kind:"field",name:"nzHoverable",static:false,private:false,access:{has:r=>"nzHoverable"in r,get:r=>r.nzHoverable,set:(r,l)=>{r.nzHoverable=l;}},metadata:C},i,S),pT(null,null,W,{kind:"field",name:"nzSize",static:false,private:false,access:{has:r=>"nzSize"in r,get:r=>r.nzSize,set:(r,l)=>{r.nzSize=l;}},metadata:C},Z,J),C&&Object.defineProperty(this,Symbol.metadata,{enumerable:true,configurable:true,writable:true,value:C});}cdr=C(z0);dir=C(Le$1).valueSignal;_nzModuleName=ze;nzBordered=hT(this,a,true);nzLoading=(hT(this,t),false);nzHoverable=hT(this,i,false);nzBodyStyle=(hT(this,S),null);nzCover;nzActions=[];nzType=null;nzSize=hT(this,Z,"default");nzTitle=hT(this,J);nzExtra;listOfNzCardTabComponent;listOfNzCardGridDirective;constructor(){Vt(ze,()=>this.cdr.markForCheck());}static \u0275fac=function(r){return new(r||U)};static \u0275cmp=QE({type:U,selectors:[["nz-card"]],contentQueries:function(r,l,K){if(r&1&&vh(K,Je,5)(K,We,4),r&2){let E;qD(E=WD())&&(l.listOfNzCardTabComponent=E.first),qD(E=WD())&&(l.listOfNzCardGridDirective=E);}},hostAttrs:[1,"ant-card"],hostVars:16,hostBindings:function(r,l){r&2&&Mh("ant-card-loading",l.nzLoading)("ant-card-bordered",l.nzBordered)("ant-card-hoverable",l.nzHoverable)("ant-card-small",l.nzSize==="small")("ant-card-contain-grid",l.listOfNzCardGridDirective&&l.listOfNzCardGridDirective.length)("ant-card-type-inner",l.nzType==="inner")("ant-card-contain-tabs",!!l.listOfNzCardTabComponent)("ant-card-rtl",l.dir()==="rtl");},inputs:{nzBordered:[2,"nzBordered","nzBordered",Z0],nzLoading:[2,"nzLoading","nzLoading",Z0],nzHoverable:[2,"nzHoverable","nzHoverable",Z0],nzBodyStyle:"nzBodyStyle",nzCover:"nzCover",nzActions:"nzActions",nzType:"nzType",nzSize:"nzSize",nzTitle:"nzTitle",nzExtra:"nzExtra"},exportAs:["nzCard"],ngContentSelectors:me,decls:6,vars:6,consts:[[1,"ant-card-head"],[1,"ant-card-cover"],[1,"ant-card-body"],[3,"nzActive","nzTitle","nzParagraph"],[1,"ant-card-actions"],[1,"ant-card-head-wrapper"],[1,"ant-card-head-title"],[1,"ant-card-extra"],[3,"ngTemplateOutlet"],[4,"nzStringTemplateOutlet"],[3,"width"]],template:function(r,l){r&1&&(BD(),bD(0,qe,5,3,"div",0),bD(1,Re,2,1,"div",1),_i(2,"div",2),bD(3,Ge,1,4,"nz-skeleton",3)(4,Qe,1,0),Kc(),bD(5,Ue,3,0,"ul",4)),r&2&&(_D(l.nzTitle||l.nzExtra||l.listOfNzCardTabComponent?0:-1),gI(),_D(l.nzCover?1:-1),gI(),sw(l.nzBodyStyle),gI(),_D(l.nzLoading?3:4),gI(2),_D(l.nzActions.length?5:-1));},dependencies:[Tt,Ie$1,es,pe,ce],encapsulation:2})}})(),Nt=(()=>{class e{static \u0275fac=function(n){return new(n||e)};static \u0275mod=YE({type:e});static \u0275inj=uu({imports:[Ke,Ze,P1]})}return e})();export{Ke as K,Nt as N};
1
+ import {an as YE,ao as uu,bp as P1,ap as pT,C,at as z0,aw as Le$1,av as hT,bq as Vt,Q as QE,aC as Tt,aD as Ie$1,b8 as es,aF as Z0,b9 as BD,m as bD,f as _i,g as Kc,B as _D,p as gI,br as sw,a4 as Mh,bs as vh,aK as qD,aL as WD,aM as ut,bt as l9,r,aE as ly,E as VD,aN as nh,x as ch,l as lh,a6 as Nw,bn as $D,N as ND,a7 as MD,A as xD,bu as XE,bv as uh,ag as _h,aO as el,v as vw,aP as tl,P as Ph,bw as rh,aJ as Ih,bx as Er,S as SD}from'./main-HV5WDK2F.js';var Ce=["*"];function fe(e,a){if(e&1&&(_i(0,"div",0),lh(1,"nz-skeleton-element",4),Kc()),e&2){let t=VD(2);gI(),ch("nzSize",t.avatar.size||"default")("nzShape",t.avatar.shape||"circle");}}function _e(e,a){if(e&1&&lh(0,"h3",5),e&2){let t=VD(2);_h("width",t.toCSSUnit(t.title.width));}}function ve(e,a){if(e&1&&lh(0,"li"),e&2){let t=a.$index,n=VD(3);_h("width",n.toCSSUnit(n.widthList[t]));}}function ge(e,a){if(e&1&&(_i(0,"ul",3),ND(1,ve,1,2,"li",6,SD),Kc()),e&2){let t=VD(2);gI(),xD(t.rowsList);}}function he(e,a){if(e&1&&(bD(0,fe,2,2,"div",0),_i(1,"div",1),bD(2,_e,1,2,"h3",2),bD(3,ge,3,0,"ul",3),Kc()),e&2){let t=VD();_D(t.nzAvatar?0:-1),gI(2),_D(t.nzTitle?2:-1),gI(),_D(t.nzParagraph?3:-1);}}function Se(e,a){e&1&&$D(0);}var Te=(()=>{class e{nzActive=false;nzType;nzBlock=false;static \u0275fac=function(n){return new(n||e)};static \u0275dir=XE({type:e,selectors:[["nz-skeleton-element"]],hostAttrs:[1,"ant-skeleton","ant-skeleton-element"],hostVars:4,hostBindings:function(n,i){n&2&&Mh("ant-skeleton-active",i.nzActive)("ant-skeleton-block",i.nzBlock);},inputs:{nzActive:[2,"nzActive","nzActive",Z0],nzType:"nzType",nzBlock:[2,"nzBlock","nzBlock",Z0]}})}return e})();var ye=(()=>{class e{nzShape="circle";nzSize="default";styleMap={};ngOnChanges(t){if(t.nzSize&&typeof this.nzSize=="number"){let n=`${this.nzSize}px`;this.styleMap={width:n,height:n,"line-height":n};}else this.styleMap={};}static \u0275fac=function(n){return new(n||e)};static \u0275cmp=QE({type:e,selectors:[["nz-skeleton-element","nzType","avatar"]],inputs:{nzShape:"nzShape",nzSize:"nzSize"},features:[ly],decls:1,vars:10,consts:[[1,"ant-skeleton-avatar"]],template:function(n,i){n&1&&uh(0,"span",0),n&2&&(sw(i.styleMap),Mh("ant-skeleton-avatar-square",i.nzShape==="square")("ant-skeleton-avatar-circle",i.nzShape==="circle")("ant-skeleton-avatar-lg",i.nzSize==="large")("ant-skeleton-avatar-sm",i.nzSize==="small"));},encapsulation:2})}return e})();var ce=(()=>{class e{cdr=C(z0);nzActive=false;nzLoading=true;nzRound=false;nzTitle=true;nzAvatar=false;nzParagraph=true;title;avatar;paragraph;rowsList=[];widthList=[];toCSSUnit(t=""){return l9(t)}getTitleProps(){let t=!!this.nzAvatar,n=!!this.nzParagraph,i="";return !t&&n?i="38%":t&&n&&(i="50%"),r({width:i},this.getProps(this.nzTitle))}getAvatarProps(){let t=this.nzTitle&&!this.nzParagraph?"square":"circle";return r({shape:t,size:"large"},this.getProps(this.nzAvatar))}getParagraphProps(){let t=!!this.nzAvatar,n=!!this.nzTitle,i={};return (!t||!n)&&(i.width="61%"),!t&&n?i.rows=3:i.rows=2,r(r({},i),this.getProps(this.nzParagraph))}getProps(t){return t&&typeof t=="object"?t:{}}getWidthList(){let{width:t,rows:n}=this.paragraph,i=[];return t&&Array.isArray(t)?i=t:t&&!Array.isArray(t)&&(i=[],i[n-1]=t),i}updateProps(){this.title=this.getTitleProps(),this.avatar=this.getAvatarProps(),this.paragraph=this.getParagraphProps(),this.rowsList=[...Array(this.paragraph.rows)],this.widthList=this.getWidthList(),this.cdr.markForCheck();}ngOnInit(){this.updateProps();}ngOnChanges(t){(t.nzTitle||t.nzAvatar||t.nzParagraph)&&this.updateProps();}static \u0275fac=function(n){return new(n||e)};static \u0275cmp=QE({type:e,selectors:[["nz-skeleton"]],hostAttrs:[1,"ant-skeleton"],hostVars:6,hostBindings:function(n,i){n&2&&Mh("ant-skeleton-with-avatar",!!i.nzAvatar)("ant-skeleton-active",i.nzActive)("ant-skeleton-round",i.nzRound);},inputs:{nzActive:[2,"nzActive","nzActive",Z0],nzLoading:[2,"nzLoading","nzLoading",Z0],nzRound:[2,"nzRound","nzRound",Z0],nzTitle:"nzTitle",nzAvatar:"nzAvatar",nzParagraph:"nzParagraph"},exportAs:["nzSkeleton"],features:[ly],ngContentSelectors:Ce,decls:2,vars:1,consts:[[1,"ant-skeleton-header"],[1,"ant-skeleton-content"],[1,"ant-skeleton-title",3,"width"],[1,"ant-skeleton-paragraph"],["nzType","avatar",3,"nzSize","nzShape"],[1,"ant-skeleton-title"],[3,"width"]],template:function(n,i){n&1&&(BD(),bD(0,he,4,3)(1,Se,1,0)),n&2&&_D(i.nzLoading?0:1);},dependencies:[Te,ye],encapsulation:2})}return e})(),pe=(()=>{class e{static \u0275fac=function(n){return new(n||e)};static \u0275mod=YE({type:e});static \u0275inj=uu({})}return e})();function Ne(e,a){}function ke(e,a){if(e&1&&(_i(0,"div",0),nh(1,Ne,0,0,"ng-template",2),Kc()),e&2){let t=VD();gI(),ch("ngTemplateOutlet",t.nzAvatar);}}function be(e,a){if(e&1&&(el(0),vw(1),tl()),e&2){let t=VD(3);gI(),Ph(t.nzTitle);}}function Me(e,a){if(e&1&&(_i(0,"div",3),nh(1,be,2,1,"ng-container",5),Kc()),e&2){let t=VD(2);gI(),ch("nzStringTemplateOutlet",t.nzTitle);}}function Ae(e,a){if(e&1&&(el(0),vw(1),tl()),e&2){let t=VD(3);gI(),Ph(t.nzDescription);}}function De(e,a){if(e&1&&(_i(0,"div",4),nh(1,Ae,2,1,"ng-container",5),Kc()),e&2){let t=VD(2);gI(),ch("nzStringTemplateOutlet",t.nzDescription);}}function Ee(e,a){if(e&1&&(_i(0,"div",1),bD(1,Me,2,1,"div",3),bD(2,De,2,1,"div",4),Kc()),e&2){let t=VD();gI(),_D(t.nzTitle?1:-1),gI(),_D(t.nzDescription?2:-1);}}var me=["*"];function we(e,a){e&1&&$D(0);}var Pe=()=>({rows:4});function Be(e,a){if(e&1&&(el(0),vw(1),tl()),e&2){let t=VD(3);gI(),Ph(t.nzTitle);}}function Oe(e,a){if(e&1&&(_i(0,"div",6),nh(1,Be,2,1,"ng-container",9),Kc()),e&2){let t=VD(2);gI(),ch("nzStringTemplateOutlet",t.nzTitle);}}function Fe(e,a){if(e&1&&(el(0),vw(1),tl()),e&2){let t=VD(3);gI(),Ph(t.nzExtra);}}function Le(e,a){if(e&1&&(_i(0,"div",7),nh(1,Fe,2,1,"ng-container",9),Kc()),e&2){let t=VD(2);gI(),ch("nzStringTemplateOutlet",t.nzExtra);}}function He(e,a){}function Ie(e,a){if(e&1&&nh(0,He,0,0,"ng-template",8),e&2){let t=VD(2);ch("ngTemplateOutlet",t.listOfNzCardTabComponent.template);}}function qe(e,a){if(e&1&&(_i(0,"div",0)(1,"div",5),bD(2,Oe,2,1,"div",6),bD(3,Le,2,1,"div",7),Kc(),bD(4,Ie,1,1,null,8),Kc()),e&2){let t=VD();gI(2),_D(t.nzTitle?2:-1),gI(),_D(t.nzExtra?3:-1),gI(),_D(t.listOfNzCardTabComponent?4:-1);}}function je(e,a){}function Re(e,a){if(e&1&&(_i(0,"div",1),nh(1,je,0,0,"ng-template",8),Kc()),e&2){let t=VD();gI(),ch("ngTemplateOutlet",t.nzCover);}}function Ge(e,a){e&1&&lh(0,"nz-skeleton",3),e&2&&ch("nzActive",true)("nzTitle",false)("nzParagraph",Nw(3,Pe));}function Qe(e,a){e&1&&$D(0);}function Ve(e,a){}function $e(e,a){if(e&1&&(_i(0,"li")(1,"span"),nh(2,Ve,0,0,"ng-template",8),Kc()()),e&2){let t=a.$implicit,n=a.$count;_h("width",100/n,"%"),gI(2),ch("ngTemplateOutlet",t);}}function Ue(e,a){if(e&1&&(_i(0,"ul",4),ND(1,$e,3,3,"li",10,MD),Kc()),e&2){let t=VD();gI(),xD(t.nzActions);}}var We=(()=>{class e{nzHoverable=true;static \u0275fac=function(n){return new(n||e)};static \u0275dir=XE({type:e,selectors:[["","nz-card-grid",""]],hostAttrs:[1,"ant-card-grid"],hostVars:2,hostBindings:function(n,i){n&2&&Mh("ant-card-hoverable",i.nzHoverable);},inputs:{nzHoverable:[2,"nzHoverable","nzHoverable",Z0]},exportAs:["nzCardGrid"]})}return e})(),Ze=(()=>{class e{nzTitle=null;nzDescription=null;nzAvatar=null;static \u0275fac=function(n){return new(n||e)};static \u0275cmp=QE({type:e,selectors:[["nz-card-meta"]],hostAttrs:[1,"ant-card-meta"],inputs:{nzTitle:"nzTitle",nzDescription:"nzDescription",nzAvatar:"nzAvatar"},exportAs:["nzCardMeta"],decls:2,vars:2,consts:[[1,"ant-card-meta-avatar"],[1,"ant-card-meta-detail"],[3,"ngTemplateOutlet"],[1,"ant-card-meta-title"],[1,"ant-card-meta-description"],[4,"nzStringTemplateOutlet"]],template:function(n,i){n&1&&(bD(0,ke,2,1,"div",0),bD(1,Ee,3,2,"div",1)),n&2&&(_D(i.nzAvatar?0:-1),gI(),_D(i.nzTitle||i.nzDescription?1:-1));},dependencies:[es,Tt,Ie$1],encapsulation:2})}return e})(),Je=(()=>{class e{template;static \u0275fac=function(n){return new(n||e)};static \u0275cmp=QE({type:e,selectors:[["nz-card-tab"]],viewQuery:function(n,i){if(n&1&&Ih(Er,7),n&2){let S;qD(S=WD())&&(i.template=S.first);}},exportAs:["nzCardTab"],ngContentSelectors:me,decls:1,vars:0,template:function(n,i){n&1&&(BD(),rh(0,we,1,0,"ng-template"));},encapsulation:2})}return e})(),ze="card",Ke=(()=>{let e,a=[],t=[],n,i=[],S=[],W,Z=[],J=[];return class U{static{let C=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;e=[ut()],n=[ut()],W=[ut()],pT(null,null,e,{kind:"field",name:"nzBordered",static:false,private:false,access:{has:r=>"nzBordered"in r,get:r=>r.nzBordered,set:(r,l)=>{r.nzBordered=l;}},metadata:C},a,t),pT(null,null,n,{kind:"field",name:"nzHoverable",static:false,private:false,access:{has:r=>"nzHoverable"in r,get:r=>r.nzHoverable,set:(r,l)=>{r.nzHoverable=l;}},metadata:C},i,S),pT(null,null,W,{kind:"field",name:"nzSize",static:false,private:false,access:{has:r=>"nzSize"in r,get:r=>r.nzSize,set:(r,l)=>{r.nzSize=l;}},metadata:C},Z,J),C&&Object.defineProperty(this,Symbol.metadata,{enumerable:true,configurable:true,writable:true,value:C});}cdr=C(z0);dir=C(Le$1).valueSignal;_nzModuleName=ze;nzBordered=hT(this,a,true);nzLoading=(hT(this,t),false);nzHoverable=hT(this,i,false);nzBodyStyle=(hT(this,S),null);nzCover;nzActions=[];nzType=null;nzSize=hT(this,Z,"default");nzTitle=hT(this,J);nzExtra;listOfNzCardTabComponent;listOfNzCardGridDirective;constructor(){Vt(ze,()=>this.cdr.markForCheck());}static \u0275fac=function(r){return new(r||U)};static \u0275cmp=QE({type:U,selectors:[["nz-card"]],contentQueries:function(r,l,K){if(r&1&&vh(K,Je,5)(K,We,4),r&2){let E;qD(E=WD())&&(l.listOfNzCardTabComponent=E.first),qD(E=WD())&&(l.listOfNzCardGridDirective=E);}},hostAttrs:[1,"ant-card"],hostVars:16,hostBindings:function(r,l){r&2&&Mh("ant-card-loading",l.nzLoading)("ant-card-bordered",l.nzBordered)("ant-card-hoverable",l.nzHoverable)("ant-card-small",l.nzSize==="small")("ant-card-contain-grid",l.listOfNzCardGridDirective&&l.listOfNzCardGridDirective.length)("ant-card-type-inner",l.nzType==="inner")("ant-card-contain-tabs",!!l.listOfNzCardTabComponent)("ant-card-rtl",l.dir()==="rtl");},inputs:{nzBordered:[2,"nzBordered","nzBordered",Z0],nzLoading:[2,"nzLoading","nzLoading",Z0],nzHoverable:[2,"nzHoverable","nzHoverable",Z0],nzBodyStyle:"nzBodyStyle",nzCover:"nzCover",nzActions:"nzActions",nzType:"nzType",nzSize:"nzSize",nzTitle:"nzTitle",nzExtra:"nzExtra"},exportAs:["nzCard"],ngContentSelectors:me,decls:6,vars:6,consts:[[1,"ant-card-head"],[1,"ant-card-cover"],[1,"ant-card-body"],[3,"nzActive","nzTitle","nzParagraph"],[1,"ant-card-actions"],[1,"ant-card-head-wrapper"],[1,"ant-card-head-title"],[1,"ant-card-extra"],[3,"ngTemplateOutlet"],[4,"nzStringTemplateOutlet"],[3,"width"]],template:function(r,l){r&1&&(BD(),bD(0,qe,5,3,"div",0),bD(1,Re,2,1,"div",1),_i(2,"div",2),bD(3,Ge,1,4,"nz-skeleton",3)(4,Qe,1,0),Kc(),bD(5,Ue,3,0,"ul",4)),r&2&&(_D(l.nzTitle||l.nzExtra||l.listOfNzCardTabComponent?0:-1),gI(),_D(l.nzCover?1:-1),gI(),sw(l.nzBodyStyle),gI(),_D(l.nzLoading?3:4),gI(2),_D(l.nzActions.length?5:-1));},dependencies:[Tt,Ie$1,es,pe,ce],encapsulation:2})}})(),Nt=(()=>{class e{static \u0275fac=function(n){return new(n||e)};static \u0275mod=YE({type:e});static \u0275inj=uu({imports:[Ke,Ze,P1]})}return e})();export{Ke as K,Nt as N};
@@ -0,0 +1 @@
1
+ import {I,g,b,v,T,y,h,E,P,A,j}from'./chunk-CqGGDoIh.js';import {N as Nt,K as Ke}from'./chunk-CT8olEiD.js';import {$ as $$1,F,B}from'./chunk-h3oyPsBC.js';import {T as Tx,m as my,U as Um,X as X_,z as zy,q as qm,S as Sy,k as ky,o as ov,J as Jm,p as py}from'./chunk-dUlsh7QS.js';import {z as ze,S as St}from'./chunk-CgXl_TS9.js';import'./chunk-qYK5KaAK.js';import {X as Xt,Z as Zn$1}from'./chunk-D_R_EFd2.js';import {a as ai$1,z,o as ot,b as at$1,i as it,r as rt}from'./chunk-DlsGU_Dk.js';import'./chunk-DinAvqzQ.js';import {C,a as ae,T as Ie,aj as $,b as at,V as Ve$1,aS as O,aT as de,al as Se,q as qo,H as Hw,u as ue,s,r,o,Q as QE,M as Mi$1,n as n8,am as S4,J as J6,k as k3,L as Ln$1,d as dd,z as zc,c as t7,Z as y7,X as Xb,e as V5,D as D5,K as Kt,f as _i$1,v as vw,g as Kc,R as Rw,h as gh,m as bD,p as gI,P as Ph,O as Ow,x as ch,w as nl,B as _D,a0 as $0,a1 as B0,W as rd,t as t$1,aU as $6,N as ND,a5 as ah,A as xD,E as VD,F as LD,j as oE,S as SD,a7 as MD,y as sE,an as YE,ao as uu,aV as Y0,aF as Z0,aW as N1,aX as q0,ar as _r,aY as Ee,au as a3,aw as Le,aZ as ga$1,a_ as j3,ax as m1,a$ as za,b0 as Uw,b1 as W0,b2 as D8,b3 as p9,b4 as a9,b5 as Kf,Y as Bw,b6 as g9,aA as pt,aB as Se$1,b7 as va,b8 as es,b9 as BD,aN as nh,ba as Lw,aG as Sw,aH as h1,bb as B1,aI as wo$1,bc as rD,bd as R4,be as cw,bf as Dh,bg as GD,bh as Eh,bi as U0,aQ as Jc,bj as mh,aR as Xc,a4 as Mh,l as lh,a2 as Pw,a3 as xw,bk as zD,G as Pu,I as Lu,bl as Vh,bm as jh,bn as $D,U as Lh,bo as ww,a6 as Nw}from'./main-HV5WDK2F.js';import {U}from'./chunk-DUR5PalP.js';import {G as Gn$1,u as un$1}from'./chunk-TNH96m0D.js';import {W,I as I$1}from'./chunk-Ct30cLzT.js';import {L as Lt,u as ut}from'./chunk-BGEuPXoV.js';import'./chunk-C2eCmH-q.js';var Tn=["input"],En=["inputNumberHost"],kn=[[["","nzInputAddonBefore",""]],[["","nzInputAddonAfter",""]],[["","nzInputPrefix",""]],[["","nzInputSuffix",""]],[["","nzInputNumberUpIcon",""]],[["","nzInputNumberDownIcon",""]]],In=["[nzInputAddonBefore]","[nzInputAddonAfter]","[nzInputPrefix]","[nzInputSuffix]","[nzInputNumberUpIcon]","[nzInputNumberDownIcon]"];function Nn(i,s){}function Fn(i,s){if(i&1&&nh(0,Nn,0,0,"ng-template",8),i&2){VD();let e=zD(4);ch("ngTemplateOutlet",e);}}function Vn(i,s){}function An(i,s){if(i&1&&nh(0,Vn,0,0,"ng-template",8),i&2){VD();let e=zD(8);ch("ngTemplateOutlet",e);}}function Pn(i,s){}function $n(i,s){if(i&1&&nh(0,Pn,0,0,"ng-template",8),i&2){VD();let e=zD(12);ch("ngTemplateOutlet",e);}}function Dn(i,s){if(i&1&&vw(0),i&2){let e=VD(3);Ph(e.nzAddonBefore());}}function Bn(i,s){i&1&&(_i$1(0,"div",10),$D(1,0,null,Dn,1,1),Kc());}function Ln(i,s){}function On(i,s){if(i&1&&nh(0,Ln,0,0,"ng-template",8),i&2){VD(2);let e=zD(6);ch("ngTemplateOutlet",e);}}function Wn(i,s){}function jn(i,s){if(i&1&&nh(0,Wn,0,0,"ng-template",8),i&2){VD(2);let e=zD(10);ch("ngTemplateOutlet",e);}}function Rn(i,s){if(i&1&&vw(0),i&2){let e=VD(3);Ph(e.nzAddonAfter());}}function Kn(i,s){i&1&&(_i$1(0,"div",10),$D(1,1,null,Rn,1,1),Kc());}function Hn(i,s){if(i&1&&(_i$1(0,"div",9),bD(1,Bn,3,0,"div",10),bD(2,On,1,1,null,8)(3,jn,1,1,null,8),bD(4,Kn,3,0,"div",10),Kc()),i&2){let e=VD();gI(),_D(e.hasAddonBefore()?1:-1),gI(),_D(e.hasAffix()?2:3),gI(2),_D(e.hasAddonAfter()?4:-1);}}function qn(i,s){}function Gn(i,s){if(i&1&&(_i$1(0,"div"),nh(1,qn,0,0,"ng-template",8),Kc()),i&2){let e=VD(),n=zD(8);cw(e.affixWrapperClass()),gI(),ch("ngTemplateOutlet",n);}}function Un(i,s){if(i&1&&vw(0),i&2){let e=VD(3);Ph(e.nzPrefix());}}function Zn(i,s){i&1&&(_i$1(0,"span",11),$D(1,2,null,Un,1,1),Kc());}function Qn(i,s){}function Yn(i,s){if(i&1&&vw(0),i&2){let e=VD(3);Ph(e.nzSuffix());}}function Jn(i,s){if(i&1&&lh(0,"nz-form-item-feedback-icon",13),i&2){let e=VD(3);ch("status",e.finalStatus());}}function Xn(i,s){if(i&1&&(_i$1(0,"span",12),$D(1,3,null,Yn,1,1),bD(3,Jn,1,1,"nz-form-item-feedback-icon",13),Kc()),i&2){let e=VD(2);gI(3),_D(e.hasFeedback()&&e.finalStatus()?3:-1);}}function ei(i,s){if(i&1&&(bD(0,Zn,3,0,"span",11),nh(1,Qn,0,0,"ng-template",8),bD(2,Xn,4,1,"span",12)),i&2){let e=VD(),n=zD(10);_D(e.hasPrefix()?0:-1),gI(),ch("ngTemplateOutlet",n),gI(),_D(e.hasSuffix()?2:-1);}}function ti(i,s){}function ni(i,s){if(i&1&&(_i$1(0,"div",null,5),nh(2,ti,0,0,"ng-template",8),Kc()),i&2){let e=VD(),n=zD(12);cw(e.inputNumberClass()),gI(2),ch("ngTemplateOutlet",n);}}function ii(i,s){i&1&&lh(0,"nz-icon",20);}function oi(i,s){i&1&&lh(0,"nz-icon",21);}function ri(i,s){if(i&1){let e=LD();_i$1(0,"div",17,7),gh("mouseup",function(){Pu(e);let t=VD(2);return Lu(t.stopAutoStep())})("mouseleave",function(){Pu(e);let t=VD(2);return Lu(t.stopAutoStep())}),_i$1(2,"span",18),gh("mousedown",function(t){Pu(e);let o=VD(2);return Lu(o.onStepMouseDown(t,true))}),$D(3,4,null,ii,1,0),Kc(),_i$1(5,"span",19),gh("mousedown",function(t){Pu(e);let o=VD(2);return Lu(o.onStepMouseDown(t,false))}),$D(6,5,null,oi,1,0),Kc()();}if(i&2){let e=VD(2);gI(2),Mh("ant-input-number-handler-up-disabled",e.upDisabled()),ah("aria-disabled",e.upDisabled()),gI(3),Mh("ant-input-number-handler-down-disabled",e.downDisabled()),ah("aria-disabled",e.downDisabled());}}function ai(i,s){if(i&1){let e=LD();bD(0,ri,8,6,"div",14),_i$1(1,"div",15)(2,"input",16,6),gh("input",function(){Pu(e);let t=zD(3),o=VD();return Lu(o.onInput(t.value))})("wheel",function(t){Pu(e);let o=VD();return Lu(o.onWheel(t))}),Kc()();}if(i&2){let e=VD();_D(e.nzControls()?0:-1),gI(2),ch("value",e.displayValue())("placeholder",e.nzPlaceHolder()??"")("disabled",e.finalDisabled())("readOnly",e.nzReadOnly()),ah("aria-valuemin",e.nzMin())("aria-valuemax",e.nzMax())("id",e.nzId())("step",e.nzStep())("value",e.displayValue());}}var tt=(()=>{class i{nzId=$0(null);nzSize=$0("default");nzPlaceHolder=$0(null);nzStatus=$0("");nzVariant=$0();nzStep=$0(1,{transform:Y0});nzMin=$0(Number.MIN_SAFE_INTEGER,{transform:Y0});nzMax=$0(Number.MAX_SAFE_INTEGER,{transform:Y0});nzPrecision=$0(null);nzParser=$0();nzFormatter=$0();nzDisabled=$0(false,{transform:Z0});nzReadOnly=$0(false,{transform:Z0});nzAutoFocus=$0(false,{transform:Z0});nzKeyboard=$0(true,{transform:Z0});nzControls=$0(true,{transform:Z0});nzChangeOnWheel=$0(true,{transform:Z0});nzPrefix=$0();nzSuffix=$0();nzAddonBefore=$0();nzAddonAfter=$0();nzBlur=B0();nzFocus=B0();nzOnStep=B0();onChange=()=>{};onTouched=()=>{};isDisabledFirstChange=true;compactSize=C(N1,{optional:true});inputRef=q0.required("input");hostRef=q0("inputNumberHost");elementRef=C(_r);injector=C(Ee);focusMonitor=C(a3);directionality=C(Le);nzFormStatusService=C(ga$1,{optional:true});autoStepTimer=null;defaultFormatter=e=>{let n=this.nzPrecision();return j3(n)?e.toFixed(n):e.toString()};value=qo(null);displayValue=qo("");formSize=C(m1,{optional:true});formVariant=C(za,{optional:true});dir=C(Le).valueSignal;focused=qo(false);hasFeedback=qo(false);finalStatus=Uw(()=>this.nzStatus());finalDisabled=Uw(()=>this.nzDisabled());prefix=W0(ot);suffix=W0(at$1);addonBefore=W0(it);addonAfter=W0(rt);hasPrefix=Hw(()=>!!this.nzPrefix()||!!this.prefix());hasSuffix=Hw(()=>!!this.nzSuffix()||!!this.suffix()||this.hasFeedback());hasAffix=Hw(()=>this.hasPrefix()||this.hasSuffix());hasAddonBefore=Hw(()=>!!this.nzAddonBefore()||!!this.addonBefore());hasAddonAfter=Hw(()=>!!this.nzAddonAfter()||!!this.addonAfter());hasAddon=Hw(()=>this.hasAddonBefore()||this.hasAddonAfter());class=Hw(()=>this.hasAddon()?this.groupWrapperClass():this.hasAffix()?this.affixWrapperClass():this.inputNumberClass());inputNumberClass=Hw(()=>r(r({"ant-input-number":true,"ant-input-number-lg":this.finalSize()==="large","ant-input-number-sm":this.finalSize()==="small","ant-input-number-disabled":this.finalDisabled(),"ant-input-number-readonly":this.nzReadOnly(),"ant-input-number-focused":this.focused(),"ant-input-number-rtl":this.dir()==="rtl","ant-input-number-in-form-item":!!this.nzFormStatusService,"ant-input-number-out-of-range":this.value()!==null&&!et(this.value(),this.nzMin(),this.nzMax())},p9("ant-input-number",this.finalVariant())),D8("ant-input-number",this.finalStatus(),this.hasFeedback())));affixWrapperClass=Hw(()=>r(r({"ant-input-number-affix-wrapper":true,"ant-input-number-affix-wrapper-disabled":this.finalDisabled(),"ant-input-number-affix-wrapper-readonly":this.nzReadOnly(),"ant-input-number-affix-wrapper-focused":this.focused(),"ant-input-number-affix-wrapper-rtl":this.dir()==="rtl"},D8("ant-input-number-affix-wrapper",this.finalStatus(),this.hasFeedback())),p9("ant-input-number-affix-wrapper",this.finalVariant())));groupWrapperClass=Hw(()=>r(r({"ant-input-number-group-wrapper":true,"ant-input-number-group-wrapper-rtl":this.dir()==="rtl"},D8("ant-input-number-group-wrapper",this.finalStatus(),this.hasFeedback())),p9("ant-input-number-group-wrapper",this.finalVariant())));finalSize=Hw(()=>this.formSize?.()?this.formSize():this.compactSize?this.compactSize():this.nzSize());finalVariant=Hw(()=>this.nzVariant()||this.formVariant?.()||"outlined");upDisabled=Hw(()=>!a9(this.value())&&this.value()>=this.nzMax());downDisabled=Hw(()=>!a9(this.value())&&this.value()<=this.nzMin());constructor(){let e=C(at);Kf(()=>{let n=this.hostRef(),t=n||this.elementRef;this.focusMonitor.monitor(t,true).pipe(ue(e)).subscribe(o=>{Bw(()=>{this.focused.set(!!o),o?this.nzFocus.emit():(this.fixValue(),this.onTouched(),this.nzBlur.emit());});}),e.onDestroy(()=>{this.focusMonitor.stopMonitoring(t);});}),this.nzFormStatusService?.formStatusChanges.pipe(ue()).subscribe(({status:n,hasFeedback:t})=>{this.finalStatus.set(n),this.hasFeedback.set(t);});}ngOnInit(){this.nzAutoFocus()&&Kf(()=>this.focus(),{injector:this.injector});}writeValue(e){a9(e)&&(e=null),Bw(()=>{this.value.set(e),this.setValue(e);});}registerOnChange(e){this.onChange=e;}registerOnTouched(e){this.onTouched=e;}setDisabledState(e){Bw(()=>{this.finalDisabled.set(this.isDisabledFirstChange&&this.nzDisabled()||e);}),this.isDisabledFirstChange=false;}focus(e){g9(this.inputRef().nativeElement,e);}blur(){this.inputRef().nativeElement.blur();}step(e,n,t){if(n&&this.upDisabled()||!n&&this.downDisabled())return;let o=e.shiftKey?this.nzStep()*10:this.nzStep();n||(o=-o);let A=10**_n(o),K=cn((Math.round((this.value()||0)*A)+Math.round(o*A))/A,this.nzMin(),this.nzMax(),this.nzPrecision());this.setValue(K),this.nzOnStep.emit({type:n?"up":"down",value:this.value(),offset:this.nzStep(),emitter:t}),this.focus();}setValue(e){let n=this.nzFormatter()??this.defaultFormatter,t=this.nzPrecision();j3(t)&&(e&&=+e.toFixed(t));let o=a9(e)?"":n(e);this.displayValue.set(o),this.updateValue(e);}setValueByTyping(e){if(this.displayValue.set(e),e===""){this.updateValue(null);return}let t=(this.nzParser()??dn)(e);if(pi(e)||Number.isNaN(t))return;let o=this.nzFormatter();if(o){let d=o(t);this.displayValue.set(d);}et(t,this.nzMin(),this.nzMax())&&this.updateValue(t);}updateValue(e){this.value()!==e&&(this.value.set(e),this.onChange(e));}fixValue(){let e=this.displayValue();if(e==="")return;let t=(this.nzParser()??dn)(e);if(Number.isNaN(t))t=this.value();else {let o=this.nzPrecision();j3(o)&&_n(t)!==o&&(t=+t.toFixed(o)),et(t,this.nzMin(),this.nzMax())||(t=cn(t,this.nzMin(),this.nzMax(),o));}this.setValue(t);}stopAutoStep(){this.autoStepTimer!==null&&(clearTimeout(this.autoStepTimer),this.autoStepTimer=null);}onStepMouseDown(e,n){e.preventDefault(),this.stopAutoStep(),this.step(e,n,"handler");let t=()=>{this.step(e,n,"handler"),this.autoStepTimer=setTimeout(t,si);};this.autoStepTimer=setTimeout(t,li);}onKeyDown(e){switch(e.keyCode){case 38:e.preventDefault(),this.nzKeyboard()&&this.step(e,true,"keyboard");break;case 40:e.preventDefault(),this.nzKeyboard()&&this.step(e,false,"keyboard");break;case 13:this.fixValue();break}}onInput(e){this.setValueByTyping(e);}onWheel(e){this.finalDisabled()||this.nzReadOnly()||!this.nzChangeOnWheel()||(e.preventDefault(),this.step(e,e.deltaY<0,"wheel"));}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=QE({type:i,selectors:[["nz-input-number"]],contentQueries:function(n,t,o){n&1&&Eh(o,t.prefix,ot,5)(o,t.suffix,at$1,5)(o,t.addonBefore,it,5)(o,t.addonAfter,rt,5),n&2&&GD(4);},viewQuery:function(n,t){n&1&&Dh(t.inputRef,Tn,5)(t.hostRef,En,5),n&2&&GD(2);},hostVars:2,hostBindings:function(n,t){n&1&&gh("keydown",function(d){return t.onKeyDown(d)}),n&2&&cw(t.class());},inputs:{nzId:[1,"nzId"],nzSize:[1,"nzSize"],nzPlaceHolder:[1,"nzPlaceHolder"],nzStatus:[1,"nzStatus"],nzVariant:[1,"nzVariant"],nzStep:[1,"nzStep"],nzMin:[1,"nzMin"],nzMax:[1,"nzMax"],nzPrecision:[1,"nzPrecision"],nzParser:[1,"nzParser"],nzFormatter:[1,"nzFormatter"],nzDisabled:[1,"nzDisabled"],nzReadOnly:[1,"nzReadOnly"],nzAutoFocus:[1,"nzAutoFocus"],nzKeyboard:[1,"nzKeyboard"],nzControls:[1,"nzControls"],nzChangeOnWheel:[1,"nzChangeOnWheel"],nzPrefix:[1,"nzPrefix"],nzSuffix:[1,"nzSuffix"],nzAddonBefore:[1,"nzAddonBefore"],nzAddonAfter:[1,"nzAddonAfter"]},outputs:{nzBlur:"nzBlur",nzFocus:"nzFocus",nzOnStep:"nzOnStep"},exportAs:["nzInputNumber"],features:[Sw([{provide:h1,useExisting:wo$1(()=>i),multi:true},{provide:B1,useValue:"input-number"}]),rD([R4])],ngContentSelectors:In,decls:13,vars:1,consts:[["inputNumberWithAddonInner",""],["inputNumberWithAffix",""],["inputNumberWithAffixInner",""],["inputNumber",""],["inputNumberInner",""],["inputNumberHost",""],["input",""],["handlers",""],[3,"ngTemplateOutlet"],[1,"ant-input-number-wrapper","ant-input-number-group"],[1,"ant-input-number-group-addon"],[1,"ant-input-number-prefix"],[1,"ant-input-number-suffix"],[3,"status"],[1,"ant-input-number-handler-wrap"],[1,"ant-input-number-input-wrap"],["autocomplete","off","role","spinbutton",1,"ant-input-number-input",3,"input","wheel","value","placeholder","disabled","readOnly"],[1,"ant-input-number-handler-wrap",3,"mouseup","mouseleave"],["role","button","unselectable","on",1,"ant-input-number-handler","ant-input-number-handler-up",3,"mousedown"],["role","button","unselectable","on",1,"ant-input-number-handler","ant-input-number-handler-down",3,"mousedown"],["nzType","up",1,"ant-input-number-handler-up-inner"],["nzType","down",1,"ant-input-number-handler-down-inner"]],template:function(n,t){n&1&&(BD(kn),bD(0,Fn,1,1,null,8)(1,An,1,1,null,8)(2,$n,1,1,null,8),nh(3,Hn,5,3,"ng-template",null,0,Lw)(5,Gn,2,3,"ng-template",null,1,Lw)(7,ei,3,3,"ng-template",null,2,Lw)(9,ni,3,3,"ng-template",null,3,Lw)(11,ai,4,10,"ng-template",null,4,Lw)),n&2&&_D(t.hasAddon()?0:t.hasAffix()?1:2);},dependencies:[pt,Se$1,va,es],encapsulation:2})}return i})(),si=200,li=600;function dn(i){let s=i.trim().replace(/,/g,"").replace(/。/g,".");return s.length?+s:NaN}function et(i,s,e){return i>=s&&i<=e}function cn(i,s,e,n=null){if(n===null)return i<s?s:i>e?e:i;let t=+i.toFixed(n),o=Math.pow(10,n);return t<s?Math.ceil(s*o)/o:t>e?Math.floor(e*o)/o:t}function _n(i){return i.toString().split(".")[1]?.length||0}function pi(i){return /[.。](\d*0)?$/.test(i.toString())}var mn=(()=>{class i{static \u0275fac=function(n){return new(n||i)};static \u0275mod=YE({type:i});static \u0275inj=uu({imports:[tt]})}return i})();var ci=i=>({action:i}),un=(i,s)=>s.token,_i=(i,s)=>s.subjectType,mi=(i,s)=>s.id+s.name;function ui(i,s){if(i&1){let e=LD();Jc(0,"li")(1,"span",11),vw(2),Xc(),Jc(3,"button",12),mh("click",function(){let t=Pu(e).$implicit,o=VD(3);return Lu(o.copyToken(t.token))}),vw(4),Xc()();}if(i&2){let e=s.$implicit,n=VD(3);gI(2),Ph(e.label),gI(),Mh("copied",n.copiedToken()===e.token),ah("data-testid","copy-token")("data-token",e.token),gI(),nl(" ",e.token," ");}}function xi(i,s){if(i&1&&(Jc(0,"div",6)(1,"h5"),vw(2),Rw(3,"transloco"),Xc(),Jc(4,"ul"),ND(5,ui,5,6,"li",null,un),Xc()()),i&2){let e=VD(2);gI(2),Ph(Ow(3,1,"step-list.availableParameters.inputs")),gI(3),xD(e.inputEntries());}}function Ci(i,s){if(i&1&&(Jc(0,"p",14),vw(1),Rw(2,"transloco"),Xc()),i&2){let e=VD().$implicit;gI(),Ph(Ow(2,1,e.typeKey));}}function fi(i,s){if(i&1){let e=LD();Jc(0,"li")(1,"button",12),mh("click",function(){let t=Pu(e).$implicit,o=VD(4);return Lu(o.copyToken(t.token))}),vw(2),Xc()();}if(i&2){let e=s.$implicit,n=VD(4);gI(),Mh("copied",n.copiedToken()===e.token),ah("data-testid","copy-token")("data-token",e.token),gI(),nl(" ",e.token," ");}}function gi(i,s){if(i&1&&(bD(0,Ci,3,3,"p",14),Jc(1,"ul"),ND(2,fi,3,5,"li",null,un),Xc()),i&2){let e=s.$implicit,n=VD(3);_D(n.subjectGroups().length>1?0:-1),gI(2),xD(e.tokens);}}function hi(i,s){if(i&1&&(Jc(0,"div",7)(1,"h5",13),vw(2),Rw(3,"transloco"),Xc(),ND(4,gi,4,1,null,null,_i),Xc()),i&2){let e=VD(2);gI(2),Lh(" ",Ow(3,2,"step-list.availableParameters.subject")," (",e.subjectTypeHeading(),") "),gI(2),xD(e.subjectGroups());}}function bi(i,s){i&1&&(Jc(0,"p",9),vw(1),Rw(2,"transloco"),Xc()),i&2&&(gI(),nl(" ",Ow(2,1,"step-list.availableParameters.noPrevious")," "));}function vi(i,s){i&1&&(Jc(0,"span",17),vw(1),Rw(2,"transloco"),Xc()),i&2&&(gI(),nl(" ",Ow(2,1,"step-list.availableParameters.loopOverwrite")," "));}function wi(i,s){i&1&&(Jc(0,"p",5),vw(1),Rw(2,"transloco"),Xc()),i&2&&(gI(),Ph(Ow(2,1,"step-list.availableParameters.missingId")));}function zi(i,s){if(i&1){let e=LD();Jc(0,"button",12),mh("click",function(){let t=Pu(e).$implicit,o=VD(5);return Lu(o.copyToken(t))}),vw(1),Xc();}if(i&2){let e=s.$implicit,n=VD(5);Mh("copied",n.copiedToken()===e),ah("data-testid","copy-token")("data-token",e),gI(),nl(" ",e," ");}}function Si(i,s){if(i&1&&(Jc(0,"div",18),ND(1,zi,2,5,"button",22,SD),Xc()),i&2){let e=VD().$implicit;gI(),xD(e.tokens);}}function yi(i,s){if(i&1&&(Jc(0,"p",19),vw(1),Rw(2,"transloco"),Xc()),i&2){let e=VD().$implicit;gI(),nl(" ",Pw(2,1,"step-list.availableParameters.providerOpaque",xw(4,ci,e.actionLabel))," ");}}function Mi(i,s){i&1&&(Jc(0,"p",19),vw(1),Rw(2,"transloco"),Xc()),i&2&&(gI(),nl(" ",Ow(2,1,"step-list.availableParameters.interactionOpaque")," "));}function Ti(i,s){i&1&&(Jc(0,"p",20),vw(1),Rw(2,"transloco"),Xc()),i&2&&(gI(),nl(" ",Ow(2,1,"step-list.availableParameters.subWorkflowArray")," "));}function Ei(i,s){i&1&&(Jc(0,"p",21),vw(1),Rw(2,"transloco"),Xc()),i&2&&(gI(),nl(" ",Ow(2,1,"step-list.availableParameters.noOutput")," "));}function ki(i,s){if(i&1&&(Jc(0,"li",15),Rw(1,"transloco"),Jc(2,"div",16)(3,"span",11),vw(4),Xc(),bD(5,vi,3,3,"span",17),Xc(),bD(6,wi,3,3,"p",5),bD(7,Si,3,0,"div",18),bD(8,yi,3,6,"p",19),bD(9,Mi,3,3,"p",19),bD(10,Ti,3,3,"p",20),bD(11,Ei,3,3,"p",21),Xc()),i&2){let e=s.$implicit;ah("data-testid","previous-step-"+e.id)("title",e.inLoop?Ow(1,10,"step-list.availableParameters.loopOverwrite"):null),gI(4),Ph(e.name||e.id),gI(),_D(e.inLoop?5:-1),gI(),_D(e.id?-1:6),gI(),_D(e.tokens.length>0?7:-1),gI(),_D(e.isProvider?8:-1),gI(),_D(e.isInteraction?9:-1),gI(),_D(e.isSubWorkflow?10:-1),gI(),_D(!e.shape.opaque&&(e.shape.fields?.length??0)===0&&!e.shape.isScalar?11:-1);}}function Ii(i,s){if(i&1&&(Jc(0,"ul",10),ND(1,ki,12,12,"li",15,mi),Xc()),i&2){let e=VD(2);gI(),xD(e.previousEntries());}}function Ni(i,s){if(i&1&&(Jc(0,"div",4)(1,"p",5),vw(2),Rw(3,"transloco"),Xc(),bD(4,xi,7,3,"div",6),bD(5,hi,6,4,"div",7),Jc(6,"div",8)(7,"h5"),vw(8),Rw(9,"transloco"),Xc(),bD(10,bi,3,3,"p",9)(11,Ii,3,0,"ul",10),Xc()()),i&2){let e=VD();gI(2),Ph(Ow(3,5,"step-list.availableParameters.hint")),gI(2),_D(e.inputEntries().length>0?4:-1),gI(),_D(e.subjectGroups().length>0?5:-1),gI(3),Ph(Ow(9,7,"step-list.availableParameters.previous")),gI(2),_D(e.previousEntries().length===0?10:11);}}var xn=(()=>{class i{constructor(){this.transloco=C(Ve$1),this.inputSchema=$0([]),this.appliesTo=$0("none"),this.previousSteps=$0([]),this.expanded=qo(false),this.copiedToken=qo(null),this.inputEntries=Hw(()=>this.inputSchema().map(e=>({label:e.label.trim()||e.name,name:e.name.trim()})).filter(e=>e.name.length>0).map(e=>({label:e.label,token:qm(e.name)}))),this.subjectGroups=Hw(()=>Sy(this.appliesTo()).map(e=>({subjectType:e.subjectType,typeKey:`workflow-editor.subjectType.${e.subjectType}`,tokens:e.fields.map(n=>({field:n,token:qm(`subject.${n}`)}))}))),this.previousEntries=Hw(()=>this.previousSteps().map(({step:e,inLoop:n})=>{let t=e;return {name:t.name,id:t.id,inLoop:n,shape:ov(t),tokens:ky(t),actionLabel:Fi(t),isProvider:t.type==="provider_action",isInteraction:t.type==="interaction",isSubWorkflow:t.type==="sub_workflow"}}));}toggleExpanded(){this.expanded.update(e=>!e);}subjectTypeHeading(){return this.subjectGroups().map(e=>this.transloco.translate(e.typeKey)).join(", ")}copyToken(e){let n=navigator.clipboard;if(!n?.writeText){this.copiedToken.set(e);return}n.writeText(e).then(()=>this.copiedToken.set(e),()=>this.copiedToken.set(e));}static{this.\u0275fac=function(n){return new(n||i)};}static{this.\u0275cmp=QE({type:i,selectors:[["app-available-parameters"]],inputs:{inputSchema:[1,"inputSchema"],appliesTo:[1,"appliesTo"],previousSteps:[1,"previousSteps"]},decls:8,vars:8,consts:[["data-testid","available-parameters",1,"available-parameters"],["type","button","data-testid","available-parameters-toggle",1,"panel-toggle",3,"click"],["aria-hidden","true",1,"chevron"],[1,"panel-title"],["data-testid","available-parameters-body",1,"panel-body"],[1,"hint"],["data-testid","available-parameters-inputs",1,"group"],["data-testid","available-parameters-subject",1,"group"],["data-testid","available-parameters-previous",1,"group"],["data-testid","available-parameters-no-previous",1,"hint"],[1,"previous-list"],[1,"entry-label"],["type","button",1,"param-token",3,"click"],["data-testid","available-parameters-subject-heading"],[1,"subject-type"],[1,"previous-entry"],[1,"previous-heading"],["data-testid","loop-overwrite-note",1,"loop-note"],[1,"token-row"],["data-testid","opaque-note",1,"hint"],["data-testid","sub-workflow-note",1,"hint"],["data-testid","no-output-note",1,"hint"],["type","button",1,"param-token",3,"copied"]],template:function(n,t){n&1&&(Jc(0,"section",0)(1,"button",1),mh("click",function(){return t.toggleExpanded()}),Jc(2,"span",2),vw(3),Xc(),Jc(4,"span",3),vw(5),Rw(6,"transloco"),Xc()(),bD(7,Ni,12,9,"div",4),Xc()),n&2&&(Mh("expanded",t.expanded()),gI(),ah("aria-expanded",t.expanded()),gI(2),Ph(t.expanded()?"\u25BE":"\u25B8"),gI(2),Ph(Ow(6,6,"step-list.availableParameters.title")),gI(2),_D(t.expanded()?7:-1));},dependencies:[Kt],styles:[".available-parameters[_ngcontent-%COMP%]{margin:.85rem 0 .25rem;padding:.35rem .65rem;border:1px solid #e7e5e4;border-radius:.5rem;background:#fafaf9}.available-parameters.expanded[_ngcontent-%COMP%]{padding:.65rem .75rem .75rem}.panel-toggle[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.4rem;width:100%;margin:0;padding:.2rem 0;border:0;background:transparent;cursor:pointer;text-align:left;color:inherit}.chevron[_ngcontent-%COMP%]{color:#78716c;font-size:.85rem;width:.9rem}.available-parameters[_ngcontent-%COMP%] h5[_ngcontent-%COMP%]{margin:0 0 .35rem}.panel-title[_ngcontent-%COMP%]{font-size:.95rem;font-weight:600}.panel-body[_ngcontent-%COMP%]{margin-top:.5rem}.available-parameters[_ngcontent-%COMP%] h5[_ngcontent-%COMP%]{font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;color:#57534e}.hint[_ngcontent-%COMP%]{margin:0 0 .5rem;font-size:.8rem;color:#78716c}.group[_ngcontent-%COMP%]{margin-top:.65rem}.group[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem .5rem;align-items:center}.previous-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.65rem}.previous-entry[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.3rem}.previous-heading[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:.35rem .65rem;align-items:baseline}.entry-label[_ngcontent-%COMP%]{font-size:.85rem;font-weight:600;color:#44403c}.loop-note[_ngcontent-%COMP%]{font-size:.75rem;color:#78716c}.subject-type[_ngcontent-%COMP%]{margin:.35rem 0 .2rem;font-size:.8rem;color:#57534e}.token-row[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:.35rem}.param-token[_ngcontent-%COMP%]{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;line-height:1.2;padding:.15rem .45rem;border:1px solid #d6d3d1;border-radius:.3rem;background:#fff;color:#1c1917;cursor:pointer}.param-token[_ngcontent-%COMP%]:hover{border-color:#a8a29e}.param-token.copied[_ngcontent-%COMP%]{border-color:#57534e;background:#e7e5e4}"]});}}return i})();function Fi(i){return i.type!=="provider_action"?"":i.extendedAction?.actionId??i.action}function Vi(i,s){if(i&1){let e=LD();_i$1(0,"div",1)(1,"input",3),Vh("ngModelChange",function(t){let o=Pu(e).$implicit;return ww(o.key,t)||(o.key=t),Lu(t)}),gh("ngModelChange",function(){Pu(e);let t=VD();return Lu(t.emitRows())}),Kc(),oE(),_i$1(2,"input",4),Vh("ngModelChange",function(t){let o=Pu(e).$implicit;return ww(o.value,t)||(o.value=t),Lu(t)}),gh("ngModelChange",function(){Pu(e);let t=VD();return Lu(t.emitRows())}),Kc(),oE(),_i$1(3,"button",5),gh("click",function(){let t=Pu(e).$index,o=VD();return Lu(o.remove(t))}),vw(4,"Remove"),Kc()();}if(i&2){let e=s.$implicit;gI(),jh("ngModel",e.key),sE(),gI(),jh("ngModel",e.value),sE();}}var vn=(()=>{class i{constructor(){this.rows=U0.required();}add(){this.rows.update(e=>[...e,{key:"",value:""}]);}remove(e){this.rows.update(n=>n.filter((t,o)=>o!==e));}emitRows(){this.rows.set(this.rows().map(e=>r({},e)));}static{this.\u0275fac=function(n){return new(n||i)};}static{this.\u0275cmp=QE({type:i,selectors:[["app-key-value-editor"]],inputs:{rows:[1,"rows"]},outputs:{rows:"rowsChange"},decls:5,vars:0,consts:[[1,"kv-editor"],[1,"kv-row"],["nz-button","","nzType","dashed","type","button",3,"click"],["nz-input","","placeholder","key",3,"ngModelChange","ngModel"],["nz-input","","placeholder","value",3,"ngModelChange","ngModel"],["nz-button","","nzType","default","type","button",3,"click"]],template:function(n,t){n&1&&(_i$1(0,"div",0),ND(1,Vi,5,2,"div",1,MD),_i$1(3,"button",2),gh("click",function(){return t.add()}),vw(4,"Add param"),Kc()()),n&2&&(gI(),xD(t.rows()));},dependencies:[n8,S4,J6,k3,dd,zc,t7,y7,ai$1,z],styles:[".kv-editor[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.kv-row[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr auto;gap:.5rem;align-items:center}"]});}}return i})();function Ve(i,s){let e=Jm(i);return B(s,e).map(n=>n.id)}function zn(i,s){return Ve(i,s)[0]??""}function wn(i,s,e){let n=Ve(s,e);if(n.includes(i))return null;let t=(e?.providerInstances??[]).find(o=>o.id===i);return t?py(t)&&Jm(s).includes(t.subjectType)?null:{required:i,active:n[0]??t.id}:{required:i,active:n[0]??""}}function Sn(i,s,e){if(i.extendedAction?.providerId){let n=wn(i.extendedAction.providerId,s,e);if(n)return n}return i.target?.source?wn(i.target.source,i.target.subjectType,e):null}function yn(i){return i.extendedAction!=null}var Di=()=>[];function Bi(i,s){return this.trackKey(s)}var Ae=(i,s)=>s.id,Li=(i,s)=>s.actionId,Oi=(i,s)=>s.name;function Wi(i,s){if(i&1&&(lh(0,"nz-option",15),Rw(1,"transloco")),i&2){let e=s.$implicit,n=VD(3);ch("nzValue",e)("nzLabel",Ow(1,2,n.stepTypeKey(e)));}}function ji(i,s){if(i&1&&(lh(0,"nz-option",15),Rw(1,"transloco")),i&2){let e=s.$implicit,n=VD(4);ch("nzValue",e)("nzLabel",Ow(1,2,n.outputFormatKey(e)));}}function Ri(i,s){if(i&1&&lh(0,"nz-option",15),i&2){let e=s.$implicit;ch("nzValue",e.id)("nzLabel",e.displayName);}}function Ki(i,s){if(i&1){let e=LD();_i$1(0,"nz-tag",27),gh("nzOnClose",function(){let t=Pu(e).$implicit,o=VD(3).$index,d=VD();return Lu(d.removeContextFile(o,t.id))}),vw(1),Kc();}if(i&2){let e=s.$implicit;ah("data-testid","context-file-chip-"+e.id),gI(),nl(" ",e.name," ");}}function Hi(i,s){i&1&&(_i$1(0,"span",25),vw(1),Rw(2,"transloco"),Kc()),i&2&&(gI(),Ph(Ow(2,1,"step-list.contextFilesEmpty")));}function qi(i,s){if(i&1){let e=LD();_i$1(0,"label",16)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i$1(4,"textarea",21),gh("ngModelChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.patchAt(o,{objective:t}))}),Kc(),oE(),Kc(),_i$1(5,"div",16)(6,"span"),vw(7),Rw(8,"transloco"),Kc(),_i$1(9,"nz-select",22),gh("ngModelChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.patchAt(o,{outputFormat:t}))}),ND(10,ji,2,4,"nz-option",15,SD),Kc(),oE(),Kc(),_i$1(12,"div",16)(13,"span"),vw(14),Rw(15,"transloco"),Kc(),_i$1(16,"nz-select",22),gh("ngModelChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.setAgentInstance(o,t))}),lh(17,"nz-option",15),Rw(18,"transloco"),ND(19,Ri,1,2,"nz-option",15,Ae),Kc(),oE(),Kc(),_i$1(21,"div",16)(22,"span"),vw(23),Rw(24,"transloco"),Kc(),_i$1(25,"div",23),ND(26,Ki,2,2,"nz-tag",24,Ae,false,Hi,3,3,"span",25),Kc(),_i$1(29,"button",26),gh("click",function(){Pu(e);let t=VD(2).$index,o=VD();return Lu(o.openContextFilePicker(t))}),vw(30),Rw(31,"transloco"),Kc()();}if(i&2){let e=VD(2),n=e.$implicit,t=e.$index,o=VD();gI(),ah("data-testid","agent-prompt-label-"+t),gI(),Ph(Ow(3,17,"step-list.objective")),gI(2),ch("ngModel",o.asAgent(n).objective),ah("data-testid","agent-objective-"+t),sE(),gI(3),Ph(Ow(8,19,"step-list.outputFormat.label")),gI(2),ch("ngModel",o.asAgent(n).outputFormat),ah("data-testid","agent-output-"+t),sE(),gI(),xD(o.outputFormats),gI(4),Ph(Ow(15,21,"step-list.agentInstance.label")),gI(2),ch("ngModel",o.asAgent(n).agentInstanceId??null),ah("data-testid","agent-instance-"+t),sE(),gI(),ch("nzValue",null)("nzLabel",Ow(18,23,"step-list.agentInstance.default")),gI(2),xD(o.agentInstanceOptions()),gI(2),ah("data-testid","agent-context-files-"+t),gI(2),Ph(Ow(24,25,"step-list.contextFiles")),gI(3),xD(o.selectedContextFiles(o.asAgent(n))),gI(3),ah("data-testid","select-context-files-"+t),gI(),nl(" ",Ow(31,27,"step-list.selectContextFiles")," ");}}function Gi(i,s){if(i&1&&(lh(0,"nz-option",15),Rw(1,"transloco")),i&2){let e=s.$implicit,n=VD(4);ch("nzValue",e)("nzLabel",Ow(1,2,n.interactionKey(e)));}}function Ui(i,s){if(i&1){let e=LD();_i$1(0,"div",16)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i$1(4,"nz-select",22),gh("ngModelChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.patchAt(o,{interaction:t}))}),ND(5,Gi,2,4,"nz-option",15,SD),Kc(),oE(),Kc();}if(i&2){let e=VD(2),n=e.$implicit,t=e.$index,o=VD();gI(2),Ph(Ow(3,3,"step-list.interaction.label")),gI(2),ch("ngModel",o.asInteraction(n).interaction),ah("data-testid","interaction-type-"+t),sE(),gI(),xD(o.interactions);}}function Zi(i,s){if(i&1){let e=LD();_i$1(0,"label",16)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i$1(4,"textarea",21),gh("ngModelChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.patchAt(o,{command:t}))}),Kc(),oE(),Kc();}if(i&2){let e=VD(2),n=e.$implicit,t=e.$index,o=VD();gI(2),Ph(Ow(3,3,"step-list.command")),gI(2),ch("ngModel",o.asShell(n).command),ah("data-testid","shell-command-"+t),sE();}}function Qi(i,s){if(i&1&&(lh(0,"nz-option",15),Rw(1,"transloco")),i&2){let e=s.$implicit,n=VD(4);ch("nzValue",e)("nzLabel",Ow(1,2,n.gitOperationKey(e)));}}function Yi(i,s){if(i&1){let e=LD();_i$1(0,"label",16)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i$1(4,"input",18),gh("ngModelChange",function(t){Pu(e);let o=VD(4).$index,d=VD();return Lu(d.setGitParam(o,"baseBranch",t))}),Kc(),oE(),Kc(),_i$1(5,"label",16)(6,"span"),vw(7),Rw(8,"transloco"),Kc(),_i$1(9,"input",18),gh("ngModelChange",function(t){Pu(e);let o=VD(4).$index,d=VD();return Lu(d.setGitParam(o,"branchName",t))}),Kc(),oE(),Kc();}if(i&2){let e=VD(4),n=e.$implicit,t=e.$index,o=VD();gI(2),Ph(Ow(3,6,"step-list.createWorktree.baseBranch")),gI(2),ch("ngModel",o.gitParam(o.asGit(n),"baseBranch")),ah("data-testid","git-base-branch-"+t),sE(),gI(3),Ph(Ow(8,8,"step-list.createWorktree.branchName")),gI(2),ch("ngModel",o.gitParam(o.asGit(n),"branchName")),ah("data-testid","git-branch-name-"+t),sE();}}function Ji(i,s){if(i&1){let e=LD();_i$1(0,"label",16)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i$1(4,"input",18),gh("ngModelChange",function(t){Pu(e);let o=VD(4).$index,d=VD();return Lu(d.setGitParam(o,"branch",t))}),Kc(),oE(),Kc();}if(i&2){let e=VD(4),n=e.$implicit,t=e.$index,o=VD();gI(2),Ph(Ow(3,3,"step-list.createWorktree.branch")),gI(2),ch("ngModel",o.gitParam(o.asGit(n),"branch")),ah("data-testid","git-branch-"+t),sE();}}function Xi(i,s){if(i&1){let e=LD();_i$1(0,"div",16)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i$1(4,"nz-select",22),gh("ngModelChange",function(t){Pu(e);let o=VD(3).$index,d=VD();return Lu(d.setCreateWorktreeMode(o,t))}),lh(5,"nz-option",28),Rw(6,"transloco"),lh(7,"nz-option",29),Rw(8,"transloco"),Kc(),oE(),Kc(),_i$1(9,"label",16)(10,"span"),vw(11),Rw(12,"transloco"),Kc(),_i$1(13,"input",18),gh("ngModelChange",function(t){Pu(e);let o=VD(3).$index,d=VD();return Lu(d.setGitParam(o,"repoPath",t))}),Kc(),oE(),Kc(),bD(14,Yi,10,10)(15,Ji,5,5,"label",16);}if(i&2){let e=VD(3),n=e.$implicit,t=e.$index,o=VD();gI(2),Ph(Ow(3,9,"step-list.createWorktree.mode")),gI(2),ch("ngModel",o.createWorktreeMode(o.asGit(n))),ah("data-testid","git-worktree-mode-"+t),sE(),gI(),ch("nzLabel",Ow(6,11,"step-list.createWorktree.newBranch")),gI(2),ch("nzLabel",Ow(8,13,"step-list.createWorktree.existingBranch")),gI(4),Ph(Ow(12,15,"step-list.createWorktree.repoPath")),gI(2),ch("ngModel",o.gitParam(o.asGit(n),"repoPath")),ah("data-testid","git-repo-path-"+t),sE(),gI(),_D(o.createWorktreeMode(o.asGit(n))==="new-branch"?14:15);}}function eo(i,s){if(i&1){let e=LD();_i$1(0,"div",16)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i$1(4,"app-key-value-editor",30),gh("rowsChange",function(t){Pu(e);let o=VD(3),d=o.$implicit,A=o.$index,K=VD();return Lu(K.onParamRowsChange(A,d,t))}),Kc()();}if(i&2){let e=VD(3).$implicit,n=VD();gI(2),Ph(Ow(3,2,"step-list.params")),gI(2),ch("rows",n.paramRows(e));}}function to(i,s){if(i&1){let e=LD();_i$1(0,"div",16)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i$1(4,"nz-select",22),gh("ngModelChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.patchAt(o,{operation:t}))}),ND(5,Qi,2,4,"nz-option",15,SD),Kc(),oE(),Kc(),bD(7,Xi,16,17)(8,eo,5,4,"div",16);}if(i&2){let e=VD(2),n=e.$implicit,t=e.$index,o=VD();gI(2),Ph(Ow(3,4,"step-list.operation")),gI(2),ch("ngModel",o.asGit(n).operation),ah("data-testid","git-operation-"+t),sE(),gI(),xD(o.gitOperations),gI(2),_D(o.asGit(n).operation==="create_worktree"?7:8);}}function no(i,s){if(i&1&&lh(0,"nz-alert",31),i&2){let e=VD(3).$index;ch("nzMessage",s),ah("data-testid","extended-action-mismatch-"+e);}}function io(i,s){if(i&1&&(lh(0,"nz-option",15),Rw(1,"transloco")),i&2){let e=s.$implicit,n=VD(5);ch("nzValue",e)("nzLabel",Ow(1,2,n.subjectTypeKey(e)));}}function oo(i,s){if(i&1&&lh(0,"nz-option",15),i&2){let e=s.$implicit;ch("nzValue",e.id)("nzLabel",e.displayName);}}function ro(i,s){if(i&1){let e=LD();_i$1(0,"div",16)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i$1(4,"nz-select",22),gh("ngModelChange",function(t){Pu(e);let o=VD(3).$index,d=VD();return Lu(d.setTargetSubjectType(o,t))}),ND(5,io,2,4,"nz-option",15,SD),Kc(),oE(),Kc(),_i$1(7,"div",16)(8,"span"),vw(9),Rw(10,"transloco"),Kc(),_i$1(11,"nz-select",35),Rw(12,"transloco"),gh("ngModelChange",function(t){Pu(e);let o=VD(3).$index,d=VD();return Lu(d.setTargetSource(o,t))}),ND(13,oo,1,2,"nz-option",15,Ae),Kc(),oE(),Kc(),_i$1(15,"label",16)(16,"span"),vw(17),Rw(18,"transloco"),Kc(),_i$1(19,"input",18),gh("ngModelChange",function(t){Pu(e);let o=VD(3).$index,d=VD();return Lu(d.setTargetSubjectId(o,t))}),Kc(),oE(),_i$1(20,"span",19),vw(21),Rw(22,"transloco"),Kc()();}if(i&2){let e=s,n=VD(3),t=n.$implicit,o=n.$index,d=VD();gI(2),Ph(Ow(3,11,"step-list.target.subjectType")),gI(2),ch("ngModel",e.subjectType),ah("data-testid","provider-action-target-type-"+o),sE(),gI(),xD(d.targetSubjectTypes),gI(4),Ph(Ow(10,13,"step-list.target.source")),gI(2),ch("ngModel",e.source||null)("nzPlaceHolder",Ow(12,15,"step-list.target.sourcePlaceholder")),ah("data-testid","provider-action-target-source-"+o),sE(),gI(2),xD(d.targetInstanceOptions(d.asProvider(t))),gI(4),Ph(Ow(18,17,"step-list.target.subjectId")),gI(2),ch("ngModel",e.subjectId),ah("data-testid","provider-action-target-id-"+o),sE(),gI(2),Ph(Ow(22,19,"step-list.target.subjectIdHint"));}}function ao(i,s){if(i&1&&lh(0,"nz-option",15),i&2){let e=s.$implicit,n=VD(5);ch("nzValue",e)("nzLabel",n.providerLabel(e));}}function so(i,s){if(i&1&&lh(0,"nz-option",15),i&2){let e=s.$implicit;ch("nzValue",e.actionId)("nzLabel",e.label);}}function lo(i,s){i&1&&(_i$1(0,"span",19),vw(1),Rw(2,"transloco"),Kc()),i&2&&(gI(),Ph(Ow(2,1,"step-list.extendedAction.empty")));}function po(i,s){i&1&&(_i$1(0,"span",36),vw(1,"*"),Kc());}function co(i,s){if(i&1&&lh(0,"nz-option",15),i&2){let e=s.$implicit;ch("nzValue",e)("nzLabel",e);}}function _o(i,s){if(i&1){let e=LD();_i$1(0,"nz-select",22),gh("ngModelChange",function(t){Pu(e);let o=VD().$implicit,d=VD(5).$index,A=VD();return Lu(A.setExtendedParam(d,o.name,t))}),ND(1,co,1,2,"nz-option",15,SD),Kc(),oE();}if(i&2){let e=VD().$implicit,n=VD(5),t=n.$implicit,o=n.$index,d=VD();ch("ngModel",d.extendedParamValue(d.asProvider(t),e.name)),ah("data-testid","extended-action-param-"+e.name+"-"+o),sE(),gI(),xD(e.options??Nw(2,Di));}}function mo(i,s){if(i&1){let e=LD();_i$1(0,"input",18),gh("ngModelChange",function(t){Pu(e);let o=VD().$implicit,d=VD(5).$index,A=VD();return Lu(A.setExtendedParam(d,o.name,t))}),Kc(),oE();}if(i&2){let e=VD().$implicit,n=VD(5),t=n.$implicit,o=n.$index,d=VD();ch("ngModel",d.extendedParamValue(d.asProvider(t),e.name)),ah("data-testid","extended-action-param-"+e.name+"-"+o),sE();}}function uo(i,s){if(i&1&&(_i$1(0,"label",16)(1,"span"),vw(2),bD(3,po,2,0,"span",36),Kc(),bD(4,_o,3,3,"nz-select",37)(5,mo,1,2,"input",38),Kc()),i&2){let e=s.$implicit;gI(2),nl(" ",e.label," "),gI(),_D(e.required?3:-1),gI(),_D(e.type==="select"?4:5);}}function xo(i,s){i&1&&ND(0,uo,6,3,"label",16,Oi),i&2&&xD(s.params);}function Co(i,s){if(i&1){let e=LD();_i$1(0,"div",16)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i$1(4,"nz-select",22),gh("ngModelChange",function(t){Pu(e);let o=VD(3).$index,d=VD();return Lu(d.setExtendedProvider(o,t))}),ND(5,ao,1,2,"nz-option",15,SD),Kc(),oE(),Kc(),_i$1(7,"div",16)(8,"span"),vw(9),Rw(10,"transloco"),Kc(),_i$1(11,"nz-select",35),Rw(12,"transloco"),gh("ngModelChange",function(t){Pu(e);let o=VD(3).$index,d=VD();return Lu(d.setExtendedAction(o,t))}),ND(13,so,1,2,"nz-option",15,Li),Kc(),oE(),bD(15,lo,3,3,"span",19),Kc(),bD(16,xo,2,0);}if(i&2){let e,n=VD(3),t=n.$implicit,o=n.$index,d=VD();gI(2),Ph(Ow(3,9,"step-list.extendedAction.provider")),gI(2),ch("ngModel",d.asProvider(t).extendedAction?.providerId),ah("data-testid","extended-action-provider-"+o),sE(),gI(),xD(d.extendedProviderOptions()),gI(4),Ph(Ow(10,11,"step-list.extendedAction.action")),gI(2),ch("ngModel",d.asProvider(t).extendedAction?.actionId||null)("nzPlaceHolder",Ow(12,13,"step-list.extendedAction.none")),ah("data-testid","extended-action-id-"+o),sE(),gI(2),xD(d.extendedDescriptors(d.asProvider(t))),gI(2),_D(d.extendedDescriptors(d.asProvider(t)).length===0?15:-1),gI(),_D((e=d.selectedExtendedDescriptor(d.asProvider(t)))?16:-1,e);}}function fo(i,s){if(i&1&&(lh(0,"nz-option",15),Rw(1,"transloco")),i&2){let e=s.$implicit,n=VD(5);ch("nzValue",e)("nzLabel",Ow(1,2,n.providerActionKey(e)));}}function go(i,s){if(i&1){let e=LD();_i$1(0,"div",16)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i$1(4,"nz-select",22),gh("ngModelChange",function(t){Pu(e);let o=VD(3).$index,d=VD();return Lu(d.patchAt(o,{action:t}))}),ND(5,fo,2,4,"nz-option",15,SD),Kc(),oE(),Kc(),_i$1(7,"div",16)(8,"span"),vw(9),Rw(10,"transloco"),Kc(),_i$1(11,"app-key-value-editor",30),gh("rowsChange",function(t){Pu(e);let o=VD(3),d=o.$implicit,A=o.$index,K=VD();return Lu(K.onParamRowsChange(A,d,t))}),Kc()();}if(i&2){let e=VD(3),n=e.$implicit,t=e.$index,o=VD();gI(2),Ph(Ow(3,5,"step-list.action")),gI(2),ch("ngModel",o.asProvider(n).action),ah("data-testid","provider-action-"+t),sE(),gI(),xD(o.providerActions),gI(4),Ph(Ow(10,7,"step-list.params")),gI(2),ch("rows",o.paramRows(n));}}function ho(i,s){if(i&1){let e=LD();bD(0,no,1,2,"nz-alert",31),_i$1(1,"label",32),gh("ngModelChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.setTargetEnabled(o,t))}),vw(2),Rw(3,"transloco"),Kc(),oE(),bD(4,ro,23,21),_i$1(5,"div",16)(6,"span"),vw(7),Rw(8,"transloco"),Kc(),_i$1(9,"nz-select",22),gh("ngModelChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.setActionMode(o,t))}),lh(10,"nz-option",33),Rw(11,"transloco"),lh(12,"nz-option",34),Rw(13,"transloco"),Kc(),oE(),Kc(),bD(14,Co,17,15)(15,go,12,9);}if(i&2){let e,n,t=VD(2),o=t.$implicit,d=t.$index,A=VD();_D((e=A.mismatchWarning(A.asProvider(o)))?0:-1,e),gI(),ch("ngModel",A.hasTarget(o)),ah("data-testid","provider-action-target-toggle-"+d),sE(),gI(),nl(" ",Ow(3,11,"step-list.target.toggle")," "),gI(2),_D((n=A.asProvider(o).target)?4:-1,n),gI(3),Ph(Ow(8,13,"step-list.extendedAction.mode")),gI(2),ch("ngModel",A.isExtended(o)?"extended":"portable"),ah("data-testid","provider-action-mode-"+d),sE(),gI(),ch("nzLabel",Ow(11,15,"step-list.extendedAction.portable")),gI(2),ch("nzLabel",Ow(13,17,"step-list.extendedAction.extended")),gI(2),_D(A.isExtended(o)?14:15);}}function bo(i,s){if(i&1&&lh(0,"nz-option",15),i&2){let e=s.$implicit,n=VD(4);ch("nzValue",e.id)("nzLabel",n.workflowOptionLabel(e));}}function vo(i,s){if(i&1){let e=LD();_i$1(0,"div",16)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i$1(4,"nz-select",39),gh("ngModelChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.patchAt(o,{workflowId:t}))}),ND(5,bo,1,2,"nz-option",15,Ae),Kc(),oE(),Kc(),_i$1(7,"p",16)(8,"span"),vw(9),Rw(10,"transloco"),Kc(),_i$1(11,"code",40),vw(12,"selection"),Kc()();}if(i&2){let e=VD(2),n=e.$implicit,t=e.$index,o=VD();gI(2),Ph(Ow(3,4,"step-list.workflowId")),gI(2),ch("ngModel",o.asSubWorkflow(n).workflowId),ah("data-testid","sub-workflow-id-"+t),sE(),gI(),xD(o.availableWorkflows()),gI(4),Ph(Ow(10,6,"step-list.forEach"));}}function wo(i,s){if(i&1&&(lh(0,"nz-option",15),Rw(1,"transloco")),i&2){let e=s.$implicit,n=VD(4);ch("nzValue",e)("nzLabel",Ow(1,2,n.untilTypeKey(e)));}}function zo(i,s){if(i&1){let e=LD();_i$1(0,"label",16)(1,"span"),vw(2),Rw(3,"transloco"),Kc(),_i$1(4,"input",18),gh("ngModelChange",function(t){Pu(e);let o=VD(3).$index,d=VD();return Lu(d.setUntilValue(o,t))}),Kc(),oE(),Kc();}if(i&2){let e=VD(3),n=e.$implicit,t=e.$index,o=VD();gI(2),Ph(Ow(3,3,"step-list.until.value")),gI(2),ch("ngModel",o.untilValue(o.asLoop(n))),ah("data-testid","loop-until-value-"+t),sE();}}function So(i,s){if(i&1&&(lh(0,"nz-option",15),Rw(1,"transloco")),i&2){let e=s.$implicit,n=VD(4);ch("nzValue",e)("nzLabel",Ow(1,2,n.onMaxIterationsKey(e)));}}function yo(i,s){if(i&1){let e=LD();_i$1(0,"div",41)(1,"div",16)(2,"span"),vw(3),Rw(4,"transloco"),Kc(),_i$1(5,"nz-select",22),gh("ngModelChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.setUntilType(o,t))}),ND(6,wo,2,4,"nz-option",15,SD),Kc(),oE(),Kc(),_i$1(8,"label",16)(9,"span"),vw(10),Rw(11,"transloco"),Kc(),_i$1(12,"input",18),gh("ngModelChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.setUntilField(o,"stepId",t))}),Kc(),oE(),Kc(),_i$1(13,"label",16)(14,"span"),vw(15),Rw(16,"transloco"),Kc(),_i$1(17,"input",18),gh("ngModelChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.setUntilField(o,"field",t))}),Kc(),oE(),Kc(),bD(18,zo,5,5,"label",16),_i$1(19,"label",16)(20,"span"),vw(21),Rw(22,"transloco"),Kc(),_i$1(23,"nz-input-number",42),gh("ngModelChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.patchAt(o,{maxIterations:t??0}))}),Kc(),oE(),Kc(),_i$1(24,"div",16)(25,"span"),vw(26),Rw(27,"transloco"),Kc(),_i$1(28,"nz-select",22),gh("ngModelChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.patchAt(o,{onMaxIterations:{action:t}}))}),ND(29,So,2,4,"nz-option",15,SD),Kc(),oE(),Kc()(),_i$1(31,"div",43)(32,"h4"),vw(33),Rw(34,"transloco"),Kc(),_i$1(35,"app-step-list",44),gh("stepsChange",function(t){Pu(e);let o=VD(2).$index,d=VD();return Lu(d.setNestedSteps(o,t))}),Kc()();}if(i&2){let e=VD(2),n=e.$implicit,t=e.$index,o=VD();gI(3),Ph(Ow(4,26,"step-list.until.type")),gI(2),ch("ngModel",o.asLoop(n).until.type),ah("data-testid","loop-until-type-"+t),sE(),gI(),xD(o.untilTypes),gI(4),Ph(Ow(11,28,"step-list.until.stepId")),gI(2),ch("ngModel",o.asLoop(n).until.stepId),ah("data-testid","loop-until-stepId-"+t),sE(),gI(3),Ph(Ow(16,30,"step-list.until.field")),gI(2),ch("ngModel",o.asLoop(n).until.field),ah("data-testid","loop-until-field-"+t),sE(),gI(),_D(o.asLoop(n).until.type==="field_equals"?18:-1),gI(3),Ph(Ow(22,32,"step-list.maxIterations")),gI(2),ch("ngModel",o.asLoop(n).maxIterations)("nzMin",0),ah("data-testid","loop-max-"+t),sE(),gI(3),Ph(Ow(27,34,"step-list.onMaxIterations.action")),gI(2),ch("ngModel",o.asLoop(n).onMaxIterations.action),ah("data-testid","loop-on-max-"+t),sE(),gI(),xD(o.maxIterationActions),gI(2),ah("data-testid","loop-nested-"+t),gI(2),Ph(Ow(34,36,"step-list.nestedSteps")),gI(2),ch("steps",o.asLoop(n).steps)("rootSteps",o.effectiveRoot())("availableWorkflows",o.availableWorkflows())("appliesTo",o.appliesTo())("inputSchema",o.inputSchema())("settings",o.settings())("depth",o.depth()+1);}}function Mo(i,s){if(i&1){let e=LD();_i$1(0,"div",12)(1,"div",13)(2,"nz-select",14),gh("ngModelChange",function(t){Pu(e);let o=VD().$index,d=VD();return Lu(d.changeType(o,t))}),ND(3,Wi,2,4,"nz-option",15,SD),Kc(),oE(),Kc(),_i$1(5,"label",16)(6,"span"),vw(7),Rw(8,"transloco"),Kc(),_i$1(9,"input",17),gh("ngModelChange",function(t){Pu(e);let o=VD().$index,d=VD();return Lu(d.onNameChange(o,t))}),Kc(),oE(),Kc(),_i$1(10,"label",16)(11,"span"),vw(12),Rw(13,"transloco"),Kc(),_i$1(14,"input",18),gh("ngModelChange",function(t){Pu(e);let o=VD().$index,d=VD();return Lu(d.onIdChange(o,t))}),Kc(),oE(),_i$1(15,"p",19),vw(16),Rw(17,"transloco"),Kc()(),lh(18,"app-available-parameters",20),bD(19,qi,32,29)(20,Ui,7,5,"div",16)(21,Zi,5,5,"label",16)(22,to,9,6)(23,ho,16,19)(24,vo,13,8)(25,yo,36,38),Kc();}if(i&2){let e,n=VD(),t=n.$implicit,o=n.$index,d=VD();ah("data-testid","step-body-"+o),gI(2),ch("ngModel",t.type),ah("data-testid","step-type-"+o),sE(),gI(),xD(d.stepTypes),gI(4),Ph(Ow(8,14,"step-list.name")),gI(2),ch("ngModel",t.name),ah("data-testid","step-name-"+o),sE(),gI(3),Ph(Ow(13,16,"step-list.id")),gI(2),ch("ngModel",t.id),ah("data-testid","step-id-"+o),sE(),gI(2),Ph(Ow(17,18,"step-list.idHint")),gI(2),ch("inputSchema",d.inputSchema())("appliesTo",d.appliesTo())("previousSteps",d.previousFor(t)),gI(),_D((e=t.type)==="agent"?19:e==="interaction"?20:e==="shell"?21:e==="git"?22:e==="provider_action"?23:e==="sub_workflow"?24:e==="loop"?25:-1);}}function To(i,s){if(i&1){let e=LD();_i$1(0,"nz-card",3)(1,"div",4),gh("click",function(){let t=Pu(e).$implicit,o=VD();return Lu(o.toggleExpanded(t))}),_i$1(2,"div",5)(3,"span",6),vw(4),Kc(),_i$1(5,"span",7),vw(6),Rw(7,"transloco"),Kc(),_i$1(8,"span",8),vw(9),Rw(10,"transloco"),Kc()(),_i$1(11,"div",9),gh("click",function(t){return t.stopPropagation()}),_i$1(12,"button",10),gh("click",function(){let t=Pu(e).$index,o=VD();return Lu(o.moveUp(t))}),vw(13),Rw(14,"transloco"),Kc(),_i$1(15,"button",10),gh("click",function(){let t=Pu(e).$index,o=VD();return Lu(o.moveDown(t))}),vw(16),Rw(17,"transloco"),Kc(),_i$1(18,"button",11),gh("click",function(){let t=Pu(e).$index,o=VD();return Lu(o.removeStep(t))}),vw(19),Rw(20,"transloco"),Kc()()(),bD(21,Mo,26,20,"div",12),Kc();}if(i&2){let e=s.$implicit,n=s.$index,t=VD();Mh("step-card-expanded",t.isExpanded(e)),ah("data-testid","step-card-"+n),gI(),ah("data-testid","step-header-"+n),gI(3),Ph(t.isExpanded(e)?"\u25BE":"\u25B8"),gI(),ah("data-testid","step-header-name-"+n),gI(),nl(" ",e.name||Ow(7,18,"step-list.unnamed")," "),gI(2),ah("data-testid","step-type-label-"+n),gI(),nl(" ",Ow(10,20,t.stepTypeKey(e.type))," "),gI(3),ch("disabled",n===0),ah("data-testid","move-up-"+n),gI(),nl(" ",Ow(14,22,"step-list.moveUp")," "),gI(2),ch("disabled",n===t.steps().length-1),ah("data-testid","move-down-"+n),gI(),nl(" ",Ow(17,24,"step-list.moveDown")," "),gI(2),ah("data-testid","remove-"+n),gI(),nl(" ",Ow(20,26,"step-list.remove")," "),gI(2),_D(t.isExpanded(e)?21:-1);}}var Mn=(()=>{class i{constructor(){this.transloco=C(Ve$1),this.language=C(O),this.providersApi=C($$1),this.contextFilesApi=C(ze),this.modal=C(Xt),this.steps=$0.required(),this.rootSteps=$0([]),this.availableWorkflows=$0([]),this.appliesTo=$0("none"),this.inputSchema=$0([]),this.settings=$0(my),this.depth=$0(0),this.stepsChange=B0(),this.stepTypes=y,this.outputFormats=["questionnaire","confirmation","comment_suggestions","free_text"],this.interactions=["questionnaire","confirmation"],this.gitOperations=["create_worktree","checkout","create_branch","commit","push"],this.providerActions=["get_subject","get_comments","post_comment","update_status","get_content"],this.untilTypes=["field_empty","field_equals"],this.maxIterationActions=["fail","continue","ask_human"],this.expandedKey=qo(null),this.contextFiles=qo([]),this.paramRowsByStepKey=new Map,this.actionsByProvider=new Map,this.loadingActions=new Set,this.targetSubjectTypes=F,this.contextFilesApi.list().pipe(ue()).subscribe({next:e=>this.contextFiles.set(e),error:()=>this.contextFiles.set([])}),rd(()=>{for(let e of this.steps())e.type==="provider_action"&&e.extendedAction?.providerId&&this.ensureActionsLoaded(e.extendedAction.providerId);});}stepTypeKey(e){return `step-list.stepType.${e}`}outputFormatKey(e){return `step-list.outputFormat.${e}`}interactionKey(e){return `step-list.interaction.${e}`}gitOperationKey(e){return `step-list.gitOperation.${e}`}providerActionKey(e){return `step-list.providerAction.${e}`}untilTypeKey(e){return `step-list.untilType.${e}`}onMaxIterationsKey(e){return `step-list.onMaxIterations.${e}`}workflowOptionLabel(e){return this.language.currentLang(),this.transloco.translate("step-list.workflowOption",{name:e.name,id:e.id})}effectiveRoot(){let e=this.rootSteps();return e.length>0?e:this.steps()}previousFor(e){return zy(this.effectiveRoot(),e)}trackKey(e){return e._key}isExpanded(e){return this.expandedKey()===e._key}toggleExpanded(e){this.expandedKey.update(n=>n===e._key?null:e._key);}addStep(){this.emit([...this.steps(),h("agent")]);}removeStep(e){let n=this.steps()[e];n&&this.paramRowsByStepKey.delete(n._key),this.emit(this.steps().filter((t,o)=>o!==e));}moveUp(e){if(e<=0)return;let n=[...this.steps()],t=n[e-1];n[e-1]=n[e],n[e]=t,this.emit(n);}moveDown(e){if(e>=this.steps().length-1)return;let n=[...this.steps()],t=n[e+1];n[e+1]=n[e],n[e]=t,this.emit(n);}changeType(e,n){let t=this.steps()[e];if(!t||t.type===n)return;this.paramRowsByStepKey.delete(t._key);let o=h(n,{id:t.id,name:t.name,idAutoSync:t._idAutoSync,key:t._key});this.replaceAt(e,o);}patchAt(e,n){let t=this.steps()[e];t&&this.replaceAt(e,r(r({},t),n));}onNameChange(e,n){let t=this.steps()[e];t&&this.replaceAt(e,E(t,n,this.effectiveRoot()));}onIdChange(e,n){let t=this.steps()[e];t&&this.replaceAt(e,P(t,n));}setNestedSteps(e,n){let t=this.steps()[e];!t||t.type!=="loop"||this.replaceAt(e,s(r({},t),{steps:n}));}asAgent(e){return e}asInteraction(e){return e}asShell(e){return e}asGit(e){return e}createWorktreeMode(e){return e.params?.mode==="existing-branch"?"existing-branch":"new-branch"}gitParam(e,n){let t=e.params?.[n];return typeof t=="string"?t:""}setGitParam(e,n,t){let o=this.steps()[e];!o||o.type!=="git"||(this.paramRowsByStepKey.delete(o._key),this.patchAt(e,{params:s(r({},o.params),{[n]:t})}));}setCreateWorktreeMode(e,n){let t=this.steps()[e];if(!t||t.type!=="git")return;let o=this.gitParam(t,"repoPath");if(this.paramRowsByStepKey.delete(t._key),n==="existing-branch"){this.patchAt(e,{params:{mode:"existing-branch",repoPath:o,branch:this.gitParam(t,"branch")||this.gitParam(t,"branchName")}});return}this.patchAt(e,{params:{repoPath:o,baseBranch:this.gitParam(t,"baseBranch"),branchName:this.gitParam(t,"branchName")||this.gitParam(t,"branch")}});}asProvider(e){return e}asSubWorkflow(e){return e}asLoop(e){return e}paramRows(e){let n=this.paramRowsByStepKey.get(e._key);if(!n){let t=e.type==="git"||e.type==="provider_action"?e.params:void 0;n=A(t),this.paramRowsByStepKey.set(e._key,n);}return n}onParamRowsChange(e,n,t){this.paramRowsByStepKey.set(n._key,t),this.patchAt(e,{params:j(t)});}isExtended(e){return e.type==="provider_action"&&yn(this.asProvider(e))}setActionMode(e,n){let t=this.asProvider(this.steps()[e]);if(n==="portable"){let d=t,{extendedAction:A}=d,K=t$1(d,["extendedAction"]);this.replaceAt(e,K);return}let o=zn(this.appliesTo(),this.settings());this.patchAt(e,{extendedAction:{providerId:o,actionId:"",params:{}}}),this.ensureActionsLoaded(o);}extendedProviderOptions(){return Ve(this.appliesTo(),this.settings())}providerLabel(e){return (this.settings().providerInstances??[]).find(t=>t.id===e)?.displayName||e}agentInstanceOptions(){return (this.settings().providerInstances??[]).filter(e=>e.kind==="agent")}setAgentInstance(e,n){this.patchAt(e,{agentInstanceId:n||void 0});}selectedContextFiles(e){let n=e.contextFileIds??[],t=this.contextFiles();return n.map(o=>t.find(d=>d.id===o)??{id:o,name:o,tier:"user",path:""})}removeContextFile(e,n){let t=this.asAgent(this.steps()[e]);this.patchAt(e,{contextFileIds:(t.contextFileIds??[]).filter(o=>o!==n)});}openContextFilePicker(e){let n=this.asAgent(this.steps()[e]),t=this.modal.create({nzTitle:this.transloco.translate("context-files.selectTitle"),nzContent:St,nzData:{selectionMode:true,selectedIds:[...n.contextFileIds??[]]},nzWidth:800,nzOnOk:()=>{let o=t.getContentComponent();this.patchAt(e,{contextFileIds:o.currentSelectedIds()}),this.contextFilesApi.list().subscribe({next:d=>this.contextFiles.set(d)});}});}setExtendedProvider(e,n){this.patchAt(e,{extendedAction:{providerId:n,actionId:"",params:{}}}),this.ensureActionsLoaded(n);}setExtendedAction(e,n){let t=this.asProvider(this.steps()[e]),o=this.extendedDescriptors(t).find(d=>d.actionId===n);this.patchAt(e,{extendedAction:{providerId:t.extendedAction?.providerId??"",actionId:n,params:o?Eo(o):{}}});}setExtendedParam(e,n,t){let d=this.asProvider(this.steps()[e]).extendedAction;d&&this.patchAt(e,{extendedAction:s(r({},d),{params:s(r({},d.params??{}),{[n]:t})})});}extendedParamValue(e,n){let t=e.extendedAction?.params?.[n];return t==null?"":String(t)}extendedDescriptors(e){let n=e.extendedAction?.providerId;return n?this.actionsByProvider.get(n)??[]:[]}selectedExtendedDescriptor(e){let n=e.extendedAction?.actionId;if(n)return this.extendedDescriptors(e).find(t=>t.actionId===n)}mismatchWarning(e){let n=Sn(e,this.appliesTo(),this.settings());return n?(this.language.currentLang(),this.transloco.translate("step-list.extendedAction.mismatch",n)):null}hasTarget(e){return e.type==="provider_action"&&this.asProvider(e).target!=null}setTargetEnabled(e,n){let t=this.asProvider(this.steps()[e]);if(!n){let o=t,{target:d}=o,A=t$1(o,["target"]);this.replaceAt(e,A);return}this.patchAt(e,{target:{subjectType:"ticket",source:"",subjectId:""}});}setTargetSubjectType(e,n){let t=this.asProvider(this.steps()[e]);this.patchAt(e,{target:{subjectType:n,source:"",subjectId:t.target?.subjectId??""}});}setTargetSource(e,n){let t=this.asProvider(this.steps()[e]);t.target&&this.patchAt(e,{target:s(r({},t.target),{source:n})});}setTargetSubjectId(e,n){let t=this.asProvider(this.steps()[e]);t.target&&this.patchAt(e,{target:s(r({},t.target),{subjectId:n})});}targetInstanceOptions(e){let n=e.target?.subjectType;return n?B(this.settings(),[n]):[]}subjectTypeKey(e){return `workflow-editor.subjectType.${e}`}ensureActionsLoaded(e){!e||this.actionsByProvider.has(e)||this.loadingActions.has(e)||(this.loadingActions.add(e),this.providersApi.listExtendedActions(e).subscribe({next:n=>{this.loadingActions.delete(e),this.actionsByProvider.set(e,n);},error:()=>{this.loadingActions.delete(e),this.actionsByProvider.set(e,[]);}}));}setUntilType(e,n){let t=this.asLoop(this.steps()[e]);if(n==="field_empty"){this.patchAt(e,{until:{type:n,stepId:t.until.stepId,field:t.until.field}});return}let o=t.until.type==="field_equals"?t.until.value:"";this.patchAt(e,{until:{type:n,stepId:t.until.stepId,field:t.until.field,value:o}});}setUntilField(e,n,t){let o=this.asLoop(this.steps()[e]);this.patchAt(e,{until:s(r({},o.until),{[n]:t})});}setUntilValue(e,n){let t=this.asLoop(this.steps()[e]);t.until.type==="field_equals"&&this.patchAt(e,{until:s(r({},t.until),{value:n})});}untilValue(e){return e.until.type==="field_equals"?String(e.until.value??""):""}replaceAt(e,n){this.emit(this.steps().map((t,o)=>o===e?n:t));}emit(e){this.stepsChange.emit(e);}static{this.\u0275fac=function(n){return new(n||i)};}static{this.\u0275cmp=QE({type:i,selectors:[["app-step-list"]],inputs:{steps:[1,"steps"],rootSteps:[1,"rootSteps"],availableWorkflows:[1,"availableWorkflows"],appliesTo:[1,"appliesTo"],inputSchema:[1,"inputSchema"],settings:[1,"settings"],depth:[1,"depth"]},outputs:{stepsChange:"stepsChange"},decls:6,vars:4,consts:[["data-testid","step-list",1,"step-list"],[1,"step-card",3,"step-card-expanded"],["nz-button","","nzType","dashed","nzBlock","","type","button","data-testid","add-step",3,"click"],[1,"step-card"],[1,"step-header",3,"click"],[1,"step-header-meta"],["aria-hidden","true",1,"step-chevron"],[1,"step-name-preview"],[1,"step-type"],[1,"step-header-actions",3,"click"],["nz-button","","type","button",3,"click","disabled"],["nz-button","","nzDanger","","type","button",3,"click"],[1,"step-body"],[1,"step-toolbar"],[1,"type-select",3,"ngModelChange","ngModel"],[3,"nzValue","nzLabel"],[1,"field"],["nz-input","","required","",3,"ngModelChange","ngModel"],["nz-input","",3,"ngModelChange","ngModel"],[1,"hint"],[3,"inputSchema","appliesTo","previousSteps"],["nz-input","","rows","3",3,"ngModelChange","ngModel"],[3,"ngModelChange","ngModel"],[1,"context-file-chips"],["nzMode","closeable"],["data-testid","context-files-empty",1,"hint"],["nz-button","","type","button",3,"click"],["nzMode","closeable",3,"nzOnClose"],["nzValue","new-branch",3,"nzLabel"],["nzValue","existing-branch",3,"nzLabel"],[3,"rowsChange","rows"],["nzType","warning","nzShowIcon","",1,"mismatch",3,"nzMessage"],["nz-checkbox","",3,"ngModelChange","ngModel"],["nzValue","portable",3,"nzLabel"],["nzValue","extended",3,"nzLabel"],[3,"ngModelChange","ngModel","nzPlaceHolder"],[1,"required"],[3,"ngModel"],["nz-input","",3,"ngModel"],["nzShowSearch","","nzAllowClear","",3,"ngModelChange","ngModel"],["data-testid","sub-workflow-foreach"],[1,"field-grid"],[3,"ngModelChange","ngModel","nzMin"],[1,"nested"],[3,"stepsChange","steps","rootSteps","availableWorkflows","appliesTo","inputSchema","settings","depth"]],template:function(n,t){n&1&&(_i$1(0,"div",0),ND(1,To,22,28,"nz-card",1,Bi,true),_i$1(3,"button",2),gh("click",function(){return t.addStep()}),vw(4),Rw(5,"transloco"),Kc()()),n&2&&(ah("data-depth",t.depth()),gI(),xD(t.steps()),gI(3),nl(" ",Ow(5,2,"step-list.addStep")," "));},dependencies:[i,Mi$1,n8,S4,J6,$6,k3,dd,zc,t7,y7,Nt,Ke,Lt,ut,ai$1,z,mn,tt,Zn$1,Xb,V5,D5,Gn$1,un$1,W,I$1,vn,xn,Kt],styles:[".step-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.75rem}.step-card[_ngcontent-%COMP%]{background:#fff}.step-header[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;cursor:pointer;-webkit-user-select:none;user-select:none}.step-header-meta[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;min-width:0}.step-chevron[_ngcontent-%COMP%]{color:#78716c;font-size:.85rem;width:.9rem}.step-type[_ngcontent-%COMP%]{font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:#57534e;background:#f5f5f4;border-radius:999px;padding:.15rem .55rem}.step-name-preview[_ngcontent-%COMP%]{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.step-header-actions[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:.5rem}.step-body[_ngcontent-%COMP%]{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e7e5e4}.step-toolbar[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;align-items:center}.type-select[_ngcontent-%COMP%]{min-width:11rem}.field[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.35rem;margin:.65rem 0}.field[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{font-size:.85rem;color:#57534e}.field-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.5rem 1rem}.hint[_ngcontent-%COMP%]{margin:0;font-size:.8rem;color:#78716c}.mismatch[_ngcontent-%COMP%]{margin:.5rem 0}.required[_ngcontent-%COMP%]{color:#b91c1c}.nested[_ngcontent-%COMP%]{margin-top:.75rem;padding:.75rem;border-left:3px solid #d6d3d1;background:#fafaf9}.nested[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{margin:0 0 .5rem}.context-file-chips[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;margin:.35rem 0}"]});}}return i})();function Eo(i){let s={};for(let e of i.params)s[e.name]=e.type==="select"?e.options?.[0]??"":"";return s}var ko=i=>({ids:i});function Io(i,s){i&1&&(_i$1(0,"p",5),vw(1),Rw(2,"transloco"),Kc()),i&2&&(gI(),Ph(Ow(2,1,"workflow-editor.loading")));}function No(i,s){if(i&1&&(_i$1(0,"p",6),vw(1),Kc()),i&2){let e=VD();gI(),Ph(e.loadError());}}function Fo(i,s){if(i&1&&(_i$1(0,"li"),vw(1),Kc()),i&2){let e=s.$implicit;gI(),Ph(e);}}function Vo(i,s){if(i&1&&(_i$1(0,"section",7)(1,"h2"),vw(2),Rw(3,"transloco"),Kc(),_i$1(4,"ul"),ND(5,Fo,2,1,"li",null,SD),Kc()()),i&2){let e=VD(2);gI(2),Ph(Ow(3,1,"workflow-editor.validation")),gI(3),xD(e.validationErrors());}}function Ao(i,s){if(i&1&&(lh(0,"nz-option",13),Rw(1,"transloco")),i&2){let e=s.$implicit,n=VD(2);ch("nzValue",e)("nzLabel",Ow(1,2,n.subjectTypeKey(e)));}}function Po(i,s){if(i&1&&(lh(0,"nz-option",15),Rw(1,"transloco")),i&2){let e=s.$implicit,n=VD(2);ch("nzValue",e)("nzLabel",Ow(1,3,n.subjectHandlingKey(e)))("nzDisabled",e==="collection"&&n.appliesToValue()==="none");}}function $o(i,s){if(i&1&&(lh(0,"nz-option",13),Rw(1,"transloco")),i&2){let e=s.$implicit,n=VD(3);ch("nzValue",e)("nzLabel",Ow(1,2,n.inputTypeKey(e)));}}function Do(i,s){if(i&1){let e=LD();_i$1(0,"div",18)(1,"label",10)(2,"span"),vw(3),Rw(4,"transloco"),Kc(),_i$1(5,"input",22),gh("ngModelChange",function(t){let o=Pu(e).$index,d=VD(2);return Lu(d.patchInputField(o,{name:t}))}),Kc(),oE(),Kc(),_i$1(6,"label",10)(7,"span"),vw(8),Rw(9,"transloco"),Kc(),_i$1(10,"input",22),gh("ngModelChange",function(t){let o=Pu(e).$index,d=VD(2);return Lu(d.patchInputField(o,{label:t}))}),Kc(),oE(),Kc(),_i$1(11,"div",10)(12,"span"),vw(13),Rw(14,"transloco"),Kc(),_i$1(15,"nz-select",23),gh("ngModelChange",function(t){let o=Pu(e).$index,d=VD(2);return Lu(d.patchInputField(o,{type:t}))}),ND(16,$o,2,4,"nz-option",13,SD),Kc(),oE(),Kc(),_i$1(18,"label",24),gh("ngModelChange",function(t){let o=Pu(e).$index,d=VD(2);return Lu(d.patchInputField(o,{required:t}))}),vw(19),Rw(20,"transloco"),Kc(),oE(),_i$1(21,"button",25),gh("click",function(){let t=Pu(e).$index,o=VD(2);return Lu(o.removeInputField(t))}),vw(22),Rw(23,"transloco"),Kc()();}if(i&2){let e=s.$implicit,n=s.$index,t=VD(2);ah("data-testid","input-field-"+n),gI(3),Ph(Ow(4,10,"workflow-editor.fieldName")),gI(2),ch("ngModel",e.name),sE(),gI(3),Ph(Ow(9,12,"workflow-editor.fieldLabel")),gI(2),ch("ngModel",e.label),sE(),gI(3),Ph(Ow(14,14,"workflow-editor.fieldType")),gI(2),ch("ngModel",e.type),sE(),gI(),xD(t.inputFieldTypes),gI(2),ch("ngModel",e.required),sE(),gI(),nl(" ",Ow(20,16,"workflow-editor.required")," "),gI(3),nl(" ",Ow(23,18,"workflow-editor.remove")," ");}}function Bo(i,s){if(i&1&&(_i$1(0,"p",20),vw(1),Rw(2,"transloco"),Kc()),i&2){let e=VD(2);gI(),nl(" ",Pw(2,1,"workflow-editor.duplicateStepIds",xw(4,ko,e.duplicateStepIds().join(", ")))," ");}}function Lo(i,s){if(i&1){let e=LD();bD(0,Vo,7,3,"section",7),_i$1(1,"nz-card",8),Rw(2,"transloco"),_i$1(3,"div",9)(4,"label",10)(5,"span"),vw(6),Rw(7,"transloco"),Kc(),_i$1(8,"input",11),gh("ngModelChange",function(t){Pu(e);let o=VD();return Lu(o.patchWorkflow({name:t}))}),Kc(),oE(),Kc(),_i$1(9,"div",10)(10,"span"),vw(11),Rw(12,"transloco"),Kc(),_i$1(13,"nz-select",12),gh("ngModelChange",function(t){Pu(e);let o=VD();return Lu(o.setAppliesTo(t))}),ND(14,Ao,2,4,"nz-option",13,SD),Kc(),oE(),Kc(),_i$1(16,"div",10)(17,"span"),vw(18),Rw(19,"transloco"),Kc(),_i$1(20,"nz-select",14),gh("ngModelChange",function(t){Pu(e);let o=VD();return Lu(o.patchWorkflow({subjectHandling:t}))}),ND(21,Po,2,5,"nz-option",15,SD),Kc(),oE(),_i$1(23,"p",16),vw(24),Rw(25,"transloco"),Kc()()(),_i$1(26,"label",10)(27,"span"),vw(28),Rw(29,"transloco"),Kc(),_i$1(30,"textarea",17),gh("ngModelChange",function(t){Pu(e);let o=VD();return Lu(o.patchWorkflow({description:t||void 0}))}),Kc(),oE(),Kc()(),_i$1(31,"nz-card",8),Rw(32,"transloco"),ND(33,Do,24,20,"div",18,MD),_i$1(35,"button",19),gh("click",function(){Pu(e);let t=VD();return Lu(t.addInputField())}),vw(36),Rw(37,"transloco"),Kc()(),_i$1(38,"nz-card",8),Rw(39,"transloco"),bD(40,Bo,3,6,"p",20),_i$1(41,"app-step-list",21),gh("stepsChange",function(t){Pu(e);let o=VD();return Lu(o.onStepsChange(t))}),Kc()();}if(i&2){let e=VD();_D(e.validationErrors().length>0?0:-1),gI(),ch("nzTitle",Ow(2,21,"workflow-editor.basics")),gI(5),Ph(Ow(7,23,"workflow-editor.name")),gI(2),ch("ngModel",e.workflow().name),sE(),gI(3),Ph(Ow(12,25,"workflow-editor.appliesTo")),gI(2),ch("ngModel",e.appliesToValue()),sE(),gI(),xD(e.subjectTypes),gI(4),Ph(Ow(19,27,"workflow-editor.subjectHandling.label")),gI(2),ch("ngModel",e.workflow().subjectHandling),sE(),gI(),xD(e.subjectHandlingOptions),gI(3),nl(" ",Ow(25,29,e.subjectHandlingHelpKey())," "),gI(4),Ph(Ow(29,31,"workflow-editor.description")),gI(2),ch("ngModel",e.workflow().description??""),sE(),gI(),ch("nzTitle",Ow(32,33,"workflow-editor.inputSchema")),gI(2),xD(e.workflow().inputSchema),gI(3),nl(" ",Ow(37,35,"workflow-editor.addInputField")," "),gI(2),ch("nzTitle",Ow(39,37,"workflow-editor.steps")),gI(2),_D(e.duplicateStepIds().length>0?40:-1),gI(),ch("steps",e.workflow().steps)("rootSteps",e.workflow().steps)("availableWorkflows",e.availableWorkflows())("appliesTo",e.workflow().appliesTo)("inputSchema",e.workflow().inputSchema)("settings",e.settings());}}var ga=(()=>{class i{constructor(){this.route=C(ae),this.router=C(Ie),this.workflowsApi=C(U),this.settingsApi=C($),this.message=C(Tx),this.destroyRef=C(at),this.transloco=C(Ve$1),this.language=C(O),this.routeId=de(this.route.paramMap.pipe(Se(e=>e.get("id"))),{initialValue:this.route.snapshot.paramMap.get("id")}),this.workflow=qo(I()),this.availableWorkflows=qo([]),this.settings=qo(my),this.loadError=qo(null),this.validationErrors=qo([]),this.duplicateStepIds=qo([]),this.saving=qo(false),this.loading=qo(true),this.isNew=Hw(()=>!this.routeId()),this.pageTitle=Hw(()=>(this.language.currentLang(),this.isNew()?this.transloco.translate("workflow-editor.titleNew"):this.transloco.translate("workflow-editor.titleEdit",{id:this.workflow().id||this.routeId()}))),this.subjectTypes=["none","ticket","pull_request","documentation"],this.subjectHandlingOptions=["per-subject","collection"],this.inputFieldTypes=["string","number","boolean","select","localRepository"],this.workflowsApi.list().pipe(ue(this.destroyRef)).subscribe({next:e=>this.availableWorkflows.set(e),error:()=>{}}),this.settingsApi.getSettings().pipe(ue(this.destroyRef)).subscribe({next:e=>this.settings.set(e),error:()=>{}}),this.route.paramMap.pipe(ue(this.destroyRef)).subscribe(e=>{let n=e.get("id");if(this.validationErrors.set([]),this.duplicateStepIds.set([]),this.loadError.set(null),!n){this.workflow.set(I()),this.loading.set(false);return}this.loading.set(true),this.workflowsApi.get(n).subscribe({next:t=>{this.workflow.set(s(r({},structuredClone(t)),{steps:g(t.steps,{idAutoSync:false})})),this.loading.set(false);},error:t=>{this.loading.set(false),this.loadError.set(this.errorMessage(t,`Failed to load workflow ${n}`));}});});}subjectTypeKey(e){return `workflow-editor.subjectType.${e}`}subjectHandlingKey(e){return `workflow-editor.subjectHandling.${e}`}subjectHandlingHelpKey(){return `workflow-editor.subjectHandling.help.${this.workflow().subjectHandling}`}inputTypeKey(e){return `workflow-editor.inputType.${e}`}patchWorkflow(e){this.workflow.update(n=>r(r({},n),e));}setAppliesTo(e){if(e==="none"){this.patchWorkflow({appliesTo:e,subjectHandling:"per-subject"});return}this.patchWorkflow({appliesTo:e});}appliesToValue(){let e=this.workflow().appliesTo;return Array.isArray(e)?e[0]??"none":e}onStepsChange(e){this.patchWorkflow({steps:e}),this.duplicateStepIds.set(Um(e));}addInputField(){this.patchWorkflow({inputSchema:[...this.workflow().inputSchema,b()]});}removeInputField(e){this.patchWorkflow({inputSchema:this.workflow().inputSchema.filter((n,t)=>t!==e)});}patchInputField(e,n){let t=this.workflow().inputSchema.map((o,d)=>d===e?r(r({},o),n):o);this.patchWorkflow({inputSchema:t});}save(){let e=this.workflow(),n=Um(e.steps);if(this.duplicateStepIds.set(n),n.length>0){this.validationErrors.set([this.transloco.translate("workflow-editor.duplicateStepIds",{ids:n.join(", ")})]);return}let t=v(e,{omitWorkflowId:this.isNew()}),o=X_.safeParse(t);if(!o.success){this.validationErrors.set(T(o.error));return}this.validationErrors.set([]),this.saving.set(true);let d=o.data,A=this.routeId();(this.isNew()||!A?this.workflowsApi.create(d):this.workflowsApi.update(A,s(r({},d),{id:A}))).subscribe({next:se=>{this.saving.set(false),this.workflow.set(s(r({},structuredClone(se)),{steps:g(se.steps,{idAutoSync:false})})),this.message.success(this.isNew()?"Workflow created":"Workflow saved"),this.isNew()&&this.router.navigate(["/workflows",se.id,"edit"]);},error:se=>{this.saving.set(false),this.message.error(this.errorMessage(se,"Save failed"));}});}errorMessage(e,n){return e instanceof o||e instanceof Error?e.message:n}static{this.\u0275fac=function(n){return new(n||i)};}static{this.\u0275cmp=QE({type:i,selectors:[["app-workflow-editor"]],decls:15,vars:10,consts:[["data-testid","workflow-editor",1,"editor"],[1,"header"],[1,"header-actions"],["routerLink","/workflows","data-testid","back-to-workflows"],["nz-button","","nzType","primary","type","button","data-testid","save-button",3,"click","nzLoading","disabled"],["data-testid","loading"],["data-testid","load-error",1,"error"],["data-testid","validation-errors",1,"errors"],[3,"nzTitle"],[1,"grid"],[1,"field"],["nz-input","","data-testid","workflow-name",3,"ngModelChange","ngModel"],["data-testid","workflow-applies-to",3,"ngModelChange","ngModel"],[3,"nzValue","nzLabel"],["data-testid","workflow-subject-handling",3,"ngModelChange","ngModel"],[3,"nzValue","nzLabel","nzDisabled"],["data-testid","workflow-subject-handling-help",1,"help"],["nz-input","","rows","2","data-testid","workflow-description",3,"ngModelChange","ngModel"],[1,"input-field-row"],["nz-button","","nzType","dashed","type","button",3,"click"],["data-testid","duplicate-step-ids",1,"error"],[3,"stepsChange","steps","rootSteps","availableWorkflows","appliesTo","inputSchema","settings"],["nz-input","",3,"ngModelChange","ngModel"],[3,"ngModelChange","ngModel"],["nz-checkbox","",3,"ngModelChange","ngModel"],["nz-button","","nzDanger","","type","button",3,"click"]],template:function(n,t){n&1&&(_i$1(0,"main",0)(1,"header",1)(2,"div")(3,"h1"),vw(4),Kc()(),_i$1(5,"div",2)(6,"a",3),vw(7),Rw(8,"transloco"),Kc(),_i$1(9,"button",4),gh("click",function(){return t.save()}),vw(10),Rw(11,"transloco"),Kc()()(),bD(12,Io,3,3,"p",5)(13,No,2,1,"p",6)(14,Lo,42,39),Kc()),n&2&&(gI(4),Ph(t.pageTitle()),gI(3),Ph(Ow(8,6,"workflow-editor.backToWorkflows")),gI(2),ch("nzLoading",t.saving())("disabled",t.loading()||!!t.loadError()),gI(),nl(" ",Ow(11,8,"common.save")," "),gI(2),_D(t.loading()?12:t.loadError()?13:14));},dependencies:[Mi$1,n8,S4,J6,k3,Ln$1,dd,zc,t7,y7,Nt,Ke,Lt,ut,ai$1,z,Xb,V5,D5,Mn,Kt],styles:[".editor[_ngcontent-%COMP%]{max-width:56rem;margin:0 auto;padding:1.25rem 1.5rem 3rem;display:flex;flex-direction:column;gap:1rem}.header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.header-actions[_ngcontent-%COMP%]{display:flex;gap:.75rem;align-items:center}.lede[_ngcontent-%COMP%]{margin:.25rem 0 0;color:#57534e}.grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem 1rem}.field[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.35rem;margin:.5rem 0}.field[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{font-size:.85rem;color:#57534e}.help[_ngcontent-%COMP%]{margin:0;font-size:.8rem;color:#78716c}.checkbox-row[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem}.input-field-row[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr 8rem auto auto;gap:.5rem;align-items:end;margin-bottom:.5rem}.input-field-row[_ngcontent-%COMP%] > .field[_ngcontent-%COMP%]{margin:0}.errors[_ngcontent-%COMP%]{border:1px solid #fecdd3;background:#fff1f2;padding:.75rem 1rem}.errors[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0 0 .35rem;font-size:1rem}.error[_ngcontent-%COMP%]{color:#9f1239}"]});}}return i})();export{ga as WorkflowEditorComponent};
@@ -0,0 +1 @@
1
+ import {o as ot}from'./chunk-qYK5KaAK.js';import {U as Ut}from'./chunk-D_R_EFd2.js';import {a as ai,z}from'./chunk-DlsGU_Dk.js';import {_ as _n,C as Cn}from'./chunk-DinAvqzQ.js';import {W,I}from'./chunk-Ct30cLzT.js';import {L as Lt,u as ut,p as pc,a as as,d as dc,K as Kl,c as cc,J as Ji,l as ls}from'./chunk-BGEuPXoV.js';import {C,V as Ve$1,b as at,a0 as $0,H as Hw,q as qo,r,u as ue,o,Q as QE,M as Mi,n as n8,am as S4,J as J6,k as k3,d as dd,z as zc,c as t7,Z as y7,X as Xb,e as V5,D as D5,K as Kt,f as _i,m as bD,g as Kc,a4 as Mh,a5 as ah,p as gI,B as _D,ae as Zi,a8 as a,af as E,i as ie,F as LD,v as vw,R as Rw,h as gh,P as Ph,O as Ow,w as nl,E as VD,j as oE,N as ND,S as SD,x as ch,y as sE,A as xD,a6 as Nw,l as lh,G as Pu,I as Lu}from'./main-HV5WDK2F.js';var ze=(()=>{class t{constructor(){this.http=C(Zi),this.baseUrl=`${a.apiBaseUrl}/context-files`;}list(){return this.http.get(this.baseUrl).pipe(E())}get(e){return this.http.get(`${this.baseUrl}/${encodeURIComponent(e)}`).pipe(E())}create(e){return this.http.post(this.baseUrl,e).pipe(E())}update(e,n){return this.http.patch(`${this.baseUrl}/${encodeURIComponent(e)}`,n).pipe(E())}delete(e){return this.http.delete(`${this.baseUrl}/${encodeURIComponent(e)}`).pipe(E())}static{this.\u0275fac=function(n){return new(n||t)};}static{this.\u0275prov=ie({token:t,factory:t.\u0275fac,providedIn:"root"});}}return t})();var Te=()=>[".md"],Ie=(t,f)=>f.id;function Fe(t,f){if(t&1){let e=LD();_i(0,"header",1)(1,"h1"),vw(2),Rw(3,"transloco"),Kc(),_i(4,"button",4),gh("click",function(){Pu(e);let r=VD();return Lu(r.openCreateForm())}),vw(5),Rw(6,"transloco"),Kc()();}t&2&&(gI(2),Ph(Ow(3,2,"context-files.title")),gI(3),nl(" ",Ow(6,4,"context-files.create")," "));}function ye(t,f){t&1&&(_i(0,"p",2),vw(1),Rw(2,"transloco"),Kc()),t&2&&(gI(),Ph(Ow(2,1,"common.loading")));}function Ne(t,f){if(t&1&&(_i(0,"p",3),vw(1),Kc()),t&2){let e=VD();gI(),Ph(e.loadError());}}function De(t,f){if(t&1&&(_i(0,"p",5),vw(1),Kc()),t&2){let e=VD(2);gI(),Ph(e.deleteError());}}function we(t,f){if(t&1&&(_i(0,"p",9),vw(1),Kc()),t&2){let e=VD(3);gI(),Ph(e.saveError());}}function ke(t,f){if(t&1&&(lh(0,"nz-option",13),Rw(1,"transloco")),t&2){let e=f.$implicit,n=VD(3);ch("nzValue",e)("nzLabel",Ow(1,2,n.tierKey(e)));}}function Le(t,f){if(t&1){let e=LD();_i(0,"button",20),gh("click",function(){Pu(e);let r=VD(3);return Lu(r.cancelForm())}),vw(1),Rw(2,"transloco"),Kc();}t&2&&(gI(),nl(" ",Ow(2,1,"context-files.form.cancel")," "));}function Pe(t,f){if(t&1){let e=LD();_i(0,"section",6),bD(1,we,2,1,"p",9),_i(2,"label",10)(3,"span"),vw(4),Rw(5,"transloco"),Kc(),_i(6,"input",11),gh("ngModelChange",function(r){Pu(e);let p=VD(2);return Lu(p.formName.set(r))}),Kc(),oE(),Kc(),_i(7,"div",10)(8,"span"),vw(9),Rw(10,"transloco"),Kc(),_i(11,"nz-select",12),gh("ngModelChange",function(r){Pu(e);let p=VD(2);return Lu(p.formTier.set(r))}),ND(12,ke,2,4,"nz-option",13,SD),Kc(),oE(),Kc(),_i(14,"div",10)(15,"span"),vw(16),Rw(17,"transloco"),Kc(),_i(18,"app-path-picker",14),gh("pathChange",function(r){Pu(e);let p=VD(2);return Lu(p.formPath.set(r))}),Kc(),_i(19,"p",15),vw(20),Rw(21,"transloco"),Kc()(),_i(22,"label",10)(23,"span"),vw(24),Rw(25,"transloco"),Kc(),_i(26,"input",16),gh("ngModelChange",function(r){Pu(e);let p=VD(2);return Lu(p.formDescription.set(r))}),Kc(),oE(),Kc(),_i(27,"div",17)(28,"button",18),gh("click",function(){Pu(e);let r=VD(2);return Lu(r.submitForm())}),vw(29),Rw(30,"transloco"),Kc(),bD(31,Le,3,3,"button",19),Kc()();}if(t&2){let e=VD(2);gI(),_D(e.saveError()?1:-1),gI(3),Ph(Ow(5,14,"context-files.form.name")),gI(2),ch("ngModel",e.formName()),sE(),gI(3),Ph(Ow(10,16,"context-files.form.tier")),gI(2),ch("ngModel",e.formTier()),sE(),gI(),xD(e.tiers),gI(4),Ph(Ow(17,18,"context-files.form.path")),gI(2),ch("extensions",Nw(26,Te))("path",e.formPath()),gI(2),Ph(Ow(21,20,"context-files.form.pathHint")),gI(4),Ph(Ow(25,22,"context-files.form.description")),gI(2),ch("ngModel",e.formDescription()),sE(),gI(2),ch("nzLoading",e.saving()),gI(),nl(" ",Ow(30,24,e.editingId()?"context-files.form.save":"context-files.form.add")," "),gI(2),_D(e.inSelectionMode()?-1:31);}}function Ve(t,f){if(t&1){let e=LD();_i(0,"section",7)(1,"p"),vw(2),Rw(3,"transloco"),Kc(),_i(4,"button",21),gh("click",function(){Pu(e);let r=VD(2);return Lu(r.openCreateForm())}),vw(5),Rw(6,"transloco"),Kc()();}t&2&&(gI(2),Ph(Ow(3,2,"context-files.emptyState")),gI(3),nl(" ",Ow(6,4,"context-files.create")," "));}function Be(t,f){t&1&&lh(0,"th");}function Oe(t,f){t&1&&(_i(0,"th"),vw(1),Rw(2,"transloco"),Kc()),t&2&&(gI(),Ph(Ow(2,1,"context-files.column.actions")));}function $e(t,f){if(t&1){let e=LD();_i(0,"td")(1,"label",24),gh("nzCheckedChange",function(r){Pu(e);let p=VD().$implicit,T=VD(3);return Lu(T.toggleSelected(p.id,r))}),Kc()();}if(t&2){let e=VD().$implicit,n=VD(3);gI(),ch("nzChecked",n.isSelected(e.id)),ah("data-testid","select-"+e.id);}}function Ae(t,f){if(t&1){let e=LD();_i(0,"td",23)(1,"button",25),gh("click",function(){Pu(e);let r=VD().$implicit,p=VD(3);return Lu(p.openEditForm(r))}),vw(2),Rw(3,"transloco"),Kc(),_i(4,"button",26),Rw(5,"transloco"),Rw(6,"transloco"),Rw(7,"transloco"),gh("nzOnConfirm",function(){Pu(e);let r=VD().$implicit,p=VD(3);return Lu(p.deleteFile(r.id))}),vw(8),Rw(9,"transloco"),Kc()();}if(t&2){let e=VD().$implicit;gI(),ah("data-testid","edit-"+e.id),gI(),nl(" ",Ow(3,7,"context-files.edit")," "),gI(2),ch("nzPopconfirmTitle",Ow(5,9,"context-files.deleteConfirm"))("nzOkText",Ow(6,11,"context-files.delete"))("nzCancelText",Ow(7,13,"common.cancel")),ah("data-testid","delete-"+e.id),gI(4),nl(" ",Ow(9,15,"context-files.delete")," ");}}function Ue(t,f){if(t&1&&(_i(0,"tr"),bD(1,$e,2,2,"td"),_i(2,"td"),vw(3),Kc(),_i(4,"td")(5,"nz-tag"),vw(6),Rw(7,"transloco"),Kc()(),_i(8,"td",22),vw(9),Kc(),_i(10,"td"),vw(11),Kc(),bD(12,Ae,10,17,"td",23),Kc()),t&2){let e=f.$implicit,n=VD(3);ah("data-testid","context-file-"+e.id),gI(),_D(n.inSelectionMode()?1:-1),gI(),ah("data-testid","name-"+e.id),gI(),Ph(e.name),gI(2),ah("data-testid","tier-"+e.id),gI(),Ph(Ow(7,11,n.tierKey(e.tier))),gI(2),ah("data-testid","path-"+e.id),gI(),Ph(e.path),gI(),ah("data-testid","description-"+e.id),gI(),Ph(e.description),gI(),_D(n.inSelectionMode()?-1:12);}}function Re(t,f){if(t&1&&(_i(0,"nz-table",8)(1,"thead")(2,"tr"),bD(3,Be,1,0,"th"),_i(4,"th"),vw(5),Rw(6,"transloco"),Kc(),_i(7,"th"),vw(8),Rw(9,"transloco"),Kc(),_i(10,"th"),vw(11),Rw(12,"transloco"),Kc(),_i(13,"th"),vw(14),Rw(15,"transloco"),Kc(),bD(16,Oe,3,3,"th"),Kc()(),_i(17,"tbody"),ND(18,Ue,13,13,"tr",null,Ie),Kc()()),t&2){let e=VD(2);ch("nzData",e.files())("nzFrontPagination",false)("nzShowPagination",false),gI(3),_D(e.inSelectionMode()?3:-1),gI(2),Ph(Ow(6,9,"context-files.column.name")),gI(3),Ph(Ow(9,11,"context-files.column.tier")),gI(3),Ph(Ow(12,13,"context-files.column.path")),gI(3),Ph(Ow(15,15,"context-files.column.description")),gI(2),_D(e.inSelectionMode()?-1:16),gI(2),xD(e.files());}}function je(t,f){if(t&1&&(bD(0,De,2,1,"p",5),bD(1,Pe,32,27,"section",6),bD(2,Ve,7,6,"section",7)(3,Re,20,17,"nz-table",8)),t&2){let e=VD();_D(e.deleteError()?0:-1),gI(),_D(e.inSelectionMode()||e.formOpen()?1:-1),gI(),_D(e.files().length===0&&!e.inSelectionMode()&&!e.formOpen()?2:3);}}var Ke=["user","organization","project"],St=(()=>{class t{constructor(){this.filesApi=C(ze),this.transloco=C(Ve$1),this.destroyRef=C(at),this.modalData=C(Ut,{optional:true}),this.selectionModeInput=$0(false),this.inSelectionMode=Hw(()=>this.modalData?.selectionMode??this.selectionModeInput()),this.files=qo([]),this.loading=qo(true),this.loadError=qo(null),this.saveError=qo(null),this.deleteError=qo(null),this.saving=qo(false),this.formOpen=qo(false),this.editingId=qo(null),this.selectedIds=qo([...this.modalData?.selectedIds??[]]),this.formName=qo(""),this.formTier=qo("user"),this.formPath=qo(""),this.formDescription=qo(""),this.tiers=Ke,this.reload();}currentSelectedIds(){return this.selectedIds()}tierKey(e){return `context-files.tier.${e}`}isSelected(e){return this.selectedIds().includes(e)}toggleSelected(e,n){this.selectedIds.update(r=>n?r.includes(e)?r:[...r,e]:r.filter(p=>p!==e));}openCreateForm(){this.editingId.set(null),this.formName.set(""),this.formTier.set("user"),this.formPath.set(""),this.formDescription.set(""),this.saveError.set(null),this.formOpen.set(true);}openEditForm(e){this.editingId.set(e.id),this.formName.set(e.name),this.formTier.set(e.tier),this.formPath.set(e.path),this.formDescription.set(e.description??""),this.saveError.set(null),this.formOpen.set(true);}cancelForm(){this.formOpen.set(false),this.editingId.set(null),this.saveError.set(null);}submitForm(){if(this.saving())return;this.saveError.set(null),this.saving.set(true);let e=r({name:this.formName().trim(),tier:this.formTier(),path:this.formPath().trim()},this.formDescription().trim()?{description:this.formDescription().trim()}:{description:void 0}),n=this.editingId();(n?this.filesApi.update(n,e):this.filesApi.create(e)).pipe(ue(this.destroyRef)).subscribe({next:p=>{this.saving.set(false),this.formOpen.set(false),this.editingId.set(null),this.files.update(T=>[...T.filter(N=>N.id!==p.id),p].sort((N,Ee)=>N.name.localeCompare(Ee.name))),this.inSelectionMode()&&!this.isSelected(p.id)&&this.selectedIds.update(T=>[...T,p.id]),this.formName.set(""),this.formTier.set("user"),this.formPath.set(""),this.formDescription.set("");},error:p=>{this.saving.set(false),this.saveError.set(this.errorMessage(p,this.transloco.translate("context-files.saveFailed")));}});}deleteFile(e){this.deleteError.set(null),this.filesApi.delete(e).pipe(ue(this.destroyRef)).subscribe({next:()=>{this.files.update(n=>n.filter(r=>r.id!==e)),this.selectedIds.update(n=>n.filter(r=>r!==e));},error:n=>{this.deleteError.set(this.errorMessage(n,this.transloco.translate("context-files.deleteFailed")));}});}reload(){this.loading.set(true),this.loadError.set(null),this.filesApi.list().pipe(ue(this.destroyRef)).subscribe({next:e=>{this.files.set(e),this.loading.set(false);},error:e=>{this.loading.set(false),this.loadError.set(this.errorMessage(e,this.transloco.translate("context-files.loadFailed")));}});}errorMessage(e,n){return e instanceof o||e instanceof Error?e.message:n}static{this.\u0275fac=function(n){return new(n||t)};}static{this.\u0275cmp=QE({type:t,selectors:[["app-context-file-list"]],inputs:{selectionModeInput:[1,"selectionModeInput"]},decls:5,vars:5,consts:[[1,"context-file-list"],[1,"header"],["data-testid","loading"],["data-testid","load-error",1,"error"],["nz-button","","nzType","primary","type","button","data-testid","create-context-file",3,"click"],["data-testid","delete-error",1,"error"],["data-testid","context-file-form",1,"form"],["data-testid","empty-state",1,"empty"],["data-testid","context-file-items",3,"nzData","nzFrontPagination","nzShowPagination"],["data-testid","save-error",1,"error"],[1,"field"],["nz-input","","data-testid","context-file-name",3,"ngModelChange","ngModel"],["data-testid","context-file-tier",3,"ngModelChange","ngModel"],[3,"nzValue","nzLabel"],["mode","files",3,"pathChange","extensions","path"],[1,"hint"],["nz-input","","data-testid","context-file-description",3,"ngModelChange","ngModel"],[1,"form-actions"],["nz-button","","nzType","primary","type","button","data-testid","context-file-submit",3,"click","nzLoading"],["nz-button","","type","button","data-testid","context-file-cancel"],["nz-button","","type","button","data-testid","context-file-cancel",3,"click"],["nz-button","","nzType","primary","type","button","data-testid","empty-create",3,"click"],[1,"path-cell"],[1,"actions"],["nz-checkbox","",3,"nzCheckedChange","nzChecked"],["nz-button","","nzType","link","type","button",3,"click"],["nz-button","","nzType","link","nzDanger","","type","button","nz-popconfirm","",3,"nzOnConfirm","nzPopconfirmTitle","nzOkText","nzCancelText"]],template:function(n,r){n&1&&(_i(0,"div",0),bD(1,Fe,7,6,"header",1),bD(2,ye,3,3,"p",2)(3,Ne,2,1,"p",3)(4,je,4,3),Kc()),n&2&&(Mh("list-page",!r.inSelectionMode()),ah("data-testid",r.inSelectionMode()?"context-file-picker":"context-files-manage"),gI(),_D(r.inSelectionMode()?-1:1),gI(),_D(r.loading()?2:r.loadError()?3:4));},dependencies:[Mi,n8,S4,J6,k3,dd,zc,t7,y7,Lt,ut,ai,z,_n,Cn,Xb,V5,D5,pc,as,dc,Kl,cc,Ji,ls,W,I,ot,Kt],styles:[".list-page[_ngcontent-%COMP%]{max-width:72rem;margin:0 auto;padding:1.25rem 1.5rem 3rem;display:flex;flex-direction:column;gap:1rem}.header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.65rem;padding:.85rem;border:1px solid #e7e5e4;background:#fff}.field[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.35rem}.field[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{font-size:.85rem;color:#57534e}.hint[_ngcontent-%COMP%]{margin:.2rem 0 0;font-size:.8rem;color:#78716c}.form-actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}.empty[_ngcontent-%COMP%]{text-align:center;padding:2.5rem 1rem;border:1px dashed #d6d3d1;background:#fff9}.error[_ngcontent-%COMP%]{color:#9f1239}.actions[_ngcontent-%COMP%]{white-space:nowrap}.path-cell[_ngcontent-%COMP%]{overflow-wrap:anywhere;word-break:break-word}"]});}}return t})();export{St as S,ze as z};
@@ -1 +1 @@
1
- import {E as E_,N as N_}from'./chunk-BUuwGTt7.js';import {s,r,t as t$1}from'./main-MNK6ZYDO.js';var y=["agent","interaction","shell","git","provider_action","sub_workflow","loop"];function I(){return {name:"",appliesTo:"none",subjectHandling:"per-subject",inputSchema:[],steps:[],notificationPolicy:{triggers:[]}}}function d(){return crypto.randomUUID()}function g(t,e){return t.map(n=>{let r$1=s(r({},n),{_key:d(),_idAutoSync:e.idAutoSync});return n.type==="loop"?s(r({},r$1),{steps:g(n.steps,e)}):r$1})}function h(t,e){let n=e?.id??"",r$1=e?.name??"",i={_key:e?.key??d(),_idAutoSync:e?.idAutoSync??true};switch(t){case "agent":return r({type:t,id:n,name:r$1,objective:"",outputFormat:"free_text"},i);case "interaction":return r({type:t,id:n,name:r$1,interaction:"questionnaire"},i);case "shell":return r({type:t,id:n,name:r$1,command:""},i);case "git":return r({type:t,id:n,name:r$1,operation:"create_worktree",params:{}},i);case "provider_action":return r({type:t,id:n,name:r$1,action:"get_subject",params:{}},i);case "sub_workflow":return r({type:t,id:n,name:r$1,workflowId:"",forEach:"selection"},i);case "loop":return r({type:t,id:n,name:r$1,steps:[],until:{type:"field_empty",stepId:"",field:""},maxIterations:3,onMaxIterations:{action:"fail"}},i)}}function b(){return {name:"",label:"",type:"string",required:false}}function A(t){return t?Object.entries(t).map(([e,n])=>({key:e,value:n==null?"":String(n)})):[]}function j(t){let e={};for(let n of t){let r=n.key.trim();r&&(e[r]=n.value);}return e}function T(t){return t.issues.map(e=>`${e.path.length>0?e.path.map(String).join("."):"(root)"}: ${e.message}`)}function m(t){let i=t,{_key:e,_idAutoSync:n}=i,r$1=t$1(i,["_key","_idAutoSync"]);return r$1.type==="loop"?s(r({},r$1),{steps:r$1.steps.map(a=>m(a))}):r$1}function v(t,e={}){let n=t.steps.map(_=>{let u=m(_);if(!u.id){let p=u,{id:x}=p;return t$1(p,["id"])}return u}),a=t,{id:r$1}=a,i=t$1(a,["id"]);return e.omitWorkflowId||!r$1?s(r({},i),{steps:n}):s(r({},i),{id:r$1,steps:n})}function E(t,e,n){if(!t._idAutoSync)return s(r({},t),{name:e});let r$1=E_(n);t.id&&r$1.delete(t.id);let i=e.trim().length>0?N_(e,r$1):"";return s(r({},t),{name:e,id:i})}function P(t,e){return s(r({},t),{id:e,_idAutoSync:false})}export{A,E,I,P,T,b,g,h,j,v,y};
1
+ import {M as M_,V as V_}from'./chunk-dUlsh7QS.js';import {s,r,t as t$1}from'./main-HV5WDK2F.js';var y=["agent","interaction","shell","git","provider_action","sub_workflow","loop"];function I(){return {name:"",appliesTo:"none",subjectHandling:"per-subject",inputSchema:[],steps:[],notificationPolicy:{triggers:[]}}}function d(){return crypto.randomUUID()}function g(t,e){return t.map(n=>{let r$1=s(r({},n),{_key:d(),_idAutoSync:e.idAutoSync});return n.type==="loop"?s(r({},r$1),{steps:g(n.steps,e)}):r$1})}function h(t,e){let n=e?.id??"",r$1=e?.name??"",i={_key:e?.key??d(),_idAutoSync:e?.idAutoSync??true};switch(t){case "agent":return r({type:t,id:n,name:r$1,objective:"",outputFormat:"free_text"},i);case "interaction":return r({type:t,id:n,name:r$1,interaction:"questionnaire"},i);case "shell":return r({type:t,id:n,name:r$1,command:""},i);case "git":return r({type:t,id:n,name:r$1,operation:"create_worktree",params:{}},i);case "provider_action":return r({type:t,id:n,name:r$1,action:"get_subject",params:{}},i);case "sub_workflow":return r({type:t,id:n,name:r$1,workflowId:"",forEach:"selection"},i);case "loop":return r({type:t,id:n,name:r$1,steps:[],until:{type:"field_empty",stepId:"",field:""},maxIterations:3,onMaxIterations:{action:"fail"}},i)}}function b(){return {name:"",label:"",type:"string",required:false}}function A(t){return t?Object.entries(t).map(([e,n])=>({key:e,value:n==null?"":String(n)})):[]}function j(t){let e={};for(let n of t){let r=n.key.trim();r&&(e[r]=n.value);}return e}function T(t){return t.issues.map(e=>`${e.path.length>0?e.path.map(String).join("."):"(root)"}: ${e.message}`)}function m(t){let i=t,{_key:e,_idAutoSync:n}=i,r$1=t$1(i,["_key","_idAutoSync"]);return r$1.type==="loop"?s(r({},r$1),{steps:r$1.steps.map(a=>m(a))}):r$1}function v(t,e={}){let n=t.steps.map(_=>{let u=m(_);if(!u.id){let p=u,{id:x}=p;return t$1(p,["id"])}return u}),a=t,{id:r$1}=a,i=t$1(a,["id"]);return e.omitWorkflowId||!r$1?s(r({},i),{steps:n}):s(r({},i),{id:r$1,steps:n})}function E(t,e,n){if(!t._idAutoSync)return s(r({},t),{name:e});let r$1=M_(n);t.id&&r$1.delete(t.id);let i=e.trim().length>0?V_(e,r$1):"";return s(r({},t),{name:e,id:i})}function P(t,e){return s(r({},t),{id:e,_idAutoSync:false})}export{A,E,I,P,T,b,g,h,j,v,y};