@whoz-oss/coday-client 3.16.0 → 3.17.0

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 (73) hide show
  1. package/browser/{chunk-CjrWXBiR.js → chunk-0njD_aMa.js} +1 -1
  2. package/browser/{chunk-Dtu-PLbq.js → chunk-6WIaUDav.js} +1 -1
  3. package/browser/{chunk-CgqDTJ5-.js → chunk-B1OTuTxt.js} +1 -1
  4. package/browser/{chunk-Be1LOFvg.js → chunk-B3-4EW3s.js} +1 -1
  5. package/browser/{chunk-B0vRsgnD.js → chunk-B626-rya.js} +1 -1
  6. package/browser/{chunk-BHZY3TvC.js → chunk-B6BZBDSv.js} +1 -1
  7. package/browser/{chunk-jv0lz5Ah.js → chunk-B7kKWG4P.js} +1 -1
  8. package/browser/chunk-B7yga-a4.js +1 -0
  9. package/browser/{chunk-rwEyLSEP.js → chunk-BAWubWk8.js} +1 -1
  10. package/browser/chunk-BDaTUrH4.js +1 -0
  11. package/browser/{chunk-UzUd84Qf.js → chunk-BHvLB-pV.js} +1 -1
  12. package/browser/{chunk-Ci1jk71f.js → chunk-BJ5G7Y-a.js} +1 -1
  13. package/browser/{chunk-7jUQT_3F.js → chunk-BPfJALqU.js} +1 -1
  14. package/browser/{chunk-CFZbDe5T.js → chunk-BTX631I3.js} +1 -1
  15. package/browser/{chunk-CBNhmZDS.js → chunk-BVAD9f9s.js} +1 -1
  16. package/browser/{chunk-Dcftf7UY.js → chunk-BXkvjekT.js} +1 -1
  17. package/browser/{chunk-tTmeIHGS.js → chunk-BYyTBqh4.js} +1 -1
  18. package/browser/{chunk-CPBcDx4G.js → chunk-B_49KV6W.js} +1 -1
  19. package/browser/{chunk-CtkiOUdU.js → chunk-BaO2vi_O.js} +1 -1
  20. package/browser/{chunk-DDnWPYAA.js → chunk-BcT0wYqu.js} +1 -1
  21. package/browser/{chunk-YS-vAhPY.js → chunk-BdJzYh5V.js} +1 -1
  22. package/browser/{chunk-BTS5TBK0.js → chunk-Bgd8Jkga.js} +1 -1
  23. package/browser/chunk-BkN5jb4J.js +1 -0
  24. package/browser/{chunk-0OiZWE88.js → chunk-Brx_KbnM.js} +1 -1
  25. package/browser/{chunk-Bib1Seeu.js → chunk-BtEXE3Xz.js} +1 -1
  26. package/browser/{chunk-6gdeYlLc.js → chunk-Bu5Xq3QT.js} +1 -1
  27. package/browser/{chunk-C-aF2_1R.js → chunk-BwDJA6_r.js} +1 -1
  28. package/browser/{chunk-CGMAzvSo.js → chunk-C2VdQfMJ.js} +1 -1
  29. package/browser/{chunk-Dfujxxcr.js → chunk-C49BBPGm.js} +1 -1
  30. package/browser/{chunk-HjD5Rk4C.js → chunk-C5WD0UQE.js} +1 -1
  31. package/browser/{chunk-DzlrRiVM.js → chunk-CI760KmO.js} +1 -1
  32. package/browser/{chunk-Co81dkbz.js → chunk-CI7wYBKk.js} +1 -1
  33. package/browser/{chunk-BdpJ2ZCM.js → chunk-CKhGzoqa.js} +1 -1
  34. package/browser/{chunk-izARvh_2.js → chunk-CNAj5Eon.js} +1 -1
  35. package/browser/{chunk-BNS6Fgaw.js → chunk-CUz5MHdA.js} +1 -1
  36. package/browser/{chunk-axGY7UtD.js → chunk-CXTwGKdl.js} +1 -1
  37. package/browser/{chunk-SbH2L3h2.js → chunk-Ci9l-k84.js} +1 -1
  38. package/browser/{chunk-CbK5Lcu9.js → chunk-ClEmA_ih.js} +1 -1
  39. package/browser/{chunk-kvCfAm7Z.js → chunk-ClSDInQq.js} +1 -1
  40. package/browser/{chunk-BSSDDOqW.js → chunk-CpZK7G-Q.js} +1 -1
  41. package/browser/{chunk-CYulIMKp.js → chunk-CxUcyBb9.js} +1 -1
  42. package/browser/{chunk-BJYyjaQ6.js → chunk-D-jBfPIO.js} +1 -1
  43. package/browser/{chunk-CXLytVC3.js → chunk-D202v_ff.js} +1 -1
  44. package/browser/{chunk-BUJoEGsf.js → chunk-DCwEaE_b.js} +1 -1
  45. package/browser/{chunk-CtWMrBfw.js → chunk-DFQuWS_F.js} +1 -1
  46. package/browser/{chunk-pH1k_bet.js → chunk-DHb3-uKf.js} +1 -1
  47. package/browser/{chunk-IUvEtpfr.js → chunk-DKllQ3Ve.js} +1 -1
  48. package/browser/{chunk-DgrvmqY2.js → chunk-DMRb150M.js} +1 -1
  49. package/browser/{chunk-B_9LxHBv.js → chunk-DMtXGu5h.js} +1 -1
  50. package/browser/{chunk-swj7IkJA.js → chunk-DO3lSvop.js} +1 -1
  51. package/browser/{chunk-CTuHnJP4.js → chunk-DQtoh8wv.js} +1 -1
  52. package/browser/{chunk-S8F5_Te_.js → chunk-DjMtxVWg.js} +1 -1
  53. package/browser/{chunk-Bn3R3VC2.js → chunk-DjoW6kqa.js} +1 -1
  54. package/browser/{chunk-fhFxOLYS.js → chunk-DpHEu7EG.js} +1 -1
  55. package/browser/{chunk-Bhq5earA.js → chunk-DqC8XT4v.js} +1 -1
  56. package/browser/{chunk-gmPqDrDS.js → chunk-DqioJb1X.js} +1 -1
  57. package/browser/{chunk-fYErSEXN.js → chunk-DrzvCb86.js} +1 -1
  58. package/browser/{chunk-CwaAd8kk.js → chunk-DwFGK2iu.js} +1 -1
  59. package/browser/{chunk-iNIQR015.js → chunk-DxrynR3o.js} +1 -1
  60. package/browser/{chunk-BJeLQooO.js → chunk-DxvmpOv5.js} +1 -1
  61. package/browser/{chunk-C_s4Z3Dk.js → chunk-EBW8PloQ.js} +1 -1
  62. package/browser/{chunk-DOq0u21j.js → chunk-LVItL87L.js} +1 -1
  63. package/browser/{chunk-BEKR4Un_.js → chunk-P8B5rz7L.js} +1 -1
  64. package/browser/{chunk-BY7uKZAo.js → chunk-R-GmZrHu.js} +3 -3
  65. package/browser/{chunk-CiWu4t_i.js → chunk-b6g-uBR5.js} +1 -1
  66. package/browser/{chunk-YfG457Nc.js → chunk-bfpuueWC.js} +1 -1
  67. package/browser/{chunk-DQLU3kYb.js → chunk-mrKeqPKc.js} +1 -1
  68. package/browser/index.html +1 -1
  69. package/browser/{main-5PAOSHSM.js → main-LBRSRTYI.js} +14 -14
  70. package/package.json +1 -1
  71. package/browser/chunk-BEUXx3TO.js +0 -1
  72. package/browser/chunk-BdApeECy.js +0 -1
  73. package/browser/chunk-DoKoAMs6.js +0 -1
@@ -1 +1 @@
1
- import {O}from'./chunk-IUvEtpfr.js';import {R}from'./chunk-rwEyLSEP.js';import {g,G,w as we,aJ as Tr,a as Gi,bS as Da,u as ue,c as U,h as Fw,aK as Ob,m as ws,bf as dT,o as Rg,Q as QC,n as hl,af as Eg,M as MC,v as bg,bg as pT,ah as aT,q as oC,ac as EC,x as iC,a9 as gC,aa as wf,ab as Cf,ag as mT}from'./main-5PAOSHSM.js';import'./chunk-BY7uKZAo.js';import {W as Wn}from'./chunk-CtkiOUdU.js';import'./chunk-S8F5_Te_.js';import'./chunk-tTmeIHGS.js';import'./chunk-BEUXx3TO.js';import'./chunk-kvCfAm7Z.js';var k=()=>[];function V(i,t){if(i&1){let e=gC();ws(0,"agentos-auth-setting-item",4),Rg("editRequested",function(n){wf(e);let p=EC(2);return Cf(p.onEdit(n))})("deleteRequested",function(n){wf(e);let p=EC(2);return Cf(p.onDelete(n))}),hl();}i&2&&bg("config",t)("showBadge",false);}function F(i,t){if(i&1&&oC(0,V,1,2,"agentos-auth-setting-item",3),i&2){let e,o=t.$implicit,n=EC();iC((e=n.resolveSetting(o.id))?0:-1,e);}}var M=class i{router=g(G);destroyRef=g(we);state=g(R);refresh$=new Tr(void 0);isLoading=Gi(true);settings$=this.refresh$.pipe(Da(()=>(this.isLoading.set(true),this.state.loadPlatformSettings())));settingItems$=this.settings$.pipe(ue(t=>t.map(e=>({id:e.id??"",name:e.name,description:e.authType}))));settingsById=new Map;constructor(){this.settings$.pipe(U(this.destroyRef)).subscribe({next:t=>{this.settingsById=new Map(t.map(e=>[e.id??"",e])),this.isLoading.set(false);},error:()=>this.isLoading.set(false)});}goBack(){this.router.navigate(["/agentos","admin"]);}openCreateForm(){this.router.navigate(["/agentos","admin","auth-settings","new"]);}onEdit(t){t.id&&this.router.navigate(["/agentos","admin","auth-settings",t.id,"edit"]);}onDelete(t){t.id&&this.state.delete(t.id,"platform").pipe(U(this.destroyRef)).subscribe(()=>this.refresh$.next());}resolveSetting(t){return this.settingsById.get(t)??null}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=Fw({type:i,selectors:[["agentos-platform-auth-settings"]],decls:6,vars:7,consts:[["authSettingItemTpl",""],["title","Platform Auth Settings","emptyMessage","No platform auth settings defined yet. Add one above.","cardMinWidth","400px",3,"createRequested","items","loading","showCreate","itemTemplate"],["toolbar-start","","type","button",1,"platform-auth-settings__back",3,"click"],["scope","namespace",3,"config","showBadge"],["scope","namespace",3,"editRequested","deleteRequested","config","showBadge"]],template:function(e,o){if(e&1&&(ws(0,"ds-entity-list",1),dT(1,"async"),Rg("createRequested",function(){return o.openCreateForm()}),ws(2,"button",2),Rg("click",function(){return o.goBack()}),QC(3,"\u2190 Admin"),hl()(),Eg(4,F,1,1,"ng-template",null,0,mT)),e&2){let n=MC(5);bg("items",pT(1,4,o.settingItems$)??aT(6,k))("loading",o.isLoading())("showCreate",true)("itemTemplate",n);}},dependencies:[Wn,O,Ob],encapsulation:2})};export{M as PlatformAuthSettingsComponent};
1
+ import {O}from'./chunk-DKllQ3Ve.js';import {R}from'./chunk-BAWubWk8.js';import {g,G,w as we,aJ as Tr,a as Gi,bS as Da,u as ue,c as U,h as Fw,aK as Ob,m as ws,bf as dT,o as Rg,Q as QC,n as hl,af as Eg,M as MC,v as bg,bg as pT,ah as aT,q as oC,ac as EC,x as iC,a9 as gC,aa as wf,ab as Cf,ag as mT}from'./main-LBRSRTYI.js';import'./chunk-R-GmZrHu.js';import {W as Wn}from'./chunk-BaO2vi_O.js';import'./chunk-DjMtxVWg.js';import'./chunk-BYyTBqh4.js';import'./chunk-BDaTUrH4.js';import'./chunk-ClSDInQq.js';var k=()=>[];function V(i,t){if(i&1){let e=gC();ws(0,"agentos-auth-setting-item",4),Rg("editRequested",function(n){wf(e);let p=EC(2);return Cf(p.onEdit(n))})("deleteRequested",function(n){wf(e);let p=EC(2);return Cf(p.onDelete(n))}),hl();}i&2&&bg("config",t)("showBadge",false);}function F(i,t){if(i&1&&oC(0,V,1,2,"agentos-auth-setting-item",3),i&2){let e,o=t.$implicit,n=EC();iC((e=n.resolveSetting(o.id))?0:-1,e);}}var M=class i{router=g(G);destroyRef=g(we);state=g(R);refresh$=new Tr(void 0);isLoading=Gi(true);settings$=this.refresh$.pipe(Da(()=>(this.isLoading.set(true),this.state.loadPlatformSettings())));settingItems$=this.settings$.pipe(ue(t=>t.map(e=>({id:e.id??"",name:e.name,description:e.authType}))));settingsById=new Map;constructor(){this.settings$.pipe(U(this.destroyRef)).subscribe({next:t=>{this.settingsById=new Map(t.map(e=>[e.id??"",e])),this.isLoading.set(false);},error:()=>this.isLoading.set(false)});}goBack(){this.router.navigate(["/agentos","admin"]);}openCreateForm(){this.router.navigate(["/agentos","admin","auth-settings","new"]);}onEdit(t){t.id&&this.router.navigate(["/agentos","admin","auth-settings",t.id,"edit"]);}onDelete(t){t.id&&this.state.delete(t.id,"platform").pipe(U(this.destroyRef)).subscribe(()=>this.refresh$.next());}resolveSetting(t){return this.settingsById.get(t)??null}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=Fw({type:i,selectors:[["agentos-platform-auth-settings"]],decls:6,vars:7,consts:[["authSettingItemTpl",""],["title","Platform Auth Settings","emptyMessage","No platform auth settings defined yet. Add one above.","cardMinWidth","400px",3,"createRequested","items","loading","showCreate","itemTemplate"],["toolbar-start","","type","button",1,"platform-auth-settings__back",3,"click"],["scope","namespace",3,"config","showBadge"],["scope","namespace",3,"editRequested","deleteRequested","config","showBadge"]],template:function(e,o){if(e&1&&(ws(0,"ds-entity-list",1),dT(1,"async"),Rg("createRequested",function(){return o.openCreateForm()}),ws(2,"button",2),Rg("click",function(){return o.goBack()}),QC(3,"\u2190 Admin"),hl()(),Eg(4,F,1,1,"ng-template",null,0,mT)),e&2){let n=MC(5);bg("items",pT(1,4,o.settingItems$)??aT(6,k))("loading",o.isLoading())("showCreate",true)("itemTemplate",n);}},dependencies:[Wn,O,Ob],encapsulation:2})};export{M as PlatformAuthSettingsComponent};
@@ -1 +1 @@
1
- import {R}from'./chunk-Bib1Seeu.js';import {c}from'./chunk-CbK5Lcu9.js';import {g,G,w as we,a as Gi,E as ET,c as U,h as Fw,m as ws,o as Rg,n as hl,af as Eg,M as MC,v as bg,q as oC,ac as EC,x as iC,a9 as gC,aa as wf,ab as Cf,ag as mT}from'./main-5PAOSHSM.js';import {W as Wn,S as Se}from'./chunk-CtkiOUdU.js';import'./chunk-S8F5_Te_.js';import'./chunk-tTmeIHGS.js';function M(i,e){if(i&1){let t=gC();ws(0,"agentos-scheduled-prompt-item",4),Rg("enableRequested",function(n){wf(t);let r=EC(2);return Cf(r.enablePrompt(n))})("disableRequested",function(n){wf(t);let r=EC(2);return Cf(r.disablePrompt(n))})("deleteRequested",function(n){wf(t);let r=EC(2);return Cf(r.deletePrompt(n))}),hl();}i&2&&bg("definition",e)("platformMode",true);}function L(i,e){if(i&1&&oC(0,M,1,2,"agentos-scheduled-prompt-item",3),i&2){let t,o=e.$implicit,n=EC();iC((t=n.resolvePrompt(o.id))?0:-1,t);}}var D=class i{router=g(G);destroyRef=g(we);state=g(c);prompts=Gi([]);isLoading=Gi(true);promptItems=ET(()=>this.prompts().map(e=>({id:e.id??"",name:e.name,description:e.description,badges:[{label:e.enabled?"Enabled":"Disabled",variant:e.enabled?"success":"warning"}]})));constructor(){this.state.listPlatform().pipe(U(this.destroyRef)).subscribe({next:e=>{this.prompts.set(e),this.isLoading.set(false);},error:()=>this.isLoading.set(false)});}goBack(){this.router.navigate(["/agentos","admin"]);}openCreateForm(){this.router.navigate(["/agentos","admin","scheduled-prompts","new"]);}enablePrompt(e){this.state.enable(e.id??"").pipe(U(this.destroyRef)).subscribe(t=>this.patchPrompt(t));}disablePrompt(e){this.state.disable(e.id??"").pipe(U(this.destroyRef)).subscribe(t=>this.patchPrompt(t));}deletePrompt(e){let t=e.id??"";this.state.delete(t).pipe(U(this.destroyRef)).subscribe(()=>this.prompts.update(o=>o.filter(n=>n.id!==t)));}resolvePrompt(e){return this.prompts().find(t=>t.id===e)??null}patchPrompt(e){this.prompts.update(t=>t.map(o=>o.id===e.id?e:o));}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=Fw({type:i,selectors:[["agentos-platform-scheduled-prompts"]],decls:4,vars:4,consts:[["scheduledPromptItemTpl",""],["title","Platform Scheduled Prompts","emptyMessage","No platform scheduled prompts defined yet. Add one above.","cardMinWidth","420px",3,"createRequested","items","loading","showCreate","itemTemplate"],["toolbar-start","","icon","arrow_back","title","Back",3,"action"],[3,"definition","platformMode"],[3,"enableRequested","disableRequested","deleteRequested","definition","platformMode"]],template:function(t,o){if(t&1&&(ws(0,"ds-entity-list",1),Rg("createRequested",function(){return o.openCreateForm()}),ws(1,"ds-icon-button",2),Rg("action",function(){return o.goBack()}),hl()(),Eg(2,L,1,1,"ng-template",null,0,mT)),t&2){let n=MC(3);bg("items",o.promptItems())("loading",o.isLoading())("showCreate",true)("itemTemplate",n);}},dependencies:[Wn,R,Se],encapsulation:2})};export{D as PlatformScheduledPromptsComponent};
1
+ import {R}from'./chunk-BtEXE3Xz.js';import {c}from'./chunk-ClEmA_ih.js';import {g,G,w as we,a as Gi,E as ET,c as U,h as Fw,m as ws,o as Rg,n as hl,af as Eg,M as MC,v as bg,q as oC,ac as EC,x as iC,a9 as gC,aa as wf,ab as Cf,ag as mT}from'./main-LBRSRTYI.js';import {W as Wn,S as Se}from'./chunk-BaO2vi_O.js';import'./chunk-DjMtxVWg.js';import'./chunk-BYyTBqh4.js';function M(i,e){if(i&1){let t=gC();ws(0,"agentos-scheduled-prompt-item",4),Rg("enableRequested",function(n){wf(t);let r=EC(2);return Cf(r.enablePrompt(n))})("disableRequested",function(n){wf(t);let r=EC(2);return Cf(r.disablePrompt(n))})("deleteRequested",function(n){wf(t);let r=EC(2);return Cf(r.deletePrompt(n))}),hl();}i&2&&bg("definition",e)("platformMode",true);}function L(i,e){if(i&1&&oC(0,M,1,2,"agentos-scheduled-prompt-item",3),i&2){let t,o=e.$implicit,n=EC();iC((t=n.resolvePrompt(o.id))?0:-1,t);}}var D=class i{router=g(G);destroyRef=g(we);state=g(c);prompts=Gi([]);isLoading=Gi(true);promptItems=ET(()=>this.prompts().map(e=>({id:e.id??"",name:e.name,description:e.description,badges:[{label:e.enabled?"Enabled":"Disabled",variant:e.enabled?"success":"warning"}]})));constructor(){this.state.listPlatform().pipe(U(this.destroyRef)).subscribe({next:e=>{this.prompts.set(e),this.isLoading.set(false);},error:()=>this.isLoading.set(false)});}goBack(){this.router.navigate(["/agentos","admin"]);}openCreateForm(){this.router.navigate(["/agentos","admin","scheduled-prompts","new"]);}enablePrompt(e){this.state.enable(e.id??"").pipe(U(this.destroyRef)).subscribe(t=>this.patchPrompt(t));}disablePrompt(e){this.state.disable(e.id??"").pipe(U(this.destroyRef)).subscribe(t=>this.patchPrompt(t));}deletePrompt(e){let t=e.id??"";this.state.delete(t).pipe(U(this.destroyRef)).subscribe(()=>this.prompts.update(o=>o.filter(n=>n.id!==t)));}resolvePrompt(e){return this.prompts().find(t=>t.id===e)??null}patchPrompt(e){this.prompts.update(t=>t.map(o=>o.id===e.id?e:o));}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=Fw({type:i,selectors:[["agentos-platform-scheduled-prompts"]],decls:4,vars:4,consts:[["scheduledPromptItemTpl",""],["title","Platform Scheduled Prompts","emptyMessage","No platform scheduled prompts defined yet. Add one above.","cardMinWidth","420px",3,"createRequested","items","loading","showCreate","itemTemplate"],["toolbar-start","","icon","arrow_back","title","Back",3,"action"],[3,"definition","platformMode"],[3,"enableRequested","disableRequested","deleteRequested","definition","platformMode"]],template:function(t,o){if(t&1&&(ws(0,"ds-entity-list",1),Rg("createRequested",function(){return o.openCreateForm()}),ws(1,"ds-icon-button",2),Rg("action",function(){return o.goBack()}),hl()(),Eg(2,L,1,1,"ng-template",null,0,mT)),t&2){let n=MC(3);bg("items",o.promptItems())("loading",o.isLoading())("showCreate",true)("itemTemplate",n);}},dependencies:[Wn,R,Se],encapsulation:2})};export{D as PlatformScheduledPromptsComponent};
@@ -1 +1 @@
1
- import {n}from'./chunk-CfgXrte_.js';import {O}from'./chunk-IUvEtpfr.js';import {v}from'./chunk-CPBcDx4G.js';import {R}from'./chunk-rwEyLSEP.js';import {g,ao as V,G,w as we,a as Gi,u as ue,c as U$1,bS as Da,X as br,h as Fw,aK as Ob,m as ws,bf as dT,o as Rg,n as hl,af as Eg,M as MC,v as bg,bg as pT,ah as aT,q as oC,ac as EC,x as iC,Q as QC,t as nI,a8 as Yg,a9 as gC,aa as wf,ab as Cf,ag as mT}from'./main-5PAOSHSM.js';import'./chunk-BY7uKZAo.js';import {W as Wn,S as Se}from'./chunk-CtkiOUdU.js';import'./chunk-S8F5_Te_.js';import'./chunk-tTmeIHGS.js';import'./chunk-BEUXx3TO.js';import'./chunk-kvCfAm7Z.js';var W=()=>[];function z(s,e){if(s&1&&(ws(0,"p",3),QC(1),hl()),s&2){let t=EC().$implicit;nI(),Yg(t.name);}}function U(s,e){if(s&1){let t=gC();ws(0,"agentos-auth-setting-item",5),Rg("editRequested",function(){let i=wf(t),r=EC(2);return Cf(r.onEdit(i))})("deleteRequested",function(){let i=wf(t),r=EC(2);return Cf(r.onDelete(i))})("duplicateRequested",function(){let i=wf(t),r=EC(2);return Cf(r.onDuplicate(i))}),hl();}if(s&2){let t=e,n=EC(2);bg("config",t.config)("scope",t.scope)("readOnly",t.scope==="platform"||t.scope==="namespace"&&!n.isAdmin());}}function X(s,e){if(s&1&&oC(0,z,2,1,"p",3)(1,U,1,3,"agentos-auth-setting-item",4),s&2){let t,n=e.$implicit,i=EC();iC(i.isEmptyPlaceholder(n.id)?0:(t=i.resolve(n.id))?1:-1,t);}}var k=Object.freeze({platform:"Platform (read-only)",namespace:"Auth Settings du namespace",userOnNs:"Mes overrides sur ce namespace",userGlobal:"Mes overrides globaux"}),F="__empty__",j=class s{route=g(V);router=g(G);destroyRef=g(we);state=g(R);namespaceRole=g(v);namespaceId=this.route.snapshot.params.namespaceId;isAdmin=Gi(false);listItems$=this.state.vm$.pipe(ue(e=>this.toListItems(e)));isLoading=Gi(true);resolved=new Map;ngOnInit(){this.route.paramMap.pipe(U$1(this.destroyRef)).subscribe(e=>{let t=e.get("namespaceId")??"";t&&t!==this.namespaceId&&(this.namespaceId=t),this.state.setNamespace(t);}),this.route.paramMap.pipe(ue(e=>e.get("namespaceId")??""),Da(e=>e?this.namespaceRole.isAdminOfNamespace$(e):br(false)),U$1(this.destroyRef)).subscribe(e=>this.isAdmin.set(e)),this.state.vm$.pipe(U$1(this.destroyRef)).subscribe(e=>{this.isLoading.set(false);let t=new Map;e.platform.forEach(n=>{n.id&&t.set(this.itemKey("platform",n.id),{config:n,scope:"platform"});}),e.namespace.forEach(n=>{n.id&&t.set(this.itemKey("namespace",n.id),{config:n,scope:"namespace"});}),e.userOnNs.forEach(n=>{n.id&&t.set(this.itemKey("userOnNs",n.id),{config:n,scope:"userOnNs"});}),e.userGlobal.forEach(n=>{n.id&&t.set(this.itemKey("userGlobal",n.id),{config:n,scope:"userGlobal"});}),this.resolved=t;});}isEmptyPlaceholder(e){return e.startsWith(F)}resolve(e){return this.resolved.get(e)??null}itemKey(e,t){return `${e}:${t}`}goBack(){this.router.navigate(["/agentos","namespaces"]);}openCreateForm(){this.router.navigate(["/agentos",this.namespaceId,"auth-settings","new"],{queryParams:{scope:n(this.isAdmin())}});}onEdit(e){let t=e.config.id;t&&this.router.navigate(["/agentos",this.namespaceId,"auth-settings",t,"edit"],{queryParams:{scope:e.scope}});}onDelete(e){let t=e.config.id;t&&this.state.delete(t,e.scope).pipe(U$1(this.destroyRef)).subscribe({error:n=>{console.error(`[AuthSettingsAllScopes] Delete failed for ${e.scope}:${t}:`,n);}});}onDuplicate(e){if(!e.config.id)return;let t=e.scope==="platform"||e.scope==="namespace"&&!this.isAdmin()?"userOnNs":e.scope;this.router.navigate(["/agentos",this.namespaceId,"auth-settings","new"],{queryParams:{scope:t,template:e.config.id,templateScope:e.scope}});}toListItems(e){let t=[];return t.push(...this.sectionItems("platform",e.platform)),t.push(...this.sectionItems("namespace",e.namespace)),t.push(...this.sectionItems("userOnNs",e.userOnNs)),t.push(...this.sectionItems("userGlobal",e.userGlobal)),t}sectionItems(e,t){return t.length===0?[{id:`${F}${e}`,name:"Aucun Auth Setting",groupKey:e,groupLabel:k[e]}]:t.filter(n=>!!n.id).map(n=>({id:this.itemKey(e,n.id),name:n.name,description:n.authType,groupKey:e,groupLabel:k[e]}))}static \u0275fac=function(t){return new(t||s)};static \u0275cmp=Fw({type:s,selectors:[["agentos-auth-settings-all-scopes"]],decls:5,vars:7,consts:[["authSettingItemTpl",""],["title","Auth Settings","emptyMessage","No auth settings available.","cardMinWidth","400px",3,"createRequested","items","loading","showCreate","itemTemplate"],["toolbar-start","","icon","arrow_back","title","Back",3,"action"],[1,"auth-settings-all-scopes__empty"],[3,"config","scope","readOnly"],[3,"editRequested","deleteRequested","duplicateRequested","config","scope","readOnly"]],template:function(t,n){if(t&1&&(ws(0,"ds-entity-list",1),dT(1,"async"),Rg("createRequested",function(){return n.openCreateForm()}),ws(2,"ds-icon-button",2),Rg("action",function(){return n.goBack()}),hl()(),Eg(3,X,2,1,"ng-template",null,0,mT)),t&2){let i=MC(4);bg("items",pT(1,4,n.listItems$)??aT(6,W))("loading",n.isLoading())("showCreate",true)("itemTemplate",i);}},dependencies:[Wn,O,Se,Ob],encapsulation:2})};export{j as AuthSettingsAllScopesComponent};
1
+ import {n}from'./chunk-CfgXrte_.js';import {O}from'./chunk-DKllQ3Ve.js';import {v}from'./chunk-B_49KV6W.js';import {R}from'./chunk-BAWubWk8.js';import {g,ao as V,G,w as we,a as Gi,u as ue,c as U$1,bS as Da,X as br,h as Fw,aK as Ob,m as ws,bf as dT,o as Rg,n as hl,af as Eg,M as MC,v as bg,bg as pT,ah as aT,q as oC,ac as EC,x as iC,Q as QC,t as nI,a8 as Yg,a9 as gC,aa as wf,ab as Cf,ag as mT}from'./main-LBRSRTYI.js';import'./chunk-R-GmZrHu.js';import {W as Wn,S as Se}from'./chunk-BaO2vi_O.js';import'./chunk-DjMtxVWg.js';import'./chunk-BYyTBqh4.js';import'./chunk-BDaTUrH4.js';import'./chunk-ClSDInQq.js';var W=()=>[];function z(s,e){if(s&1&&(ws(0,"p",3),QC(1),hl()),s&2){let t=EC().$implicit;nI(),Yg(t.name);}}function U(s,e){if(s&1){let t=gC();ws(0,"agentos-auth-setting-item",5),Rg("editRequested",function(){let i=wf(t),r=EC(2);return Cf(r.onEdit(i))})("deleteRequested",function(){let i=wf(t),r=EC(2);return Cf(r.onDelete(i))})("duplicateRequested",function(){let i=wf(t),r=EC(2);return Cf(r.onDuplicate(i))}),hl();}if(s&2){let t=e,n=EC(2);bg("config",t.config)("scope",t.scope)("readOnly",t.scope==="platform"||t.scope==="namespace"&&!n.isAdmin());}}function X(s,e){if(s&1&&oC(0,z,2,1,"p",3)(1,U,1,3,"agentos-auth-setting-item",4),s&2){let t,n=e.$implicit,i=EC();iC(i.isEmptyPlaceholder(n.id)?0:(t=i.resolve(n.id))?1:-1,t);}}var k=Object.freeze({platform:"Platform (read-only)",namespace:"Auth Settings du namespace",userOnNs:"Mes overrides sur ce namespace",userGlobal:"Mes overrides globaux"}),F="__empty__",j=class s{route=g(V);router=g(G);destroyRef=g(we);state=g(R);namespaceRole=g(v);namespaceId=this.route.snapshot.params.namespaceId;isAdmin=Gi(false);listItems$=this.state.vm$.pipe(ue(e=>this.toListItems(e)));isLoading=Gi(true);resolved=new Map;ngOnInit(){this.route.paramMap.pipe(U$1(this.destroyRef)).subscribe(e=>{let t=e.get("namespaceId")??"";t&&t!==this.namespaceId&&(this.namespaceId=t),this.state.setNamespace(t);}),this.route.paramMap.pipe(ue(e=>e.get("namespaceId")??""),Da(e=>e?this.namespaceRole.isAdminOfNamespace$(e):br(false)),U$1(this.destroyRef)).subscribe(e=>this.isAdmin.set(e)),this.state.vm$.pipe(U$1(this.destroyRef)).subscribe(e=>{this.isLoading.set(false);let t=new Map;e.platform.forEach(n=>{n.id&&t.set(this.itemKey("platform",n.id),{config:n,scope:"platform"});}),e.namespace.forEach(n=>{n.id&&t.set(this.itemKey("namespace",n.id),{config:n,scope:"namespace"});}),e.userOnNs.forEach(n=>{n.id&&t.set(this.itemKey("userOnNs",n.id),{config:n,scope:"userOnNs"});}),e.userGlobal.forEach(n=>{n.id&&t.set(this.itemKey("userGlobal",n.id),{config:n,scope:"userGlobal"});}),this.resolved=t;});}isEmptyPlaceholder(e){return e.startsWith(F)}resolve(e){return this.resolved.get(e)??null}itemKey(e,t){return `${e}:${t}`}goBack(){this.router.navigate(["/agentos","namespaces"]);}openCreateForm(){this.router.navigate(["/agentos",this.namespaceId,"auth-settings","new"],{queryParams:{scope:n(this.isAdmin())}});}onEdit(e){let t=e.config.id;t&&this.router.navigate(["/agentos",this.namespaceId,"auth-settings",t,"edit"],{queryParams:{scope:e.scope}});}onDelete(e){let t=e.config.id;t&&this.state.delete(t,e.scope).pipe(U$1(this.destroyRef)).subscribe({error:n=>{console.error(`[AuthSettingsAllScopes] Delete failed for ${e.scope}:${t}:`,n);}});}onDuplicate(e){if(!e.config.id)return;let t=e.scope==="platform"||e.scope==="namespace"&&!this.isAdmin()?"userOnNs":e.scope;this.router.navigate(["/agentos",this.namespaceId,"auth-settings","new"],{queryParams:{scope:t,template:e.config.id,templateScope:e.scope}});}toListItems(e){let t=[];return t.push(...this.sectionItems("platform",e.platform)),t.push(...this.sectionItems("namespace",e.namespace)),t.push(...this.sectionItems("userOnNs",e.userOnNs)),t.push(...this.sectionItems("userGlobal",e.userGlobal)),t}sectionItems(e,t){return t.length===0?[{id:`${F}${e}`,name:"Aucun Auth Setting",groupKey:e,groupLabel:k[e]}]:t.filter(n=>!!n.id).map(n=>({id:this.itemKey(e,n.id),name:n.name,description:n.authType,groupKey:e,groupLabel:k[e]}))}static \u0275fac=function(t){return new(t||s)};static \u0275cmp=Fw({type:s,selectors:[["agentos-auth-settings-all-scopes"]],decls:5,vars:7,consts:[["authSettingItemTpl",""],["title","Auth Settings","emptyMessage","No auth settings available.","cardMinWidth","400px",3,"createRequested","items","loading","showCreate","itemTemplate"],["toolbar-start","","icon","arrow_back","title","Back",3,"action"],[1,"auth-settings-all-scopes__empty"],[3,"config","scope","readOnly"],[3,"editRequested","deleteRequested","duplicateRequested","config","scope","readOnly"]],template:function(t,n){if(t&1&&(ws(0,"ds-entity-list",1),dT(1,"async"),Rg("createRequested",function(){return n.openCreateForm()}),ws(2,"ds-icon-button",2),Rg("action",function(){return n.goBack()}),hl()(),Eg(3,X,2,1,"ng-template",null,0,mT)),t&2){let i=MC(4);bg("items",pT(1,4,n.listItems$)??aT(6,W))("loading",n.isLoading())("showCreate",true)("itemTemplate",i);}},dependencies:[Wn,O,Se,Ob],encapsulation:2})};export{j as AuthSettingsAllScopesComponent};
@@ -1 +1 @@
1
- import {A,k as kt,b as bt}from'./chunk-DzlrRiVM.js';import {S as St}from'./chunk-CFZbDe5T.js';import {E as Et,y as yt$1,G as Ge}from'./chunk-Bn3R3VC2.js';import {g,G,P,U,N,p as pe$1,J as c,w as we,a as Gi,F as F$1,E as ET,c as U$1,h as Fw,i as hr,j as pr,m as ws,Q as QC,n as hl,o as Rg,q as oC,r as cC,t as nI,v as bg,x as iC,y as uC,A as Ug,T as Tg,u as ue$1,ca as _e$1,Y as x,an as ce$1,ap as Hy,l as le$1,V,S as Sg,a9 as gC,aa as wf,ac as EC,ab as Cf,a8 as Yg,a5 as Dl}from'./main-5PAOSHSM.js';import'./chunk-Dcftf7UY.js';import'./chunk-BSSDDOqW.js';import'./chunk-YfG457Nc.js';import'./chunk-S8F5_Te_.js';import {y as yt,w as wt}from'./chunk-tTmeIHGS.js';var R=class n{threadState=g(U);codayService=g(Ge);threadList=F$1(this.threadState.threadList$,{initialValue:[]});selectedThread=F$1(this.threadState.selectedThread$,{initialValue:null});isThinking=F$1(this.codayService.isThinking$,{initialValue:false});inviteEvent=F$1(this.codayService.currentInviteEvent$.pipe(ue$1(t=>t?.invite===_e$1?null:t)),{initialValue:null});tasks=ET(()=>{let t=this.threadList(),e=this.selectedThread(),r=this.isThinking(),o=this.inviteEvent();return t.filter(i=>!i.parentThreadId).map(i=>{let m=!!e&&i.id===e.id;return {id:i.id,name:i.name,summary:i.summary,modifiedDate:i.modifiedDate,starring:i.starring??[],users:i.users??[],status:this.deriveStatus(i,m,r,!!o),isActive:m,worktreeProject:i.worktreeProject}}).sort((i,m)=>{let q=kt[i.status]-kt[m.status];return q!==0?q:i.modifiedDate>m.modifiedDate?-1:1})});deriveStatus(t,e,r,o){let i=Date.now()-new Date(t.modifiedDate).getTime();return t.closedByUser?"done":t.pendingInvite?"waiting-you":e?r?"in-progress":"paused":i<bt?"in-progress":"paused"}static \u0275fac=function(e){return new(e||n)};static \u0275prov=x({token:n,factory:n.\u0275fac,providedIn:"root"})};var F=class n{projectState=g(P);threadState=g(U);destroy$=new ce$1;eventSource=null;currentProject=null;constructor(){this.projectState.selectedProject$.pipe(Hy(this.destroy$)).subscribe(t=>{let e=t?.name??null;e!==this.currentProject&&(this.disconnect(),e&&this.connect(e));});}connect(t,e=5e3){this.currentProject=t;let r=`/api/projects/${encodeURIComponent(t)}/event-stream`;console.log(`[PROJECT_SSE] Connecting to ${r}`),this.eventSource=new EventSource(r),this.eventSource.onmessage=o=>{try{let i=JSON.parse(o.data),m=le$1(i);if(!m)return;m instanceof V&&(console.log("[PROJECT_SSE] ThreadUpdateEvent \u2014 refreshing thread list"),this.threadState.refreshThreadList());}catch(i){console.warn("[PROJECT_SSE] Failed to parse event:",i);}},this.eventSource.onerror=()=>{this.eventSource?.readyState===EventSource.CLOSED&&(console.warn(`[PROJECT_SSE] Connection closed for ${t}, reconnecting in ${e}ms`),this.eventSource=null,setTimeout(()=>{this.currentProject===t&&this.connect(t,Math.min(e*2,6e4));},e));};}disconnect(){this.eventSource&&(this.eventSource.close(),this.eventSource=null,console.log(`[PROJECT_SSE] Disconnected from project ${this.currentProject}`)),this.currentProject=null;}ngOnDestroy(){this.disconnect(),this.destroy$.next(),this.destroy$.complete();}static \u0275fac=function(e){return new(e||n)};static \u0275prov=x({token:n,factory:n.\u0275fac,providedIn:"root"})};var ce=(n,t)=>t.key,de=(n,t)=>t.status,le=(n,t)=>t.id;function pe(n,t){n&1&&Sg(0,"mat-spinner",6);}function me(n,t){n&1&&(ws(0,"mat-icon"),QC(1,"add"),hl());}function ue(n,t){if(n&1&&(ws(0,"span",16),QC(1),hl()),n&2){let e=EC().$implicit,r=EC();nI(),Yg(r.filterCounts()[e.key]);}}function ge(n,t){if(n&1){let e=gC();ws(0,"button",15),Rg("click",function(){let o=wf(e).$implicit,i=EC();return Cf(i.setFilter(o.key))}),ws(1,"mat-icon",10),QC(2),hl(),ws(3,"span"),QC(4),hl(),oC(5,ue,2,1,"span",16),hl();}if(n&2){let e=t.$implicit,r=EC();Ug("active",r.activeFilter()===e.key),Tg("aria-selected",r.activeFilter()===e.key),nI(2),Yg(e.icon),nI(2),Yg(e.label),nI(),iC(r.filterCounts()[e.key]>0?5:-1);}}function _e(n,t){n&1&&(ws(0,"div",12),Sg(1,"mat-spinner",17),ws(2,"p"),QC(3,"Loading tasks\u2026"),hl()());}function fe(n,t){if(n&1){let e=gC();ws(0,"p"),QC(1,"No tasks yet. Start your first one!"),hl(),ws(2,"button",19),Rg("click",function(){wf(e);let o=EC(2);return Cf(o.createTask())}),ws(3,"mat-icon"),QC(4,"add"),hl(),QC(5," New Task "),hl();}}function he(n,t){n&1&&(ws(0,"p"),QC(1,"No tasks in this category."),hl());}function ke(n,t){if(n&1&&(ws(0,"div",13)(1,"mat-icon",18),QC(2,"rocket_launch"),hl(),oC(3,fe,6,0)(4,he,2,0,"p"),hl()),n&2){let e=EC();nI(3),iC(e.activeFilter()==="all"?3:4);}}function ve(n,t){if(n&1){let e=gC();ws(0,"app-task-card",25),Rg("stopRequested",function(o){wf(e);let i=EC(3);return Cf(i.onStopRequested(o))})("deleteRequested",function(o){wf(e);let i=EC(3);return Cf(i.onDeleteRequested(o))})("starToggled",function(o){wf(e);let i=EC(3);return Cf(i.onStarToggled(o))})("markDoneRequested",function(o){wf(e);let i=EC(3);return Cf(i.onMarkDoneRequested(o))})("markActiveRequested",function(o){wf(e);let i=EC(3);return Cf(i.onMarkActiveRequested(o))}),hl();}if(n&2){let e=t.$implicit;bg("task",e);}}function Ce(n,t){if(n&1&&(ws(0,"section",20)(1,"h2",21)(2,"mat-icon",22),QC(3),hl(),QC(4),ws(5,"span",23),QC(6),hl()(),ws(7,"div",14),cC(8,ve,1,1,"app-task-card",24,le),hl()()),n&2){let e=t.$implicit;nI(3),Yg(e.icon),nI(),Dl(" ",e.label," "),nI(2),Yg(e.tasks.length),nI(2),uC(e.tasks);}}function be(n,t){if(n&1&&cC(0,Ce,10,3,"section",20,de),n&2){let e=EC();uC(e.taskGroups());}}function ye(n,t){if(n&1){let e=gC();ws(0,"app-task-card",25),Rg("stopRequested",function(o){wf(e);let i=EC(2);return Cf(i.onStopRequested(o))})("deleteRequested",function(o){wf(e);let i=EC(2);return Cf(i.onDeleteRequested(o))})("starToggled",function(o){wf(e);let i=EC(2);return Cf(i.onStarToggled(o))})("markDoneRequested",function(o){wf(e);let i=EC(2);return Cf(i.onMarkDoneRequested(o))})("markActiveRequested",function(o){wf(e);let i=EC(2);return Cf(i.onMarkActiveRequested(o))}),hl();}if(n&2){let e=t.$implicit;bg("task",e);}}function xe(n,t){if(n&1&&(ws(0,"div",14),cC(1,ye,1,1,"app-task-card",24,le),hl()),n&2){let e=EC();nI(),uC(e.filteredTasks());}}var Te=[{key:"all",label:"All",icon:"grid_view"},{key:"waiting-you",label:"Waiting for you",icon:"mark_unread_chat_alt"},{key:"in-progress",label:"In progress",icon:"pending"},{key:"paused",label:"Paused",icon:"pause_circle"},{key:"done",label:"Done",icon:"check_circle"}],se=class n{router=g(G);projectState=g(P);threadState=g(U);threadApi=g(N);taskStatus=g(R);userService=g(pe$1);projectApi=g(c);destroyRef=g(we);_projectEventStream=g(F);filters=Te;activeFilter=Gi("all");starredOnly=Gi(false);isCreating=Gi(false);isLoadingList=F$1(this.threadState.isLoadingThreadList$,{initialValue:false});username=F$1(this.userService.username$,{initialValue:null});allTasks=this.taskStatus.tasks;filteredTasks=ET(()=>{let t=this.activeFilter(),e=this.username(),r=this.allTasks();return this.starredOnly()&&e&&(r=r.filter(o=>o.starring.includes(e))),t==="all"?r:r.filter(o=>o.status===t)});filterCounts=ET(()=>{let t=this.username(),e=this.allTasks();return this.starredOnly()&&t&&(e=e.filter(r=>r.starring.includes(t))),{all:e.length,"waiting-you":e.filter(r=>r.status==="waiting-you").length,"in-progress":e.filter(r=>r.status==="in-progress").length,paused:e.filter(r=>r.status==="paused").length,done:e.filter(r=>r.status==="done").length}});taskGroups=ET(()=>{let t=this.username(),e=this.allTasks();this.starredOnly()&&t&&(e=e.filter(o=>o.starring.includes(t)));let r=[{status:"waiting-you",label:"Waiting for you",icon:"mark_unread_chat_alt",tasks:[]},{status:"in-progress",label:"In progress",icon:"pending",tasks:[]},{status:"done",label:"Done",icon:"check_circle",tasks:[]},{status:"paused",label:"Paused",icon:"pause_circle",tasks:[]},{status:"error",label:"Error",icon:"error",tasks:[]}];for(let o of e){let i=r.find(m=>m.status===o.status);i&&i.tasks.push(o);}return r.filter(o=>o.tasks.length>0)});ngOnInit(){this.userService.fetchCurrentUser().pipe(U$1(this.destroyRef)).subscribe({error:t=>console.warn("[TASK-CONTROL] Could not fetch user:",t)});}setFilter(t){this.activeFilter.set(t);}toggleStarredFilter(){this.starredOnly.update(t=>!t);}createTask(){let t=this.projectState.getSelectedProjectId();!t||this.isCreating()||(this.isCreating.set(true),this.threadApi.createThread().pipe(U$1(this.destroyRef)).subscribe({next:e=>{this.isCreating.set(false),this.router.navigate(["project",t,"thread",e.thread.id]);},error:e=>{console.error("[TASK-CONTROL] Failed to create thread:",e),this.isCreating.set(false);}}));}onStopRequested(t){this.threadApi.stopThread(t).pipe(U$1(this.destroyRef)).subscribe({error:e=>console.error("[TASK-CONTROL] Failed to stop thread:",e)});}onDeleteRequested(t){this.threadApi.deleteThread(t).pipe(U$1(this.destroyRef)).subscribe({next:()=>this.threadState.refreshThreadList(),error:e=>console.error("[TASK-CONTROL] Failed to delete thread:",e)});}onStarToggled(t){let e=this.username();if(!e)return;let r=this.allTasks().find(m=>m.id===t);if(!r)return;let o=r.starring.includes(e),i=o?this.threadApi.unstarThread(t):this.threadApi.starThread(t);this.threadState.updateStarLocal(t,!o,e),i.pipe(U$1(this.destroyRef)).subscribe({error:m=>{console.error("[TASK-CONTROL] Failed to toggle star:",m),this.threadState.refreshThreadList();}});}onMarkDoneRequested(t){let e=this.projectState.getSelectedProjectId();e&&this.projectApi.markThreadDone(e,t).pipe(U$1(this.destroyRef)).subscribe({next:()=>this.threadState.refreshThreadList(),error:r=>console.error("[TASK-CONTROL] Failed to mark task as done:",r)});}onMarkActiveRequested(t){let e=this.projectState.getSelectedProjectId();e&&this.projectApi.markThreadActive(e,t).pipe(U$1(this.destroyRef)).subscribe({next:()=>this.threadState.refreshThreadList(),error:r=>console.error("[TASK-CONTROL] Failed to mark task as active:",r)});}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Fw({type:n,selectors:[["app-task-control"]],decls:25,vars:6,consts:[[1,"task-control"],[1,"tc-header"],[1,"tc-title-row"],[1,"tc-title"],[1,"title-icon"],["mat-flat-button","","aria-label","Start a new task",1,"new-task-btn",3,"click","disabled"],["diameter","16"],["role","tablist","aria-label","Filter tasks",1,"tc-filters"],["role","tab",1,"filter-chip",3,"active"],["role","switch","aria-label","Show starred tasks only",1,"filter-chip","starred-filter",3,"click"],[1,"filter-icon"],[1,"tc-grid-wrapper"],[1,"tc-loading"],[1,"tc-empty"],[1,"tc-grid"],["role","tab",1,"filter-chip",3,"click"],[1,"filter-badge"],["diameter","40"],[1,"empty-icon"],["mat-flat-button","",1,"new-task-btn",3,"click"],[1,"tc-group"],[1,"tc-group-title"],[1,"group-icon"],[1,"group-count"],[3,"task"],[3,"stopRequested","deleteRequested","starToggled","markDoneRequested","markActiveRequested","task"]],template:function(e,r){e&1&&(ws(0,"app-sidenav")(1,"div",0)(2,"header",1)(3,"div",2)(4,"h1",3)(5,"mat-icon",4),QC(6,"rocket_launch"),hl(),QC(7," Task Control "),hl(),ws(8,"button",5),Rg("click",function(){return r.createTask()}),oC(9,pe,1,0,"mat-spinner",6)(10,me,2,0,"mat-icon"),QC(11," New Task "),hl()(),ws(12,"nav",7),cC(13,ge,6,6,"button",8,ce),ws(15,"button",9),Rg("click",function(){return r.toggleStarredFilter()}),ws(16,"mat-icon",10),QC(17,"star"),hl(),ws(18,"span"),QC(19,"Starred"),hl()()()(),ws(20,"main",11),oC(21,_e,4,0,"div",12)(22,ke,5,1,"div",13)(23,be,2,0)(24,xe,3,0,"div",14),hl()()()),e&2&&(nI(8),bg("disabled",r.isCreating()),nI(),iC(r.isCreating()?9:10),nI(4),uC(r.filters),nI(2),Ug("active",r.starredOnly()),Tg("aria-checked",r.starredOnly()),nI(6),iC(r.isLoadingList()?21:r.filteredTasks().length===0?22:r.activeFilter()==="all"?23:24));},dependencies:[A,St,yt,wt,hr,pr,Et,yt$1],styles:[".glass-panel[_ngcontent-%COMP%]{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.glass-interactive[_ngcontent-%COMP%]{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-interactive[_ngcontent-%COMP%]:hover{transform:translateY(-2px);box-shadow:0 12px 40px #00000026}.glass-interactive[_ngcontent-%COMP%]:active{transform:translateY(0)}.glass-card[_ngcontent-%COMP%]{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:20px;padding:1.5rem}.glass-button[_ngcontent-%COMP%]{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-button[_ngcontent-%COMP%]:hover{transform:translateY(-2px);box-shadow:0 12px 40px #00000026}.glass-button[_ngcontent-%COMP%]:active{transform:translateY(0)}.glass-button[_ngcontent-%COMP%]{border-radius:12px;padding:.75rem 1.5rem;font-weight:600;cursor:pointer}.glass-button[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:not-allowed;transform:none}.glass-button[_ngcontent-%COMP%]:disabled:hover{transform:none}.smooth-theme-transition[_ngcontent-%COMP%]{transition:background .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease}[_nghost-%COMP%]{display:flex;height:100vh;width:100%;overflow:hidden}.task-control[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;overflow:hidden;padding:1.5rem;gap:1.25rem;box-sizing:border-box}.tc-header[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem;flex-shrink:0}.tc-title-row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.tc-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;margin:0;font-size:1.5rem;font-weight:700;color:var(--color-text)}.tc-title[_ngcontent-%COMP%] .title-icon[_ngcontent-%COMP%]{font-size:1.5rem;width:1.5rem;height:1.5rem;color:var(--color-primary)}.new-task-btn[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.375rem;background:var(--color-primary);color:var(--color-text-inverse);border-radius:12px;font-weight:600;padding:0 1rem;height:36px;flex-shrink:0}.new-task-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:1.1rem;width:1.1rem;height:1.1rem}.new-task-btn[_ngcontent-%COMP%] mat-spinner[_ngcontent-%COMP%]{display:inline-block}.tc-filters[_ngcontent-%COMP%]{display:flex;gap:.5rem;flex-wrap:wrap}.filter-chip[_ngcontent-%COMP%]{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);display:flex;align-items:center;gap:.375rem;padding:.375rem .875rem;border-radius:100px;font-size:.8rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;border:1px solid var(--color-border);transition:background .15s ease,color .15s ease,border-color .15s ease;white-space:nowrap}.filter-chip[_ngcontent-%COMP%] .filter-icon[_ngcontent-%COMP%]{font-size:.9rem;width:.9rem;height:.9rem}.filter-chip[_ngcontent-%COMP%] .filter-badge[_ngcontent-%COMP%]{background:var(--color-primary);color:var(--color-text-inverse);border-radius:100px;padding:0 .375rem;font-size:.7rem;font-weight:700;min-width:18px;text-align:center;line-height:18px}.filter-chip.active[_ngcontent-%COMP%]{background:var(--color-primary);color:var(--color-text-inverse);border-color:var(--color-primary)}.filter-chip.active[_ngcontent-%COMP%] .filter-icon[_ngcontent-%COMP%]{color:var(--color-text-inverse)}.filter-chip.active[_ngcontent-%COMP%] .filter-badge[_ngcontent-%COMP%]{background:#ffffff4d;color:var(--color-text-inverse)}.filter-chip[_ngcontent-%COMP%]:hover:not(.active){background:var(--color-bg-hover);color:var(--color-text)}.starred-filter.active[_ngcontent-%COMP%]{background:#f5a62326;border-color:#f5a623;color:#f5a623}.starred-filter.active[_ngcontent-%COMP%] .filter-icon[_ngcontent-%COMP%]{color:#f5a623}.tc-group[_ngcontent-%COMP%]{margin-bottom:1.5rem}.tc-group[_ngcontent-%COMP%]:last-child{margin-bottom:0}.tc-group-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:.85rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.tc-group-title[_ngcontent-%COMP%] .group-icon[_ngcontent-%COMP%]{font-size:1rem;width:1rem;height:1rem}.tc-group-title[_ngcontent-%COMP%] .group-count[_ngcontent-%COMP%]{background:var(--color-bg-hover);border-radius:100px;padding:0 .375rem;font-size:.75rem;font-weight:700;min-width:18px;text-align:center;line-height:18px}.tc-grid-wrapper[_ngcontent-%COMP%]{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.tc-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;padding-bottom:1rem}@media(max-width:600px){.tc-grid[_ngcontent-%COMP%]{grid-template-columns:1fr}}.tc-loading[_ngcontent-%COMP%], .tc-empty[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;height:100%;min-height:240px;color:var(--color-text-secondary);text-align:center}.tc-loading[_ngcontent-%COMP%] p[_ngcontent-%COMP%], .tc-empty[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:.95rem}.empty-icon[_ngcontent-%COMP%]{font-size:3rem;width:3rem;height:3rem;opacity:.3}"]})};export{se as TaskControlComponent};
1
+ import {A,k as kt,b as bt}from'./chunk-CI760KmO.js';import {S as St}from'./chunk-BTX631I3.js';import {E as Et,y as yt$1,G as Ge}from'./chunk-DjoW6kqa.js';import {g,G,P,U,N,p as pe$1,J as c,w as we,a as Gi,F as F$1,E as ET,c as U$1,h as Fw,i as hr,j as pr,m as ws,Q as QC,n as hl,o as Rg,q as oC,r as cC,t as nI,v as bg,x as iC,y as uC,A as Ug,T as Tg,u as ue$1,ca as _e$1,Y as x,an as ce$1,ap as Hy,l as le$1,V,S as Sg,a9 as gC,aa as wf,ac as EC,ab as Cf,a8 as Yg,a5 as Dl}from'./main-LBRSRTYI.js';import'./chunk-BXkvjekT.js';import'./chunk-CpZK7G-Q.js';import'./chunk-bfpuueWC.js';import'./chunk-DjMtxVWg.js';import {y as yt,w as wt}from'./chunk-BYyTBqh4.js';var R=class n{threadState=g(U);codayService=g(Ge);threadList=F$1(this.threadState.threadList$,{initialValue:[]});selectedThread=F$1(this.threadState.selectedThread$,{initialValue:null});isThinking=F$1(this.codayService.isThinking$,{initialValue:false});inviteEvent=F$1(this.codayService.currentInviteEvent$.pipe(ue$1(t=>t?.invite===_e$1?null:t)),{initialValue:null});tasks=ET(()=>{let t=this.threadList(),e=this.selectedThread(),r=this.isThinking(),o=this.inviteEvent();return t.filter(i=>!i.parentThreadId).map(i=>{let m=!!e&&i.id===e.id;return {id:i.id,name:i.name,summary:i.summary,modifiedDate:i.modifiedDate,starring:i.starring??[],users:i.users??[],status:this.deriveStatus(i,m,r,!!o),isActive:m,worktreeProject:i.worktreeProject}}).sort((i,m)=>{let q=kt[i.status]-kt[m.status];return q!==0?q:i.modifiedDate>m.modifiedDate?-1:1})});deriveStatus(t,e,r,o){let i=Date.now()-new Date(t.modifiedDate).getTime();return t.closedByUser?"done":t.pendingInvite?"waiting-you":e?r?"in-progress":"paused":i<bt?"in-progress":"paused"}static \u0275fac=function(e){return new(e||n)};static \u0275prov=x({token:n,factory:n.\u0275fac,providedIn:"root"})};var F=class n{projectState=g(P);threadState=g(U);destroy$=new ce$1;eventSource=null;currentProject=null;constructor(){this.projectState.selectedProject$.pipe(Hy(this.destroy$)).subscribe(t=>{let e=t?.name??null;e!==this.currentProject&&(this.disconnect(),e&&this.connect(e));});}connect(t,e=5e3){this.currentProject=t;let r=`/api/projects/${encodeURIComponent(t)}/event-stream`;console.log(`[PROJECT_SSE] Connecting to ${r}`),this.eventSource=new EventSource(r),this.eventSource.onmessage=o=>{try{let i=JSON.parse(o.data),m=le$1(i);if(!m)return;m instanceof V&&(console.log("[PROJECT_SSE] ThreadUpdateEvent \u2014 refreshing thread list"),this.threadState.refreshThreadList());}catch(i){console.warn("[PROJECT_SSE] Failed to parse event:",i);}},this.eventSource.onerror=()=>{this.eventSource?.readyState===EventSource.CLOSED&&(console.warn(`[PROJECT_SSE] Connection closed for ${t}, reconnecting in ${e}ms`),this.eventSource=null,setTimeout(()=>{this.currentProject===t&&this.connect(t,Math.min(e*2,6e4));},e));};}disconnect(){this.eventSource&&(this.eventSource.close(),this.eventSource=null,console.log(`[PROJECT_SSE] Disconnected from project ${this.currentProject}`)),this.currentProject=null;}ngOnDestroy(){this.disconnect(),this.destroy$.next(),this.destroy$.complete();}static \u0275fac=function(e){return new(e||n)};static \u0275prov=x({token:n,factory:n.\u0275fac,providedIn:"root"})};var ce=(n,t)=>t.key,de=(n,t)=>t.status,le=(n,t)=>t.id;function pe(n,t){n&1&&Sg(0,"mat-spinner",6);}function me(n,t){n&1&&(ws(0,"mat-icon"),QC(1,"add"),hl());}function ue(n,t){if(n&1&&(ws(0,"span",16),QC(1),hl()),n&2){let e=EC().$implicit,r=EC();nI(),Yg(r.filterCounts()[e.key]);}}function ge(n,t){if(n&1){let e=gC();ws(0,"button",15),Rg("click",function(){let o=wf(e).$implicit,i=EC();return Cf(i.setFilter(o.key))}),ws(1,"mat-icon",10),QC(2),hl(),ws(3,"span"),QC(4),hl(),oC(5,ue,2,1,"span",16),hl();}if(n&2){let e=t.$implicit,r=EC();Ug("active",r.activeFilter()===e.key),Tg("aria-selected",r.activeFilter()===e.key),nI(2),Yg(e.icon),nI(2),Yg(e.label),nI(),iC(r.filterCounts()[e.key]>0?5:-1);}}function _e(n,t){n&1&&(ws(0,"div",12),Sg(1,"mat-spinner",17),ws(2,"p"),QC(3,"Loading tasks\u2026"),hl()());}function fe(n,t){if(n&1){let e=gC();ws(0,"p"),QC(1,"No tasks yet. Start your first one!"),hl(),ws(2,"button",19),Rg("click",function(){wf(e);let o=EC(2);return Cf(o.createTask())}),ws(3,"mat-icon"),QC(4,"add"),hl(),QC(5," New Task "),hl();}}function he(n,t){n&1&&(ws(0,"p"),QC(1,"No tasks in this category."),hl());}function ke(n,t){if(n&1&&(ws(0,"div",13)(1,"mat-icon",18),QC(2,"rocket_launch"),hl(),oC(3,fe,6,0)(4,he,2,0,"p"),hl()),n&2){let e=EC();nI(3),iC(e.activeFilter()==="all"?3:4);}}function ve(n,t){if(n&1){let e=gC();ws(0,"app-task-card",25),Rg("stopRequested",function(o){wf(e);let i=EC(3);return Cf(i.onStopRequested(o))})("deleteRequested",function(o){wf(e);let i=EC(3);return Cf(i.onDeleteRequested(o))})("starToggled",function(o){wf(e);let i=EC(3);return Cf(i.onStarToggled(o))})("markDoneRequested",function(o){wf(e);let i=EC(3);return Cf(i.onMarkDoneRequested(o))})("markActiveRequested",function(o){wf(e);let i=EC(3);return Cf(i.onMarkActiveRequested(o))}),hl();}if(n&2){let e=t.$implicit;bg("task",e);}}function Ce(n,t){if(n&1&&(ws(0,"section",20)(1,"h2",21)(2,"mat-icon",22),QC(3),hl(),QC(4),ws(5,"span",23),QC(6),hl()(),ws(7,"div",14),cC(8,ve,1,1,"app-task-card",24,le),hl()()),n&2){let e=t.$implicit;nI(3),Yg(e.icon),nI(),Dl(" ",e.label," "),nI(2),Yg(e.tasks.length),nI(2),uC(e.tasks);}}function be(n,t){if(n&1&&cC(0,Ce,10,3,"section",20,de),n&2){let e=EC();uC(e.taskGroups());}}function ye(n,t){if(n&1){let e=gC();ws(0,"app-task-card",25),Rg("stopRequested",function(o){wf(e);let i=EC(2);return Cf(i.onStopRequested(o))})("deleteRequested",function(o){wf(e);let i=EC(2);return Cf(i.onDeleteRequested(o))})("starToggled",function(o){wf(e);let i=EC(2);return Cf(i.onStarToggled(o))})("markDoneRequested",function(o){wf(e);let i=EC(2);return Cf(i.onMarkDoneRequested(o))})("markActiveRequested",function(o){wf(e);let i=EC(2);return Cf(i.onMarkActiveRequested(o))}),hl();}if(n&2){let e=t.$implicit;bg("task",e);}}function xe(n,t){if(n&1&&(ws(0,"div",14),cC(1,ye,1,1,"app-task-card",24,le),hl()),n&2){let e=EC();nI(),uC(e.filteredTasks());}}var Te=[{key:"all",label:"All",icon:"grid_view"},{key:"waiting-you",label:"Waiting for you",icon:"mark_unread_chat_alt"},{key:"in-progress",label:"In progress",icon:"pending"},{key:"paused",label:"Paused",icon:"pause_circle"},{key:"done",label:"Done",icon:"check_circle"}],se=class n{router=g(G);projectState=g(P);threadState=g(U);threadApi=g(N);taskStatus=g(R);userService=g(pe$1);projectApi=g(c);destroyRef=g(we);_projectEventStream=g(F);filters=Te;activeFilter=Gi("all");starredOnly=Gi(false);isCreating=Gi(false);isLoadingList=F$1(this.threadState.isLoadingThreadList$,{initialValue:false});username=F$1(this.userService.username$,{initialValue:null});allTasks=this.taskStatus.tasks;filteredTasks=ET(()=>{let t=this.activeFilter(),e=this.username(),r=this.allTasks();return this.starredOnly()&&e&&(r=r.filter(o=>o.starring.includes(e))),t==="all"?r:r.filter(o=>o.status===t)});filterCounts=ET(()=>{let t=this.username(),e=this.allTasks();return this.starredOnly()&&t&&(e=e.filter(r=>r.starring.includes(t))),{all:e.length,"waiting-you":e.filter(r=>r.status==="waiting-you").length,"in-progress":e.filter(r=>r.status==="in-progress").length,paused:e.filter(r=>r.status==="paused").length,done:e.filter(r=>r.status==="done").length}});taskGroups=ET(()=>{let t=this.username(),e=this.allTasks();this.starredOnly()&&t&&(e=e.filter(o=>o.starring.includes(t)));let r=[{status:"waiting-you",label:"Waiting for you",icon:"mark_unread_chat_alt",tasks:[]},{status:"in-progress",label:"In progress",icon:"pending",tasks:[]},{status:"done",label:"Done",icon:"check_circle",tasks:[]},{status:"paused",label:"Paused",icon:"pause_circle",tasks:[]},{status:"error",label:"Error",icon:"error",tasks:[]}];for(let o of e){let i=r.find(m=>m.status===o.status);i&&i.tasks.push(o);}return r.filter(o=>o.tasks.length>0)});ngOnInit(){this.userService.fetchCurrentUser().pipe(U$1(this.destroyRef)).subscribe({error:t=>console.warn("[TASK-CONTROL] Could not fetch user:",t)});}setFilter(t){this.activeFilter.set(t);}toggleStarredFilter(){this.starredOnly.update(t=>!t);}createTask(){let t=this.projectState.getSelectedProjectId();!t||this.isCreating()||(this.isCreating.set(true),this.threadApi.createThread().pipe(U$1(this.destroyRef)).subscribe({next:e=>{this.isCreating.set(false),this.router.navigate(["project",t,"thread",e.thread.id]);},error:e=>{console.error("[TASK-CONTROL] Failed to create thread:",e),this.isCreating.set(false);}}));}onStopRequested(t){this.threadApi.stopThread(t).pipe(U$1(this.destroyRef)).subscribe({error:e=>console.error("[TASK-CONTROL] Failed to stop thread:",e)});}onDeleteRequested(t){this.threadApi.deleteThread(t).pipe(U$1(this.destroyRef)).subscribe({next:()=>this.threadState.refreshThreadList(),error:e=>console.error("[TASK-CONTROL] Failed to delete thread:",e)});}onStarToggled(t){let e=this.username();if(!e)return;let r=this.allTasks().find(m=>m.id===t);if(!r)return;let o=r.starring.includes(e),i=o?this.threadApi.unstarThread(t):this.threadApi.starThread(t);this.threadState.updateStarLocal(t,!o,e),i.pipe(U$1(this.destroyRef)).subscribe({error:m=>{console.error("[TASK-CONTROL] Failed to toggle star:",m),this.threadState.refreshThreadList();}});}onMarkDoneRequested(t){let e=this.projectState.getSelectedProjectId();e&&this.projectApi.markThreadDone(e,t).pipe(U$1(this.destroyRef)).subscribe({next:()=>this.threadState.refreshThreadList(),error:r=>console.error("[TASK-CONTROL] Failed to mark task as done:",r)});}onMarkActiveRequested(t){let e=this.projectState.getSelectedProjectId();e&&this.projectApi.markThreadActive(e,t).pipe(U$1(this.destroyRef)).subscribe({next:()=>this.threadState.refreshThreadList(),error:r=>console.error("[TASK-CONTROL] Failed to mark task as active:",r)});}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Fw({type:n,selectors:[["app-task-control"]],decls:25,vars:6,consts:[[1,"task-control"],[1,"tc-header"],[1,"tc-title-row"],[1,"tc-title"],[1,"title-icon"],["mat-flat-button","","aria-label","Start a new task",1,"new-task-btn",3,"click","disabled"],["diameter","16"],["role","tablist","aria-label","Filter tasks",1,"tc-filters"],["role","tab",1,"filter-chip",3,"active"],["role","switch","aria-label","Show starred tasks only",1,"filter-chip","starred-filter",3,"click"],[1,"filter-icon"],[1,"tc-grid-wrapper"],[1,"tc-loading"],[1,"tc-empty"],[1,"tc-grid"],["role","tab",1,"filter-chip",3,"click"],[1,"filter-badge"],["diameter","40"],[1,"empty-icon"],["mat-flat-button","",1,"new-task-btn",3,"click"],[1,"tc-group"],[1,"tc-group-title"],[1,"group-icon"],[1,"group-count"],[3,"task"],[3,"stopRequested","deleteRequested","starToggled","markDoneRequested","markActiveRequested","task"]],template:function(e,r){e&1&&(ws(0,"app-sidenav")(1,"div",0)(2,"header",1)(3,"div",2)(4,"h1",3)(5,"mat-icon",4),QC(6,"rocket_launch"),hl(),QC(7," Task Control "),hl(),ws(8,"button",5),Rg("click",function(){return r.createTask()}),oC(9,pe,1,0,"mat-spinner",6)(10,me,2,0,"mat-icon"),QC(11," New Task "),hl()(),ws(12,"nav",7),cC(13,ge,6,6,"button",8,ce),ws(15,"button",9),Rg("click",function(){return r.toggleStarredFilter()}),ws(16,"mat-icon",10),QC(17,"star"),hl(),ws(18,"span"),QC(19,"Starred"),hl()()()(),ws(20,"main",11),oC(21,_e,4,0,"div",12)(22,ke,5,1,"div",13)(23,be,2,0)(24,xe,3,0,"div",14),hl()()()),e&2&&(nI(8),bg("disabled",r.isCreating()),nI(),iC(r.isCreating()?9:10),nI(4),uC(r.filters),nI(2),Ug("active",r.starredOnly()),Tg("aria-checked",r.starredOnly()),nI(6),iC(r.isLoadingList()?21:r.filteredTasks().length===0?22:r.activeFilter()==="all"?23:24));},dependencies:[A,St,yt,wt,hr,pr,Et,yt$1],styles:[".glass-panel[_ngcontent-%COMP%]{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.glass-interactive[_ngcontent-%COMP%]{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-interactive[_ngcontent-%COMP%]:hover{transform:translateY(-2px);box-shadow:0 12px 40px #00000026}.glass-interactive[_ngcontent-%COMP%]:active{transform:translateY(0)}.glass-card[_ngcontent-%COMP%]{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:20px;padding:1.5rem}.glass-button[_ngcontent-%COMP%]{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-button[_ngcontent-%COMP%]:hover{transform:translateY(-2px);box-shadow:0 12px 40px #00000026}.glass-button[_ngcontent-%COMP%]:active{transform:translateY(0)}.glass-button[_ngcontent-%COMP%]{border-radius:12px;padding:.75rem 1.5rem;font-weight:600;cursor:pointer}.glass-button[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:not-allowed;transform:none}.glass-button[_ngcontent-%COMP%]:disabled:hover{transform:none}.smooth-theme-transition[_ngcontent-%COMP%]{transition:background .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease}[_nghost-%COMP%]{display:flex;height:100vh;width:100%;overflow:hidden}.task-control[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;overflow:hidden;padding:1.5rem;gap:1.25rem;box-sizing:border-box}.tc-header[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem;flex-shrink:0}.tc-title-row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.tc-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;margin:0;font-size:1.5rem;font-weight:700;color:var(--color-text)}.tc-title[_ngcontent-%COMP%] .title-icon[_ngcontent-%COMP%]{font-size:1.5rem;width:1.5rem;height:1.5rem;color:var(--color-primary)}.new-task-btn[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.375rem;background:var(--color-primary);color:var(--color-text-inverse);border-radius:12px;font-weight:600;padding:0 1rem;height:36px;flex-shrink:0}.new-task-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:1.1rem;width:1.1rem;height:1.1rem}.new-task-btn[_ngcontent-%COMP%] mat-spinner[_ngcontent-%COMP%]{display:inline-block}.tc-filters[_ngcontent-%COMP%]{display:flex;gap:.5rem;flex-wrap:wrap}.filter-chip[_ngcontent-%COMP%]{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);display:flex;align-items:center;gap:.375rem;padding:.375rem .875rem;border-radius:100px;font-size:.8rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;border:1px solid var(--color-border);transition:background .15s ease,color .15s ease,border-color .15s ease;white-space:nowrap}.filter-chip[_ngcontent-%COMP%] .filter-icon[_ngcontent-%COMP%]{font-size:.9rem;width:.9rem;height:.9rem}.filter-chip[_ngcontent-%COMP%] .filter-badge[_ngcontent-%COMP%]{background:var(--color-primary);color:var(--color-text-inverse);border-radius:100px;padding:0 .375rem;font-size:.7rem;font-weight:700;min-width:18px;text-align:center;line-height:18px}.filter-chip.active[_ngcontent-%COMP%]{background:var(--color-primary);color:var(--color-text-inverse);border-color:var(--color-primary)}.filter-chip.active[_ngcontent-%COMP%] .filter-icon[_ngcontent-%COMP%]{color:var(--color-text-inverse)}.filter-chip.active[_ngcontent-%COMP%] .filter-badge[_ngcontent-%COMP%]{background:#ffffff4d;color:var(--color-text-inverse)}.filter-chip[_ngcontent-%COMP%]:hover:not(.active){background:var(--color-bg-hover);color:var(--color-text)}.starred-filter.active[_ngcontent-%COMP%]{background:#f5a62326;border-color:#f5a623;color:#f5a623}.starred-filter.active[_ngcontent-%COMP%] .filter-icon[_ngcontent-%COMP%]{color:#f5a623}.tc-group[_ngcontent-%COMP%]{margin-bottom:1.5rem}.tc-group[_ngcontent-%COMP%]:last-child{margin-bottom:0}.tc-group-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:.85rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.tc-group-title[_ngcontent-%COMP%] .group-icon[_ngcontent-%COMP%]{font-size:1rem;width:1rem;height:1rem}.tc-group-title[_ngcontent-%COMP%] .group-count[_ngcontent-%COMP%]{background:var(--color-bg-hover);border-radius:100px;padding:0 .375rem;font-size:.75rem;font-weight:700;min-width:18px;text-align:center;line-height:18px}.tc-grid-wrapper[_ngcontent-%COMP%]{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.tc-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;padding-bottom:1rem}@media(max-width:600px){.tc-grid[_ngcontent-%COMP%]{grid-template-columns:1fr}}.tc-loading[_ngcontent-%COMP%], .tc-empty[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;height:100%;min-height:240px;color:var(--color-text-secondary);text-align:center}.tc-loading[_ngcontent-%COMP%] p[_ngcontent-%COMP%], .tc-empty[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:.95rem}.empty-icon[_ngcontent-%COMP%]{font-size:3rem;width:3rem;height:3rem;opacity:.3}"]})};export{se as TaskControlComponent};