@whoz-oss/coday-client 0.125.1 → 0.125.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser/{chunk-CRBPOP52.js → chunk-2GTCISR4.js} +1 -1
- package/browser/{chunk-TLXAJ2J2.js → chunk-7QZZJ3DG.js} +1 -1
- package/browser/{chunk-HTG2SANG.js → chunk-AVSWQR2Q.js} +1 -1
- package/browser/{chunk-FOWPCPU3.js → chunk-CP2BIFCA.js} +1 -1
- package/browser/{chunk-H5JE6Y2U.js → chunk-E6KB6VWH.js} +1 -1
- package/browser/{chunk-SHHNG775.js → chunk-EAGBL5PQ.js} +1 -1
- package/browser/{chunk-4VZIFCB6.js → chunk-EUTBCAQW.js} +1 -1
- package/browser/{chunk-UDGUWWGZ.js → chunk-I7DZEVJV.js} +1 -1
- package/browser/{chunk-Q3YY3NFM.js → chunk-J37E3F3X.js} +1 -1
- package/browser/{chunk-XQ4PJULE.js → chunk-J76ELV3B.js} +1 -1
- package/browser/{chunk-SZNIOJIK.js → chunk-LI36MCDZ.js} +1 -1
- package/browser/{chunk-PQVFRCVP.js → chunk-MFKNL6GY.js} +1 -1
- package/browser/{chunk-VOCIDXAB.js → chunk-MSXCVNKO.js} +1 -1
- package/browser/{chunk-J44N4WCW.js → chunk-NUTSPDGN.js} +1 -1
- package/browser/{chunk-JFRMX4TL.js → chunk-OHZKVDVY.js} +1 -1
- package/browser/{chunk-H6OBD3IB.js → chunk-OWYVTOTW.js} +1 -1
- package/browser/{chunk-ZL64I3EB.js → chunk-PKW64TFV.js} +1 -1
- package/browser/{chunk-OPGZ37VP.js → chunk-S66NFQG3.js} +1 -1
- package/browser/{chunk-3Y2AIDG3.js → chunk-SDPOEKGB.js} +1 -1
- package/browser/{chunk-SPIWOGE3.js → chunk-VELN6XU5.js} +1 -1
- package/browser/{chunk-PHFGZSB5.js → chunk-VXZ7ZIMM.js} +1 -1
- package/browser/index.html +1 -1
- package/browser/{main-AS47DAE5.js → main-PC4NDE3G.js} +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import{d as _n,e as bn,f as yn,g as xn}from"./chunk-ZAM3WGZM.js";import{a as de}from"./chunk-AJOXSD6I.js";import{i as We}from"./chunk-53STPEYQ.js";import{a as Gt,b as Ut,e as Xt,f as Zt,i as en,j as tn,m as fn,n as gn}from"./chunk-AK6F2DC7.js";import{d as Bt,f as we,h as Ht,i as zt,j as qt,l as Kt,m as $t,p as Yt,s as Wt,v as Jt}from"./chunk-IXD43YQI.js";import{a as le,b as Qt}from"./chunk-WPC6XC7P.js";import{C as hn,D as Ye,b as nn,c as Ke,g as $e,h as on,j as an,l as ke,m as rn,o as sn,r as ln,s as dn,u as cn,v as mn,w as pn,x as un}from"./chunk-XJUBZLY2.js";import{A as Vt,E as He,K as Ie,M as De,N as ze,O as qe,P as Se,a as Nt,b as jt,h as Me,i as Le,n as Lt,t as X,u as Ve,w as Be}from"./chunk-B2QA6UZX.js";import{$a as xe,$b as z,A as ee,Ab as ot,B as Q,Bb as D,Cb as Ne,Db as _,Eb as ve,F as gt,Fb as c,Fc as Rt,G as Te,Gb as j,Hb as M,Ib as U,J as _t,Jb as re,Ka as r,Kb as S,Lb as k,Ma as vt,Na as be,Pa as Fe,Pb as Ce,Qb as Y,R as G,Ra as Ct,Rb as E,S as fe,Sa as ye,Sb as se,T as bt,Tb as u,Ub as C,Vb as je,Wa as y,Wb as St,Xa as oe,Ya as T,_ as te,_b as kt,a as J,aa as L,ab as ae,ac as Et,b as ue,bb as Mt,bc as at,ca as s,e as $,ga as x,h as F,ha as v,hc as Tt,ia as Pe,ib as wt,jb as b,jc as Pt,k as ft,ka as ge,kc as B,la as _e,lb as f,m as he,ma as ne,mb as g,mc as Ot,nb as It,nc as At,oa as h,ob as Re,oc as W,pa as Oe,pb as w,qb as I,rb as p,sb as l,sc as q,ta as R,tb as d,tc as A,ua as yt,ub as P,uc as Ft,va as ie,vb as O,wa as xt,wb as N,xb as Dt,ya as H,za as Ae}from"./chunk-3JGMGRXW.js";var zn=[[["","dsDrawerSide",""]],[["","dsDrawerContent",""]]],qn=["[dsDrawerSide]","[dsDrawerContent]"],vn=class n{breakpointObserver=s(Lt);destroyRef=s(ne);open=!0;drawerWidth="280px";mobileBreakpoint=768;openChange=new h;isMobile=R(!1);drawerMode=B(()=>this.isMobile()?"over":"side");ngOnInit(){this.breakpointObserver.observe([`(max-width: ${this.mobileBreakpoint-1}px)`]).pipe(de(this.destroyRef)).subscribe(o=>this.isMobile.set(o.matches))}onOpenedChange(o){this.openChange.emit(o)}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=y({type:n,selectors:[["ds-drawer"]],inputs:{open:"open",drawerWidth:"drawerWidth",mobileBreakpoint:"mobileBreakpoint"},outputs:{openChange:"openChange"},ngContentSelectors:qn,decls:5,vars:6,consts:[[1,"ds-drawer",2,"height","100%"],[1,"ds-drawer__sidenav",3,"openedChange","opened","mode"],[1,"ds-drawer__content"]],template:function(e,t){e&1&&(j(zn),l(0,"mat-sidenav-container",0)(1,"mat-sidenav",1),_("openedChange",function(a){return t.onOpenedChange(a)}),M(2),d(),l(3,"mat-sidenav-content",2),M(4,1),d()()),e&2&&(r(),Y("width",t.drawerWidth),E("ds-drawer__sidenav--overlay",t.isMobile()),p("opened",t.open)("mode",t.drawerMode()))},dependencies:[xn,bn,yn,_n],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;flex:1;min-height:0}.ds-drawer[_ngcontent-%COMP%]{width:100%;flex:1;min-height:0;--mat-sidenav-container-background-color: transparent;--mat-sidenav-container-divider-color: var(--color-border, rgba(0, 0, 0, .1));--mat-sidenav-scrim-color: rgba(0, 0, 0, .2)}.ds-drawer.mat-drawer-container[_ngcontent-%COMP%]{flex:1;min-height:0}.ds-drawer__sidenav[_ngcontent-%COMP%]{background:var(--glass-bg, rgba(255, 255, 255, .92));backdrop-filter:var(--glass-backdrop-blur, blur(20px));-webkit-backdrop-filter:var(--glass-backdrop-blur, blur(20px));border-right:1px solid var(--color-border, rgba(0, 0, 0, .1));box-shadow:none;--mat-sidenav-container-shape: 0;border-radius:0}.ds-drawer__sidenav--overlay[_ngcontent-%COMP%]{background:var(--color-bg, #ffffff);backdrop-filter:none;-webkit-backdrop-filter:none}.ds-drawer__content[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;overflow:hidden}"],changeDetection:0})};var Je=class n{icon;title="";disabled=!1;variant="default";action=new h;onClick(){this.disabled||this.action.emit()}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=y({type:n,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(e,t){e&1&&(l(0,"button",0),_("click",function(){return t.onClick()}),l(1,"mat-icon"),u(2),d()()),e&2&&(se("icon-button variant-"+t.variant),p("disabled",t.disabled)("title",t.title),r(2),C(t.icon))},dependencies:[qe,le],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 Kn=(n,o)=>o.uid;function $n(n,o){n&1&&(l(0,"span",2),u(1,"*"),d())}function Yn(n,o){if(n&1&&(l(0,"p",3),u(1),d()),n&2){let e=c();r(),C(e.description)}}function Wn(n,o){if(n&1&&P(0,"input",4),n&2){let e=c();p("type",e.htmlInputType)("id",e.inputId)("formControl",e.control()),b("required",e.required()||null)}}function Jn(n,o){if(n&1&&P(0,"input",5),n&2){let e=c();p("id",e.inputId)("formControl",e.control()),b("required",e.required()||null)}}function Qn(n,o){if(n&1&&(l(0,"div",6),P(1,"input",11),l(2,"span",12),u(3),d()()),n&2){let e=c();r(),p("id",e.inputId)("formControl",e.control()),r(2),C(e.label)}}function Gn(n,o){n&1&&(l(0,"option",13),u(1,"\u2014 none \u2014"),d())}function Un(n,o){if(n&1&&(l(0,"option",14),u(1),d()),n&2){let e=o.$implicit;p("value",e),r(),C(e)}}function Xn(n,o){if(n&1&&(l(0,"select",7),f(1,Gn,2,0,"option",13),w(2,Un,2,2,"option",14,Re),d()),n&2){let e=c();p("id",e.inputId)("formControl",e.control()),b("required",e.required()||null),r(),g(e.required()?-1:1),r(),I(e.enumOptions)}}function Zn(n,o){if(n&1){let e=D();l(0,"div",15),P(1,"input",17),l(2,"button",18),_("click",function(){let i=x(e).$index,a=c(2);return v(a.removeScalarItem(i))}),u(3," \xD7 "),d()()}if(n&2){let e=o.$index,t=c(2);r(),p("type",t.itemInputType)("formControl",t.getScalarItemControl(e)),b("aria-label",t.label+" item "+(e+1)),r(),b("aria-label","Remove "+t.label+" item "+(e+1))}}function ei(n,o){if(n&1){let e=D();l(0,"div",8),w(1,Zn,4,4,"div",15,It),l(3,"button",16),_("click",function(){x(e);let i=c();return v(i.addScalarItem())}),u(4),d()()}if(n&2){let e=c();r(),I(e.itemArray.controls),r(3),je("+ Add ",e.label)}}function ti(n,o){if(n&1){let e=D();l(0,"div",19)(1,"div",20)(2,"span",21),u(3),d(),l(4,"button",18),_("click",function(){let i=x(e).$implicit,a=c(2);return v(a.removeObjectItem(i.uid))}),u(5," \xD7 "),d()(),l(6,"ds-json-schema-form",22),_("valueChange",function(i){let a=x(e).$implicit,m=c(2);return v(m.onObjectItemChange(a.uid,i))}),d()()}if(n&2){let e=o.$implicit,t=o.$index,i=c(2);r(3),St("",(i.itemObjectSchema==null?null:i.itemObjectSchema.title)??i.label," ",t+1),r(),b("aria-label","Remove "+i.label+" item "+(t+1)),r(2),p("schema",i.itemObjectSchema)("value",e.seed)}}function ni(n,o){if(n&1){let e=D();l(0,"div",8),w(1,ti,7,5,"div",19,Kn),l(3,"button",16),_("click",function(){x(e);let i=c();return v(i.addObjectItem())}),u(4),d()()}if(n&2){let e=c();r(),I(e.objectItems()),r(3),je("+ Add ",e.label)}}function ii(n,o){if(n&1){let e=D();l(0,"div",9)(1,"ds-json-schema-form",22),_("valueChange",function(i){x(e);let a=c();return v(a.onNestedValueChange(i))}),d()()}if(n&2){let e=c();r(),p("schema",e.fieldSchema())("value",e.nestedInitialValue())}}function oi(n,o){if(n&1&&P(0,"textarea",10),n&2){let e=c();p("id",e.inputId)("formControl",e.control()),b("required",e.required()||null)}}var ai=0;function Cn(n){return{uid:ai++,seed:n,value:n}}var Qe=class n{fieldKey=W.required();fieldSchema=W.required();control=W.required();required=W(!1);itemArray=new ln([]);objectItems=R([]);nestedInitialValue=R(null);ngOnInit(){if(this.fieldType==="array-scalar")this.initScalarArray();else if(this.fieldType==="array-object")this.initObjectArray();else if(this.fieldType==="nested-object"){let o=this.control().value;this.nestedInitialValue.set(o&&typeof o=="object"&&!Array.isArray(o)?o:null)}}initScalarArray(){let o=this.control().value;(Array.isArray(o)?o:[]).forEach(t=>this.itemArray.push(new ke(t))),this.itemArray.valueChanges.subscribe(t=>{this.control().setValue(t,{emitEvent:!0})})}addScalarItem(){this.itemArray.push(new ke(null))}removeScalarItem(o){this.itemArray.removeAt(o)}getScalarItemControl(o){return this.itemArray.at(o)}get itemInputType(){let o=this.fieldSchema().items;if(!o)return"text";let e=Array.isArray(o.type)?o.type[0]:o.type;return e==="number"||e==="integer"?"number":"text"}initObjectArray(){let o=this.control().value,e=Array.isArray(o)?o:[];this.objectItems.set(e.map(t=>Cn(J({},t))))}addObjectItem(){this.objectItems.update(o=>[...o,Cn(null)]),this.syncObjectArrayToControl()}removeObjectItem(o){this.objectItems.update(e=>e.filter(t=>t.uid!==o)),this.syncObjectArrayToControl()}onObjectItemChange(o,e){this.objectItems.update(t=>t.map(i=>i.uid===o?ue(J({},i),{value:e}):i)),this.syncObjectArrayToControl()}get itemObjectSchema(){return this.fieldSchema().items??null}syncObjectArrayToControl(){this.control().setValue(this.objectItems().map(o=>o.value),{emitEvent:!0})}get label(){return this.fieldSchema().title??this.fieldKey()}get description(){return this.fieldSchema().description}get fieldType(){let o=this.fieldSchema();if(o.enum?.length)return"enum";switch(Array.isArray(o.type)?o.type[0]:o.type){case"number":case"integer":return"number";case"boolean":return"boolean";case"array":{let t=o.items;return(t?Array.isArray(t.type)?t.type[0]:t.type:void 0)==="object"&&t?.properties?"array-object":"array-scalar"}case"object":return o.properties?"nested-object":"textarea";default:return"text"}}get htmlInputType(){switch(this.fieldSchema().format){case"password":return"password";case"email":return"email";case"uri":case"url":return"url";case"date":return"date";case"date-time":return"datetime-local";default:return"text"}}get enumOptions(){return this.fieldSchema().enum??[]}get inputId(){return`ds-field-${this.fieldKey()}`}onNestedValueChange(o){let e=this.control().value;JSON.stringify(e)!==JSON.stringify(o)&&this.control().setValue(o,{emitEvent:!0})}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=y({type:n,selectors:[["ds-json-schema-field"]],inputs:{fieldKey:[1,"fieldKey"],fieldSchema:[1,"fieldSchema"],control:[1,"control"],required:[1,"required"]},decls:13,vars:5,consts:[[1,"ds-field"],[1,"ds-field__label",3,"for"],["aria-hidden","true",1,"ds-field__required"],[1,"ds-field__description"],[1,"ds-field__input",3,"type","id","formControl"],["type","number",1,"ds-field__input",3,"id","formControl"],[1,"ds-field__checkbox-row"],[1,"ds-field__select",3,"id","formControl"],[1,"ds-field__array"],[1,"ds-field__nested"],["rows","4","placeholder","JSON",1,"ds-field__textarea",3,"id","formControl"],["type","checkbox",1,"ds-field__checkbox",3,"id","formControl"],[1,"ds-field__checkbox-label"],["value",""],[3,"value"],[1,"ds-field__array-row"],["type","button",1,"ds-field__array-add",3,"click"],[1,"ds-field__input","ds-field__input--array-item",3,"type","formControl"],["type","button",1,"ds-field__array-remove",3,"click"],[1,"ds-field__array-object-card"],[1,"ds-field__array-object-header"],[1,"ds-field__array-object-title"],[3,"valueChange","schema","value"]],template:function(e,t){if(e&1&&(l(0,"div",0)(1,"label",1),u(2),f(3,$n,2,0,"span",2),d(),f(4,Yn,2,1,"p",3),f(5,Wn,1,4,"input",4)(6,Jn,1,3,"input",5)(7,Qn,4,3,"div",6)(8,Xn,4,4,"select",7)(9,ei,5,1,"div",8)(10,ni,5,1,"div",8)(11,ii,2,2,"div",9)(12,oi,1,3,"textarea",10),d()),e&2){let i;r(),p("for",t.inputId),r(),je(" ",t.label," "),r(),g(t.required()?3:-1),r(),g(t.description?4:-1),r(),g((i=t.fieldType)==="text"?5:i==="number"?6:i==="boolean"?7:i==="enum"?8:i==="array-scalar"?9:i==="array-object"?10:i==="nested-object"?11:i==="textarea"?12:-1)}},dependencies:()=>[Ye,pn,un,Ke,sn,nn,mn,$e,dn,Ge],styles:[".ds-field[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:4px}.ds-field__label[_ngcontent-%COMP%]{font-size:.8125rem;font-weight:500;color:var(--color-text, #1d1d1f)}.ds-field__required[_ngcontent-%COMP%]{color:var(--color-error, #d32f2f);margin-left:2px}.ds-field__description[_ngcontent-%COMP%]{font-size:.75rem;color:var(--color-text-secondary, #6e6e73);margin:0}.ds-field__input[_ngcontent-%COMP%], .ds-field__select[_ngcontent-%COMP%], .ds-field__textarea[_ngcontent-%COMP%]{width:100%;padding:6px 10px;border:1px solid var(--color-border, #d1d1d6);border-radius:6px;background:var(--color-bg-secondary, #f5f5f7);color:var(--color-text, #1d1d1f);font-size:.875rem;font-family:inherit;box-sizing:border-box;transition:border-color .15s ease}.ds-field__input[_ngcontent-%COMP%]:focus, .ds-field__select[_ngcontent-%COMP%]:focus, .ds-field__textarea[_ngcontent-%COMP%]:focus{outline:none;border-color:var(--color-primary, #007aff)}.ds-field__textarea[_ngcontent-%COMP%]{font-family:Menlo,Monaco,Courier New,monospace;font-size:.8125rem;resize:vertical;background:var(--color-code-bg, #f5f5f7)}.ds-field__checkbox-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.ds-field__checkbox[_ngcontent-%COMP%]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-primary, #007aff);flex-shrink:0}.ds-field__checkbox-label[_ngcontent-%COMP%]{font-size:.875rem;color:var(--color-text, #1d1d1f)}.ds-field__array[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:6px}.ds-field__array-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px}.ds-field__input--array-item[_ngcontent-%COMP%]{flex:1}.ds-field__array-remove[_ngcontent-%COMP%]{flex-shrink:0;width:28px;height:28px;padding:0;border:1px solid var(--color-border, #d1d1d6);border-radius:6px;background:transparent;color:var(--color-text-secondary, #6e6e73);font-size:1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s ease,color .15s ease}.ds-field__array-remove[_ngcontent-%COMP%]:hover{border-color:var(--color-error, #d32f2f);color:var(--color-error, #d32f2f)}.ds-field__array-object-card[_ngcontent-%COMP%]{border:1px solid var(--color-border-light, #e5e5ea);border-radius:8px;padding:12px;background:var(--color-bg-secondary, #f5f5f7);display:flex;flex-direction:column;gap:10px}.ds-field__array-object-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between}.ds-field__array-object-title[_ngcontent-%COMP%]{font-size:.8125rem;font-weight:500;color:var(--color-text-secondary, #6e6e73)}.ds-field__array-add[_ngcontent-%COMP%]{align-self:flex-start;padding:4px 10px;border:1px dashed var(--color-border, #d1d1d6);border-radius:6px;background:transparent;color:var(--color-primary, #007aff);font-size:.8125rem;font-family:inherit;cursor:pointer;transition:border-color .15s ease}.ds-field__array-add[_ngcontent-%COMP%]:hover{border-color:var(--color-primary, #007aff)}.ds-field__nested[_ngcontent-%COMP%]{border:1px solid var(--color-border-light, #e5e5ea);border-radius:8px;padding:12px;background:var(--color-bg-secondary, #f5f5f7)}"],changeDetection:0})};function ri(n,o){if(n&1&&P(0,"ds-json-schema-field",1),n&2){let e=o.$implicit,t=c(2);p("fieldKey",e)("fieldSchema",t.getFieldSchema(e))("control",t.getControl(e))("required",t.isRequired(e))}}function si(n,o){if(n&1&&(l(0,"div",0),w(1,ri,1,4,"ds-json-schema-field",1,Re),d()),n&2){let e=c();p("formGroup",e.formGroup),r(),I(e.fieldKeys())}}var Ge=class n{destroyRef=s(ne);schema=W(null);value=W(null);valueChange=At();formGroup=new an({});fieldKeys=B(()=>{let o=this.schema();return o?.properties?Object.keys(o.properties):[]});hasFields=B(()=>this.fieldKeys().length>0);constructor(){yt(()=>{let o=this.schema(),e=Pt(()=>this.value());this.rebuildForm(o,e)})}rebuildForm(o,e){if(Object.keys(this.formGroup.controls).forEach(t=>{this.formGroup.removeControl(t)}),!o?.properties){this.valueChange.emit(null);return}for(let[t,i]of Object.entries(o.properties)){let a=e?.[t]??i.default??null;this.formGroup.addControl(t,new ke(a))}this.formGroup.valueChanges.pipe(de(this.destroyRef)).subscribe(()=>this.emitValue()),this.emitValue()}emitValue(){if(!this.schema()?.properties){this.valueChange.emit(null);return}this.valueChange.emit(this.formGroup.value)}getFieldSchema(o){return this.schema()?.properties?.[o]??{}}isRequired(o){return this.schema()?.required?.includes(o)??!1}getControl(o){return this.formGroup.get(o)}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=y({type:n,selectors:[["ds-json-schema-form"]],inputs:{schema:[1,"schema"],value:[1,"value"]},outputs:{valueChange:"valueChange"},decls:1,vars:1,consts:[[1,"ds-json-schema-form",3,"formGroup"],[3,"fieldKey","fieldSchema","control","required"]],template:function(e,t){e&1&&f(0,si,3,1,"div",0),e&2&&g(t.hasFields()?0:-1)},dependencies:[Ye,on,cn,Qe],styles:[".ds-json-schema-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px}"]})};var Ue=class n{static \u0275fac=function(e){return new(e||n)};static \u0275dir=T({type:n,selectors:[["","dsCardActions",""]]})};var di=[[["","dsCardActions",""]]],ci=["[dsCardActions]"],mi=(n,o)=>o.label;function pi(n,o){if(n&1&&(l(0,"span"),u(1),d()),n&2){let e=o.$implicit;se(kt("entity-card__badge badge-",e.variant)),r(),C(e.label)}}function ui(n,o){if(n&1&&(l(0,"div",3),w(1,pi,2,4,"span",6,mi),d()),n&2){let e=c();r(),I(e.badges)}}function hi(n,o){if(n&1&&(l(0,"span",4),u(1),d()),n&2){let e=c();p("matTooltip",e.description),r(),C(e.description)}}function fi(n,o){n&1&&(l(0,"div",5),M(1),d())}var Xe=class n{id;name;description=void 0;badges=[];selected=new h;cardActions;get hasActions(){return this.cardActions!==void 0}onClick(){this.selected.emit(this.id)}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=y({type:n,selectors:[["ds-entity-card"]],contentQueries:function(e,t,i){if(e&1&&U(i,Ue,5),e&2){let a;S(a=k())&&(t.cardActions=a.first)}},inputs:{id:"id",name:"name",description:"description",badges:"badges"},outputs:{selected:"selected"},ngContentSelectors:ci,decls:7,vars:8,consts:[["matRipple","",1,"entity-card",3,"click","keydown.enter","keydown.space"],[1,"entity-card__body"],[1,"entity-card__name"],[1,"entity-card__badges"],["matTooltipShowDelay","600",1,"entity-card__description",3,"matTooltip"],[1,"entity-card__actions"],[3,"class"]],template:function(e,t){e&1&&(j(di),l(0,"div",0),_("click",function(){return!t.hasActions&&t.onClick()})("keydown.enter",function(){return!t.hasActions&&t.onClick()})("keydown.space",function(){return!t.hasActions&&t.onClick()}),l(1,"div",1)(2,"span",2),u(3),d(),f(4,ui,3,0,"div",3),f(5,hi,2,2,"span",4),d(),f(6,fi,2,0,"div",5),d()),e&2&&(E("entity-card--clickable",!t.hasActions),b("role",t.hasActions?null:"button")("tabindex",t.hasActions?null:"0"),r(3),C(t.name),r(),g(t.badges.length>0?4:-1),r(),g(t.description?5:-1),r(),g(t.hasActions?6:-1))},dependencies:[Se,De,Ut,Gt],styles:[".entity-card[_ngcontent-%COMP%]{box-sizing:border-box;display:flex;align-items:center;gap:.5rem;width:100%;padding:1rem 1.25rem;background:var(--color-bg-secondary, rgba(255, 255, 255, .7));border:1px solid var(--color-border, rgba(0, 0, 0, .1));border-radius:12px;overflow:hidden;position:relative;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .12s ease}.entity-card--clickable[_ngcontent-%COMP%]{cursor:pointer}.entity-card--clickable[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover, rgba(0, 0, 0, .04));border-color:var(--color-primary, #007aff);box-shadow:0 2px 12px var(--color-shadow, rgba(0, 0, 0, .08));transform:translateY(-1px)}.entity-card--clickable[_ngcontent-%COMP%]:focus-visible{outline:2px solid var(--color-primary, #007aff);outline-offset:2px}.entity-card--clickable[_ngcontent-%COMP%]:active{transform:translateY(0)}.entity-card__body[_ngcontent-%COMP%]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.375rem}.entity-card__name[_ngcontent-%COMP%]{font-size:.9375rem;font-weight:600;color:var(--color-text, #1d1d1f);line-height:1.3}.entity-card__description[_ngcontent-%COMP%]{font-size:.8125rem;color:var(--color-text-secondary, #6e6e73);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-card__badges[_ngcontent-%COMP%]{display:flex;gap:.25rem;flex-wrap:wrap}.entity-card__badge[_ngcontent-%COMP%]{display:inline-flex;align-items:center;padding:.0625rem .3rem;border-radius:999px;font-size:.5625rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:#fff}.entity-card__badge.badge-warning[_ngcontent-%COMP%]{background:var(--color-warning, #ff9500)}.entity-card__badge.badge-info[_ngcontent-%COMP%]{background:var(--color-info, #5ac8fa)}.entity-card__badge.badge-success[_ngcontent-%COMP%]{background:var(--color-success, #34c759)}.entity-card__badge.badge-error[_ngcontent-%COMP%]{background:var(--color-error, #ff3b30)}.entity-card__actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.25rem;flex-shrink:0}"],changeDetection:0})};var rt=new L("CdkAccordion"),wn=(()=>{class n{_stateChanges=new F;_openCloseAllActions=new F;id=s(X).getId("cdk-accordion-");multi=!1;openAll(){this.multi&&this._openCloseAllActions.next(!0)}closeAll(){this._openCloseAllActions.next(!1)}ngOnChanges(e){this._stateChanges.next(e)}ngOnDestroy(){this._stateChanges.complete(),this._openCloseAllActions.complete()}static \u0275fac=function(t){return new(t||n)};static \u0275dir=T({type:n,selectors:[["cdk-accordion"],["","cdkAccordion",""]],inputs:{multi:[2,"multi","multi",A]},exportAs:["cdkAccordion"],features:[z([{provide:rt,useExisting:n}]),ie]})}return n})(),In=(()=>{class n{accordion=s(rt,{optional:!0,skipSelf:!0});_changeDetectorRef=s(q);_expansionDispatcher=s(We);_openCloseAllSubscription=$.EMPTY;closed=new h;opened=new h;destroyed=new h;expandedChange=new h;id=s(X).getId("cdk-accordion-child-");get expanded(){return this._expanded}set expanded(e){if(this._expanded!==e){if(this._expanded=e,this.expandedChange.emit(e),e){this.opened.emit();let t=this.accordion?this.accordion.id:this.id;this._expansionDispatcher.notify(this.id,t)}else this.closed.emit();this._changeDetectorRef.markForCheck()}}_expanded=!1;get disabled(){return this._disabled()}set disabled(e){this._disabled.set(e)}_disabled=R(!1);_removeUniqueSelectionListener=()=>{};constructor(){}ngOnInit(){this._removeUniqueSelectionListener=this._expansionDispatcher.listen((e,t)=>{this.accordion&&!this.accordion.multi&&this.accordion.id===t&&this.id!==e&&(this.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}ngOnDestroy(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}toggle(){this.disabled||(this.expanded=!this.expanded)}close(){this.disabled||(this.expanded=!1)}open(){this.disabled||(this.expanded=!0)}_subscribeToOpenCloseAllActions(){return this.accordion._openCloseAllActions.subscribe(e=>{this.disabled||(this.expanded=e)})}static \u0275fac=function(t){return new(t||n)};static \u0275dir=T({type:n,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:[2,"expanded","expanded",A],disabled:[2,"disabled","disabled",A]},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[z([{provide:rt,useValue:void 0}])]})}return n})(),Dn=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275mod=oe({type:n});static \u0275inj=te({})}return n})();var gi=["body"],_i=["bodyWrapper"],bi=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],yi=["mat-expansion-panel-header","*","mat-action-row"];function xi(n,o){}var vi=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],Ci=["mat-panel-title","mat-panel-description","*"];function Mi(n,o){n&1&&(O(0,"span",1),Pe(),O(1,"svg",2),Dt(2,"path",3),N()())}var st=new L("MAT_ACCORDION"),Sn=new L("MAT_EXPANSION_PANEL"),wi=(()=>{class n{_template=s(be);_expansionPanel=s(Sn,{optional:!0});constructor(){}static \u0275fac=function(t){return new(t||n)};static \u0275dir=T({type:n,selectors:[["ng-template","matExpansionPanelContent",""]]})}return n})(),kn=new L("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS"),ct=(()=>{class n extends In{_viewContainerRef=s(ye);_animationsDisabled=Ie();_document=s(_e);_ngZone=s(Oe);_elementRef=s(H);_renderer=s(Fe);_cleanupTransitionEnd;get hideToggle(){return this._hideToggle||this.accordion&&this.accordion.hideToggle}set hideToggle(e){this._hideToggle=e}_hideToggle=!1;get togglePosition(){return this._togglePosition||this.accordion&&this.accordion.togglePosition}set togglePosition(e){this._togglePosition=e}_togglePosition;afterExpand=new h;afterCollapse=new h;_inputChanges=new F;accordion=s(st,{optional:!0,skipSelf:!0});_lazyContent;_body;_bodyWrapper;_portal;_headerId=s(X).getId("mat-expansion-panel-header-");constructor(){super();let e=s(kn,{optional:!0});this._expansionDispatcher=s(We),e&&(this.hideToggle=e.hideToggle)}_hasSpacing(){return this.accordion?this.expanded&&this.accordion.displayMode==="default":!1}_getExpandedState(){return this.expanded?"expanded":"collapsed"}toggle(){this.expanded=!this.expanded}close(){this.expanded=!1}open(){this.expanded=!0}ngAfterContentInit(){this._lazyContent&&this._lazyContent._expansionPanel===this&&this.opened.pipe(G(null),Q(()=>this.expanded&&!this._portal),Te(1)).subscribe(()=>{this._portal=new we(this._lazyContent._template,this._viewContainerRef)}),this._setupAnimationEvents()}ngOnChanges(e){this._inputChanges.next(e)}ngOnDestroy(){super.ngOnDestroy(),this._cleanupTransitionEnd?.(),this._inputChanges.complete()}_containsFocus(){if(this._body){let e=this._document.activeElement,t=this._body.nativeElement;return e===t||t.contains(e)}return!1}_transitionEndListener=({target:e,propertyName:t})=>{e===this._bodyWrapper?.nativeElement&&t==="grid-template-rows"&&this._ngZone.run(()=>{this.expanded?this.afterExpand.emit():this.afterCollapse.emit()})};_setupAnimationEvents(){this._ngZone.runOutsideAngular(()=>{this._animationsDisabled?(this.opened.subscribe(()=>this._ngZone.run(()=>this.afterExpand.emit())),this.closed.subscribe(()=>this._ngZone.run(()=>this.afterCollapse.emit()))):setTimeout(()=>{let e=this._elementRef.nativeElement;this._cleanupTransitionEnd=this._renderer.listen(e,"transitionend",this._transitionEndListener),e.classList.add("mat-expansion-panel-animations-enabled")},200)})}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=y({type:n,selectors:[["mat-expansion-panel"]],contentQueries:function(t,i,a){if(t&1&&U(a,wi,5),t&2){let m;S(m=k())&&(i._lazyContent=m.first)}},viewQuery:function(t,i){if(t&1&&re(gi,5)(_i,5),t&2){let a;S(a=k())&&(i._body=a.first),S(a=k())&&(i._bodyWrapper=a.first)}},hostAttrs:[1,"mat-expansion-panel"],hostVars:4,hostBindings:function(t,i){t&2&&E("mat-expanded",i.expanded)("mat-expansion-panel-spacing",i._hasSpacing())},inputs:{hideToggle:[2,"hideToggle","hideToggle",A],togglePosition:"togglePosition"},outputs:{afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[z([{provide:st,useValue:void 0},{provide:Sn,useExisting:n}]),xe,ie],ngContentSelectors:yi,decls:9,vars:4,consts:[["bodyWrapper",""],["body",""],[1,"mat-expansion-panel-content-wrapper"],["role","region",1,"mat-expansion-panel-content",3,"id"],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(t,i){t&1&&(j(bi),M(0),l(1,"div",2,0)(3,"div",3,1)(5,"div",4),M(6,1),ae(7,xi,0,0,"ng-template",5),d(),M(8,2),d()()),t&2&&(r(),b("inert",i.expanded?null:""),r(2),p("id",i.id),b("aria-labelledby",i._headerId),r(4),p("cdkPortalOutlet",i._portal))},dependencies:[zt],styles:[`.mat-expansion-panel{box-sizing:content-box;display:block;margin:0;overflow:hidden}.mat-expansion-panel.mat-expansion-panel-animations-enabled{transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel{position:relative;background:var(--mat-expansion-container-background-color, var(--mat-sys-surface));color:var(--mat-expansion-container-text-color, var(--mat-sys-on-surface));border-radius:var(--mat-expansion-container-shape, 12px)}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:var(--mat-expansion-container-elevation-shadow, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12))}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:var(--mat-expansion-container-shape, 12px);border-top-left-radius:var(--mat-expansion-container-shape, 12px)}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:var(--mat-expansion-container-shape, 12px);border-bottom-left-radius:var(--mat-expansion-container-shape, 12px)}@media(forced-colors: active){.mat-expansion-panel{outline:solid 1px}}.mat-expansion-panel-content-wrapper{display:grid;grid-template-rows:0fr;grid-template-columns:100%}.mat-expansion-panel-animations-enabled .mat-expansion-panel-content-wrapper{transition:grid-template-rows 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper{grid-template-rows:1fr}@supports not (grid-template-rows: 0fr){.mat-expansion-panel-content-wrapper{height:0}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper{height:auto}}@media print{.mat-expansion-panel-content-wrapper{height:0}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper{height:auto}}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible;min-height:0;visibility:hidden}.mat-expansion-panel-animations-enabled .mat-expansion-panel-content{transition:visibility 190ms linear}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper>.mat-expansion-panel-content{visibility:visible}.mat-expansion-panel-content{font-family:var(--mat-expansion-container-text-font, var(--mat-sys-body-large-font));font-size:var(--mat-expansion-container-text-size, var(--mat-sys-body-large-size));font-weight:var(--mat-expansion-container-text-weight, var(--mat-sys-body-large-weight));line-height:var(--mat-expansion-container-text-line-height, var(--mat-sys-body-large-line-height));letter-spacing:var(--mat-expansion-container-text-tracking, var(--mat-sys-body-large-tracking))}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px;border-top-color:var(--mat-expansion-actions-divider-color, var(--mat-sys-outline))}.mat-action-row .mat-button-base,.mat-action-row .mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row .mat-button-base,[dir=rtl] .mat-action-row .mat-mdc-button-base{margin-left:0;margin-right:8px}
|
|
2
2
|
`],encapsulation:2,changeDetection:0})}return n})();var mt=(()=>{class n{panel=s(ct,{host:!0});_element=s(H);_focusMonitor=s(Me);_changeDetectorRef=s(q);_parentChangeSubscription=$.EMPTY;constructor(){s(Le).load(ze);let e=this.panel,t=s(kn,{optional:!0}),i=s(new Ot("tabindex"),{optional:!0}),a=e.accordion?e.accordion._stateChanges.pipe(Q(m=>!!(m.hideToggle||m.togglePosition))):ft;this.tabIndex=parseInt(i||"")||0,this._parentChangeSubscription=ee(e.opened,e.closed,a,e._inputChanges.pipe(Q(m=>!!(m.hideToggle||m.disabled||m.togglePosition)))).subscribe(()=>this._changeDetectorRef.markForCheck()),e.closed.pipe(Q(()=>e._containsFocus())).subscribe(()=>this._focusMonitor.focusVia(this._element,"program")),t&&(this.expandedHeight=t.expandedHeight,this.collapsedHeight=t.collapsedHeight)}expandedHeight;collapsedHeight;tabIndex=0;get disabled(){return this.panel.disabled}_toggle(){this.disabled||this.panel.toggle()}_isExpanded(){return this.panel.expanded}_getExpandedState(){return this.panel._getExpandedState()}_getPanelId(){return this.panel.id}_getTogglePosition(){return this.panel.togglePosition}_showToggle(){return!this.panel.hideToggle&&!this.panel.disabled}_getHeaderHeight(){let e=this._isExpanded();return e&&this.expandedHeight?this.expandedHeight:!e&&this.collapsedHeight?this.collapsedHeight:null}_keydown(e){switch(e.keyCode){case 32:case 13:Ve(e)||(e.preventDefault(),this._toggle());break;default:this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(e);return}}focus(e,t){e?this._focusMonitor.focusVia(this._element,e,t):this._element.nativeElement.focus(t)}ngAfterViewInit(){this._focusMonitor.monitor(this._element).subscribe(e=>{e&&this.panel.accordion&&this.panel.accordion._handleHeaderFocus(this)})}ngOnDestroy(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=y({type:n,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:13,hostBindings:function(t,i){t&1&&_("click",function(){return i._toggle()})("keydown",function(m){return i._keydown(m)}),t&2&&(b("id",i.panel._headerId)("tabindex",i.disabled?-1:i.tabIndex)("aria-controls",i._getPanelId())("aria-expanded",i._isExpanded())("aria-disabled",i.panel.disabled),Y("height",i._getHeaderHeight()),E("mat-expanded",i._isExpanded())("mat-expansion-toggle-indicator-after",i._getTogglePosition()==="after")("mat-expansion-toggle-indicator-before",i._getTogglePosition()==="before"))},inputs:{expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight",tabIndex:[2,"tabIndex","tabIndex",e=>e==null?0:Ft(e)]},ngContentSelectors:Ci,decls:5,vars:3,consts:[[1,"mat-content"],[1,"mat-expansion-indicator"],["xmlns","http://www.w3.org/2000/svg","viewBox","0 -960 960 960","aria-hidden","true","focusable","false"],["d","M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"]],template:function(t,i){t&1&&(j(vi),O(0,"span",0),M(1),M(2,1),M(3,2),N(),f(4,Mi,3,0,"span",1)),t&2&&(E("mat-content-hide-toggle",!i._showToggle()),r(4),g(i._showToggle()?4:-1))},styles:[`.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit}.mat-expansion-panel-animations-enabled .mat-expansion-panel-header{transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header::before{border-radius:inherit}.mat-expansion-panel-header{height:var(--mat-expansion-header-collapsed-state-height, 48px);font-family:var(--mat-expansion-header-text-font, var(--mat-sys-title-medium-font));font-size:var(--mat-expansion-header-text-size, var(--mat-sys-title-medium-size));font-weight:var(--mat-expansion-header-text-weight, var(--mat-sys-title-medium-weight));line-height:var(--mat-expansion-header-text-line-height, var(--mat-sys-title-medium-line-height));letter-spacing:var(--mat-expansion-header-text-tracking, var(--mat-sys-title-medium-tracking))}.mat-expansion-panel-header.mat-expanded{height:var(--mat-expansion-header-expanded-state-height, 64px)}.mat-expansion-panel-header[aria-disabled=true]{color:var(--mat-expansion-header-disabled-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled=true]):hover{background:var(--mat-expansion-header-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}@media(hover: none){.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled=true]):hover{background:var(--mat-expansion-container-background-color, var(--mat-sys-surface))}}.mat-expansion-panel .mat-expansion-panel-header:not([aria-disabled=true]).cdk-keyboard-focused,.mat-expansion-panel .mat-expansion-panel-header:not([aria-disabled=true]).cdk-program-focused{background:var(--mat-expansion-header-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent))}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-content.mat-content-hide-toggle{margin-right:8px}[dir=rtl] .mat-content.mat-content-hide-toggle{margin-right:0;margin-left:8px}.mat-expansion-toggle-indicator-before .mat-content.mat-content-hide-toggle{margin-left:24px;margin-right:0}[dir=rtl] .mat-expansion-toggle-indicator-before .mat-content.mat-content-hide-toggle{margin-right:24px;margin-left:0}.mat-expansion-panel-header-title{color:var(--mat-expansion-header-text-color, var(--mat-sys-on-surface))}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;flex-basis:0;margin-right:16px;align-items:center}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-title,.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-description{color:inherit}.mat-expansion-panel-header-description{flex-grow:2;color:var(--mat-expansion-header-description-color, var(--mat-sys-on-surface-variant))}.mat-expansion-panel-animations-enabled .mat-expansion-indicator{transition:transform 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header.mat-expanded .mat-expansion-indicator{transform:rotate(180deg)}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";padding:3px;transform:rotate(45deg);vertical-align:middle;color:var(--mat-expansion-header-indicator-color, var(--mat-sys-on-surface-variant));display:var(--mat-expansion-legacy-header-indicator-display, none)}.mat-expansion-indicator svg{width:24px;height:24px;margin:0 -8px;vertical-align:middle;fill:var(--mat-expansion-header-indicator-color, var(--mat-sys-on-surface-variant));display:var(--mat-expansion-header-indicator-display, inline-block)}@media(forced-colors: active){.mat-expansion-panel-content{border-top:1px solid;border-top-left-radius:0;border-top-right-radius:0}}
|
|
3
|
-
`],encapsulation:2,changeDetection:0})}return n})();var En=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275dir=T({type:n,selectors:[["mat-panel-title"]],hostAttrs:[1,"mat-expansion-panel-header-title"]})}return n})(),Tn=(()=>{class n extends wn{_keyManager;_ownHeaders=new Ae;_headers;hideToggle=!1;displayMode="default";togglePosition="after";ngAfterContentInit(){this._headers.changes.pipe(G(this._headers)).subscribe(e=>{this._ownHeaders.reset(e.filter(t=>t.panel.accordion===this)),this._ownHeaders.notifyOnChanges()}),this._keyManager=new Be(this._ownHeaders).withWrap().withHomeAndEnd()}_handleHeaderKeydown(e){this._keyManager.onKeydown(e)}_handleHeaderFocus(e){this._keyManager.updateActiveItem(e)}ngOnDestroy(){super.ngOnDestroy(),this._keyManager?.destroy(),this._ownHeaders.destroy()}static \u0275fac=(()=>{let e;return function(i){return(e||(e=xt(n)))(i||n)}})();static \u0275dir=T({type:n,selectors:[["mat-accordion"]],contentQueries:function(t,i,a){if(t&1&&U(a,mt,5),t&2){let m;S(m=k())&&(i._headers=m)}},hostAttrs:[1,"mat-accordion"],hostVars:2,hostBindings:function(t,i){t&2&&E("mat-accordion-multi",i.multi)},inputs:{hideToggle:[2,"hideToggle","hideToggle",A],displayMode:"displayMode",togglePosition:"togglePosition"},exportAs:["matAccordion"],features:[z([{provide:st,useExisting:n}]),xe]})}return n})(),Pn=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275mod=oe({type:n});static \u0275inj=te({imports:[Dn,qt,He]})}return n})();var Di=["searchInput"],Si=[[["","toolbar-start",""]],[["","toolbar-extras",""]]],ki=["[toolbar-start]","[toolbar-extras]"],An=n=>({$implicit:n}),Ei=()=>[],Ti=(n,o)=>o.groupKey,Fn=(n,o)=>o.id;function Pi(n,o){if(n&1){let e=D();l(0,"button",14),_("click",function(){x(e);let i=c();return v(i.clearSearch())}),l(1,"mat-icon"),u(2,"close"),d()()}}function Oi(n,o){if(n&1){let e=D();l(0,"button",15),_("click",function(){x(e);let i=c();return v(i.onCreateRequested())}),l(1,"mat-icon"),u(2,"add"),d()()}}function Ai(n,o){if(n&1&&(l(0,"p",11),u(1),d()),n&2){let e=c();r(),C(e.emptyMessage)}}function Fi(n,o){if(n&1&&(l(0,"mat-expansion-panel-header")(1,"mat-panel-title",18),u(2),d()()),n&2){let e=c().$implicit;r(2),C(e.groupLabel)}}function Ri(n,o){n&1&&ot(0)}function Ni(n,o){if(n&1&&ae(0,Ri,1,0,"ng-container",19),n&2){let e=o.$implicit,t=c(3),i=Ce(18);p("ngTemplateOutlet",t.itemTemplate??i)("ngTemplateOutletContext",at(2,An,e))}}function ji(n,o){if(n&1&&(l(0,"mat-expansion-panel",16),f(1,Fi,3,1,"mat-expansion-panel-header"),l(2,"div",17),w(3,Ni,1,4,"ng-container",null,Fn),d()()),n&2){let e=o.$implicit,t=c(2);p("expanded",!0),r(),g(e.groupLabel?1:-1),r(),Y("--card-min-width",t.cardMinWidth),r(),I(e.items)}}function Li(n,o){if(n&1&&(l(0,"mat-accordion",12),w(1,ji,5,4,"mat-expansion-panel",16,Ti),d()),n&2){let e=c();p("multi",!0),r(),I(e.groupedItems())}}function Vi(n,o){n&1&&ot(0)}function Bi(n,o){if(n&1&&ae(0,Vi,1,0,"ng-container",19),n&2){let e=o.$implicit,t=c(2),i=Ce(18);p("ngTemplateOutlet",t.itemTemplate??i)("ngTemplateOutletContext",at(2,An,e))}}function Hi(n,o){if(n&1&&(l(0,"div",17),w(1,Bi,1,4,"ng-container",null,Fn),d()),n&2){let e=c();Y("--card-min-width",e.cardMinWidth),r(),I(e.filteredItems())}}function zi(n,o){if(n&1){let e=D();l(0,"ds-entity-card",20),_("selected",function(i){x(e);let a=c();return v(a.onItemSelected(i))}),d()}if(n&2){let e=o.$implicit;p("id",e.id)("name",e.name)("description",e.description)("badges",e.badges??Et(4,Ei))}}var On=class n{title;items=[];searchPlaceholder="Filter\u2026";emptyMessage="No items found.";autoFocusSearch=!1;cardMinWidth="260px";contentMaxWidth="900px";showCreate=!1;itemTemplate;itemSelected=new h;createRequested=new h;searchInputRef;itemsSignal=R([]);searchQuery=R("");isSearchActive=B(()=>this.searchQuery().trim().length>0);filteredItems=B(()=>{let o=this.searchQuery().toLowerCase().trim(),e=this.itemsSignal();return o?e.filter(t=>t.name.toLowerCase().includes(o)||(t.description?.toLowerCase().includes(o)??!1)):e});groupedItems=B(()=>{let o=this.filteredItems(),e=[],t=new Map;for(let a of o){if(!a.groupKey){e.push(a);continue}t.has(a.groupKey)||t.set(a.groupKey,{groupKey:a.groupKey,groupLabel:a.groupLabel??a.groupKey,items:[]}),t.get(a.groupKey).items.push(a)}let i=[];return e.length>0&&i.push({groupKey:"",groupLabel:"",items:e}),i.push(...t.values()),i});hasGroups=B(()=>!this.isSearchActive()&&this.groupedItems().some(o=>o.groupKey!==""));ngOnChanges(o){o.items&&this.itemsSignal.set(this.items)}ngAfterViewInit(){this.autoFocusSearch&&setTimeout(()=>this.searchInputRef?.nativeElement.focus(),0)}onSearchChange(o){this.searchQuery.set(o)}clearSearch(){this.searchQuery.set(""),this.searchInputRef?.nativeElement.focus()}onItemSelected(o){this.itemSelected.emit(o)}onCreateRequested(){this.createRequested.emit()}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=y({type:n,selectors:[["ds-entity-list"]],viewQuery:function(e,t){if(e&1&&re(Di,5),e&2){let i;S(i=k())&&(t.searchInputRef=i.first)}},hostVars:1,hostBindings:function(e,t){e&2&&b("title",null)},inputs:{title:"title",items:"items",searchPlaceholder:"searchPlaceholder",emptyMessage:"emptyMessage",autoFocusSearch:"autoFocusSearch",cardMinWidth:"cardMinWidth",contentMaxWidth:"contentMaxWidth",showCreate:"showCreate",itemTemplate:"itemTemplate"},outputs:{itemSelected:"itemSelected",createRequested:"createRequested"},features:[ie],ngContentSelectors:ki,decls:19,vars:8,consts:[["searchInput",""],["defaultCard",""],[1,"entity-list"],[1,"entity-list__toolbar"],[1,"entity-list__title"],["appearance","fill","subscriptSizing","dynamic",1,"entity-list__search-field"],["matPrefix",""],["matInput","","type","search","autocomplete","off",3,"ngModelChange","keydown.escape","placeholder","ngModel"],["matSuffix","","mat-icon-button","","aria-label","Clear"],["mat-icon-button","","type","button","title","Create",1,"entity-list__toolbar-btn","entity-list__toolbar-btn--primary"],[1,"entity-list__content"],[1,"entity-list__empty"],[3,"multi"],[1,"entity-list__grid",3,"--card-min-width"],["matSuffix","","mat-icon-button","","aria-label","Clear",3,"click"],["mat-icon-button","","type","button","title","Create",1,"entity-list__toolbar-btn","entity-list__toolbar-btn--primary",3,"click"],[1,"entity-list__panel",3,"expanded"],[1,"entity-list__grid"],[1,"entity-list__panel-title"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"selected","id","name","description","badges"]],template:function(e,t){e&1&&(j(Si),l(0,"div",2)(1,"div",3),M(2),l(3,"h1",4),u(4),d(),l(5,"mat-form-field",5)(6,"mat-icon",6),u(7,"search"),d(),l(8,"input",7,0),_("ngModelChange",function(a){return t.onSearchChange(a)})("keydown.escape",function(){return t.clearSearch()}),d(),f(10,Pi,3,0,"button",8),d(),M(11,1),f(12,Oi,3,0,"button",9),d(),l(13,"div",10),f(14,Ai,2,1,"p",11)(15,Li,3,1,"mat-accordion",12)(16,Hi,3,2,"div",13),d()(),ae(17,zi,1,5,"ng-template",null,1,Tt)),e&2&&(r(4),C(t.title),r(4),p("placeholder",t.searchPlaceholder)("ngModel",t.searchQuery()),r(2),g(t.isSearchActive()?10:-1),r(2),g(t.showCreate?12:-1),r(),Y("max-width",t.contentMaxWidth),r(),g(t.filteredItems().length===0?14:t.hasGroups()?15:16))},dependencies:[hn,Ke,$e,rn,Qt,le,qe,Pn,Tn,ct,mt,En,tn,en,Xt,Zt,gn,fn,Xe,Rt],styles:[".entity-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:100%;box-sizing:border-box}.entity-list__toolbar[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-bottom:1px solid var(--color-border, rgba(0, 0, 0, .1));height:56px;width:100%;box-sizing:border-box}.entity-list__title[_ngcontent-%COMP%]{flex:0 0 auto;margin:0;font-size:1rem;font-weight:600;color:var(--color-text, #1d1d1f);white-space:nowrap}.entity-list__search-field[_ngcontent-%COMP%]{margin-left:auto;padding-left:20px;flex:0 1 240px;min-width:80px;--mat-form-field-container-height: 36px;--mat-form-field-container-vertical-padding: 6px;font-size:.875rem;--mat-form-field-filled-with-label-container-padding-top: 0;--mdc-filled-text-field-container-color: transparent;--mdc-filled-text-field-hover-container-color: transparent;--mdc-filled-text-field-focus-container-color: transparent;--mdc-filled-text-field-active-indicator-color: transparent;--mdc-filled-text-field-hover-active-indicator-color: transparent;--mdc-filled-text-field-focus-active-indicator-color: transparent;--mdc-filled-text-field-active-indicator-height: 0}.entity-list__toolbar-btn[_ngcontent-%COMP%]{flex-shrink:0;color:var(--color-text-secondary, #6e6e73)}.entity-list__toolbar-btn[_ngcontent-%COMP%]:hover{color:var(--color-text, #1d1d1f)}.entity-list__toolbar-btn--primary[_ngcontent-%COMP%]{color:var(--color-primary, #007aff)}.entity-list__toolbar-btn--primary[_ngcontent-%COMP%]:hover{color:var(--color-primary-hover, #0051d5)}.entity-list__content[_ngcontent-%COMP%]{width:100%;max-width:900px;margin:0 auto;padding:.75rem 1rem;box-sizing:border-box}.entity-list__empty[_ngcontent-%COMP%]{margin:0;padding:2rem 0;text-align:center;color:var(--color-text-secondary, #6e6e73);font-size:.9375rem}.entity-list__panel[_ngcontent-%COMP%]{background:transparent;box-shadow:none!important}.entity-list__panel[_ngcontent-%COMP%] + .entity-list__panel[_ngcontent-%COMP%]{border-top:1px solid var(--color-border-light, rgba(40, 40, 40, .08))}.entity-list__panel-title[_ngcontent-%COMP%]{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary, #6e6e73)}.entity-list__grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--card-min-width, 260px),1fr));gap:.75rem;padding:.5rem 0}"]})};var Yi=["mat-menu-item",""],Wi=[[["mat-icon"],["","matMenuItemIcon",""]],"*"],Ji=["mat-icon, [matMenuItemIcon]","*"];function Qi(n,o){n&1&&(Pe(),l(0,"svg",2),P(1,"polygon",3),d())}var Gi=["*"];function Ui(n,o){if(n&1){let e=D();O(0,"div",0),ve("click",function(){x(e);let i=c();return v(i.closed.emit("click"))})("animationstart",function(i){x(e);let a=c();return v(a._onAnimationStart(i.animationName))})("animationend",function(i){x(e);let a=c();return v(a._onAnimationDone(i.animationName))})("animationcancel",function(i){x(e);let a=c();return v(a._onAnimationDone(i.animationName))}),O(1,"div",1),M(2),N()()}if(n&2){let e=c();se(e._classList),E("mat-menu-panel-animations-disabled",e._animationsDisabled)("mat-menu-panel-exit-animation",e._panelAnimationState==="void")("mat-menu-panel-animating",e._isAnimating()),Ne("id",e.panelId),b("aria-label",e.ariaLabel||null)("aria-labelledby",e.ariaLabelledby||null)("aria-describedby",e.ariaDescribedby||null)}}var ut=new L("MAT_MENU_PANEL"),Ee=(()=>{class n{_elementRef=s(H);_document=s(_e);_focusMonitor=s(Me);_parentMenu=s(ut,{optional:!0});_changeDetectorRef=s(q);role="menuitem";disabled=!1;disableRipple=!1;_hovered=new F;_focused=new F;_highlighted=!1;_triggersSubmenu=!1;constructor(){s(Le).load(ze),this._parentMenu?.addItem?.(this)}focus(e,t){this._focusMonitor&&e?this._focusMonitor.focusVia(this._getHostElement(),e,t):this._getHostElement().focus(t),this._focused.next(this)}ngAfterViewInit(){this._focusMonitor&&this._focusMonitor.monitor(this._elementRef,!1)}ngOnDestroy(){this._focusMonitor&&this._focusMonitor.stopMonitoring(this._elementRef),this._parentMenu&&this._parentMenu.removeItem&&this._parentMenu.removeItem(this),this._hovered.complete(),this._focused.complete()}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._elementRef.nativeElement}_checkDisabled(e){this.disabled&&(e.preventDefault(),e.stopPropagation())}_handleMouseEnter(){this._hovered.next(this)}getLabel(){let e=this._elementRef.nativeElement.cloneNode(!0),t=e.querySelectorAll("mat-icon, .material-icons");for(let i=0;i<t.length;i++)t[i].remove();return e.textContent?.trim()||""}_setHighlighted(e){this._highlighted=e,this._changeDetectorRef.markForCheck()}_setTriggersSubmenu(e){this._triggersSubmenu=e,this._changeDetectorRef.markForCheck()}_hasFocus(){return this._document&&this._document.activeElement===this._getHostElement()}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=y({type:n,selectors:[["","mat-menu-item",""]],hostAttrs:[1,"mat-mdc-menu-item","mat-focus-indicator"],hostVars:8,hostBindings:function(t,i){t&1&&_("click",function(m){return i._checkDisabled(m)})("mouseenter",function(){return i._handleMouseEnter()}),t&2&&(b("role",i.role)("tabindex",i._getTabIndex())("aria-disabled",i.disabled)("disabled",i.disabled||null),E("mat-mdc-menu-item-highlighted",i._highlighted)("mat-mdc-menu-item-submenu-trigger",i._triggersSubmenu))},inputs:{role:"role",disabled:[2,"disabled","disabled",A],disableRipple:[2,"disableRipple","disableRipple",A]},exportAs:["matMenuItem"],attrs:Yi,ngContentSelectors:Ji,decls:5,vars:3,consts:[[1,"mat-mdc-menu-item-text"],["matRipple","",1,"mat-mdc-menu-ripple",3,"matRippleDisabled","matRippleTrigger"],["viewBox","0 0 5 10","focusable","false","aria-hidden","true",1,"mat-mdc-menu-submenu-icon"],["points","0,0 5,5 0,10"]],template:function(t,i){t&1&&(j(Wi),M(0),l(1,"span",0),M(2,1),d(),P(3,"div",1),f(4,Qi,2,0,":svg:svg",2)),t&2&&(r(3),p("matRippleDisabled",i.disableRipple||i.disabled)("matRippleTrigger",i._getHostElement()),r(),g(i._triggersSubmenu?4:-1))},dependencies:[De],encapsulation:2,changeDetection:0})}return n})();var jn=new L("MatMenuContent"),Nr=(()=>{class n{_template=s(be);_appRef=s(wt);_injector=s(ge);_viewContainerRef=s(ye);_document=s(_e);_changeDetectorRef=s(q);_portal;_outlet;_attached=new F;constructor(){}attach(e={}){this._portal||(this._portal=new we(this._template,this._viewContainerRef)),this.detach(),this._outlet||(this._outlet=new Ht(this._document.createElement("div"),this._appRef,this._injector));let t=this._template.elementRef.nativeElement;t.parentNode.insertBefore(this._outlet.outletElement,t),this._changeDetectorRef.markForCheck(),this._portal.attach(this._outlet,e),this._attached.next()}detach(){this._portal?.isAttached&&this._portal.detach()}ngOnDestroy(){this.detach(),this._outlet?.dispose()}static \u0275fac=function(t){return new(t||n)};static \u0275dir=T({type:n,selectors:[["ng-template","matMenuContent",""]],features:[z([{provide:jn,useExisting:n}])]})}return n})(),Xi=new L("mat-menu-default-options",{providedIn:"root",factory:()=>({overlapTrigger:!1,xPosition:"after",yPosition:"below",backdropClass:"cdk-overlay-transparent-backdrop"})}),pt="_mat-menu-enter",Ze="_mat-menu-exit",me=(()=>{class n{_elementRef=s(H);_changeDetectorRef=s(q);_injector=s(ge);_keyManager;_xPosition;_yPosition;_firstItemFocusRef;_exitFallbackTimeout;_animationsDisabled=Ie();_allItems;_directDescendantItems=new Ae;_classList={};_panelAnimationState="void";_animationDone=new F;_isAnimating=R(!1);parentMenu;direction;overlayPanelClass;backdropClass;ariaLabel;ariaLabelledby;ariaDescribedby;get xPosition(){return this._xPosition}set xPosition(e){this._xPosition=e,this.setPositionClasses()}get yPosition(){return this._yPosition}set yPosition(e){this._yPosition=e,this.setPositionClasses()}templateRef;items;lazyContent;overlapTrigger=!1;hasBackdrop;set panelClass(e){let t=this._previousPanelClass,i=J({},this._classList);t&&t.length&&t.split(" ").forEach(a=>{i[a]=!1}),this._previousPanelClass=e,e&&e.length&&(e.split(" ").forEach(a=>{i[a]=!0}),this._elementRef.nativeElement.className=""),this._classList=i}_previousPanelClass;get classList(){return this.panelClass}set classList(e){this.panelClass=e}closed=new h;close=this.closed;panelId=s(X).getId("mat-menu-panel-");constructor(){let e=s(Xi);this.overlayPanelClass=e.overlayPanelClass||"",this._xPosition=e.xPosition,this._yPosition=e.yPosition,this.backdropClass=e.backdropClass,this.overlapTrigger=e.overlapTrigger,this.hasBackdrop=e.hasBackdrop}ngOnInit(){this.setPositionClasses()}ngAfterContentInit(){this._updateDirectDescendants(),this._keyManager=new Be(this._directDescendantItems).withWrap().withTypeAhead().withHomeAndEnd(),this._keyManager.tabOut.subscribe(()=>this.closed.emit("tab")),this._directDescendantItems.changes.pipe(G(this._directDescendantItems),fe(e=>ee(...e.map(t=>t._focused)))).subscribe(e=>this._keyManager.updateActiveItem(e)),this._directDescendantItems.changes.subscribe(e=>{let t=this._keyManager;if(this._panelAnimationState==="enter"&&t.activeItem?._hasFocus()){let i=e.toArray(),a=Math.max(0,Math.min(i.length-1,t.activeItemIndex||0));i[a]&&!i[a].disabled?t.setActiveItem(a):t.setNextItemActive()}})}ngOnDestroy(){this._keyManager?.destroy(),this._directDescendantItems.destroy(),this.closed.complete(),this._firstItemFocusRef?.destroy(),clearTimeout(this._exitFallbackTimeout)}_hovered(){return this._directDescendantItems.changes.pipe(G(this._directDescendantItems),fe(t=>ee(...t.map(i=>i._hovered))))}addItem(e){}removeItem(e){}_handleKeydown(e){let t=e.keyCode,i=this._keyManager;switch(t){case 27:Ve(e)||(e.preventDefault(),this.closed.emit("keydown"));break;case 37:this.parentMenu&&this.direction==="ltr"&&this.closed.emit("keydown");break;case 39:this.parentMenu&&this.direction==="rtl"&&this.closed.emit("keydown");break;default:(t===38||t===40)&&i.setFocusOrigin("keyboard"),i.onKeydown(e);return}}focusFirstItem(e="program"){this._firstItemFocusRef?.destroy(),this._firstItemFocusRef=vt(()=>{let t=this._resolvePanel();if(!t||!t.contains(document.activeElement)){let i=this._keyManager;i.setFocusOrigin(e).setFirstItemActive(),!i.activeItem&&t&&t.focus()}},{injector:this._injector})}resetActiveItem(){this._keyManager.setActiveItem(-1)}setElevation(e){}setPositionClasses(e=this.xPosition,t=this.yPosition){this._classList=ue(J({},this._classList),{"mat-menu-before":e==="before","mat-menu-after":e==="after","mat-menu-above":t==="above","mat-menu-below":t==="below"}),this._changeDetectorRef.markForCheck()}_onAnimationDone(e){let t=e===Ze;(t||e===pt)&&(t&&(clearTimeout(this._exitFallbackTimeout),this._exitFallbackTimeout=void 0),this._animationDone.next(t?"void":"enter"),this._isAnimating.set(!1))}_onAnimationStart(e){(e===pt||e===Ze)&&this._isAnimating.set(!0)}_setIsOpen(e){if(this._panelAnimationState=e?"enter":"void",e){if(this._keyManager.activeItemIndex===0){let t=this._resolvePanel();t&&(t.scrollTop=0)}}else this._animationsDisabled||(this._exitFallbackTimeout=setTimeout(()=>this._onAnimationDone(Ze),200));this._animationsDisabled&&setTimeout(()=>{this._onAnimationDone(e?pt:Ze)}),this._changeDetectorRef.markForCheck()}_updateDirectDescendants(){this._allItems.changes.pipe(G(this._allItems)).subscribe(e=>{this._directDescendantItems.reset(e.filter(t=>t._parentMenu===this)),this._directDescendantItems.notifyOnChanges()})}_resolvePanel(){let e=null;return this._directDescendantItems.length&&(e=this._directDescendantItems.first._getHostElement().closest('[role="menu"]')),e}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=y({type:n,selectors:[["mat-menu"]],contentQueries:function(t,i,a){if(t&1&&U(a,jn,5)(a,Ee,5)(a,Ee,4),t&2){let m;S(m=k())&&(i.lazyContent=m.first),S(m=k())&&(i._allItems=m),S(m=k())&&(i.items=m)}},viewQuery:function(t,i){if(t&1&&re(be,5),t&2){let a;S(a=k())&&(i.templateRef=a.first)}},hostVars:3,hostBindings:function(t,i){t&2&&b("aria-label",null)("aria-labelledby",null)("aria-describedby",null)},inputs:{backdropClass:"backdropClass",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],xPosition:"xPosition",yPosition:"yPosition",overlapTrigger:[2,"overlapTrigger","overlapTrigger",A],hasBackdrop:[2,"hasBackdrop","hasBackdrop",e=>e==null?null:A(e)],panelClass:[0,"class","panelClass"],classList:"classList"},outputs:{closed:"closed",close:"close"},exportAs:["matMenu"],features:[z([{provide:ut,useExisting:n}])],ngContentSelectors:Gi,decls:1,vars:0,consts:[["tabindex","-1","role","menu",1,"mat-mdc-menu-panel",3,"click","animationstart","animationend","animationcancel","id"],[1,"mat-mdc-menu-content"]],template:function(t,i){t&1&&(j(),Mt(0,Ui,3,12,"ng-template"))},styles:[`mat-menu{display:none}.mat-mdc-menu-content{margin:0;padding:8px 0;outline:0}.mat-mdc-menu-content,.mat-mdc-menu-content .mat-mdc-menu-item .mat-mdc-menu-item-text{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;flex:1;white-space:normal;font-family:var(--mat-menu-item-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mat-menu-item-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mat-menu-item-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-menu-item-label-text-tracking, var(--mat-sys-label-large-tracking));font-weight:var(--mat-menu-item-label-text-weight, var(--mat-sys-label-large-weight))}@keyframes _mat-menu-enter{from{opacity:0;transform:scale(0.8)}to{opacity:1;transform:none}}@keyframes _mat-menu-exit{from{opacity:1}to{opacity:0}}.mat-mdc-menu-panel{min-width:112px;max-width:280px;overflow:auto;box-sizing:border-box;outline:0;animation:_mat-menu-enter 120ms cubic-bezier(0, 0, 0.2, 1);border-radius:var(--mat-menu-container-shape, var(--mat-sys-corner-extra-small));background-color:var(--mat-menu-container-color, var(--mat-sys-surface-container));box-shadow:var(--mat-menu-container-elevation-shadow, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12));will-change:transform,opacity}.mat-mdc-menu-panel.mat-menu-panel-exit-animation{animation:_mat-menu-exit 100ms 25ms linear forwards}.mat-mdc-menu-panel.mat-menu-panel-animations-disabled{animation:none}.mat-mdc-menu-panel.mat-menu-panel-animating{pointer-events:none}.mat-mdc-menu-panel.mat-menu-panel-animating:has(.mat-mdc-menu-content:empty){display:none}@media(forced-colors: active){.mat-mdc-menu-panel{outline:solid 1px}}.mat-mdc-menu-panel .mat-divider{border-top-color:var(--mat-menu-divider-color, var(--mat-sys-surface-variant));margin-bottom:var(--mat-menu-divider-bottom-spacing, 8px);margin-top:var(--mat-menu-divider-top-spacing, 8px)}.mat-mdc-menu-item{display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;padding:0;cursor:pointer;width:100%;text-align:left;box-sizing:border-box;color:inherit;font-size:inherit;background:none;text-decoration:none;margin:0;min-height:48px;padding-left:var(--mat-menu-item-leading-spacing, 12px);padding-right:var(--mat-menu-item-trailing-spacing, 12px);-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-menu-item::-moz-focus-inner{border:0}[dir=rtl] .mat-mdc-menu-item{padding-left:var(--mat-menu-item-trailing-spacing, 12px);padding-right:var(--mat-menu-item-leading-spacing, 12px)}.mat-mdc-menu-item:has(.material-icons,mat-icon,[matButtonIcon]){padding-left:var(--mat-menu-item-with-icon-leading-spacing, 12px);padding-right:var(--mat-menu-item-with-icon-trailing-spacing, 12px)}[dir=rtl] .mat-mdc-menu-item:has(.material-icons,mat-icon,[matButtonIcon]){padding-left:var(--mat-menu-item-with-icon-trailing-spacing, 12px);padding-right:var(--mat-menu-item-with-icon-leading-spacing, 12px)}.mat-mdc-menu-item,.mat-mdc-menu-item:visited,.mat-mdc-menu-item:link{color:var(--mat-menu-item-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-menu-item .mat-icon-no-color,.mat-mdc-menu-item .mat-mdc-menu-submenu-icon{color:var(--mat-menu-item-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-menu-item[disabled]{cursor:default;opacity:.38}.mat-mdc-menu-item[disabled]::after{display:block;position:absolute;content:"";top:0;left:0;bottom:0;right:0}.mat-mdc-menu-item:focus{outline:0}.mat-mdc-menu-item .mat-icon{flex-shrink:0;margin-right:var(--mat-menu-item-spacing, 12px);height:var(--mat-menu-item-icon-size, 24px);width:var(--mat-menu-item-icon-size, 24px)}[dir=rtl] .mat-mdc-menu-item{text-align:right}[dir=rtl] .mat-mdc-menu-item .mat-icon{margin-right:0;margin-left:var(--mat-menu-item-spacing, 12px)}.mat-mdc-menu-item:not([disabled]):hover{background-color:var(--mat-menu-item-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}.mat-mdc-menu-item:not([disabled]).cdk-program-focused,.mat-mdc-menu-item:not([disabled]).cdk-keyboard-focused,.mat-mdc-menu-item:not([disabled]).mat-mdc-menu-item-highlighted{background-color:var(--mat-menu-item-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent))}@media(forced-colors: active){.mat-mdc-menu-item{margin-top:1px}}.mat-mdc-menu-submenu-icon{width:var(--mat-menu-item-icon-size, 24px);height:10px;fill:currentColor;padding-left:var(--mat-menu-item-spacing, 12px)}[dir=rtl] .mat-mdc-menu-submenu-icon{padding-right:var(--mat-menu-item-spacing, 12px);padding-left:0}[dir=rtl] .mat-mdc-menu-submenu-icon polygon{transform:scaleX(-1);transform-origin:center}@media(forced-colors: active){.mat-mdc-menu-submenu-icon{fill:CanvasText}}.mat-mdc-menu-item .mat-mdc-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}
|
|
3
|
+
`],encapsulation:2,changeDetection:0})}return n})();var En=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275dir=T({type:n,selectors:[["mat-panel-title"]],hostAttrs:[1,"mat-expansion-panel-header-title"]})}return n})(),Tn=(()=>{class n extends wn{_keyManager;_ownHeaders=new Ae;_headers;hideToggle=!1;displayMode="default";togglePosition="after";ngAfterContentInit(){this._headers.changes.pipe(G(this._headers)).subscribe(e=>{this._ownHeaders.reset(e.filter(t=>t.panel.accordion===this)),this._ownHeaders.notifyOnChanges()}),this._keyManager=new Be(this._ownHeaders).withWrap().withHomeAndEnd()}_handleHeaderKeydown(e){this._keyManager.onKeydown(e)}_handleHeaderFocus(e){this._keyManager.updateActiveItem(e)}ngOnDestroy(){super.ngOnDestroy(),this._keyManager?.destroy(),this._ownHeaders.destroy()}static \u0275fac=(()=>{let e;return function(i){return(e||(e=xt(n)))(i||n)}})();static \u0275dir=T({type:n,selectors:[["mat-accordion"]],contentQueries:function(t,i,a){if(t&1&&U(a,mt,5),t&2){let m;S(m=k())&&(i._headers=m)}},hostAttrs:[1,"mat-accordion"],hostVars:2,hostBindings:function(t,i){t&2&&E("mat-accordion-multi",i.multi)},inputs:{hideToggle:[2,"hideToggle","hideToggle",A],displayMode:"displayMode",togglePosition:"togglePosition"},exportAs:["matAccordion"],features:[z([{provide:st,useExisting:n}]),xe]})}return n})(),Pn=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275mod=oe({type:n});static \u0275inj=te({imports:[Dn,qt,He]})}return n})();var Di=["searchInput"],Si=[[["","toolbar-start",""]],[["","toolbar-extras",""]]],ki=["[toolbar-start]","[toolbar-extras]"],An=n=>({$implicit:n}),Ei=()=>[],Ti=(n,o)=>o.groupKey,Fn=(n,o)=>o.id;function Pi(n,o){if(n&1){let e=D();l(0,"button",14),_("click",function(){x(e);let i=c();return v(i.clearSearch())}),l(1,"mat-icon"),u(2,"close"),d()()}}function Oi(n,o){if(n&1){let e=D();l(0,"button",15),_("click",function(){x(e);let i=c();return v(i.onCreateRequested())}),l(1,"mat-icon"),u(2,"add"),d()()}}function Ai(n,o){if(n&1&&(l(0,"p",11),u(1),d()),n&2){let e=c();r(),C(e.emptyMessage)}}function Fi(n,o){if(n&1&&(l(0,"mat-expansion-panel-header")(1,"mat-panel-title",18),u(2),d()()),n&2){let e=c().$implicit;r(2),C(e.groupLabel)}}function Ri(n,o){n&1&&ot(0)}function Ni(n,o){if(n&1&&ae(0,Ri,1,0,"ng-container",19),n&2){let e=o.$implicit,t=c(3),i=Ce(18);p("ngTemplateOutlet",t.itemTemplate??i)("ngTemplateOutletContext",at(2,An,e))}}function ji(n,o){if(n&1&&(l(0,"mat-expansion-panel",16),f(1,Fi,3,1,"mat-expansion-panel-header"),l(2,"div",17),w(3,Ni,1,4,"ng-container",null,Fn),d()()),n&2){let e=o.$implicit,t=c(2);p("expanded",!0),r(),g(e.groupLabel?1:-1),r(),Y("--card-min-width",t.cardMinWidth),r(),I(e.items)}}function Li(n,o){if(n&1&&(l(0,"mat-accordion",12),w(1,ji,5,4,"mat-expansion-panel",16,Ti),d()),n&2){let e=c();p("multi",!0),r(),I(e.groupedItems())}}function Vi(n,o){n&1&&ot(0)}function Bi(n,o){if(n&1&&ae(0,Vi,1,0,"ng-container",19),n&2){let e=o.$implicit,t=c(2),i=Ce(18);p("ngTemplateOutlet",t.itemTemplate??i)("ngTemplateOutletContext",at(2,An,e))}}function Hi(n,o){if(n&1&&(l(0,"div",17),w(1,Bi,1,4,"ng-container",null,Fn),d()),n&2){let e=c();Y("--card-min-width",e.cardMinWidth),r(),I(e.filteredItems())}}function zi(n,o){if(n&1){let e=D();l(0,"ds-entity-card",20),_("selected",function(i){x(e);let a=c();return v(a.onItemSelected(i))}),d()}if(n&2){let e=o.$implicit;p("id",e.id)("name",e.name)("description",e.description)("badges",e.badges??Et(4,Ei))}}var On=class n{title;items=[];searchPlaceholder="Filter\u2026";emptyMessage="No items found.";autoFocusSearch=!1;cardMinWidth="260px";contentMaxWidth="900px";showCreate=!1;itemTemplate;itemSelected=new h;createRequested=new h;searchInputRef;itemsSignal=R([]);searchQuery=R("");isSearchActive=B(()=>this.searchQuery().trim().length>0);filteredItems=B(()=>{let o=this.searchQuery().toLowerCase().trim(),e=this.itemsSignal();return o?e.filter(t=>t.name.toLowerCase().includes(o)||(t.description?.toLowerCase().includes(o)??!1)):e});groupedItems=B(()=>{let o=this.filteredItems(),e=[],t=new Map;for(let a of o){if(!a.groupKey){e.push(a);continue}t.has(a.groupKey)||t.set(a.groupKey,{groupKey:a.groupKey,groupLabel:a.groupLabel??a.groupKey,items:[]}),t.get(a.groupKey).items.push(a)}let i=[];return e.length>0&&i.push({groupKey:"",groupLabel:"",items:e}),i.push(...t.values()),i});hasGroups=B(()=>!this.isSearchActive()&&this.groupedItems().some(o=>o.groupKey!==""));ngOnChanges(o){o.items&&this.itemsSignal.set(this.items)}ngAfterViewInit(){this.autoFocusSearch&&setTimeout(()=>this.searchInputRef?.nativeElement.focus(),0)}onSearchChange(o){this.searchQuery.set(o)}clearSearch(){this.searchQuery.set(""),this.searchInputRef?.nativeElement.focus()}onItemSelected(o){this.itemSelected.emit(o)}onCreateRequested(){this.createRequested.emit()}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=y({type:n,selectors:[["ds-entity-list"]],viewQuery:function(e,t){if(e&1&&re(Di,5),e&2){let i;S(i=k())&&(t.searchInputRef=i.first)}},hostVars:1,hostBindings:function(e,t){e&2&&b("title",null)},inputs:{title:"title",items:"items",searchPlaceholder:"searchPlaceholder",emptyMessage:"emptyMessage",autoFocusSearch:"autoFocusSearch",cardMinWidth:"cardMinWidth",contentMaxWidth:"contentMaxWidth",showCreate:"showCreate",itemTemplate:"itemTemplate"},outputs:{itemSelected:"itemSelected",createRequested:"createRequested"},features:[ie],ngContentSelectors:ki,decls:19,vars:8,consts:[["searchInput",""],["defaultCard",""],[1,"entity-list"],[1,"entity-list__toolbar"],[1,"entity-list__title"],["appearance","fill","subscriptSizing","dynamic",1,"entity-list__search-field"],["matPrefix",""],["matInput","","type","search","autocomplete","off",3,"ngModelChange","keydown.escape","placeholder","ngModel"],["matSuffix","","mat-icon-button","","aria-label","Clear"],["mat-icon-button","","type","button","title","Create",1,"entity-list__toolbar-btn","entity-list__toolbar-btn--primary"],[1,"entity-list__content"],[1,"entity-list__empty"],[3,"multi"],[1,"entity-list__grid",3,"--card-min-width"],["matSuffix","","mat-icon-button","","aria-label","Clear",3,"click"],["mat-icon-button","","type","button","title","Create",1,"entity-list__toolbar-btn","entity-list__toolbar-btn--primary",3,"click"],[1,"entity-list__panel",3,"expanded"],[1,"entity-list__grid"],[1,"entity-list__panel-title"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"selected","id","name","description","badges"]],template:function(e,t){e&1&&(j(Si),l(0,"div",2)(1,"div",3),M(2),l(3,"h1",4),u(4),d(),l(5,"mat-form-field",5)(6,"mat-icon",6),u(7,"search"),d(),l(8,"input",7,0),_("ngModelChange",function(a){return t.onSearchChange(a)})("keydown.escape",function(){return t.clearSearch()}),d(),f(10,Pi,3,0,"button",8),d(),M(11,1),f(12,Oi,3,0,"button",9),d(),l(13,"div",10),f(14,Ai,2,1,"p",11)(15,Li,3,1,"mat-accordion",12)(16,Hi,3,2,"div",13),d()(),ae(17,zi,1,5,"ng-template",null,1,Tt)),e&2&&(r(4),C(t.title),r(4),p("placeholder",t.searchPlaceholder)("ngModel",t.searchQuery()),r(2),g(t.isSearchActive()?10:-1),r(2),g(t.showCreate?12:-1),r(),Y("max-width",t.contentMaxWidth),r(),g(t.filteredItems().length===0?14:t.hasGroups()?15:16))},dependencies:[hn,Ke,$e,rn,Qt,le,qe,Pn,Tn,ct,mt,En,tn,en,Xt,Zt,gn,fn,Xe,Rt],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;flex:1;min-height:0}.entity-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;box-sizing:border-box}.entity-list__toolbar[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-bottom:1px solid var(--color-border, rgba(0, 0, 0, .1));height:56px;width:100%;box-sizing:border-box}.entity-list__title[_ngcontent-%COMP%]{flex:0 0 auto;margin:0;font-size:1rem;font-weight:600;color:var(--color-text, #1d1d1f);white-space:nowrap}.entity-list__search-field[_ngcontent-%COMP%]{margin-left:auto;padding-left:20px;flex:0 1 240px;min-width:80px;--mat-form-field-container-height: 36px;--mat-form-field-container-vertical-padding: 6px;font-size:.875rem;--mat-form-field-filled-with-label-container-padding-top: 0;--mdc-filled-text-field-container-color: transparent;--mdc-filled-text-field-hover-container-color: transparent;--mdc-filled-text-field-focus-container-color: transparent;--mdc-filled-text-field-active-indicator-color: transparent;--mdc-filled-text-field-hover-active-indicator-color: transparent;--mdc-filled-text-field-focus-active-indicator-color: transparent;--mdc-filled-text-field-active-indicator-height: 0}.entity-list__toolbar-btn[_ngcontent-%COMP%]{flex-shrink:0;color:var(--color-text-secondary, #6e6e73)}.entity-list__toolbar-btn[_ngcontent-%COMP%]:hover{color:var(--color-text, #1d1d1f)}.entity-list__toolbar-btn--primary[_ngcontent-%COMP%]{color:var(--color-primary, #007aff)}.entity-list__toolbar-btn--primary[_ngcontent-%COMP%]:hover{color:var(--color-primary-hover, #0051d5)}.entity-list__content[_ngcontent-%COMP%]{flex:1;min-height:0;overflow-y:auto;width:100%;max-width:900px;margin:0 auto;padding:.75rem 1rem;box-sizing:border-box}.entity-list__empty[_ngcontent-%COMP%]{margin:0;padding:2rem 0;text-align:center;color:var(--color-text-secondary, #6e6e73);font-size:.9375rem}.entity-list__panel[_ngcontent-%COMP%]{background:transparent;box-shadow:none!important}.entity-list__panel[_ngcontent-%COMP%] + .entity-list__panel[_ngcontent-%COMP%]{border-top:1px solid var(--color-border-light, rgba(40, 40, 40, .08))}.entity-list__panel-title[_ngcontent-%COMP%]{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary, #6e6e73)}.entity-list__grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--card-min-width, 260px),1fr));gap:.75rem;padding:.5rem 0}"]})};var Yi=["mat-menu-item",""],Wi=[[["mat-icon"],["","matMenuItemIcon",""]],"*"],Ji=["mat-icon, [matMenuItemIcon]","*"];function Qi(n,o){n&1&&(Pe(),l(0,"svg",2),P(1,"polygon",3),d())}var Gi=["*"];function Ui(n,o){if(n&1){let e=D();O(0,"div",0),ve("click",function(){x(e);let i=c();return v(i.closed.emit("click"))})("animationstart",function(i){x(e);let a=c();return v(a._onAnimationStart(i.animationName))})("animationend",function(i){x(e);let a=c();return v(a._onAnimationDone(i.animationName))})("animationcancel",function(i){x(e);let a=c();return v(a._onAnimationDone(i.animationName))}),O(1,"div",1),M(2),N()()}if(n&2){let e=c();se(e._classList),E("mat-menu-panel-animations-disabled",e._animationsDisabled)("mat-menu-panel-exit-animation",e._panelAnimationState==="void")("mat-menu-panel-animating",e._isAnimating()),Ne("id",e.panelId),b("aria-label",e.ariaLabel||null)("aria-labelledby",e.ariaLabelledby||null)("aria-describedby",e.ariaDescribedby||null)}}var ut=new L("MAT_MENU_PANEL"),Ee=(()=>{class n{_elementRef=s(H);_document=s(_e);_focusMonitor=s(Me);_parentMenu=s(ut,{optional:!0});_changeDetectorRef=s(q);role="menuitem";disabled=!1;disableRipple=!1;_hovered=new F;_focused=new F;_highlighted=!1;_triggersSubmenu=!1;constructor(){s(Le).load(ze),this._parentMenu?.addItem?.(this)}focus(e,t){this._focusMonitor&&e?this._focusMonitor.focusVia(this._getHostElement(),e,t):this._getHostElement().focus(t),this._focused.next(this)}ngAfterViewInit(){this._focusMonitor&&this._focusMonitor.monitor(this._elementRef,!1)}ngOnDestroy(){this._focusMonitor&&this._focusMonitor.stopMonitoring(this._elementRef),this._parentMenu&&this._parentMenu.removeItem&&this._parentMenu.removeItem(this),this._hovered.complete(),this._focused.complete()}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._elementRef.nativeElement}_checkDisabled(e){this.disabled&&(e.preventDefault(),e.stopPropagation())}_handleMouseEnter(){this._hovered.next(this)}getLabel(){let e=this._elementRef.nativeElement.cloneNode(!0),t=e.querySelectorAll("mat-icon, .material-icons");for(let i=0;i<t.length;i++)t[i].remove();return e.textContent?.trim()||""}_setHighlighted(e){this._highlighted=e,this._changeDetectorRef.markForCheck()}_setTriggersSubmenu(e){this._triggersSubmenu=e,this._changeDetectorRef.markForCheck()}_hasFocus(){return this._document&&this._document.activeElement===this._getHostElement()}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=y({type:n,selectors:[["","mat-menu-item",""]],hostAttrs:[1,"mat-mdc-menu-item","mat-focus-indicator"],hostVars:8,hostBindings:function(t,i){t&1&&_("click",function(m){return i._checkDisabled(m)})("mouseenter",function(){return i._handleMouseEnter()}),t&2&&(b("role",i.role)("tabindex",i._getTabIndex())("aria-disabled",i.disabled)("disabled",i.disabled||null),E("mat-mdc-menu-item-highlighted",i._highlighted)("mat-mdc-menu-item-submenu-trigger",i._triggersSubmenu))},inputs:{role:"role",disabled:[2,"disabled","disabled",A],disableRipple:[2,"disableRipple","disableRipple",A]},exportAs:["matMenuItem"],attrs:Yi,ngContentSelectors:Ji,decls:5,vars:3,consts:[[1,"mat-mdc-menu-item-text"],["matRipple","",1,"mat-mdc-menu-ripple",3,"matRippleDisabled","matRippleTrigger"],["viewBox","0 0 5 10","focusable","false","aria-hidden","true",1,"mat-mdc-menu-submenu-icon"],["points","0,0 5,5 0,10"]],template:function(t,i){t&1&&(j(Wi),M(0),l(1,"span",0),M(2,1),d(),P(3,"div",1),f(4,Qi,2,0,":svg:svg",2)),t&2&&(r(3),p("matRippleDisabled",i.disableRipple||i.disabled)("matRippleTrigger",i._getHostElement()),r(),g(i._triggersSubmenu?4:-1))},dependencies:[De],encapsulation:2,changeDetection:0})}return n})();var jn=new L("MatMenuContent"),Nr=(()=>{class n{_template=s(be);_appRef=s(wt);_injector=s(ge);_viewContainerRef=s(ye);_document=s(_e);_changeDetectorRef=s(q);_portal;_outlet;_attached=new F;constructor(){}attach(e={}){this._portal||(this._portal=new we(this._template,this._viewContainerRef)),this.detach(),this._outlet||(this._outlet=new Ht(this._document.createElement("div"),this._appRef,this._injector));let t=this._template.elementRef.nativeElement;t.parentNode.insertBefore(this._outlet.outletElement,t),this._changeDetectorRef.markForCheck(),this._portal.attach(this._outlet,e),this._attached.next()}detach(){this._portal?.isAttached&&this._portal.detach()}ngOnDestroy(){this.detach(),this._outlet?.dispose()}static \u0275fac=function(t){return new(t||n)};static \u0275dir=T({type:n,selectors:[["ng-template","matMenuContent",""]],features:[z([{provide:jn,useExisting:n}])]})}return n})(),Xi=new L("mat-menu-default-options",{providedIn:"root",factory:()=>({overlapTrigger:!1,xPosition:"after",yPosition:"below",backdropClass:"cdk-overlay-transparent-backdrop"})}),pt="_mat-menu-enter",Ze="_mat-menu-exit",me=(()=>{class n{_elementRef=s(H);_changeDetectorRef=s(q);_injector=s(ge);_keyManager;_xPosition;_yPosition;_firstItemFocusRef;_exitFallbackTimeout;_animationsDisabled=Ie();_allItems;_directDescendantItems=new Ae;_classList={};_panelAnimationState="void";_animationDone=new F;_isAnimating=R(!1);parentMenu;direction;overlayPanelClass;backdropClass;ariaLabel;ariaLabelledby;ariaDescribedby;get xPosition(){return this._xPosition}set xPosition(e){this._xPosition=e,this.setPositionClasses()}get yPosition(){return this._yPosition}set yPosition(e){this._yPosition=e,this.setPositionClasses()}templateRef;items;lazyContent;overlapTrigger=!1;hasBackdrop;set panelClass(e){let t=this._previousPanelClass,i=J({},this._classList);t&&t.length&&t.split(" ").forEach(a=>{i[a]=!1}),this._previousPanelClass=e,e&&e.length&&(e.split(" ").forEach(a=>{i[a]=!0}),this._elementRef.nativeElement.className=""),this._classList=i}_previousPanelClass;get classList(){return this.panelClass}set classList(e){this.panelClass=e}closed=new h;close=this.closed;panelId=s(X).getId("mat-menu-panel-");constructor(){let e=s(Xi);this.overlayPanelClass=e.overlayPanelClass||"",this._xPosition=e.xPosition,this._yPosition=e.yPosition,this.backdropClass=e.backdropClass,this.overlapTrigger=e.overlapTrigger,this.hasBackdrop=e.hasBackdrop}ngOnInit(){this.setPositionClasses()}ngAfterContentInit(){this._updateDirectDescendants(),this._keyManager=new Be(this._directDescendantItems).withWrap().withTypeAhead().withHomeAndEnd(),this._keyManager.tabOut.subscribe(()=>this.closed.emit("tab")),this._directDescendantItems.changes.pipe(G(this._directDescendantItems),fe(e=>ee(...e.map(t=>t._focused)))).subscribe(e=>this._keyManager.updateActiveItem(e)),this._directDescendantItems.changes.subscribe(e=>{let t=this._keyManager;if(this._panelAnimationState==="enter"&&t.activeItem?._hasFocus()){let i=e.toArray(),a=Math.max(0,Math.min(i.length-1,t.activeItemIndex||0));i[a]&&!i[a].disabled?t.setActiveItem(a):t.setNextItemActive()}})}ngOnDestroy(){this._keyManager?.destroy(),this._directDescendantItems.destroy(),this.closed.complete(),this._firstItemFocusRef?.destroy(),clearTimeout(this._exitFallbackTimeout)}_hovered(){return this._directDescendantItems.changes.pipe(G(this._directDescendantItems),fe(t=>ee(...t.map(i=>i._hovered))))}addItem(e){}removeItem(e){}_handleKeydown(e){let t=e.keyCode,i=this._keyManager;switch(t){case 27:Ve(e)||(e.preventDefault(),this.closed.emit("keydown"));break;case 37:this.parentMenu&&this.direction==="ltr"&&this.closed.emit("keydown");break;case 39:this.parentMenu&&this.direction==="rtl"&&this.closed.emit("keydown");break;default:(t===38||t===40)&&i.setFocusOrigin("keyboard"),i.onKeydown(e);return}}focusFirstItem(e="program"){this._firstItemFocusRef?.destroy(),this._firstItemFocusRef=vt(()=>{let t=this._resolvePanel();if(!t||!t.contains(document.activeElement)){let i=this._keyManager;i.setFocusOrigin(e).setFirstItemActive(),!i.activeItem&&t&&t.focus()}},{injector:this._injector})}resetActiveItem(){this._keyManager.setActiveItem(-1)}setElevation(e){}setPositionClasses(e=this.xPosition,t=this.yPosition){this._classList=ue(J({},this._classList),{"mat-menu-before":e==="before","mat-menu-after":e==="after","mat-menu-above":t==="above","mat-menu-below":t==="below"}),this._changeDetectorRef.markForCheck()}_onAnimationDone(e){let t=e===Ze;(t||e===pt)&&(t&&(clearTimeout(this._exitFallbackTimeout),this._exitFallbackTimeout=void 0),this._animationDone.next(t?"void":"enter"),this._isAnimating.set(!1))}_onAnimationStart(e){(e===pt||e===Ze)&&this._isAnimating.set(!0)}_setIsOpen(e){if(this._panelAnimationState=e?"enter":"void",e){if(this._keyManager.activeItemIndex===0){let t=this._resolvePanel();t&&(t.scrollTop=0)}}else this._animationsDisabled||(this._exitFallbackTimeout=setTimeout(()=>this._onAnimationDone(Ze),200));this._animationsDisabled&&setTimeout(()=>{this._onAnimationDone(e?pt:Ze)}),this._changeDetectorRef.markForCheck()}_updateDirectDescendants(){this._allItems.changes.pipe(G(this._allItems)).subscribe(e=>{this._directDescendantItems.reset(e.filter(t=>t._parentMenu===this)),this._directDescendantItems.notifyOnChanges()})}_resolvePanel(){let e=null;return this._directDescendantItems.length&&(e=this._directDescendantItems.first._getHostElement().closest('[role="menu"]')),e}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=y({type:n,selectors:[["mat-menu"]],contentQueries:function(t,i,a){if(t&1&&U(a,jn,5)(a,Ee,5)(a,Ee,4),t&2){let m;S(m=k())&&(i.lazyContent=m.first),S(m=k())&&(i._allItems=m),S(m=k())&&(i.items=m)}},viewQuery:function(t,i){if(t&1&&re(be,5),t&2){let a;S(a=k())&&(i.templateRef=a.first)}},hostVars:3,hostBindings:function(t,i){t&2&&b("aria-label",null)("aria-labelledby",null)("aria-describedby",null)},inputs:{backdropClass:"backdropClass",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],xPosition:"xPosition",yPosition:"yPosition",overlapTrigger:[2,"overlapTrigger","overlapTrigger",A],hasBackdrop:[2,"hasBackdrop","hasBackdrop",e=>e==null?null:A(e)],panelClass:[0,"class","panelClass"],classList:"classList"},outputs:{closed:"closed",close:"close"},exportAs:["matMenu"],features:[z([{provide:ut,useExisting:n}])],ngContentSelectors:Gi,decls:1,vars:0,consts:[["tabindex","-1","role","menu",1,"mat-mdc-menu-panel",3,"click","animationstart","animationend","animationcancel","id"],[1,"mat-mdc-menu-content"]],template:function(t,i){t&1&&(j(),Mt(0,Ui,3,12,"ng-template"))},styles:[`mat-menu{display:none}.mat-mdc-menu-content{margin:0;padding:8px 0;outline:0}.mat-mdc-menu-content,.mat-mdc-menu-content .mat-mdc-menu-item .mat-mdc-menu-item-text{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;flex:1;white-space:normal;font-family:var(--mat-menu-item-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mat-menu-item-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mat-menu-item-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-menu-item-label-text-tracking, var(--mat-sys-label-large-tracking));font-weight:var(--mat-menu-item-label-text-weight, var(--mat-sys-label-large-weight))}@keyframes _mat-menu-enter{from{opacity:0;transform:scale(0.8)}to{opacity:1;transform:none}}@keyframes _mat-menu-exit{from{opacity:1}to{opacity:0}}.mat-mdc-menu-panel{min-width:112px;max-width:280px;overflow:auto;box-sizing:border-box;outline:0;animation:_mat-menu-enter 120ms cubic-bezier(0, 0, 0.2, 1);border-radius:var(--mat-menu-container-shape, var(--mat-sys-corner-extra-small));background-color:var(--mat-menu-container-color, var(--mat-sys-surface-container));box-shadow:var(--mat-menu-container-elevation-shadow, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12));will-change:transform,opacity}.mat-mdc-menu-panel.mat-menu-panel-exit-animation{animation:_mat-menu-exit 100ms 25ms linear forwards}.mat-mdc-menu-panel.mat-menu-panel-animations-disabled{animation:none}.mat-mdc-menu-panel.mat-menu-panel-animating{pointer-events:none}.mat-mdc-menu-panel.mat-menu-panel-animating:has(.mat-mdc-menu-content:empty){display:none}@media(forced-colors: active){.mat-mdc-menu-panel{outline:solid 1px}}.mat-mdc-menu-panel .mat-divider{border-top-color:var(--mat-menu-divider-color, var(--mat-sys-surface-variant));margin-bottom:var(--mat-menu-divider-bottom-spacing, 8px);margin-top:var(--mat-menu-divider-top-spacing, 8px)}.mat-mdc-menu-item{display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;padding:0;cursor:pointer;width:100%;text-align:left;box-sizing:border-box;color:inherit;font-size:inherit;background:none;text-decoration:none;margin:0;min-height:48px;padding-left:var(--mat-menu-item-leading-spacing, 12px);padding-right:var(--mat-menu-item-trailing-spacing, 12px);-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-menu-item::-moz-focus-inner{border:0}[dir=rtl] .mat-mdc-menu-item{padding-left:var(--mat-menu-item-trailing-spacing, 12px);padding-right:var(--mat-menu-item-leading-spacing, 12px)}.mat-mdc-menu-item:has(.material-icons,mat-icon,[matButtonIcon]){padding-left:var(--mat-menu-item-with-icon-leading-spacing, 12px);padding-right:var(--mat-menu-item-with-icon-trailing-spacing, 12px)}[dir=rtl] .mat-mdc-menu-item:has(.material-icons,mat-icon,[matButtonIcon]){padding-left:var(--mat-menu-item-with-icon-trailing-spacing, 12px);padding-right:var(--mat-menu-item-with-icon-leading-spacing, 12px)}.mat-mdc-menu-item,.mat-mdc-menu-item:visited,.mat-mdc-menu-item:link{color:var(--mat-menu-item-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-menu-item .mat-icon-no-color,.mat-mdc-menu-item .mat-mdc-menu-submenu-icon{color:var(--mat-menu-item-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-menu-item[disabled]{cursor:default;opacity:.38}.mat-mdc-menu-item[disabled]::after{display:block;position:absolute;content:"";top:0;left:0;bottom:0;right:0}.mat-mdc-menu-item:focus{outline:0}.mat-mdc-menu-item .mat-icon{flex-shrink:0;margin-right:var(--mat-menu-item-spacing, 12px);height:var(--mat-menu-item-icon-size, 24px);width:var(--mat-menu-item-icon-size, 24px)}[dir=rtl] .mat-mdc-menu-item{text-align:right}[dir=rtl] .mat-mdc-menu-item .mat-icon{margin-right:0;margin-left:var(--mat-menu-item-spacing, 12px)}.mat-mdc-menu-item:not([disabled]):hover{background-color:var(--mat-menu-item-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}.mat-mdc-menu-item:not([disabled]).cdk-program-focused,.mat-mdc-menu-item:not([disabled]).cdk-keyboard-focused,.mat-mdc-menu-item:not([disabled]).mat-mdc-menu-item-highlighted{background-color:var(--mat-menu-item-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent))}@media(forced-colors: active){.mat-mdc-menu-item{margin-top:1px}}.mat-mdc-menu-submenu-icon{width:var(--mat-menu-item-icon-size, 24px);height:10px;fill:currentColor;padding-left:var(--mat-menu-item-spacing, 12px)}[dir=rtl] .mat-mdc-menu-submenu-icon{padding-right:var(--mat-menu-item-spacing, 12px);padding-left:0}[dir=rtl] .mat-mdc-menu-submenu-icon polygon{transform:scaleX(-1);transform-origin:center}@media(forced-colors: active){.mat-mdc-menu-submenu-icon{fill:CanvasText}}.mat-mdc-menu-item .mat-mdc-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}
|
|
4
4
|
`],encapsulation:2,changeDetection:0})}return n})(),Zi=new L("mat-menu-scroll-strategy",{providedIn:"root",factory:()=>{let n=s(ge);return()=>Kt(n)}});var ce=new WeakMap,eo=(()=>{class n{_canHaveBackdrop;_element=s(H);_viewContainerRef=s(ye);_menuItemInstance=s(Ee,{optional:!0,self:!0});_dir=s(Vt,{optional:!0});_focusMonitor=s(Me);_ngZone=s(Oe);_injector=s(ge);_scrollStrategy=s(Zi);_changeDetectorRef=s(q);_animationsDisabled=Ie();_portal;_overlayRef=null;_menuOpen=!1;_closingActionsSubscription=$.EMPTY;_menuCloseSubscription=$.EMPTY;_pendingRemoval;_parentMaterialMenu;_parentInnerPadding;_openedBy=void 0;get _menu(){return this._menuInternal}set _menu(e){e!==this._menuInternal&&(this._menuInternal=e,this._menuCloseSubscription.unsubscribe(),e&&(this._parentMaterialMenu,this._menuCloseSubscription=e.close.subscribe(t=>{this._destroyMenu(t),(t==="click"||t==="tab")&&this._parentMaterialMenu&&this._parentMaterialMenu.closed.emit(t)})),this._menuItemInstance?._setTriggersSubmenu(this._triggersSubmenu()))}_menuInternal=null;constructor(e){this._canHaveBackdrop=e;let t=s(ut,{optional:!0});this._parentMaterialMenu=t instanceof me?t:void 0}ngOnDestroy(){this._menu&&this._ownsMenu(this._menu)&&ce.delete(this._menu),this._pendingRemoval?.unsubscribe(),this._menuCloseSubscription.unsubscribe(),this._closingActionsSubscription.unsubscribe(),this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=null)}get menuOpen(){return this._menuOpen}get dir(){return this._dir&&this._dir.value==="rtl"?"rtl":"ltr"}_triggersSubmenu(){return!!(this._menuItemInstance&&this._parentMaterialMenu&&this._menu)}_closeMenu(){this._menu?.close.emit()}_openMenu(e){if(this._triggerIsAriaDisabled())return;let t=this._menu;if(this._menuOpen||!t)return;this._pendingRemoval?.unsubscribe();let i=ce.get(t);ce.set(t,this),i&&i!==this&&i._closeMenu();let a=this._createOverlay(t),m=a.getConfig(),K=m.positionStrategy;this._setPosition(t,K),this._canHaveBackdrop?m.hasBackdrop=t.hasBackdrop==null?!this._triggersSubmenu():t.hasBackdrop:m.hasBackdrop=t.hasBackdrop??!1,a.hasAttached()||(a.attach(this._getPortal(t)),t.lazyContent?.attach(this.menuData)),this._closingActionsSubscription=this._menuClosingActions().subscribe(()=>this._closeMenu()),t.parentMenu=this._triggersSubmenu()?this._parentMaterialMenu:void 0,t.direction=this.dir,e&&t.focusFirstItem(this._openedBy||"program"),this._setIsMenuOpen(!0),t instanceof me&&(t._setIsOpen(!0),t._directDescendantItems.changes.pipe(bt(t.close)).subscribe(()=>{K.withLockedPosition(!1).reapplyLastPosition(),K.withLockedPosition(!0)}))}focus(e,t){this._focusMonitor&&e?this._focusMonitor.focusVia(this._element,e,t):this._element.nativeElement.focus(t)}_destroyMenu(e){let t=this._overlayRef,i=this._menu;!t||!this.menuOpen||(this._closingActionsSubscription.unsubscribe(),this._pendingRemoval?.unsubscribe(),i instanceof me&&this._ownsMenu(i)?(this._pendingRemoval=i._animationDone.pipe(Te(1)).subscribe(()=>{t.detach(),ce.has(i)||i.lazyContent?.detach()}),i._setIsOpen(!1)):(t.detach(),i?.lazyContent?.detach()),i&&this._ownsMenu(i)&&ce.delete(i),this.restoreFocus&&(e==="keydown"||!this._openedBy||!this._triggersSubmenu())&&this.focus(this._openedBy),this._openedBy=void 0,this._setIsMenuOpen(!1))}_setIsMenuOpen(e){e!==this._menuOpen&&(this._menuOpen=e,this._menuOpen?this.menuOpened.emit():this.menuClosed.emit(),this._triggersSubmenu()&&this._menuItemInstance._setHighlighted(e),this._changeDetectorRef.markForCheck())}_createOverlay(e){if(!this._overlayRef){let t=this._getOverlayConfig(e);this._subscribeToPositions(e,t.positionStrategy),this._overlayRef=Wt(this._injector,t),this._overlayRef.keydownEvents().subscribe(i=>{this._menu instanceof me&&this._menu._handleKeydown(i)})}return this._overlayRef}_getOverlayConfig(e){return new $t({positionStrategy:Yt(this._injector,this._getOverlayOrigin()).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".mat-menu-panel, .mat-mdc-menu-panel"),backdropClass:e.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:e.overlayPanelClass,scrollStrategy:this._scrollStrategy(),direction:this._dir||"ltr",disableAnimations:this._animationsDisabled})}_subscribeToPositions(e,t){e.setPositionClasses&&t.positionChanges.subscribe(i=>{this._ngZone.run(()=>{let a=i.connectionPair.overlayX==="start"?"after":"before",m=i.connectionPair.overlayY==="top"?"below":"above";e.setPositionClasses(a,m)})})}_setPosition(e,t){let[i,a]=e.xPosition==="before"?["end","start"]:["start","end"],[m,K]=e.yPosition==="above"?["bottom","top"]:["top","bottom"],[et,tt]=[m,K],[nt,it]=[i,a],pe=0;if(this._triggersSubmenu()){if(it=i=e.xPosition==="before"?"start":"end",a=nt=i==="end"?"start":"end",this._parentMaterialMenu){if(this._parentInnerPadding==null){let ht=this._parentMaterialMenu.items.first;this._parentInnerPadding=ht?ht._getHostElement().offsetTop:0}pe=m==="bottom"?this._parentInnerPadding:-this._parentInnerPadding}}else e.overlapTrigger||(et=m==="top"?"bottom":"top",tt=K==="top"?"bottom":"top");t.withPositions([{originX:i,originY:et,overlayX:nt,overlayY:m,offsetY:pe},{originX:a,originY:et,overlayX:it,overlayY:m,offsetY:pe},{originX:i,originY:tt,overlayX:nt,overlayY:K,offsetY:-pe},{originX:a,originY:tt,overlayX:it,overlayY:K,offsetY:-pe}])}_menuClosingActions(){let e=this._getOutsideClickStream(this._overlayRef),t=this._overlayRef.detachments(),i=this._parentMaterialMenu?this._parentMaterialMenu.closed:he(),a=this._parentMaterialMenu?this._parentMaterialMenu._hovered().pipe(Q(m=>this._menuOpen&&m!==this._menuItemInstance)):he();return ee(e,i,a,t)}_getPortal(e){return(!this._portal||this._portal.templateRef!==e.templateRef)&&(this._portal=new we(e.templateRef,this._viewContainerRef)),this._portal}_ownsMenu(e){return ce.get(e)===this}_triggerIsAriaDisabled(){return A(this._element.nativeElement.getAttribute("aria-disabled"))}static \u0275fac=function(t){Ct()};static \u0275dir=T({type:n})}return n})(),Ln=(()=>{class n extends eo{_cleanupTouchstart;_hoverSubscription=$.EMPTY;get _deprecatedMatMenuTriggerFor(){return this.menu}set _deprecatedMatMenuTriggerFor(e){this.menu=e}get menu(){return this._menu}set menu(e){this._menu=e}menuData;restoreFocus=!0;menuOpened=new h;onMenuOpen=this.menuOpened;menuClosed=new h;onMenuClose=this.menuClosed;constructor(){super(!0);let e=s(Fe);this._cleanupTouchstart=e.listen(this._element.nativeElement,"touchstart",t=>{jt(t)||(this._openedBy="touch")},{passive:!0})}triggersSubmenu(){return super._triggersSubmenu()}toggleMenu(){return this.menuOpen?this.closeMenu():this.openMenu()}openMenu(){this._openMenu(!0)}closeMenu(){this._closeMenu()}updatePosition(){this._overlayRef?.updatePosition()}ngAfterContentInit(){this._handleHover()}ngOnDestroy(){super.ngOnDestroy(),this._cleanupTouchstart(),this._hoverSubscription.unsubscribe()}_getOverlayOrigin(){return this._element}_getOutsideClickStream(e){return e.backdropClick()}_handleMousedown(e){Nt(e)||(this._openedBy=e.button===0?"mouse":void 0,this.triggersSubmenu()&&e.preventDefault())}_handleKeydown(e){let t=e.keyCode;(t===13||t===32)&&(this._openedBy="keyboard"),this.triggersSubmenu()&&(t===39&&this.dir==="ltr"||t===37&&this.dir==="rtl")&&(this._openedBy="keyboard",this.openMenu())}_handleClick(e){this.triggersSubmenu()?(e.stopPropagation(),this.openMenu()):this.toggleMenu()}_handleHover(){this.triggersSubmenu()&&this._parentMaterialMenu&&(this._hoverSubscription=this._parentMaterialMenu._hovered().subscribe(e=>{e===this._menuItemInstance&&!e.disabled&&this._parentMaterialMenu?._panelAnimationState!=="void"&&(this._openedBy="mouse",this._openMenu(!1))}))}static \u0275fac=function(t){return new(t||n)};static \u0275dir=T({type:n,selectors:[["","mat-menu-trigger-for",""],["","matMenuTriggerFor",""]],hostAttrs:[1,"mat-mdc-menu-trigger"],hostVars:3,hostBindings:function(t,i){t&1&&_("click",function(m){return i._handleClick(m)})("mousedown",function(m){return i._handleMousedown(m)})("keydown",function(m){return i._handleKeydown(m)}),t&2&&b("aria-haspopup",i.menu?"menu":null)("aria-expanded",i.menuOpen)("aria-controls",i.menuOpen?i.menu==null?null:i.menu.panelId:null)},inputs:{_deprecatedMatMenuTriggerFor:[0,"mat-menu-trigger-for","_deprecatedMatMenuTriggerFor"],menu:[0,"matMenuTriggerFor","menu"],menuData:[0,"matMenuTriggerData","menuData"],restoreFocus:[0,"matMenuTriggerRestoreFocus","restoreFocus"]},outputs:{menuOpened:"menuOpened",onMenuOpen:"onMenuOpen",menuClosed:"menuClosed",onMenuClose:"onMenuClose"},exportAs:["matMenuTrigger"],features:[xe]})}return n})();var Vn=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275mod=oe({type:n});static \u0275inj=te({imports:[Se,Jt,He,Bt]})}return n})();var no=(n,o)=>o.id;function io(n,o){if(n&1&&(O(0,"span",6),u(1),N()),n&2){let e=c().$implicit;r(),C(e.description)}}function oo(n,o){if(n&1){let e=D();O(0,"div",4),ve("mousedown",function(){let i=x(e).$implicit,a=c(2);return v(a.selectItem(i))})("touchstart",function(){let i=x(e).$implicit,a=c(2);return v(a.selectItem(i))}),O(1,"span",5),u(2),N(),f(3,io,2,1,"span",6),N()}if(n&2){let e=o.$implicit,t=o.$index,i=c(2);E("selected",t===i.selectedIndex),r(2),C(e.name),r(),g(e.description?3:-1)}}function ao(n,o){if(n&1&&(O(0,"div",2),w(1,oo,4,4,"div",3,no),N()),n&2){let e=c();r(),I(e.items)}}var Bn=class n{dataSource;placeholder="";disabled=!1;itemSelected=new h;elementRef=s(H);destroyRef=s(ne);query$=new F;query="";items=[];showDropdown=!1;selectedIndex=-1;ngOnInit(){this.query$.pipe(gt(200),_t(),fe(o=>{let e=o.trim();return e?this.dataSource.search(e):he([])}),de(this.destroyRef)).subscribe(o=>{this.items=o,this.selectedIndex=-1,this.showDropdown=o.length>0})}onInput(o){this.query=o.target.value,this.query$.next(this.query)}onFocus(){this.items.length>0&&(this.showDropdown=!0)}onBlur(){setTimeout(()=>this.closeDropdown(),150)}onKeydown(o){if(this.showDropdown)switch(o.key){case"ArrowDown":o.preventDefault(),this.selectedIndex=Math.min(this.selectedIndex+1,this.items.length-1),this.scrollSelectedIntoView();break;case"ArrowUp":o.preventDefault(),this.selectedIndex=Math.max(this.selectedIndex-1,0),this.scrollSelectedIntoView();break;case"Tab":o.preventDefault(),o.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":o.preventDefault(),this.selectedIndex>=0&&this.selectedIndex<this.items.length&&this.selectItem(this.items[this.selectedIndex]);break;case"Escape":o.preventDefault(),this.closeDropdown();break}}selectItem(o){this.itemSelected.emit(o),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(e){return new(e||n)};static \u0275cmp=y({type:n,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(e,t){e&1&&(O(0,"div",0)(1,"input",1),ve("input",function(a){return t.onInput(a)})("keydown",function(a){return t.onKeydown(a)})("focus",function(){return t.onFocus()})("blur",function(){return t.onBlur()}),N(),f(2,ao,3,0,"div",2),N()),e&2&&(r(),Ne("placeholder",t.placeholder)("disabled",t.disabled)("value",t.query),r(),g(t.showDropdown&&t.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}']})};var ro=(n,o)=>o.key;function so(n,o){if(n&1&&(l(0,"mat-icon"),u(1),d()),n&2){let e=c().$implicit;r(),C(e.icon)}}function lo(n,o){if(n&1){let e=D();l(0,"button",3),_("click",function(){let i=x(e).$implicit,a=c();return v(a.onItemClick(i.key))}),f(1,so,2,1,"mat-icon"),l(2,"span"),u(3),d()()}if(n&2){let e=o.$implicit;p("disabled",e.disabled??!1),b("data-variant",e.variant??"default"),r(),g(e.icon?1:-1),r(2),C(e.label)}}var Hn=class n{items;itemSelected=new h;onItemClick(o){this.itemSelected.emit(o)}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=y({type:n,selectors:[["ds-kebab-menu"]],inputs:{items:"items"},outputs:{itemSelected:"itemSelected"},decls:5,vars:1,consts:[["menu","matMenu"],["icon","more_vert","title","More actions",3,"matMenuTriggerFor"],["mat-menu-item","",3,"disabled"],["mat-menu-item","",3,"click","disabled"]],template:function(e,t){if(e&1&&(P(0,"ds-icon-button",1),l(1,"mat-menu",null,0),w(3,lo,4,4,"button",2,ro),d()),e&2){let i=Ce(2);p("matMenuTriggerFor",i),r(3),I(t.items)}},dependencies:[Je,le,Vn,me,Ee,Ln],styles:["[_nghost-%COMP%]{display:inline-flex;align-items:center}"],changeDetection:0})};export{vn as a,Je as b,Ge as c,Bn as d,Ue as e,Xe as f,On as g,Ee as h,Nr as i,me as j,Ln as k,Vn as l,Hn as m};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as R,f as z}from"./chunk-GAZJZBKP.js";import{b as F,d as N}from"./chunk-QWMDAFBN.js";import{c as Q}from"./chunk-
|
|
1
|
+
import{e as R,f as z}from"./chunk-GAZJZBKP.js";import{b as F,d as N}from"./chunk-QWMDAFBN.js";import{c as Q}from"./chunk-PKW64TFV.js";import"./chunk-ZAM3WGZM.js";import{a as M,b as I}from"./chunk-AJOXSD6I.js";import"./chunk-53STPEYQ.js";import"./chunk-AK6F2DC7.js";import"./chunk-IXD43YQI.js";import"./chunk-WPC6XC7P.js";import{D as H,c as B,e as u,g as L,h as j,i as G,l as C,n as J,s as A,u as $,v as q,w as K,x as U}from"./chunk-XJUBZLY2.js";import"./chunk-B2QA6UZX.js";import{Bb as v,Db as p,Fb as g,Ka as l,Tb as r,Ub as x,Vb as V,Wa as P,a as S,b as O,ca as c,ga as f,ha as _,kb as T,kc as D,lb as b,ma as k,mb as y,pb as w,qb as E,rb as s,sb as i,ta as d,tb as o,ub as h}from"./chunk-3JGMGRXW.js";function Y(a,t){a&1&&(i(0,"p",5),r(1,"Loading\u2026"),o())}function Z(a,t){if(a&1&&(i(0,"option",13),r(1),o()),a&2){let e=t.$implicit;s("value",e.type),l(),x(e.displayName)}}function ee(a,t){if(a&1){let e=v();i(0,"div",18)(1,"ds-json-schema-form",22),p("valueChange",function(m){f(e);let X=g(2);return _(X.onParamsChange(m))}),o()()}if(a&2){let e=g(2);l(),s("schema",t)("value",e.initialParams())}}function te(a,t){if(a&1){let e=v();i(0,"form",7),p("ngSubmit",function(){f(e);let m=g();return _(m.submit())}),i(1,"div",8)(2,"label",9),r(3,"Type "),i(4,"span",10),r(5,"*"),o()(),i(6,"select",11)(7,"option",12),r(8,"Select type"),o(),w(9,Z,2,2,"option",13,T().trackByType,!0),o()(),i(11,"div",8)(12,"label",14),r(13,"Name "),i(14,"span",10),r(15,"*"),o()(),h(16,"input",15),o(),i(17,"div",8)(18,"label",16),r(19,"Description"),o(),h(20,"textarea",17),o(),b(21,ee,2,2,"div",18),i(22,"div",19)(23,"button",20),r(24),o(),i(25,"button",21),p("click",function(){f(e);let m=g();return _(m.cancel())}),r(26,"Cancel"),o()()()}if(a&2){let e,n=g();s("formGroup",n.form),l(6),s("formControl",n.typeControl),l(3),E(n.integrationTypes()),l(7),s("formControl",n.nameControl),l(4),s("formControl",n.descriptionControl),l(),y((e=n.schema())?21:-1,e),l(2),s("disabled",n.nameControl.invalid||n.typeControl.invalid||n.isSubmitting()),l(),V(" ",n.isEditMode()?"Save changes":"Create"," ")}}var W=class a{route=c(F);router=c(N);destroyRef=c(k);integrationConfigController=c(R);integrationTypeController=c(z);namespaceId=this.route.snapshot.params.namespaceId;form=new G({name:new C("",{nonNullable:!0,validators:[u.required,u.minLength(1)]}),description:new C(null),type:new C("",{nonNullable:!0,validators:[u.required]})});get nameControl(){return this.form.controls.name}get descriptionControl(){return this.form.controls.description}get typeControl(){return this.form.controls.type}isEditMode=d(!1);isSubmitting=d(!1);isLoading=d(!1);paramsValue=d(null);initialParams=d(null);integrationTypes=I(this.integrationTypeController.listTypesIntegrationType(),{initialValue:[]});selectedType=I(this.form.controls.type.valueChanges,{initialValue:this.form.controls.type.value});schema=D(()=>{let t=this.selectedType();return t?this.integrationTypes().find(n=>n.type===t)?.configSchema??null:null});existingConfig=null;ngOnInit(){let t=this.route.snapshot.paramMap.get("integrationId");t&&(this.isEditMode.set(!0),this.loadConfig(t))}loadConfig(t){this.isLoading.set(!0),this.integrationConfigController.getByIdIntegrationConfig(t).pipe(M(this.destroyRef)).subscribe({next:e=>{this.existingConfig=e,this.nameControl.setValue(e.name),this.descriptionControl.setValue(e.description??null),this.typeControl.setValue(e.integrationType),this.initialParams.set(e.parameters),this.paramsValue.set(e.parameters),this.isLoading.set(!1)},error:()=>{this.isLoading.set(!1),this.navigateBack()}})}onParamsChange(t){this.paramsValue.set(t)}submit(){if(this.nameControl.invalid||this.typeControl.invalid||this.isSubmitting())return;this.isSubmitting.set(!0),(this.isEditMode()?this.integrationConfigController.updateIntegrationConfig(this.existingConfig.id??"",O(S({},this.existingConfig),{name:this.nameControl.value.trim(),description:this.descriptionControl.value?.trim()||void 0,integrationType:this.typeControl.value,parameters:this.paramsValue()})):this.integrationConfigController.createIntegrationConfig({name:this.nameControl.value.trim(),description:this.descriptionControl.value?.trim()||void 0,integrationType:this.typeControl.value,namespaceId:this.namespaceId,parameters:this.paramsValue()})).pipe(M(this.destroyRef)).subscribe({next:()=>this.navigateBack(),error:()=>this.isSubmitting.set(!1)})}cancel(){this.navigateBack()}navigateBack(){this.router.navigate(["/agentos",this.namespaceId,"integrations"])}trackByType(t,e){return e.type}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=P({type:a,selectors:[["agentos-integration-form"]],decls:10,vars:2,consts:[[1,"integration-form"],[1,"integration-form__header"],["type","button","title","Back to integrations",1,"integration-form__back",3,"click"],[1,"integration-form__back-icon"],[1,"integration-form__title"],[1,"integration-form__loading"],[1,"integration-form__form",3,"formGroup"],[1,"integration-form__form",3,"ngSubmit","formGroup"],[1,"integration-form__field"],["for","integration-type",1,"integration-form__label"],["aria-hidden","true"],["id","integration-type",1,"integration-form__select",3,"formControl"],["value","","disabled",""],[3,"value"],["for","integration-name",1,"integration-form__label"],["id","integration-name","type","text","placeholder","Integration name","autocomplete","off",1,"integration-form__input",3,"formControl"],["for","integration-description",1,"integration-form__label"],["id","integration-description","placeholder","Optional description","rows","3",1,"integration-form__textarea",3,"formControl"],[1,"integration-form__schema-form"],[1,"integration-form__actions"],["type","submit",1,"integration-form__btn","integration-form__btn--primary",3,"disabled"],["type","button",1,"integration-form__btn",3,"click"],[3,"valueChange","schema","value"]],template:function(e,n){e&1&&(i(0,"div",0)(1,"header",1)(2,"button",2),p("click",function(){return n.cancel()}),i(3,"span",3),r(4,"\u2190"),o(),r(5," Integrations "),o(),i(6,"h1",4),r(7),o()(),b(8,Y,2,0,"p",5)(9,te,27,7,"form",6),o()),e&2&&(l(7),x(n.isEditMode()?"Edit integration":"New integration"),l(),y(n.isLoading()?8:9))},dependencies:[H,J,K,U,B,q,L,j,A,$,Q],styles:[".integration-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2rem;max-width:560px;margin:0 auto;padding:2rem 1rem}.integration-form__header[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.integration-form__back[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.375rem;background:none;border:none;padding:0;cursor:pointer;font-size:.875rem;color:var(--color-primary, #007aff);font-family:inherit}.integration-form__back[_ngcontent-%COMP%]:hover{text-decoration:underline}.integration-form__back-icon[_ngcontent-%COMP%]{font-size:1rem;line-height:1}.integration-form__title[_ngcontent-%COMP%]{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text, #1d1d1f);letter-spacing:-.02em}.integration-form__loading[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-size:.9rem;margin:0}.integration-form__form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.25rem}.integration-form__field[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.375rem}.integration-form__label[_ngcontent-%COMP%]{font-size:.875rem;font-weight:500;color:var(--color-text, #1d1d1f)}.integration-form__input[_ngcontent-%COMP%], .integration-form__textarea[_ngcontent-%COMP%], .integration-form__select[_ngcontent-%COMP%]{width:100%;padding:.625rem .875rem;border-radius:8px;border:1px solid var(--color-border, rgba(0, 0, 0, .1));background:transparent;color:var(--color-text, #1d1d1f);font-size:.9375rem;font-family:inherit;outline:none;box-sizing:border-box;transition:border-color .15s ease}.integration-form__input[_ngcontent-%COMP%]:focus, .integration-form__textarea[_ngcontent-%COMP%]:focus, .integration-form__select[_ngcontent-%COMP%]:focus{border-color:var(--color-primary, #007aff)}.integration-form__input[_ngcontent-%COMP%]::placeholder, .integration-form__textarea[_ngcontent-%COMP%]::placeholder, .integration-form__select[_ngcontent-%COMP%]::placeholder{color:var(--color-text-secondary, #6e6e73)}.integration-form__textarea[_ngcontent-%COMP%]{resize:vertical;min-height:4.5rem;line-height:1.5}.integration-form__select[_ngcontent-%COMP%]{cursor:pointer}.integration-form__select[_ngcontent-%COMP%] option[disabled][_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73)}.integration-form__schema-form[_ngcontent-%COMP%]{padding:1rem;border-radius:10px;border:1px solid var(--color-border-light, rgba(0, 0, 0, .06));background:var(--glass-bg, rgba(255, 255, 255, .5));-webkit-backdrop-filter:var(--glass-backdrop-blur, blur(20px));backdrop-filter:var(--glass-backdrop-blur, blur(20px))}.integration-form__actions[_ngcontent-%COMP%]{display:flex;gap:.75rem;padding-top:.5rem}.integration-form__btn[_ngcontent-%COMP%]{padding:.6rem 1.25rem;border-radius:8px;border:1px solid var(--color-border, rgba(0, 0, 0, .1));background:transparent;color:var(--color-text, #1d1d1f);font-size:.9375rem;font-family:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease}.integration-form__btn[_ngcontent-%COMP%]:hover:not(:disabled){background:var(--color-surface-hover, rgba(0, 0, 0, .04))}.integration-form__btn[_ngcontent-%COMP%]:disabled{opacity:.45;cursor:not-allowed}.integration-form__btn--primary[_ngcontent-%COMP%]{background:var(--color-primary, #007aff);border-color:var(--color-primary, #007aff);color:#fff}.integration-form__btn--primary[_ngcontent-%COMP%]:hover:not(:disabled){background:var(--color-primary-hover, #0051d5);border-color:var(--color-primary-hover, #0051d5)}"],changeDetection:0})};export{W as IntegrationFormComponent};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as K}from"./chunk-GAZJZBKP.js";import{b as H}from"./chunk-QWMDAFBN.js";import{b as Y}from"./chunk-ZL64I3EB.js";import{a as Q}from"./chunk-AJOXSD6I.js";import{Bb as E,Db as f,Fb as d,Jb as B,Ka as l,Kb as M,Lb as O,Ma as D,Rb as I,Rc as $,Tb as p,Ub as C,Wa as F,ca as y,ga as T,ha as S,jb as q,kc as P,lb as g,ma as N,mb as h,pa as A,pb as L,qb as V,rb as k,sb as i,ta as v,tb as s,ua as w,ub as z}from"./chunk-3JGMGRXW.js";var U=["composerInput"],J=["messagesContainer"],Z=(o,e)=>e.kind==="message"?e.event.id:e.kind==="tool"?e.call.requestId:"streaming";function W(o,e){o&1&&(i(0,"div",4)(1,"p"),p(2,"No messages yet."),s()())}function X(o,e){if(o&1&&(i(0,"div",16)(1,"span",17),p(2),s(),i(3,"p",18),p(4),s()()),o&2){let t=d().$implicit,n=d(2);I("case-chat__message--user",t.event.actor.role==="USER")("case-chat__message--agent",t.event.actor.role==="AGENT"),l(2),C(t.event.actor.displayName),l(2),C(n.extractText(t.event))}}function ee(o,e){if(o&1&&(i(0,"div",14)(1,"span",17),p(2),s(),i(3,"p",18),p(4),s()()),o&2){let t=d().$implicit,n=d(2);l(2),C(n.agentDisplayName()),l(2),C(t.text)}}function te(o,e){o&1&&p(0," \u23F3 ")}function ne(o,e){o&1&&p(0," \u2705 ")}function oe(o,e){o&1&&p(0," \u274C ")}function ae(o,e){if(o&1&&(i(0,"div",25)(1,"span",26),p(2,"Payload"),s(),i(3,"pre"),p(4),s()()),o&2){let t=d(3).$implicit;l(4),C(t.call.args)}}function ie(o,e){o&1&&(i(0,"pre"),p(1),s()),o&2&&(l(),C(e))}function se(o,e){o&1&&(i(0,"span",27),p(1,"Running\u2026"),s())}function re(o,e){o&1&&(i(0,"span",28),p(1,"No output"),s())}function le(o,e){if(o&1&&(i(0,"div",24),g(1,ae,5,1,"div",25),i(2,"div",25)(3,"span",26),p(4,"Output"),s(),g(5,ie,2,1,"pre")(6,se,2,0,"span",27)(7,re,2,0,"span",28),s()()),o&2){let t,n=d(2).$implicit,a=d(2);l(),h(n.call.args?1:-1),l(4),h((t=a.extractToolOutput(n.call))?5:n.call.response?7:6,t)}}function ce(o,e){if(o&1){let t=E();i(0,"div",19)(1,"button",20),f("click",function(){T(t);let a=d().$implicit,_=d(2);return S(_.toggleToolCall(a.call.requestId))}),i(2,"span",21),g(3,te,1,0)(4,ne,1,0)(5,oe,1,0),s(),i(6,"span",22),p(7),s(),i(8,"span",23),p(9),s()(),g(10,le,8,2,"div",24),s()}if(o&2){let t=d().$implicit,n=d(2);I("case-chat__tool-call--pending",!t.call.response)("case-chat__tool-call--success",(t.call.response==null?null:t.call.response.success)===!0)("case-chat__tool-call--error",(t.call.response==null?null:t.call.response.success)===!1),l(),q("aria-expanded",n.isToolCallExpanded(t.call.requestId)),l(2),h(t.call.response?t.call.response.success?4:5:3),l(4),C(t.call.toolName),l(2),C(n.isToolCallExpanded(t.call.requestId)?"\u25BC":"\u25B6"),l(),h(n.isToolCallExpanded(t.call.requestId)?10:-1)}}function de(o,e){if(o&1&&g(0,X,5,6,"div",13)(1,ee,5,2,"div",14)(2,ce,11,11,"div",15),o&2){let t=e.$implicit;h(t.kind==="message"?0:t.kind==="streaming"?1:2)}}function pe(o,e){if(o&1&&L(0,de,3,1,null,null,Z),o&2){let t=d();V(t.timeline())}}function me(o,e){o&1&&(i(0,"div",5),z(1,"span",29)(2,"span",29)(3,"span",29),s())}function _e(o,e){if(o&1){let t=E();i(0,"div",6)(1,"ds-icon-button",30),f("action",function(){T(t);let a=d();return S(a.onScrollToBottomClick())}),s()()}}function ue(o,e){if(o&1){let t=E();i(0,"ds-icon-button",31),f("action",function(){T(t);let a=d();return S(a.interrupt())}),s()}}function ge(o,e){if(o&1){let t=E();i(0,"ds-icon-button",32),f("action",function(){T(t);let a=d();return S(a.submit())}),s()}if(o&2){let t=d();k("disabled",!t.canSend)}}var he=64,j=class o{route=y(H);http=y($);zone=y(A);destroyRef=y(N);config=y(K);caseId=this.route.snapshot.params.caseId;namespaceId=this.route.snapshot.params.namespaceId;agentDisplayName=P(()=>{let e=this.events();for(let t=e.length-1;t>=0;t--){let n=e[t];if(n){if(n.type==="AgentRunningEvent"||n.type==="AgentSelectedEvent"||n.type==="AgentFinishedEvent"){let a=n.agentName;if(a&&a.trim().length>0)return a}if(n.type==="MessageEvent"){let a=n;if(a.actor?.role==="AGENT"&&a.actor.displayName)return a.actor.displayName}}}return"Assistant"});eventSource=null;composerInput;messagesContainer;events=v([]);inputValue=v("");isRunning=v(!1);isTerminal=v(!1);streamingText=v("");collapsedTools=v(new Set);isAtBottom=v(!0);scrollListenerCleanup=null;constructor(){w(()=>{this.isRunning()||this.isTerminal()||queueMicrotask(()=>this.composerInput?.nativeElement.focus())}),w(()=>{this.timeline(),this.streamingText(),this.isAtBottom()&&queueMicrotask(()=>this.scrollToBottom())}),D(()=>{this.attachScrollListener()})}timeline=P(()=>{let e=this.events(),t=this.streamingText(),n=new Map;for(let c of e)if(c.type==="ToolRequestEvent"){let m=c,r=m.toolRequestId??c.id,x=n.get(r);n.set(r,{requestId:r,toolName:m.toolName??"unknown",args:m.args??null,response:x?.response})}else if(c.type==="ToolResponseEvent"){let m=c,r=m.toolRequestId??c.id,x=n.get(r);n.set(r,{requestId:r,toolName:x?.toolName??m.toolName??"unknown",args:x?.args??null,response:m})}let a=[],_=new Set;for(let c of e)if(c.type==="MessageEvent")a.push({kind:"message",event:c});else if(c.type==="ToolRequestEvent"||c.type==="ToolResponseEvent"){let r=c.toolRequestId??c.id;_.has(r)||(_.add(r),a.push({kind:"tool",call:n.get(r)}))}return t.trim().length>0&&a.push({kind:"streaming",text:t}),a});get canSend(){return!!this.inputValue().trim()&&!this.isRunning()&&!this.isTerminal()}ngOnInit(){this.connectSse(),this.route.params.pipe(Q(this.destroyRef)).subscribe(e=>{let t=e.caseId;t&&t!==this.caseId&&(this.caseId=t,this.reinitialise())})}ngOnDestroy(){this.eventSource?.close(),this.scrollListenerCleanup?.()}attachScrollListener(){let e=this.messagesContainer?.nativeElement;if(!e)return;let t=()=>{let n=e.scrollHeight-e.scrollTop-e.clientHeight;this.isAtBottom.set(n<=he)};e.addEventListener("scroll",t,{passive:!0}),this.scrollListenerCleanup=()=>e.removeEventListener("scroll",t)}scrollToBottom(){let e=this.messagesContainer?.nativeElement;e&&(e.scrollTop=e.scrollHeight)}onScrollToBottomClick(){this.isAtBottom.set(!0),this.scrollToBottom()}connectSse(){let e=`${this.config.basePath}/api/cases/${this.caseId}/events`;console.log("[AgentOS SSE] connecting",{url:e,basePath:this.config.basePath,caseId:this.caseId,namespaceId:this.namespaceId,now:new Date().toISOString()}),this.eventSource=this.zone.runOutsideAngular(()=>new EventSource(e));let t=a=>{let _=performance.now(),c=a.type,m=a.data;console.log("[AgentOS SSE] frame received",{sseEventName:c,dataLength:m?.length??0,dataPreview:m?.slice(0,120),receivedAtMs:_});try{let r=JSON.parse(m);this.zone.run(()=>{let x=this.events().length;this.events.update(u=>u.some(b=>b.id===r.id)?u:[...u,r]);let G=this.events().length;if(console.log("[AgentOS SSE] event processed",{sseEventName:c,eventType:r.type,eventId:r.id,beforeLen:x,afterLen:G,running:this.isRunning(),terminal:this.isTerminal()}),r.type==="TextChunkEvent"){let u=r.chunk;u&&this.streamingText.update(b=>b+u);return}if(r.type==="CaseStatusEvent"){let u=r.status,b=u==="KILLED"||u==="ERROR";if(this.isTerminal.set(b),b)this.isRunning.set(!1),this.eventSource?.close(),this.eventSource=null;else{let R=u==="RUNNING";this.isRunning.set(R),R||this.streamingText.set("")}return}if(r.type==="AgentFinishedEvent"){this.isRunning.set(!1),this.streamingText.set("");return}})}catch(r){console.warn("[AgentOS SSE] failed to parse event data",{sseEventName:c,error:r,dataPreview:m?.slice(0,500)})}},n=["MessageEvent","CaseStatusEvent","AgentSelectedEvent","AgentRunningEvent","AgentFinishedEvent","ThinkingEvent","TextChunkEvent","ToolRequestEvent","ToolResponseEvent"];for(let a of n)console.log("[AgentOS SSE] addEventListener",a),this.eventSource.addEventListener(a,t);this.eventSource.onopen=()=>{console.log("[AgentOS SSE] connection open",{readyState:this.eventSource?.readyState,at:new Date().toISOString()})},this.eventSource.onmessage=a=>{console.log("[AgentOS SSE] onmessage (unnamed event) received",{dataLength:a.data?.length??0,dataPreview:a.data?.slice(0,120)})},this.eventSource.onerror=a=>{console.warn("[AgentOS SSE] connection error",{err:a,readyState:this.eventSource?.readyState,at:new Date().toISOString()}),this.zone.run(()=>{this.isRunning.set(!1)})}}onInput(e){this.inputValue.set(e.target.value)}onKeydown(e){e.key==="Enter"&&!e.shiftKey&&(e.preventDefault(),this.submit())}reinitialise(){this.eventSource?.close(),this.eventSource=null,this.events.set([]),this.inputValue.set(""),this.isRunning.set(!1),this.isTerminal.set(!1),this.streamingText.set(""),this.collapsedTools.set(new Set),this.isAtBottom.set(!0),this.connectSse()}submit(){if(!this.canSend)return;let e=this.inputValue().trim();this.inputValue.set(""),this.sendMessage(e)}sendMessage(e){this.isRunning.set(!0),this.streamingText.set(""),this.http.post(`${this.config.basePath}/api/cases/${this.caseId}/messages`,{content:e,userId:"default-user"}).subscribe({error:t=>{console.error("[CaseChat] Failed to send message",t),this.isRunning.set(!1)}})}interrupt(){this.http.post(`${this.config.basePath}/api/cases/${this.caseId}/interrupt`,{}).subscribe({error:e=>console.error("[CaseChat] Failed to interrupt case",e)})}kill(){this.http.post(`${this.config.basePath}/api/cases/${this.caseId}/kill`,{}).subscribe({error:e=>console.error("[CaseChat] Failed to kill case",e)})}extractText(e){return e.content?.filter(t=>"content"in t).map(t=>t.content).join("")??""}extractToolOutput(e){if(!e.response)return null;let t=e.response.output;return t?t.content??null:null}toggleToolCall(e){this.collapsedTools.update(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}isToolCallExpanded(e){return this.collapsedTools().has(e)}static \u0275fac=function(t){return new(t||o)};static \u0275cmp=F({type:o,selectors:[["agentos-case-chat"]],viewQuery:function(t,n){if(t&1&&B(U,5)(J,5),t&2){let a;M(a=O())&&(n.composerInput=a.first),M(a=O())&&(n.messagesContainer=a.first)}},decls:14,vars:7,consts:[["messagesContainer",""],["composerInput",""],[1,"case-chat"],[1,"case-chat__messages"],[1,"case-chat__empty"],[1,"case-chat__thinking"],[1,"case-chat__scroll-anchor"],[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__message","case-chat__message--agent","case-chat__message--streaming"],[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","keyboard_arrow_down","variant","default","title","Scroll to bottom",3,"action"],["icon","stop","variant","danger","title","Interrupt",3,"action"],["icon","send","variant","primary","title","Send (Enter)",3,"action","disabled"]],template:function(t,n){t&1&&(i(0,"div",2)(1,"div",3,0),g(3,W,3,0,"div",4)(4,pe,2,0),g(5,me,4,0,"div",5),s(),g(6,_e,2,0,"div",6),i(7,"div",7)(8,"textarea",8,1),f("input",function(_){return n.onInput(_)})("keydown",function(_){return n.onKeydown(_)}),s(),i(10,"div",9),g(11,ue,1,0,"ds-icon-button",10)(12,ge,1,1,"ds-icon-button",11),i(13,"ds-icon-button",12),f("action",function(){return n.kill()}),s()()()()),t&2&&(l(3),h(n.timeline().length===0?3:4),l(2),h(n.isRunning()?5:-1),l(),h(n.isAtBottom()?-1:6),l(2),k("value",n.inputValue())("disabled",n.isRunning()||n.isTerminal()),l(3),h(n.isRunning()?11:12),l(2),k("disabled",n.isTerminal()))},dependencies:[Y],styles:['[_nghost-%COMP%]{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.case-chat[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;min-height:0;max-width:800px;width:100%;margin:0 auto;padding:1.5rem;gap:1rem;position:relative}.case-chat__messages[_ngcontent-%COMP%]{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;padding-bottom:.5rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--color-border, rgba(0, 0, 0, .15)) transparent}.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%]{flex-shrink:0;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__message[_ngcontent-%COMP%]{flex-shrink:0}.case-chat__thinking[_ngcontent-%COMP%]{flex-shrink:0;display:flex;gap:.3rem;padding:.75rem 1rem;align-self:flex-start}.case-chat__message--streaming[_ngcontent-%COMP%]{opacity:.95}.case-chat__scroll-anchor[_ngcontent-%COMP%]{position:absolute;bottom:calc(2rem + 80px);left:50%;transform:translate(-50%);z-index:10;background:var(--glass-bg, rgba(255, 255, 255, .88));border:1px solid var(--glass-border, rgba(255, 255, 255, .3));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:50%;box-shadow:0 2px 12px #0000001f;animation:_ngcontent-%COMP%_scroll-anchor-in .15s ease}.case-chat__composer[_ngcontent-%COMP%]{flex-shrink:0;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}}@keyframes _ngcontent-%COMP%_scroll-anchor-in{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}']})};export{j as a};
|
|
1
|
+
import{a as K}from"./chunk-GAZJZBKP.js";import{b as H}from"./chunk-QWMDAFBN.js";import{b as Y}from"./chunk-PKW64TFV.js";import{a as Q}from"./chunk-AJOXSD6I.js";import{Bb as E,Db as f,Fb as d,Jb as B,Ka as l,Kb as M,Lb as O,Ma as D,Rb as I,Rc as $,Tb as p,Ub as C,Wa as F,ca as y,ga as T,ha as S,jb as q,kc as P,lb as g,ma as N,mb as h,pa as A,pb as L,qb as V,rb as k,sb as i,ta as v,tb as s,ua as w,ub as z}from"./chunk-3JGMGRXW.js";var U=["composerInput"],J=["messagesContainer"],Z=(o,e)=>e.kind==="message"?e.event.id:e.kind==="tool"?e.call.requestId:"streaming";function W(o,e){o&1&&(i(0,"div",4)(1,"p"),p(2,"No messages yet."),s()())}function X(o,e){if(o&1&&(i(0,"div",16)(1,"span",17),p(2),s(),i(3,"p",18),p(4),s()()),o&2){let t=d().$implicit,n=d(2);I("case-chat__message--user",t.event.actor.role==="USER")("case-chat__message--agent",t.event.actor.role==="AGENT"),l(2),C(t.event.actor.displayName),l(2),C(n.extractText(t.event))}}function ee(o,e){if(o&1&&(i(0,"div",14)(1,"span",17),p(2),s(),i(3,"p",18),p(4),s()()),o&2){let t=d().$implicit,n=d(2);l(2),C(n.agentDisplayName()),l(2),C(t.text)}}function te(o,e){o&1&&p(0," \u23F3 ")}function ne(o,e){o&1&&p(0," \u2705 ")}function oe(o,e){o&1&&p(0," \u274C ")}function ae(o,e){if(o&1&&(i(0,"div",25)(1,"span",26),p(2,"Payload"),s(),i(3,"pre"),p(4),s()()),o&2){let t=d(3).$implicit;l(4),C(t.call.args)}}function ie(o,e){o&1&&(i(0,"pre"),p(1),s()),o&2&&(l(),C(e))}function se(o,e){o&1&&(i(0,"span",27),p(1,"Running\u2026"),s())}function re(o,e){o&1&&(i(0,"span",28),p(1,"No output"),s())}function le(o,e){if(o&1&&(i(0,"div",24),g(1,ae,5,1,"div",25),i(2,"div",25)(3,"span",26),p(4,"Output"),s(),g(5,ie,2,1,"pre")(6,se,2,0,"span",27)(7,re,2,0,"span",28),s()()),o&2){let t,n=d(2).$implicit,a=d(2);l(),h(n.call.args?1:-1),l(4),h((t=a.extractToolOutput(n.call))?5:n.call.response?7:6,t)}}function ce(o,e){if(o&1){let t=E();i(0,"div",19)(1,"button",20),f("click",function(){T(t);let a=d().$implicit,_=d(2);return S(_.toggleToolCall(a.call.requestId))}),i(2,"span",21),g(3,te,1,0)(4,ne,1,0)(5,oe,1,0),s(),i(6,"span",22),p(7),s(),i(8,"span",23),p(9),s()(),g(10,le,8,2,"div",24),s()}if(o&2){let t=d().$implicit,n=d(2);I("case-chat__tool-call--pending",!t.call.response)("case-chat__tool-call--success",(t.call.response==null?null:t.call.response.success)===!0)("case-chat__tool-call--error",(t.call.response==null?null:t.call.response.success)===!1),l(),q("aria-expanded",n.isToolCallExpanded(t.call.requestId)),l(2),h(t.call.response?t.call.response.success?4:5:3),l(4),C(t.call.toolName),l(2),C(n.isToolCallExpanded(t.call.requestId)?"\u25BC":"\u25B6"),l(),h(n.isToolCallExpanded(t.call.requestId)?10:-1)}}function de(o,e){if(o&1&&g(0,X,5,6,"div",13)(1,ee,5,2,"div",14)(2,ce,11,11,"div",15),o&2){let t=e.$implicit;h(t.kind==="message"?0:t.kind==="streaming"?1:2)}}function pe(o,e){if(o&1&&L(0,de,3,1,null,null,Z),o&2){let t=d();V(t.timeline())}}function me(o,e){o&1&&(i(0,"div",5),z(1,"span",29)(2,"span",29)(3,"span",29),s())}function _e(o,e){if(o&1){let t=E();i(0,"div",6)(1,"ds-icon-button",30),f("action",function(){T(t);let a=d();return S(a.onScrollToBottomClick())}),s()()}}function ue(o,e){if(o&1){let t=E();i(0,"ds-icon-button",31),f("action",function(){T(t);let a=d();return S(a.interrupt())}),s()}}function ge(o,e){if(o&1){let t=E();i(0,"ds-icon-button",32),f("action",function(){T(t);let a=d();return S(a.submit())}),s()}if(o&2){let t=d();k("disabled",!t.canSend)}}var he=64,j=class o{route=y(H);http=y($);zone=y(A);destroyRef=y(N);config=y(K);caseId=this.route.snapshot.params.caseId;namespaceId=this.route.snapshot.params.namespaceId;agentDisplayName=P(()=>{let e=this.events();for(let t=e.length-1;t>=0;t--){let n=e[t];if(n){if(n.type==="AgentRunningEvent"||n.type==="AgentSelectedEvent"||n.type==="AgentFinishedEvent"){let a=n.agentName;if(a&&a.trim().length>0)return a}if(n.type==="MessageEvent"){let a=n;if(a.actor?.role==="AGENT"&&a.actor.displayName)return a.actor.displayName}}}return"Assistant"});eventSource=null;composerInput;messagesContainer;events=v([]);inputValue=v("");isRunning=v(!1);isTerminal=v(!1);streamingText=v("");collapsedTools=v(new Set);isAtBottom=v(!0);scrollListenerCleanup=null;constructor(){w(()=>{this.isRunning()||this.isTerminal()||queueMicrotask(()=>this.composerInput?.nativeElement.focus())}),w(()=>{this.timeline(),this.streamingText(),this.isAtBottom()&&queueMicrotask(()=>this.scrollToBottom())}),D(()=>{this.attachScrollListener()})}timeline=P(()=>{let e=this.events(),t=this.streamingText(),n=new Map;for(let c of e)if(c.type==="ToolRequestEvent"){let m=c,r=m.toolRequestId??c.id,x=n.get(r);n.set(r,{requestId:r,toolName:m.toolName??"unknown",args:m.args??null,response:x?.response})}else if(c.type==="ToolResponseEvent"){let m=c,r=m.toolRequestId??c.id,x=n.get(r);n.set(r,{requestId:r,toolName:x?.toolName??m.toolName??"unknown",args:x?.args??null,response:m})}let a=[],_=new Set;for(let c of e)if(c.type==="MessageEvent")a.push({kind:"message",event:c});else if(c.type==="ToolRequestEvent"||c.type==="ToolResponseEvent"){let r=c.toolRequestId??c.id;_.has(r)||(_.add(r),a.push({kind:"tool",call:n.get(r)}))}return t.trim().length>0&&a.push({kind:"streaming",text:t}),a});get canSend(){return!!this.inputValue().trim()&&!this.isRunning()&&!this.isTerminal()}ngOnInit(){this.connectSse(),this.route.params.pipe(Q(this.destroyRef)).subscribe(e=>{let t=e.caseId;t&&t!==this.caseId&&(this.caseId=t,this.reinitialise())})}ngOnDestroy(){this.eventSource?.close(),this.scrollListenerCleanup?.()}attachScrollListener(){let e=this.messagesContainer?.nativeElement;if(!e)return;let t=()=>{let n=e.scrollHeight-e.scrollTop-e.clientHeight;this.isAtBottom.set(n<=he)};e.addEventListener("scroll",t,{passive:!0}),this.scrollListenerCleanup=()=>e.removeEventListener("scroll",t)}scrollToBottom(){let e=this.messagesContainer?.nativeElement;e&&(e.scrollTop=e.scrollHeight)}onScrollToBottomClick(){this.isAtBottom.set(!0),this.scrollToBottom()}connectSse(){let e=`${this.config.basePath}/api/cases/${this.caseId}/events`;console.log("[AgentOS SSE] connecting",{url:e,basePath:this.config.basePath,caseId:this.caseId,namespaceId:this.namespaceId,now:new Date().toISOString()}),this.eventSource=this.zone.runOutsideAngular(()=>new EventSource(e));let t=a=>{let _=performance.now(),c=a.type,m=a.data;console.log("[AgentOS SSE] frame received",{sseEventName:c,dataLength:m?.length??0,dataPreview:m?.slice(0,120),receivedAtMs:_});try{let r=JSON.parse(m);this.zone.run(()=>{let x=this.events().length;this.events.update(u=>u.some(b=>b.id===r.id)?u:[...u,r]);let G=this.events().length;if(console.log("[AgentOS SSE] event processed",{sseEventName:c,eventType:r.type,eventId:r.id,beforeLen:x,afterLen:G,running:this.isRunning(),terminal:this.isTerminal()}),r.type==="TextChunkEvent"){let u=r.chunk;u&&this.streamingText.update(b=>b+u);return}if(r.type==="CaseStatusEvent"){let u=r.status,b=u==="KILLED"||u==="ERROR";if(this.isTerminal.set(b),b)this.isRunning.set(!1),this.eventSource?.close(),this.eventSource=null;else{let R=u==="RUNNING";this.isRunning.set(R),R||this.streamingText.set("")}return}if(r.type==="AgentFinishedEvent"){this.isRunning.set(!1),this.streamingText.set("");return}})}catch(r){console.warn("[AgentOS SSE] failed to parse event data",{sseEventName:c,error:r,dataPreview:m?.slice(0,500)})}},n=["MessageEvent","CaseStatusEvent","AgentSelectedEvent","AgentRunningEvent","AgentFinishedEvent","ThinkingEvent","TextChunkEvent","ToolRequestEvent","ToolResponseEvent"];for(let a of n)console.log("[AgentOS SSE] addEventListener",a),this.eventSource.addEventListener(a,t);this.eventSource.onopen=()=>{console.log("[AgentOS SSE] connection open",{readyState:this.eventSource?.readyState,at:new Date().toISOString()})},this.eventSource.onmessage=a=>{console.log("[AgentOS SSE] onmessage (unnamed event) received",{dataLength:a.data?.length??0,dataPreview:a.data?.slice(0,120)})},this.eventSource.onerror=a=>{console.warn("[AgentOS SSE] connection error",{err:a,readyState:this.eventSource?.readyState,at:new Date().toISOString()}),this.zone.run(()=>{this.isRunning.set(!1)})}}onInput(e){this.inputValue.set(e.target.value)}onKeydown(e){e.key==="Enter"&&!e.shiftKey&&(e.preventDefault(),this.submit())}reinitialise(){this.eventSource?.close(),this.eventSource=null,this.events.set([]),this.inputValue.set(""),this.isRunning.set(!1),this.isTerminal.set(!1),this.streamingText.set(""),this.collapsedTools.set(new Set),this.isAtBottom.set(!0),this.connectSse()}submit(){if(!this.canSend)return;let e=this.inputValue().trim();this.inputValue.set(""),this.sendMessage(e)}sendMessage(e){this.isRunning.set(!0),this.streamingText.set(""),this.http.post(`${this.config.basePath}/api/cases/${this.caseId}/messages`,{content:e,userId:"default-user"}).subscribe({error:t=>{console.error("[CaseChat] Failed to send message",t),this.isRunning.set(!1)}})}interrupt(){this.http.post(`${this.config.basePath}/api/cases/${this.caseId}/interrupt`,{}).subscribe({error:e=>console.error("[CaseChat] Failed to interrupt case",e)})}kill(){this.http.post(`${this.config.basePath}/api/cases/${this.caseId}/kill`,{}).subscribe({error:e=>console.error("[CaseChat] Failed to kill case",e)})}extractText(e){return e.content?.filter(t=>"content"in t).map(t=>t.content).join("")??""}extractToolOutput(e){if(!e.response)return null;let t=e.response.output;return t?t.content??null:null}toggleToolCall(e){this.collapsedTools.update(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}isToolCallExpanded(e){return this.collapsedTools().has(e)}static \u0275fac=function(t){return new(t||o)};static \u0275cmp=F({type:o,selectors:[["agentos-case-chat"]],viewQuery:function(t,n){if(t&1&&B(U,5)(J,5),t&2){let a;M(a=O())&&(n.composerInput=a.first),M(a=O())&&(n.messagesContainer=a.first)}},decls:14,vars:7,consts:[["messagesContainer",""],["composerInput",""],[1,"case-chat"],[1,"case-chat__messages"],[1,"case-chat__empty"],[1,"case-chat__thinking"],[1,"case-chat__scroll-anchor"],[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__message","case-chat__message--agent","case-chat__message--streaming"],[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","keyboard_arrow_down","variant","default","title","Scroll to bottom",3,"action"],["icon","stop","variant","danger","title","Interrupt",3,"action"],["icon","send","variant","primary","title","Send (Enter)",3,"action","disabled"]],template:function(t,n){t&1&&(i(0,"div",2)(1,"div",3,0),g(3,W,3,0,"div",4)(4,pe,2,0),g(5,me,4,0,"div",5),s(),g(6,_e,2,0,"div",6),i(7,"div",7)(8,"textarea",8,1),f("input",function(_){return n.onInput(_)})("keydown",function(_){return n.onKeydown(_)}),s(),i(10,"div",9),g(11,ue,1,0,"ds-icon-button",10)(12,ge,1,1,"ds-icon-button",11),i(13,"ds-icon-button",12),f("action",function(){return n.kill()}),s()()()()),t&2&&(l(3),h(n.timeline().length===0?3:4),l(2),h(n.isRunning()?5:-1),l(),h(n.isAtBottom()?-1:6),l(2),k("value",n.inputValue())("disabled",n.isRunning()||n.isTerminal()),l(3),h(n.isRunning()?11:12),l(2),k("disabled",n.isTerminal()))},dependencies:[Y],styles:['[_nghost-%COMP%]{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.case-chat[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;min-height:0;max-width:800px;width:100%;margin:0 auto;padding:1.5rem;gap:1rem;position:relative}.case-chat__messages[_ngcontent-%COMP%]{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;padding-bottom:.5rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--color-border, rgba(0, 0, 0, .15)) transparent}.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%]{flex-shrink:0;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__message[_ngcontent-%COMP%]{flex-shrink:0}.case-chat__thinking[_ngcontent-%COMP%]{flex-shrink:0;display:flex;gap:.3rem;padding:.75rem 1rem;align-self:flex-start}.case-chat__message--streaming[_ngcontent-%COMP%]{opacity:.95}.case-chat__scroll-anchor[_ngcontent-%COMP%]{position:absolute;bottom:calc(2rem + 80px);left:50%;transform:translate(-50%);z-index:10;background:var(--glass-bg, rgba(255, 255, 255, .88));border:1px solid var(--glass-border, rgba(255, 255, 255, .3));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:50%;box-shadow:0 2px 12px #0000001f;animation:_ngcontent-%COMP%_scroll-anchor-in .15s ease}.case-chat__composer[_ngcontent-%COMP%]{flex-shrink:0;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}}@keyframes _ngcontent-%COMP%_scroll-anchor-in{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}']})};export{j as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as a}from"./chunk-
|
|
1
|
+
import{b as a}from"./chunk-J37E3F3X.js";import"./chunk-IFXDK4GQ.js";import"./chunk-GAZJZBKP.js";import"./chunk-QWMDAFBN.js";import"./chunk-PKW64TFV.js";import"./chunk-ZAM3WGZM.js";import"./chunk-AJOXSD6I.js";import"./chunk-53STPEYQ.js";import"./chunk-AK6F2DC7.js";import"./chunk-IXD43YQI.js";import"./chunk-WPC6XC7P.js";import"./chunk-XJUBZLY2.js";import"./chunk-B2QA6UZX.js";import"./chunk-3JGMGRXW.js";export{a as UserListComponent};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as ae}from"./chunk-B2FFL2F7.js";import{a as ie,b as re}from"./chunk-Q3YY3NFM.js";import{a as oe}from"./chunk-IFXDK4GQ.js";import{a as te,b as ne}from"./chunk-CRBPOP52.js";import{a as q}from"./chunk-QSQYSFNQ.js";import{a as J,b as Q,c as X}from"./chunk-VOCIDXAB.js";import{a as Y}from"./chunk-SZNIOJIK.js";import{a as Z}from"./chunk-3Y2AIDG3.js";import{a as ee}from"./chunk-VNCIHM33.js";import{a as H,b as W}from"./chunk-6LO3ANKL.js";import"./chunk-DE5MXWYR.js";import{a as z,d as L}from"./chunk-GAZJZBKP.js";import{b as T,d as F}from"./chunk-QWMDAFBN.js";import{b as N}from"./chunk-ZL64I3EB.js";import"./chunk-ZAM3WGZM.js";import"./chunk-AJOXSD6I.js";import"./chunk-53STPEYQ.js";import"./chunk-AK6F2DC7.js";import"./chunk-IXD43YQI.js";import"./chunk-WPC6XC7P.js";import"./chunk-XJUBZLY2.js";import"./chunk-B2QA6UZX.js";import{Cb as S,Db as f,Eb as M,Fb as h,Gc as w,Ka as l,Rc as k,Tb as t,Ub as C,Wa as b,ca as p,dc as O,ec as I,kb as x,lb as g,mb as u,pb as y,qb as A,rb as E,sb as a,ta as _,tb as r,ub as P,vb as c,wb as d}from"./chunk-3JGMGRXW.js";var i=()=>!0;var me=[{path:"",loadComponent:()=>import("./chunk-O3U2KGCT.js").then(e=>e.AgentosShellComponent),children:[{path:":namespaceId/cases",canActivate:[i],loadComponent:()=>import("./chunk-HTG2SANG.js").then(e=>e.CaseShellComponent),children:[{path:"",loadComponent:()=>import("./chunk-H5JE6Y2U.js").then(e=>e.CaseHomeComponent)},{path:":caseId",loadComponent:()=>import("./chunk-PQVFRCVP.js").then(e=>e.CaseChatComponent)}]},{path:"",loadComponent:()=>import("./chunk-I5EEQETN.js").then(e=>e.LayoutComponent),children:[{path:"namespaces/new",canActivate:[i],loadComponent:()=>import("./chunk-NAQEVUOV.js").then(e=>e.NamespaceFormComponent)},{path:"namespaces/:namespaceId/edit",canActivate:[i],loadComponent:()=>import("./chunk-NAQEVUOV.js").then(e=>e.NamespaceFormComponent)},{path:"namespaces",canActivate:[i],loadComponent:()=>import("./chunk-J44N4WCW.js").then(e=>e.NamespaceListComponent)},{path:":namespaceId/integrations/new",canActivate:[i],loadComponent:()=>import("./chunk-OPGZ37VP.js").then(e=>e.IntegrationFormComponent)},{path:":namespaceId/integrations/:integrationId/edit",canActivate:[i],loadComponent:()=>import("./chunk-OPGZ37VP.js").then(e=>e.IntegrationFormComponent)},{path:":namespaceId/integrations",canActivate:[i],loadComponent:()=>import("./chunk-H6OBD3IB.js").then(e=>e.NamespaceIntegrationsComponent)},{path:":namespaceId/ai-providers/new",canActivate:[i],loadComponent:()=>import("./chunk-U4662WTU.js").then(e=>e.AiProviderFormComponent)},{path:":namespaceId/ai-providers/:aiProviderId/edit",canActivate:[i],loadComponent:()=>import("./chunk-U4662WTU.js").then(e=>e.AiProviderFormComponent)},{path:":namespaceId/ai-providers",canActivate:[i],loadComponent:()=>import("./chunk-UDGUWWGZ.js").then(e=>e.NamespaceAiProvidersComponent)},{path:":namespaceId/ai-models/new",canActivate:[i],loadComponent:()=>import("./chunk-IZFHJAEI.js").then(e=>e.AiModelFormComponent)},{path:":namespaceId/ai-models/:modelId/edit",canActivate:[i],loadComponent:()=>import("./chunk-IZFHJAEI.js").then(e=>e.AiModelFormComponent)},{path:":namespaceId/ai-models",canActivate:[i],loadComponent:()=>import("./chunk-JFRMX4TL.js").then(e=>e.NamespaceAiModelsComponent)},{path:"admin/users/new",canActivate:[i],loadComponent:()=>import("./chunk-3D3KN52V.js").then(e=>e.UserFormComponent)},{path:"admin/users/:userId/edit",canActivate:[i],loadComponent:()=>import("./chunk-3D3KN52V.js").then(e=>e.UserFormComponent)},{path:"admin/users",canActivate:[i],loadComponent:()=>import("./chunk-SPIWOGE3.js").then(e=>e.UserListComponent)},{path:"me",canActivate:[i],loadComponent:()=>import("./chunk-EPA5P2I6.js").then(e=>e.UserProfileComponent)},{path:"",redirectTo:"namespaces",pathMatch:"full"}]}]}];function V(e,o){e&1&&(c(0,"p",6),t(1,"No cases yet. Start one below."),d())}function K(e,o){if(e&1&&(c(0,"div",7)(1,"span",8),t(2),d(),c(3,"span",9),t(4),d()()),e&2){let n=o.$implicit;l(2),C(n.id),l(2),C(n.status)}}function $(e,o){if(e&1&&y(0,K,5,2,"div",7,x().trackById,!0),e&2){let n=h();A(n)}}function j(e,o){e&1&&g(0,V,2,0,"p",6)(1,$,2,0),e&2&&u(o.length===0?0:1)}var D=class e{http=p(k);router=p(F);route=p(T);config=p(z);caseController=p(L);namespaceId=this.route.snapshot.params.namespaceId;cases$=this.caseController.listByParentCase(this.namespaceId);inputValue=_("");onInput(o){this.inputValue.set(o.target.value)}onKeydown(o){o.key==="Enter"&&!o.shiftKey&&(o.preventDefault(),this.submit())}submit(){this.inputValue().trim()&&this.http.post(`${this.config.basePath}/api/cases`,{namespaceId:this.namespaceId,metadata:{}}).subscribe(n=>{this.inputValue.set(""),this.router.navigate(["/agentos",this.namespaceId,"cases",n.id??""])})}trackById(o,n){return n.id??""}static \u0275fac=function(n){return new(n||e)};static \u0275cmp=b({type:e,selectors:[["agentos-case-list"]],decls:11,vars:4,consts:[[1,"case-list"],[1,"case-list__header"],[1,"case-list__items"],[1,"case-list__composer"],["placeholder","Start a new case\u2026","rows","3",1,"case-list__input",3,"input","keydown","value"],[1,"case-list__hint"],[1,"case-list__empty"],[1,"case-list__item"],[1,"case-list__item-id"],[1,"case-list__item-status"]],template:function(n,s){if(n&1&&(c(0,"div",0)(1,"header",1)(2,"h2"),t(3,"Cases"),d()(),c(4,"div",2),g(5,j,2,1),O(6,"async"),d(),c(7,"div",3)(8,"textarea",4),M("input",function(v){return s.onInput(v)})("keydown",function(v){return s.onKeydown(v)}),d(),c(9,"p",5),t(10,"Press Enter to send, Shift+Enter for new line"),d()()()),n&2){let m;l(5),u((m=I(6,2,s.cases$))?5:-1,m),l(3),S("value",s.inputValue())}},dependencies:[w],styles:[".case-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;max-width:720px;margin:0 auto;padding:2rem;gap:1.5rem}.case-list__header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text, #1d1d1f);letter-spacing:-.02em}.case-list__items[_ngcontent-%COMP%]{flex:1;overflow-y:auto}.case-list__empty[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-size:.9rem;margin:0}.case-list__composer[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.375rem}.case-list__input[_ngcontent-%COMP%]{width:100%;resize:none;padding:.75rem 1rem;border-radius:12px;border:1px solid var(--color-border, rgba(0, 0, 0, .1));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));color:var(--color-text, #1d1d1f);font-size:.95rem;font-family:inherit;line-height:1.5;outline:none;box-sizing:border-box;transition:border-color .15s ease}.case-list__input[_ngcontent-%COMP%]:focus{border-color:var(--color-primary, #007aff)}.case-list__input[_ngcontent-%COMP%]::placeholder{color:var(--color-text-secondary, #6e6e73)}.case-list__hint[_ngcontent-%COMP%]{margin:0;font-size:.75rem;color:var(--color-text-secondary, #6e6e73);opacity:.7}"]})};function G(e,o){if(e&1&&(a(0,"p",11),t(1," Last action: "),a(2,"strong"),t(3),r()()),e&2){let n=h();l(3),C(n.lastAction())}}var R=class e{lastAction=_(null);onSend(){this.lastAction.set("send")}onStop(){this.lastAction.set("stop")}onAttach(){this.lastAction.set("attach")}static \u0275fac=function(n){return new(n||e)};static \u0275cmp=b({type:e,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(n,s){n&1&&(a(0,"div",0)(1,"div",1)(2,"div",2),t(3,"AgentOS UI"),r(),a(4,"h1"),t(5,"Hello AgentOS"),r(),a(6,"p"),t(7," This component lives in "),a(8,"code"),t(9,"libs/agentos-ui"),r(),t(10," \u2014 isolated from Coday internals, ready to be published as "),a(11,"code"),t(12,"@whoz-oss/agentos-ui"),r(),t(13,". "),r(),P(14,"agentos-backend-status"),a(15,"ul",3)(16,"li"),t(17,"\u2726 No imports from Coday app"),r(),a(18,"li"),t(19,"\u2726 CSS custom properties as host contract"),r(),a(20,"li"),t(21,"\u2726 Standalone Angular components"),r(),a(22,"li"),t(23,"\u2726 Signals-first reactive state"),r()(),a(24,"div",4)(25,"p",5),t(26,"ds-icon-button from "),a(27,"code"),t(28,"@whoz-oss/design-system"),r()(),a(29,"div",6)(30,"ds-icon-button",7),f("action",function(){return s.onSend()}),r(),a(31,"ds-icon-button",8),f("action",function(){return s.onStop()}),r(),a(32,"ds-icon-button",9),f("action",function(){return s.onAttach()}),r(),a(33,"ds-icon-button",10),f("action",function(){return s.onAttach()}),r()(),g(34,G,4,1,"p",11),r()()()),n&2&&(l(33),E("disabled",!0),l(),u(s.lastAction()?34:-1))},dependencies:[N,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{me as AGENTOS_ROUTES,q as AgentosShellComponent,H as BackendStatusComponent,Z as CaseChatComponent,Q as CaseDrawerComponent,Y as CaseHomeComponent,J as CaseItemComponent,D as CaseListComponent,X as CaseShellComponent,W as HeaderComponent,R as HelloAgentosComponent,ee as LayoutComponent,te as NamespaceItemComponent,ne as NamespaceListComponent,oe as UserAdminStateService,ae as UserFormComponent,ie as UserItemComponent,re as UserListComponent,i as agentosReadyGuard};
|
|
1
|
+
import{a as ae}from"./chunk-B2FFL2F7.js";import{a as ie,b as re}from"./chunk-J37E3F3X.js";import{a as oe}from"./chunk-IFXDK4GQ.js";import{a as te,b as ne}from"./chunk-2GTCISR4.js";import{a as q}from"./chunk-QSQYSFNQ.js";import{a as J,b as Q,c as X}from"./chunk-MSXCVNKO.js";import{a as Y}from"./chunk-LI36MCDZ.js";import{a as Z}from"./chunk-SDPOEKGB.js";import{a as ee}from"./chunk-VNCIHM33.js";import{a as H,b as W}from"./chunk-6LO3ANKL.js";import"./chunk-DE5MXWYR.js";import{a as z,d as L}from"./chunk-GAZJZBKP.js";import{b as T,d as F}from"./chunk-QWMDAFBN.js";import{b as N}from"./chunk-PKW64TFV.js";import"./chunk-ZAM3WGZM.js";import"./chunk-AJOXSD6I.js";import"./chunk-53STPEYQ.js";import"./chunk-AK6F2DC7.js";import"./chunk-IXD43YQI.js";import"./chunk-WPC6XC7P.js";import"./chunk-XJUBZLY2.js";import"./chunk-B2QA6UZX.js";import{Cb as S,Db as f,Eb as M,Fb as h,Gc as w,Ka as l,Rc as k,Tb as t,Ub as C,Wa as b,ca as p,dc as O,ec as I,kb as x,lb as g,mb as u,pb as y,qb as A,rb as E,sb as a,ta as _,tb as r,ub as P,vb as c,wb as d}from"./chunk-3JGMGRXW.js";var i=()=>!0;var me=[{path:"",loadComponent:()=>import("./chunk-O3U2KGCT.js").then(e=>e.AgentosShellComponent),children:[{path:":namespaceId/cases",canActivate:[i],loadComponent:()=>import("./chunk-AVSWQR2Q.js").then(e=>e.CaseShellComponent),children:[{path:"",loadComponent:()=>import("./chunk-E6KB6VWH.js").then(e=>e.CaseHomeComponent)},{path:":caseId",loadComponent:()=>import("./chunk-MFKNL6GY.js").then(e=>e.CaseChatComponent)}]},{path:"",loadComponent:()=>import("./chunk-I5EEQETN.js").then(e=>e.LayoutComponent),children:[{path:"namespaces/new",canActivate:[i],loadComponent:()=>import("./chunk-NAQEVUOV.js").then(e=>e.NamespaceFormComponent)},{path:"namespaces/:namespaceId/edit",canActivate:[i],loadComponent:()=>import("./chunk-NAQEVUOV.js").then(e=>e.NamespaceFormComponent)},{path:"namespaces",canActivate:[i],loadComponent:()=>import("./chunk-NUTSPDGN.js").then(e=>e.NamespaceListComponent)},{path:":namespaceId/integrations/new",canActivate:[i],loadComponent:()=>import("./chunk-S66NFQG3.js").then(e=>e.IntegrationFormComponent)},{path:":namespaceId/integrations/:integrationId/edit",canActivate:[i],loadComponent:()=>import("./chunk-S66NFQG3.js").then(e=>e.IntegrationFormComponent)},{path:":namespaceId/integrations",canActivate:[i],loadComponent:()=>import("./chunk-OWYVTOTW.js").then(e=>e.NamespaceIntegrationsComponent)},{path:":namespaceId/ai-providers/new",canActivate:[i],loadComponent:()=>import("./chunk-U4662WTU.js").then(e=>e.AiProviderFormComponent)},{path:":namespaceId/ai-providers/:aiProviderId/edit",canActivate:[i],loadComponent:()=>import("./chunk-U4662WTU.js").then(e=>e.AiProviderFormComponent)},{path:":namespaceId/ai-providers",canActivate:[i],loadComponent:()=>import("./chunk-I7DZEVJV.js").then(e=>e.NamespaceAiProvidersComponent)},{path:":namespaceId/ai-models/new",canActivate:[i],loadComponent:()=>import("./chunk-IZFHJAEI.js").then(e=>e.AiModelFormComponent)},{path:":namespaceId/ai-models/:modelId/edit",canActivate:[i],loadComponent:()=>import("./chunk-IZFHJAEI.js").then(e=>e.AiModelFormComponent)},{path:":namespaceId/ai-models",canActivate:[i],loadComponent:()=>import("./chunk-OHZKVDVY.js").then(e=>e.NamespaceAiModelsComponent)},{path:"admin/users/new",canActivate:[i],loadComponent:()=>import("./chunk-3D3KN52V.js").then(e=>e.UserFormComponent)},{path:"admin/users/:userId/edit",canActivate:[i],loadComponent:()=>import("./chunk-3D3KN52V.js").then(e=>e.UserFormComponent)},{path:"admin/users",canActivate:[i],loadComponent:()=>import("./chunk-VELN6XU5.js").then(e=>e.UserListComponent)},{path:"me",canActivate:[i],loadComponent:()=>import("./chunk-EPA5P2I6.js").then(e=>e.UserProfileComponent)},{path:"",redirectTo:"namespaces",pathMatch:"full"}]}]}];function V(e,o){e&1&&(c(0,"p",6),t(1,"No cases yet. Start one below."),d())}function K(e,o){if(e&1&&(c(0,"div",7)(1,"span",8),t(2),d(),c(3,"span",9),t(4),d()()),e&2){let n=o.$implicit;l(2),C(n.id),l(2),C(n.status)}}function $(e,o){if(e&1&&y(0,K,5,2,"div",7,x().trackById,!0),e&2){let n=h();A(n)}}function j(e,o){e&1&&g(0,V,2,0,"p",6)(1,$,2,0),e&2&&u(o.length===0?0:1)}var D=class e{http=p(k);router=p(F);route=p(T);config=p(z);caseController=p(L);namespaceId=this.route.snapshot.params.namespaceId;cases$=this.caseController.listByParentCase(this.namespaceId);inputValue=_("");onInput(o){this.inputValue.set(o.target.value)}onKeydown(o){o.key==="Enter"&&!o.shiftKey&&(o.preventDefault(),this.submit())}submit(){this.inputValue().trim()&&this.http.post(`${this.config.basePath}/api/cases`,{namespaceId:this.namespaceId,metadata:{}}).subscribe(n=>{this.inputValue.set(""),this.router.navigate(["/agentos",this.namespaceId,"cases",n.id??""])})}trackById(o,n){return n.id??""}static \u0275fac=function(n){return new(n||e)};static \u0275cmp=b({type:e,selectors:[["agentos-case-list"]],decls:11,vars:4,consts:[[1,"case-list"],[1,"case-list__header"],[1,"case-list__items"],[1,"case-list__composer"],["placeholder","Start a new case\u2026","rows","3",1,"case-list__input",3,"input","keydown","value"],[1,"case-list__hint"],[1,"case-list__empty"],[1,"case-list__item"],[1,"case-list__item-id"],[1,"case-list__item-status"]],template:function(n,s){if(n&1&&(c(0,"div",0)(1,"header",1)(2,"h2"),t(3,"Cases"),d()(),c(4,"div",2),g(5,j,2,1),O(6,"async"),d(),c(7,"div",3)(8,"textarea",4),M("input",function(v){return s.onInput(v)})("keydown",function(v){return s.onKeydown(v)}),d(),c(9,"p",5),t(10,"Press Enter to send, Shift+Enter for new line"),d()()()),n&2){let m;l(5),u((m=I(6,2,s.cases$))?5:-1,m),l(3),S("value",s.inputValue())}},dependencies:[w],styles:[".case-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;max-width:720px;margin:0 auto;padding:2rem;gap:1.5rem}.case-list__header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text, #1d1d1f);letter-spacing:-.02em}.case-list__items[_ngcontent-%COMP%]{flex:1;overflow-y:auto}.case-list__empty[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-size:.9rem;margin:0}.case-list__composer[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.375rem}.case-list__input[_ngcontent-%COMP%]{width:100%;resize:none;padding:.75rem 1rem;border-radius:12px;border:1px solid var(--color-border, rgba(0, 0, 0, .1));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));color:var(--color-text, #1d1d1f);font-size:.95rem;font-family:inherit;line-height:1.5;outline:none;box-sizing:border-box;transition:border-color .15s ease}.case-list__input[_ngcontent-%COMP%]:focus{border-color:var(--color-primary, #007aff)}.case-list__input[_ngcontent-%COMP%]::placeholder{color:var(--color-text-secondary, #6e6e73)}.case-list__hint[_ngcontent-%COMP%]{margin:0;font-size:.75rem;color:var(--color-text-secondary, #6e6e73);opacity:.7}"]})};function G(e,o){if(e&1&&(a(0,"p",11),t(1," Last action: "),a(2,"strong"),t(3),r()()),e&2){let n=h();l(3),C(n.lastAction())}}var R=class e{lastAction=_(null);onSend(){this.lastAction.set("send")}onStop(){this.lastAction.set("stop")}onAttach(){this.lastAction.set("attach")}static \u0275fac=function(n){return new(n||e)};static \u0275cmp=b({type:e,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(n,s){n&1&&(a(0,"div",0)(1,"div",1)(2,"div",2),t(3,"AgentOS UI"),r(),a(4,"h1"),t(5,"Hello AgentOS"),r(),a(6,"p"),t(7," This component lives in "),a(8,"code"),t(9,"libs/agentos-ui"),r(),t(10," \u2014 isolated from Coday internals, ready to be published as "),a(11,"code"),t(12,"@whoz-oss/agentos-ui"),r(),t(13,". "),r(),P(14,"agentos-backend-status"),a(15,"ul",3)(16,"li"),t(17,"\u2726 No imports from Coday app"),r(),a(18,"li"),t(19,"\u2726 CSS custom properties as host contract"),r(),a(20,"li"),t(21,"\u2726 Standalone Angular components"),r(),a(22,"li"),t(23,"\u2726 Signals-first reactive state"),r()(),a(24,"div",4)(25,"p",5),t(26,"ds-icon-button from "),a(27,"code"),t(28,"@whoz-oss/design-system"),r()(),a(29,"div",6)(30,"ds-icon-button",7),f("action",function(){return s.onSend()}),r(),a(31,"ds-icon-button",8),f("action",function(){return s.onStop()}),r(),a(32,"ds-icon-button",9),f("action",function(){return s.onAttach()}),r(),a(33,"ds-icon-button",10),f("action",function(){return s.onAttach()}),r()(),g(34,G,4,1,"p",11),r()()()),n&2&&(l(33),E("disabled",!0),l(),u(s.lastAction()?34:-1))},dependencies:[N,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{me as AGENTOS_ROUTES,q as AgentosShellComponent,H as BackendStatusComponent,Z as CaseChatComponent,Q as CaseDrawerComponent,Y as CaseHomeComponent,J as CaseItemComponent,D as CaseListComponent,X as CaseShellComponent,W as HeaderComponent,R as HelloAgentosComponent,ee as LayoutComponent,te as NamespaceItemComponent,ne as NamespaceListComponent,oe as UserAdminStateService,ae as UserFormComponent,ie as UserItemComponent,re as UserListComponent,i as agentosReadyGuard};
|
package/browser/index.html
CHANGED
|
@@ -13,5 +13,5 @@
|
|
|
13
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-modal-bg:#ffffff;--color-modal-border:rgba(0, 0, 0, .12);--color-modal-shadow:0 8px 40px rgba(0, 0, 0, .18), 0 2px 8px rgba(0, 0, 0, .1);--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}html{--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-THLRUXCP.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-THLRUXCP.css"></noscript></head>
|
|
14
14
|
<body>
|
|
15
15
|
<app-root></app-root>
|
|
16
|
-
<link rel="modulepreload" href="chunk-GAZJZBKP.js"><link rel="modulepreload" href="chunk-2WJFXA53.js"><link rel="modulepreload" href="chunk-ESGUJDS6.js"><link rel="modulepreload" href="chunk-EWEA7F46.js"><link rel="modulepreload" href="chunk-MWWLTJ77.js"><link rel="modulepreload" href="chunk-QWMDAFBN.js"><link rel="modulepreload" href="chunk-WNNKQ2DH.js"><link rel="modulepreload" href="chunk-DRBOHCTP.js"><link rel="modulepreload" href="chunk-IXD43YQI.js"><link rel="modulepreload" href="chunk-XIQ3L6H6.js"><script src="polyfills-2FSRUXKO.js" type="module"></script><script src="main-
|
|
16
|
+
<link rel="modulepreload" href="chunk-GAZJZBKP.js"><link rel="modulepreload" href="chunk-2WJFXA53.js"><link rel="modulepreload" href="chunk-ESGUJDS6.js"><link rel="modulepreload" href="chunk-EWEA7F46.js"><link rel="modulepreload" href="chunk-MWWLTJ77.js"><link rel="modulepreload" href="chunk-QWMDAFBN.js"><link rel="modulepreload" href="chunk-WNNKQ2DH.js"><link rel="modulepreload" href="chunk-DRBOHCTP.js"><link rel="modulepreload" href="chunk-IXD43YQI.js"><link rel="modulepreload" href="chunk-XIQ3L6H6.js"><script src="polyfills-2FSRUXKO.js" type="module"></script><script src="main-PC4NDE3G.js" type="module"></script></body>
|
|
17
17
|
</html>
|