@whoz-oss/coday-client 0.104.1 → 0.104.3

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.
@@ -0,0 +1 @@
1
+ import{b as a}from"./chunk-DWPCHLTZ.js";import"./chunk-TMYMW2LL.js";import"./chunk-FXQT2NYX.js";import"./chunk-UPXODNKN.js";import"./chunk-LBCXFVPY.js";import"./chunk-DYTHVKS2.js";export{a as NamespaceListComponent};
@@ -1 +1 @@
1
- import{c as A,e as v,g as j,h as G,j as h,l as U,p as H,z as J}from"./chunk-TMYMW2LL.js";import{S as E}from"./chunk-7NSO7VDA.js";import{a as S}from"./chunk-UPXODNKN.js";import{c as B}from"./chunk-LBCXFVPY.js";import{Aa as y,Fb as q,Gb as F,Ha as w,J as k,Oa as I,Pa as u,Qa as C,T as N,Ta as L,Ua as R,Va as f,Wa as o,X as l,Xa as r,Y as m,Ya as V,a as D,ac as z,b as P,ba as T,bb as b,db as d,fa as g,fb as s,h as O,pc as $,sa as c,tb as p,ub as x}from"./chunk-DYTHVKS2.js";function X(i,t){if(i&1&&(o(0,"span",3),p(1),r()),i&2){let e=s();c(),x(e.namespace.description)}}function Y(i,t){if(i&1){let e=b();o(0,"span",5),p(1,"Delete?"),r(),o(2,"ds-icon-button",6),d("action",function(){l(e);let n=s();return m(n.onDeleteConfirmed())}),r(),o(3,"ds-icon-button",7),d("action",function(){l(e);let n=s();return m(n.onDeleteCancelled())}),r()}}function Z(i,t){if(i&1){let e=b();o(0,"ds-icon-button",8),d("action",function(){l(e);let n=s();return m(n.onEdit())}),r(),o(1,"ds-icon-button",9),d("action",function(){l(e);let n=s();return m(n.onDeleteArmed())}),r()}}var M=class i{namespace;selected=new w;editRequested=new w;deleteRequested=new w;pendingDelete=g(!1);onSelect(){this.selected.emit(this.namespace)}onEdit(){this.editRequested.emit(this.namespace)}onDeleteArmed(){this.pendingDelete.set(!0)}onDeleteConfirmed(){this.pendingDelete.set(!1),this.deleteRequested.emit(this.namespace)}onDeleteCancelled(){this.pendingDelete.set(!1)}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=y({type:i,selectors:[["agentos-namespace-item"]],inputs:{namespace:"namespace"},outputs:{selected:"selected",editRequested:"editRequested",deleteRequested:"deleteRequested"},decls:8,vars:3,consts:[["role","listitem",1,"namespace-item"],["type","button",1,"namespace-item__body",3,"click"],[1,"namespace-item__name"],[1,"namespace-item__desc"],[1,"namespace-item__actions"],[1,"namespace-item__confirm-label"],["icon","check","variant","danger","title","Confirm deletion",3,"action"],["icon","close","title","Cancel deletion",3,"action"],["icon","edit","title","Edit namespace",3,"action"],["icon","delete","variant","danger","title","Delete namespace",3,"action"]],template:function(e,a){e&1&&(o(0,"div",0)(1,"button",1),d("click",function(){return a.onSelect()}),o(2,"span",2),p(3),r(),u(4,X,2,1,"span",3),r(),o(5,"div",4),u(6,Y,4,0)(7,Z,2,0),r()()),e&2&&(c(3),x(a.namespace.name),c(),C(a.namespace.description?4:-1),c(2),C(a.pendingDelete()?6:7))},dependencies:[E],styles:[".namespace-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:10px;border:1px solid var(--color-border, rgba(0, 0, 0, .08));background:var(--glass-bg, rgba(255, 255, 255, .72));-webkit-backdrop-filter:var(--glass-backdrop-blur, blur(20px));backdrop-filter:var(--glass-backdrop-blur, blur(20px));transition:background .15s ease,border-color .15s ease}.namespace-item[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover, rgba(0, 0, 0, .04));border-color:var(--color-primary, #007aff)}.namespace-item__body[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;background:none;border:none;padding:0;cursor:pointer;text-align:left;min-width:0}.namespace-item__name[_ngcontent-%COMP%]{font-size:.95rem;font-weight:500;color:var(--color-text, #1d1d1f);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.namespace-item__desc[_ngcontent-%COMP%]{font-size:.8rem;color:var(--color-text-secondary, #6e6e73);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.namespace-item__actions[_ngcontent-%COMP%]{flex-shrink:0;display:flex;align-items:center;gap:.125rem;opacity:0;transition:opacity .15s ease}.namespace-item[_ngcontent-%COMP%]:hover .namespace-item__actions[_ngcontent-%COMP%], .namespace-item[_ngcontent-%COMP%]:focus-within .namespace-item__actions[_ngcontent-%COMP%]{opacity:1}.namespace-item__confirm-label[_ngcontent-%COMP%]{font-size:.8rem;font-weight:500;color:var(--color-error, #ff3b30);margin-right:.25rem;white-space:nowrap}"],changeDetection:0})};function ee(i,t){if(i&1){let e=b();o(0,"form",5),d("ngSubmit",function(){l(e);let n=s();return m(n.submitCreate())}),V(1,"input",6)(2,"input",7),o(3,"div",8)(4,"ds-icon-button",9),d("action",function(){l(e);let n=s();return m(n.submitCreate())}),r(),o(5,"ds-icon-button",10),d("action",function(){l(e);let n=s();return m(n.cancelCreate())}),r()()()}if(i&2){let e=s();c(),f("formControl",e.nameControl),c(),f("formControl",e.descriptionControl),c(2),f("disabled",e.nameControl.invalid||e.isSubmitting())}}function te(i,t){if(i&1){let e=b();o(0,"form",11),d("ngSubmit",function(){l(e);let n=s();return m(n.submitEdit())}),o(1,"p",12),p(2," Editing: "),o(3,"strong"),p(4),r()(),V(5,"input",6)(6,"input",7),o(7,"div",8)(8,"ds-icon-button",13),d("action",function(){l(e);let n=s();return m(n.submitEdit())}),r(),o(9,"ds-icon-button",10),d("action",function(){l(e);let n=s();return m(n.cancelEdit())}),r()()()}if(i&2){let e=s();c(4),x(t.name),c(),f("formControl",e.editNameControl),c(),f("formControl",e.editDescriptionControl),c(2),f("disabled",e.editNameControl.invalid||e.isEditSubmitting())}}function ne(i,t){i&1&&(o(0,"div",14)(1,"p"),p(2,"No namespaces yet. Create one above."),r()())}function ie(i,t){if(i&1){let e=b();o(0,"agentos-namespace-item",17),d("selected",function(n){l(e);let _=s(3);return m(_.select(n))})("editRequested",function(n){l(e);let _=s(3);return m(_.openEditForm(n))})("deleteRequested",function(n){l(e);let _=s(3);return m(_.deleteNamespace(n))}),r()}if(i&2){let e=t.$implicit;f("namespace",e)}}function oe(i,t){if(i&1&&(o(0,"ul",15),L(1,ie,1,1,"agentos-namespace-item",16,I().trackById,!0),r()),i&2){let e=s();c(),R(e)}}function ae(i,t){i&1&&u(0,ne,3,0,"div",14)(1,oe,3,0,"ul",15),i&2&&C(t.length===0?0:1)}var K=class i{router=N($);namespaceController=N(B);destroyRef=N(T);refresh$=new O(void 0);namespaces$=this.refresh$.pipe(k(()=>this.namespaceController.listAll()));nameControl=new h("",{nonNullable:!0,validators:[v.required,v.minLength(1)]});descriptionControl=new h("",{nonNullable:!0});isCreating=g(!1);isSubmitting=g(!1);editNameControl=new h("",{nonNullable:!0,validators:[v.required,v.minLength(1)]});editDescriptionControl=new h("",{nonNullable:!0});editingNamespace=g(null);isEditSubmitting=g(!1);select(t){this.router.navigate(["/agentos",t.id,"cases"])}openCreateForm(){this.nameControl.reset(),this.descriptionControl.reset(),this.isCreating.set(!0),this.editingNamespace.set(null)}cancelCreate(){this.isCreating.set(!1)}submitCreate(){if(this.nameControl.invalid||this.isSubmitting())return;let t=D({name:this.nameControl.value.trim()},this.descriptionControl.value.trim()?{description:this.descriptionControl.value.trim()}:{});this.isSubmitting.set(!0),this.namespaceController.create(t).pipe(S(this.destroyRef)).subscribe({next:()=>{this.isCreating.set(!1),this.isSubmitting.set(!1),this.refresh$.next()},error:()=>this.isSubmitting.set(!1)})}openEditForm(t){this.editNameControl.setValue(t.name),this.editDescriptionControl.setValue(t.description??""),this.editingNamespace.set(t),this.isCreating.set(!1)}cancelEdit(){this.editingNamespace.set(null)}submitEdit(){let t=this.editingNamespace();if(!t||this.editNameControl.invalid||this.isEditSubmitting())return;let e=P(D({},t),{name:this.editNameControl.value.trim(),description:this.editDescriptionControl.value.trim()||void 0});this.isEditSubmitting.set(!0),this.namespaceController.update(t.id,e).pipe(S(this.destroyRef)).subscribe({next:()=>{this.editingNamespace.set(null),this.isEditSubmitting.set(!1),this.refresh$.next()},error:()=>this.isEditSubmitting.set(!1)})}deleteNamespace(t){this.namespaceController._delete(t.id).pipe(S(this.destroyRef)).subscribe(()=>this.refresh$.next())}trackById(t,e){return e.id}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=y({type:i,selectors:[["agentos-namespace-list"]],decls:9,vars:5,consts:[[1,"namespace-list"],[1,"namespace-list__header"],["icon","add","variant","primary","title","Create namespace",3,"action"],[1,"namespace-list__create-form"],[1,"namespace-list__create-form","namespace-list__edit-form"],[1,"namespace-list__create-form",3,"ngSubmit"],["type","text","placeholder","Namespace name *",1,"namespace-list__input",3,"formControl"],["type","text","placeholder","Description (optional)",1,"namespace-list__input",3,"formControl"],[1,"namespace-list__create-actions"],["icon","check","variant","primary","title","Confirm",3,"action","disabled"],["icon","close","title","Cancel",3,"action"],[1,"namespace-list__create-form","namespace-list__edit-form",3,"ngSubmit"],[1,"namespace-list__edit-label"],["icon","check","variant","primary","title","Save changes",3,"action","disabled"],[1,"namespace-list__empty"],["role","list",1,"namespace-list__items"],[3,"namespace"],[3,"selected","editRequested","deleteRequested","namespace"]],template:function(e,a){if(e&1&&(o(0,"div",0)(1,"header",1)(2,"h2"),p(3,"Namespaces"),r(),o(4,"ds-icon-button",2),d("action",function(){return a.openCreateForm()}),r()(),u(5,ee,6,3,"form",3),u(6,te,10,4,"form",4),u(7,ae,2,1),q(8,"async"),r()),e&2){let n,_;c(5),C(a.isCreating()?5:-1),c(),C((n=a.editingNamespace())?6:-1,n),c(),C((_=F(8,3,a.namespaces$))?7:-1,_)}},dependencies:[J,U,A,j,G,H,E,M,z],styles:[".namespace-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:2rem;gap:1.5rem;max-width:640px;margin:0 auto}.namespace-list__header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between}.namespace-list__header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text, #1d1d1f);letter-spacing:-.02em}.namespace-list__create-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border-radius:12px;border:1px solid var(--color-primary, #007aff);background:var(--glass-bg, rgba(255, 255, 255, .72));-webkit-backdrop-filter:var(--glass-backdrop-blur, blur(20px));backdrop-filter:var(--glass-backdrop-blur, blur(20px))}.namespace-list__input[_ngcontent-%COMP%]{width:100%;padding:.6rem .875rem;border-radius:8px;border:1px solid var(--color-border, rgba(0, 0, 0, .1));background:transparent;color:var(--color-text, #1d1d1f);font-size:.9rem;font-family:inherit;outline:none;box-sizing:border-box;transition:border-color .15s ease}.namespace-list__input[_ngcontent-%COMP%]:focus{border-color:var(--color-primary, #007aff)}.namespace-list__input[_ngcontent-%COMP%]::placeholder{color:var(--color-text-secondary, #6e6e73)}.namespace-list__create-actions[_ngcontent-%COMP%]{display:flex;gap:.25rem;justify-content:flex-end}.namespace-list__items[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.namespace-list__edit-form[_ngcontent-%COMP%]{border-color:var(--color-text-secondary, #6e6e73)}.namespace-list__edit-label[_ngcontent-%COMP%]{margin:0 0 .25rem;font-size:.8rem;color:var(--color-text-secondary, #6e6e73)}.namespace-list__edit-label[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{color:var(--color-text, #1d1d1f)}.namespace-list__empty[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-size:.9rem;margin:0}"]})};export{M as a,K as b};
1
+ import{c as A,e as v,g as j,h as G,j as h,l as U,p as H,z as J}from"./chunk-TMYMW2LL.js";import{S as E}from"./chunk-FXQT2NYX.js";import{a as S}from"./chunk-UPXODNKN.js";import{c as B}from"./chunk-LBCXFVPY.js";import{Aa as y,Fb as q,Gb as F,Ha as w,J as k,Oa as I,Pa as u,Qa as C,T as N,Ta as L,Ua as R,Va as f,Wa as o,X as l,Xa as r,Y as m,Ya as V,a as D,ac as z,b as P,ba as T,bb as b,db as d,fa as g,fb as s,h as O,pc as $,sa as c,tb as p,ub as x}from"./chunk-DYTHVKS2.js";function X(i,t){if(i&1&&(o(0,"span",3),p(1),r()),i&2){let e=s();c(),x(e.namespace.description)}}function Y(i,t){if(i&1){let e=b();o(0,"span",5),p(1,"Delete?"),r(),o(2,"ds-icon-button",6),d("action",function(){l(e);let n=s();return m(n.onDeleteConfirmed())}),r(),o(3,"ds-icon-button",7),d("action",function(){l(e);let n=s();return m(n.onDeleteCancelled())}),r()}}function Z(i,t){if(i&1){let e=b();o(0,"ds-icon-button",8),d("action",function(){l(e);let n=s();return m(n.onEdit())}),r(),o(1,"ds-icon-button",9),d("action",function(){l(e);let n=s();return m(n.onDeleteArmed())}),r()}}var M=class i{namespace;selected=new w;editRequested=new w;deleteRequested=new w;pendingDelete=g(!1);onSelect(){this.selected.emit(this.namespace)}onEdit(){this.editRequested.emit(this.namespace)}onDeleteArmed(){this.pendingDelete.set(!0)}onDeleteConfirmed(){this.pendingDelete.set(!1),this.deleteRequested.emit(this.namespace)}onDeleteCancelled(){this.pendingDelete.set(!1)}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=y({type:i,selectors:[["agentos-namespace-item"]],inputs:{namespace:"namespace"},outputs:{selected:"selected",editRequested:"editRequested",deleteRequested:"deleteRequested"},decls:8,vars:3,consts:[["role","listitem",1,"namespace-item"],["type","button",1,"namespace-item__body",3,"click"],[1,"namespace-item__name"],[1,"namespace-item__desc"],[1,"namespace-item__actions"],[1,"namespace-item__confirm-label"],["icon","check","variant","danger","title","Confirm deletion",3,"action"],["icon","close","title","Cancel deletion",3,"action"],["icon","edit","title","Edit namespace",3,"action"],["icon","delete","variant","danger","title","Delete namespace",3,"action"]],template:function(e,a){e&1&&(o(0,"div",0)(1,"button",1),d("click",function(){return a.onSelect()}),o(2,"span",2),p(3),r(),u(4,X,2,1,"span",3),r(),o(5,"div",4),u(6,Y,4,0)(7,Z,2,0),r()()),e&2&&(c(3),x(a.namespace.name),c(),C(a.namespace.description?4:-1),c(2),C(a.pendingDelete()?6:7))},dependencies:[E],styles:[".namespace-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:10px;border:1px solid var(--color-border, rgba(0, 0, 0, .08));background:var(--glass-bg, rgba(255, 255, 255, .72));-webkit-backdrop-filter:var(--glass-backdrop-blur, blur(20px));backdrop-filter:var(--glass-backdrop-blur, blur(20px));transition:background .15s ease,border-color .15s ease}.namespace-item[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover, rgba(0, 0, 0, .04));border-color:var(--color-primary, #007aff)}.namespace-item__body[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;background:none;border:none;padding:0;cursor:pointer;text-align:left;min-width:0}.namespace-item__name[_ngcontent-%COMP%]{font-size:.95rem;font-weight:500;color:var(--color-text, #1d1d1f);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.namespace-item__desc[_ngcontent-%COMP%]{font-size:.8rem;color:var(--color-text-secondary, #6e6e73);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.namespace-item__actions[_ngcontent-%COMP%]{flex-shrink:0;display:flex;align-items:center;gap:.125rem;opacity:0;transition:opacity .15s ease}.namespace-item[_ngcontent-%COMP%]:hover .namespace-item__actions[_ngcontent-%COMP%], .namespace-item[_ngcontent-%COMP%]:focus-within .namespace-item__actions[_ngcontent-%COMP%]{opacity:1}.namespace-item__confirm-label[_ngcontent-%COMP%]{font-size:.8rem;font-weight:500;color:var(--color-error, #ff3b30);margin-right:.25rem;white-space:nowrap}"],changeDetection:0})};function ee(i,t){if(i&1){let e=b();o(0,"form",5),d("ngSubmit",function(){l(e);let n=s();return m(n.submitCreate())}),V(1,"input",6)(2,"input",7),o(3,"div",8)(4,"ds-icon-button",9),d("action",function(){l(e);let n=s();return m(n.submitCreate())}),r(),o(5,"ds-icon-button",10),d("action",function(){l(e);let n=s();return m(n.cancelCreate())}),r()()()}if(i&2){let e=s();c(),f("formControl",e.nameControl),c(),f("formControl",e.descriptionControl),c(2),f("disabled",e.nameControl.invalid||e.isSubmitting())}}function te(i,t){if(i&1){let e=b();o(0,"form",11),d("ngSubmit",function(){l(e);let n=s();return m(n.submitEdit())}),o(1,"p",12),p(2," Editing: "),o(3,"strong"),p(4),r()(),V(5,"input",6)(6,"input",7),o(7,"div",8)(8,"ds-icon-button",13),d("action",function(){l(e);let n=s();return m(n.submitEdit())}),r(),o(9,"ds-icon-button",10),d("action",function(){l(e);let n=s();return m(n.cancelEdit())}),r()()()}if(i&2){let e=s();c(4),x(t.name),c(),f("formControl",e.editNameControl),c(),f("formControl",e.editDescriptionControl),c(2),f("disabled",e.editNameControl.invalid||e.isEditSubmitting())}}function ne(i,t){i&1&&(o(0,"div",14)(1,"p"),p(2,"No namespaces yet. Create one above."),r()())}function ie(i,t){if(i&1){let e=b();o(0,"agentos-namespace-item",17),d("selected",function(n){l(e);let _=s(3);return m(_.select(n))})("editRequested",function(n){l(e);let _=s(3);return m(_.openEditForm(n))})("deleteRequested",function(n){l(e);let _=s(3);return m(_.deleteNamespace(n))}),r()}if(i&2){let e=t.$implicit;f("namespace",e)}}function oe(i,t){if(i&1&&(o(0,"ul",15),L(1,ie,1,1,"agentos-namespace-item",16,I().trackById,!0),r()),i&2){let e=s();c(),R(e)}}function ae(i,t){i&1&&u(0,ne,3,0,"div",14)(1,oe,3,0,"ul",15),i&2&&C(t.length===0?0:1)}var K=class i{router=N($);namespaceController=N(B);destroyRef=N(T);refresh$=new O(void 0);namespaces$=this.refresh$.pipe(k(()=>this.namespaceController.listAll()));nameControl=new h("",{nonNullable:!0,validators:[v.required,v.minLength(1)]});descriptionControl=new h("",{nonNullable:!0});isCreating=g(!1);isSubmitting=g(!1);editNameControl=new h("",{nonNullable:!0,validators:[v.required,v.minLength(1)]});editDescriptionControl=new h("",{nonNullable:!0});editingNamespace=g(null);isEditSubmitting=g(!1);select(t){this.router.navigate(["/agentos",t.id,"cases"])}openCreateForm(){this.nameControl.reset(),this.descriptionControl.reset(),this.isCreating.set(!0),this.editingNamespace.set(null)}cancelCreate(){this.isCreating.set(!1)}submitCreate(){if(this.nameControl.invalid||this.isSubmitting())return;let t=D({name:this.nameControl.value.trim()},this.descriptionControl.value.trim()?{description:this.descriptionControl.value.trim()}:{});this.isSubmitting.set(!0),this.namespaceController.create(t).pipe(S(this.destroyRef)).subscribe({next:()=>{this.isCreating.set(!1),this.isSubmitting.set(!1),this.refresh$.next()},error:()=>this.isSubmitting.set(!1)})}openEditForm(t){this.editNameControl.setValue(t.name),this.editDescriptionControl.setValue(t.description??""),this.editingNamespace.set(t),this.isCreating.set(!1)}cancelEdit(){this.editingNamespace.set(null)}submitEdit(){let t=this.editingNamespace();if(!t||this.editNameControl.invalid||this.isEditSubmitting())return;let e=P(D({},t),{name:this.editNameControl.value.trim(),description:this.editDescriptionControl.value.trim()||void 0});this.isEditSubmitting.set(!0),this.namespaceController.update(t.id,e).pipe(S(this.destroyRef)).subscribe({next:()=>{this.editingNamespace.set(null),this.isEditSubmitting.set(!1),this.refresh$.next()},error:()=>this.isEditSubmitting.set(!1)})}deleteNamespace(t){this.namespaceController._delete(t.id).pipe(S(this.destroyRef)).subscribe(()=>this.refresh$.next())}trackById(t,e){return e.id}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=y({type:i,selectors:[["agentos-namespace-list"]],decls:9,vars:5,consts:[[1,"namespace-list"],[1,"namespace-list__header"],["icon","add","variant","primary","title","Create namespace",3,"action"],[1,"namespace-list__create-form"],[1,"namespace-list__create-form","namespace-list__edit-form"],[1,"namespace-list__create-form",3,"ngSubmit"],["type","text","placeholder","Namespace name *",1,"namespace-list__input",3,"formControl"],["type","text","placeholder","Description (optional)",1,"namespace-list__input",3,"formControl"],[1,"namespace-list__create-actions"],["icon","check","variant","primary","title","Confirm",3,"action","disabled"],["icon","close","title","Cancel",3,"action"],[1,"namespace-list__create-form","namespace-list__edit-form",3,"ngSubmit"],[1,"namespace-list__edit-label"],["icon","check","variant","primary","title","Save changes",3,"action","disabled"],[1,"namespace-list__empty"],["role","list",1,"namespace-list__items"],[3,"namespace"],[3,"selected","editRequested","deleteRequested","namespace"]],template:function(e,a){if(e&1&&(o(0,"div",0)(1,"header",1)(2,"h2"),p(3,"Namespaces"),r(),o(4,"ds-icon-button",2),d("action",function(){return a.openCreateForm()}),r()(),u(5,ee,6,3,"form",3),u(6,te,10,4,"form",4),u(7,ae,2,1),q(8,"async"),r()),e&2){let n,_;c(5),C(a.isCreating()?5:-1),c(),C((n=a.editingNamespace())?6:-1,n),c(),C((_=F(8,3,a.namespaces$))?7:-1,_)}},dependencies:[J,U,A,j,G,H,E,M,z],styles:[".namespace-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:2rem;gap:1.5rem;max-width:640px;margin:0 auto}.namespace-list__header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between}.namespace-list__header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text, #1d1d1f);letter-spacing:-.02em}.namespace-list__create-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border-radius:12px;border:1px solid var(--color-primary, #007aff);background:var(--glass-bg, rgba(255, 255, 255, .72));-webkit-backdrop-filter:var(--glass-backdrop-blur, blur(20px));backdrop-filter:var(--glass-backdrop-blur, blur(20px))}.namespace-list__input[_ngcontent-%COMP%]{width:100%;padding:.6rem .875rem;border-radius:8px;border:1px solid var(--color-border, rgba(0, 0, 0, .1));background:transparent;color:var(--color-text, #1d1d1f);font-size:.9rem;font-family:inherit;outline:none;box-sizing:border-box;transition:border-color .15s ease}.namespace-list__input[_ngcontent-%COMP%]:focus{border-color:var(--color-primary, #007aff)}.namespace-list__input[_ngcontent-%COMP%]::placeholder{color:var(--color-text-secondary, #6e6e73)}.namespace-list__create-actions[_ngcontent-%COMP%]{display:flex;gap:.25rem;justify-content:flex-end}.namespace-list__items[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.namespace-list__edit-form[_ngcontent-%COMP%]{border-color:var(--color-text-secondary, #6e6e73)}.namespace-list__edit-label[_ngcontent-%COMP%]{margin:0 0 .25rem;font-size:.8rem;color:var(--color-text-secondary, #6e6e73)}.namespace-list__edit-label[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{color:var(--color-text, #1d1d1f)}.namespace-list__empty[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-size:.9rem;margin:0}"]})};export{M as a,K as b};
@@ -7,4 +7,4 @@ import{a as Qe}from"./chunk-UPXODNKN.js";import{$ as R,$a as U,Aa as f,B as gt,B
7
7
  `,`@media(forced-colors: active){.mat-mdc-button:not(.mdc-button--outlined),.mat-mdc-unelevated-button:not(.mdc-button--outlined),.mat-mdc-raised-button:not(.mdc-button--outlined),.mat-mdc-outlined-button:not(.mdc-button--outlined),.mat-mdc-button-base.mat-tonal-button,.mat-mdc-icon-button.mat-mdc-icon-button,.mat-mdc-outlined-button .mdc-button__ripple{outline:solid 1px}}
8
8
  `],encapsulation:2,changeDetection:0})}return o})();function Ln(o){return o.hasAttribute("mat-raised-button")?"elevated":o.hasAttribute("mat-stroked-button")?"outlined":o.hasAttribute("mat-flat-button")?"filled":o.hasAttribute("mat-button")?"text":null}var Pn=new l("mat-mdc-fab-default-options",{providedIn:"root",factory:Uo});function Uo(){return{color:"accent"}}var Lo=Uo(),ms=(()=>{class o extends Lt{_options=s(Pn,{optional:!0});_isFab=!0;extended;constructor(){super(),this._options=this._options||Lo,this.color=this._options.color||Lo.color}static \u0275fac=function(e){return new(e||o)};static \u0275cmp=f({type:o,selectors:[["button","mat-fab",""],["a","mat-fab",""],["button","matFab",""],["a","matFab",""]],hostAttrs:[1,"mdc-fab","mat-mdc-fab-base","mat-mdc-fab"],hostVars:4,hostBindings:function(e,n){e&2&&w("mdc-fab--extended",n.extended)("mat-mdc-extended-fab",n.extended)},inputs:{extended:[2,"extended","extended",k]},exportAs:["matButton","matAnchor"],features:[it],attrs:Nn,ngContentSelectors:Bo,decls:7,vars:4,consts:[[1,"mat-mdc-button-persistent-ripple"],[1,"mdc-button__label"],[1,"mat-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(e,n){e&1&&(K(Po),U(0,"span",0),M(1),F(2,"span",1),M(3,1),S(),M(4,2),U(5,"span",2)(6,"span",3)),e&2&&w("mdc-button__ripple",!n._isFab)("mdc-fab__ripple",n._isFab)},styles:[`.mat-mdc-fab-base{-webkit-user-select:none;user-select:none;position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:56px;height:56px;padding:0;border:none;fill:currentColor;text-decoration:none;cursor:pointer;-moz-appearance:none;-webkit-appearance:none;overflow:visible;transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1),opacity 15ms linear 30ms,transform 270ms 0ms cubic-bezier(0, 0, 0.2, 1);flex-shrink:0;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-fab-base .mat-mdc-button-ripple,.mat-mdc-fab-base .mat-mdc-button-persistent-ripple,.mat-mdc-fab-base .mat-mdc-button-persistent-ripple::before{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-fab-base .mat-mdc-button-ripple{overflow:hidden}.mat-mdc-fab-base .mat-mdc-button-persistent-ripple::before{content:"";opacity:0}.mat-mdc-fab-base .mdc-button__label,.mat-mdc-fab-base .mat-icon{z-index:1;position:relative}.mat-mdc-fab-base .mat-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute}.mat-mdc-fab-base:focus>.mat-focus-indicator::before{content:""}.mat-mdc-fab-base._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mdc-fab-base::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid rgba(0,0,0,0);border-radius:inherit;content:"";pointer-events:none}.mat-mdc-fab-base[hidden]{display:none}.mat-mdc-fab-base::-moz-focus-inner{padding:0;border:0}.mat-mdc-fab-base:active,.mat-mdc-fab-base:focus{outline:none}.mat-mdc-fab-base:hover{cursor:pointer}.mat-mdc-fab-base>svg{width:100%}.mat-mdc-fab-base .mat-icon,.mat-mdc-fab-base .material-icons{transition:transform 180ms 90ms cubic-bezier(0, 0, 0.2, 1);fill:currentColor;will-change:transform}.mat-mdc-fab-base .mat-focus-indicator::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 2px)*-1)}.mat-mdc-fab-base[disabled],.mat-mdc-fab-base.mat-mdc-button-disabled{cursor:default;pointer-events:none}.mat-mdc-fab-base[disabled],.mat-mdc-fab-base[disabled]:focus,.mat-mdc-fab-base.mat-mdc-button-disabled,.mat-mdc-fab-base.mat-mdc-button-disabled:focus{box-shadow:none}.mat-mdc-fab-base.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-fab{background-color:var(--mat-fab-container-color, var(--mat-sys-primary-container));border-radius:var(--mat-fab-container-shape, var(--mat-sys-corner-large));color:var(--mat-fab-foreground-color, var(--mat-sys-on-primary-container, inherit));box-shadow:var(--mat-fab-container-elevation-shadow, var(--mat-sys-level3))}.mat-mdc-fab:hover{box-shadow:var(--mat-fab-hover-container-elevation-shadow, var(--mat-sys-level4))}.mat-mdc-fab:focus{box-shadow:var(--mat-fab-focus-container-elevation-shadow, var(--mat-sys-level3))}.mat-mdc-fab:active,.mat-mdc-fab:focus:active{box-shadow:var(--mat-fab-pressed-container-elevation-shadow, var(--mat-sys-level3))}.mat-mdc-fab[disabled],.mat-mdc-fab.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-fab-disabled-state-foreground-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-fab-disabled-state-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-fab.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-fab .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-fab-touch-target-size, 48px);display:var(--mat-fab-touch-target-display, block);left:50%;width:var(--mat-fab-touch-target-size, 48px);transform:translate(-50%, -50%)}.mat-mdc-fab .mat-ripple-element{background-color:var(--mat-fab-ripple-color, color-mix(in srgb, var(--mat-sys-on-primary-container) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-fab .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-fab-state-layer-color, var(--mat-sys-on-primary-container))}.mat-mdc-fab.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-fab-disabled-state-layer-color)}.mat-mdc-fab:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-fab-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-fab.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-fab.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-fab.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-fab-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-fab:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-fab-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-mini-fab{width:40px;height:40px;background-color:var(--mat-fab-small-container-color, var(--mat-sys-primary-container));border-radius:var(--mat-fab-small-container-shape, var(--mat-sys-corner-medium));color:var(--mat-fab-small-foreground-color, var(--mat-sys-on-primary-container, inherit));box-shadow:var(--mat-fab-small-container-elevation-shadow, var(--mat-sys-level3))}.mat-mdc-mini-fab:hover{box-shadow:var(--mat-fab-small-hover-container-elevation-shadow, var(--mat-sys-level4))}.mat-mdc-mini-fab:focus{box-shadow:var(--mat-fab-small-focus-container-elevation-shadow, var(--mat-sys-level3))}.mat-mdc-mini-fab:active,.mat-mdc-mini-fab:focus:active{box-shadow:var(--mat-fab-small-pressed-container-elevation-shadow, var(--mat-sys-level3))}.mat-mdc-mini-fab[disabled],.mat-mdc-mini-fab.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-fab-small-disabled-state-foreground-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-fab-small-disabled-state-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-mini-fab.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-mini-fab .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-fab-small-touch-target-size, 48px);display:var(--mat-fab-small-touch-target-display);left:50%;width:var(--mat-fab-small-touch-target-size, 48px);transform:translate(-50%, -50%)}.mat-mdc-mini-fab .mat-ripple-element{background-color:var(--mat-fab-small-ripple-color, color-mix(in srgb, var(--mat-sys-on-primary-container) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-mini-fab .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-fab-small-state-layer-color, var(--mat-sys-on-primary-container))}.mat-mdc-mini-fab.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-fab-small-disabled-state-layer-color)}.mat-mdc-mini-fab:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-fab-small-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-mini-fab.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-mini-fab.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-mini-fab.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-fab-small-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-mini-fab:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-fab-small-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-extended-fab{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;padding-left:20px;padding-right:20px;width:auto;max-width:100%;line-height:normal;box-shadow:var(--mat-fab-extended-container-elevation-shadow, var(--mat-sys-level3));height:var(--mat-fab-extended-container-height, 56px);border-radius:var(--mat-fab-extended-container-shape, var(--mat-sys-corner-large));font-family:var(--mat-fab-extended-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-fab-extended-label-text-size, var(--mat-sys-label-large-size));font-weight:var(--mat-fab-extended-label-text-weight, var(--mat-sys-label-large-weight));letter-spacing:var(--mat-fab-extended-label-text-tracking, var(--mat-sys-label-large-tracking))}.mat-mdc-extended-fab:hover{box-shadow:var(--mat-fab-extended-hover-container-elevation-shadow, var(--mat-sys-level4))}.mat-mdc-extended-fab:focus{box-shadow:var(--mat-fab-extended-focus-container-elevation-shadow, var(--mat-sys-level3))}.mat-mdc-extended-fab:active,.mat-mdc-extended-fab:focus:active{box-shadow:var(--mat-fab-extended-pressed-container-elevation-shadow, var(--mat-sys-level3))}.mat-mdc-extended-fab[disabled],.mat-mdc-extended-fab.mat-mdc-button-disabled{cursor:default;pointer-events:none}.mat-mdc-extended-fab[disabled],.mat-mdc-extended-fab[disabled]:focus,.mat-mdc-extended-fab.mat-mdc-button-disabled,.mat-mdc-extended-fab.mat-mdc-button-disabled:focus{box-shadow:none}.mat-mdc-extended-fab.mat-mdc-button-disabled-interactive{pointer-events:auto}[dir=rtl] .mat-mdc-extended-fab .mdc-button__label+.mat-icon,[dir=rtl] .mat-mdc-extended-fab .mdc-button__label+.material-icons,.mat-mdc-extended-fab>.mat-icon,.mat-mdc-extended-fab>.material-icons{margin-left:-8px;margin-right:12px}.mat-mdc-extended-fab .mdc-button__label+.mat-icon,.mat-mdc-extended-fab .mdc-button__label+.material-icons,[dir=rtl] .mat-mdc-extended-fab>.mat-icon,[dir=rtl] .mat-mdc-extended-fab>.material-icons{margin-left:12px;margin-right:-8px}.mat-mdc-extended-fab .mat-mdc-button-touch-target{width:100%}
9
9
  `],encapsulation:2,changeDetection:0})}return o})();var us=(()=>{class o{static \u0275fac=function(e){return new(e||o)};static \u0275mod=I({type:o});static \u0275inj=y({imports:[L,Fo,L]})}return o})();var Pt;function Bn(){if(Pt===void 0&&(Pt=null,typeof window<"u")){let o=window;o.trustedTypes!==void 0&&(Pt=o.trustedTypes.createPolicy("angular#components",{createHTML:i=>i}))}return Pt}function ft(o){return Bn()?.createHTML(o)||o}function jo(o){return Error(`Unable to find icon with the name "${o}"`)}function Un(){return Error("Could not find HttpClient for use with Angular Material icons. Please add provideHttpClient() to your providers.")}function zo(o){return Error(`The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was "${o}".`)}function Vo(o){return Error(`The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was "${o}".`)}var P=class{url;svgText;options;svgElement;constructor(i,t,e){this.url=i,this.svgText=t,this.options=e}},Ko=(()=>{class o{_httpClient;_sanitizer;_errorHandler;_document;_svgIconConfigs=new Map;_iconSetConfigs=new Map;_cachedIconsByUrl=new Map;_inProgressUrlFetches=new Map;_fontCssClassesByAlias=new Map;_resolvers=[];_defaultFontSetClass=["material-icons","mat-ligature-font"];constructor(t,e,n,a){this._httpClient=t,this._sanitizer=e,this._errorHandler=a,this._document=n}addSvgIcon(t,e,n){return this.addSvgIconInNamespace("",t,e,n)}addSvgIconLiteral(t,e,n){return this.addSvgIconLiteralInNamespace("",t,e,n)}addSvgIconInNamespace(t,e,n,a){return this._addSvgIconConfig(t,e,new P(n,null,a))}addSvgIconResolver(t){return this._resolvers.push(t),this}addSvgIconLiteralInNamespace(t,e,n,a){let r=this._sanitizer.sanitize(Z.HTML,n);if(!r)throw Vo(n);let c=ft(r);return this._addSvgIconConfig(t,e,new P("",c,a))}addSvgIconSet(t,e){return this.addSvgIconSetInNamespace("",t,e)}addSvgIconSetLiteral(t,e){return this.addSvgIconSetLiteralInNamespace("",t,e)}addSvgIconSetInNamespace(t,e,n){return this._addSvgIconSetConfig(t,new P(e,null,n))}addSvgIconSetLiteralInNamespace(t,e,n){let a=this._sanitizer.sanitize(Z.HTML,e);if(!a)throw Vo(e);let r=ft(a);return this._addSvgIconSetConfig(t,new P("",r,n))}registerFontClassAlias(t,e=t){return this._fontCssClassesByAlias.set(t,e),this}classNameForFontAlias(t){return this._fontCssClassesByAlias.get(t)||t}setDefaultFontSetClass(...t){return this._defaultFontSetClass=t,this}getDefaultFontSetClass(){return this._defaultFontSetClass}getSvgIconFromUrl(t){let e=this._sanitizer.sanitize(Z.RESOURCE_URL,t);if(!e)throw zo(t);let n=this._cachedIconsByUrl.get(e);return n?D(Bt(n)):this._loadSvgIconFromConfig(new P(t,null)).pipe(Y(a=>this._cachedIconsByUrl.set(e,a)),C(a=>Bt(a)))}getNamedSvgIcon(t,e=""){let n=Ho(e,t),a=this._svgIconConfigs.get(n);if(a)return this._getSvgFromConfig(a);if(a=this._getIconConfigFromResolvers(e,t),a)return this._svgIconConfigs.set(n,a),this._getSvgFromConfig(a);let r=this._iconSetConfigs.get(e);return r?this._getSvgFromIconSetConfigs(t,r):ye(jo(n))}ngOnDestroy(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(t){return t.svgText?D(Bt(this._svgElementFromConfig(t))):this._loadSvgIconFromConfig(t).pipe(C(e=>Bt(e)))}_getSvgFromIconSetConfigs(t,e){let n=this._extractIconWithNameFromAnySet(t,e);if(n)return D(n);let a=e.filter(r=>!r.svgText).map(r=>this._loadSvgIconSetFromConfig(r).pipe(Ae(c=>{let h=`Loading icon set URL: ${this._sanitizer.sanitize(Z.RESOURCE_URL,r.url)} failed: ${c.message}`;return this._errorHandler.handleError(new Error(h)),D(null)})));return xe(a).pipe(C(()=>{let r=this._extractIconWithNameFromAnySet(t,e);if(!r)throw jo(t);return r}))}_extractIconWithNameFromAnySet(t,e){for(let n=e.length-1;n>=0;n--){let a=e[n];if(a.svgText&&a.svgText.toString().indexOf(t)>-1){let r=this._svgElementFromConfig(a),c=this._extractSvgIconFromSet(r,t,a.options);if(c)return c}}return null}_loadSvgIconFromConfig(t){return this._fetchIcon(t).pipe(Y(e=>t.svgText=e),C(()=>this._svgElementFromConfig(t)))}_loadSvgIconSetFromConfig(t){return t.svgText?D(null):this._fetchIcon(t).pipe(Y(e=>t.svgText=e))}_extractSvgIconFromSet(t,e,n){let a=t.querySelector(`[id="${e}"]`);if(!a)return null;let r=a.cloneNode(!0);if(r.removeAttribute("id"),r.nodeName.toLowerCase()==="svg")return this._setSvgAttributes(r,n);if(r.nodeName.toLowerCase()==="symbol")return this._setSvgAttributes(this._toSvgElement(r),n);let c=this._svgElementFromString(ft("<svg></svg>"));return c.appendChild(r),this._setSvgAttributes(c,n)}_svgElementFromString(t){let e=this._document.createElement("DIV");e.innerHTML=t;let n=e.querySelector("svg");if(!n)throw Error("<svg> tag not found");return n}_toSvgElement(t){let e=this._svgElementFromString(ft("<svg></svg>")),n=t.attributes;for(let a=0;a<n.length;a++){let{name:r,value:c}=n[a];r!=="id"&&e.setAttribute(r,c)}for(let a=0;a<t.childNodes.length;a++)t.childNodes[a].nodeType===this._document.ELEMENT_NODE&&e.appendChild(t.childNodes[a].cloneNode(!0));return e}_setSvgAttributes(t,e){return t.setAttribute("fit",""),t.setAttribute("height","100%"),t.setAttribute("width","100%"),t.setAttribute("preserveAspectRatio","xMidYMid meet"),t.setAttribute("focusable","false"),e&&e.viewBox&&t.setAttribute("viewBox",e.viewBox),t}_fetchIcon(t){let{url:e,options:n}=t,a=n?.withCredentials??!1;if(!this._httpClient)throw Un();if(e==null)throw Error(`Cannot fetch icon from URL "${e}".`);let r=this._sanitizer.sanitize(Z.RESOURCE_URL,e);if(!r)throw zo(e);let c=this._inProgressUrlFetches.get(r);if(c)return c;let u=this._httpClient.get(r,{responseType:"text",withCredentials:a}).pipe(C(h=>ft(h)),Ce(()=>this._inProgressUrlFetches.delete(r)),Me());return this._inProgressUrlFetches.set(r,u),u}_addSvgIconConfig(t,e,n){return this._svgIconConfigs.set(Ho(t,e),n),this}_addSvgIconSetConfig(t,e){let n=this._iconSetConfigs.get(t);return n?n.push(e):this._iconSetConfigs.set(t,[e]),this}_svgElementFromConfig(t){if(!t.svgElement){let e=this._svgElementFromString(t.svgText);this._setSvgAttributes(e,t.options),t.svgElement=e}return t.svgElement}_getIconConfigFromResolvers(t,e){for(let n=0;n<this._resolvers.length;n++){let a=this._resolvers[n](e,t);if(a)return jn(a)?new P(a.url,null,a.options):new P(a,null)}}static \u0275fac=function(e){return new(e||o)(et(qe,8),et(Xe),et(b,8),et(ot))};static \u0275prov=d({token:o,factory:o.\u0275fac,providedIn:"root"})}return o})();function Bt(o){return o.cloneNode(!0)}function Ho(o,i){return o+":"+i}function jn(o){return!!(o.url&&o.options)}var zn=["*"],Vn=new l("MAT_ICON_DEFAULT_OPTIONS"),Hn=new l("mat-icon-location",{providedIn:"root",factory:Kn});function Kn(){let o=s(b),i=o?o.location:null;return{getPathname:()=>i?i.pathname+i.search:""}}var Wo=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],Wn=Wo.map(o=>`[${o}]`).join(", "),$n=/^url\(['"]?#(.*?)['"]?\)$/,$o=(()=>{class o{_elementRef=s(x);_iconRegistry=s(Ko);_location=s(Hn);_errorHandler=s(ot);_defaultColor;get color(){return this._color||this._defaultColor}set color(t){this._color=t}_color;inline=!1;get svgIcon(){return this._svgIcon}set svgIcon(t){t!==this._svgIcon&&(t?this._updateSvgIcon(t):this._svgIcon&&this._clearSvgElement(),this._svgIcon=t)}_svgIcon;get fontSet(){return this._fontSet}set fontSet(t){let e=this._cleanupFontValue(t);e!==this._fontSet&&(this._fontSet=e,this._updateFontIconClasses())}_fontSet;get fontIcon(){return this._fontIcon}set fontIcon(t){let e=this._cleanupFontValue(t);e!==this._fontIcon&&(this._fontIcon=e,this._updateFontIconClasses())}_fontIcon;_previousFontSetClass=[];_previousFontIconClass;_svgName;_svgNamespace;_previousPath;_elementsWithExternalReferences;_currentIconFetch=vt.EMPTY;constructor(){let t=s(new $e("aria-hidden"),{optional:!0}),e=s(Vn,{optional:!0});e&&(e.color&&(this.color=this._defaultColor=e.color),e.fontSet&&(this.fontSet=e.fontSet)),t||this._elementRef.nativeElement.setAttribute("aria-hidden","true")}_splitIconName(t){if(!t)return["",""];let e=t.split(":");switch(e.length){case 1:return["",e[0]];case 2:return e;default:throw Error(`Invalid icon name: "${t}"`)}}ngOnInit(){this._updateFontIconClasses()}ngAfterViewChecked(){let t=this._elementsWithExternalReferences;if(t&&t.size){let e=this._location.getPathname();e!==this._previousPath&&(this._previousPath=e,this._prependPathToReferences(e))}}ngOnDestroy(){this._currentIconFetch.unsubscribe(),this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear()}_usingFontIcon(){return!this.svgIcon}_setSvgElement(t){this._clearSvgElement();let e=this._location.getPathname();this._previousPath=e,this._cacheChildrenWithExternalReferences(t),this._prependPathToReferences(e),this._elementRef.nativeElement.appendChild(t)}_clearSvgElement(){let t=this._elementRef.nativeElement,e=t.childNodes.length;for(this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear();e--;){let n=t.childNodes[e];(n.nodeType!==1||n.nodeName.toLowerCase()==="svg")&&n.remove()}}_updateFontIconClasses(){if(!this._usingFontIcon())return;let t=this._elementRef.nativeElement,e=(this.fontSet?this._iconRegistry.classNameForFontAlias(this.fontSet).split(/ +/):this._iconRegistry.getDefaultFontSetClass()).filter(n=>n.length>0);this._previousFontSetClass.forEach(n=>t.classList.remove(n)),e.forEach(n=>t.classList.add(n)),this._previousFontSetClass=e,this.fontIcon!==this._previousFontIconClass&&!e.includes("mat-ligature-font")&&(this._previousFontIconClass&&t.classList.remove(this._previousFontIconClass),this.fontIcon&&t.classList.add(this.fontIcon),this._previousFontIconClass=this.fontIcon)}_cleanupFontValue(t){return typeof t=="string"?t.trim().split(" ")[0]:t}_prependPathToReferences(t){let e=this._elementsWithExternalReferences;e&&e.forEach((n,a)=>{n.forEach(r=>{a.setAttribute(r.name,`url('${t}#${r.value}')`)})})}_cacheChildrenWithExternalReferences(t){let e=t.querySelectorAll(Wn),n=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let a=0;a<e.length;a++)Wo.forEach(r=>{let c=e[a],u=c.getAttribute(r),h=u?u.match($n):null;if(h){let p=n.get(c);p||(p=[],n.set(c,p)),p.push({name:r,value:h[1]})}})}_updateSvgIcon(t){if(this._svgNamespace=null,this._svgName=null,this._currentIconFetch.unsubscribe(),t){let[e,n]=this._splitIconName(t);e&&(this._svgNamespace=e),n&&(this._svgName=n),this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(n,e).pipe(_t(1)).subscribe(a=>this._setSvgElement(a),a=>{let r=`Error retrieving icon ${e}:${n}! ${a.message}`;this._errorHandler.handleError(new Error(r))})}}static \u0275fac=function(e){return new(e||o)};static \u0275cmp=f({type:o,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:10,hostBindings:function(e,n){e&2&&(at("data-mat-icon-type",n._usingFontIcon()?"font":"svg")("data-mat-icon-name",n._svgName||n.fontIcon)("data-mat-icon-namespace",n._svgNamespace||n.fontSet)("fontIcon",n._usingFontIcon()?n.fontIcon:null),X(n.color?"mat-"+n.color:""),w("mat-icon-inline",n.inline)("mat-icon-no-color",n.color!=="primary"&&n.color!=="accent"&&n.color!=="warn"))},inputs:{color:"color",inline:[2,"inline","inline",k],svgIcon:"svgIcon",fontSet:"fontSet",fontIcon:"fontIcon"},exportAs:["matIcon"],ngContentSelectors:zn,decls:1,vars:0,template:function(e,n){e&1&&(K(),M(0))},styles:[`mat-icon,mat-icon.mat-primary,mat-icon.mat-accent,mat-icon.mat-warn{color:var(--mat-icon-color, inherit)}.mat-icon{-webkit-user-select:none;user-select:none;background-repeat:no-repeat;display:inline-block;fill:currentColor;height:24px;width:24px;overflow:hidden}.mat-icon.mat-icon-inline{font-size:inherit;height:inherit;line-height:inherit;width:inherit}.mat-icon.mat-ligature-font[fontIcon]::before{content:attr(fontIcon)}[dir=rtl] .mat-icon-rtl-mirror{transform:scale(-1, 1)}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon{display:block}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-icon{margin:auto}
10
- `],encapsulation:2,changeDetection:0})}return o})(),Fs=(()=>{class o{static \u0275fac=function(e){return new(e||o)};static \u0275mod=I({type:o});static \u0275inj=y({imports:[L,L]})}return o})();var Go=class o{icon;title="";disabled=!1;variant="default";action=new H;onClick(){this.disabled||this.action.emit()}static \u0275fac=function(t){return new(t||o)};static \u0275cmp=f({type:o,selectors:[["ds-icon-button"]],inputs:{icon:"icon",title:"title",disabled:"disabled",variant:"variant"},outputs:{action:"action"},decls:3,vars:5,consts:[["mat-icon-button","","type","button",3,"click","disabled","title"]],template:function(t,e){t&1&&(Gt(0,"button",0),Ke("click",function(){return e.onClick()}),Gt(1,"mat-icon"),rt(2),ze()()),t&2&&(X("icon-button variant-"+e.variant),je("disabled",e.disabled)("title",e.title),O(2),st(e.icon))},dependencies:[ue,$o],styles:['@charset "UTF-8";.icon-button[_ngcontent-%COMP%]{transition:color .2s ease,background .2s ease,transform .12s ease,opacity .2s ease}.icon-button[_ngcontent-%COMP%]:hover:not(:disabled){transform:scale(1.1)}.icon-button[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(1.15)}.icon-button[_ngcontent-%COMP%]:disabled{opacity:.4;cursor:not-allowed}.icon-button.variant-default[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73)}.icon-button.variant-default[_ngcontent-%COMP%]:hover:not(:disabled){color:var(--color-primary, #007aff)}.icon-button.variant-primary[_ngcontent-%COMP%]:hover:not(:disabled), .icon-button.variant-danger[_ngcontent-%COMP%]:hover:not(:disabled){color:var(--color-text-inverse, #ffffff);box-shadow:0 4px 14px var(--icon-button-shadow-color);background:var(--icon-button-accent-color)}.icon-button.variant-primary[_ngcontent-%COMP%]{--icon-button-accent-color: var(--color-primary, #007aff);--icon-button-shadow-color: rgba(0, 122, 255, .3);color:var(--color-primary, #007aff)}.icon-button.variant-danger[_ngcontent-%COMP%]{--icon-button-accent-color: var(--color-error, #ff3b30);--icon-button-shadow-color: rgba(255, 59, 48, .3);color:var(--color-error, #ff3b30)}']})};var Yn=(o,i)=>i.id;function Zn(o,i){if(o&1&&(F(0,"span",6),rt(1),S()),o&2){let t=q().$implicit;O(),st(t.description)}}function qn(o,i){if(o&1){let t=Ve();F(0,"div",4),Yt("mousedown",function(){let n=zt(t).$implicit,a=q(2);return Vt(a.selectItem(n))})("touchstart",function(){let n=zt(t).$implicit,a=q(2);return Vt(a.selectItem(n))}),F(1,"span",5),rt(2),S(),Wt(3,Zn,2,1,"span",6),S()}if(o&2){let t=i.$implicit,e=i.$index,n=q(2);w("selected",e===n.selectedIndex),O(2),st(t.name),O(),$t(t.description?3:-1)}}function Xn(o,i){if(o&1&&(F(0,"div",2),Be(1,qn,4,4,"div",3,Yn),S()),o&2){let t=q();O(),Ue(t.items)}}var Yo=class o{dataSource;placeholder="";disabled=!1;itemSelected=new H;elementRef=s(x);destroyRef=s(ke);query$=new E;query="";items=[];showDropdown=!1;selectedIndex=-1;ngOnInit(){this.query$.pipe(G(200),gt(),De(i=>{let t=i.trim();return t?this.dataSource.search(t):D([])}),Qe(this.destroyRef)).subscribe(i=>{this.items=i,this.selectedIndex=-1,this.showDropdown=i.length>0})}onInput(i){this.query=i.target.value,this.query$.next(this.query)}onFocus(){this.items.length>0&&(this.showDropdown=!0)}onBlur(){setTimeout(()=>this.closeDropdown(),150)}onKeydown(i){if(this.showDropdown)switch(i.key){case"ArrowDown":i.preventDefault(),this.selectedIndex=Math.min(this.selectedIndex+1,this.items.length-1),this.scrollSelectedIntoView();break;case"ArrowUp":i.preventDefault(),this.selectedIndex=Math.max(this.selectedIndex-1,0),this.scrollSelectedIntoView();break;case"Tab":i.preventDefault(),i.shiftKey?this.selectedIndex<=0?this.closeDropdown():(this.selectedIndex--,this.scrollSelectedIntoView()):this.selectedIndex>=this.items.length-1?this.closeDropdown():(this.selectedIndex++,this.scrollSelectedIntoView());break;case"Enter":i.preventDefault(),this.selectedIndex>=0&&this.selectedIndex<this.items.length&&this.selectItem(this.items[this.selectedIndex]);break;case"Escape":i.preventDefault(),this.closeDropdown();break}}selectItem(i){this.itemSelected.emit(i),this.query="",this.closeDropdown()}closeDropdown(){this.showDropdown=!1,this.selectedIndex=-1,this.items=[]}scrollSelectedIntoView(){setTimeout(()=>{this.elementRef.nativeElement.querySelector(".autocomplete-dropdown")?.querySelector(".autocomplete-option.selected")?.scrollIntoView({block:"nearest"})})}static \u0275fac=function(t){return new(t||o)};static \u0275cmp=f({type:o,selectors:[["ds-autocomplete-input"]],inputs:{dataSource:"dataSource",placeholder:"placeholder",disabled:"disabled"},outputs:{itemSelected:"itemSelected"},decls:3,vars:4,consts:[[1,"autocomplete-container"],["type","text",3,"input","keydown","focus","blur","placeholder","disabled","value"],[1,"autocomplete-dropdown"],[1,"autocomplete-option",3,"selected"],[1,"autocomplete-option",3,"mousedown","touchstart"],[1,"option-name"],[1,"option-description"]],template:function(t,e){t&1&&(F(0,"div",0)(1,"input",1),Yt("input",function(a){return e.onInput(a)})("keydown",function(a){return e.onKeydown(a)})("focus",function(){return e.onFocus()})("blur",function(){return e.onBlur()}),S(),Wt(2,Xn,3,0,"div",2),S()),t&2&&(O(),He("placeholder",e.placeholder)("disabled",e.disabled)("value",e.query),O(),$t(e.showDropdown&&e.items.length>0?2:-1))},styles:['@charset "UTF-8";.autocomplete-container[_ngcontent-%COMP%]{position:relative;display:block;width:100%}.autocomplete-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{width:100%;box-sizing:border-box;padding:8px 12px;border:1px solid var(--color-border, #e0e0e0);border-radius:6px;font-size:14px;line-height:1.5;color:var(--color-text, #1d1d1f);background:var(--color-bg-surface, #ffffff);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.autocomplete-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]::placeholder{color:var(--color-text-secondary, #6e6e73)}.autocomplete-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:focus{border-color:var(--color-primary, #007aff);box-shadow:0 0 0 3px #007aff26}.autocomplete-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:disabled{opacity:.4;cursor:not-allowed}.autocomplete-dropdown[_ngcontent-%COMP%]{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:1000;background:var(--color-bg-surface, #ffffff);border:1px solid var(--color-border, #e0e0e0);border-radius:8px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;max-height:240px;overflow-y:auto;overflow-x:hidden}.autocomplete-option[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2px;padding:10px 12px;cursor:pointer;transition:background .1s ease}.autocomplete-option[_ngcontent-%COMP%]:first-child{border-radius:8px 8px 0 0}.autocomplete-option[_ngcontent-%COMP%]:last-child{border-radius:0 0 8px 8px}.autocomplete-option[_ngcontent-%COMP%]:only-child{border-radius:8px}.autocomplete-option[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover, #f5f5f5)}.autocomplete-option.selected[_ngcontent-%COMP%]{background:var(--color-bg-hover, #f5f5f5);outline:2px solid var(--color-primary, #007aff);outline-offset:-2px}.autocomplete-option[_ngcontent-%COMP%] .option-name[_ngcontent-%COMP%]{font-size:14px;font-weight:400;color:var(--color-text, #1d1d1f);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-option[_ngcontent-%COMP%] .option-description[_ngcontent-%COMP%]{font-size:12px;color:var(--color-text-secondary, #6e6e73);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}']})};export{qo as a,T as b,g as c,Q as d,Xo as e,j as f,Jt as g,N as h,Ct as i,te as j,ee as k,lo as l,bo as m,un as n,bn as o,fn as p,hn as q,go as r,ie as s,_n as t,gn as u,Na as v,ut as w,Va as x,Ha as y,Wa as z,Ga as A,Qa as B,In as C,tt as D,ir as E,rr as F,yr as G,ko as H,ue as I,On as J,pe as K,L,Fo as M,ls as N,ms as O,us as P,$o as Q,Fs as R,Go as S,Yo as T};
10
+ `],encapsulation:2,changeDetection:0})}return o})(),Fs=(()=>{class o{static \u0275fac=function(e){return new(e||o)};static \u0275mod=I({type:o});static \u0275inj=y({imports:[L,L]})}return o})();var Go=class o{icon;title="";disabled=!1;variant="default";action=new H;onClick(){this.disabled||this.action.emit()}static \u0275fac=function(t){return new(t||o)};static \u0275cmp=f({type:o,selectors:[["ds-icon-button"]],inputs:{icon:"icon",title:"title",disabled:"disabled",variant:"variant"},outputs:{action:"action"},decls:3,vars:5,consts:[["mat-icon-button","","type","button",3,"click","disabled","title"]],template:function(t,e){t&1&&(Gt(0,"button",0),Ke("click",function(){return e.onClick()}),Gt(1,"mat-icon"),rt(2),ze()()),t&2&&(X("icon-button variant-"+e.variant),je("disabled",e.disabled)("title",e.title),O(2),st(e.icon))},dependencies:[ue,$o],styles:['@charset "UTF-8";.icon-button[_ngcontent-%COMP%]{transition:color .2s ease,background .2s ease,transform .12s ease,opacity .2s ease}.icon-button[_ngcontent-%COMP%]:hover:not(:disabled){transform:scale(1.1)}.icon-button[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(1.15)}.icon-button[_ngcontent-%COMP%]:disabled{opacity:.4;cursor:not-allowed}.icon-button.variant-default[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73)}.icon-button.variant-default[_ngcontent-%COMP%]:hover:not(:disabled){color:var(--color-primary, #007aff)}.icon-button.variant-primary[_ngcontent-%COMP%]:hover:not(:disabled), .icon-button.variant-danger[_ngcontent-%COMP%]:hover:not(:disabled){color:var(--color-text-inverse, #ffffff);box-shadow:0 4px 14px var(--icon-button-shadow-color);background:var(--icon-button-accent-color)}.icon-button.variant-primary[_ngcontent-%COMP%]{--icon-button-accent-color: var(--color-primary, #007aff);--icon-button-shadow-color: rgba(0, 122, 255, .3);color:var(--color-primary, #007aff)}.icon-button.variant-danger[_ngcontent-%COMP%]{--icon-button-accent-color: var(--color-error, #ff3b30);--icon-button-shadow-color: rgba(255, 59, 48, .3);color:var(--color-error, #ff3b30)}']})};var Yn=(o,i)=>i.id;function Zn(o,i){if(o&1&&(F(0,"span",6),rt(1),S()),o&2){let t=q().$implicit;O(),st(t.description)}}function qn(o,i){if(o&1){let t=Ve();F(0,"div",4),Yt("mousedown",function(){let n=zt(t).$implicit,a=q(2);return Vt(a.selectItem(n))})("touchstart",function(){let n=zt(t).$implicit,a=q(2);return Vt(a.selectItem(n))}),F(1,"span",5),rt(2),S(),Wt(3,Zn,2,1,"span",6),S()}if(o&2){let t=i.$implicit,e=i.$index,n=q(2);w("selected",e===n.selectedIndex),O(2),st(t.name),O(),$t(t.description?3:-1)}}function Xn(o,i){if(o&1&&(F(0,"div",2),Be(1,qn,4,4,"div",3,Yn),S()),o&2){let t=q();O(),Ue(t.items)}}var Yo=class o{dataSource;placeholder="";disabled=!1;itemSelected=new H;elementRef=s(x);destroyRef=s(ke);query$=new E;query="";items=[];showDropdown=!1;selectedIndex=-1;ngOnInit(){this.query$.pipe(G(200),gt(),De(i=>{let t=i.trim();return t?this.dataSource.search(t):D([])}),Qe(this.destroyRef)).subscribe(i=>{this.items=i,this.selectedIndex=-1,this.showDropdown=i.length>0})}onInput(i){this.query=i.target.value,this.query$.next(this.query)}onFocus(){this.items.length>0&&(this.showDropdown=!0)}onBlur(){setTimeout(()=>this.closeDropdown(),150)}onKeydown(i){if(this.showDropdown)switch(i.key){case"ArrowDown":i.preventDefault(),this.selectedIndex=Math.min(this.selectedIndex+1,this.items.length-1),this.scrollSelectedIntoView();break;case"ArrowUp":i.preventDefault(),this.selectedIndex=Math.max(this.selectedIndex-1,0),this.scrollSelectedIntoView();break;case"Tab":i.preventDefault(),i.shiftKey?this.selectedIndex<=0?this.closeDropdown():(this.selectedIndex--,this.scrollSelectedIntoView()):this.selectedIndex>=this.items.length-1?this.closeDropdown():(this.selectedIndex++,this.scrollSelectedIntoView());break;case"Enter":i.preventDefault(),this.selectedIndex>=0&&this.selectedIndex<this.items.length&&this.selectItem(this.items[this.selectedIndex]);break;case"Escape":i.preventDefault(),this.closeDropdown();break}}selectItem(i){this.itemSelected.emit(i),this.query="",this.closeDropdown()}closeDropdown(){this.showDropdown=!1,this.selectedIndex=-1,this.items=[]}scrollSelectedIntoView(){setTimeout(()=>{this.elementRef.nativeElement.querySelector(".autocomplete-dropdown")?.querySelector(".autocomplete-option.selected")?.scrollIntoView({block:"nearest"})})}static \u0275fac=function(t){return new(t||o)};static \u0275cmp=f({type:o,selectors:[["ds-autocomplete-input"]],inputs:{dataSource:"dataSource",placeholder:"placeholder",disabled:"disabled"},outputs:{itemSelected:"itemSelected"},decls:3,vars:4,consts:[[1,"autocomplete-container"],["type","text",3,"input","keydown","focus","blur","placeholder","disabled","value"],[1,"autocomplete-dropdown"],[1,"autocomplete-option",3,"selected"],[1,"autocomplete-option",3,"mousedown","touchstart"],[1,"option-name"],[1,"option-description"]],template:function(t,e){t&1&&(F(0,"div",0)(1,"input",1),Yt("input",function(a){return e.onInput(a)})("keydown",function(a){return e.onKeydown(a)})("focus",function(){return e.onFocus()})("blur",function(){return e.onBlur()}),S(),Wt(2,Xn,3,0,"div",2),S()),t&2&&(O(),He("placeholder",e.placeholder)("disabled",e.disabled)("value",e.query),O(),$t(e.showDropdown&&e.items.length>0?2:-1))},styles:['@charset "UTF-8";.autocomplete-container[_ngcontent-%COMP%]{position:relative;display:block;width:100%}.autocomplete-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{width:100%;box-sizing:border-box;padding:8px 12px;border:1px solid var(--color-border, #e0e0e0);border-radius:6px;font-size:14px;line-height:1.5;color:var(--color-text, #1d1d1f);background:var(--glass-bg);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.autocomplete-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]::placeholder{color:var(--color-text-secondary, #6e6e73)}.autocomplete-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:focus{border-color:var(--color-primary, #007aff);box-shadow:0 0 0 3px #007aff26}.autocomplete-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:disabled{opacity:.4;cursor:not-allowed}.autocomplete-dropdown[_ngcontent-%COMP%]{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:1000;background:var(--glass-bg);border:1px solid var(--color-border, #e0e0e0);border-radius:8px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;max-height:240px;overflow-y:auto;overflow-x:hidden}.autocomplete-option[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2px;padding:10px 12px;cursor:pointer;transition:background .1s ease}.autocomplete-option[_ngcontent-%COMP%]:first-child{border-radius:8px 8px 0 0}.autocomplete-option[_ngcontent-%COMP%]:last-child{border-radius:0 0 8px 8px}.autocomplete-option[_ngcontent-%COMP%]:only-child{border-radius:8px}.autocomplete-option[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover, #f5f5f5)}.autocomplete-option.selected[_ngcontent-%COMP%]{background:var(--color-bg-hover, #f5f5f5);outline:2px solid var(--color-primary, #007aff);outline-offset:-2px}.autocomplete-option[_ngcontent-%COMP%] .option-name[_ngcontent-%COMP%]{font-size:14px;font-weight:400;color:var(--color-text, #1d1d1f);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-option[_ngcontent-%COMP%] .option-description[_ngcontent-%COMP%]{font-size:12px;color:var(--color-text-secondary, #6e6e73);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}']})};export{qo as a,T as b,g as c,Q as d,Xo as e,j as f,Jt as g,N as h,Ct as i,te as j,ee as k,lo as l,bo as m,un as n,bn as o,fn as p,hn as q,go as r,ie as s,_n as t,gn as u,Na as v,ut as w,Va as x,Ha as y,Wa as z,Ga as A,Qa as B,In as C,tt as D,ir as E,rr as F,yr as G,ko as H,ue as I,On as J,pe as K,L,Fo as M,ls as N,ms as O,us as P,$o as Q,Fs as R,Go as S,Yo as T};
@@ -1 +1 @@
1
- import{a}from"./chunk-3VQGOGQR.js";import"./chunk-7NSO7VDA.js";import"./chunk-UPXODNKN.js";import"./chunk-LBCXFVPY.js";import"./chunk-DYTHVKS2.js";export{a as CaseChatComponent};
1
+ import{a}from"./chunk-XIZ4I4DQ.js";import"./chunk-FXQT2NYX.js";import"./chunk-UPXODNKN.js";import"./chunk-LBCXFVPY.js";import"./chunk-DYTHVKS2.js";export{a as CaseChatComponent};
@@ -1 +1 @@
1
- import{a as A}from"./chunk-YX7RR3OI.js";import{a as h,b as M,c as O}from"./chunk-HB5BQ64I.js";import{a as y,b as P}from"./chunk-FBIWKZYZ.js";import"./chunk-TMYMW2LL.js";import{a as E}from"./chunk-GC5WCXGB.js";import{a as k}from"./chunk-3VQGOGQR.js";import{S as _}from"./chunk-7NSO7VDA.js";import"./chunk-UPXODNKN.js";import"./chunk-LBCXFVPY.js";import{Aa as p,Pa as g,Qa as b,Va as f,Wa as e,Xa as t,Ya as u,db as a,fa as m,fb as x,sa as l,tb as o,ub as C}from"./chunk-DYTHVKS2.js";var c=()=>!0;var z=[{path:"",loadComponent:()=>import("./chunk-VH2SHG5S.js").then(n=>n.AgentosShellComponent),children:[{path:"",loadComponent:()=>import("./chunk-OHWL3KSR.js").then(n=>n.LayoutComponent),children:[{path:"namespaces",canActivate:[c],loadComponent:()=>import("./chunk-KHVF3CM6.js").then(n=>n.NamespaceListComponent)},{path:":namespaceId/cases",canActivate:[c],loadComponent:()=>import("./chunk-SZ6SW4SW.js").then(n=>n.CaseListComponent)},{path:":namespaceId/cases/:caseId",canActivate:[c],loadComponent:()=>import("./chunk-BRCH24NA.js").then(n=>n.CaseChatComponent)},{path:"",redirectTo:"namespaces",pathMatch:"full"}]}]}];function S(n,s){if(n&1&&(e(0,"p",11),o(1," Last action: "),e(2,"strong"),o(3),t()()),n&2){let r=x();l(3),C(r.lastAction())}}var v=class n{lastAction=m(null);onSend(){this.lastAction.set("send")}onStop(){this.lastAction.set("stop")}onAttach(){this.lastAction.set("attach")}static \u0275fac=function(r){return new(r||n)};static \u0275cmp=p({type:n,selectors:[["agentos-hello"]],decls:35,vars:2,consts:[[1,"hello-agentos"],[1,"card"],[1,"badge"],[1,"principles"],[1,"demo"],[1,"demo-label"],[1,"demo-buttons"],["icon","send","variant","primary","title","Send",3,"action"],["icon","stop","variant","danger","title","Stop",3,"action"],["icon","attach_file","variant","default","title","Attach",3,"action"],["icon","mic","variant","default","title","Record",3,"action","disabled"],[1,"demo-feedback"]],template:function(r,i){r&1&&(e(0,"div",0)(1,"div",1)(2,"div",2),o(3,"AgentOS UI"),t(),e(4,"h1"),o(5,"Hello AgentOS"),t(),e(6,"p"),o(7," This component lives in "),e(8,"code"),o(9,"libs/agentos-ui"),t(),o(10," \u2014 isolated from Coday internals, ready to be published as "),e(11,"code"),o(12,"@whoz-oss/agentos-ui"),t(),o(13,". "),t(),u(14,"agentos-backend-status"),e(15,"ul",3)(16,"li"),o(17,"\u2726 No imports from Coday app"),t(),e(18,"li"),o(19,"\u2726 CSS custom properties as host contract"),t(),e(20,"li"),o(21,"\u2726 Standalone Angular components"),t(),e(22,"li"),o(23,"\u2726 Signals-first reactive state"),t()(),e(24,"div",4)(25,"p",5),o(26,"ds-icon-button from "),e(27,"code"),o(28,"@whoz-oss/design-system"),t()(),e(29,"div",6)(30,"ds-icon-button",7),a("action",function(){return i.onSend()}),t(),e(31,"ds-icon-button",8),a("action",function(){return i.onStop()}),t(),e(32,"ds-icon-button",9),a("action",function(){return i.onAttach()}),t(),e(33,"ds-icon-button",10),a("action",function(){return i.onAttach()}),t()(),g(34,S,4,1,"p",11),t()()()),r&2&&(l(33),f("disabled",!0),l(),b(i.lastAction()?34:-1))},dependencies:[_,h],styles:['@charset "UTF-8";.hello-agentos[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.card[_ngcontent-%COMP%]{background:var(--glass-bg, rgba(255, 255, 255, .72));border:1px solid var(--glass-border, rgba(255, 255, 255, .18));box-shadow:var(--glass-shadow, 0 8px 32px 0 rgba(31, 38, 135, .15));backdrop-filter:var(--glass-backdrop-blur, blur(20px));-webkit-backdrop-filter:var(--glass-backdrop-blur, blur(20px));border-radius:20px;padding:3rem;max-width:480px;width:100%;text-align:center}.badge[_ngcontent-%COMP%]{display:inline-block;background:var(--color-primary, #007aff);color:var(--color-text-inverse, #ffffff);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:.25rem .75rem;border-radius:100px;margin-bottom:1.5rem}h1[_ngcontent-%COMP%]{color:var(--color-text, #1d1d1f);font-size:2rem;font-weight:700;margin:0 0 1rem;letter-spacing:-.02em}p[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);line-height:1.6;margin:0 0 1.5rem}p[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:var(--color-code-bg, rgba(142, 142, 147, .12));color:var(--color-code-text, #ff375f);padding:.125rem .375rem;border-radius:6px;font-size:.875em;border:1px solid var(--color-border, rgba(0, 0, 0, .1))}.principles[_ngcontent-%COMP%]{list-style:none;margin:0 0 1.5rem;padding:0;text-align:left;display:flex;flex-direction:column;gap:.5rem}.principles[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-size:.9rem;padding:.5rem .75rem;background:var(--color-bg-hover, rgba(0, 0, 0, .04));border-radius:8px;border:1px solid var(--color-border-light, rgba(40, 40, 40, .08))}.demo[_ngcontent-%COMP%]{border-top:1px solid var(--color-border-light, rgba(40, 40, 40, .08));padding-top:1.25rem}.demo[_ngcontent-%COMP%] .demo-label[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-size:.8rem;margin:0 0 .75rem}.demo[_ngcontent-%COMP%] .demo-label[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:var(--color-code-bg, rgba(142, 142, 147, .12));color:var(--color-code-text, #ff375f);padding:.125rem .375rem;border-radius:6px;font-size:.875em;border:1px solid var(--color-border, rgba(0, 0, 0, .1))}.demo[_ngcontent-%COMP%] .demo-buttons[_ngcontent-%COMP%]{display:flex;gap:.5rem;align-items:center;justify-content:center;padding:.75rem;background:var(--color-bg-hover, rgba(0, 0, 0, .04));border-radius:12px;border:1px solid var(--color-border-light, rgba(40, 40, 40, .08))}.demo[_ngcontent-%COMP%] .demo-feedback[_ngcontent-%COMP%]{margin:.75rem 0 0;font-size:.85rem;color:var(--color-text-secondary, #6e6e73)}.demo[_ngcontent-%COMP%] .demo-feedback[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{color:var(--color-primary, #007aff)}']})};export{z as AGENTOS_ROUTES,A as AgentosShellComponent,h as BackendStatusComponent,k as CaseChatComponent,E as CaseListComponent,M as HeaderComponent,v as HelloAgentosComponent,O as LayoutComponent,y as NamespaceItemComponent,P as NamespaceListComponent,c as agentosReadyGuard};
1
+ import{a as A}from"./chunk-YX7RR3OI.js";import{a as h,b as M,c as O}from"./chunk-HB5BQ64I.js";import{a as y,b as P}from"./chunk-DWPCHLTZ.js";import"./chunk-TMYMW2LL.js";import{a as E}from"./chunk-GC5WCXGB.js";import{a as k}from"./chunk-XIZ4I4DQ.js";import{S as _}from"./chunk-FXQT2NYX.js";import"./chunk-UPXODNKN.js";import"./chunk-LBCXFVPY.js";import{Aa as p,Pa as g,Qa as b,Va as f,Wa as e,Xa as t,Ya as u,db as a,fa as m,fb as x,sa as l,tb as o,ub as C}from"./chunk-DYTHVKS2.js";var c=()=>!0;var z=[{path:"",loadComponent:()=>import("./chunk-VH2SHG5S.js").then(n=>n.AgentosShellComponent),children:[{path:"",loadComponent:()=>import("./chunk-OHWL3KSR.js").then(n=>n.LayoutComponent),children:[{path:"namespaces",canActivate:[c],loadComponent:()=>import("./chunk-AGNVVQN3.js").then(n=>n.NamespaceListComponent)},{path:":namespaceId/cases",canActivate:[c],loadComponent:()=>import("./chunk-SZ6SW4SW.js").then(n=>n.CaseListComponent)},{path:":namespaceId/cases/:caseId",canActivate:[c],loadComponent:()=>import("./chunk-GMRFL4YX.js").then(n=>n.CaseChatComponent)},{path:"",redirectTo:"namespaces",pathMatch:"full"}]}]}];function S(n,s){if(n&1&&(e(0,"p",11),o(1," Last action: "),e(2,"strong"),o(3),t()()),n&2){let r=x();l(3),C(r.lastAction())}}var v=class n{lastAction=m(null);onSend(){this.lastAction.set("send")}onStop(){this.lastAction.set("stop")}onAttach(){this.lastAction.set("attach")}static \u0275fac=function(r){return new(r||n)};static \u0275cmp=p({type:n,selectors:[["agentos-hello"]],decls:35,vars:2,consts:[[1,"hello-agentos"],[1,"card"],[1,"badge"],[1,"principles"],[1,"demo"],[1,"demo-label"],[1,"demo-buttons"],["icon","send","variant","primary","title","Send",3,"action"],["icon","stop","variant","danger","title","Stop",3,"action"],["icon","attach_file","variant","default","title","Attach",3,"action"],["icon","mic","variant","default","title","Record",3,"action","disabled"],[1,"demo-feedback"]],template:function(r,i){r&1&&(e(0,"div",0)(1,"div",1)(2,"div",2),o(3,"AgentOS UI"),t(),e(4,"h1"),o(5,"Hello AgentOS"),t(),e(6,"p"),o(7," This component lives in "),e(8,"code"),o(9,"libs/agentos-ui"),t(),o(10," \u2014 isolated from Coday internals, ready to be published as "),e(11,"code"),o(12,"@whoz-oss/agentos-ui"),t(),o(13,". "),t(),u(14,"agentos-backend-status"),e(15,"ul",3)(16,"li"),o(17,"\u2726 No imports from Coday app"),t(),e(18,"li"),o(19,"\u2726 CSS custom properties as host contract"),t(),e(20,"li"),o(21,"\u2726 Standalone Angular components"),t(),e(22,"li"),o(23,"\u2726 Signals-first reactive state"),t()(),e(24,"div",4)(25,"p",5),o(26,"ds-icon-button from "),e(27,"code"),o(28,"@whoz-oss/design-system"),t()(),e(29,"div",6)(30,"ds-icon-button",7),a("action",function(){return i.onSend()}),t(),e(31,"ds-icon-button",8),a("action",function(){return i.onStop()}),t(),e(32,"ds-icon-button",9),a("action",function(){return i.onAttach()}),t(),e(33,"ds-icon-button",10),a("action",function(){return i.onAttach()}),t()(),g(34,S,4,1,"p",11),t()()()),r&2&&(l(33),f("disabled",!0),l(),b(i.lastAction()?34:-1))},dependencies:[_,h],styles:['@charset "UTF-8";.hello-agentos[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.card[_ngcontent-%COMP%]{background:var(--glass-bg, rgba(255, 255, 255, .72));border:1px solid var(--glass-border, rgba(255, 255, 255, .18));box-shadow:var(--glass-shadow, 0 8px 32px 0 rgba(31, 38, 135, .15));backdrop-filter:var(--glass-backdrop-blur, blur(20px));-webkit-backdrop-filter:var(--glass-backdrop-blur, blur(20px));border-radius:20px;padding:3rem;max-width:480px;width:100%;text-align:center}.badge[_ngcontent-%COMP%]{display:inline-block;background:var(--color-primary, #007aff);color:var(--color-text-inverse, #ffffff);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:.25rem .75rem;border-radius:100px;margin-bottom:1.5rem}h1[_ngcontent-%COMP%]{color:var(--color-text, #1d1d1f);font-size:2rem;font-weight:700;margin:0 0 1rem;letter-spacing:-.02em}p[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);line-height:1.6;margin:0 0 1.5rem}p[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:var(--color-code-bg, rgba(142, 142, 147, .12));color:var(--color-code-text, #ff375f);padding:.125rem .375rem;border-radius:6px;font-size:.875em;border:1px solid var(--color-border, rgba(0, 0, 0, .1))}.principles[_ngcontent-%COMP%]{list-style:none;margin:0 0 1.5rem;padding:0;text-align:left;display:flex;flex-direction:column;gap:.5rem}.principles[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-size:.9rem;padding:.5rem .75rem;background:var(--color-bg-hover, rgba(0, 0, 0, .04));border-radius:8px;border:1px solid var(--color-border-light, rgba(40, 40, 40, .08))}.demo[_ngcontent-%COMP%]{border-top:1px solid var(--color-border-light, rgba(40, 40, 40, .08));padding-top:1.25rem}.demo[_ngcontent-%COMP%] .demo-label[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-size:.8rem;margin:0 0 .75rem}.demo[_ngcontent-%COMP%] .demo-label[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:var(--color-code-bg, rgba(142, 142, 147, .12));color:var(--color-code-text, #ff375f);padding:.125rem .375rem;border-radius:6px;font-size:.875em;border:1px solid var(--color-border, rgba(0, 0, 0, .1))}.demo[_ngcontent-%COMP%] .demo-buttons[_ngcontent-%COMP%]{display:flex;gap:.5rem;align-items:center;justify-content:center;padding:.75rem;background:var(--color-bg-hover, rgba(0, 0, 0, .04));border-radius:12px;border:1px solid var(--color-border-light, rgba(40, 40, 40, .08))}.demo[_ngcontent-%COMP%] .demo-feedback[_ngcontent-%COMP%]{margin:.75rem 0 0;font-size:.85rem;color:var(--color-text-secondary, #6e6e73)}.demo[_ngcontent-%COMP%] .demo-feedback[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{color:var(--color-primary, #007aff)}']})};export{z as AGENTOS_ROUTES,A as AgentosShellComponent,h as BackendStatusComponent,k as CaseChatComponent,E as CaseListComponent,M as HeaderComponent,v as HelloAgentosComponent,O as LayoutComponent,y as NamespaceItemComponent,P as NamespaceListComponent,c as agentosReadyGuard};
@@ -1 +1 @@
1
- import{S as L}from"./chunk-7NSO7VDA.js";import{a as D}from"./chunk-LBCXFVPY.js";import{Aa as M,Ia as S,Mb as V,Na as w,Nb as F,Pa as m,Qa as u,T as x,Ta as k,Ua as O,Va as E,Wa as s,X as h,Xa as l,Y as g,Ya as I,bb as b,db as f,fa as v,fb as _,jb as P,kb as R,kc as q,lb as N,nc as z,rb as T,sa as c,tb as d,ub as C}from"./chunk-DYTHVKS2.js";var A=["composerInput"],K=(n,t)=>t.kind==="message"?t.event.id:t.call.requestId;function Q(n,t){n&1&&(s(0,"div",3)(1,"p"),d(2,"No messages yet."),l()())}function j(n,t){if(n&1&&(s(0,"div",13)(1,"span",14),d(2),l(),s(3,"p",15),d(4),l()()),n&2){let e=_().$implicit,o=_(2);T("case-chat__message--user",e.event.actor.role==="USER")("case-chat__message--agent",e.event.actor.role==="AGENT"),c(2),C(e.event.actor.displayName),c(2),C(o.extractText(e.event))}}function B(n,t){n&1&&d(0," \u23F3 ")}function H(n,t){n&1&&d(0," \u2705 ")}function G(n,t){n&1&&d(0," \u274C ")}function U(n,t){if(n&1&&(s(0,"div",22)(1,"span",23),d(2,"Payload"),l(),s(3,"pre"),d(4),l()()),n&2){let e=_(3).$implicit;c(4),C(e.call.args)}}function Y(n,t){n&1&&(s(0,"pre"),d(1),l()),n&2&&(c(),C(t))}function J(n,t){n&1&&(s(0,"span",24),d(1,"Running\u2026"),l())}function Z(n,t){n&1&&(s(0,"span",25),d(1,"No output"),l())}function W(n,t){if(n&1&&(s(0,"div",21),m(1,U,5,1,"div",22),s(2,"div",22)(3,"span",23),d(4,"Output"),l(),m(5,Y,2,1,"pre")(6,J,2,0,"span",24)(7,Z,2,0,"span",25),l()()),n&2){let e,o=_(2).$implicit,i=_(2);c(),u(o.call.args?1:-1),c(4),u((e=i.extractToolOutput(o.call))?5:o.call.response?7:6,e)}}function X(n,t){if(n&1){let e=b();s(0,"div",16)(1,"button",17),f("click",function(){h(e);let i=_().$implicit,a=_(2);return g(a.toggleToolCall(i.call.requestId))}),s(2,"span",18),m(3,B,1,0)(4,H,1,0)(5,G,1,0),l(),s(6,"span",19),d(7),l(),s(8,"span",20),d(9),l()(),m(10,W,8,2,"div",21),l()}if(n&2){let e=_().$implicit,o=_(2);T("case-chat__tool-call--pending",!e.call.response)("case-chat__tool-call--success",(e.call.response==null?null:e.call.response.success)===!0)("case-chat__tool-call--error",(e.call.response==null?null:e.call.response.success)===!1),c(),w("aria-expanded",o.isToolCallExpanded(e.call.requestId)),c(2),u(e.call.response?e.call.response.success?4:5:3),c(4),C(e.call.toolName),c(2),C(o.isToolCallExpanded(e.call.requestId)?"\u25BC":"\u25B6"),c(),u(o.isToolCallExpanded(e.call.requestId)?10:-1)}}function ee(n,t){if(n&1&&m(0,j,5,6,"div",11)(1,X,11,11,"div",12),n&2){let e=t.$implicit;u(e.kind==="message"?0:1)}}function te(n,t){if(n&1&&k(0,ee,2,1,null,null,K),n&2){let e=_();O(e.timeline())}}function ne(n,t){n&1&&(s(0,"div",4),I(1,"span",26)(2,"span",26)(3,"span",26),l())}function oe(n,t){if(n&1){let e=b();s(0,"ds-icon-button",27),f("action",function(){h(e);let i=_();return g(i.interrupt())}),l()}}function ae(n,t){if(n&1){let e=b();s(0,"ds-icon-button",28),f("action",function(){h(e);let i=_();return g(i.submit())}),l()}if(n&2){let e=_();E("disabled",!e.canSend)}}var $=class n{route=x(z);http=x(q);zone=x(S);config=x(D);caseId=this.route.snapshot.params.caseId;namespaceId=this.route.snapshot.params.namespaceId;eventSource=null;composerInput;events=v([]);inputValue=v("");isRunning=v(!1);isTerminal=v(!1);collapsedTools=v(new Set);constructor(){F(()=>{this.isRunning()||this.isTerminal()||queueMicrotask(()=>this.composerInput?.nativeElement.focus())})}timeline=V(()=>{let t=this.events(),e=new Map;for(let a of t)if(a.type==="ToolRequestEvent"){let r=a,p=r.toolRequestId??a.id,y=e.get(p);e.set(p,{requestId:p,toolName:r.toolName??"unknown",args:r.args??null,response:y?.response})}else if(a.type==="ToolResponseEvent"){let r=a,p=r.toolRequestId??a.id,y=e.get(p);e.set(p,{requestId:p,toolName:y?.toolName??r.toolName??"unknown",args:y?.args??null,response:r})}let o=[],i=new Set;for(let a of t)if(a.type==="MessageEvent")o.push({kind:"message",event:a});else if(a.type==="ToolRequestEvent"||a.type==="ToolResponseEvent"){let p=a.toolRequestId??a.id;i.has(p)||(i.add(p),o.push({kind:"tool",call:e.get(p)}))}return o});get canSend(){return!!this.inputValue().trim()&&!this.isRunning()&&!this.isTerminal()}ngOnInit(){this.connectSse()}ngOnDestroy(){this.eventSource?.close()}connectSse(){let t=`${this.config.basePath}/api/cases/${this.caseId}/events`;this.eventSource=this.zone.runOutsideAngular(()=>new EventSource(t));let e=o=>{try{let i=JSON.parse(o.data);this.zone.run(()=>{if(this.events.update(a=>a.some(r=>r.id===i.id)?a:[...a,i]),i.type==="CaseStatusEvent"){let a=i.status,r=a==="KILLED"||a==="ERROR";this.isTerminal.set(r),r?(this.isRunning.set(!1),this.eventSource?.close(),this.eventSource=null):this.isRunning.set(a==="RUNNING");return}if(i.type==="AgentFinishedEvent"){this.isRunning.set(!1);return}})}catch{console.warn("[CaseChat] Failed to parse SSE event",o.data)}};this.eventSource.addEventListener("MessageEvent",e),this.eventSource.addEventListener("CaseStatusEvent",e),this.eventSource.addEventListener("AgentSelectedEvent",e),this.eventSource.addEventListener("AgentRunningEvent",e),this.eventSource.addEventListener("AgentFinishedEvent",e),this.eventSource.addEventListener("ThinkingEvent",e),this.eventSource.addEventListener("TextChunkEvent",e),this.eventSource.addEventListener("ToolRequestEvent",e),this.eventSource.addEventListener("ToolResponseEvent",e),this.eventSource.onerror=()=>{this.zone.run(()=>{this.isRunning.set(!1)})}}onInput(t){this.inputValue.set(t.target.value)}onKeydown(t){t.key==="Enter"&&!t.shiftKey&&(t.preventDefault(),this.submit())}submit(){if(!this.canSend)return;let t=this.inputValue().trim();this.inputValue.set(""),this.isRunning.set(!0),this.http.post(`${this.config.basePath}/api/cases/${this.caseId}/messages`,{content:t,userId:"default-user"}).subscribe({error:e=>{console.error("[CaseChat] Failed to send message",e),this.isRunning.set(!1)}})}interrupt(){this.http.post(`${this.config.basePath}/api/cases/${this.caseId}/interrupt`,{}).subscribe({error:t=>console.error("[CaseChat] Failed to interrupt case",t)})}kill(){this.http.post(`${this.config.basePath}/api/cases/${this.caseId}/kill`,{}).subscribe({error:t=>console.error("[CaseChat] Failed to kill case",t)})}extractText(t){return t.content?.filter(e=>"content"in e).map(e=>e.content).join("")??""}extractToolOutput(t){if(!t.response)return null;let e=t.response.output;return e?e.content??null:null}toggleToolCall(t){this.collapsedTools.update(e=>{let o=new Set(e);return o.has(t)?o.delete(t):o.add(t),o})}isToolCallExpanded(t){return this.collapsedTools().has(t)}_namespaceId=this.namespaceId;static \u0275fac=function(e){return new(e||n)};static \u0275cmp=M({type:n,selectors:[["agentos-case-chat"]],viewQuery:function(e,o){if(e&1&&P(A,5),e&2){let i;R(i=N())&&(o.composerInput=i.first)}},decls:12,vars:6,consts:[["composerInput",""],[1,"case-chat"],[1,"case-chat__messages"],[1,"case-chat__empty"],[1,"case-chat__thinking"],[1,"case-chat__composer"],["placeholder","Reply\u2026","rows","3",1,"case-chat__input",3,"input","keydown","value","disabled"],[1,"case-chat__actions"],["icon","stop","variant","danger","title","Interrupt"],["icon","send","variant","primary","title","Send (Enter)",3,"disabled"],["icon","cancel","variant","danger","title","Kill",3,"action","disabled"],[1,"case-chat__message",3,"case-chat__message--user","case-chat__message--agent"],[1,"case-chat__tool-call",3,"case-chat__tool-call--pending","case-chat__tool-call--success","case-chat__tool-call--error"],[1,"case-chat__message"],[1,"case-chat__message-author"],[1,"case-chat__message-text"],[1,"case-chat__tool-call"],["type","button",1,"case-chat__tool-call-header",3,"click"],[1,"case-chat__tool-call-icon"],[1,"case-chat__tool-call-name"],[1,"case-chat__tool-call-chevron"],[1,"case-chat__tool-call-output"],[1,"case-chat__tool-call-section"],[1,"case-chat__tool-call-label"],[1,"case-chat__tool-call-pending"],[1,"case-chat__tool-call-empty"],[1,"thinking-dot"],["icon","stop","variant","danger","title","Interrupt",3,"action"],["icon","send","variant","primary","title","Send (Enter)",3,"action","disabled"]],template:function(e,o){if(e&1){let i=b();s(0,"div",1)(1,"div",2),m(2,Q,3,0,"div",3)(3,te,2,0),m(4,ne,4,0,"div",4),l(),s(5,"div",5)(6,"textarea",6,0),f("input",function(r){return h(i),g(o.onInput(r))})("keydown",function(r){return h(i),g(o.onKeydown(r))}),l(),s(8,"div",7),m(9,oe,1,0,"ds-icon-button",8)(10,ae,1,1,"ds-icon-button",9),s(11,"ds-icon-button",10),f("action",function(){return h(i),g(o.kill())}),l()()()()}e&2&&(c(2),u(o.timeline().length===0?2:3),c(2),u(o.isRunning()?4:-1),c(2),E("value",o.inputValue())("disabled",o.isRunning()||o.isTerminal()),c(3),u(o.isRunning()?9:10),c(2),E("disabled",o.isTerminal()))},dependencies:[L],styles:['.case-chat[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;max-width:800px;margin:0 auto;padding:1.5rem;gap:1rem}.case-chat__messages[_ngcontent-%COMP%]{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;padding-bottom:.5rem}.case-chat__empty[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;flex:1}.case-chat__empty[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-size:.9rem;margin:0}.case-chat__tool-calls[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.4rem;margin-top:.25rem}.case-chat__tool-call[_ngcontent-%COMP%]{border-radius:8px;border:1px solid var(--color-border, rgba(0, 0, 0, .1));background:var(--glass-bg, rgba(255, 255, 255, .72));font-size:.8rem;overflow:hidden;transition:border-color .2s ease}.case-chat__tool-call--pending[_ngcontent-%COMP%]{border-color:var(--color-warning, #f5a623);opacity:.8}.case-chat__tool-call--success[_ngcontent-%COMP%]{border-color:var(--color-success, #34c759)}.case-chat__tool-call--error[_ngcontent-%COMP%]{border-color:var(--color-error, #ff3b30)}.case-chat__tool-call-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.4rem;width:100%;padding:.4rem .6rem;background:transparent;border:none;cursor:pointer;text-align:left;color:var(--color-text, #1d1d1f);font-family:inherit;font-size:.8rem}.case-chat__tool-call-header[_ngcontent-%COMP%]:hover{background:#0000000a}.case-chat__tool-call-icon[_ngcontent-%COMP%]{flex-shrink:0;font-size:.75rem}.case-chat__tool-call-name[_ngcontent-%COMP%]{font-weight:600;font-family:var(--font-mono, ui-monospace, "SF Mono", monospace);color:var(--color-primary, #0071e3);flex-shrink:0}.case-chat__tool-call-args[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-family:var(--font-mono, ui-monospace, "SF Mono", monospace);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.case-chat__tool-call-chevron[_ngcontent-%COMP%]{flex-shrink:0;font-size:.6rem;color:var(--color-text-secondary, #6e6e73);margin-left:auto}.case-chat__tool-call-output[_ngcontent-%COMP%]{border-top:1px solid var(--color-border, rgba(0, 0, 0, .08));display:flex;flex-direction:column}.case-chat__tool-call-section[_ngcontent-%COMP%]{padding:.4rem .6rem .5rem}.case-chat__tool-call-section[_ngcontent-%COMP%] + .case-chat__tool-call-section[_ngcontent-%COMP%]{border-top:1px solid var(--color-border, rgba(0, 0, 0, .06))}.case-chat__tool-call-section[_ngcontent-%COMP%] pre[_ngcontent-%COMP%]{margin:.25rem 0 0;white-space:pre-wrap;word-break:break-all;font-family:var(--font-mono, ui-monospace, "SF Mono", monospace);font-size:.75rem;color:var(--color-text, #1d1d1f);max-height:200px;overflow-y:auto}.case-chat__tool-call-label[_ngcontent-%COMP%]{display:block;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary, #6e6e73)}.case-chat__tool-call-pending[_ngcontent-%COMP%], .case-chat__tool-call-empty[_ngcontent-%COMP%]{display:block;margin-top:.25rem;color:var(--color-text-secondary, #6e6e73);font-style:italic;font-size:.75rem}.case-chat__thinking[_ngcontent-%COMP%]{display:flex;gap:.3rem;padding:.75rem 1rem;align-self:flex-start}.case-chat__composer[_ngcontent-%COMP%]{display:flex;align-items:flex-end;gap:.5rem;background:var(--glass-bg, rgba(255, 255, 255, .72));border:1px solid var(--glass-border, rgba(255, 255, 255, .18));backdrop-filter:var(--glass-backdrop-blur, blur(20px));-webkit-backdrop-filter:var(--glass-backdrop-blur, blur(20px));border-radius:16px;padding:.5rem .5rem .5rem 1rem}.case-chat__input[_ngcontent-%COMP%]{flex:1;resize:none;padding:.5rem 0;border:none;background:transparent;color:var(--color-text, #1d1d1f);font-size:.95rem;font-family:inherit;line-height:1.5;outline:none;min-height:40px}.case-chat__input[_ngcontent-%COMP%]::placeholder{color:var(--color-text-secondary, #6e6e73)}.case-chat__input[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:not-allowed}.case-chat__actions[_ngcontent-%COMP%]{display:flex;align-items:center;flex-shrink:0}.thinking-dot[_ngcontent-%COMP%]{width:8px;height:8px;border-radius:50%;background:var(--color-text-secondary, #6e6e73);animation:_ngcontent-%COMP%_thinking-bounce 1.2s ease-in-out infinite}.thinking-dot[_ngcontent-%COMP%]:nth-child(2){animation-delay:.2s}.thinking-dot[_ngcontent-%COMP%]:nth-child(3){animation-delay:.4s}@keyframes _ngcontent-%COMP%_thinking-bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-6px);opacity:1}}']})};export{$ as a};
1
+ import{S as L}from"./chunk-FXQT2NYX.js";import{a as D}from"./chunk-LBCXFVPY.js";import{Aa as M,Ia as S,Mb as V,Na as w,Nb as F,Pa as m,Qa as u,T as x,Ta as k,Ua as O,Va as E,Wa as s,X as h,Xa as l,Y as g,Ya as I,bb as b,db as f,fa as v,fb as _,jb as P,kb as R,kc as q,lb as N,nc as z,rb as T,sa as c,tb as d,ub as C}from"./chunk-DYTHVKS2.js";var A=["composerInput"],K=(n,t)=>t.kind==="message"?t.event.id:t.call.requestId;function Q(n,t){n&1&&(s(0,"div",3)(1,"p"),d(2,"No messages yet."),l()())}function j(n,t){if(n&1&&(s(0,"div",13)(1,"span",14),d(2),l(),s(3,"p",15),d(4),l()()),n&2){let e=_().$implicit,o=_(2);T("case-chat__message--user",e.event.actor.role==="USER")("case-chat__message--agent",e.event.actor.role==="AGENT"),c(2),C(e.event.actor.displayName),c(2),C(o.extractText(e.event))}}function B(n,t){n&1&&d(0," \u23F3 ")}function H(n,t){n&1&&d(0," \u2705 ")}function G(n,t){n&1&&d(0," \u274C ")}function U(n,t){if(n&1&&(s(0,"div",22)(1,"span",23),d(2,"Payload"),l(),s(3,"pre"),d(4),l()()),n&2){let e=_(3).$implicit;c(4),C(e.call.args)}}function Y(n,t){n&1&&(s(0,"pre"),d(1),l()),n&2&&(c(),C(t))}function J(n,t){n&1&&(s(0,"span",24),d(1,"Running\u2026"),l())}function Z(n,t){n&1&&(s(0,"span",25),d(1,"No output"),l())}function W(n,t){if(n&1&&(s(0,"div",21),m(1,U,5,1,"div",22),s(2,"div",22)(3,"span",23),d(4,"Output"),l(),m(5,Y,2,1,"pre")(6,J,2,0,"span",24)(7,Z,2,0,"span",25),l()()),n&2){let e,o=_(2).$implicit,i=_(2);c(),u(o.call.args?1:-1),c(4),u((e=i.extractToolOutput(o.call))?5:o.call.response?7:6,e)}}function X(n,t){if(n&1){let e=b();s(0,"div",16)(1,"button",17),f("click",function(){h(e);let i=_().$implicit,a=_(2);return g(a.toggleToolCall(i.call.requestId))}),s(2,"span",18),m(3,B,1,0)(4,H,1,0)(5,G,1,0),l(),s(6,"span",19),d(7),l(),s(8,"span",20),d(9),l()(),m(10,W,8,2,"div",21),l()}if(n&2){let e=_().$implicit,o=_(2);T("case-chat__tool-call--pending",!e.call.response)("case-chat__tool-call--success",(e.call.response==null?null:e.call.response.success)===!0)("case-chat__tool-call--error",(e.call.response==null?null:e.call.response.success)===!1),c(),w("aria-expanded",o.isToolCallExpanded(e.call.requestId)),c(2),u(e.call.response?e.call.response.success?4:5:3),c(4),C(e.call.toolName),c(2),C(o.isToolCallExpanded(e.call.requestId)?"\u25BC":"\u25B6"),c(),u(o.isToolCallExpanded(e.call.requestId)?10:-1)}}function ee(n,t){if(n&1&&m(0,j,5,6,"div",11)(1,X,11,11,"div",12),n&2){let e=t.$implicit;u(e.kind==="message"?0:1)}}function te(n,t){if(n&1&&k(0,ee,2,1,null,null,K),n&2){let e=_();O(e.timeline())}}function ne(n,t){n&1&&(s(0,"div",4),I(1,"span",26)(2,"span",26)(3,"span",26),l())}function oe(n,t){if(n&1){let e=b();s(0,"ds-icon-button",27),f("action",function(){h(e);let i=_();return g(i.interrupt())}),l()}}function ae(n,t){if(n&1){let e=b();s(0,"ds-icon-button",28),f("action",function(){h(e);let i=_();return g(i.submit())}),l()}if(n&2){let e=_();E("disabled",!e.canSend)}}var $=class n{route=x(z);http=x(q);zone=x(S);config=x(D);caseId=this.route.snapshot.params.caseId;namespaceId=this.route.snapshot.params.namespaceId;eventSource=null;composerInput;events=v([]);inputValue=v("");isRunning=v(!1);isTerminal=v(!1);collapsedTools=v(new Set);constructor(){F(()=>{this.isRunning()||this.isTerminal()||queueMicrotask(()=>this.composerInput?.nativeElement.focus())})}timeline=V(()=>{let t=this.events(),e=new Map;for(let a of t)if(a.type==="ToolRequestEvent"){let r=a,p=r.toolRequestId??a.id,y=e.get(p);e.set(p,{requestId:p,toolName:r.toolName??"unknown",args:r.args??null,response:y?.response})}else if(a.type==="ToolResponseEvent"){let r=a,p=r.toolRequestId??a.id,y=e.get(p);e.set(p,{requestId:p,toolName:y?.toolName??r.toolName??"unknown",args:y?.args??null,response:r})}let o=[],i=new Set;for(let a of t)if(a.type==="MessageEvent")o.push({kind:"message",event:a});else if(a.type==="ToolRequestEvent"||a.type==="ToolResponseEvent"){let p=a.toolRequestId??a.id;i.has(p)||(i.add(p),o.push({kind:"tool",call:e.get(p)}))}return o});get canSend(){return!!this.inputValue().trim()&&!this.isRunning()&&!this.isTerminal()}ngOnInit(){this.connectSse()}ngOnDestroy(){this.eventSource?.close()}connectSse(){let t=`${this.config.basePath}/api/cases/${this.caseId}/events`;this.eventSource=this.zone.runOutsideAngular(()=>new EventSource(t));let e=o=>{try{let i=JSON.parse(o.data);this.zone.run(()=>{if(this.events.update(a=>a.some(r=>r.id===i.id)?a:[...a,i]),i.type==="CaseStatusEvent"){let a=i.status,r=a==="KILLED"||a==="ERROR";this.isTerminal.set(r),r?(this.isRunning.set(!1),this.eventSource?.close(),this.eventSource=null):this.isRunning.set(a==="RUNNING");return}if(i.type==="AgentFinishedEvent"){this.isRunning.set(!1);return}})}catch{console.warn("[CaseChat] Failed to parse SSE event",o.data)}};this.eventSource.addEventListener("MessageEvent",e),this.eventSource.addEventListener("CaseStatusEvent",e),this.eventSource.addEventListener("AgentSelectedEvent",e),this.eventSource.addEventListener("AgentRunningEvent",e),this.eventSource.addEventListener("AgentFinishedEvent",e),this.eventSource.addEventListener("ThinkingEvent",e),this.eventSource.addEventListener("TextChunkEvent",e),this.eventSource.addEventListener("ToolRequestEvent",e),this.eventSource.addEventListener("ToolResponseEvent",e),this.eventSource.onerror=()=>{this.zone.run(()=>{this.isRunning.set(!1)})}}onInput(t){this.inputValue.set(t.target.value)}onKeydown(t){t.key==="Enter"&&!t.shiftKey&&(t.preventDefault(),this.submit())}submit(){if(!this.canSend)return;let t=this.inputValue().trim();this.inputValue.set(""),this.isRunning.set(!0),this.http.post(`${this.config.basePath}/api/cases/${this.caseId}/messages`,{content:t,userId:"default-user"}).subscribe({error:e=>{console.error("[CaseChat] Failed to send message",e),this.isRunning.set(!1)}})}interrupt(){this.http.post(`${this.config.basePath}/api/cases/${this.caseId}/interrupt`,{}).subscribe({error:t=>console.error("[CaseChat] Failed to interrupt case",t)})}kill(){this.http.post(`${this.config.basePath}/api/cases/${this.caseId}/kill`,{}).subscribe({error:t=>console.error("[CaseChat] Failed to kill case",t)})}extractText(t){return t.content?.filter(e=>"content"in e).map(e=>e.content).join("")??""}extractToolOutput(t){if(!t.response)return null;let e=t.response.output;return e?e.content??null:null}toggleToolCall(t){this.collapsedTools.update(e=>{let o=new Set(e);return o.has(t)?o.delete(t):o.add(t),o})}isToolCallExpanded(t){return this.collapsedTools().has(t)}_namespaceId=this.namespaceId;static \u0275fac=function(e){return new(e||n)};static \u0275cmp=M({type:n,selectors:[["agentos-case-chat"]],viewQuery:function(e,o){if(e&1&&P(A,5),e&2){let i;R(i=N())&&(o.composerInput=i.first)}},decls:12,vars:6,consts:[["composerInput",""],[1,"case-chat"],[1,"case-chat__messages"],[1,"case-chat__empty"],[1,"case-chat__thinking"],[1,"case-chat__composer"],["placeholder","Reply\u2026","rows","3",1,"case-chat__input",3,"input","keydown","value","disabled"],[1,"case-chat__actions"],["icon","stop","variant","danger","title","Interrupt"],["icon","send","variant","primary","title","Send (Enter)",3,"disabled"],["icon","cancel","variant","danger","title","Kill",3,"action","disabled"],[1,"case-chat__message",3,"case-chat__message--user","case-chat__message--agent"],[1,"case-chat__tool-call",3,"case-chat__tool-call--pending","case-chat__tool-call--success","case-chat__tool-call--error"],[1,"case-chat__message"],[1,"case-chat__message-author"],[1,"case-chat__message-text"],[1,"case-chat__tool-call"],["type","button",1,"case-chat__tool-call-header",3,"click"],[1,"case-chat__tool-call-icon"],[1,"case-chat__tool-call-name"],[1,"case-chat__tool-call-chevron"],[1,"case-chat__tool-call-output"],[1,"case-chat__tool-call-section"],[1,"case-chat__tool-call-label"],[1,"case-chat__tool-call-pending"],[1,"case-chat__tool-call-empty"],[1,"thinking-dot"],["icon","stop","variant","danger","title","Interrupt",3,"action"],["icon","send","variant","primary","title","Send (Enter)",3,"action","disabled"]],template:function(e,o){if(e&1){let i=b();s(0,"div",1)(1,"div",2),m(2,Q,3,0,"div",3)(3,te,2,0),m(4,ne,4,0,"div",4),l(),s(5,"div",5)(6,"textarea",6,0),f("input",function(r){return h(i),g(o.onInput(r))})("keydown",function(r){return h(i),g(o.onKeydown(r))}),l(),s(8,"div",7),m(9,oe,1,0,"ds-icon-button",8)(10,ae,1,1,"ds-icon-button",9),s(11,"ds-icon-button",10),f("action",function(){return h(i),g(o.kill())}),l()()()()}e&2&&(c(2),u(o.timeline().length===0?2:3),c(2),u(o.isRunning()?4:-1),c(2),E("value",o.inputValue())("disabled",o.isRunning()||o.isTerminal()),c(3),u(o.isRunning()?9:10),c(2),E("disabled",o.isTerminal()))},dependencies:[L],styles:['.case-chat[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;max-width:800px;margin:0 auto;padding:1.5rem;gap:1rem}.case-chat__messages[_ngcontent-%COMP%]{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;padding-bottom:.5rem}.case-chat__empty[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;flex:1}.case-chat__empty[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-size:.9rem;margin:0}.case-chat__tool-calls[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.4rem;margin-top:.25rem}.case-chat__tool-call[_ngcontent-%COMP%]{border-radius:8px;border:1px solid var(--color-border, rgba(0, 0, 0, .1));background:var(--glass-bg, rgba(255, 255, 255, .72));font-size:.8rem;overflow:hidden;transition:border-color .2s ease}.case-chat__tool-call--pending[_ngcontent-%COMP%]{border-color:var(--color-warning, #f5a623);opacity:.8}.case-chat__tool-call--success[_ngcontent-%COMP%]{border-color:var(--color-success, #34c759)}.case-chat__tool-call--error[_ngcontent-%COMP%]{border-color:var(--color-error, #ff3b30)}.case-chat__tool-call-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.4rem;width:100%;padding:.4rem .6rem;background:transparent;border:none;cursor:pointer;text-align:left;color:var(--color-text, #1d1d1f);font-family:inherit;font-size:.8rem}.case-chat__tool-call-header[_ngcontent-%COMP%]:hover{background:#0000000a}.case-chat__tool-call-icon[_ngcontent-%COMP%]{flex-shrink:0;font-size:.75rem}.case-chat__tool-call-name[_ngcontent-%COMP%]{font-weight:600;font-family:var(--font-mono, ui-monospace, "SF Mono", monospace);color:var(--color-primary, #0071e3);flex-shrink:0}.case-chat__tool-call-args[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-family:var(--font-mono, ui-monospace, "SF Mono", monospace);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.case-chat__tool-call-chevron[_ngcontent-%COMP%]{flex-shrink:0;font-size:.6rem;color:var(--color-text-secondary, #6e6e73);margin-left:auto}.case-chat__tool-call-output[_ngcontent-%COMP%]{border-top:1px solid var(--color-border, rgba(0, 0, 0, .08));display:flex;flex-direction:column}.case-chat__tool-call-section[_ngcontent-%COMP%]{padding:.4rem .6rem .5rem}.case-chat__tool-call-section[_ngcontent-%COMP%] + .case-chat__tool-call-section[_ngcontent-%COMP%]{border-top:1px solid var(--color-border, rgba(0, 0, 0, .06))}.case-chat__tool-call-section[_ngcontent-%COMP%] pre[_ngcontent-%COMP%]{margin:.25rem 0 0;white-space:pre-wrap;word-break:break-all;font-family:var(--font-mono, ui-monospace, "SF Mono", monospace);font-size:.75rem;color:var(--color-text, #1d1d1f);max-height:200px;overflow-y:auto}.case-chat__tool-call-label[_ngcontent-%COMP%]{display:block;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary, #6e6e73)}.case-chat__tool-call-pending[_ngcontent-%COMP%], .case-chat__tool-call-empty[_ngcontent-%COMP%]{display:block;margin-top:.25rem;color:var(--color-text-secondary, #6e6e73);font-style:italic;font-size:.75rem}.case-chat__thinking[_ngcontent-%COMP%]{display:flex;gap:.3rem;padding:.75rem 1rem;align-self:flex-start}.case-chat__composer[_ngcontent-%COMP%]{display:flex;align-items:flex-end;gap:.5rem;background:var(--glass-bg, rgba(255, 255, 255, .72));border:1px solid var(--glass-border, rgba(255, 255, 255, .18));backdrop-filter:var(--glass-backdrop-blur, blur(20px));-webkit-backdrop-filter:var(--glass-backdrop-blur, blur(20px));border-radius:16px;padding:.5rem .5rem .5rem 1rem}.case-chat__input[_ngcontent-%COMP%]{flex:1;resize:none;padding:.5rem 0;border:none;background:transparent;color:var(--color-text, #1d1d1f);font-size:.95rem;font-family:inherit;line-height:1.5;outline:none;min-height:40px}.case-chat__input[_ngcontent-%COMP%]::placeholder{color:var(--color-text-secondary, #6e6e73)}.case-chat__input[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:not-allowed}.case-chat__actions[_ngcontent-%COMP%]{display:flex;align-items:center;flex-shrink:0}.thinking-dot[_ngcontent-%COMP%]{width:8px;height:8px;border-radius:50%;background:var(--color-text-secondary, #6e6e73);animation:_ngcontent-%COMP%_thinking-bounce 1.2s ease-in-out infinite}.thinking-dot[_ngcontent-%COMP%]:nth-child(2){animation-delay:.2s}.thinking-dot[_ngcontent-%COMP%]:nth-child(3){animation-delay:.4s}@keyframes _ngcontent-%COMP%_thinking-bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-6px);opacity:1}}']})};export{$ as a};
@@ -10,8 +10,8 @@
10
10
  <base href="/">
11
11
  <meta name="viewport" content="width=device-width, initial-scale=1">
12
12
  <link rel="icon" type="image/x-icon" href="CODAY-Logo.png">
13
- <style>:root{--color-bg:linear-gradient(135deg, #fafbfc 0%, #f5f6f8 100%);--color-bg-solid:#fafbfc;--color-bg-secondary:rgba(255, 255, 255, .7);--color-bg-secondary-rgb:255 255 255;--color-text:#1d1d1f;--color-text-secondary:#6e6e73;--color-text-inverse:#ffffff;--color-primary:#007aff;--color-primary-hover:#0051d5;--color-accent:#8b5cf6;--color-link:#007aff;--color-border:rgba(0, 0, 0, .1);--color-border-light:rgba(40, 40, 40, .08);--color-input-bg:rgba(255, 255, 255, .8);--color-success:#34c759;--color-error:#ff3b30;--color-warning:#ff9500;--color-info:#5ac8fa;--color-message-user:rgba(0, 122, 255, .1);--color-message-ai:rgba(255, 255, 255, .8);--color-code-bg:rgba(142, 142, 147, .12);--color-code-text:#ff375f;--color-bg-hover:rgba(0, 0, 0, .04);--glass-bg:rgba(255, 255, 255, .72);--glass-border:rgba(255, 255, 255, .18);--glass-shadow:0 8px 32px 0 rgba(31, 38, 135, .15);--glass-backdrop-blur:blur(20px);--color-shadow:rgba(0, 0, 0, .08);--color-overlay:rgba(0, 0, 0, .4)}@media print{html,body,app-root{height:auto!important;max-height:none!important;min-height:auto!important;overflow:visible!important;position:static!important}body{background:#fff!important;color:#000!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;font-size:11pt;line-height:1.6;padding:1rem!important}*{animation:none!important;transition:none!important;box-shadow:none!important;text-shadow:none!important}}*{box-sizing:border-box}html{color-scheme:light;--mat-sys-background:light-dark(#faf9fd, #121316);--mat-sys-error:light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container:light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface:light-dark(#f2f0f4, #2f3033);--mat-sys-inverse-primary:light-dark(#abc7ff, #005cbb);--mat-sys-inverse-surface:light-dark(#2f3033, #e3e2e6);--mat-sys-on-background:light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-error:light-dark(#ffffff, #690005);--mat-sys-on-error-container:light-dark(#93000a, #ffdad6);--mat-sys-on-primary:light-dark(#ffffff, #002f65);--mat-sys-on-primary-container:light-dark(#00458f, #d7e3ff);--mat-sys-on-primary-fixed:light-dark(#001b3f, #001b3f);--mat-sys-on-primary-fixed-variant:light-dark(#00458f, #00458f);--mat-sys-on-secondary:light-dark(#ffffff, #283041);--mat-sys-on-secondary-container:light-dark(#3e4759, #dae2f9);--mat-sys-on-secondary-fixed:light-dark(#131c2b, #131c2b);--mat-sys-on-secondary-fixed-variant:light-dark(#3e4759, #3e4759);--mat-sys-on-surface:light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-surface-variant:light-dark(#44474e, #e0e2ec);--mat-sys-on-tertiary:light-dark(#ffffff, #002f65);--mat-sys-on-tertiary-container:light-dark(#00458f, #d7e3ff);--mat-sys-on-tertiary-fixed:light-dark(#001b3f, #001b3f);--mat-sys-on-tertiary-fixed-variant:light-dark(#00458f, #00458f);--mat-sys-outline:light-dark(#74777f, #8e9099);--mat-sys-outline-variant:light-dark(#c4c6d0, #44474e);--mat-sys-primary:light-dark(#005cbb, #abc7ff);--mat-sys-primary-container:light-dark(#d7e3ff, #00458f);--mat-sys-primary-fixed:light-dark(#d7e3ff, #d7e3ff);--mat-sys-primary-fixed-dim:light-dark(#abc7ff, #abc7ff);--mat-sys-scrim:light-dark(#000000, #000000);--mat-sys-secondary:light-dark(#565e71, #bec6dc);--mat-sys-secondary-container:light-dark(#dae2f9, #3e4759);--mat-sys-secondary-fixed:light-dark(#dae2f9, #dae2f9);--mat-sys-secondary-fixed-dim:light-dark(#bec6dc, #bec6dc);--mat-sys-shadow:light-dark(#000000, #000000);--mat-sys-surface:light-dark(#faf9fd, #121316);--mat-sys-surface-bright:light-dark(#faf9fd, #38393c);--mat-sys-surface-container:light-dark(#efedf0, #1f2022);--mat-sys-surface-container-high:light-dark(#e9e7eb, #292a2c);--mat-sys-surface-container-highest:light-dark(#e3e2e6, #343537);--mat-sys-surface-container-low:light-dark(#f4f3f6, #1a1b1f);--mat-sys-surface-container-lowest:light-dark(#ffffff, #0d0e11);--mat-sys-surface-dim:light-dark(#dbd9dd, #121316);--mat-sys-surface-tint:light-dark(#005cbb, #abc7ff);--mat-sys-surface-variant:light-dark(#e0e2ec, #44474e);--mat-sys-tertiary:light-dark(#005cbb, #abc7ff);--mat-sys-tertiary-container:light-dark(#d7e3ff, #00458f);--mat-sys-tertiary-fixed:light-dark(#d7e3ff, #d7e3ff);--mat-sys-tertiary-fixed-dim:light-dark(#abc7ff, #abc7ff);--mat-sys-neutral-variant20:#2d3038;--mat-sys-neutral10:#1a1b1f;--mat-sys-level0:0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1:0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2:0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3:0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4:0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5:0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large:400 1rem / 1.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-large-line-height:1.5rem;--mat-sys-body-large-size:1rem;--mat-sys-body-large-tracking:.031rem;--mat-sys-body-large-weight:400;--mat-sys-body-medium:400 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-medium-line-height:1.25rem;--mat-sys-body-medium-size:.875rem;--mat-sys-body-medium-tracking:.016rem;--mat-sys-body-medium-weight:400;--mat-sys-body-small:400 .75rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-small-line-height:1rem;--mat-sys-body-small-size:.75rem;--mat-sys-body-small-tracking:.025rem;--mat-sys-body-small-weight:400;--mat-sys-display-large:400 3.562rem / 4rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-large-line-height:4rem;--mat-sys-display-large-size:3.562rem;--mat-sys-display-large-tracking:-.016rem;--mat-sys-display-large-weight:400;--mat-sys-display-medium:400 2.812rem / 3.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-medium-line-height:3.25rem;--mat-sys-display-medium-size:2.812rem;--mat-sys-display-medium-tracking:0;--mat-sys-display-medium-weight:400;--mat-sys-display-small:400 2.25rem / 2.75rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-small-line-height:2.75rem;--mat-sys-display-small-size:2.25rem;--mat-sys-display-small-tracking:0;--mat-sys-display-small-weight:400;--mat-sys-headline-large:400 2rem / 2.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-large-line-height:2.5rem;--mat-sys-headline-large-size:2rem;--mat-sys-headline-large-tracking:0;--mat-sys-headline-large-weight:400;--mat-sys-headline-medium:400 1.75rem / 2.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-medium-line-height:2.25rem;--mat-sys-headline-medium-size:1.75rem;--mat-sys-headline-medium-tracking:0;--mat-sys-headline-medium-weight:400;--mat-sys-headline-small:400 1.5rem / 2rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-small-line-height:2rem;--mat-sys-headline-small-size:1.5rem;--mat-sys-headline-small-tracking:0;--mat-sys-headline-small-weight:400;--mat-sys-label-large:500 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-large-line-height:1.25rem;--mat-sys-label-large-size:.875rem;--mat-sys-label-large-tracking:.006rem;--mat-sys-label-large-weight:500;--mat-sys-label-large-weight-prominent:700;--mat-sys-label-medium:500 .75rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-medium-line-height:1rem;--mat-sys-label-medium-size:.75rem;--mat-sys-label-medium-tracking:.031rem;--mat-sys-label-medium-weight:500;--mat-sys-label-medium-weight-prominent:700;--mat-sys-label-small:500 .688rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-small-line-height:1rem;--mat-sys-label-small-size:.688rem;--mat-sys-label-small-tracking:.031rem;--mat-sys-label-small-weight:500;--mat-sys-title-large:400 1.375rem / 1.75rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-large-line-height:1.75rem;--mat-sys-title-large-size:1.375rem;--mat-sys-title-large-tracking:0;--mat-sys-title-large-weight:400;--mat-sys-title-medium:500 1rem / 1.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-medium-line-height:1.5rem;--mat-sys-title-medium-size:1rem;--mat-sys-title-medium-tracking:.009rem;--mat-sys-title-medium-weight:500;--mat-sys-title-small:500 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-small-line-height:1.25rem;--mat-sys-title-small-size:.875rem;--mat-sys-title-small-tracking:.006rem;--mat-sys-title-small-weight:500;--mat-sys-corner-extra-large:28px;--mat-sys-corner-extra-large-top:28px 28px 0 0;--mat-sys-corner-extra-small:4px;--mat-sys-corner-extra-small-top:4px 4px 0 0;--mat-sys-corner-full:9999px;--mat-sys-corner-large:16px;--mat-sys-corner-large-end:0 16px 16px 0;--mat-sys-corner-large-start:16px 0 0 16px;--mat-sys-corner-large-top:16px 16px 0 0;--mat-sys-corner-medium:12px;--mat-sys-corner-none:0;--mat-sys-corner-small:8px;--mat-sys-dragged-state-layer-opacity:.16;--mat-sys-focus-state-layer-opacity:.12;--mat-sys-hover-state-layer-opacity:.08;--mat-sys-pressed-state-layer-opacity:.12;--mat-snack-bar-container-shape:transparent;--mat-snack-bar-container-color:transparent;--mat-snack-bar-supporting-text-color:var(--color-text)}html,body{margin:0;padding:0;width:100%;height:100%}body{background:var(--color-bg);color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Helvetica Neue,Arial,sans-serif;transition:background .3s ease,color .3s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}</style><link rel="stylesheet" href="styles-I3V5BO4R.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-I3V5BO4R.css"></noscript></head>
13
+ <style>:root{--color-bg:linear-gradient(135deg, #fafbfc 0%, #f5f6f8 100%);--color-bg-solid:#fafbfc;--color-bg-secondary:rgba(255, 255, 255, .7);--color-bg-secondary-rgb:255 255 255;--color-text:#1d1d1f;--color-text-secondary:#6e6e73;--color-text-inverse:#ffffff;--color-primary:#007aff;--color-primary-hover:#0051d5;--color-accent:#8b5cf6;--color-link:#007aff;--color-border:rgba(0, 0, 0, .1);--color-border-light:rgba(40, 40, 40, .08);--color-input-bg:rgba(255, 255, 255, .8);--color-success:#34c759;--color-error:#ff3b30;--color-warning:#ff9500;--color-info:#5ac8fa;--color-message-user:rgba(0, 122, 255, .1);--color-message-ai:rgba(255, 255, 255, .8);--color-code-bg:rgba(142, 142, 147, .12);--color-code-text:#ff375f;--color-bg-hover:rgba(0, 0, 0, .04);--glass-bg:rgba(255, 255, 255, .72);--glass-border:rgba(255, 255, 255, .18);--glass-shadow:0 8px 32px 0 rgba(31, 38, 135, .15);--glass-backdrop-blur:blur(20px);--color-shadow:rgba(0, 0, 0, .08);--color-overlay:rgba(0, 0, 0, .4)}@media print{html,body,app-root{height:auto!important;max-height:none!important;min-height:auto!important;overflow:visible!important;position:static!important}body{background:#fff!important;color:#000!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;font-size:11pt;line-height:1.6;padding:1rem!important}*{animation:none!important;transition:none!important;box-shadow:none!important;text-shadow:none!important}}*{box-sizing:border-box}html{color-scheme:light;--mat-sys-background:light-dark(#faf9fd, #121316);--mat-sys-error:light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container:light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface:light-dark(#f2f0f4, #2f3033);--mat-sys-inverse-primary:light-dark(#abc7ff, #005cbb);--mat-sys-inverse-surface:light-dark(#2f3033, #e3e2e6);--mat-sys-on-background:light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-error:light-dark(#ffffff, #690005);--mat-sys-on-error-container:light-dark(#93000a, #ffdad6);--mat-sys-on-primary:light-dark(#ffffff, #002f65);--mat-sys-on-primary-container:light-dark(#00458f, #d7e3ff);--mat-sys-on-primary-fixed:light-dark(#001b3f, #001b3f);--mat-sys-on-primary-fixed-variant:light-dark(#00458f, #00458f);--mat-sys-on-secondary:light-dark(#ffffff, #283041);--mat-sys-on-secondary-container:light-dark(#3e4759, #dae2f9);--mat-sys-on-secondary-fixed:light-dark(#131c2b, #131c2b);--mat-sys-on-secondary-fixed-variant:light-dark(#3e4759, #3e4759);--mat-sys-on-surface:light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-surface-variant:light-dark(#44474e, #e0e2ec);--mat-sys-on-tertiary:light-dark(#ffffff, #002f65);--mat-sys-on-tertiary-container:light-dark(#00458f, #d7e3ff);--mat-sys-on-tertiary-fixed:light-dark(#001b3f, #001b3f);--mat-sys-on-tertiary-fixed-variant:light-dark(#00458f, #00458f);--mat-sys-outline:light-dark(#74777f, #8e9099);--mat-sys-outline-variant:light-dark(#c4c6d0, #44474e);--mat-sys-primary:light-dark(#005cbb, #abc7ff);--mat-sys-primary-container:light-dark(#d7e3ff, #00458f);--mat-sys-primary-fixed:light-dark(#d7e3ff, #d7e3ff);--mat-sys-primary-fixed-dim:light-dark(#abc7ff, #abc7ff);--mat-sys-scrim:light-dark(#000000, #000000);--mat-sys-secondary:light-dark(#565e71, #bec6dc);--mat-sys-secondary-container:light-dark(#dae2f9, #3e4759);--mat-sys-secondary-fixed:light-dark(#dae2f9, #dae2f9);--mat-sys-secondary-fixed-dim:light-dark(#bec6dc, #bec6dc);--mat-sys-shadow:light-dark(#000000, #000000);--mat-sys-surface:light-dark(#faf9fd, #121316);--mat-sys-surface-bright:light-dark(#faf9fd, #38393c);--mat-sys-surface-container:light-dark(#efedf0, #1f2022);--mat-sys-surface-container-high:light-dark(#e9e7eb, #292a2c);--mat-sys-surface-container-highest:light-dark(#e3e2e6, #343537);--mat-sys-surface-container-low:light-dark(#f4f3f6, #1a1b1f);--mat-sys-surface-container-lowest:light-dark(#ffffff, #0d0e11);--mat-sys-surface-dim:light-dark(#dbd9dd, #121316);--mat-sys-surface-tint:light-dark(#005cbb, #abc7ff);--mat-sys-surface-variant:light-dark(#e0e2ec, #44474e);--mat-sys-tertiary:light-dark(#005cbb, #abc7ff);--mat-sys-tertiary-container:light-dark(#d7e3ff, #00458f);--mat-sys-tertiary-fixed:light-dark(#d7e3ff, #d7e3ff);--mat-sys-tertiary-fixed-dim:light-dark(#abc7ff, #abc7ff);--mat-sys-neutral-variant20:#2d3038;--mat-sys-neutral10:#1a1b1f;--mat-sys-level0:0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1:0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2:0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3:0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4:0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5:0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large:400 1rem / 1.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-large-line-height:1.5rem;--mat-sys-body-large-size:1rem;--mat-sys-body-large-tracking:.031rem;--mat-sys-body-large-weight:400;--mat-sys-body-medium:400 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-medium-line-height:1.25rem;--mat-sys-body-medium-size:.875rem;--mat-sys-body-medium-tracking:.016rem;--mat-sys-body-medium-weight:400;--mat-sys-body-small:400 .75rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-small-line-height:1rem;--mat-sys-body-small-size:.75rem;--mat-sys-body-small-tracking:.025rem;--mat-sys-body-small-weight:400;--mat-sys-display-large:400 3.562rem / 4rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-large-line-height:4rem;--mat-sys-display-large-size:3.562rem;--mat-sys-display-large-tracking:-.016rem;--mat-sys-display-large-weight:400;--mat-sys-display-medium:400 2.812rem / 3.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-medium-line-height:3.25rem;--mat-sys-display-medium-size:2.812rem;--mat-sys-display-medium-tracking:0;--mat-sys-display-medium-weight:400;--mat-sys-display-small:400 2.25rem / 2.75rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-small-line-height:2.75rem;--mat-sys-display-small-size:2.25rem;--mat-sys-display-small-tracking:0;--mat-sys-display-small-weight:400;--mat-sys-headline-large:400 2rem / 2.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-large-line-height:2.5rem;--mat-sys-headline-large-size:2rem;--mat-sys-headline-large-tracking:0;--mat-sys-headline-large-weight:400;--mat-sys-headline-medium:400 1.75rem / 2.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-medium-line-height:2.25rem;--mat-sys-headline-medium-size:1.75rem;--mat-sys-headline-medium-tracking:0;--mat-sys-headline-medium-weight:400;--mat-sys-headline-small:400 1.5rem / 2rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-small-line-height:2rem;--mat-sys-headline-small-size:1.5rem;--mat-sys-headline-small-tracking:0;--mat-sys-headline-small-weight:400;--mat-sys-label-large:500 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-large-line-height:1.25rem;--mat-sys-label-large-size:.875rem;--mat-sys-label-large-tracking:.006rem;--mat-sys-label-large-weight:500;--mat-sys-label-large-weight-prominent:700;--mat-sys-label-medium:500 .75rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-medium-line-height:1rem;--mat-sys-label-medium-size:.75rem;--mat-sys-label-medium-tracking:.031rem;--mat-sys-label-medium-weight:500;--mat-sys-label-medium-weight-prominent:700;--mat-sys-label-small:500 .688rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-small-line-height:1rem;--mat-sys-label-small-size:.688rem;--mat-sys-label-small-tracking:.031rem;--mat-sys-label-small-weight:500;--mat-sys-title-large:400 1.375rem / 1.75rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-large-line-height:1.75rem;--mat-sys-title-large-size:1.375rem;--mat-sys-title-large-tracking:0;--mat-sys-title-large-weight:400;--mat-sys-title-medium:500 1rem / 1.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-medium-line-height:1.5rem;--mat-sys-title-medium-size:1rem;--mat-sys-title-medium-tracking:.009rem;--mat-sys-title-medium-weight:500;--mat-sys-title-small:500 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-small-line-height:1.25rem;--mat-sys-title-small-size:.875rem;--mat-sys-title-small-tracking:.006rem;--mat-sys-title-small-weight:500;--mat-sys-corner-extra-large:28px;--mat-sys-corner-extra-large-top:28px 28px 0 0;--mat-sys-corner-extra-small:4px;--mat-sys-corner-extra-small-top:4px 4px 0 0;--mat-sys-corner-full:9999px;--mat-sys-corner-large:16px;--mat-sys-corner-large-end:0 16px 16px 0;--mat-sys-corner-large-start:16px 0 0 16px;--mat-sys-corner-large-top:16px 16px 0 0;--mat-sys-corner-medium:12px;--mat-sys-corner-none:0;--mat-sys-corner-small:8px;--mat-sys-dragged-state-layer-opacity:.16;--mat-sys-focus-state-layer-opacity:.12;--mat-sys-hover-state-layer-opacity:.08;--mat-sys-pressed-state-layer-opacity:.12;--mat-snack-bar-container-shape:transparent;--mat-snack-bar-container-color:transparent;--mat-snack-bar-supporting-text-color:var(--color-text)}html,body{margin:0;padding:0;width:100%;height:100%}body{background:var(--color-bg);color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Helvetica Neue,Arial,sans-serif;transition:background .3s ease,color .3s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:0!important}</style><link rel="stylesheet" href="styles-PNPFZS3U.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-PNPFZS3U.css"></noscript></head>
14
14
  <body>
15
15
  <app-root></app-root>
16
- <link rel="modulepreload" href="chunk-6ZVZINLP.js"><link rel="modulepreload" href="chunk-TMYMW2LL.js"><link rel="modulepreload" href="chunk-7NSO7VDA.js"><link rel="modulepreload" href="chunk-UPXODNKN.js"><link rel="modulepreload" href="chunk-LBCXFVPY.js"><link rel="modulepreload" href="chunk-DYTHVKS2.js"><script src="polyfills-7R4CRVNH.js" type="module"></script><script src="main-OAMWEDXH.js" type="module"></script></body>
16
+ <link rel="modulepreload" href="chunk-6ZVZINLP.js"><link rel="modulepreload" href="chunk-TMYMW2LL.js"><link rel="modulepreload" href="chunk-FXQT2NYX.js"><link rel="modulepreload" href="chunk-UPXODNKN.js"><link rel="modulepreload" href="chunk-LBCXFVPY.js"><link rel="modulepreload" href="chunk-DYTHVKS2.js"><script src="polyfills-7R4CRVNH.js" type="module"></script><script src="main-FA5NLL7H.js" type="module"></script></body>
17
17
  </html>