@yinuo-ngm/server 1.0.20 → 1.0.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/app.js +0 -4
- package/lib/env.js +5 -1
- package/lib/plugins/success-handle.plugin.js +1 -1
- package/lib/plugins/ws/topics/nginx.ws.js +1 -1
- package/lib/plugins/ws/ws.context.js +3 -1
- package/lib/plugins/ws/ws.plugin.js +14 -2
- package/lib/routes/api-client/collection.routes.js +35 -35
- package/lib/routes/api-client/env.routes.js +12 -8
- package/lib/routes/api-client/history.routes.js +10 -5
- package/lib/routes/api-client/request.routes.js +14 -8
- package/lib/routes/api-client/route-mappers.d.ts +7 -0
- package/lib/routes/api-client/route-mappers.js +78 -0
- package/lib/routes/api-client/send.routes.js +12 -8
- package/lib/routes/config.routes.js +73 -49
- package/lib/routes/deps.route.js +47 -5
- package/lib/routes/index.js +5 -3
- package/lib/routes/nginx/nginx-config.routes.js +3 -3
- package/lib/routes/nginx/nginx-lifecycle.routes.js +14 -13
- package/lib/routes/nginx/nginx-module.routes.js +6 -6
- package/lib/routes/nginx/nginx-route.context.d.ts +16 -1
- package/lib/routes/nginx/nginx-route.context.js +136 -1
- package/lib/routes/nginx/nginx-server.routes.js +5 -5
- package/lib/routes/node-runtime.routes.d.ts +2 -0
- package/lib/routes/node-runtime.routes.js +69 -0
- package/lib/routes/project.routes.js +117 -13
- package/lib/routes/sprite/sprite-browse.routes.d.ts +2 -0
- package/lib/routes/sprite/sprite-browse.routes.js +137 -0
- package/lib/routes/sprite/sprite-quick.utils.d.ts +19 -0
- package/lib/routes/sprite/sprite-quick.utils.js +247 -0
- package/lib/routes/sprite/sprite.routes.d.ts +2 -0
- package/lib/routes/sprite/sprite.routes.js +212 -0
- package/lib/routes/sprite-browse.routes.js +17 -11
- package/lib/routes/sprite.routes.d.ts +1 -1
- package/lib/routes/sprite.routes.js +68 -11
- package/lib/routes/svn.routes.js +48 -14
- package/lib/routes/task.routes.js +99 -7
- package/package.json +7 -7
- package/www/3rdpartylicenses.txt +5 -5
- package/www/browser/{chunk-OZCK4XVV.js → chunk-2VJVGBXG.js} +1 -1
- package/www/browser/{chunk-FL6GDGHW.js → chunk-3ODVU46S.js} +1 -1
- package/www/browser/chunk-442QFABJ.js +1 -0
- package/www/browser/{chunk-WD2EKZQC.js → chunk-6J6G7JEP.js} +1 -1
- package/www/browser/{chunk-7U44RF5F.js → chunk-6UFDNETG.js} +1 -1
- package/www/browser/{chunk-75W3GVSO.js → chunk-7AKVG375.js} +1 -1
- package/www/browser/chunk-7GLWEFTM.js +1 -0
- package/www/browser/{chunk-DIJPUYIA.js → chunk-7QR6RHLA.js} +1 -1
- package/www/browser/{chunk-HJTXXSMC.js → chunk-CO3CQHKV.js} +1 -1
- package/www/browser/{chunk-3XNNQFWR.js → chunk-CPJTSA6E.js} +1 -1
- package/www/browser/chunk-DENFXXOY.js +1 -0
- package/www/browser/{chunk-HDNG236Q.js → chunk-HC5KLPHD.js} +1 -1
- package/www/browser/chunk-HJAP6WBI.js +1 -0
- package/www/browser/{chunk-N2PELLMM.js → chunk-JM6DCZP6.js} +7 -7
- package/www/browser/chunk-K6C5ZIV2.js +20 -0
- package/www/browser/chunk-M6NZ6C2R.js +2 -0
- package/www/browser/{chunk-RGOYDY7H.js → chunk-MBPB43C6.js} +1 -1
- package/www/browser/chunk-MPLGMTLT.js +3 -0
- package/www/browser/chunk-NNOWADVM.js +1 -0
- package/www/browser/{chunk-M4QRBV3K.js → chunk-NREWZQVN.js} +1 -1
- package/www/browser/{chunk-6YYNHZ2A.js → chunk-OUGN4APK.js} +1 -1
- package/www/browser/chunk-PB2LGZNW.js +1 -0
- package/www/browser/chunk-PDI3HSSH.js +4 -0
- package/www/browser/chunk-PUG3VNTI.js +3 -0
- package/www/browser/{chunk-QJP5F735.js → chunk-PY3AUTHC.js} +1 -1
- package/www/browser/{chunk-3M56F2S2.js → chunk-R4HSZU2J.js} +1 -1
- package/www/browser/{chunk-DE6E23ET.js → chunk-RKK4I2RT.js} +1 -1
- package/www/browser/chunk-RMIYLAEM.js +1 -0
- package/www/browser/chunk-RZA3IFQV.js +2 -0
- package/www/browser/{chunk-K7PESFPY.js → chunk-SD2HFD54.js} +1 -1
- package/www/browser/{chunk-BTQIUVTQ.js → chunk-SEJGGBE2.js} +1 -1
- package/www/browser/chunk-SSCUT2GF.js +1 -0
- package/www/browser/chunk-TCBOC5FF.js +1 -0
- package/www/browser/{chunk-AZ6SIMYH.js → chunk-TS5ZQYYY.js} +1 -1
- package/www/browser/chunk-TVJHI463.js +1 -0
- package/www/browser/{chunk-YNW4HEJO.js → chunk-TXAXE73U.js} +17 -17
- package/www/browser/{chunk-4X42HB6N.js → chunk-U2YWR3HF.js} +1 -1
- package/www/browser/{chunk-D2ODDESN.js → chunk-U3EUR236.js} +1 -1
- package/www/browser/chunk-UKCMUTYL.js +1 -0
- package/www/browser/{chunk-DLGJD6YU.js → chunk-UPOORT3S.js} +1 -1
- package/www/browser/chunk-VW3S7C2Z.js +1 -0
- package/www/browser/chunk-VZYJ3MSW.js +15 -0
- package/www/browser/{chunk-AELTP6YN.js → chunk-WCHN62X6.js} +1 -1
- package/www/browser/chunk-WWIPELAV.js +1 -0
- package/www/browser/{chunk-B3C35ET3.js → chunk-WYNERG74.js} +1 -1
- package/www/browser/{chunk-ZTDLWBW5.js → chunk-XJDJL3TQ.js} +1 -1
- package/www/browser/{chunk-EEDA5U4V.js → chunk-YV6QPLF5.js} +1 -1
- package/www/browser/{chunk-ONXBYGIG.js → chunk-YVRGRFK2.js} +1 -1
- package/www/browser/index.html +1 -1
- package/www/browser/main-7GYUOEJY.js +38 -0
- package/lib/plugins/api-client.plugin.d.ts +0 -3
- package/lib/plugins/api-client.plugin.js +0 -55
- package/lib/plugins/nginx.binding.store.d.ts +0 -4
- package/lib/plugins/nginx.binding.store.js +0 -39
- package/lib/plugins/nginx.plugin.d.ts +0 -3
- package/lib/plugins/nginx.plugin.js +0 -23
- package/www/browser/chunk-2L7NUOMX.js +0 -2
- package/www/browser/chunk-2NZJ7CN2.js +0 -20
- package/www/browser/chunk-3CM4SKDO.js +0 -15
- package/www/browser/chunk-3OHBKMAA.js +0 -1
- package/www/browser/chunk-4LBSLURA.js +0 -1
- package/www/browser/chunk-5DYX4DUX.js +0 -11
- package/www/browser/chunk-6SYVDN5L.js +0 -1
- package/www/browser/chunk-AMXRL4GR.js +0 -1
- package/www/browser/chunk-AV2ZODEH.js +0 -1
- package/www/browser/chunk-CN5J4WNO.js +0 -1
- package/www/browser/chunk-FK6Z4HLL.js +0 -1
- package/www/browser/chunk-FXCG34QS.js +0 -1
- package/www/browser/chunk-H5HGMOE6.js +0 -1
- package/www/browser/chunk-HB3HECPD.js +0 -1
- package/www/browser/chunk-HUMCWAKJ.js +0 -3
- package/www/browser/chunk-IKB3EQCP.js +0 -2
- package/www/browser/chunk-OSBDR36P.js +0 -1
- package/www/browser/chunk-XLFHB7RS.js +0 -3
- package/www/browser/main-N64WJCHX.js +0 -34
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as dn,b as un,c as fn}from"./chunk-DENFXXOY.js";import{a as pn,b as sn,c as ln,d as cn}from"./chunk-HJAP6WBI.js";import{a as gn,b as Cn,c as _n,d as zn,e as hn}from"./chunk-7QR6RHLA.js";import{a as mn,b as Ve,c as Ae,d as Re,e as oe}from"./chunk-SSCUT2GF.js";import{a as Be,b as fe}from"./chunk-PY3AUTHC.js";import{a as Rt,b as Wt,c as Lt}from"./chunk-6J6G7JEP.js";import{a as an}from"./chunk-UJKK4A7Y.js";import"./chunk-MPLGMTLT.js";import{a as Fe,b as Oe,c as de}from"./chunk-7AKVG375.js";import{b as nn}from"./chunk-2VJVGBXG.js";import{a as on,b as rn}from"./chunk-WCHN62X6.js";import{a as Ie,b as ue}from"./chunk-CO3CQHKV.js";import"./chunk-NNOWADVM.js";import"./chunk-RMIYLAEM.js";import{a as $t,c as Yt}from"./chunk-M6NZ6C2R.js";import{a as Z,b as I}from"./chunk-MBPB43C6.js";import{a as be,c as De,d as Kt,e as Xt,f as Ne}from"./chunk-CPJTSA6E.js";import{a as mt,b as L,c as G,d as $,f as Qt,g as Jt}from"./chunk-TXAXE73U.js";import{b as Zt}from"./chunk-442QFABJ.js";import{a as en,b as tn}from"./chunk-SD2HFD54.js";import{e as Se,f as Ee,g as le,l as ee}from"./chunk-U2YWR3HF.js";import"./chunk-PB2LGZNW.js";import{e as me,l as Ht}from"./chunk-K6C5ZIV2.js";import{$b as ce,Db as Y,Ea as v,Fa as P,Fb as U,Gb as Gt,Ib as Ut,Jb as q,Kb as qt,La as Vt,Ma as At,Na as j,Oa as H,Qa as D,Ra as S,Tb as E,Xb as je,Zb as K,ac as Q,dc as te,fc as ne}from"./chunk-VZYJ3MSW.js";import"./chunk-HFZLJHYR.js";import{e as Te,h as ze}from"./chunk-WUA5JFDD.js";import{i as It,k as Bt,n as h}from"./chunk-KRYMOHYF.js";import{$b as ae,A as at,Ac as wt,Ec as V,Fb as M,Fc as kt,Gb as ke,Gc as Tt,Ha as B,Jc as l,Kc as b,Lb as O,Lc as se,M as pt,Oa as xe,Oc as w,Pc as k,Q as gt,Qc as T,Rc as St,Sc as Et,Tc as jt,V as Ct,Wb as y,X as _t,Yb as x,Yc as bt,Zc as ct,_b as Mt,a as J,ac as pe,ad as Dt,b as rt,bc as g,bd as Nt,cc as r,dc as a,dd as W,ea as zt,ec as c,fa as st,g as ut,ic as Pt,id as A,jc as vt,jd as Ft,kc as lt,l as ve,lc as z,na as ht,nb as s,oa as ye,rc as m,sa as C,sb as F,sd as Ot,u as ft,uc as d,ya as u,yc as yt,z as _e,za as f,zb as we,zc as xt}from"./chunk-4BRW6LCZ.js";var Tn=()=>({padding:"8px"});function Sn(o,t){if(o&1){let e=z();r(0,"button",13),m("click",function(){u(e);let i=d();return f(i.copy())}),c(1,"nz-icon",14),a()}if(o&2){let e=d();g("nz-tooltip",e.copyied?"\u5DF2\u590D\u5236":"\u590D\u5236")}}function En(o,t){if(o&1&&(r(0,"div",9)(1,"nz-tag",15),l(2),a()()),o&2){let e=d();s(2),se("\u63A8\u8350\uFF1A",e.draft.detected==null?null:e.draft.detected.recommendedScript)}}function jn(o,t){o&1&&(r(0,"div",10),l(1," \u26A0\uFE0F \u8986\u76D6\u5DF2\u5B58\u5728\u76EE\u5F55 "),a())}function bn(o,t){if(o&1){let e=z();r(0,"button",16),m("click",function(){u(e);let i=d();return f(i.isDrawerOpen=!i.isDrawerOpen)}),c(1,"nz-icon",17),l(2," \u65E5\u5FD7\u8F93\u51FA "),a()}}function Dn(o,t){o&1&&(Pt(0),c(1,"app-terminal-view"),vt()),o&2&&(s(),kt("height",100,"%"))}var We=class o{draft;chunk="";clipboard=C(an);term;isDrawerOpen=!1;isCreating=Ot(!1);copyied=!1;ngOnChanges(t){t.chunk&&t.chunk.currentValue&&this.term&&this.term.write(this.chunk),t.isCreating&&t.isCreating.currentValue===!0&&(this.isDrawerOpen=!0)}copy(){let t=this.draft.repoUrl||"";this.clipboard.copy(t),this.copyied=!0,setTimeout(()=>{this.copyied=!1},2e3)}static \u0275fac=function(e){return new(e||o)};static \u0275cmp=M({type:o,selectors:[["app-create-summary-aside"]],viewQuery:function(e,n){if(e&1&&yt(mt,5),e&2){let i;xt(i=wt())&&(n.term=i.first)}},inputs:{draft:"draft",chunk:"chunk",isCreating:[1,"isCreating"]},outputs:{isCreating:"isCreatingChange"},features:[xe],decls:44,vars:16,consts:[["logActions",""],["nzTitle","\u6458\u8981","nzSize","small",3,"nzExtra"],[1,"item"],[1,"k"],[1,"v"],[1,"v","mono"],[1,"v",3,"nz-tooltip"],["nz-button","","nzType","text","nzSize","small",3,"nz-tooltip"],[1,"sep"],[1,"tag"],[1,"warn"],["nzTitle","\u65E5\u5FD7","nzPlacement","right",3,"nzOnClose","nzVisible","nzWidth","nzBodyStyle"],[4,"nzDrawerContent"],["nz-button","","nzType","text","nzSize","small",3,"click","nz-tooltip"],["nzType","copy","nzTheme","outline"],["nzColor","blue"],["nz-button","","nzType","text","nzSize","small",3,"click"],["nzType","desktop","nzTheme","outline"]],template:function(e,n){if(e&1){let i=z();r(0,"nz-card",1)(1,"div",2)(2,"span",3),l(3,"\u540D\u79F0"),a(),r(4,"span",4),l(5),a()(),r(6,"div",2)(7,"span",3),l(8,"\u8DEF\u5F84"),a(),r(9,"span",5),l(10),a()(),r(11,"div",2)(12,"span",3),l(13,"\u5305\u7BA1\u7406\u5668"),a(),r(14,"span",4),l(15),a()(),r(16,"div",2)(17,"span",3),l(18,"Git \u8FDC\u7A0B\u4ED3\u5E93"),a(),r(19,"span",6),l(20),a(),y(21,Sn,2,1,"button",7),a(),c(22,"div",8),r(23,"div",2)(24,"span",3),l(25,"\u6846\u67B6"),a(),r(26,"span",4),l(27),a()(),r(28,"div",2)(29,"span",3),l(30,"\u811A\u672C\u547D\u4EE4"),a(),r(31,"span",4),l(32),a()(),r(33,"div",2)(34,"span",3),l(35,"Git"),a(),r(36,"span",4),l(37),a()(),y(38,En,3,1,"div",9),y(39,jn,2,0,"div",10),a(),O(40,bn,3,0,"ng-template",null,0,W),r(42,"nz-drawer",11),m("nzOnClose",function(){return u(i),f(n.isDrawerOpen=!1)}),O(43,Dn,2,2,"ng-container",12),a()}if(e&2){let i=V(41);g("nzExtra",i),s(5),b(n.draft.name||"-"),s(5),b(n.draft.rootPath||"-"),s(5),b(n.draft.packageManager),s(4),g("nz-tooltip",n.draft.repoUrl||""),s(),b(n.draft.repoUrl||"-"),s(),x(n.draft.repoUrl?21:-1),s(6),b((n.draft.detected==null?null:n.draft.detected.framework)||"-"),s(5),b((n.draft.detected==null?null:n.draft.detected.scriptsCount)??"-"),s(5),b(n.draft.detected!=null&&n.draft.detected.hasGit?"Yes":"No"),s(),x(n.draft.detected!=null&&n.draft.detected.recommendedScript?38:-1),s(),x(n.draft.overwriteIfExists?39:-1),s(3),g("nzVisible",n.isDrawerOpen)("nzWidth",720)("nzBodyStyle",bt(15,Tn))}},dependencies:[h,I,Z,ue,Ie,ne,te,P,v,S,D,j,mt,Lt,Wt,Rt],styles:[".item[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:10px;padding:6px 0;align-items:center}.k[_ngcontent-%COMP%]{opacity:.7;width:90px;font-size:14px}.v[_ngcontent-%COMP%]{text-align:right;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mono[_ngcontent-%COMP%]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;word-break:break-all}.sep[_ngcontent-%COMP%]{height:1px;background:#0000000f;margin:10px 0}.tag[_ngcontent-%COMP%]{margin-top:8px;text-align:right}.warn[_ngcontent-%COMP%]{margin-top:10px;font-size:12px;color:#d46b08}"],changeDetection:0})};function Bn(o,t){o&1&&c(0,"nz-empty",6)}function Vn(o,t){if(o&1&&(r(0,"nz-tag",17),l(1),Dt(2,"titlecase"),a()),o&2){let e=d().$implicit,n=jt(4);g("nzColor",n==="angular"?"#dd0031":n==="vue"?"#42b883":"#108ee9"),s(),se(" ",Nt(2,2,e.kind)," ")}}function An(o,t){if(o&1&&(r(0,"div",14)(1,"div",15)(2,"div",16),l(3),a(),St(4),y(5,Vn,3,4,"nz-tag",17),a()()),o&2){let e=t.$implicit;g("nzValue",e.path),s(2),g("nz-tooltip",e.path),s(),b(e.path),s();let n=Et(e.kind);s(),x(n?5:-1)}}function Rn(o,t){if(o&1){let e=z();r(0,"nz-radio-group",13),T("ngModelChange",function(i){u(e);let p=d();return k(p.selectedPath,i)||(p.selectedPath=i),f(i)}),ae(1,An,6,5,"div",14,Mt),a()}if(o&2){let e=d();w("ngModel",e.selectedPath),s(),pe(e.filtered())}}var Ge=class o{constructor(t){this.modalRef=t}data=C(Se);keyword=B("");selectedPath=B(null);ngOnInit(){let{candidates:t,defaultPicked:e}=this.data,n=e&&t.includes(e)?e:t[0]??"";this.selectedPath.set(n?.path??null)}filtered=A(()=>{let t=(this.keyword()||"").trim().toLowerCase(),e=this.data.candidates??[];return t?e.filter(n=>n.path.toLowerCase().includes(t)):e});cancel(){this.modalRef.close(null)}ok(){let t=this.selectedPath();t&&this.modalRef.close({pickedRoot:t})}static \u0275fac=function(e){return new(e||o)(we(Ee))};static \u0275cmp=M({type:o,selectors:[["app-pick-workspace-modal"]],decls:17,vars:3,consts:[[1,"wrap"],[1,"hint"],[1,"toolbar"],["nz-input","","placeholder","\u8FC7\u6EE4\u8DEF\u5F84\uFF08\u5173\u952E\u5B57\uFF09",3,"ngModelChange","ngModel"],["nzType","search","nzTheme","outline","nzSuffix",""],[1,"list"],["nzNotFoundContent","\u6CA1\u6709\u5339\u914D\u7684\u76EE\u5F55"],["nzSize","large",3,"ngModel"],[1,"actions"],["nz-button","",3,"click"],["nzType","close","nzTheme","outline"],["nz-button","","nzType","primary",3,"click","disabled"],["nzType","check","nzTheme","outline"],["nzSize","large",3,"ngModelChange","ngModel"],["nz-radio","",1,"item",3,"nzValue"],[1,"path"],["nzTooltipPlacement","top",1,"value",3,"nz-tooltip"],["nzMode","default",3,"nzColor"]],template:function(e,n){e&1&&(r(0,"div",0)(1,"div",1),l(2," \u68C0\u6D4B\u5230\u8BE5\u4ED3\u5E93\u53EF\u80FD\u5305\u542B\u591A\u4E2A\u524D\u7AEF\u5DE5\u4F5C\u533A\uFF08Angular / Vue \u7B49\uFF09\u3002\u8BF7\u9009\u62E9\u4E00\u4E2A\u76EE\u5F55\u7EE7\u7EED\u5BFC\u5165\uFF1A "),a(),r(3,"div",2)(4,"nz-input-wrapper")(5,"input",3),T("ngModelChange",function(p){return k(n.keyword,p)||(n.keyword=p),p}),a(),c(6,"nz-icon",4),a()(),r(7,"div",5),y(8,Bn,1,0,"nz-empty",6)(9,Rn,3,1,"nz-radio-group",7),a(),r(10,"div",8)(11,"button",9),m("click",function(){return n.cancel()}),c(12,"nz-icon",10),l(13," \u53D6\u6D88 "),a(),r(14,"button",11),m("click",function(){return n.ok()}),c(15,"nz-icon",12),l(16," \u9009\u4E2D\u5E76\u7EE7\u7EED "),a()()()),e&2&&(s(5),w("ngModel",n.keyword),s(3),x(n.filtered().length===0?8:9),s(6),g("disabled",!n.selectedPath()))},dependencies:[h,E,Y,U,q,ee,Q,K,ce,de,Oe,Fe,S,D,j,H,P,v,De,be,ue,Ie,ne,te,Bt],styles:[".wrap[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px}.hint[_ngcontent-%COMP%]{opacity:.85}.toolbar[_ngcontent-%COMP%]{margin-top:4px}nz-radio-group[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{height:240px;overflow:auto;padding:8px;border:var(--app-border-color);border-radius:8px}.item[_ngcontent-%COMP%]{display:flex;gap:8px;padding:12px;border-radius:8px;margin:0;width:100%}.item[_ngcontent-%COMP%]:hover{background-color:var(--app-primary-3)}.item[_ngcontent-%COMP%] .ant-radio+span{display:flex;gap:12px;align-items:center;flex:1 1 auto;width:0;padding:0}.path[_ngcontent-%COMP%]{display:flex;gap:12px;flex:1 1 auto;text-overflow:ellipsis;white-space:nowrap;width:0;overflow:hidden}.path[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto;width:0;overflow:hidden}.actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}"]})};function Ln(o,t){o&1&&(r(0,"span",4),l(1,"\u8BE5\u8DEF\u5F84\u5DF2\u5B58\u5728"),a())}function Gn(o,t){if(o&1){let e=z();r(0,"input",15),T("ngModelChange",function(i){u(e);let p=d();return k(p.draft.initialCommitMessage,i)||(p.draft.initialCommitMessage=i),f(i)}),a()}if(o&2){let e=d();w("ngModel",e.draft.initialCommitMessage)}}var Qe=class o{draft;draftChange=new F;pathCheck$=new ve;pathExists=!1;fsApi=C(mn);ngOnInit(){this.computeRootPath(),this.pathCheck$.pipe(gt(200),Ct(),zt(t=>t?this.fsApi.pathExists(t):ft(!1))).subscribe(t=>{this.emit(),this.pathExists=t})}recalcRoot(){this.computeRootPath(),this.pathCheck$.next(this.draft.rootPath)}computeRootPath(){let t=(this.draft.parentDir??"").replace(/[\\/]+$/,""),e=(this.draft.name??"").trim();this.draft.rootPath=t&&e?`${t}/${e}`.replaceAll("\\","/"):t}emit(){this.draftChange.emit(J({},this.draft))}static \u0275fac=function(e){return new(e||o)};static \u0275cmp=M({type:o,selectors:[["app-step-basic"]],inputs:{draft:"draft"},outputs:{draftChange:"draftChange"},decls:40,vars:8,consts:[["nzTitle","\u57FA\u7840\u8BBE\u7F6E"],["nz-form","","nzLayout","vertical"],["nz-input","","name","name","placeholder","\u8F93\u5165\u9879\u76EE\u540D",3,"ngModelChange","ngModel"],[1,"hint"],[2,"margin-left","8px","color","#ff4d4f"],["name","pm",3,"ngModelChange","ngModel"],["nzValue","auto","nzLabel","\u9ED8\u8BA4"],["nzValue","npm","nzLabel","npm"],["nzValue","pnpm","nzLabel","pnpm"],["nzValue","yarn","nzLabel","yarn"],[1,"switch-row"],["name","overwrite",3,"ngModelChange","ngModel"],["name","skip",3,"ngModelChange","ngModel"],["name","initGit",3,"ngModelChange","ngModel"],["nz-input","","name","msg","placeholder","\u8986\u76D6\u63D0\u4EA4\u4FE1\u606F(\u9009\u586B)",3,"ngModel"],["nz-input","","name","msg","placeholder","\u8986\u76D6\u63D0\u4EA4\u4FE1\u606F(\u9009\u586B)",3,"ngModelChange","ngModel"]],template:function(e,n){e&1&&(r(0,"nz-card",0)(1,"form",1)(2,"nz-form-item")(3,"nz-form-label"),l(4,"\u9879\u76EE\u6587\u4EF6\u5939"),a(),r(5,"nz-form-control")(6,"input",2),T("ngModelChange",function(p){return k(n.draft.name,p)||(n.draft.name=p),p}),m("ngModelChange",function(){return n.recalcRoot()}),a(),r(7,"div",3),l(8),y(9,Ln,2,0,"span",4),a()()(),r(10,"nz-form-item")(11,"nz-form-label"),l(12,"\u5305\u7BA1\u7406\u5668"),a(),r(13,"nz-form-control")(14,"nz-select",5),T("ngModelChange",function(p){return k(n.draft.packageManager,p)||(n.draft.packageManager=p),p}),c(15,"nz-option",6)(16,"nz-option",7)(17,"nz-option",8)(18,"nz-option",9),a()()(),r(19,"nz-form-item")(20,"nz-form-label"),l(21,"\u66F4\u591A\u9009\u9879"),a(),r(22,"nz-form-control")(23,"div",10)(24,"span"),l(25,"\u82E5\u76EE\u6807\u6587\u4EF6\u5939\u5DF2\u5B58\u5728\u5219\u8986\u76D6"),a(),r(26,"nz-switch",11),T("ngModelChange",function(p){return k(n.draft.overwriteIfExists,p)||(n.draft.overwriteIfExists=p),p}),m("ngModelChange",function(){return n.emit()}),a()(),r(27,"div",10)(28,"span"),l(29,"\u65E0\u65B0\u624B\u6307\u5F15\u7684\u811A\u624B\u67B6\u9879\u76EE"),a(),r(30,"nz-switch",12),T("ngModelChange",function(p){return k(n.draft.skipOnboarding,p)||(n.draft.skipOnboarding=p),p}),a()()()(),r(31,"nz-form-item")(32,"nz-form-label"),l(33,"Git"),a(),r(34,"nz-form-control")(35,"div",10)(36,"span"),l(37,"\u521D\u59CB\u5316 git \u4ED3\u5E93\uFF08\u5EFA\u8BAE\uFF09"),a(),r(38,"nz-switch",13),T("ngModelChange",function(p){return k(n.draft.initGit,p)||(n.draft.initGit=p),p}),a()(),y(39,Gn,1,1,"input",14),a()()()()),e&2&&(s(6),w("ngModel",n.draft.name),s(2),se(" ",n.draft.rootPath," "),s(),x(n.pathExists?9:-1),s(5),w("ngModel",n.draft.packageManager),s(12),w("ngModel",n.draft.overwriteIfExists),s(4),w("ngModel",n.draft.skipOnboarding),s(8),w("ngModel",n.draft.initGit),s(),x(n.draft.initGit?39:-1))},dependencies:[h,E,qt,Y,U,Gt,q,Ut,hn,G,L,Cn,gn,zn,_n,Q,K,S,Ne,Kt,Xt,fe,Be,I,Z,ne,P,ee],styles:[".hint[_ngcontent-%COMP%]{margin-top:6px;font-size:12px;opacity:.7}.switch-row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding-bottom:4px}.switch-row[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:14px}.emit[_ngcontent-%COMP%]{margin-top:8px}"]})};var Je=class o{draft;draftChange=new F;emit(){this.draftChange.emit(J({},this.draft))}static \u0275fac=function(e){return new(e||o)};static \u0275cmp=M({type:o,selectors:[["app-step-config"]],inputs:{draft:"draft"},outputs:{draftChange:"draftChange"},decls:12,vars:2,consts:[["nzTitle","\u521B\u5EFA\u540E\u9ED8\u8BA4\u884C\u4E3A"],[1,"row"],[1,"label"],[3,"ngModelChange","ngModel"],[1,"row","col"],["nz-input","","placeholder","\u4F8B\u5982\uFF1Adev / start",3,"ngModelChange","ngModel"],[1,"hint"]],template:function(e,n){e&1&&(r(0,"nz-card",0)(1,"div",1)(2,"div",2),l(3,"\u7F6E\u9876\u6536\u85CF"),a(),r(4,"nz-switch",3),T("ngModelChange",function(p){return k(n.draft.pinFavorite,p)||(n.draft.pinFavorite=p),p}),m("ngModelChange",function(){return n.emit()}),a()(),c(5,"div",4),r(6,"div",4)(7,"div",2),l(8,"\u9ED8\u8BA4\u4EFB\u52A1\uFF08\u53EF\u9009\uFF09"),a(),r(9,"input",5),T("ngModelChange",function(p){return k(n.draft.defaultTaskName,p)||(n.draft.defaultTaskName=p),p}),m("ngModelChange",function(){return n.emit()}),a(),r(10,"div",6),l(11,"\u5EFA\u8BAE\u586B\u8BC6\u522B\u5230\u7684 dev \u6216 start"),a()()()),e&2&&(s(4),w("ngModel",n.draft.pinFavorite),s(5),w("ngModel",n.draft.defaultTaskName))},dependencies:[h,E,Y,U,q,I,Z,de,fe,Be,Q,K],styles:[".row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:10px 0}.row.col[_ngcontent-%COMP%]{flex-direction:column;align-items:flex-start;gap:8px}.label[_ngcontent-%COMP%]{font-weight:500}.hint[_ngcontent-%COMP%]{font-size:12px;opacity:.7}"]})};var He=class o{draft;draftChange=new F;emit(){this.draftChange.emit(J({},this.draft))}static \u0275fac=function(e){return new(e||o)};static \u0275cmp=M({type:o,selectors:[["app-step-features"]],inputs:{draft:"draft"},outputs:{draftChange:"draftChange"},decls:1,vars:0,consts:[["nzTitle","\u529F\u80FD\u5F00\u5173\uFF08Project Scope\uFF09"]],template:function(e,n){e&1&&c(0,"nz-card",0)},dependencies:[h,E,I,Z,fe],styles:[".row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:10px 0}.label[_ngcontent-%COMP%]{font-weight:500}"]})};var Ze=class o{nzModalData=C(Se);isModalVisible=!1;isSaving=!1;static \u0275fac=function(e){return new(e||o)};static \u0275cmp=M({type:o,selectors:[["app-git-import-modal-component"]],decls:8,vars:1,consts:[[1,"modal-body"],[1,"label"],["nz-input","","placeholder","\u8BF7\u8F93\u5165Git\u4ED3\u5E93\u5730\u5740","autofocus","",3,"ngModelChange","ngModel"],["nzInputPrefix","","nzType","github","nzTheme","outline"],[1,"hint"]],template:function(e,n){e&1&&(r(0,"div",0)(1,"label",1),l(2,"URL"),a(),r(3,"nz-input-wrapper")(4,"input",2),T("ngModelChange",function(p){return k(n.nzModalData.cloneUrl,p)||(n.nzModalData.cloneUrl=p),p}),a(),c(5,"nz-icon",3),a(),r(6,"div",4),l(7," Git \u4ED3\u5E93\u5730\u5740, \u5982 'username/repo'. \u53EF\u4EE5\u4F7F\u7528\u524D\u7F00\u5982 'gitlab:' \u6216 'bitbucket:'. "),a()()),e&2&&(s(4),w("ngModel",n.nzModalData.cloneUrl))},dependencies:[h,E,Y,U,q,P,v,ee,Q,K,ce,je,Ne,S,j],styles:[".hint[_ngcontent-%COMP%]{margin-top:6px;font-size:12px;opacity:.7}"]})};function Un(o,t){if(o&1){let e=z();r(0,"button",10),m("click",function(){u(e);let i=d();return f(i.requestDetect.emit())}),c(1,"nz-icon",11),a()}}var $e=class o{draft;draftChange=new F;requestDetect=new F;modal=C(le);emit(){this.draftChange.emit(J({},this.draft))}presetChange(t){if(this.draft.preset=t,t==="git"){this.openImportGitModal();return}else this.draft.repoUrl=void 0,this.emit()}openImportGitModal(){let t=this.modal.create({nzTitle:"\u4ECE Git \u4ED3\u5E93\u5BFC\u5165\u9879\u76EE",nzMaskClosable:!1,nzContent:Ze,nzCentered:!0,nzWidth:"580px",nzClosable:!1,nzData:{cloneUrl:"",isSaving:!1},nzFooter:[{label:"\u53D6\u6D88",type:"default",onClick:()=>{t.close(),this.draft.repoUrl=void 0,this.draft.preset="angular",this.emit()}},{label:"\u5BFC\u5165",type:"primary",onClick:e=>{let n=e.nzModalData.cloneUrl,i=e.nzModalData.isSaving;!n||!n.trim()||i||(e.nzModalData.isSaving=!0,this.draft.repoUrl=n.trim(),e.nzModalData.isSaving=!1,this.emit(),t.close())},disabled:e=>{let n=e?.nzModalData.cloneUrl;return!n||!n.trim()},loading:e=>e?.nzModalData.isSaving===!0}]})}static \u0275fac=function(e){return new(e||o)};static \u0275cmp=M({type:o,selectors:[["app-step-preset"]],inputs:{draft:"draft"},outputs:{draftChange:"draftChange",requestDetect:"requestDetect"},decls:19,vars:2,consts:[["reloadExtraTpl",""],["nzTitle","\u9009\u62E9\u4E00\u5957\u9884\u8BBE",3,"nzExtra"],["nzSize","large",3,"ngModelChange","ngModel"],["nz-radio","","nzValue","angular"],["for","angular"],[1,"hint"],["nz-radio","","nzValue","vue3"],["for","vue3"],["nz-radio","","nzValue","git"],["for","git"],["nz-button","","nzType","text","nzSize","small",3,"click"],["nzType","reload","nzTheme","outline"]],template:function(e,n){if(e&1){let i=z();r(0,"nz-card",1),O(1,Un,2,0,"ng-template",null,0,W),r(3,"nz-radio-group",2),T("ngModelChange",function(_){return u(i),k(n.draft.preset,_)||(n.draft.preset=_),f(_)}),m("ngModelChange",function(_){return u(i),f(n.presetChange(_))}),r(4,"div",3)(5,"label",4),l(6,"Angular"),a(),r(7,"div",5),l(8," \u9002\u7528\u4E8E\u4F7F\u7528 Angular \u6846\u67B6\u5F00\u53D1\u7684\u9879\u76EE\uFF0C\u652F\u6301 Angular CLI \u76F8\u5173\u4EFB\u52A1\u548C\u914D\u7F6E\u3002 "),a()(),r(9,"div",6)(10,"label",7),l(11,"Vue 3"),a(),r(12,"div",5),l(13," \u9002\u7528\u4E8E\u4F7F\u7528 Vue 3 \u6846\u67B6\u5F00\u53D1\u7684\u9879\u76EE\uFF0C\u652F\u6301 Vite \u548C Vue CLI \u76F8\u5173\u4EFB\u52A1\u548C\u914D\u7F6E\u3002 "),a()(),r(14,"div",8)(15,"label",9),l(16,"Git\u5BFC\u5165"),a(),r(17,"div",5),l(18," \u4ECE\u73B0\u6709\u7684 Git \u4ED3\u5E93\u5BFC\u5165\u9879\u76EE\uFF0C\u81EA\u52A8\u8BC6\u522B\u9879\u76EE\u7ED3\u6784\u548C\u914D\u7F6E\u3002 "),a()()()()}if(e&2){let i=V(2);g("nzExtra",i),s(3),w("ngModel",n.draft.preset)}},dependencies:[h,E,U,q,I,Z,nn,S,D,j,ue,P,v,de,Oe,Fe],styles:[".kv[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}.k[_ngcontent-%COMP%]{opacity:.7;display:inline-block;width:120px}.opt[_ngcontent-%COMP%]{margin-top:10px}nz-radio-group[_ngcontent-%COMP%]{width:100%}[nz-radio][_ngcontent-%COMP%]{display:block;padding:12px;border-radius:8px;width:100%;margin:0}[nz-radio][_ngcontent-%COMP%]:hover{background-color:var(--app-primary-3)}.hint[_ngcontent-%COMP%]{margin-left:24px;font-size:12px;opacity:.75}"]})};function Pn(){return{preset:"angular",name:"",parentDir:"",rootPath:"",packageManager:"auto",overwriteIfExists:!1,skipOnboarding:!0,initGit:!0,initialCommitMessage:"",importScriptsAsTasks:!0,importMakefileTasks:!1,importDockerComposeTasks:!1,generateCommonTasks:!0,pinFavorite:!1,defaultTaskName:"",cliFramework:"angular",cliTool:"@angular/cli",cliArgs:[]}}function qn(o,t){if(o&1){let e=z();r(0,"app-step-basic",16),m("draftChange",function(i){u(e);let p=d();return f(p.setDraft(i))}),a()}if(o&2){let e=d();g("draft",e.draft())}}function Qn(o,t){if(o&1){let e=z();r(0,"app-step-preset",17),m("draftChange",function(i){u(e);let p=d();return f(p.setDraft(i))})("requestDetect",function(){u(e);let i=d();return f(i.detectNow())}),a()}if(o&2){let e=d();g("draft",e.draft())}}function Jn(o,t){if(o&1){let e=z();r(0,"app-step-features",16),m("draftChange",function(i){u(e);let p=d();return f(p.setDraft(i))}),a()}if(o&2){let e=d();g("draft",e.draft())}}function Hn(o,t){if(o&1){let e=z();r(0,"app-step-config",16),m("draftChange",function(i){u(e);let p=d();return f(p.setDraft(i))}),a()}if(o&2){let e=d();g("draft",e.draft())}}function Zn(o,t){if(o&1){let e=z();r(0,"button",18),m("click",function(){u(e);let i=d();return f(i.cancel())}),c(1,"nz-icon",19),l(2," \u53D6\u6D88 "),a()}}function $n(o,t){if(o&1){let e=z();r(0,"button",18),m("click",function(){u(e);let i=d();return f(i.prev())}),c(1,"nz-icon",20),l(2," \u4E0A\u4E00\u6B65 "),a()}}function Yn(o,t){if(o&1){let e=z();r(0,"button",21),m("click",function(){u(e);let i=d();return f(i.create())}),c(1,"nz-icon",22),l(2," \u521B\u5EFA\u9879\u76EE "),a()}if(o&2){let e=d();g("disabled",e.creating())}}function Kn(o,t){if(o&1){let e=z();r(0,"button",21),m("click",function(){u(e);let i=d();return f(i.next())}),l(1," \u4E0B\u4E00\u6B65 "),c(2,"nz-icon",23),a()}if(o&2){let e=d();g("disabled",!e.canNext()||!e.canGoNext())}}var Ye=class o{step=B(0);draft=B(Pn());creating=B(!1);output=B("");isDrawerOpen=B(!1);fs=C(Ve);parentDir=this.fs.currentPath();modalRef=C(Ee);api=C(Re);modal=C(le);notify=C(me);taskStream=C($t);projectState=C(oe);router=C(Te);sub=new ut;ngOnInit(){let t=this.draft(),e=this.parentDir;this.draft.set(rt(J({},t),{rootPath:"",parentDir:e,name:""}))}detectNow(){let t=this.draft();t.rootPath?.trim()&&this.api.detect(t.rootPath).subscribe(e=>{let n=e.scripts??[],i={framework:e.framework??"unknown",hasPackageJson:!!e.hasPackageJson,scriptsCount:n.length,hasGit:!!e.hasGit,lockFile:e.lockFile??"unknown",recommendedScript:n.includes("dev")?"dev":n.includes("start")?"start":"",hasMakefile:!!e.hasMakefile,hasDockerCompose:!!e.hasDockerCompose},p=n.length>0,_=!!e.hasMakefile,Pe=!!e.hasDockerCompose;this.draft.set(rt(J({},t),{detected:i,importScriptsAsTasks:p,importMakefileTasks:_&&t.importMakefileTasks,importDockerComposeTasks:Pe&&t.importDockerComposeTasks,defaultTaskName:i.recommendedScript||t.defaultTaskName}))})}async create(){let t=this.draft();if(!t.rootPath?.trim()||!t.name?.trim()){this.notify.error("\u8BF7\u5148\u5B8C\u5584\u9879\u76EE\u4FE1\u606F");return}if(this.creating())return;let e="\u786E\u8BA4\u521B\u5EFA\u9879\u76EE\uFF1F",n=`\u8BF7\u786E\u8BA4\u76EE\u6807\u8DEF\u5F84 ${t.rootPath}\uFF0C\u786E\u5B9A\u8981\u521B\u5EFA\u8BE5\u9879\u76EE\u5417\uFF1F`,i="\u786E\u8BA4\u521B\u5EFA",p=!1;t.overwriteIfExists&&(e="\u786E\u8BA4\u8986\u76D6\u5DF2\u5B58\u5728\u7684\u9879\u76EE\uFF1F",n=`\u8BF7\u786E\u8BA4\u76EE\u6807\u8DEF\u5F84 ${t.rootPath}\uFF0C\u521B\u5EFA\u65F6\u4F1A\u8986\u76D6\u539F\u6709\u6570\u636E\uFF0C\u4E14\u4E0D\u53EF\u6062\u590D\uFF0C\u786E\u5B9A\u8981\u7EE7\u7EED\u5417\uFF1F`,i="\u786E\u8BA4\u8986\u76D6",p=!0);let _=this.modal.confirm({nzTitle:e,nzContent:n,nzOkText:i,nzCancelText:"\u53D6\u6D88",nzOkDanger:p,nzCentered:!0,nzOnOk:async()=>{this.doCreate(t),_.close()}})}async doCreate(t){this.creating.set(!0),this.taskStream.ensureConnected();let e=new ve;try{let n=t.preset==="git"?this.api.bootstrapByGit(t):this.api.bootstrapByCli(t),{taskId:i}=await _e(n);this.taskStream.subscribeTask(i,3e3),this.sub.add(this.taskStream.output$(i).subscribe(Ce=>{let wn=Ce.payload.text??"";this.output.set(wn)}));let p=await this.waitForTaskEvent(i,["bootstrapDone","bootstrapFailed","bootstrapNeedPickRoot"],600*1e3,e);if(p.type==="bootstrapDone"){let Ce=p.payload;this.notify.success("\u9879\u76EE\u521B\u5EFA\u5B8C\u6210"),this.projectState.getProjects(Ce.projectId),this.modalRef.close({ok:!0}),this.router.navigate(["/dashboard"]);return}if(p.type==="bootstrapFailed"){let Ce=p.payload;this.notify.error(`\u9879\u76EE\u521B\u5EFA\u5931\u8D25\uFF1A${Ce?.reason??"unknown error"}`);return}let Pe=p.payload?.candidates??[];if(!Pe.length){this.notify.error("\u9879\u76EE\u5BFC\u5165\u5931\u8D25\uFF1A\u672A\u627E\u5230\u53EF\u5BFC\u5165\u7684\u5DE5\u4F5C\u533A\u76EE\u5F55");return}let dt=await this.pickWorkspaceRootByModal(Pe);if(!dt){this.modal.info({nzTitle:"\u63D0\u793A",nzContent:"\u60A8\u672A\u9009\u62E9\u4EFB\u4F55\u76EE\u5F55\uFF0C\u9879\u76EE\u5BFC\u5165\u5DF2\u53D6\u6D88\u3002\u53EF\u901A\u8FC7\u201C\u5BFC\u5165\u201D\u529F\u80FD\u91CD\u65B0\u624B\u52A8\u5BFC\u5165\u3002",nzCancelText:null,nzOkText:"\u6211\u77E5\u9053\u4E86",nzOnOk:()=>{this.modalRef.close()}});return}let xn=await _e(this.api.bootstrapPickRoot({taskId:i,pickedRoot:dt}).pipe(at(60*1e3),st(e)));this.notify.success("\u9879\u76EE\u5BFC\u5165\u5B8C\u6210"),this.projectState.getProjects(xn.projectId),this.modalRef.close({ok:!0}),this.router.navigate(["/dashboard"])}catch(n){let i=n?.name==="TimeoutError"?"\u521B\u5EFA\u8D85\u65F6\uFF1A\u811A\u624B\u67B6/\u514B\u9686\u53EF\u80FD\u5361\u4F4F\u4E86\uFF0C\u8BF7\u67E5\u770B\u4EFB\u52A1\u65E5\u5FD7":Ht(n,"\u521B\u5EFA\u5931\u8D25");console.error("\u521B\u5EFA\u9879\u76EE\u5931\u8D25",n),this.notify.error(i)}finally{e.next(),e.complete(),this.creating.set(!1)}}async waitForTaskEvent(t,e,n,i){let p=new Set(e);return await _e(this.taskStream.events$().pipe(pt(_=>_?.payload?.taskId===t),pt(_=>p.has(_.type)),_t(),at(n),st(i)))}setDraft(t){this.draft.set(t)}canNext(){let t=this.step(),e=this.draft();return t===0?!(!e.name?.trim()||!e.parentDir?.trim()||!e.rootPath?.trim()):t===1?!!e.rootPath?.trim():!0}async next(){let t=this.step();if(t===0&&await this.api.checkPathExists(this.draft().rootPath)&&!this.draft().overwriteIfExists){this.notify.error("\u8BE5\u8DEF\u5F84\u4E0D\u53EF\u7528\u6216\u5DF2\u5B58\u5728\u91CD\u590D\u9879\u76EE");return}let e=Math.min(3,t+1);this.step.set(e)}prev(){this.step.set(Math.max(0,this.step()-1))}canGoNext(){let t=this.step();return t===0?!0:t===1?this.isManual():t===2}isManual(){return this.draft().preset==="manual"}canCreateHere(){let t=this.step();return this.isManual()&&t===3||!this.isManual()&&t===1}cancel(){this.modal.confirm({nzTitle:"\u53D6\u6D88\u521B\u5EFA\u9879\u76EE",nzContent:"\u786E\u5B9A\u8981\u53D6\u6D88\u521B\u5EFA\u5417",nzOkDanger:!0,nzOkText:"\u53D6\u6D88\u521B\u5EFA",nzCancelText:"\u4E0D",nzCentered:!0,nzOnOk:()=>{this.modalRef.close()}})}async pickWorkspaceRootByModal(t){let e=this.modal.create({nzTitle:"\u9009\u62E9\u8981\u5BFC\u5165\u7684\u5DE5\u4F5C\u533A\u76EE\u5F55",nzContent:Ge,nzData:{candidates:t,defaultPicked:t[0]},nzFooter:null,nzCentered:!0,nzMaskClosable:!1,nzClosable:!0,nzWidth:720});return(await _e(e.afterClose))?.pickedRoot??null}static \u0275fac=function(e){return new(e||o)};static \u0275cmp=M({type:o,selectors:[["app-project-create-modal"]],decls:21,vars:9,consts:[["nz-row","","nzJustify","start"],["nz-col","","nzSpan","24"],[3,"nzCurrent"],["nzTitle","\u8BE6\u60C5"],["nzTitle","\u9884\u8BBE"],["nzTitle","\u529F\u80FD"],["nzTitle","\u914D\u7F6E"],[1,"content"],["nzTip","\u6B63\u5728\u521B\u5EFA\u9879\u76EE...",3,"nzSpinning"],[1,"main"],[3,"draft"],[1,"actions"],["nz-button",""],["nz-button","","nzType","primary",3,"disabled"],[1,"aside"],[3,"isCreatingChange","draft","isCreating","chunk"],[3,"draftChange","draft"],[3,"draftChange","requestDetect","draft"],["nz-button","",3,"click"],["nzType","close","nzTheme","outline"],["nzType","arrow-left","nzTheme","outline"],["nz-button","","nzType","primary",3,"click","disabled"],["nzType","check","nzTheme","outline"],["nzType","arrow-right","nzTheme","outline"]],template:function(e,n){if(e&1&&(r(0,"div",0)(1,"div",1)(2,"nz-steps",2),c(3,"nz-step",3)(4,"nz-step",4)(5,"nz-step",5)(6,"nz-step",6),a(),r(7,"div",7)(8,"nz-spin",8)(9,"div",9),y(10,qn,1,1,"app-step-basic",10)(11,Qn,1,1,"app-step-preset",10)(12,Jn,1,1,"app-step-features",10)(13,Hn,1,1,"app-step-config",10),r(14,"div",11),y(15,Zn,3,0,"button",12),y(16,$n,3,0,"button",12),y(17,Yn,3,1,"button",13)(18,Kn,3,1,"button",13),a()()(),r(19,"div",14)(20,"app-create-summary-aside",15),T("isCreatingChange",function(p){return k(n.creating,p)||(n.creating=p),p}),a()()()()()),e&2){let i;s(2),g("nzCurrent",n.step()),s(6),g("nzSpinning",n.creating()),s(2),x((i=n.step())===0?10:i===1?11:i===2?12:i===3?13:-1),s(5),x(n.step()===0?15:-1),s(),x(n.step()>0?16:-1),s(),x(n.canCreateHere()?17:18),s(3),g("draft",n.draft()),w("isCreating",n.creating),g("chunk",n.output())}},dependencies:[h,E,ee,I,$,G,L,fn,un,dn,S,D,j,H,Q,P,v,rn,on,Qe,$e,He,Je,We],styles:[".content[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 360px;gap:16px;margin-top:16px}.main[_ngcontent-%COMP%]{min-height:420px}.actions[_ngcontent-%COMP%]{display:flex;gap:8px;justify-content:flex-end;margin-top:18px}.aside[_ngcontent-%COMP%]{position:sticky;top:16px;height:fit-content}"]})};var Ke=class o{constructor(t){this.modal=t}goCreate(){let t=this.modal.create({nzTitle:"\u521B\u5EFA\u65B0\u9879\u76EE",nzFooter:null,nzMaskClosable:!1,nzClosable:!1,nzContent:Ye,nzWidth:"1020px",nzCentered:!0}),e=t.getContentComponent();t.afterClose.subscribe(n=>{n?.ok})}static \u0275fac=function(e){return new(e||o)(we(le))};static \u0275cmp=M({type:o,selectors:[["app-project-create"]],decls:7,vars:0,consts:[["nz-row","",1,"page"],["nz-col","","nzSpan","16","nzOffset","4",1,"explorer-container"],[1,"actions-bar"],["nz-button","","nzType","primary","nzSize","large",3,"click"],["nzType","plus","nzTheme","outline"]],template:function(e,n){e&1&&(r(0,"div",0)(1,"div",1),c(2,"app-fs-explorer"),a(),r(3,"div",2)(4,"button",3),m("click",function(){return n.goCreate()}),c(5,"nz-icon",4),l(6," \u5728\u6B64\u521B\u5EFA\u65B0\u9879\u76EE "),a()()())},dependencies:[h,S,D,j,H,$,G,L,Ae,P,v],styles:[".page[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;flex-direction:column}.page[_ngcontent-%COMP%] .explorer-container[_ngcontent-%COMP%]{flex:1 1 auto;height:0}.page[_ngcontent-%COMP%] .actions-bar[_ngcontent-%COMP%]{flex:0 0 auto;padding:16px;display:flex;justify-content:center;align-items:center}"]})};var ge=class o{fs=C(Ve);projectApi=C(Re);projectState=C(oe);active=B(!1);checking=B(!1);result=B(null);canImport=A(()=>this.result()?.ok===!0);warnings=A(()=>this.result()?.warnings??[]);reason=A(()=>this.result()?.reason??"");currentPath=A(()=>this.fs.currentPath()||this.fs.path());_seq=0;notify=C(me);constructor(){Ft(()=>{if(!this.active())return;let t=this.currentPath();t&&this.check(t)})}enter(){this.active.set(!0)}leave(){this.active.set(!1),this.result.set(null)}check(t){let e=++this._seq;this.checking.set(!0),this.result.set(null),this.projectApi.checkImport(t).subscribe({next:n=>{e===this._seq&&this.result.set(n)},error:n=>{e===this._seq&&this.result.set({ok:!1,root:t,reason:n?.message||"check failed"})},complete:()=>{e===this._seq&&this.checking.set(!1)}})}import(t){let e=this.currentPath();if(!e||!this.canImport())return;let n=e.replace(/[\\\/]+$/,"").split(/[\\\/]/).pop()||"New Project";this.projectApi.importByPath({root:e,name:t||n,syncTasks:!0}).subscribe({next:i=>{this.projectState.getProjects(),this.projectState.setCurrentProjectById(i.id),this.check(e),this.notify.success("\u9879\u76EE\u5BFC\u5165\u6210\u529F")}})}static \u0275fac=function(e){return new(e||o)};static \u0275prov=ht({token:o,factory:o.\u0275fac,providedIn:"root"})};var Xe=class o{importState=C(ge);static \u0275fac=function(e){return new(e||o)};static \u0275cmp=M({type:o,selectors:[["app-project-import"]],decls:7,vars:1,consts:[["nz-row","",1,"page"],["nz-col","","nzSpan","16","nzOffset","4",1,"explorer-container"],[1,"actions-bar","center"],["nz-button","","nzSize","large","nzType","primary",3,"click","disabled"],["nzType","import","nzTheme","outline"]],template:function(e,n){e&1&&(r(0,"div",0)(1,"div",1),c(2,"app-fs-explorer"),a(),r(3,"div",2)(4,"button",3),m("click",function(){return n.importState.import()}),c(5,"nz-icon",4),l(6," \u5BFC\u5165\u8FD9\u4E2A\u6587\u4EF6\u5939 "),a()()()),e&2&&(s(4),g("disabled",n.importState.checking()||!n.importState.canImport()))},dependencies:[h,E,$,G,L,S,D,j,H,P,v,Ae],styles:[".page[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;flex-direction:column}.page[_ngcontent-%COMP%] .explorer-container[_ngcontent-%COMP%]{flex:1 1 auto;height:0}.page[_ngcontent-%COMP%] .actions-bar[_ngcontent-%COMP%]{flex:0 0 auto;padding:16px;display:flex;justify-content:center;align-items:center}"]})};var Xn=(o,t)=>t.spec.id;function eo(o,t){if(o&1){let e=z();r(0,"div",8)(1,"div",9),m("click",function(){let i=u(e).$implicit,p=d();return f(p.openTask(i))}),r(2,"div",10),c(3,"nz-icon",11),a(),r(4,"div",12)(5,"div",13)(6,"span"),l(7),a()(),r(8,"div",14)(9,"span"),l(10),a()()()(),r(11,"button",15),m("click",function(i){let p=u(e).$implicit,_=d();return i.stopPropagation(),f(_.toggleTask(p))}),c(12,"nz-icon",16),a()()}if(o&2){let e=t.$implicit,n=d();g("nzTooltipTitle",n.getTaskDescription(e)),s(7),b(e.spec.name),s(3),b(n.getTaskDescription(e)),s(),g("disabled",(e.runtime==null?null:e.runtime.status)==="stopping"),s(),g("nzType",n.getTaskActionIcon(e))}}var et=class o{projectId;projectState=C(oe);router=C(Te);state=C(Yt);tasks=A(()=>this.projectId?this.state.rowsViewOf(this.projectId)():[]);async ngOnChanges(){this.projectId&&await this.state.ensureProjectLoaded(this.projectId)}toggleTask(t){let e=t?.spec?.id?.trim();e&&t.runtime?.status!=="stopping"&&(t.runtime?.status==="running"?this.state.stopSelected(e):this.state.startSelected(e),this.openTask(t))}async openTask(t){this.state.select(t.spec.id),await this.router.navigate(["/tasks"]),this.projectState.setCurrentProjectById(t.spec.projectId)}getTaskName(t){return t.spec.name||t.spec.id}getTaskDescription(t){let e=t.runtime?.status;return t.runtime?this.computedStatusText(e):t.spec.description||""}getTaskActionIcon(t){let e=t.runtime?.status;return e==="running"||e==="stopping"?"pause-circle":"play-circle"}computedStatusText(t){switch(t){case"running":return"\u8FD0\u884C\u4E2D";case"stopping":return"\u505C\u6B62\u4E2D";case"success":return"\u6210\u529F";case"failed":return"\u9519\u8BEF";case"stopped":return"\u5DF2\u505C\u6B62";default:return"\u7A7A\u95F2"}}static \u0275fac=function(e){return new(e||o)};static \u0275cmp=M({type:o,selectors:[["app-project-item-popover"]],inputs:{projectId:"projectId"},features:[xe],decls:11,vars:0,consts:[[1,"dropdown-content"],[1,"pane-toolbar"],[1,"icon"],["nzType","inbox","nzTheme","outline"],[1,"title"],["nz-button","","type","button","nzType","text"],["nzType","close","nzTheme","outline"],[1,"tasks"],["nz-tooltip","","nzTooltipPlacement","right",1,"task-item",3,"nzTooltipTitle"],[1,"item-content",3,"click"],[1,"item-logo"],["nzType","code","nzTheme","outline"],[1,"list-item-info"],[1,"name"],[1,"description"],["nz-button","","nzType","text","type","button",3,"click","disabled"],["nzTheme","outline",3,"nzType"]],template:function(e,n){e&1&&(r(0,"div",0)(1,"div",1)(2,"div",2),c(3,"nz-icon",3),a(),r(4,"div",4),l(5,"\u4EFB\u52A1"),a(),r(6,"button",5),c(7,"nz-icon",6),a()(),r(8,"div",7),ae(9,eo,13,5,"div",8,Xn),a()()),e&2&&(s(9),pe(n.tasks()))},dependencies:[h,P,v,S,D,j,ne,te,ze],styles:[".dropdown-content[_ngcontent-%COMP%]{display:flex;flex-direction:column}.dropdown-content[_ngcontent-%COMP%] .pane-toolbar[_ngcontent-%COMP%]{display:flex;flex-direction:row;align-items:center;padding:6px 6px 6px 16px}.dropdown-content[_ngcontent-%COMP%] .pane-toolbar[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{flex:auto 0 0}.dropdown-content[_ngcontent-%COMP%] .pane-toolbar[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{font-size:18px;margin-right:6px}.dropdown-content[_ngcontent-%COMP%] .pane-toolbar[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{flex:100% 1 1;width:0;overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.dropdown-content[_ngcontent-%COMP%] .tasks[_ngcontent-%COMP%]{width:320px;max-height:360px;overflow:hidden auto}.dropdown-content[_ngcontent-%COMP%] .tasks[_ngcontent-%COMP%] .task-item[_ngcontent-%COMP%]{padding:16px;display:flex;flex-direction:row;align-items:center}.dropdown-content[_ngcontent-%COMP%] .tasks[_ngcontent-%COMP%] .task-item[_ngcontent-%COMP%]:hover{background:#f5f5f5}.dropdown-content[_ngcontent-%COMP%] .tasks[_ngcontent-%COMP%] .task-item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]{display:flex;flex-direction:row;align-items:center;flex:100% 1 1;width:0;gap:16px;cursor:pointer}.dropdown-content[_ngcontent-%COMP%] .tasks[_ngcontent-%COMP%] .task-item[_ngcontent-%COMP%] .item-logo[_ngcontent-%COMP%]{font-size:42px;margin-right:16px;flex:auto 0 0;display:inline-flex;align-items:center}.dropdown-content[_ngcontent-%COMP%] .tasks[_ngcontent-%COMP%] .task-item[_ngcontent-%COMP%] .list-item-info[_ngcontent-%COMP%]{flex:100% 1 1;width:0;overflow:hidden;display:flex;flex-direction:column;align-items:stretch;justify-content:center}.dropdown-content[_ngcontent-%COMP%] .tasks[_ngcontent-%COMP%] .task-item[_ngcontent-%COMP%] .list-item-info[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-content[_ngcontent-%COMP%] .tasks[_ngcontent-%COMP%] .task-item[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{flex:auto 0 0}.dropdown-content[_ngcontent-%COMP%] .tasks[_ngcontent-%COMP%] .task-item[_ngcontent-%COMP%] button[_ngcontent-%COMP%] nz-icon[_ngcontent-%COMP%]{font-size:24px}"]})};function to(o,t){if(o&1){let e=z();r(0,"button",20),m("click",function(){u(e);let i=d();return f(i.openPageUrl(i.project==null?null:i.project.repoPageUrl))}),c(1,"nz-icon",21),a()}}function no(o,t){if(o&1&&c(0,"app-project-item-popover",22),o&2){let e=d();g("projectId",e.project==null?null:e.project.id)}}var tt=class o{taskRuntime=C(Zt);notify=C(me);project=null;open=!1;selectProject=new F;toggleFavorite=new F;editProject=new F;openInEditor=new F;deleteProject=new F;tasksRunningCount=A(()=>{let t=this.project?.id?.trim();return t?this.taskRuntime.runningCountSignal(t)():0});hasTasksRunning=A(()=>this.tasksRunningCount()>0);taskBadgeTip=A(()=>{let t=this.tasksRunningCount();return t>0?`${t} \u4E2A\u4EFB\u52A1\u6B63\u5728\u8FD0\u884C`:"\u4EFB\u52A1"});del(){if(this.hasTasksRunning()){this.notify.warn("\u5F53\u524D\u9879\u76EE\u6709\u4EFB\u52A1\u6B63\u5728\u8FD0\u884C\uFF0C\u8BF7\u5148\u505C\u6B62\u8FD9\u4E9B\u4EFB\u52A1\u540E\u518D\u5220\u9664\u9879\u76EE\u3002");return}this.deleteProject.emit()}openPageUrl(t){t&&window.open(t,"_blank")}static \u0275fac=function(e){return new(e||o)};static \u0275cmp=M({type:o,selectors:[["app-project-item"]],inputs:{project:"project",open:"open"},outputs:{selectProject:"selectProject",toggleFavorite:"toggleFavorite",editProject:"editProject",openInEditor:"openInEditor",deleteProject:"deleteProject"},decls:28,vars:10,consts:[["contentTemplate",""],["nz-row","",1,"project-item"],["nz-col","","nzSpan","24",1,"content"],[1,"favorite"],["nz-button","","nzType","primary",3,"click"],["nzType","star",3,"nzTheme"],[1,"info",3,"click"],[1,"list-item-info"],[1,"name"],["nz-popover","","nzPopoverTrigger","click","nzPopoverPlacement","right",1,"task-popover-trigger",3,"click","nzPopoverContent","nzPopoverOverlayClassName"],[3,"nzStatus","nz-tooltip"],[1,"root-path"],[1,"actions"],["nzSize","large"],["nzType","code","nzTheme","outline"],["nz-button","","nzType","primary","nz-tooltip","\u7F16\u8F91",3,"click"],["nzType","edit","nzTheme","outline"],["nz-button","","nzType","primary","nz-tooltip","\u6253\u5F00\u4ED3\u5E93\u5730\u5740"],["nz-button","","nzType","primary","nz-tooltip","\u5220\u9664",3,"click"],["nzType","delete","nzTheme","outline"],["nz-button","","nzType","primary","nz-tooltip","\u6253\u5F00\u4ED3\u5E93\u5730\u5740",3,"click"],["nzType","global","nzTheme","outline"],[3,"projectId"]],template:function(e,n){if(e&1){let i=z();r(0,"div",1)(1,"div",2)(2,"div",3)(3,"button",4),m("click",function(_){return u(i),_.stopPropagation(),f(n.toggleFavorite.emit())}),c(4,"nz-icon",5),a()(),r(5,"div",6),m("click",function(){return u(i),f(n.selectProject.emit())}),r(6,"div",7)(7,"div",8)(8,"span"),l(9),a(),r(10,"span",9),m("click",function(_){return u(i),f(_.stopPropagation())}),c(11,"nz-badge",10),a()(),r(12,"div",11)(13,"span"),l(14),a()()()(),r(15,"div",12)(16,"nz-space",13)(17,"button",4),m("click",function(){return u(i),f(n.openInEditor.emit())}),c(18,"nz-icon",14),r(19,"span"),l(20,"\u5728\u7F16\u8F91\u5668\u4E2D\u6253\u5F00"),a()(),r(21,"button",15),m("click",function(){return u(i),f(n.editProject.emit())}),c(22,"nz-icon",16),a(),y(23,to,2,0,"button",17),r(24,"button",18),m("click",function(){return u(i),f(n.del())}),c(25,"nz-icon",19),a()()()()(),O(26,no,1,1,"ng-template",null,0,W)}if(e&2){let i=V(27);Tt("open",n.open),s(4),g("nzTheme",n.project!=null&&n.project.isFavorite?"fill":"outline"),s(5),b(n.project==null?null:n.project.name),s(),g("nzPopoverContent",i)("nzPopoverOverlayClassName","project-item-popover"),s(),g("nzStatus",n.hasTasksRunning()?"processing":"default")("nz-tooltip",n.taskBadgeTip()),s(3),b(n.project==null?null:n.project.root),s(9),x(n.project!=null&&n.project.repoPageUrl?23:-1)}},dependencies:[h,E,$,G,L,S,D,j,H,P,v,Jt,Qt,tn,en,At,Vt,et,te],styles:['.project-item[_ngcontent-%COMP%]{border-radius:4px;padding:0;margin:8px 0;transition:all .3s;cursor:pointer}.project-item.open[_ngcontent-%COMP%], .project-item[_ngcontent-%COMP%]:hover{box-shadow:0 4px 12px #0000001a;background:var(--app-primary-3)}.project-item[_ngcontent-%COMP%] .content[_ngcontent-%COMP%]{padding:16px;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto;grid-template-areas:"icon info actions";grid-gap:16px;align-items:center}.project-item[_ngcontent-%COMP%] .content[_ngcontent-%COMP%] .favorite[_ngcontent-%COMP%]{grid-area:icon;display:flex;align-items:center;justify-content:center}.project-item[_ngcontent-%COMP%] .content[_ngcontent-%COMP%] .info[_ngcontent-%COMP%]{grid-area:info;-webkit-user-select:none;user-select:none}.project-item[_ngcontent-%COMP%] .content[_ngcontent-%COMP%] .info[_ngcontent-%COMP%] .list-item-info[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:4px}.project-item[_ngcontent-%COMP%] .content[_ngcontent-%COMP%] .info[_ngcontent-%COMP%] .list-item-info[_ngcontent-%COMP%] .name[_ngcontent-%COMP%]{flex:auto 0 0}.project-item[_ngcontent-%COMP%] .content[_ngcontent-%COMP%] .info[_ngcontent-%COMP%] .list-item-info[_ngcontent-%COMP%] .name[_ngcontent-%COMP%] .task-popover-trigger[_ngcontent-%COMP%]{display:inline-block;margin-left:8px;cursor:pointer}.project-item[_ngcontent-%COMP%] .content[_ngcontent-%COMP%] .info[_ngcontent-%COMP%] .list-item-info[_ngcontent-%COMP%] .name[_ngcontent-%COMP%] .task-popover-trigger[_ngcontent-%COMP%] nz-badge[_ngcontent-%COMP%]{font-size:18px}.project-item[_ngcontent-%COMP%] .content[_ngcontent-%COMP%] .info[_ngcontent-%COMP%] .list-item-info[_ngcontent-%COMP%] .root-path[_ngcontent-%COMP%]{flex:auto 0 0;opacity:.7;font-size:14px}']})};var vn=o=>({$implicit:o}),oo=(o,t)=>t.id;function io(o,t){o&1&<(0)}function ro(o,t){if(o&1&&(r(0,"div",6)(1,"h2"),l(2,"\u6536\u85CF\u7684\u9879\u76EE"),a()(),O(3,io,1,0,"ng-container",7)),o&2){let e=d(),n=V(11);s(3),g("ngTemplateOutlet",n)("ngTemplateOutletContext",ct(2,vn,e.projectState.favoriteProjects()))}}function ao(o,t){o&1&&(r(0,"div",6)(1,"h2"),l(2,"\u66F4\u591A\u9879\u76EE"),a()())}function po(o,t){o&1&<(0)}function so(o,t){o&1&&(r(0,"div",8),c(1,"nz-empty",9),a())}function lo(o,t){if(o&1){let e=z();r(0,"app-project-item",12),m("selectProject",function(){let i=u(e).$implicit,p=d(2);return f(p.projectState.selectProject(i))})("toggleFavorite",function(){let i=u(e).$implicit,p=d(2);return f(p.projectState.toggleFavorite(i.id))})("openInEditor",function(){let i=u(e).$implicit,p=d(2);return f(p.projectState.openInEditor(i.id))})("editProject",function(){let i=u(e).$implicit,p=d(2);return f(p.projectState.openEditModal(i))})("deleteProject",function(){let i=u(e).$implicit,p=d(2);return f(p.projectState.deleteProject(i.id))}),a()}if(o&2){let e=t.$implicit,n=d(2);g("project",e)("open",n.projectState.isOpen(e))}}function co(o,t){if(o&1&&(r(0,"div",10),ae(1,lo,1,2,"app-project-item",11,oo),a()),o&2){let e=t.$implicit;s(),pe(e)}}var nt=class o{projectState=C(oe);static \u0275fac=function(e){return new(e||o)};static \u0275cmp=M({type:o,selectors:[["app-project-list"]],decls:12,vars:8,consts:[["itemsTpl",""],["nz-row","",1,"page"],["nz-col","","nzSpan","16","nzOffset","4",1,"col"],["nz-col","",1,"topbar"],["nzInputPrefix","","nzType","search",1,"search-icon"],["nz-input","","placeholder","\u641C\u7D22\u9879\u76EE",3,"ngModelChange","ngModel"],[1,"header"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"no-projects"],["nzNotFoundImage","simple","nzNotFoundContent","\u6682\u65E0\u9879\u76EE\uFF0C\u5FEB\u53BB\u521B\u5EFA\u6216\u5BFC\u5165\u7B2C\u4E00\u4E2A\u9879\u76EE\u5427\uFF01"],[1,"content"],[3,"project","open"],[3,"selectProject","toggleFavorite","openInEditor","editProject","deleteProject","project","open"]],template:function(e,n){if(e&1){let i=z();r(0,"div",1)(1,"div",2)(2,"div",3)(3,"nz-input-wrapper"),c(4,"nz-icon",4),r(5,"input",5),m("ngModelChange",function(_){return u(i),f(n.projectState.keyword.set(_))}),a()()(),y(6,ro,4,4),y(7,ao,3,0,"div",6),O(8,po,1,0,"ng-container",7),y(9,so,2,0,"div",8),a(),O(10,co,3,0,"ng-template",null,0,W),a()}if(e&2){let i=V(11);s(5),g("ngModel",n.projectState.keyword()),s(),x(n.projectState.favoriteProjects().length>0?6:-1),s(),x(n.projectState.favoriteProjects().length>0?7:-1),s(),g("ngTemplateOutlet",i)("ngTemplateOutletContext",ct(6,vn,n.projectState.moreProjects())),s(),x(n.projectState.projects().length===0?9:-1)}},dependencies:[h,It,E,Y,U,q,I,$,G,L,tt,De,be,Q,K,ce,je,P,v],styles:["[_nghost-%COMP%]{display:block;height:100%;overflow:hidden}.page[_ngcontent-%COMP%]{height:100%;overflow-y:auto}.page[_ngcontent-%COMP%] .topbar[_ngcontent-%COMP%]{width:100%;display:flex;justify-content:center;margin-bottom:12px}.page[_ngcontent-%COMP%] .topbar[_ngcontent-%COMP%] nz-input-wrapper[_ngcontent-%COMP%]{width:25%;min-width:200px}.page[_ngcontent-%COMP%] .col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.header[_ngcontent-%COMP%]{padding:12px 0}.header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-weight:600}"]})};function mo(o,t){o&1&&(c(0,"nz-icon",8),l(1," \u9879\u76EE "))}function uo(o,t){o&1&&c(0,"app-project-list")}function fo(o,t){o&1&&(c(0,"nz-icon",9),l(1," \u521B\u5EFA "))}function go(o,t){o&1&&c(0,"app-project-create")}function Co(o,t){o&1&&(c(0,"nz-icon",10),l(1," \u5BFC\u5165 "))}function _o(o,t){o&1&&c(0,"app-project-import")}var ot=class o{importState=C(ge);selectedIndex=0;tabIndexChange(t){t===2?this.importState.active.set(!0):this.importState.active.set(!1)}static \u0275fac=function(e){return new(e||o)};static \u0275cmp=M({type:o,selectors:[["app-projects"]],decls:17,vars:4,consts:[["projectTitleTemplate",""],["addTitleTemplate",""],["importTitleTemplate",""],[1,"page"],[1,"header"],["nzCentered","",1,"tabs-container",3,"nzSelectedIndexChange","nzSelectedIndex"],[3,"nzTitle"],["nz-tab",""],["nzType","unordered-list","nzTheme","outline"],["nzType","plus-square","nzTheme","outline"],["nzType","import","nzTheme","outline"]],template:function(e,n){if(e&1){let i=z();r(0,"div",3)(1,"div",4)(2,"h2"),l(3,"\u9879\u76EE\u7BA1\u7406"),a()(),r(4,"nz-tabs",5),T("nzSelectedIndexChange",function(_){return u(i),k(n.selectedIndex,_)||(n.selectedIndex=_),f(_)}),m("nzSelectedIndexChange",function(_){return u(i),f(n.tabIndexChange(_))}),r(5,"nz-tab",6),O(6,mo,2,0,"ng-template",null,0,W)(8,uo,1,0,"ng-template",7),a(),r(9,"nz-tab",6),O(10,fo,2,0,"ng-template",null,1,W)(12,go,1,0,"ng-template",7),a(),r(13,"nz-tab",6),O(14,Co,2,0,"ng-template",null,2,W)(16,_o,1,0,"ng-template",7),a()()()}if(e&2){let i=V(7),p=V(11),_=V(15);s(4),w("nzSelectedIndex",n.selectedIndex),s(),g("nzTitle",i),s(4),g("nzTitle",p),s(4),g("nzTitle",_)}},dependencies:[h,cn,ln,sn,pn,P,v,nt,Ke,Xe],styles:[".page[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%}.header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;flex:0 0 auto;padding:16px 0}.header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0}nz-tabs.tabs-container[_ngcontent-%COMP%]{flex:1 1 auto;height:0}nz-tabs.tabs-container[_ngcontent-%COMP%] .ant-tabs-content{height:100%}nz-tabs.tabs-container[_ngcontent-%COMP%] .ant-tabs-content .ant-tabs-tabpane{height:100%}.toolbar[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{flex:1}.current[_ngcontent-%COMP%]{margin:10px 0;opacity:.75}"]})};var zo=[{path:"",component:ot}],it=class o{static \u0275fac=function(e){return new(e||o)};static \u0275mod=ke({type:o});static \u0275inj=ye({imports:[ze.forChild(zo),ze]})};var yn=class o{static \u0275fac=function(e){return new(e||o)};static \u0275mod=ke({type:o});static \u0275inj=ye({imports:[h,it]})};export{yn as ProjectsModule};
|