@whoz-oss/coday-client 0.38.0 → 0.38.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.
@@ -13,5 +13,5 @@
13
13
  <style>:root{--color-bg:linear-gradient(135deg, #f0f4ff 0%, #e8ecf9 100%);--color-bg-solid:#f0f4ff;--color-bg-secondary:rgba(255, 255, 255, .7);--color-text:#1d1d1f;--color-text-secondary:#6e6e73;--color-text-inverse:#ffffff;--color-primary:#007aff;--color-primary-hover:#0051d5;--color-accent:#8b5cf6;--color-link:#007aff;--color-border:rgba(0, 0, 0, .1);--color-border-light:rgba(40, 40, 40, .08);--color-input-bg:rgba(255, 255, 255, .8);--color-success:#34c759;--color-error:#ff3b30;--color-warning:#ff9500;--color-info:#5ac8fa;--color-message-user:rgba(0, 122, 255, .1);--color-message-ai:rgba(255, 255, 255, .8);--color-code-bg:rgba(142, 142, 147, .12);--color-code-text:#ff375f;--color-bg-hover:rgba(0, 0, 0, .04);--glass-bg:rgba(255, 255, 255, .72);--glass-border:rgba(255, 255, 255, .18);--glass-shadow:0 8px 32px 0 rgba(31, 38, 135, .15);--glass-backdrop-blur:blur(20px);--color-shadow:rgba(0, 0, 0, .08);--color-overlay:rgba(0, 0, 0, .4)}@media print{html,body,app-root{height:auto!important;max-height:none!important;min-height:auto!important;overflow:visible!important;position:static!important}body{background:#fff!important;color:#000!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;font-size:11pt;line-height:1.6;padding:1rem!important}*{animation:none!important;transition:none!important;box-shadow:none!important;text-shadow:none!important}}*{box-sizing:border-box}html{--mat-sys-background:light-dark(#fef8fc, #151316);--mat-sys-error:light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container:light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface:light-dark(#f5eff4, #323033);--mat-sys-inverse-primary:light-dark(#d5baff, #7d00fa);--mat-sys-inverse-surface:light-dark(#323033, #e6e1e6);--mat-sys-on-background:light-dark(#1d1b1e, #e6e1e6);--mat-sys-on-error:light-dark(#ffffff, #690005);--mat-sys-on-error-container:light-dark(#93000a, #ffdad6);--mat-sys-on-primary:light-dark(#ffffff, #42008a);--mat-sys-on-primary-container:light-dark(#5f00c0, #ecdcff);--mat-sys-on-primary-fixed:light-dark(#270057, #270057);--mat-sys-on-primary-fixed-variant:light-dark(#5f00c0, #5f00c0);--mat-sys-on-secondary:light-dark(#ffffff, #352d40);--mat-sys-on-secondary-container:light-dark(#4b4357, #eadef7);--mat-sys-on-secondary-fixed:light-dark(#1f182a, #1f182a);--mat-sys-on-secondary-fixed-variant:light-dark(#4b4357, #4b4357);--mat-sys-on-surface:light-dark(#1d1b1e, #e6e1e6);--mat-sys-on-surface-variant:light-dark(#49454e, #e8e0eb);--mat-sys-on-tertiary:light-dark(#ffffff, #42008a);--mat-sys-on-tertiary-container:light-dark(#5f00c0, #ecdcff);--mat-sys-on-tertiary-fixed:light-dark(#270057, #270057);--mat-sys-on-tertiary-fixed-variant:light-dark(#5f00c0, #5f00c0);--mat-sys-outline:light-dark(#7b757f, #958e99);--mat-sys-outline-variant:light-dark(#cbc4cf, #49454e);--mat-sys-primary:light-dark(#7d00fa, #d5baff);--mat-sys-primary-container:light-dark(#ecdcff, #5f00c0);--mat-sys-primary-fixed:light-dark(#ecdcff, #ecdcff);--mat-sys-primary-fixed-dim:light-dark(#d5baff, #d5baff);--mat-sys-scrim:light-dark(#000000, #000000);--mat-sys-secondary:light-dark(#645b70, #cec2db);--mat-sys-secondary-container:light-dark(#eadef7, #4b4357);--mat-sys-secondary-fixed:light-dark(#eadef7, #eadef7);--mat-sys-secondary-fixed-dim:light-dark(#cec2db, #cec2db);--mat-sys-shadow:light-dark(#000000, #000000);--mat-sys-surface:light-dark(#fef8fc, #151316);--mat-sys-surface-bright:light-dark(#fef8fc, #3b383c);--mat-sys-surface-container:light-dark(#f2ecf1, #211f22);--mat-sys-surface-container-high:light-dark(#ede6eb, #2b292d);--mat-sys-surface-container-highest:light-dark(#e6e1e6, #363437);--mat-sys-surface-container-low:light-dark(#f8f2f6, #1d1b1e);--mat-sys-surface-container-lowest:light-dark(#ffffff, #0f0d11);--mat-sys-surface-dim:light-dark(#ded8dd, #151316);--mat-sys-surface-tint:light-dark(#7d00fa, #d5baff);--mat-sys-surface-variant:light-dark(#e8e0eb, #49454e);--mat-sys-tertiary:light-dark(#7d00fa, #d5baff);--mat-sys-tertiary-container:light-dark(#ecdcff, #5f00c0);--mat-sys-tertiary-fixed:light-dark(#ecdcff, #ecdcff);--mat-sys-tertiary-fixed-dim:light-dark(#d5baff, #d5baff);--mat-sys-neutral-variant20:#332f37;--mat-sys-neutral10:#1d1b1e;--mat-sys-level0:0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1:0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2:0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3:0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4:0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5:0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large:400 1rem / 1.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-large-line-height:1.5rem;--mat-sys-body-large-size:1rem;--mat-sys-body-large-tracking:.031rem;--mat-sys-body-large-weight:400;--mat-sys-body-medium:400 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-medium-line-height:1.25rem;--mat-sys-body-medium-size:.875rem;--mat-sys-body-medium-tracking:.016rem;--mat-sys-body-medium-weight:400;--mat-sys-body-small:400 .75rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-small-line-height:1rem;--mat-sys-body-small-size:.75rem;--mat-sys-body-small-tracking:.025rem;--mat-sys-body-small-weight:400;--mat-sys-display-large:400 3.562rem / 4rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-large-line-height:4rem;--mat-sys-display-large-size:3.562rem;--mat-sys-display-large-tracking:-.016rem;--mat-sys-display-large-weight:400;--mat-sys-display-medium:400 2.812rem / 3.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-medium-line-height:3.25rem;--mat-sys-display-medium-size:2.812rem;--mat-sys-display-medium-tracking:0;--mat-sys-display-medium-weight:400;--mat-sys-display-small:400 2.25rem / 2.75rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-small-line-height:2.75rem;--mat-sys-display-small-size:2.25rem;--mat-sys-display-small-tracking:0;--mat-sys-display-small-weight:400;--mat-sys-headline-large:400 2rem / 2.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-large-line-height:2.5rem;--mat-sys-headline-large-size:2rem;--mat-sys-headline-large-tracking:0;--mat-sys-headline-large-weight:400;--mat-sys-headline-medium:400 1.75rem / 2.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-medium-line-height:2.25rem;--mat-sys-headline-medium-size:1.75rem;--mat-sys-headline-medium-tracking:0;--mat-sys-headline-medium-weight:400;--mat-sys-headline-small:400 1.5rem / 2rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-small-line-height:2rem;--mat-sys-headline-small-size:1.5rem;--mat-sys-headline-small-tracking:0;--mat-sys-headline-small-weight:400;--mat-sys-label-large:500 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-large-line-height:1.25rem;--mat-sys-label-large-size:.875rem;--mat-sys-label-large-tracking:.006rem;--mat-sys-label-large-weight:500;--mat-sys-label-large-weight-prominent:700;--mat-sys-label-medium:500 .75rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-medium-line-height:1rem;--mat-sys-label-medium-size:.75rem;--mat-sys-label-medium-tracking:.031rem;--mat-sys-label-medium-weight:500;--mat-sys-label-medium-weight-prominent:700;--mat-sys-label-small:500 .688rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-small-line-height:1rem;--mat-sys-label-small-size:.688rem;--mat-sys-label-small-tracking:.031rem;--mat-sys-label-small-weight:500;--mat-sys-title-large:400 1.375rem / 1.75rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-large-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-large-line-height:1.75rem;--mat-sys-title-large-size:1.375rem;--mat-sys-title-large-tracking:0;--mat-sys-title-large-weight:400;--mat-sys-title-medium:500 1rem / 1.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-medium-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-medium-line-height:1.5rem;--mat-sys-title-medium-size:1rem;--mat-sys-title-medium-tracking:.009rem;--mat-sys-title-medium-weight:500;--mat-sys-title-small:500 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-small-font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-small-line-height:1.25rem;--mat-sys-title-small-size:.875rem;--mat-sys-title-small-tracking:.006rem;--mat-sys-title-small-weight:500;--mat-sys-corner-extra-large:28px;--mat-sys-corner-extra-large-top:28px 28px 0 0;--mat-sys-corner-extra-small:4px;--mat-sys-corner-extra-small-top:4px 4px 0 0;--mat-sys-corner-full:9999px;--mat-sys-corner-large:16px;--mat-sys-corner-large-end:0 16px 16px 0;--mat-sys-corner-large-start:16px 0 0 16px;--mat-sys-corner-large-top:16px 16px 0 0;--mat-sys-corner-medium:12px;--mat-sys-corner-none:0;--mat-sys-corner-small:8px;--mat-sys-dragged-state-layer-opacity:.16;--mat-sys-focus-state-layer-opacity:.12;--mat-sys-hover-state-layer-opacity:.08;--mat-sys-pressed-state-layer-opacity:.12;--mat-snack-bar-container-shape:transparent;--mat-snack-bar-container-color:transparent;--mat-snack-bar-supporting-text-color:var(--color-text)}html,body{margin:0;padding:0;width:100%;height:100%}body{background:var(--color-bg);color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Helvetica Neue,Arial,sans-serif;transition:background .3s ease,color .3s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}</style><link rel="stylesheet" href="styles-6VROZYFU.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-6VROZYFU.css"></noscript></head>
14
14
  <body>
15
15
  <app-root></app-root>
16
- <script src="polyfills-7R4CRVNH.js" type="module"></script><script src="main-DJIRBCNH.js" type="module"></script></body>
16
+ <script src="polyfills-7R4CRVNH.js" type="module"></script><script src="main-AO7QOJZV.js" type="module"></script></body>
17
17
  </html>
@@ -105,7 +105,7 @@ This action cannot be undone once you post another message.`)&&(console.log("[CH
105
105
  `],encapsulation:2,changeDetection:0})}return n})();var X2=["switch"],J2=["*"];function eB(n,t){n&1&&(h(0,"span",11),so(),h(1,"svg",13),z(2,"path",14),p(),h(3,"svg",15),z(4,"path",16),p()())}var tB=new T("mat-slide-toggle-default-options",{providedIn:"root",factory:()=>({disableToggleValue:!1,hideIcon:!1,disabledInteractive:!1})}),lp=class{source;checked;constructor(t,e){this.source=t,this.checked=e}},mT=(()=>{class n{_elementRef=u(ne);_focusMonitor=u(Ao);_changeDetectorRef=u(mt);defaults=u(tB);_onChange=e=>{};_onTouched=()=>{};_validatorOnChange=()=>{};_uniqueId;_checked=!1;_createChangeEvent(e){return new lp(this,e)}_labelId;get buttonId(){return`${this.id||this._uniqueId}-button`}_switchElement;focus(){this._switchElement.nativeElement.focus()}_noopAnimations=Kt();_focused;name=null;id;labelPosition="after";ariaLabel=null;ariaLabelledby=null;ariaDescribedby;required;color;disabled=!1;disableRipple=!1;tabIndex=0;get checked(){return this._checked}set checked(e){this._checked=e,this._changeDetectorRef.markForCheck()}hideIcon;disabledInteractive;change=new V;toggleChange=new V;get inputId(){return`${this.id||this._uniqueId}-input`}constructor(){u(Rn).load(dh);let e=u(new mo("tabindex"),{optional:!0}),r=this.defaults;this.tabIndex=e==null?0:parseInt(e)||0,this.color=r.color||"accent",this.id=this._uniqueId=u(xr).getId("mat-mdc-slide-toggle-"),this.hideIcon=r.hideIcon??!1,this.disabledInteractive=r.disabledInteractive??!1,this._labelId=this._uniqueId+"-label"}ngAfterContentInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(e=>{e==="keyboard"||e==="program"?(this._focused=!0,this._changeDetectorRef.markForCheck()):e||Promise.resolve().then(()=>{this._focused=!1,this._onTouched(),this._changeDetectorRef.markForCheck()})})}ngOnChanges(e){e.required&&this._validatorOnChange()}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}writeValue(e){this.checked=!!e}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}validate(e){return this.required&&e.value!==!0?{required:!0}:null}registerOnValidatorChange(e){this._validatorOnChange=e}setDisabledState(e){this.disabled=e,this._changeDetectorRef.markForCheck()}toggle(){this.checked=!this.checked,this._onChange(this.checked)}_emitChangeEvent(){this._onChange(this.checked),this.change.emit(this._createChangeEvent(this.checked))}_handleClick(){this.disabled||(this.toggleChange.emit(),this.defaults.disableToggleValue||(this.checked=!this.checked,this._onChange(this.checked),this.change.emit(new lp(this,this.checked))))}_getAriaLabelledBy(){return this.ariaLabelledby?this.ariaLabelledby:this.ariaLabel?null:this._labelId}static \u0275fac=function(r){return new(r||n)};static \u0275cmp=F({type:n,selectors:[["mat-slide-toggle"]],viewQuery:function(r,i){if(r&1&&De(X2,5),r&2){let o;ce(o=de())&&(i._switchElement=o.first)}},hostAttrs:[1,"mat-mdc-slide-toggle"],hostVars:13,hostBindings:function(r,i){r&2&&(Br("id",i.id),ye("tabindex",null)("aria-label",null)("name",null)("aria-labelledby",null),gr(i.color?"mat-"+i.color:""),G("mat-mdc-slide-toggle-focused",i._focused)("mat-mdc-slide-toggle-checked",i.checked)("_mat-animation-noopable",i._noopAnimations))},inputs:{name:"name",id:"id",labelPosition:"labelPosition",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],required:[2,"required","required",ot],color:"color",disabled:[2,"disabled","disabled",ot],disableRipple:[2,"disableRipple","disableRipple",ot],tabIndex:[2,"tabIndex","tabIndex",e=>e==null?0:Hr(e)],checked:[2,"checked","checked",ot],hideIcon:[2,"hideIcon","hideIcon",ot],disabledInteractive:[2,"disabledInteractive","disabledInteractive",ot]},outputs:{change:"change",toggleChange:"toggleChange"},exportAs:["matSlideToggle"],features:[Je([{provide:Ri,useExisting:Ht(()=>n),multi:!0},{provide:Rc,useExisting:n,multi:!0}]),Ge],ngContentSelectors:J2,decls:14,vars:27,consts:[["switch",""],["mat-internal-form-field","",3,"labelPosition"],["role","switch","type","button",1,"mdc-switch",3,"click","tabIndex","disabled"],[1,"mat-mdc-slide-toggle-touch-target"],[1,"mdc-switch__track"],[1,"mdc-switch__handle-track"],[1,"mdc-switch__handle"],[1,"mdc-switch__shadow"],[1,"mdc-elevation-overlay"],[1,"mdc-switch__ripple"],["mat-ripple","",1,"mat-mdc-slide-toggle-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered"],[1,"mdc-switch__icons"],[1,"mdc-label",3,"click","for"],["viewBox","0 0 24 24","aria-hidden","true",1,"mdc-switch__icon","mdc-switch__icon--on"],["d","M19.69,5.23L8.96,15.96l-4.23-4.23L2.96,13.5l6,6L21.46,7L19.69,5.23z"],["viewBox","0 0 24 24","aria-hidden","true",1,"mdc-switch__icon","mdc-switch__icon--off"],["d","M20 13H4v-2h16v2z"]],template:function(r,i){if(r&1){let o=$();Xe(),h(0,"div",1)(1,"button",2,0),D("click",function(){return S(o),x(i._handleClick())}),z(3,"div",3)(4,"span",4),h(5,"span",5)(6,"span",6)(7,"span",7),z(8,"span",8),p(),h(9,"span",9),z(10,"span",10),p(),I(11,eB,5,0,"span",11),p()()(),h(12,"label",12),D("click",function(a){return S(o),x(a.stopPropagation())}),Ce(13),p()()}if(r&2){let o=wi(2);R("labelPosition",i.labelPosition),v(),G("mdc-switch--selected",i.checked)("mdc-switch--unselected",!i.checked)("mdc-switch--checked",i.checked)("mdc-switch--disabled",i.disabled)("mat-mdc-slide-toggle-disabled-interactive",i.disabledInteractive),R("tabIndex",i.disabled&&!i.disabledInteractive?-1:i.tabIndex)("disabled",i.disabled&&!i.disabledInteractive),ye("id",i.buttonId)("name",i.name)("aria-label",i.ariaLabel)("aria-labelledby",i._getAriaLabelledBy())("aria-describedby",i.ariaDescribedby)("aria-required",i.required||null)("aria-checked",i.checked)("aria-disabled",i.disabled&&i.disabledInteractive?"true":null),v(9),R("matRippleTrigger",o)("matRippleDisabled",i.disableRipple||i.disabled)("matRippleCentered",!0),v(),k(i.hideIcon?-1:11),v(),R("for",i.buttonId),ye("id",i._labelId)}},dependencies:[BD,pT],styles:[`.mdc-switch{align-items:center;background:none;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;margin:0;outline:none;overflow:visible;padding:0;position:relative;width:var(--mat-slide-toggle-track-width, 52px)}.mdc-switch.mdc-switch--disabled{cursor:default;pointer-events:none}.mdc-switch.mat-mdc-slide-toggle-disabled-interactive{pointer-events:auto}.mdc-switch__track{overflow:hidden;position:relative;width:100%;height:var(--mat-slide-toggle-track-height, 32px);border-radius:var(--mat-slide-toggle-track-shape, var(--mat-sys-corner-full))}.mdc-switch--disabled.mdc-switch .mdc-switch__track{opacity:var(--mat-slide-toggle-disabled-track-opacity, 0.12)}.mdc-switch__track::before,.mdc-switch__track::after{border:1px solid rgba(0,0,0,0);border-radius:inherit;box-sizing:border-box;content:"";height:100%;left:0;position:absolute;width:100%;border-width:var(--mat-slide-toggle-track-outline-width, 2px);border-color:var(--mat-slide-toggle-track-outline-color, var(--mat-sys-outline))}.mdc-switch--selected .mdc-switch__track::before,.mdc-switch--selected .mdc-switch__track::after{border-width:var(--mat-slide-toggle-selected-track-outline-width, 2px);border-color:var(--mat-slide-toggle-selected-track-outline-color, transparent)}.mdc-switch--disabled .mdc-switch__track::before,.mdc-switch--disabled .mdc-switch__track::after{border-width:var(--mat-slide-toggle-disabled-unselected-track-outline-width, 2px);border-color:var(--mat-slide-toggle-disabled-unselected-track-outline-color, var(--mat-sys-on-surface))}@media(forced-colors: active){.mdc-switch__track{border-color:currentColor}}.mdc-switch__track::before{transition:transform 75ms 0ms cubic-bezier(0, 0, 0.2, 1);transform:translateX(0);background:var(--mat-slide-toggle-unselected-track-color, var(--mat-sys-surface-variant))}.mdc-switch--selected .mdc-switch__track::before{transition:transform 75ms 0ms cubic-bezier(0.4, 0, 0.6, 1);transform:translateX(100%)}[dir=rtl] .mdc-switch--selected .mdc-switch--selected .mdc-switch__track::before{transform:translateX(-100%)}.mdc-switch--selected .mdc-switch__track::before{opacity:var(--mat-slide-toggle-hidden-track-opacity, 0);transition:var(--mat-slide-toggle-hidden-track-transition, opacity 75ms)}.mdc-switch--unselected .mdc-switch__track::before{opacity:var(--mat-slide-toggle-visible-track-opacity, 1);transition:var(--mat-slide-toggle-visible-track-transition, opacity 75ms)}.mdc-switch:enabled:hover:not(:focus):not(:active) .mdc-switch__track::before{background:var(--mat-slide-toggle-unselected-hover-track-color, var(--mat-sys-surface-variant))}.mdc-switch:enabled:focus:not(:active) .mdc-switch__track::before{background:var(--mat-slide-toggle-unselected-focus-track-color, var(--mat-sys-surface-variant))}.mdc-switch:enabled:active .mdc-switch__track::before{background:var(--mat-slide-toggle-unselected-pressed-track-color, var(--mat-sys-surface-variant))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__track::before,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__track::before,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__track::before,.mdc-switch.mdc-switch--disabled .mdc-switch__track::before{background:var(--mat-slide-toggle-disabled-unselected-track-color, var(--mat-sys-surface-variant))}.mdc-switch__track::after{transform:translateX(-100%);background:var(--mat-slide-toggle-selected-track-color, var(--mat-sys-primary))}[dir=rtl] .mdc-switch__track::after{transform:translateX(100%)}.mdc-switch--selected .mdc-switch__track::after{transform:translateX(0)}.mdc-switch--selected .mdc-switch__track::after{opacity:var(--mat-slide-toggle-visible-track-opacity, 1);transition:var(--mat-slide-toggle-visible-track-transition, opacity 75ms)}.mdc-switch--unselected .mdc-switch__track::after{opacity:var(--mat-slide-toggle-hidden-track-opacity, 0);transition:var(--mat-slide-toggle-hidden-track-transition, opacity 75ms)}.mdc-switch:enabled:hover:not(:focus):not(:active) .mdc-switch__track::after{background:var(--mat-slide-toggle-selected-hover-track-color, var(--mat-sys-primary))}.mdc-switch:enabled:focus:not(:active) .mdc-switch__track::after{background:var(--mat-slide-toggle-selected-focus-track-color, var(--mat-sys-primary))}.mdc-switch:enabled:active .mdc-switch__track::after{background:var(--mat-slide-toggle-selected-pressed-track-color, var(--mat-sys-primary))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__track::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__track::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__track::after,.mdc-switch.mdc-switch--disabled .mdc-switch__track::after{background:var(--mat-slide-toggle-disabled-selected-track-color, var(--mat-sys-on-surface))}.mdc-switch__handle-track{height:100%;pointer-events:none;position:absolute;top:0;transition:transform 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1);left:0;right:auto;transform:translateX(0);width:calc(100% - var(--mat-slide-toggle-handle-width))}[dir=rtl] .mdc-switch__handle-track{left:auto;right:0}.mdc-switch--selected .mdc-switch__handle-track{transform:translateX(100%)}[dir=rtl] .mdc-switch--selected .mdc-switch__handle-track{transform:translateX(-100%)}.mdc-switch__handle{display:flex;pointer-events:auto;position:absolute;top:50%;transform:translateY(-50%);left:0;right:auto;transition:width 75ms cubic-bezier(0.4, 0, 0.2, 1),height 75ms cubic-bezier(0.4, 0, 0.2, 1),margin 75ms cubic-bezier(0.4, 0, 0.2, 1);width:var(--mat-slide-toggle-handle-width);height:var(--mat-slide-toggle-handle-height);border-radius:var(--mat-slide-toggle-handle-shape, var(--mat-sys-corner-full))}[dir=rtl] .mdc-switch__handle{left:auto;right:0}.mat-mdc-slide-toggle .mdc-switch--unselected .mdc-switch__handle{width:var(--mat-slide-toggle-unselected-handle-size, 16px);height:var(--mat-slide-toggle-unselected-handle-size, 16px);margin:var(--mat-slide-toggle-unselected-handle-horizontal-margin, 0 8px)}.mat-mdc-slide-toggle .mdc-switch--unselected .mdc-switch__handle:has(.mdc-switch__icons){margin:var(--mat-slide-toggle-unselected-with-icon-handle-horizontal-margin, 0 4px)}.mat-mdc-slide-toggle .mdc-switch--selected .mdc-switch__handle{width:var(--mat-slide-toggle-selected-handle-size, 24px);height:var(--mat-slide-toggle-selected-handle-size, 24px);margin:var(--mat-slide-toggle-selected-handle-horizontal-margin, 0 24px)}.mat-mdc-slide-toggle .mdc-switch--selected .mdc-switch__handle:has(.mdc-switch__icons){margin:var(--mat-slide-toggle-selected-with-icon-handle-horizontal-margin, 0 24px)}.mat-mdc-slide-toggle .mdc-switch__handle:has(.mdc-switch__icons){width:var(--mat-slide-toggle-with-icon-handle-size, 24px);height:var(--mat-slide-toggle-with-icon-handle-size, 24px)}.mat-mdc-slide-toggle .mdc-switch:active:not(.mdc-switch--disabled) .mdc-switch__handle{width:var(--mat-slide-toggle-pressed-handle-size, 28px);height:var(--mat-slide-toggle-pressed-handle-size, 28px)}.mat-mdc-slide-toggle .mdc-switch--selected:active:not(.mdc-switch--disabled) .mdc-switch__handle{margin:var(--mat-slide-toggle-selected-pressed-handle-horizontal-margin, 0 22px)}.mat-mdc-slide-toggle .mdc-switch--unselected:active:not(.mdc-switch--disabled) .mdc-switch__handle{margin:var(--mat-slide-toggle-unselected-pressed-handle-horizontal-margin, 0 2px)}.mdc-switch--disabled.mdc-switch--selected .mdc-switch__handle::after{opacity:var(--mat-slide-toggle-disabled-selected-handle-opacity, 1)}.mdc-switch--disabled.mdc-switch--unselected .mdc-switch__handle::after{opacity:var(--mat-slide-toggle-disabled-unselected-handle-opacity, 0.38)}.mdc-switch__handle::before,.mdc-switch__handle::after{border:1px solid rgba(0,0,0,0);border-radius:inherit;box-sizing:border-box;content:"";width:100%;height:100%;left:0;position:absolute;top:0;transition:background-color 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1),border-color 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1);z-index:-1}@media(forced-colors: active){.mdc-switch__handle::before,.mdc-switch__handle::after{border-color:currentColor}}.mdc-switch--selected:enabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-handle-color, var(--mat-sys-on-primary))}.mdc-switch--selected:enabled:hover:not(:focus):not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-hover-handle-color, var(--mat-sys-primary-container))}.mdc-switch--selected:enabled:focus:not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-focus-handle-color, var(--mat-sys-primary-container))}.mdc-switch--selected:enabled:active .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-pressed-handle-color, var(--mat-sys-primary-container))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:hover:not(:focus):not(:active) .mdc-switch__handle::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:focus:not(:active) .mdc-switch__handle::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:active .mdc-switch__handle::after,.mdc-switch--selected.mdc-switch--disabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-disabled-selected-handle-color, var(--mat-sys-surface))}.mdc-switch--unselected:enabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-handle-color, var(--mat-sys-outline))}.mdc-switch--unselected:enabled:hover:not(:focus):not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-hover-handle-color, var(--mat-sys-on-surface-variant))}.mdc-switch--unselected:enabled:focus:not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-focus-handle-color, var(--mat-sys-on-surface-variant))}.mdc-switch--unselected:enabled:active .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-pressed-handle-color, var(--mat-sys-on-surface-variant))}.mdc-switch--unselected.mdc-switch--disabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-disabled-unselected-handle-color, var(--mat-sys-on-surface))}.mdc-switch__handle::before{background:var(--mat-slide-toggle-handle-surface-color)}.mdc-switch__shadow{border-radius:inherit;bottom:0;left:0;position:absolute;right:0;top:0}.mdc-switch:enabled .mdc-switch__shadow{box-shadow:var(--mat-slide-toggle-handle-elevation-shadow)}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__shadow,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__shadow,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__shadow,.mdc-switch.mdc-switch--disabled .mdc-switch__shadow{box-shadow:var(--mat-slide-toggle-disabled-handle-elevation-shadow)}.mdc-switch__ripple{left:50%;position:absolute;top:50%;transform:translate(-50%, -50%);z-index:-1;width:var(--mat-slide-toggle-state-layer-size, 40px);height:var(--mat-slide-toggle-state-layer-size, 40px)}.mdc-switch__ripple::after{content:"";opacity:0}.mdc-switch--disabled .mdc-switch__ripple::after{display:none}.mat-mdc-slide-toggle-disabled-interactive .mdc-switch__ripple::after{display:block}.mdc-switch:hover .mdc-switch__ripple::after{transition:75ms opacity cubic-bezier(0, 0, 0.2, 1)}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:focus .mdc-switch__ripple::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:active .mdc-switch__ripple::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:hover:not(:focus) .mdc-switch__ripple::after,.mdc-switch--unselected:enabled:hover:not(:focus) .mdc-switch__ripple::after{background:var(--mat-slide-toggle-unselected-hover-state-layer-color, var(--mat-sys-on-surface));opacity:var(--mat-slide-toggle-unselected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mdc-switch--unselected:enabled:focus .mdc-switch__ripple::after{background:var(--mat-slide-toggle-unselected-focus-state-layer-color, var(--mat-sys-on-surface));opacity:var(--mat-slide-toggle-unselected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mdc-switch--unselected:enabled:active .mdc-switch__ripple::after{background:var(--mat-slide-toggle-unselected-pressed-state-layer-color, var(--mat-sys-on-surface));opacity:var(--mat-slide-toggle-unselected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity));transition:opacity 75ms linear}.mdc-switch--selected:enabled:hover:not(:focus) .mdc-switch__ripple::after{background:var(--mat-slide-toggle-selected-hover-state-layer-color, var(--mat-sys-primary));opacity:var(--mat-slide-toggle-selected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mdc-switch--selected:enabled:focus .mdc-switch__ripple::after{background:var(--mat-slide-toggle-selected-focus-state-layer-color, var(--mat-sys-primary));opacity:var(--mat-slide-toggle-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mdc-switch--selected:enabled:active .mdc-switch__ripple::after{background:var(--mat-slide-toggle-selected-pressed-state-layer-color, var(--mat-sys-primary));opacity:var(--mat-slide-toggle-selected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity));transition:opacity 75ms linear}.mdc-switch__icons{position:relative;height:100%;width:100%;z-index:1;transform:translateZ(0)}.mdc-switch--disabled.mdc-switch--unselected .mdc-switch__icons{opacity:var(--mat-slide-toggle-disabled-unselected-icon-opacity, 0.38)}.mdc-switch--disabled.mdc-switch--selected .mdc-switch__icons{opacity:var(--mat-slide-toggle-disabled-selected-icon-opacity, 0.38)}.mdc-switch__icon{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0;opacity:0;transition:opacity 30ms 0ms cubic-bezier(0.4, 0, 1, 1)}.mdc-switch--unselected .mdc-switch__icon{width:var(--mat-slide-toggle-unselected-icon-size, 16px);height:var(--mat-slide-toggle-unselected-icon-size, 16px);fill:var(--mat-slide-toggle-unselected-icon-color, var(--mat-sys-surface-variant))}.mdc-switch--unselected.mdc-switch--disabled .mdc-switch__icon{fill:var(--mat-slide-toggle-disabled-unselected-icon-color, var(--mat-sys-surface-variant))}.mdc-switch--selected .mdc-switch__icon{width:var(--mat-slide-toggle-selected-icon-size, 16px);height:var(--mat-slide-toggle-selected-icon-size, 16px);fill:var(--mat-slide-toggle-selected-icon-color, var(--mat-sys-on-primary-container))}.mdc-switch--selected.mdc-switch--disabled .mdc-switch__icon{fill:var(--mat-slide-toggle-disabled-selected-icon-color, var(--mat-sys-on-surface))}.mdc-switch--selected .mdc-switch__icon--on,.mdc-switch--unselected .mdc-switch__icon--off{opacity:1;transition:opacity 45ms 30ms cubic-bezier(0, 0, 0.2, 1)}.mat-mdc-slide-toggle{-webkit-user-select:none;user-select:none;display:inline-block;-webkit-tap-highlight-color:rgba(0,0,0,0);outline:0}.mat-mdc-slide-toggle .mat-mdc-slide-toggle-ripple,.mat-mdc-slide-toggle .mdc-switch__ripple::after{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:50%;pointer-events:none}.mat-mdc-slide-toggle .mat-mdc-slide-toggle-ripple:not(:empty),.mat-mdc-slide-toggle .mdc-switch__ripple::after:not(:empty){transform:translateZ(0)}.mat-mdc-slide-toggle.mat-mdc-slide-toggle-focused .mat-focus-indicator::before{content:""}.mat-mdc-slide-toggle .mat-internal-form-field{color:var(--mat-slide-toggle-label-text-color, var(--mat-sys-on-surface));font-family:var(--mat-slide-toggle-label-text-font, var(--mat-sys-body-medium-font));line-height:var(--mat-slide-toggle-label-text-line-height, var(--mat-sys-body-medium-line-height));font-size:var(--mat-slide-toggle-label-text-size, var(--mat-sys-body-medium-size));letter-spacing:var(--mat-slide-toggle-label-text-tracking, var(--mat-sys-body-medium-tracking));font-weight:var(--mat-slide-toggle-label-text-weight, var(--mat-sys-body-medium-weight))}.mat-mdc-slide-toggle .mat-ripple-element{opacity:.12}.mat-mdc-slide-toggle .mat-focus-indicator::before{border-radius:50%}.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle-track,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__icon,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle::before,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle::after,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__track::before,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__track::after{transition:none}.mat-mdc-slide-toggle .mdc-switch:enabled+.mdc-label{cursor:pointer}.mat-mdc-slide-toggle .mdc-switch--disabled+label{color:var(--mat-slide-toggle-disabled-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-slide-toggle-touch-target{position:absolute;top:50%;left:50%;height:var(--mat-slide-toggle-touch-target-size, 48px);width:100%;transform:translate(-50%, -50%);display:var(--mat-slide-toggle-touch-target-display, block)}[dir=rtl] .mat-mdc-slide-toggle-touch-target{left:auto;right:50%;transform:translate(50%, -50%)}
106
106
  `],encapsulation:2,changeDetection:0})}return n})();var nB=(n,t)=>t.code,rB=(n,t)=>t.name+t.lang;function iB(n,t){if(n&1&&(h(0,"option",16),b(1),p()),n&2){let e=t.$implicit;R("value",e.code),v(),Ms("",e.flag," ",e.label)}}function oB(n,t){n&1&&(h(0,"option",23),b(1,"Loading voices..."),p())}function sB(n,t){n&1&&(h(0,"option",23),b(1,"No voice available"),p())}function aB(n,t){if(n&1&&(h(0,"option",16),b(1),p()),n&2){let e=t.$implicit;R("value",e.name+"|"+e.lang),v(),Ae(" ",e.displayName," ")}}var zc=class n{destroy$=new N;selectedTheme="light";selectedVoiceLanguage="en-US";useEnterToSend=!1;printTechnicalMessages=!1;showTechnicalMessages=!0;showWarningMessages=!0;voiceAnnounceEnabled=!1;voiceMode="speech";voiceReadFullText=!1;voiceVolume=80;voiceRate=120;availableVoices=[];selectedVoiceId=null;loadingVoices=!1;voiceLanguageOptions=[{code:"fr-FR",label:"Fran\xE7ais",flag:"\u{1F1EB}\u{1F1F7}"},{code:"en-US",label:"English (US)",flag:"\u{1F1FA}\u{1F1F8}"},{code:"en-GB",label:"English (UK)",flag:"\u{1F1EC}\u{1F1E7}"},{code:"es-ES",label:"Espa\xF1ol",flag:"\u{1F1EA}\u{1F1F8}"},{code:"de-DE",label:"Deutsch",flag:"\u{1F1E9}\u{1F1EA}"},{code:"it-IT",label:"Italiano",flag:"\u{1F1EE}\u{1F1F9}"},{code:"pt-BR",label:"Portugu\xEAs",flag:"\u{1F1E7}\u{1F1F7}"},{code:"ja-JP",label:"\u65E5\u672C\u8A9E",flag:"\u{1F1EF}\u{1F1F5}"},{code:"ko-KR",label:"\uD55C\uAD6D\uC5B4",flag:"\u{1F1F0}\u{1F1F7}"},{code:"zh-CN",label:"\u4E2D\u6587 (\u7B80\u4F53)",flag:"\u{1F1E8}\u{1F1F3}"},{code:"ru-RU",label:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",flag:"\u{1F1F7}\u{1F1FA}"},{code:"ar-SA",label:"\u0627\u0644\u0639\u0631\u0628\u064A\u0629",flag:"\u{1F1F8}\u{1F1E6}"}];preferencesService=u(vt);voiceSynthesisService=u(Ma);themeService=u(Ia);ngOnInit(){this.selectedTheme=this.themeService.getCurrentTheme(),this.selectedVoiceLanguage=this.preferencesService.getVoiceLanguage(),this.useEnterToSend=this.preferencesService.getEnterToSend(),this.printTechnicalMessages=this.preferencesService.getPrintTechnicalMessages(),this.showTechnicalMessages=!this.preferencesService.getHideTechnicalMessages(),this.showWarningMessages=!this.preferencesService.getHideWarningMessages(),this.voiceAnnounceEnabled=this.preferencesService.getVoiceAnnounceEnabled(),this.voiceMode=this.preferencesService.getVoiceMode(),this.voiceReadFullText=this.preferencesService.getVoiceReadFullText(),this.voiceVolume=Math.round(this.preferencesService.getVoiceVolume()*100),this.voiceRate=Math.round(this.preferencesService.getVoiceRate()*100),this.selectedVoiceId=this.preferencesService.getSelectedVoice(),this.loadAvailableVoices(),this.themeService.currentTheme$.pipe(B(this.destroy$)).subscribe(t=>{this.selectedTheme=t}),this.preferencesService.voiceLanguage$.pipe(B(this.destroy$)).subscribe(t=>{this.selectedVoiceLanguage=t}),this.preferencesService.enterToSend$.pipe(B(this.destroy$)).subscribe(t=>{this.useEnterToSend=t}),this.preferencesService.printTechnicalMessages$.pipe(B(this.destroy$)).subscribe(t=>{this.printTechnicalMessages=t}),this.preferencesService.hideTechnicalMessages$.pipe(B(this.destroy$)).subscribe(t=>{this.showTechnicalMessages=!t}),this.preferencesService.hideWarningMessages$.pipe(B(this.destroy$)).subscribe(t=>{this.showWarningMessages=!t}),this.preferencesService.voiceAnnounceEnabled$.pipe(B(this.destroy$)).subscribe(t=>{this.voiceAnnounceEnabled=t}),this.preferencesService.voiceMode$.pipe(B(this.destroy$)).subscribe(t=>{this.voiceMode=t}),this.preferencesService.voiceReadFullText$.pipe(B(this.destroy$)).subscribe(t=>{this.voiceReadFullText=t}),this.preferencesService.voiceVolume$.pipe(B(this.destroy$)).subscribe(t=>{this.voiceVolume=Math.round(t*100)}),this.preferencesService.voiceRate$.pipe(B(this.destroy$)).subscribe(t=>{this.voiceRate=Math.round(t*100)}),this.preferencesService.selectedVoice$.pipe(B(this.destroy$)).subscribe(t=>{this.selectedVoiceId=t}),this.preferencesService.voiceLanguage$.pipe(B(this.destroy$)).subscribe(()=>{this.loadAvailableVoices()})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}onThemeChange(){console.log("[OPTIONS] Theme changed to:",this.selectedTheme),this.themeService.setTheme(this.selectedTheme)}onVoiceLanguageChange(){console.log("[OPTIONS] Voice language changed to:",this.selectedVoiceLanguage),this.preferencesService.setVoiceLanguage(this.selectedVoiceLanguage)}onEnterToSendChange(){console.log("[OPTIONS] Enter to send changed to:",this.useEnterToSend),this.preferencesService.setEnterToSend(this.useEnterToSend)}onPrintTechnicalMessagesChange(){console.log("[OPTIONS] Print technical messages changed to:",this.printTechnicalMessages),this.preferencesService.setPrintTechnicalMessages(this.printTechnicalMessages)}onShowTechnicalMessagesChange(){let t=!this.showTechnicalMessages;console.log("[OPTIONS] Show technical messages changed to:",this.showTechnicalMessages,"(hide:",t,")"),this.preferencesService.setHideTechnicalMessages(t)}onShowWarningMessagesChange(){let t=!this.showWarningMessages;console.log("[OPTIONS] Show warning messages changed to:",this.showWarningMessages,"(hide:",t,")"),this.preferencesService.setHideWarningMessages(t)}onVoiceAnnounceEnabledChange(){console.log("[OPTIONS] Voice announce enabled changed to:",this.voiceAnnounceEnabled),this.preferencesService.setVoiceAnnounceEnabled(this.voiceAnnounceEnabled)}onVoiceModeChange(){console.log("[OPTIONS] Voice mode changed to:",this.voiceMode),this.preferencesService.setVoiceMode(this.voiceMode)}onVoiceReadFullTextChange(){console.log("[OPTIONS] Voice read full text changed to:",this.voiceReadFullText),this.preferencesService.setVoiceReadFullText(this.voiceReadFullText)}onVoiceVolumeChange(){let t=this.voiceVolume/100;console.log("[OPTIONS] Voice volume changed to:",t),this.preferencesService.setVoiceVolume(t)}onVoiceRateChange(){let t=this.voiceRate/100;console.log("[OPTIONS] Voice rate changed to:",t),this.preferencesService.setVoiceRate(t)}loadAvailableVoices(){return xe(this,null,function*(){this.loadingVoices=!0;try{this.availableVoices=yield this.voiceSynthesisService.getVoicesForLanguage(),console.log("[OPTIONS] Loaded",this.availableVoices.length,"voices for current language")}catch(t){console.error("[OPTIONS] Error loading voices:",t),this.availableVoices=[]}finally{this.loadingVoices=!1}})}onSelectedVoiceChange(){console.log("[OPTIONS] Selected voice changed to:",this.selectedVoiceId),this.preferencesService.setSelectedVoice(this.selectedVoiceId)}testVoice(){console.log("[OPTIONS] Testing voice with current settings"),this.voiceSynthesisService.testSelectedVoice()}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=F({type:n,selectors:[["app-options-panel"]],decls:122,vars:29,consts:[[1,"options-content"],[1,"option-section"],[1,"section-title"],[1,"option-group"],[1,"radio-group"],[1,"option-radio"],["type","radio","name","theme","value","light",3,"ngModelChange","change","ngModel"],[1,"radio-mark"],["type","radio","name","theme","value","dark",3,"ngModelChange","change","ngModel"],["type","radio","name","theme","value","system",3,"ngModelChange","change","ngModel"],[1,"option-label"],["type","radio","name","enterBehavior",3,"ngModelChange","change","value","ngModel"],[1,"toggle-option"],["color","primary",3,"ngModelChange","change","ngModel"],["for","voice-language-select",1,"option-label"],["id","voice-language-select",1,"option-select",3,"ngModelChange","change","ngModel"],[3,"value"],["type","radio","name","voiceAnnounce",3,"ngModelChange","change","value","ngModel"],["type","radio","name","voiceMode","value","speech",3,"ngModelChange","change","ngModel"],["type","radio","name","voiceMode","value","notification",3,"ngModelChange","change","ngModel"],["type","radio","name","voiceReadFull",3,"ngModelChange","change","value","ngModel"],["for","voice-select",1,"option-label"],["id","voice-select",1,"option-select",3,"ngModelChange","change","ngModel","disabled"],["value",""],["role","button","tabindex","0","title","Test voice with current settings",1,"test-voice-link",3,"click"],[1,"thread-name"],["for","voice-volume-slider",1,"option-label"],["id","voice-volume-slider","type","range","min","0","max","100","step","5",1,"option-slider",3,"ngModelChange","input","ngModel"],["for","voice-rate-slider",1,"option-label"],["id","voice-rate-slider","type","range","min","50","max","200","step","10",1,"option-slider",3,"ngModelChange","input","ngModel"]],template:function(e,r){e&1&&(h(0,"div",0)(1,"div",1)(2,"div",2)(3,"mat-icon"),b(4,"palette"),p(),h(5,"span"),b(6,"Appearance"),p()(),h(7,"div",3)(8,"div",4)(9,"label",5)(10,"input",6),Ee("ngModelChange",function(o){return Me(r.selectedTheme,o)||(r.selectedTheme=o),o}),D("change",function(){return r.onThemeChange()}),p(),z(11,"span",7),b(12," Light "),p(),h(13,"label",5)(14,"input",8),Ee("ngModelChange",function(o){return Me(r.selectedTheme,o)||(r.selectedTheme=o),o}),D("change",function(){return r.onThemeChange()}),p(),z(15,"span",7),b(16," Dark "),p(),h(17,"label",5)(18,"input",9),Ee("ngModelChange",function(o){return Me(r.selectedTheme,o)||(r.selectedTheme=o),o}),D("change",function(){return r.onThemeChange()}),p(),z(19,"span",7),b(20," System "),p()()()(),h(21,"div",1)(22,"div",2)(23,"mat-icon"),b(24,"chat_bubble_outline"),p(),h(25,"span"),b(26,"Messaging"),p()(),h(27,"div",3)(28,"span",10),b(29,"Send message behavior:"),p(),h(30,"div",4)(31,"label",5)(32,"input",11),Ee("ngModelChange",function(o){return Me(r.useEnterToSend,o)||(r.useEnterToSend=o),o}),D("change",function(){return r.onEnterToSendChange()}),p(),z(33,"span",7),b(34," Enter to send "),p(),h(35,"label",5)(36,"input",11),Ee("ngModelChange",function(o){return Me(r.useEnterToSend,o)||(r.useEnterToSend=o),o}),D("change",function(){return r.onEnterToSendChange()}),p(),z(37,"span",7),b(38," Enter for new line "),p()()(),h(39,"div",3)(40,"div",12)(41,"span",10),b(42,"Show technical messages"),p(),h(43,"mat-slide-toggle",13),Ee("ngModelChange",function(o){return Me(r.showTechnicalMessages,o)||(r.showTechnicalMessages=o),o}),D("change",function(){return r.onShowTechnicalMessagesChange()}),p()()(),h(44,"div",3)(45,"div",12)(46,"span",10),b(47,"Show warning messages"),p(),h(48,"mat-slide-toggle",13),Ee("ngModelChange",function(o){return Me(r.showWarningMessages,o)||(r.showWarningMessages=o),o}),D("change",function(){return r.onShowWarningMessagesChange()}),p()()(),h(49,"div",3)(50,"div",12)(51,"span",10),b(52,"Include technical messages in print"),p(),h(53,"mat-slide-toggle",13),Ee("ngModelChange",function(o){return Me(r.printTechnicalMessages,o)||(r.printTechnicalMessages=o),o}),D("change",function(){return r.onPrintTechnicalMessagesChange()}),p()()()(),h(54,"div",1)(55,"div",2)(56,"mat-icon"),b(57,"record_voice_over"),p(),h(58,"span"),b(59,"Voice & Speech"),p()(),h(60,"div",3)(61,"label",14),b(62,"Voice recognition language:"),p(),h(63,"select",15),Ee("ngModelChange",function(o){return Me(r.selectedVoiceLanguage,o)||(r.selectedVoiceLanguage=o),o}),D("change",function(){return r.onVoiceLanguageChange()}),At(64,iB,2,3,"option",16,nB),p()(),h(66,"div",3)(67,"span",10),b(68,"Automatic announcement:"),p(),h(69,"div",4)(70,"label",5)(71,"input",17),Ee("ngModelChange",function(o){return Me(r.voiceAnnounceEnabled,o)||(r.voiceAnnounceEnabled=o),o}),D("change",function(){return r.onVoiceAnnounceEnabledChange()}),p(),z(72,"span",7),b(73," Enabled "),p(),h(74,"label",5)(75,"input",17),Ee("ngModelChange",function(o){return Me(r.voiceAnnounceEnabled,o)||(r.voiceAnnounceEnabled=o),o}),D("change",function(){return r.onVoiceAnnounceEnabledChange()}),p(),z(76,"span",7),b(77," Disabled "),p()()(),h(78,"div",3)(79,"span",10),b(80,"Voice mode:"),p(),h(81,"div",4)(82,"label",5)(83,"input",18),Ee("ngModelChange",function(o){return Me(r.voiceMode,o)||(r.voiceMode=o),o}),D("change",function(){return r.onVoiceModeChange()}),p(),z(84,"span",7),b(85," Voice synthesis "),p(),h(86,"label",5)(87,"input",19),Ee("ngModelChange",function(o){return Me(r.voiceMode,o)||(r.voiceMode=o),o}),D("change",function(){return r.onVoiceModeChange()}),p(),z(88,"span",7),b(89," Sound notification "),p()()(),h(90,"div",3)(91,"span",10),b(92,"Message reading:"),p(),h(93,"div",4)(94,"label",5)(95,"input",20),Ee("ngModelChange",function(o){return Me(r.voiceReadFullText,o)||(r.voiceReadFullText=o),o}),D("change",function(){return r.onVoiceReadFullTextChange()}),p(),z(96,"span",7),b(97," Full message "),p(),h(98,"label",5)(99,"input",20),Ee("ngModelChange",function(o){return Me(r.voiceReadFullText,o)||(r.voiceReadFullText=o),o}),D("change",function(){return r.onVoiceReadFullTextChange()}),p(),z(100,"span",7),b(101," First paragraphs only "),p()()(),h(102,"div",3)(103,"label",21),b(104,"Selected voice:"),p(),h(105,"select",22),Ee("ngModelChange",function(o){return Me(r.selectedVoiceId,o)||(r.selectedVoiceId=o),o}),D("change",function(){return r.onSelectedVoiceChange()}),I(106,oB,2,0,"option",23),I(107,sB,2,0,"option",23),At(108,aB,2,2,"option",16,rB),p(),z(110,"div",10),h(111,"a",24),D("click",function(){return r.testVoice()}),h(112,"span",25),b(113,"Test voice"),p()()(),h(114,"div",3)(115,"label",26),b(116),p(),h(117,"input",27),Ee("ngModelChange",function(o){return Me(r.voiceVolume,o)||(r.voiceVolume=o),o}),D("input",function(){return r.onVoiceVolumeChange()}),p()(),h(118,"div",3)(119,"label",28),b(120),p(),h(121,"input",29),Ee("ngModelChange",function(o){return Me(r.voiceRate,o)||(r.voiceRate=o),o}),D("input",function(){return r.onVoiceRateChange()}),p()()()()),e&2&&(v(10),we("ngModel",r.selectedTheme),v(4),we("ngModel",r.selectedTheme),v(4),we("ngModel",r.selectedTheme),v(14),R("value",!0),we("ngModel",r.useEnterToSend),v(4),R("value",!1),we("ngModel",r.useEnterToSend),v(7),we("ngModel",r.showTechnicalMessages),v(5),we("ngModel",r.showWarningMessages),v(5),we("ngModel",r.printTechnicalMessages),v(10),we("ngModel",r.selectedVoiceLanguage),v(),Ot(r.voiceLanguageOptions),v(7),R("value",!0),we("ngModel",r.voiceAnnounceEnabled),v(4),R("value",!1),we("ngModel",r.voiceAnnounceEnabled),v(8),we("ngModel",r.voiceMode),v(4),we("ngModel",r.voiceMode),v(8),R("value",!0),we("ngModel",r.voiceReadFullText),v(4),R("value",!1),we("ngModel",r.voiceReadFullText),v(6),we("ngModel",r.selectedVoiceId),R("disabled",r.loadingVoices||r.availableVoices.length===0),v(),k(r.loadingVoices?106:-1),v(),k(!r.loadingVoices&&r.availableVoices.length===0?107:-1),v(),Ot(r.availableVoices),v(8),Ae("Volume: ",r.voiceVolume,"%"),v(),we("ngModel",r.voiceVolume),v(3),Ae("Speed: ",r.voiceRate,"%"),v(),we("ngModel",r.voiceRate))},dependencies:[Ut,fa,ha,cn,Gb,Pi,Nc,dn,Jt,un,mT],styles:['.options-content[_ngcontent-%COMP%]{padding:0;width:100%}.option-group[_ngcontent-%COMP%]{padding:0 1rem 1rem;margin-bottom:1rem;border-bottom:1px solid var(--color-border-light)}.option-group[_ngcontent-%COMP%]:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.option-label[_ngcontent-%COMP%]{display:block;margin-bottom:.5rem;font-weight:500;color:var(--color-text);font-size:.875rem}.toggle-option[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;gap:1rem}.toggle-option[_ngcontent-%COMP%] .option-label[_ngcontent-%COMP%]{margin-bottom:0;flex:1}.toggle-option[_ngcontent-%COMP%] mat-slide-toggle[_ngcontent-%COMP%]{flex-shrink:0}.option-select[_ngcontent-%COMP%]{width:100%;padding:.5rem;border:1px solid var(--color-border);border-radius:4px;background:var(--color-input-bg);color:var(--color-text);font-size:.875rem;cursor:pointer}.option-select[_ngcontent-%COMP%]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #7064fb1a}.option-select[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:not-allowed}.option-select[_ngcontent-%COMP%] option[_ngcontent-%COMP%]{padding:.5rem}.option-checkbox[_ngcontent-%COMP%]{display:flex;align-items:center;cursor:pointer;font-size:.875rem;color:var(--color-text);-webkit-user-select:none;user-select:none}.option-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]{display:none}.option-checkbox[_ngcontent-%COMP%] .checkmark[_ngcontent-%COMP%]{width:18px;height:18px;border:2px solid var(--color-border);border-radius:3px;margin-right:.75rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.option-checkbox[_ngcontent-%COMP%] .checkmark[_ngcontent-%COMP%]:after{content:"";width:10px;height:6px;border-left:2px solid transparent;border-bottom:2px solid transparent;transform:rotate(-45deg);transition:all .2s ease;opacity:0}.option-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + .checkmark[_ngcontent-%COMP%]{background-color:var(--color-primary);border-color:var(--color-primary)}.option-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + .checkmark[_ngcontent-%COMP%]:after{border-left-color:#fff;border-bottom-color:#fff;opacity:1}.option-checkbox[_ngcontent-%COMP%]:hover .checkmark[_ngcontent-%COMP%]{border-color:var(--color-primary)}.option-checkbox[_ngcontent-%COMP%]:focus-within .checkmark[_ngcontent-%COMP%]{box-shadow:0 0 0 3px #7064fb1a}.option-section[_ngcontent-%COMP%]{padding-top:1rem;margin-top:1rem;border-top:2px solid var(--color-border)}.option-section[_ngcontent-%COMP%]:first-child{border-top:none;padding-top:0;margin-top:0}.section-title[_ngcontent-%COMP%]{margin:0 0 1rem;padding:0 1rem;font-size:.9rem;font-weight:600;color:var(--color-text);display:flex;align-items:center;gap:.5rem}.section-title[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}.radio-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.option-radio[_ngcontent-%COMP%]{display:flex;align-items:center;cursor:pointer;font-size:.875rem;color:var(--color-text);-webkit-user-select:none;user-select:none}.option-radio[_ngcontent-%COMP%] input[type=radio][_ngcontent-%COMP%]{display:none}.option-radio[_ngcontent-%COMP%] .radio-mark[_ngcontent-%COMP%]{width:16px;height:16px;border:2px solid var(--color-border);border-radius:50%;margin-right:.5rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0;position:relative}.option-radio[_ngcontent-%COMP%] .radio-mark[_ngcontent-%COMP%]:after{content:"";width:8px;height:8px;border-radius:50%;background-color:var(--color-primary);transition:all .2s ease;opacity:0;transform:scale(0)}.option-radio[_ngcontent-%COMP%] input[type=radio][_ngcontent-%COMP%]:checked + .radio-mark[_ngcontent-%COMP%]{border-color:var(--color-primary)}.option-radio[_ngcontent-%COMP%] input[type=radio][_ngcontent-%COMP%]:checked + .radio-mark[_ngcontent-%COMP%]:after{opacity:1;transform:scale(1)}.option-radio[_ngcontent-%COMP%]:hover .radio-mark[_ngcontent-%COMP%]{border-color:var(--color-primary)}.option-radio[_ngcontent-%COMP%]:focus-within .radio-mark[_ngcontent-%COMP%]{box-shadow:0 0 0 3px #7064fb1a}.option-slider[_ngcontent-%COMP%]{width:100%;height:6px;border-radius:3px;background:var(--color-bg-solid);outline:none;cursor:pointer;-webkit-appearance:none;appearance:none}.option-slider[_ngcontent-%COMP%]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:2px solid white;box-shadow:0 2px 6px #0003;transition:all .2s ease}.option-slider[_ngcontent-%COMP%]::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 2px 8px #0000004d}.option-slider[_ngcontent-%COMP%]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:2px solid white;box-shadow:0 2px 6px #0003;transition:all .2s ease}.option-slider[_ngcontent-%COMP%]::-moz-range-thumb:hover{transform:scale(1.1);box-shadow:0 2px 8px #0000004d}.option-slider[_ngcontent-%COMP%]::-webkit-slider-track{height:6px;border-radius:3px;background:var(--color-bg-secondary)}.option-slider[_ngcontent-%COMP%]::-moz-range-track{height:6px;border-radius:3px;background:var(--color-bg-secondary);border:none}.option-slider[_ngcontent-%COMP%]:focus{outline:none}.option-slider[_ngcontent-%COMP%]:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px #7064fb4d,0 2px 6px #0003}.option-slider[_ngcontent-%COMP%]:focus::-moz-range-thumb{box-shadow:0 0 0 3px #7064fb4d,0 2px 6px #0003}.test-voice-btn[_ngcontent-%COMP%]{width:100%;padding:.75rem 1rem;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.test-voice-btn[_ngcontent-%COMP%]:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 2px 8px #7064fb4d}.test-voice-btn[_ngcontent-%COMP%]:active{transform:translateY(0);box-shadow:0 1px 4px #7064fb4d}.test-voice-btn[_ngcontent-%COMP%]:focus{outline:none;box-shadow:0 0 0 3px #7064fb4d}.test-voice-btn[_ngcontent-%COMP%]:disabled{background:var(--color-bg-secondary);color:var(--color-text-secondary);cursor:not-allowed;transform:none;box-shadow:none}.test-voice-link[_ngcontent-%COMP%]{text-decoration-thickness:1.5px;text-underline-offset:3px;background:transparent;border:none;padding:0;font-size:.775rem;font-weight:400;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:underline}.test-voice-link[_ngcontent-%COMP%]:hover{color:var(--color-primary-hover, var(--color-primary));text-decoration-thickness:2px}.test-voice-link[_ngcontent-%COMP%]:active{opacity:.8}.test-voice-link[_ngcontent-%COMP%]:focus{outline:2px solid var(--color-primary);outline-offset:2px}.test-voice-link[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}']})};var gT=(()=>{class n{static \u0275fac=function(r){return new(r||n)};static \u0275mod=oe({type:n});static \u0275inj=te({})}return n})();var fy=class{_box;_destroyed=new N;_resizeSubject=new N;_resizeObserver;_elementObservables=new Map;constructor(t){this._box=t,typeof ResizeObserver<"u"&&(this._resizeObserver=new ResizeObserver(e=>this._resizeSubject.next(e)))}observe(t){return this._elementObservables.has(t)||this._elementObservables.set(t,new ee(e=>{let r=this._resizeSubject.subscribe(e);return this._resizeObserver?.observe(t,{box:this._box}),()=>{this._resizeObserver?.unobserve(t),r.unsubscribe(),this._elementObservables.delete(t)}}).pipe(_e(e=>e.some(r=>r.target===t)),rr({bufferSize:1,refCount:!0}),B(this._destroyed))),this._elementObservables.get(t)}destroy(){this._destroyed.next(),this._destroyed.complete(),this._resizeSubject.complete(),this._elementObservables.clear()}},vT=(()=>{class n{_cleanupErrorListener;_observers=new Map;_ngZone=u(U);constructor(){typeof ResizeObserver<"u"}ngOnDestroy(){for(let[,e]of this._observers)e.destroy();this._observers.clear(),this._cleanupErrorListener?.()}observe(e,r){let i=r?.box||"content-box";return this._observers.has(i)||this._observers.set(i,new fy(i)),this._observers.get(i).observe(e)}static \u0275fac=function(r){return new(r||n)};static \u0275prov=C({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();var lB=["notch"],cB=["matFormFieldNotchedOutline",""],dB=["*"],_T=["iconPrefixContainer"],bT=["textPrefixContainer"],yT=["iconSuffixContainer"],CT=["textSuffixContainer"],uB=["textField"],fB=["*",[["mat-label"]],[["","matPrefix",""],["","matIconPrefix",""]],[["","matTextPrefix",""]],[["","matTextSuffix",""]],[["","matSuffix",""],["","matIconSuffix",""]],[["mat-error"],["","matError",""]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],hB=["*","mat-label","[matPrefix], [matIconPrefix]","[matTextPrefix]","[matTextSuffix]","[matSuffix], [matIconSuffix]","mat-error, [matError]","mat-hint:not([align='end'])","mat-hint[align='end']"];function pB(n,t){n&1&&z(0,"span",21)}function mB(n,t){if(n&1&&(h(0,"label",20),Ce(1,1),I(2,pB,1,0,"span",21),p()),n&2){let e=y(2);R("floating",e._shouldLabelFloat())("monitorResize",e._hasOutline())("id",e._labelId),ye("for",e._control.disableAutomaticLabeling?null:e._control.id),v(2),k(!e.hideRequiredMarker&&e._control.required?2:-1)}}function gB(n,t){if(n&1&&I(0,mB,3,5,"label",20),n&2){let e=y();k(e._hasFloatingLabel()?0:-1)}}function vB(n,t){n&1&&z(0,"div",7)}function _B(n,t){}function bB(n,t){if(n&1&&mr(0,_B,0,0,"ng-template",13),n&2){y(2);let e=wi(1);R("ngTemplateOutlet",e)}}function yB(n,t){if(n&1&&(h(0,"div",9),I(1,bB,1,1,null,13),p()),n&2){let e=y();R("matFormFieldNotchedOutlineOpen",e._shouldLabelFloat()),v(),k(e._forceDisplayInfixLabel()?-1:1)}}function CB(n,t){n&1&&(h(0,"div",10,2),Ce(2,2),p())}function wB(n,t){n&1&&(h(0,"div",11,3),Ce(2,3),p())}function EB(n,t){}function SB(n,t){if(n&1&&mr(0,EB,0,0,"ng-template",13),n&2){y();let e=wi(1);R("ngTemplateOutlet",e)}}function xB(n,t){n&1&&(h(0,"div",14,4),Ce(2,4),p())}function DB(n,t){n&1&&(h(0,"div",15,5),Ce(2,5),p())}function MB(n,t){n&1&&z(0,"div",16)}function TB(n,t){n&1&&(h(0,"div",18),Ce(1,6),p())}function IB(n,t){if(n&1&&(h(0,"mat-hint",22),b(1),p()),n&2){let e=y(2);R("id",e._hintLabelId),v(),ke(e.hintLabel)}}function kB(n,t){if(n&1&&(h(0,"div",19),I(1,IB,2,2,"mat-hint",22),Ce(2,7),z(3,"div",23),Ce(4,8),p()),n&2){let e=y();v(),k(e.hintLabel?1:-1)}}var wT=(()=>{class n{static \u0275fac=function(r){return new(r||n)};static \u0275dir=se({type:n,selectors:[["mat-label"]]})}return n})(),AB=new T("MatError");var ET=(()=>{class n{align="start";id=u(xr).getId("mat-mdc-hint-");static \u0275fac=function(r){return new(r||n)};static \u0275dir=se({type:n,selectors:[["mat-hint"]],hostAttrs:[1,"mat-mdc-form-field-hint","mat-mdc-form-field-bottom-align"],hostVars:4,hostBindings:function(r,i){r&2&&(Br("id",i.id),ye("align",null),G("mat-mdc-form-field-hint-end",i.align==="end"))},inputs:{align:"align",id:"id"}})}return n})(),OB=new T("MatPrefix");var RB=new T("MatSuffix");var kT=new T("FloatingLabelParent"),ST=(()=>{class n{_elementRef=u(ne);get floating(){return this._floating}set floating(e){this._floating=e,this.monitorResize&&this._handleResize()}_floating=!1;get monitorResize(){return this._monitorResize}set monitorResize(e){this._monitorResize=e,this._monitorResize?this._subscribeToResize():this._resizeSubscription.unsubscribe()}_monitorResize=!1;_resizeObserver=u(vT);_ngZone=u(U);_parent=u(kT);_resizeSubscription=new Le;constructor(){}ngOnDestroy(){this._resizeSubscription.unsubscribe()}getWidth(){return PB(this._elementRef.nativeElement)}get element(){return this._elementRef.nativeElement}_handleResize(){setTimeout(()=>this._parent._handleLabelResized())}_subscribeToResize(){this._resizeSubscription.unsubscribe(),this._ngZone.runOutsideAngular(()=>{this._resizeSubscription=this._resizeObserver.observe(this._elementRef.nativeElement,{box:"border-box"}).subscribe(()=>this._handleResize())})}static \u0275fac=function(r){return new(r||n)};static \u0275dir=se({type:n,selectors:[["label","matFormFieldFloatingLabel",""]],hostAttrs:[1,"mdc-floating-label","mat-mdc-floating-label"],hostVars:2,hostBindings:function(r,i){r&2&&G("mdc-floating-label--float-above",i.floating)},inputs:{floating:"floating",monitorResize:"monitorResize"}})}return n})();function PB(n){let t=n;if(t.offsetParent!==null)return t.scrollWidth;let e=t.cloneNode(!0);e.style.setProperty("position","absolute"),e.style.setProperty("transform","translate(-9999px, -9999px)"),document.documentElement.appendChild(e);let r=e.scrollWidth;return e.remove(),r}var xT="mdc-line-ripple--active",cp="mdc-line-ripple--deactivating",DT=(()=>{class n{_elementRef=u(ne);_cleanupTransitionEnd;constructor(){let e=u(U),r=u(lt);e.runOutsideAngular(()=>{this._cleanupTransitionEnd=r.listen(this._elementRef.nativeElement,"transitionend",this._handleTransitionEnd)})}activate(){let e=this._elementRef.nativeElement.classList;e.remove(cp),e.add(xT)}deactivate(){this._elementRef.nativeElement.classList.add(cp)}_handleTransitionEnd=e=>{let r=this._elementRef.nativeElement.classList,i=r.contains(cp);e.propertyName==="opacity"&&i&&r.remove(xT,cp)};ngOnDestroy(){this._cleanupTransitionEnd()}static \u0275fac=function(r){return new(r||n)};static \u0275dir=se({type:n,selectors:[["div","matFormFieldLineRipple",""]],hostAttrs:[1,"mdc-line-ripple"]})}return n})(),MT=(()=>{class n{_elementRef=u(ne);_ngZone=u(U);open=!1;_notch;ngAfterViewInit(){let e=this._elementRef.nativeElement,r=e.querySelector(".mdc-floating-label");r?(e.classList.add("mdc-notched-outline--upgraded"),typeof requestAnimationFrame=="function"&&(r.style.transitionDuration="0s",this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>r.style.transitionDuration="")}))):e.classList.add("mdc-notched-outline--no-label")}_setNotchWidth(e){let r=this._notch.nativeElement;!this.open||!e?r.style.width="":r.style.width=`calc(${e}px * var(--mat-mdc-form-field-floating-label-scale, 0.75) + 9px)`}_setMaxWidth(e){this._notch.nativeElement.style.setProperty("--mat-form-field-notch-max-width",`calc(100% - ${e}px)`)}static \u0275fac=function(r){return new(r||n)};static \u0275cmp=F({type:n,selectors:[["div","matFormFieldNotchedOutline",""]],viewQuery:function(r,i){if(r&1&&De(lB,5),r&2){let o;ce(o=de())&&(i._notch=o.first)}},hostAttrs:[1,"mdc-notched-outline"],hostVars:2,hostBindings:function(r,i){r&2&&G("mdc-notched-outline--notched",i.open)},inputs:{open:[0,"matFormFieldNotchedOutlineOpen","open"]},attrs:cB,ngContentSelectors:dB,decls:5,vars:0,consts:[["notch",""],[1,"mat-mdc-notch-piece","mdc-notched-outline__leading"],[1,"mat-mdc-notch-piece","mdc-notched-outline__notch"],[1,"mat-mdc-notch-piece","mdc-notched-outline__trailing"]],template:function(r,i){r&1&&(Xe(),Rt(0,"div",1),Te(1,"div",2,0),Ce(3),Ie(),Rt(4,"div",3))},encapsulation:2,changeDetection:0})}return n})(),NB=(()=>{class n{value;stateChanges;id;placeholder;ngControl;focused;empty;shouldLabelFloat;required;disabled;errorState;controlType;autofilled;userAriaDescribedBy;disableAutomaticLabeling;describedByIds;static \u0275fac=function(r){return new(r||n)};static \u0275dir=se({type:n})}return n})();var FB=new T("MatFormField"),LB=new T("MAT_FORM_FIELD_DEFAULT_OPTIONS"),TT="fill",jB="auto",IT="fixed",VB="translateY(-50%)",AT=(()=>{class n{_elementRef=u(ne);_changeDetectorRef=u(mt);_platform=u(ze);_idGenerator=u(xr);_ngZone=u(U);_defaults=u(LB,{optional:!0});_currentDirection;_textField;_iconPrefixContainer;_textPrefixContainer;_iconSuffixContainer;_textSuffixContainer;_floatingLabel;_notchedOutline;_lineRipple;_iconPrefixContainerSignal=Al("iconPrefixContainer");_textPrefixContainerSignal=Al("textPrefixContainer");_iconSuffixContainerSignal=Al("iconSuffixContainer");_textSuffixContainerSignal=Al("textSuffixContainer");_prefixSuffixContainers=Qt(()=>[this._iconPrefixContainerSignal(),this._textPrefixContainerSignal(),this._iconSuffixContainerSignal(),this._textSuffixContainerSignal()].map(e=>e?.nativeElement).filter(e=>e!==void 0));_formFieldControl;_prefixChildren;_suffixChildren;_errorChildren;_hintChildren;_labelChild=NE(wT);get hideRequiredMarker(){return this._hideRequiredMarker}set hideRequiredMarker(e){this._hideRequiredMarker=Gr(e)}_hideRequiredMarker=!1;color="primary";get floatLabel(){return this._floatLabel||this._defaults?.floatLabel||jB}set floatLabel(e){e!==this._floatLabel&&(this._floatLabel=e,this._changeDetectorRef.markForCheck())}_floatLabel;get appearance(){return this._appearanceSignal()}set appearance(e){let r=e||this._defaults?.appearance||TT;this._appearanceSignal.set(r)}_appearanceSignal=it(TT);get subscriptSizing(){return this._subscriptSizing||this._defaults?.subscriptSizing||IT}set subscriptSizing(e){this._subscriptSizing=e||this._defaults?.subscriptSizing||IT}_subscriptSizing=null;get hintLabel(){return this._hintLabel}set hintLabel(e){this._hintLabel=e,this._processHints()}_hintLabel="";_hasIconPrefix=!1;_hasTextPrefix=!1;_hasIconSuffix=!1;_hasTextSuffix=!1;_labelId=this._idGenerator.getId("mat-mdc-form-field-label-");_hintLabelId=this._idGenerator.getId("mat-mdc-hint-");_describedByIds;get _control(){return this._explicitFormFieldControl||this._formFieldControl}set _control(e){this._explicitFormFieldControl=e}_destroyed=new N;_isFocused=null;_explicitFormFieldControl;_previousControl=null;_previousControlValidatorFn=null;_stateChanges;_valueChanges;_describedByChanges;_outlineLabelOffsetResizeObserver=null;_animationsDisabled=Kt();constructor(){let e=this._defaults,r=u(Yr);e&&(e.appearance&&(this.appearance=e.appearance),this._hideRequiredMarker=!!e?.hideRequiredMarker,e.color&&(this.color=e.color)),Il(()=>this._currentDirection=r.valueSignal()),this._syncOutlineLabelOffset()}ngAfterViewInit(){this._updateFocusState(),this._animationsDisabled||this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{this._elementRef.nativeElement.classList.add("mat-form-field-animations-enabled")},300)}),this._changeDetectorRef.detectChanges()}ngAfterContentInit(){this._assertFormFieldControl(),this._initializeSubscript(),this._initializePrefixAndSuffix()}ngAfterContentChecked(){this._assertFormFieldControl(),this._control!==this._previousControl&&(this._initializeControl(this._previousControl),this._control.ngControl&&this._control.ngControl.control&&(this._previousControlValidatorFn=this._control.ngControl.control.validator),this._previousControl=this._control),this._control.ngControl&&this._control.ngControl.control&&this._control.ngControl.control.validator!==this._previousControlValidatorFn&&this._changeDetectorRef.markForCheck()}ngOnDestroy(){this._outlineLabelOffsetResizeObserver?.disconnect(),this._stateChanges?.unsubscribe(),this._valueChanges?.unsubscribe(),this._describedByChanges?.unsubscribe(),this._destroyed.next(),this._destroyed.complete()}getLabelId=Qt(()=>this._hasFloatingLabel()?this._labelId:null);getConnectedOverlayOrigin(){return this._textField||this._elementRef}_animateAndLockLabel(){this._hasFloatingLabel()&&(this.floatLabel="always")}_initializeControl(e){let r=this._control,i="mat-mdc-form-field-type-";e&&this._elementRef.nativeElement.classList.remove(i+e.controlType),r.controlType&&this._elementRef.nativeElement.classList.add(i+r.controlType),this._stateChanges?.unsubscribe(),this._stateChanges=r.stateChanges.subscribe(()=>{this._updateFocusState(),this._changeDetectorRef.markForCheck()}),this._describedByChanges?.unsubscribe(),this._describedByChanges=r.stateChanges.pipe(rn([void 0,void 0]),j(()=>[r.errorState,r.userAriaDescribedBy]),Id(),_e(([[o,s],[a,l]])=>o!==a||s!==l)).subscribe(()=>this._syncDescribedByIds()),this._valueChanges?.unsubscribe(),r.ngControl&&r.ngControl.valueChanges&&(this._valueChanges=r.ngControl.valueChanges.pipe(B(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()))}_checkPrefixAndSuffixTypes(){this._hasIconPrefix=!!this._prefixChildren.find(e=>!e._isText),this._hasTextPrefix=!!this._prefixChildren.find(e=>e._isText),this._hasIconSuffix=!!this._suffixChildren.find(e=>!e._isText),this._hasTextSuffix=!!this._suffixChildren.find(e=>e._isText)}_initializePrefixAndSuffix(){this._checkPrefixAndSuffixTypes(),za(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._checkPrefixAndSuffixTypes(),this._changeDetectorRef.markForCheck()})}_initializeSubscript(){this._hintChildren.changes.subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._validateHints(),this._syncDescribedByIds()}_assertFormFieldControl(){this._control}_updateFocusState(){let e=this._control.focused;e&&!this._isFocused?(this._isFocused=!0,this._lineRipple?.activate()):!e&&(this._isFocused||this._isFocused===null)&&(this._isFocused=!1,this._lineRipple?.deactivate()),this._elementRef.nativeElement.classList.toggle("mat-focused",e),this._textField?.nativeElement.classList.toggle("mdc-text-field--focused",e)}_syncOutlineLabelOffset(){jE({earlyRead:()=>{if(this._appearanceSignal()!=="outline")return this._outlineLabelOffsetResizeObserver?.disconnect(),null;if(globalThis.ResizeObserver){this._outlineLabelOffsetResizeObserver||=new globalThis.ResizeObserver(()=>{this._writeOutlinedLabelStyles(this._getOutlinedLabelOffset())});for(let e of this._prefixSuffixContainers())this._outlineLabelOffsetResizeObserver.observe(e,{box:"border-box"})}return this._getOutlinedLabelOffset()},write:e=>this._writeOutlinedLabelStyles(e())})}_shouldAlwaysFloat(){return this.floatLabel==="always"}_hasOutline(){return this.appearance==="outline"}_forceDisplayInfixLabel(){return!this._platform.isBrowser&&this._prefixChildren.length&&!this._shouldLabelFloat()}_hasFloatingLabel=Qt(()=>!!this._labelChild());_shouldLabelFloat(){return this._hasFloatingLabel()?this._control.shouldLabelFloat||this._shouldAlwaysFloat():!1}_shouldForward(e){let r=this._control?this._control.ngControl:null;return r&&r[e]}_getSubscriptMessageType(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}_handleLabelResized(){this._refreshOutlineNotchWidth()}_refreshOutlineNotchWidth(){!this._hasOutline()||!this._floatingLabel||!this._shouldLabelFloat()?this._notchedOutline?._setNotchWidth(0):this._notchedOutline?._setNotchWidth(this._floatingLabel.getWidth())}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){this._hintChildren}_syncDescribedByIds(){if(this._control){let e=[];if(this._control.userAriaDescribedBy&&typeof this._control.userAriaDescribedBy=="string"&&e.push(...this._control.userAriaDescribedBy.split(" ")),this._getSubscriptMessageType()==="hint"){let o=this._hintChildren?this._hintChildren.find(a=>a.align==="start"):null,s=this._hintChildren?this._hintChildren.find(a=>a.align==="end"):null;o?e.push(o.id):this._hintLabel&&e.push(this._hintLabelId),s&&e.push(s.id)}else this._errorChildren&&e.push(...this._errorChildren.map(o=>o.id));let r=this._control.describedByIds,i;if(r){let o=this._describedByIds||e;i=e.concat(r.filter(s=>s&&!o.includes(s)))}else i=e;this._control.setDescribedByIds(i),this._describedByIds=e}}_getOutlinedLabelOffset(){if(!this._hasOutline()||!this._floatingLabel)return null;if(!this._iconPrefixContainer&&!this._textPrefixContainer)return["",null];if(!this._isAttachedToDom())return null;let e=this._iconPrefixContainer?.nativeElement,r=this._textPrefixContainer?.nativeElement,i=this._iconSuffixContainer?.nativeElement,o=this._textSuffixContainer?.nativeElement,s=e?.getBoundingClientRect().width??0,a=r?.getBoundingClientRect().width??0,l=i?.getBoundingClientRect().width??0,c=o?.getBoundingClientRect().width??0,d=this._currentDirection==="rtl"?"-1":"1",f=`${s+a}px`,m=`calc(${d} * (${f} + var(--mat-mdc-form-field-label-offset-x, 0px)))`,_=`var(--mat-mdc-form-field-label-transform, ${VB} translateX(${m}))`,w=s+a+l+c;return[_,w]}_writeOutlinedLabelStyles(e){if(e!==null){let[r,i]=e;this._floatingLabel&&(this._floatingLabel.element.style.transform=r),i!==null&&this._notchedOutline?._setMaxWidth(i)}}_isAttachedToDom(){let e=this._elementRef.nativeElement;if(e.getRootNode){let r=e.getRootNode();return r&&r!==e}return document.documentElement.contains(e)}static \u0275fac=function(r){return new(r||n)};static \u0275cmp=F({type:n,selectors:[["mat-form-field"]],contentQueries:function(r,i,o){if(r&1&&(Iv(o,i._labelChild,wT,5),vn(o,NB,5),vn(o,OB,5),vn(o,RB,5),vn(o,AB,5),vn(o,ET,5)),r&2){$u();let s;ce(s=de())&&(i._formFieldControl=s.first),ce(s=de())&&(i._prefixChildren=s),ce(s=de())&&(i._suffixChildren=s),ce(s=de())&&(i._errorChildren=s),ce(s=de())&&(i._hintChildren=s)}},viewQuery:function(r,i){if(r&1&&(Ds(i._iconPrefixContainerSignal,_T,5),Ds(i._textPrefixContainerSignal,bT,5),Ds(i._iconSuffixContainerSignal,yT,5),Ds(i._textSuffixContainerSignal,CT,5),De(uB,5),De(_T,5),De(bT,5),De(yT,5),De(CT,5),De(ST,5),De(MT,5),De(DT,5)),r&2){$u(4);let o;ce(o=de())&&(i._textField=o.first),ce(o=de())&&(i._iconPrefixContainer=o.first),ce(o=de())&&(i._textPrefixContainer=o.first),ce(o=de())&&(i._iconSuffixContainer=o.first),ce(o=de())&&(i._textSuffixContainer=o.first),ce(o=de())&&(i._floatingLabel=o.first),ce(o=de())&&(i._notchedOutline=o.first),ce(o=de())&&(i._lineRipple=o.first)}},hostAttrs:[1,"mat-mdc-form-field"],hostVars:38,hostBindings:function(r,i){r&2&&G("mat-mdc-form-field-label-always-float",i._shouldAlwaysFloat())("mat-mdc-form-field-has-icon-prefix",i._hasIconPrefix)("mat-mdc-form-field-has-icon-suffix",i._hasIconSuffix)("mat-form-field-invalid",i._control.errorState)("mat-form-field-disabled",i._control.disabled)("mat-form-field-autofilled",i._control.autofilled)("mat-form-field-appearance-fill",i.appearance=="fill")("mat-form-field-appearance-outline",i.appearance=="outline")("mat-form-field-hide-placeholder",i._hasFloatingLabel()&&!i._shouldLabelFloat())("mat-primary",i.color!=="accent"&&i.color!=="warn")("mat-accent",i.color==="accent")("mat-warn",i.color==="warn")("ng-untouched",i._shouldForward("untouched"))("ng-touched",i._shouldForward("touched"))("ng-pristine",i._shouldForward("pristine"))("ng-dirty",i._shouldForward("dirty"))("ng-valid",i._shouldForward("valid"))("ng-invalid",i._shouldForward("invalid"))("ng-pending",i._shouldForward("pending"))},inputs:{hideRequiredMarker:"hideRequiredMarker",color:"color",floatLabel:"floatLabel",appearance:"appearance",subscriptSizing:"subscriptSizing",hintLabel:"hintLabel"},exportAs:["matFormField"],features:[Je([{provide:FB,useExisting:n},{provide:kT,useExisting:n}])],ngContentSelectors:hB,decls:18,vars:21,consts:[["labelTemplate",""],["textField",""],["iconPrefixContainer",""],["textPrefixContainer",""],["textSuffixContainer",""],["iconSuffixContainer",""],[1,"mat-mdc-text-field-wrapper","mdc-text-field",3,"click"],[1,"mat-mdc-form-field-focus-overlay"],[1,"mat-mdc-form-field-flex"],["matFormFieldNotchedOutline","",3,"matFormFieldNotchedOutlineOpen"],[1,"mat-mdc-form-field-icon-prefix"],[1,"mat-mdc-form-field-text-prefix"],[1,"mat-mdc-form-field-infix"],[3,"ngTemplateOutlet"],[1,"mat-mdc-form-field-text-suffix"],[1,"mat-mdc-form-field-icon-suffix"],["matFormFieldLineRipple",""],["aria-atomic","true","aria-live","polite",1,"mat-mdc-form-field-subscript-wrapper","mat-mdc-form-field-bottom-align"],[1,"mat-mdc-form-field-error-wrapper"],[1,"mat-mdc-form-field-hint-wrapper"],["matFormFieldFloatingLabel","",3,"floating","monitorResize","id"],["aria-hidden","true",1,"mat-mdc-form-field-required-marker","mdc-floating-label--required"],[3,"id"],[1,"mat-mdc-form-field-hint-spacer"]],template:function(r,i){if(r&1){let o=$();Xe(fB),mr(0,gB,1,1,"ng-template",null,0,Tl),h(2,"div",6,1),D("click",function(a){return S(o),x(i._control.onContainerClick(a))}),I(4,vB,1,0,"div",7),h(5,"div",8),I(6,yB,2,2,"div",9),I(7,CB,3,0,"div",10),I(8,wB,3,0,"div",11),h(9,"div",12),I(10,SB,1,1,null,13),Ce(11),p(),I(12,xB,3,0,"div",14),I(13,DB,3,0,"div",15),p(),I(14,MB,1,0,"div",16),p(),h(15,"div",17),I(16,TB,2,0,"div",18)(17,kB,5,1,"div",19),p()}if(r&2){let o;v(2),G("mdc-text-field--filled",!i._hasOutline())("mdc-text-field--outlined",i._hasOutline())("mdc-text-field--no-label",!i._hasFloatingLabel())("mdc-text-field--disabled",i._control.disabled)("mdc-text-field--invalid",i._control.errorState),v(2),k(!i._hasOutline()&&!i._control.disabled?4:-1),v(2),k(i._hasOutline()?6:-1),v(),k(i._hasIconPrefix?7:-1),v(),k(i._hasTextPrefix?8:-1),v(2),k(!i._hasOutline()||i._forceDisplayInfixLabel()?10:-1),v(2),k(i._hasTextSuffix?12:-1),v(),k(i._hasIconSuffix?13:-1),v(),k(i._hasOutline()?-1:14),v(),G("mat-mdc-form-field-subscript-dynamic-size",i.subscriptSizing==="dynamic");let s=i._getSubscriptMessageType();v(),k((o=s)==="error"?16:o==="hint"?17:-1)}},dependencies:[ST,MT,Pl,DT,ET],styles:[`.mdc-text-field{display:inline-flex;align-items:baseline;padding:0 16px;position:relative;box-sizing:border-box;overflow:hidden;will-change:opacity,transform,color;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.mdc-text-field__input{width:100%;min-width:0;border:none;border-radius:0;background:none;padding:0;-moz-appearance:none;-webkit-appearance:none;height:28px}.mdc-text-field__input::-webkit-calendar-picker-indicator,.mdc-text-field__input::-webkit-search-cancel-button{display:none}.mdc-text-field__input::-ms-clear{display:none}.mdc-text-field__input:focus{outline:none}.mdc-text-field__input:invalid{box-shadow:none}.mdc-text-field__input::placeholder{opacity:0}.mdc-text-field__input::-moz-placeholder{opacity:0}.mdc-text-field__input::-webkit-input-placeholder{opacity:0}.mdc-text-field__input:-ms-input-placeholder{opacity:0}.mdc-text-field--no-label .mdc-text-field__input::placeholder,.mdc-text-field--focused .mdc-text-field__input::placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input::-moz-placeholder,.mdc-text-field--focused .mdc-text-field__input::-moz-placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input::-webkit-input-placeholder,.mdc-text-field--focused .mdc-text-field__input::-webkit-input-placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder,.mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder{opacity:1}.mdc-text-field--disabled:not(.mdc-text-field--no-label) .mdc-text-field__input.mat-mdc-input-disabled-interactive::placeholder{opacity:0}.mdc-text-field--disabled:not(.mdc-text-field--no-label) .mdc-text-field__input.mat-mdc-input-disabled-interactive::-moz-placeholder{opacity:0}.mdc-text-field--disabled:not(.mdc-text-field--no-label) .mdc-text-field__input.mat-mdc-input-disabled-interactive::-webkit-input-placeholder{opacity:0}.mdc-text-field--disabled:not(.mdc-text-field--no-label) .mdc-text-field__input.mat-mdc-input-disabled-interactive:-ms-input-placeholder{opacity:0}.mdc-text-field--outlined .mdc-text-field__input,.mdc-text-field--filled.mdc-text-field--no-label .mdc-text-field__input{height:100%}.mdc-text-field--outlined .mdc-text-field__input{display:flex;border:none !important;background-color:rgba(0,0,0,0)}.mdc-text-field--disabled .mdc-text-field__input{pointer-events:auto}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input{color:var(--mat-form-field-filled-input-text-color, var(--mat-sys-on-surface));caret-color:var(--mat-form-field-filled-caret-color, var(--mat-sys-primary))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder{color:var(--mat-form-field-filled-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder{color:var(--mat-form-field-filled-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder{color:var(--mat-form-field-filled-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder{color:var(--mat-form-field-filled-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input{color:var(--mat-form-field-outlined-input-text-color, var(--mat-sys-on-surface));caret-color:var(--mat-form-field-outlined-caret-color, var(--mat-sys-primary))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder{color:var(--mat-form-field-outlined-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder{color:var(--mat-form-field-outlined-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder{color:var(--mat-form-field-outlined-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder{color:var(--mat-form-field-outlined-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--mat-form-field-filled-error-caret-color, var(--mat-sys-error))}.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--mat-form-field-outlined-error-caret-color, var(--mat-sys-error))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-text-field__input{color:var(--mat-form-field-filled-disabled-input-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input{color:var(--mat-form-field-outlined-disabled-input-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}@media(forced-colors: active){.mdc-text-field--disabled .mdc-text-field__input{background-color:Window}}.mdc-text-field--filled{height:56px;border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-left-radius:var(--mat-form-field-filled-container-shape, var(--mat-sys-corner-extra-small));border-top-right-radius:var(--mat-form-field-filled-container-shape, var(--mat-sys-corner-extra-small))}.mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:var(--mat-form-field-filled-container-color, var(--mat-sys-surface-variant))}.mdc-text-field--filled.mdc-text-field--disabled{background-color:var(--mat-form-field-filled-disabled-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 4%, transparent))}.mdc-text-field--outlined{height:56px;overflow:visible;padding-right:max(16px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)));padding-left:max(16px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)) + 4px)}[dir=rtl] .mdc-text-field--outlined{padding-right:max(16px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)) + 4px);padding-left:max(16px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)))}.mdc-floating-label{position:absolute;left:0;transform-origin:left top;line-height:1.15rem;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:text;overflow:hidden;will-change:transform}[dir=rtl] .mdc-floating-label{right:0;left:auto;transform-origin:right top;text-align:right}.mdc-text-field .mdc-floating-label{top:50%;transform:translateY(-50%);pointer-events:none}.mdc-notched-outline .mdc-floating-label{display:inline-block;position:relative;max-width:100%}.mdc-text-field--outlined .mdc-floating-label{left:4px;right:auto}[dir=rtl] .mdc-text-field--outlined .mdc-floating-label{left:auto;right:4px}.mdc-text-field--filled .mdc-floating-label{left:16px;right:auto}[dir=rtl] .mdc-text-field--filled .mdc-floating-label{left:auto;right:16px}.mdc-text-field--disabled .mdc-floating-label{cursor:default}@media(forced-colors: active){.mdc-text-field--disabled .mdc-floating-label{z-index:1}}.mdc-text-field--filled.mdc-text-field--no-label .mdc-floating-label{display:none}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-floating-label{color:var(--mat-form-field-filled-label-text-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label{color:var(--mat-form-field-filled-focus-label-text-color, var(--mat-sys-primary))}.mdc-text-field--filled:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-floating-label{color:var(--mat-form-field-filled-hover-label-text-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-floating-label{color:var(--mat-form-field-filled-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label{color:var(--mat-form-field-filled-error-label-text-color, var(--mat-sys-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label{color:var(--mat-form-field-filled-error-focus-label-text-color, var(--mat-sys-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-floating-label{color:var(--mat-form-field-filled-error-hover-label-text-color, var(--mat-sys-on-error-container))}.mdc-text-field--filled .mdc-floating-label{font-family:var(--mat-form-field-filled-label-text-font, var(--mat-sys-body-large-font));font-size:var(--mat-form-field-filled-label-text-size, var(--mat-sys-body-large-size));font-weight:var(--mat-form-field-filled-label-text-weight, var(--mat-sys-body-large-weight));letter-spacing:var(--mat-form-field-filled-label-text-tracking, var(--mat-sys-body-large-tracking))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-floating-label{color:var(--mat-form-field-outlined-label-text-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label{color:var(--mat-form-field-outlined-focus-label-text-color, var(--mat-sys-primary))}.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-floating-label{color:var(--mat-form-field-outlined-hover-label-text-color, var(--mat-sys-on-surface))}.mdc-text-field--outlined.mdc-text-field--disabled .mdc-floating-label{color:var(--mat-form-field-outlined-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label{color:var(--mat-form-field-outlined-error-label-text-color, var(--mat-sys-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label{color:var(--mat-form-field-outlined-error-focus-label-text-color, var(--mat-sys-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-floating-label{color:var(--mat-form-field-outlined-error-hover-label-text-color, var(--mat-sys-on-error-container))}.mdc-text-field--outlined .mdc-floating-label{font-family:var(--mat-form-field-outlined-label-text-font, var(--mat-sys-body-large-font));font-size:var(--mat-form-field-outlined-label-text-size, var(--mat-sys-body-large-size));font-weight:var(--mat-form-field-outlined-label-text-weight, var(--mat-sys-body-large-weight));letter-spacing:var(--mat-form-field-outlined-label-text-tracking, var(--mat-sys-body-large-tracking))}.mdc-floating-label--float-above{cursor:auto;transform:translateY(-106%) scale(0.75)}.mdc-text-field--filled .mdc-floating-label--float-above{transform:translateY(-106%) scale(0.75)}.mdc-text-field--outlined .mdc-floating-label--float-above{transform:translateY(-37.25px) scale(1);font-size:.75rem}.mdc-notched-outline .mdc-floating-label--float-above{text-overflow:clip}.mdc-notched-outline--upgraded .mdc-floating-label--float-above{max-width:133.3333333333%}.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{transform:translateY(-34.75px) scale(0.75)}.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{font-size:1rem}.mdc-floating-label--required:not(.mdc-floating-label--hide-required-marker)::after{margin-left:1px;margin-right:0;content:"*"}[dir=rtl] .mdc-floating-label--required:not(.mdc-floating-label--hide-required-marker)::after{margin-left:0;margin-right:1px}.mdc-notched-outline{display:flex;position:absolute;top:0;right:0;left:0;box-sizing:border-box;width:100%;max-width:100%;height:100%;text-align:left;pointer-events:none}[dir=rtl] .mdc-notched-outline{text-align:right}.mdc-text-field--outlined .mdc-notched-outline{z-index:1}.mat-mdc-notch-piece{box-sizing:border-box;height:100%;pointer-events:none;border-top:1px solid;border-bottom:1px solid}.mdc-text-field--focused .mat-mdc-notch-piece{border-width:2px}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-outline-color, var(--mat-sys-outline));border-width:var(--mat-form-field-outlined-outline-width, 1px)}.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-hover-outline-color, var(--mat-sys-on-surface))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-focus-outline-color, var(--mat-sys-primary))}.mdc-text-field--outlined.mdc-text-field--disabled .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-disabled-outline-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-error-outline-color, var(--mat-sys-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--focused):hover .mdc-notched-outline .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-error-hover-outline-color, var(--mat-sys-on-error-container))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-error-focus-outline-color, var(--mat-sys-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline .mat-mdc-notch-piece{border-width:var(--mat-form-field-outlined-focus-outline-width, 2px)}.mdc-notched-outline__leading{border-left:1px solid;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small));border-bottom-left-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))}.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading{width:max(12px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)))}[dir=rtl] .mdc-notched-outline__leading{border-left:none;border-right:1px solid;border-bottom-left-radius:0;border-top-left-radius:0;border-top-right-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small));border-bottom-right-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))}.mdc-notched-outline__trailing{flex-grow:1;border-left:none;border-right:1px solid;border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small));border-bottom-right-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))}[dir=rtl] .mdc-notched-outline__trailing{border-left:1px solid;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small));border-bottom-left-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))}.mdc-notched-outline__notch{flex:0 0 auto;width:auto}.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__notch{max-width:min(var(--mat-form-field-notch-max-width, 100%),calc(100% - max(12px, var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))) * 2))}.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{max-width:min(100%,calc(100% - max(12px, var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))) * 2))}.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-top:1px}.mdc-text-field--focused.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-top:2px}.mdc-notched-outline--notched .mdc-notched-outline__notch{padding-left:0;padding-right:8px;border-top:none}[dir=rtl] .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-left:8px;padding-right:0}.mdc-notched-outline--no-label .mdc-notched-outline__notch{display:none}.mdc-line-ripple::before,.mdc-line-ripple::after{position:absolute;bottom:0;left:0;width:100%;border-bottom-style:solid;content:""}.mdc-line-ripple::before{z-index:1;border-bottom-width:var(--mat-form-field-filled-active-indicator-height, 1px)}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-active-indicator-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-hover-active-indicator-color, var(--mat-sys-on-surface))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-disabled-active-indicator-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-error-active-indicator-color, var(--mat-sys-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--focused):hover .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-error-hover-active-indicator-color, var(--mat-sys-on-error-container))}.mdc-line-ripple::after{transform:scaleX(0);opacity:0;z-index:2}.mdc-text-field--filled .mdc-line-ripple::after{border-bottom-width:var(--mat-form-field-filled-focus-active-indicator-height, 2px)}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::after{border-bottom-color:var(--mat-form-field-filled-focus-active-indicator-color, var(--mat-sys-primary))}.mdc-text-field--filled.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-line-ripple::after{border-bottom-color:var(--mat-form-field-filled-error-focus-active-indicator-color, var(--mat-sys-error))}.mdc-line-ripple--active::after{transform:scaleX(1);opacity:1}.mdc-line-ripple--deactivating::after{opacity:0}.mdc-text-field--disabled{pointer-events:none}.mat-mdc-form-field-textarea-control{vertical-align:middle;resize:vertical;box-sizing:border-box;height:auto;margin:0;padding:0;border:none;overflow:auto}.mat-mdc-form-field-input-control.mat-mdc-form-field-input-control{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font:inherit;letter-spacing:inherit;text-decoration:inherit;text-transform:inherit;border:none}.mat-mdc-form-field .mat-mdc-floating-label.mdc-floating-label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;line-height:normal;pointer-events:all;will-change:auto}.mat-mdc-form-field:not(.mat-form-field-disabled) .mat-mdc-floating-label.mdc-floating-label{cursor:inherit}.mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input,.mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control{height:auto}.mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control.mdc-text-field__input[type=color]{height:23px}.mat-mdc-text-field-wrapper{height:auto;flex:auto;will-change:auto}.mat-mdc-form-field-has-icon-prefix .mat-mdc-text-field-wrapper{padding-left:0;--mat-mdc-form-field-label-offset-x: -16px}.mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper{padding-right:0}[dir=rtl] .mat-mdc-text-field-wrapper{padding-left:16px;padding-right:16px}[dir=rtl] .mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper{padding-left:0}[dir=rtl] .mat-mdc-form-field-has-icon-prefix .mat-mdc-text-field-wrapper{padding-right:0}.mat-form-field-disabled .mdc-text-field__input::placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-form-field-disabled .mdc-text-field__input::-moz-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-form-field-disabled .mdc-text-field__input::-webkit-input-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-form-field-disabled .mdc-text-field__input:-ms-input-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-form-field-label-always-float .mdc-text-field__input::placeholder{transition-delay:40ms;transition-duration:110ms;opacity:1}.mat-mdc-text-field-wrapper .mat-mdc-form-field-infix .mat-mdc-floating-label{left:auto;right:auto}.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input{display:inline-block}.mat-mdc-form-field .mat-mdc-text-field-wrapper.mdc-text-field .mdc-notched-outline__notch{padding-top:0}.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field .mdc-notched-outline__notch{border-left:1px solid rgba(0,0,0,0)}[dir=rtl] .mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field .mdc-notched-outline__notch{border-left:none;border-right:1px solid rgba(0,0,0,0)}.mat-mdc-form-field-infix{min-height:var(--mat-form-field-container-height, 56px);padding-top:var(--mat-form-field-filled-with-label-container-padding-top, 24px);padding-bottom:var(--mat-form-field-filled-with-label-container-padding-bottom, 8px)}.mdc-text-field--outlined .mat-mdc-form-field-infix,.mdc-text-field--no-label .mat-mdc-form-field-infix{padding-top:var(--mat-form-field-container-vertical-padding, 16px);padding-bottom:var(--mat-form-field-container-vertical-padding, 16px)}.mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:calc(var(--mat-form-field-container-height, 56px)/2)}.mdc-text-field--filled .mat-mdc-floating-label{display:var(--mat-form-field-filled-label-display, block)}.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{--mat-mdc-form-field-label-transform: translateY(calc(calc(6.75px + var(--mat-form-field-container-height, 56px) / 2) * -1)) scale(var(--mat-mdc-form-field-floating-label-scale, 0.75));transform:var(--mat-mdc-form-field-label-transform)}@keyframes _mat-form-field-subscript-animation{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.mat-mdc-form-field-subscript-wrapper{box-sizing:border-box;width:100%;position:relative}.mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field-error-wrapper{position:absolute;top:0;left:0;right:0;padding:0 16px;opacity:1;transform:translateY(0);animation:_mat-form-field-subscript-animation 0ms cubic-bezier(0.55, 0, 0.55, 0.2)}.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-error-wrapper{position:static}.mat-mdc-form-field-bottom-align::before{content:"";display:inline-block;height:16px}.mat-mdc-form-field-bottom-align.mat-mdc-form-field-subscript-dynamic-size::before{content:unset}.mat-mdc-form-field-hint-end{order:1}.mat-mdc-form-field-hint-wrapper{display:flex}.mat-mdc-form-field-hint-spacer{flex:1 0 1em}.mat-mdc-form-field-error{display:block;color:var(--mat-form-field-error-text-color, var(--mat-sys-error))}.mat-mdc-form-field-subscript-wrapper,.mat-mdc-form-field-bottom-align::before{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-form-field-subscript-text-font, var(--mat-sys-body-small-font));line-height:var(--mat-form-field-subscript-text-line-height, var(--mat-sys-body-small-line-height));font-size:var(--mat-form-field-subscript-text-size, var(--mat-sys-body-small-size));letter-spacing:var(--mat-form-field-subscript-text-tracking, var(--mat-sys-body-small-tracking));font-weight:var(--mat-form-field-subscript-text-weight, var(--mat-sys-body-small-weight))}.mat-mdc-form-field-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;opacity:0;pointer-events:none;background-color:var(--mat-form-field-state-layer-color, var(--mat-sys-on-surface))}.mat-mdc-text-field-wrapper:hover .mat-mdc-form-field-focus-overlay{opacity:var(--mat-form-field-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-form-field.mat-focused .mat-mdc-form-field-focus-overlay{opacity:var(--mat-form-field-focus-state-layer-opacity, 0)}select.mat-mdc-form-field-input-control{-moz-appearance:none;-webkit-appearance:none;background-color:rgba(0,0,0,0);display:inline-flex;box-sizing:border-box}select.mat-mdc-form-field-input-control:not(:disabled){cursor:pointer}select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) option{color:var(--mat-form-field-select-option-text-color, var(--mat-sys-neutral10))}select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) option:disabled{color:var(--mat-form-field-select-disabled-option-text-color, color-mix(in srgb, var(--mat-sys-neutral10) 38%, transparent))}.mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-infix::after{content:"";width:0;height:0;border-left:5px solid rgba(0,0,0,0);border-right:5px solid rgba(0,0,0,0);border-top:5px solid;position:absolute;right:0;top:50%;margin-top:-2.5px;pointer-events:none;color:var(--mat-form-field-enabled-select-arrow-color, var(--mat-sys-on-surface-variant))}[dir=rtl] .mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-infix::after{right:auto;left:0}.mat-mdc-form-field-type-mat-native-select.mat-focused .mat-mdc-form-field-infix::after{color:var(--mat-form-field-focus-select-arrow-color, var(--mat-sys-primary))}.mat-mdc-form-field-type-mat-native-select.mat-form-field-disabled .mat-mdc-form-field-infix::after{color:var(--mat-form-field-disabled-select-arrow-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-input-control{padding-right:15px}[dir=rtl] .mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-input-control{padding-right:0;padding-left:15px}@media(forced-colors: active){.mat-form-field-appearance-fill .mat-mdc-text-field-wrapper{outline:solid 1px}}@media(forced-colors: active){.mat-form-field-appearance-fill.mat-form-field-disabled .mat-mdc-text-field-wrapper{outline-color:GrayText}}@media(forced-colors: active){.mat-form-field-appearance-fill.mat-focused .mat-mdc-text-field-wrapper{outline:dashed 3px}}@media(forced-colors: active){.mat-mdc-form-field.mat-focused .mdc-notched-outline{border:dashed 3px}}.mat-mdc-form-field-input-control[type=date],.mat-mdc-form-field-input-control[type=datetime],.mat-mdc-form-field-input-control[type=datetime-local],.mat-mdc-form-field-input-control[type=month],.mat-mdc-form-field-input-control[type=week],.mat-mdc-form-field-input-control[type=time]{line-height:1}.mat-mdc-form-field-input-control::-webkit-datetime-edit{line-height:1;padding:0;margin-bottom:-2px}.mat-mdc-form-field{--mat-mdc-form-field-floating-label-scale: 0.75;display:inline-flex;flex-direction:column;min-width:0;text-align:left;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-form-field-container-text-font, var(--mat-sys-body-large-font));line-height:var(--mat-form-field-container-text-line-height, var(--mat-sys-body-large-line-height));font-size:var(--mat-form-field-container-text-size, var(--mat-sys-body-large-size));letter-spacing:var(--mat-form-field-container-text-tracking, var(--mat-sys-body-large-tracking));font-weight:var(--mat-form-field-container-text-weight, var(--mat-sys-body-large-weight))}.mat-mdc-form-field .mdc-text-field--outlined .mdc-floating-label--float-above{font-size:calc(var(--mat-form-field-outlined-label-text-populated-size)*var(--mat-mdc-form-field-floating-label-scale))}.mat-mdc-form-field .mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{font-size:var(--mat-form-field-outlined-label-text-populated-size)}[dir=rtl] .mat-mdc-form-field{text-align:right}.mat-mdc-form-field-flex{display:inline-flex;align-items:baseline;box-sizing:border-box;width:100%}.mat-mdc-text-field-wrapper{width:100%;z-index:0}.mat-mdc-form-field-icon-prefix,.mat-mdc-form-field-icon-suffix{align-self:center;line-height:0;pointer-events:auto;position:relative;z-index:1}.mat-mdc-form-field-icon-prefix>.mat-icon,.mat-mdc-form-field-icon-suffix>.mat-icon{padding:0 12px;box-sizing:content-box}.mat-mdc-form-field-icon-prefix{color:var(--mat-form-field-leading-icon-color, var(--mat-sys-on-surface-variant))}.mat-form-field-disabled .mat-mdc-form-field-icon-prefix{color:var(--mat-form-field-disabled-leading-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-trailing-icon-color, var(--mat-sys-on-surface-variant))}.mat-form-field-disabled .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-disabled-trailing-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-form-field-invalid .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-trailing-icon-color, var(--mat-sys-error))}.mat-form-field-invalid:not(.mat-focused):not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper:hover .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-hover-trailing-icon-color, var(--mat-sys-on-error-container))}.mat-form-field-invalid.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-focus-trailing-icon-color, var(--mat-sys-error))}.mat-mdc-form-field-icon-prefix,[dir=rtl] .mat-mdc-form-field-icon-suffix{padding:0 4px 0 0}.mat-mdc-form-field-icon-suffix,[dir=rtl] .mat-mdc-form-field-icon-prefix{padding:0 0 0 4px}.mat-mdc-form-field-subscript-wrapper .mat-icon,.mat-mdc-form-field label .mat-icon{width:1em;height:1em;font-size:inherit}.mat-mdc-form-field-infix{flex:auto;min-width:0;width:180px;position:relative;box-sizing:border-box}.mat-mdc-form-field-infix:has(textarea[cols]){width:auto}.mat-mdc-form-field .mdc-notched-outline__notch{margin-left:-1px;-webkit-clip-path:inset(-9em -999em -9em 1px);clip-path:inset(-9em -999em -9em 1px)}[dir=rtl] .mat-mdc-form-field .mdc-notched-outline__notch{margin-left:0;margin-right:-1px;-webkit-clip-path:inset(-9em 1px -9em -999em);clip-path:inset(-9em 1px -9em -999em)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-floating-label{transition:transform 150ms cubic-bezier(0.4, 0, 0.2, 1),color 150ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input{transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input::placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input::-moz-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input::-webkit-input-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input:-ms-input-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--no-label .mdc-text-field__input::placeholder,.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--focused .mdc-text-field__input::placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--no-label .mdc-text-field__input::-moz-placeholder,.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--focused .mdc-text-field__input::-moz-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--no-label .mdc-text-field__input::-webkit-input-placeholder,.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--focused .mdc-text-field__input::-webkit-input-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder,.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field--filled:not(.mdc-ripple-upgraded):focus .mdc-text-field__ripple::before{transition-duration:75ms}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-line-ripple::after{transition:transform 180ms cubic-bezier(0.4, 0, 0.2, 1),opacity 180ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field.mat-form-field-animations-enabled .mat-mdc-form-field-error-wrapper{animation-duration:300ms}.mdc-notched-outline .mdc-floating-label{max-width:calc(100% + 1px)}.mdc-notched-outline--upgraded .mdc-floating-label--float-above{max-width:calc(133.3333333333% + 1px)}
107
107
  `],encapsulation:2,changeDetection:0})}return n})();var ka=(()=>{class n{static \u0275fac=function(r){return new(r||n)};static \u0275mod=oe({type:n});static \u0275inj=te({imports:[$e,xD,AT,$e]})}return n})();var OT=(()=>{class n{static \u0275fac=function(r){return new(r||n)};static \u0275mod=oe({type:n});static \u0275inj=te({imports:[$e,ka,ka,gT,$e]})}return n})();var BB=["determinateSpinner"];function HB(n,t){if(n&1&&(so(),h(0,"svg",11),z(1,"circle",12),p()),n&2){let e=y();ye("viewBox",e._viewBox()),v(),In("stroke-dasharray",e._strokeCircumference(),"px")("stroke-dashoffset",e._strokeCircumference()/2,"px")("stroke-width",e._circleStrokeWidth(),"%"),ye("r",e._circleRadius())}}var UB=new T("mat-progress-spinner-default-options",{providedIn:"root",factory:zB});function zB(){return{diameter:RT}}var RT=100,$B=10,PT=(()=>{class n{_elementRef=u(ne);_noopAnimations;get color(){return this._color||this._defaultColor}set color(e){this._color=e}_color;_defaultColor="primary";_determinateCircle;constructor(){let e=u(UB),r=Db(),i=this._elementRef.nativeElement;this._noopAnimations=r==="di-disabled"&&!!e&&!e._forceAnimations,this.mode=i.nodeName.toLowerCase()==="mat-spinner"?"indeterminate":"determinate",!this._noopAnimations&&r==="reduced-motion"&&i.classList.add("mat-progress-spinner-reduced-motion"),e&&(e.color&&(this.color=this._defaultColor=e.color),e.diameter&&(this.diameter=e.diameter),e.strokeWidth&&(this.strokeWidth=e.strokeWidth))}mode;get value(){return this.mode==="determinate"?this._value:0}set value(e){this._value=Math.max(0,Math.min(100,e||0))}_value=0;get diameter(){return this._diameter}set diameter(e){this._diameter=e||0}_diameter=RT;get strokeWidth(){return this._strokeWidth??this.diameter/10}set strokeWidth(e){this._strokeWidth=e||0}_strokeWidth;_circleRadius(){return(this.diameter-$B)/2}_viewBox(){let e=this._circleRadius()*2+this.strokeWidth;return`0 0 ${e} ${e}`}_strokeCircumference(){return 2*Math.PI*this._circleRadius()}_strokeDashOffset(){return this.mode==="determinate"?this._strokeCircumference()*(100-this._value)/100:null}_circleStrokeWidth(){return this.strokeWidth/this.diameter*100}static \u0275fac=function(r){return new(r||n)};static \u0275cmp=F({type:n,selectors:[["mat-progress-spinner"],["mat-spinner"]],viewQuery:function(r,i){if(r&1&&De(BB,5),r&2){let o;ce(o=de())&&(i._determinateCircle=o.first)}},hostAttrs:["role","progressbar","tabindex","-1",1,"mat-mdc-progress-spinner","mdc-circular-progress"],hostVars:18,hostBindings:function(r,i){r&2&&(ye("aria-valuemin",0)("aria-valuemax",100)("aria-valuenow",i.mode==="determinate"?i.value:null)("mode",i.mode),gr("mat-"+i.color),In("width",i.diameter,"px")("height",i.diameter,"px")("--mat-progress-spinner-size",i.diameter+"px")("--mat-progress-spinner-active-indicator-width",i.diameter+"px"),G("_mat-animation-noopable",i._noopAnimations)("mdc-circular-progress--indeterminate",i.mode==="indeterminate"))},inputs:{color:"color",mode:"mode",value:[2,"value","value",Hr],diameter:[2,"diameter","diameter",Hr],strokeWidth:[2,"strokeWidth","strokeWidth",Hr]},exportAs:["matProgressSpinner"],decls:14,vars:11,consts:[["circle",""],["determinateSpinner",""],["aria-hidden","true",1,"mdc-circular-progress__determinate-container"],["xmlns","http://www.w3.org/2000/svg","focusable","false",1,"mdc-circular-progress__determinate-circle-graphic"],["cx","50%","cy","50%",1,"mdc-circular-progress__determinate-circle"],["aria-hidden","true",1,"mdc-circular-progress__indeterminate-container"],[1,"mdc-circular-progress__spinner-layer"],[1,"mdc-circular-progress__circle-clipper","mdc-circular-progress__circle-left"],[3,"ngTemplateOutlet"],[1,"mdc-circular-progress__gap-patch"],[1,"mdc-circular-progress__circle-clipper","mdc-circular-progress__circle-right"],["xmlns","http://www.w3.org/2000/svg","focusable","false",1,"mdc-circular-progress__indeterminate-circle-graphic"],["cx","50%","cy","50%"]],template:function(r,i){if(r&1&&(mr(0,HB,2,8,"ng-template",null,0,Tl),h(2,"div",2,1),so(),h(4,"svg",3),z(5,"circle",4),p()(),Zd(),h(6,"div",5)(7,"div",6)(8,"div",7),xs(9,8),p(),h(10,"div",9),xs(11,8),p(),h(12,"div",10),xs(13,8),p()()()),r&2){let o=wi(1);v(4),ye("viewBox",i._viewBox()),v(),In("stroke-dasharray",i._strokeCircumference(),"px")("stroke-dashoffset",i._strokeDashOffset(),"px")("stroke-width",i._circleStrokeWidth(),"%"),ye("r",i._circleRadius()),v(4),R("ngTemplateOutlet",o),v(2),R("ngTemplateOutlet",o),v(2),R("ngTemplateOutlet",o)}},dependencies:[Pl],styles:[`.mat-mdc-progress-spinner{--mat-progress-spinner-animation-multiplier: 1;display:block;overflow:hidden;line-height:0;position:relative;direction:ltr;transition:opacity 250ms cubic-bezier(0.4, 0, 0.6, 1)}.mat-mdc-progress-spinner circle{stroke-width:var(--mat-progress-spinner-active-indicator-width, 4px)}.mat-mdc-progress-spinner._mat-animation-noopable,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__determinate-circle{transition:none !important}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-circle-graphic,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__spinner-layer,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container{animation:none !important}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container circle{stroke-dasharray:0 !important}@media(forced-colors: active){.mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic,.mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle{stroke:currentColor;stroke:CanvasText}}.mat-progress-spinner-reduced-motion{--mat-progress-spinner-animation-multiplier: 1.25}.mdc-circular-progress__determinate-container,.mdc-circular-progress__indeterminate-circle-graphic,.mdc-circular-progress__indeterminate-container,.mdc-circular-progress__spinner-layer{position:absolute;width:100%;height:100%}.mdc-circular-progress__determinate-container{transform:rotate(-90deg)}.mdc-circular-progress--indeterminate .mdc-circular-progress__determinate-container{opacity:0}.mdc-circular-progress__indeterminate-container{font-size:0;letter-spacing:0;white-space:nowrap;opacity:0}.mdc-circular-progress--indeterminate .mdc-circular-progress__indeterminate-container{opacity:1;animation:mdc-circular-progress-container-rotate calc(1568.2352941176ms*var(--mat-progress-spinner-animation-multiplier)) linear infinite}.mdc-circular-progress__determinate-circle-graphic,.mdc-circular-progress__indeterminate-circle-graphic{fill:rgba(0,0,0,0)}.mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle,.mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic{stroke:var(--mat-progress-spinner-active-indicator-color, var(--mat-sys-primary))}@media(forced-colors: active){.mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle,.mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic{stroke:CanvasText}}.mdc-circular-progress__determinate-circle{transition:stroke-dashoffset 500ms cubic-bezier(0, 0, 0.2, 1)}.mdc-circular-progress__gap-patch{position:absolute;top:0;left:47.5%;box-sizing:border-box;width:5%;height:100%;overflow:hidden}.mdc-circular-progress__gap-patch .mdc-circular-progress__indeterminate-circle-graphic{left:-900%;width:2000%;transform:rotate(180deg)}.mdc-circular-progress__circle-clipper .mdc-circular-progress__indeterminate-circle-graphic{width:200%}.mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{left:-100%}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-left .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-left-spin calc(1333ms*var(--mat-progress-spinner-animation-multiplier)) cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-right-spin calc(1333ms*var(--mat-progress-spinner-animation-multiplier)) cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress__circle-clipper{display:inline-flex;position:relative;width:50%;height:100%;overflow:hidden}.mdc-circular-progress--indeterminate .mdc-circular-progress__spinner-layer{animation:mdc-circular-progress-spinner-layer-rotate calc(5332ms*var(--mat-progress-spinner-animation-multiplier)) cubic-bezier(0.4, 0, 0.2, 1) infinite both}@keyframes mdc-circular-progress-container-rotate{to{transform:rotate(360deg)}}@keyframes mdc-circular-progress-spinner-layer-rotate{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}@keyframes mdc-circular-progress-left-spin{from{transform:rotate(265deg)}50%{transform:rotate(130deg)}to{transform:rotate(265deg)}}@keyframes mdc-circular-progress-right-spin{from{transform:rotate(-265deg)}50%{transform:rotate(-130deg)}to{transform:rotate(-265deg)}}
108
- `],encapsulation:2,changeDetection:0})}return n})();var NT=(()=>{class n{static \u0275fac=function(r){return new(r||n)};static \u0275mod=oe({type:n});static \u0275inj=te({imports:[$e]})}return n})();var dp=class n{http=u(Dt);usernameSubject=new q(null);username$=this.usernameSubject.asObservable();fetchCurrentUser(){return this.http.get("/api/user/me").pipe(ve(t=>{this.usernameSubject.next(t.username)}))}getUsername(){return this.usernameSubject.value}static \u0275fac=function(e){return new(e||n)};static \u0275prov=C({token:n,factory:n.\u0275fac,providedIn:"root"})};var GB=(n,t)=>t.label,qB=(n,t)=>t.id;function YB(n,t){n&1&&(h(0,"div",3),z(1,"span",4),h(2,"span",5),b(3,"Loading threads..."),p()())}function QB(n,t){if(n&1&&(h(0,"span",13),b(1),p()),n&2){let e=y().$implicit;v(),ke(e.name)}}function ZB(n,t){n&1&&(z(0,"mat-spinner",15),h(1,"span",16),b(2,"Generating name..."),p()),n&2&&R("diameter",16)}function KB(n,t){if(n&1){let e=$();h(0,"div",10)(1,"button",11),D("click",function(i){let o=S(e).$implicit,s=y(4);return x(s.toggleStar(i,o))}),h(2,"mat-icon"),b(3),p()(),h(4,"button",12),D("click",function(){let i=S(e).$implicit,o=y(4);return x(o.selectThread(i.id))}),I(5,QB,2,1,"span",13)(6,ZB,3,1),p(),h(7,"button",14),D("click",function(i){let o=S(e).$implicit,s=y(4);return x(s.deleteThread(i,o))}),h(8,"mat-icon"),b(9,"delete"),p()()()}if(n&2){let e,r=t.$implicit,i=y(4);G("current",r.id===((e=i.currentThread())==null?null:e.id)),v(),G("starred",i.isStarred(r)),R("title",i.isStarred(r)?"Unstar thread":"Star thread"),v(2),ke(i.isStarred(r)?"star":"star_outline"),v(),R("title",r.name||"Generating name..."),v(),k(r.name?5:6)}}function XB(n,t){if(n&1&&(h(0,"div",6)(1,"div",8),b(2),p(),At(3,KB,10,8,"div",9,qB),p()),n&2){let e=t.$implicit;v(2),ke(e.label),v(),Ot(e.threads)}}function JB(n,t){n&1&&(h(0,"div",7),b(1,"No existing threads"),p())}function eH(n,t){if(n&1&&(h(0,"div",7),b(1),p()),n&2){let e=y(3);v(),Ae('No threads matching "',e.searchQuery,'"')}}function tH(n,t){if(n&1&&(At(0,XB,5,1,"div",6,GB),I(2,JB,2,0,"div",7)(3,eH,2,1,"div",7)),n&2){let e,r=y(2);Ot(r.getGroupedThreads()),v(2),k(!((e=r.threads())!=null&&e.length)&&!r.searchQuery?2:r.searchQuery&&r.getGroupedThreads().length===0?3:-1)}}function nH(n,t){if(n&1&&(h(0,"div",1),I(1,YB,4,0,"div",3)(2,tH,4,1),p()),n&2){let e=y();v(),k(e.isLoadingThreadList()?1:2)}}function rH(n,t){n&1&&(h(0,"span",17),b(1,"No project selected"),p())}function iH(n,t){n&1&&(h(0,"span",17),b(1,"Loading..."),p())}function oH(n,t){if(n&1&&(h(0,"div",2),I(1,rH,2,0,"span",17)(2,iH,2,0,"span",17),p()),n&2){let e,r=y();v(),k((e=r.currentProject())!=null&&e.name?2:1)}}var up=class n{projects=null;searchMode=!1;searchQuery="";searchModeChange=new V;projectStateService=u(gt);threadStateService=u(hn);threadApiService=u(Fi);userService=u(dp);router=u(wt);currentThread=Xt(this.threadStateService.selectedThread$);currentProject=Xt(this.projectStateService.selectedProject$);threads=Xt(this.threadStateService.threadList$);isLoadingThreadList=Xt(this.threadStateService.isLoadingThreadList$);username=Xt(this.userService.username$);ngOnInit(){this.userService.fetchCurrentUser().subscribe({error:t=>{console.error("[THREAD-SELECTOR] Failed to load current user:",t)}})}selectThread(t){this.threadStateService.selectThread(t),this.router.navigate(["project",this.currentProject()?.name,"thread",t])}getGroupedThreads(){let t=this.threads();if(!t?.length)return[];if(this.searchQuery&&this.searchQuery.trim()){let c=this.searchQuery.toLowerCase().trim();t=t.filter(d=>d.name.toLowerCase().includes(c))}if(!t.length)return[];let e=this.username();if(!e)return[];let r=t.filter(c=>c.starring&&c.starring.includes(e)),i=t.filter(c=>!c.starring||!c.starring.includes(e)),o=new Map,s=new Date;s.setHours(0,0,0,0);for(let c of i){let d=new Date(c.modifiedDate);d.setHours(0,0,0,0);let f=s.getTime()-d.getTime(),g=Math.floor(f/(1e3*60*60*24)),m;g===0?m="Today":g===1?m="Yesterday":g<7?m="This Week":g<30?m="This Month":g<90?m="Last 3 Months":m="Older",o.has(m)||o.set(m,[]),o.get(m).push(c)}let a=[];if(r.length>0){let c=[...r].sort((d,f)=>d.modifiedDate>f.modifiedDate?-1:1);a.push({label:"Starred",threads:c})}return["Today","Yesterday","This Week","This Month","Last 3 Months","Older"].filter(c=>o.has(c)).forEach(c=>{a.push({label:c,threads:o.get(c)})}),a}isStarred(t){let e=this.username();return!!e&&t.starring&&t.starring.includes(e)}toggleStar(t,e){t.stopPropagation();let r=this.currentProject()?.name,i=this.username();if(!r||!i)return;(e.starring&&e.starring.includes(i)?this.threadApiService.unstarThread(r,e.id):this.threadApiService.starThread(r,e.id)).subscribe({next:()=>{this.threadStateService.refreshThreadList()},error:a=>{console.error("Error toggling star:",a)}})}deleteThread(t,e){t.stopPropagation();let r=this.currentProject()?.name;!r||!confirm(`Are you sure you want to delete the thread "${e.name}"?`)||this.threadApiService.deleteThread(r,e.id).subscribe({next:()=>{this.currentThread()?.id===e.id&&(this.threadStateService.clearSelection(),this.router.navigate(["project",r])),this.threadStateService.refreshThreadList()},error:o=>{console.error("Error deleting thread:",o),alert("Failed to delete thread. Please try again.")}})}formatDate(t){try{let e=new Date(t),i=new Date().getTime()-e.getTime(),o=Math.floor(i/(1e3*60*60*24));return o===0?"Today":o===1?"Yesterday":o<7?`${o} days ago`:e.toLocaleDateString("en-EN",{day:"numeric",month:"short"})}catch{return"No date"}}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=F({type:n,selectors:[["app-thread-selector"]],inputs:{searchMode:"searchMode",searchQuery:"searchQuery"},outputs:{searchModeChange:"searchModeChange"},decls:3,vars:1,consts:[["tabindex","0","role","application","aria-label","Thread selector",1,"thread-selector",3,"click","keydown"],["role","menu","aria-label","Thread selection",1,"thread-list"],[1,"thread-disabled"],[1,"thread-loading"],[1,"loading-spinner"],[1,"loading-text"],[1,"thread-group"],[1,"thread-empty"],[1,"thread-group-header"],[1,"thread-item-wrapper",3,"current"],[1,"thread-item-wrapper"],["type","button",1,"action-button","star-button",3,"click","title"],["type","button","role","menuitem",1,"thread-item",3,"click","title"],[1,"thread-name"],["title","Delete thread","type","button",1,"action-button","delete-button",3,"click"],[1,"thread-name-spinner",3,"diameter"],[1,"thread-name","thread-name-generating"],[1,"disabled-text"]],template:function(e,r){if(e&1&&(h(0,"div",0),D("click",function(o){return o.stopPropagation()})("keydown",function(o){return o.stopPropagation()}),I(1,nH,3,1,"div",1)(2,oH,3,1,"div",2),p()),e&2){let i;v(),k((i=r.currentProject())!=null&&i.name?1:2)}},dependencies:[st,Ut,pa,un,Ai,OT,ka,NT,PT],styles:[".thread-selector[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:100%;min-height:0}.sidenav-thread-selector[_nghost-%COMP%] .thread-selector[_ngcontent-%COMP%], .sidenav-thread-selector [_nghost-%COMP%] .thread-selector[_ngcontent-%COMP%]{flex:1;min-height:0}.thread-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:0;max-height:none;overflow:visible}.thread-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;margin-bottom:.5rem}.thread-group[_ngcontent-%COMP%]:last-child{margin-bottom:0}.thread-group-header[_ngcontent-%COMP%]{padding:.5rem 1rem .25rem;font-size:.75rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);z-index:1}.thread-item-wrapper[_ngcontent-%COMP%]{display:flex;align-items:center;position:relative;width:100%;border-radius:0;min-width:0}.thread-item-wrapper[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover)}.thread-item-wrapper[_ngcontent-%COMP%]:hover .star-button[_ngcontent-%COMP%]:not(.starred){opacity:1}.thread-item-wrapper[_ngcontent-%COMP%]:hover .delete-button[_ngcontent-%COMP%]{opacity:1}.thread-item-wrapper.current[_ngcontent-%COMP%]{background:var(--color-primary-light)}.thread-item-wrapper.current[_ngcontent-%COMP%] .thread-item[_ngcontent-%COMP%]{color:var(--color-primary-text);font-weight:600}.thread-item[_ngcontent-%COMP%]{display:flex;align-items:center;flex:1;min-width:0;padding:.7rem .5rem;background:transparent;border:none;color:var(--color-text);text-align:left;cursor:pointer;transition:none;gap:0;border-radius:0}.thread-item[_ngcontent-%COMP%]:active{transform:scale(.98)}.thread-item.new-thread-item[_ngcontent-%COMP%]{margin-bottom:.25rem}.action-button[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease}.action-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;color:var(--color-text-secondary)}.action-button[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover-secondary, rgba(0, 0, 0, .1))}.action-button[_ngcontent-%COMP%]:hover mat-icon[_ngcontent-%COMP%]{color:var(--color-text)}.action-button.star-button[_ngcontent-%COMP%]{margin-left:.25rem;opacity:0;transition:opacity .2s ease}.action-button.star-button.starred[_ngcontent-%COMP%]{opacity:1}.action-button.star-button.starred[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:#fbbf24}.action-button.star-button[_ngcontent-%COMP%]:hover mat-icon[_ngcontent-%COMP%]{color:#fbbf24}.action-button.delete-button[_ngcontent-%COMP%]{margin-right:.25rem;opacity:0;transition:opacity .2s ease}.action-button.delete-button[_ngcontent-%COMP%]:hover{background:#ef44441a}.action-button.delete-button[_ngcontent-%COMP%]:hover mat-icon[_ngcontent-%COMP%]{color:#ef4444}.thread-link[_ngcontent-%COMP%]{display:inline-flex;align-items:center;background:transparent;border:none;text-decoration:none;cursor:pointer;transition:all .2s ease;gap:.5rem;font-size:.875rem;font-weight:400;padding:0 1rem}.thread-link[_ngcontent-%COMP%]:hover:not(.new-thread-link){color:var(--color-primary-hover, var(--color-primary));text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}.thread-link[_ngcontent-%COMP%]:focus{outline:2px solid var(--color-primary);outline-offset:2px}.thread-link.new-thread-link[_ngcontent-%COMP%]{margin-bottom:.5rem;font-weight:600;font-size:.95rem}.thread-link.new-thread-link[_ngcontent-%COMP%] .thread-name[_ngcontent-%COMP%]{background:linear-gradient(90deg,var(--color-primary, #3b82f6) 0%,var(--color-accent, #8b5cf6) 50%,var(--color-primary, #3b82f6) 100%);background-size:200% auto;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:_ngcontent-%COMP%_gradientShift 3s ease-in-out infinite}.thread-link.new-thread-link[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--color-primary);animation:_ngcontent-%COMP%_iconPulse 3s ease-in-out infinite}.thread-link.new-thread-link[_ngcontent-%COMP%]:hover{transform:translate(4px)}.thread-link.new-thread-link[_ngcontent-%COMP%]:hover mat-icon[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_iconPulse 1.5s ease-in-out infinite}.thread-link[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}@keyframes _ngcontent-%COMP%_gradientShift{0%{background-position:0 center}50%{background-position:100% center}to{background-position:0 center}}@keyframes _ngcontent-%COMP%_iconPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.thread-name[_ngcontent-%COMP%]{flex:1;font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.thread-name.thread-name-generating[_ngcontent-%COMP%]{color:var(--color-text-muted);font-style:italic}.thread-name-spinner[_ngcontent-%COMP%]{flex-shrink:0;margin-right:.5rem}.thread-name-spinner[_ngcontent-%COMP%] .mat-mdc-progress-spinner circle{stroke:var(--color-primary)!important}.current-indicator[_ngcontent-%COMP%]{color:var(--color-success);font-weight:700;flex-shrink:0;font-size:1rem}.thread-separator[_ngcontent-%COMP%]{height:1px;background:var(--color-border);margin:.25rem 0}.thread-empty[_ngcontent-%COMP%]{padding:1.5rem 1rem;text-align:center;color:var(--color-text-muted);font-size:.8rem;font-style:italic}.thread-loading[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;gap:.75rem}.thread-loading[_ngcontent-%COMP%] .loading-spinner[_ngcontent-%COMP%]{width:24px;height:24px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:_ngcontent-%COMP%_spin .8s linear infinite}.thread-loading[_ngcontent-%COMP%] .loading-text[_ngcontent-%COMP%]{color:var(--color-text-muted);font-size:.8rem}@keyframes _ngcontent-%COMP%_spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.thread-disabled[_ngcontent-%COMP%]{padding:1.5rem 1rem}.thread-disabled[_ngcontent-%COMP%] .disabled-text[_ngcontent-%COMP%]{display:block;color:var(--color-text-muted);font-size:.85rem;font-style:italic;text-align:center}@media (max-width: 768px){.thread-item[_ngcontent-%COMP%]{padding:.6rem .8rem}.thread-name[_ngcontent-%COMP%]{font-size:.8rem}}"]})};function sH(n,t){n&1&&(h(0,"div",5),z(1,"div",7),h(2,"p"),b(3,"Loading configuration..."),p()())}function aH(n,t){if(n&1&&(h(0,"div",10),b(1),p()),n&2){let e=y(3);v(),Ae(" \u274C ",e.errorMessage," ")}}function lH(n,t){if(n&1){let e=$();h(0,"div",6)(1,"textarea",8),Ee("ngModelChange",function(i){S(e);let o=y(2);return Me(o.jsonContent,i)||(o.jsonContent=i),x(i)}),p(),h(2,"div",9),I(3,aH,2,1,"div",10),p(),h(4,"div",11)(5,"button",12),D("click",function(){S(e);let i=y(2);return x(i.onCancel())}),b(6," Cancel "),p(),h(7,"button",13),D("click",function(){S(e);let i=y(2);return x(i.onSave())}),b(8),p()()()}if(n&2){let e=y(2);v(),we("ngModel",e.jsonContent),v(2),k(e.errorMessage?3:-1),v(2),R("disabled",e.isSaving),v(2),R("disabled",e.isSaving),v(),Ae(" ",e.isSaving?"Saving...":"Save"," ")}}function cH(n,t){if(n&1){let e=$();h(0,"div",1),D("click",function(){S(e);let i=y();return x(i.onCancel())})("keyup.escape",function(){S(e);let i=y();return x(i.onCancel())}),h(1,"div",2),D("click",function(i){return S(e),x(i.stopPropagation())})("keydown.enter",function(i){return S(e),x(i.stopPropagation())}),h(2,"div",3)(3,"h2"),b(4),p(),h(5,"button",4),D("click",function(){S(e);let i=y();return x(i.onCancel())}),b(6,"\u2715"),p()(),I(7,sH,4,0,"div",5),I(8,lH,9,5,"div",6),p()()}if(n&2){let e=y();v(4),ke(e.getTitle()),v(3),k(e.isLoading?7:-1),v(),k(e.isLoading?-1:8)}}var fp=class n{configType="user";projectName;isOpen=!1;initialContent="";isLoading=!1;isSaving=!1;isOpenChange=new V;save=new V;closeEditor=new V;jsonContent="";errorMessage="";ngOnChanges(){this.initialContent&&(this.jsonContent=this.initialContent)}onSave(){this.errorMessage="";let t;try{t=JSON.parse(this.jsonContent)}catch(e){this.errorMessage=`Invalid JSON syntax: ${e instanceof Error?e.message:"Unknown error"}`;return}this.save.emit(t)}onCancel(){this.errorMessage="",this.closeEditor.emit()}getTitle(){return this.configType==="user"?"User Configuration":`Project Configuration: ${this.projectName||"Unknown"}`}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=F({type:n,selectors:[["app-json-editor"]],inputs:{configType:"configType",projectName:"projectName",isOpen:"isOpen",initialContent:"initialContent",isLoading:"isLoading",isSaving:"isSaving"},outputs:{isOpenChange:"isOpenChange",save:"save",closeEditor:"closeEditor"},features:[Ge],decls:1,vars:1,consts:[["tabindex","0","role","dialog","aria-modal","true","aria-label","JSON Editor",1,"json-editor-overlay"],["tabindex","0","role","dialog","aria-modal","true","aria-label","JSON Editor",1,"json-editor-overlay",3,"click","keyup.escape"],["tabindex","-1",1,"json-editor-modal",3,"click","keydown.enter"],[1,"editor-header"],["title","Close",1,"close-btn",3,"click"],[1,"loading-state"],[1,"editor-content"],[1,"spinner"],["spellcheck","false","placeholder","Enter JSON configuration...",1,"json-textarea",3,"ngModelChange","ngModel"],[1,"messages"],[1,"error-message"],[1,"editor-actions"],[1,"btn","btn-secondary",3,"click","disabled"],[1,"btn","btn-primary",3,"click","disabled"]],template:function(e,r){e&1&&I(0,cH,9,3,"div",0),e&2&&k(r.isOpen?0:-1)},dependencies:[st,Ut,cn,dn,Jt],styles:[".json-editor-overlay[_ngcontent-%COMP%]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1600;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.json-editor-modal[_ngcontent-%COMP%]{background:var(--color-bg);border-radius:8px;box-shadow:0 4px 20px #0000004d;width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.editor-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary)}.editor-header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text)}.editor-header[_ngcontent-%COMP%] .close-btn[_ngcontent-%COMP%]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-secondary);padding:.25rem .5rem;line-height:1;border-radius:4px;transition:all .2s}.editor-header[_ngcontent-%COMP%] .close-btn[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover);color:var(--color-text)}.loading-state[_ngcontent-%COMP%]{padding:3rem;display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--color-text-secondary)}.loading-state[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:_ngcontent-%COMP%_spin .8s linear infinite}@keyframes _ngcontent-%COMP%_spin{to{transform:rotate(360deg)}}.editor-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;min-height:0;padding:1.5rem;gap:1rem}.json-textarea[_ngcontent-%COMP%]{flex:1;min-height:300px;max-height:80vh;padding:1rem;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:.875rem;line-height:1.5;background:var(--color-code-bg);color:var(--color-text);border:1px solid var(--color-border);border-radius:4px;resize:vertical;outline:none;transition:border-color .2s}.json-textarea[_ngcontent-%COMP%]:focus{border-color:var(--color-primary)}.json-textarea[_ngcontent-%COMP%]::placeholder{color:var(--color-text-secondary);opacity:.6}.messages[_ngcontent-%COMP%]{min-height:2rem;display:flex;flex-direction:column;gap:.5rem}.error-message[_ngcontent-%COMP%], .success-message[_ngcontent-%COMP%]{padding:.75rem 1rem;border-radius:4px;font-size:.875rem;line-height:1.4}.error-message[_ngcontent-%COMP%]{background:#dc26261a;color:#dc2626;border:1px solid rgba(220,38,38,.3)}.success-message[_ngcontent-%COMP%]{background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.editor-actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:.75rem;padding-top:.5rem;border-top:1px solid var(--color-border)}.btn[_ngcontent-%COMP%]{padding:.625rem 1.25rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[_ngcontent-%COMP%]{background:var(--color-bg-secondary);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary[_ngcontent-%COMP%]:hover:not(:disabled){background:var(--color-bg-hover)}.btn-primary[_ngcontent-%COMP%]{background:var(--color-primary);color:#fff}.btn-primary[_ngcontent-%COMP%]:hover:not(:disabled){background:var(--color-primary-hover)}@media (max-width: 768px){.json-editor-modal[_ngcontent-%COMP%]{width:95%;max-height:95vh}.editor-content[_ngcontent-%COMP%]{padding:1rem}.json-textarea[_ngcontent-%COMP%]{min-height:250px;max-height:70vh;font-size:.8125rem}}"]})};var dH=(n,t)=>t.uuid;function uH(n,t){n&1&&(Te(0,"div",3),Rt(1,"div",7),Te(2,"p"),b(3,"Loading webhooks..."),Ie()())}function fH(n,t){if(n&1&&(Te(0,"div",4)(1,"p"),b(2),Ie()()),n&2){let e=y();v(2),Ae("\u274C ",e.errorMessage)}}function hH(n,t){n&1&&(Te(0,"div",5)(1,"p"),b(2,"No webhooks configured yet."),Ie(),Te(3,"p",8),b(4,"Create your first webhook to enable programmatic AI interactions."),Ie()())}function pH(n,t){if(n&1){let e=$();Te(0,"tr")(1,"td",9),b(2),Ie(),Te(3,"td",10),b(4),Ie(),Te(5,"td",11)(6,"span",12),b(7),Ie()(),Te(8,"td",13)(9,"div",14)(10,"span",15),b(11),Ie(),Te(12,"span",16),b(13),Ie()()(),Te(14,"td",17)(15,"button",18),po("click",function(){let i=S(e).$implicit,o=y(2);return x(o.onCopyUrl(i))}),b(16," \u{1F4CB} "),Ie(),Te(17,"button",19),po("click",function(){let i=S(e).$implicit,o=y(2);return x(o.onEditClick(i))}),b(18," \u270F\uFE0F "),Ie(),Te(19,"button",20),po("click",function(){let i=S(e).$implicit,o=y(2);return x(o.onDeleteClick(i))}),b(20," \u{1F5D1}\uFE0F "),Ie()()()}if(n&2){let e=t.$implicit,r=y(2);v(2),ke(e.name),v(2),ke(e.project),v(2),G("type-free",e.commandType==="free")("type-template",e.commandType==="template"),v(),Ae(" ",r.getCommandTypeLabel(e.commandType)," "),v(4),ke(r.formatDate(e.createdAt)),v(2),Ae("by ",e.createdBy)}}function mH(n,t){if(n&1&&(Te(0,"div",6)(1,"table")(2,"thead")(3,"tr")(4,"th"),b(5,"Name"),Ie(),Te(6,"th"),b(7,"Project"),Ie(),Te(8,"th"),b(9,"Type"),Ie(),Te(10,"th"),b(11,"Created"),Ie(),Te(12,"th"),b(13,"Actions"),Ie()()(),Te(14,"tbody"),At(15,pH,21,9,"tr",null,dH),Ie()()()),n&2){let e=y();v(15),Ot(e.webhooks)}}var hp=class n{set webhooks(t){console.log("[WEBHOOK-LIST] Received webhooks:",t),this._webhooks=t}get webhooks(){return this._webhooks}_webhooks=[];isLoading=!1;errorMessage="";create=new V;edit=new V;deleteWebhook=new V;copyUrl=new V;onCreateClick(){this.create.emit()}onEditClick(t){this.edit.emit(t)}onDeleteClick(t){this.deleteWebhook.emit(t)}onCopyUrl(t){let e=`${window.location.origin}/api/webhooks/${t.uuid}/execute`;navigator.clipboard.writeText(e).then(()=>{this.copyUrl.emit(e)}).catch(r=>{console.error("Failed to copy URL:",r)})}formatDate(t){let e=typeof t=="string"?new Date(t):t;return e.toLocaleDateString()+" "+e.toLocaleTimeString()}getCommandTypeLabel(t){if(!t)return console.warn("[WEBHOOK-LIST] commandType is missing!",t),"Unknown";let e=t==="free"?"Free Form":"Template";return console.log("[WEBHOOK-LIST] getCommandTypeLabel called with:",t,"\u2192",e),e}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=F({type:n,selectors:[["app-webhook-list"]],inputs:{webhooks:"webhooks",isLoading:"isLoading",errorMessage:"errorMessage"},outputs:{create:"create",edit:"edit",deleteWebhook:"deleteWebhook",copyUrl:"copyUrl"},decls:10,vars:5,consts:[[1,"webhook-list-container"],[1,"list-header"],[1,"btn-create",3,"click","disabled"],[1,"loading-state"],[1,"error-state"],[1,"empty-state"],[1,"webhook-table"],[1,"spinner"],[1,"hint"],[1,"name-cell"],[1,"project-cell"],[1,"type-cell"],[1,"type-badge"],[1,"date-cell"],[1,"date-info"],[1,"date"],[1,"creator"],[1,"actions-cell"],["title","Copy webhook URL",1,"btn-action","btn-copy",3,"click"],["title","Edit webhook",1,"btn-action","btn-edit",3,"click"],["title","Delete webhook",1,"btn-action","btn-delete",3,"click"]],template:function(e,r){e&1&&(Te(0,"div",0)(1,"div",1)(2,"h2"),b(3,"Webhooks"),Ie(),Te(4,"button",2),po("click",function(){return r.onCreateClick()}),b(5," \u2795 New Webhook "),Ie()(),I(6,uH,4,0,"div",3),I(7,fH,3,1,"div",4),I(8,hH,5,0,"div",5),I(9,mH,17,0,"div",6),Ie()),e&2&&(v(4),Br("disabled",r.isLoading),v(2),k(r.isLoading?6:-1),v(),k(r.errorMessage&&!r.isLoading?7:-1),v(),k(!r.isLoading&&!r.errorMessage&&r.webhooks.length===0?8:-1),v(),k(!r.isLoading&&!r.errorMessage&&r.webhooks.length>0?9:-1))},dependencies:[st],styles:[".webhook-list-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem;padding:1rem;min-height:400px}.list-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.list-header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:1.5rem;color:var(--color-text)}.btn-create[_ngcontent-%COMP%]{padding:.5rem 1rem;background:var(--color-primary);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background .2s}.btn-create[_ngcontent-%COMP%]:hover:not(:disabled){background:var(--color-primary-hover)}.btn-create[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:not-allowed}.loading-state[_ngcontent-%COMP%], .error-state[_ngcontent-%COMP%], .empty-state[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;color:var(--color-text-secondary)}.loading-state[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{width:40px;height:40px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:_ngcontent-%COMP%_spin 1s linear infinite;margin-bottom:1rem}@keyframes _ngcontent-%COMP%_spin{to{transform:rotate(360deg)}}.error-state[_ngcontent-%COMP%]{color:var(--color-error)}.empty-state[_ngcontent-%COMP%] .hint[_ngcontent-%COMP%]{font-size:.9rem;margin-top:.5rem}.webhook-table[_ngcontent-%COMP%]{overflow-x:auto}.webhook-table[_ngcontent-%COMP%] table[_ngcontent-%COMP%]{width:100%;border-collapse:collapse;background:var(--color-bg);border:1px solid var(--color-border);border-radius:4px}.webhook-table[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{background:var(--color-bg-hover)}.webhook-table[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{padding:.75rem;text-align:left;font-weight:600;color:var(--color-text);border-bottom:2px solid var(--color-border);font-size:.9rem}.webhook-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]{border-bottom:1px solid var(--color-border);transition:background .2s}.webhook-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover)}.webhook-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child{border-bottom:none}.webhook-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding:.75rem;color:var(--color-text);font-size:.9rem}.webhook-table[_ngcontent-%COMP%] .name-cell[_ngcontent-%COMP%]{font-weight:500;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.webhook-table[_ngcontent-%COMP%] .project-cell[_ngcontent-%COMP%]{color:var(--color-text-secondary)}.webhook-table[_ngcontent-%COMP%] .type-cell[_ngcontent-%COMP%]{min-width:100px}.webhook-table[_ngcontent-%COMP%] .type-cell[_ngcontent-%COMP%] .type-badge[_ngcontent-%COMP%]{display:inline-block;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500}.webhook-table[_ngcontent-%COMP%] .type-cell[_ngcontent-%COMP%] .type-badge.type-free[_ngcontent-%COMP%]{background:var(--color-info);color:var(--color-text)}.webhook-table[_ngcontent-%COMP%] .type-cell[_ngcontent-%COMP%] .type-badge.type-template[_ngcontent-%COMP%]{background:var(--color-primary);color:#fff}.webhook-table[_ngcontent-%COMP%] .date-cell[_ngcontent-%COMP%] .date-info[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem}.webhook-table[_ngcontent-%COMP%] .date-cell[_ngcontent-%COMP%] .date-info[_ngcontent-%COMP%] .date[_ngcontent-%COMP%]{font-size:.85rem}.webhook-table[_ngcontent-%COMP%] .date-cell[_ngcontent-%COMP%] .date-info[_ngcontent-%COMP%] .creator[_ngcontent-%COMP%]{font-size:.75rem;color:var(--color-text-secondary)}.webhook-table[_ngcontent-%COMP%] .actions-cell[_ngcontent-%COMP%]{text-align:right;white-space:nowrap}.webhook-table[_ngcontent-%COMP%] .btn-action[_ngcontent-%COMP%]{display:inline-block;padding:.4rem .6rem;margin-left:.25rem;background:transparent;border:1px solid var(--color-border);border-radius:4px;cursor:pointer;font-size:1rem;transition:all .2s}.webhook-table[_ngcontent-%COMP%] .btn-action[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover);transform:scale(1.1)}.webhook-table[_ngcontent-%COMP%] .btn-action.btn-copy[_ngcontent-%COMP%]:hover, .webhook-table[_ngcontent-%COMP%] .btn-action.btn-edit[_ngcontent-%COMP%]:hover{border-color:var(--color-primary)}.webhook-table[_ngcontent-%COMP%] .btn-action.btn-delete[_ngcontent-%COMP%]:hover{border-color:var(--color-error)}@media (max-width: 768px){.webhook-table[_ngcontent-%COMP%] table[_ngcontent-%COMP%]{font-size:.8rem}.webhook-table[_ngcontent-%COMP%] .name-cell[_ngcontent-%COMP%]{max-width:120px}.webhook-table[_ngcontent-%COMP%] .date-info[_ngcontent-%COMP%] .date[_ngcontent-%COMP%]{font-size:.75rem}.webhook-table[_ngcontent-%COMP%] .date-info[_ngcontent-%COMP%] .creator[_ngcontent-%COMP%]{display:none}}"]})};function gH(n,t){if(n&1&&(h(0,"div",1),b(1),p()),n&2){let e=y();v(),Ae("\u274C ",e.errorMessage)}}function vH(n,t){if(n&1){let e=$();h(0,"input",20),Ee("ngModelChange",function(i){S(e);let o=y();return Me(o.project,i)||(o.project=i),x(i)}),p()}if(n&2){let e=y();we("ngModel",e.project),R("disabled",e.isSaving)}}function _H(n,t){if(n&1&&(h(0,"option",23),b(1),p()),n&2){let e=t.$implicit;R("value",e),v(),ke(e)}}function bH(n,t){if(n&1){let e=$();h(0,"select",21),Ee("ngModelChange",function(i){S(e);let o=y();return Me(o.project,i)||(o.project=i),x(i)}),h(1,"option",22),b(2,"Select a project..."),p(),At(3,_H,2,2,"option",23,Dv),p()}if(n&2){let e=y();we("ngModel",e.project),R("disabled",e.isSaving),v(3),Ot(e.availableProjects)}}function yH(n,t){if(n&1){let e=$();h(0,"div",3)(1,"label",24),b(2,"Commands *"),p(),h(3,"textarea",25),Ee("ngModelChange",function(i){S(e);let o=y();return Me(o.commands,i)||(o.commands=i),x(i)}),p(),h(4,"small",6),b(5," One command per line. Use double braces around placeholder names for dynamic values. "),p()()}if(n&2){let e=y();v(3),we("ngModel",e.commands),R("disabled",e.isSaving)}}function CH(n,t){n&1&&(h(0,"div",16)(1,"p")(2,"strong"),b(3,"\u2139\uFE0F Free Form Webhook"),p(),z(4,"br"),b(5," Callers will provide prompts in the request body using the "),h(6,"code"),b(7,"prompts"),p(),b(8," array field. "),p()())}var pp=class n{webhook;isSaving=!1;availableProjects=[];save=new V;cancelForm=new V;name="";project="";commandType="template";commands="";errorMessage="";get isEditMode(){return!!this.webhook}get formTitle(){return this.isEditMode?"Edit Webhook":"Create Webhook"}ngOnChanges(t){t.webhook&&this.webhook&&(this.name=this.webhook.name,this.project=this.webhook.project,this.commandType=this.webhook.commandType,this.commands=this.webhook.commands?.join(`
108
+ `],encapsulation:2,changeDetection:0})}return n})();var NT=(()=>{class n{static \u0275fac=function(r){return new(r||n)};static \u0275mod=oe({type:n});static \u0275inj=te({imports:[$e]})}return n})();var dp=class n{http=u(Dt);usernameSubject=new q(null);username$=this.usernameSubject.asObservable();fetchCurrentUser(){return this.http.get("/api/user/me").pipe(ve(t=>{this.usernameSubject.next(t.username)}))}getUsername(){return this.usernameSubject.value}static \u0275fac=function(e){return new(e||n)};static \u0275prov=C({token:n,factory:n.\u0275fac,providedIn:"root"})};var GB=(n,t)=>t.label,qB=(n,t)=>t.id;function YB(n,t){n&1&&(h(0,"div",3),z(1,"span",4),h(2,"span",5),b(3,"Loading threads..."),p()())}function QB(n,t){if(n&1&&(h(0,"span",12),b(1),p()),n&2){let e=y().$implicit;v(),ke(e.name)}}function ZB(n,t){n&1&&(z(0,"mat-spinner",16),h(1,"span",17),b(2,"Generating name..."),p()),n&2&&R("diameter",16)}function KB(n,t){if(n&1){let e=$();h(0,"div",10)(1,"button",11),D("click",function(){let i=S(e).$implicit,o=y(4);return x(o.selectThread(i.id))}),I(2,QB,2,1,"span",12)(3,ZB,3,1),p(),h(4,"div",13)(5,"button",14),D("click",function(i){let o=S(e).$implicit,s=y(4);return x(s.toggleStar(i,o))}),h(6,"mat-icon"),b(7),p()(),h(8,"button",15),D("click",function(i){let o=S(e).$implicit,s=y(4);return x(s.deleteThread(i,o))}),h(9,"mat-icon"),b(10,"delete"),p()()()()}if(n&2){let e,r=t.$implicit,i=y(4);G("current",r.id===((e=i.currentThread())==null?null:e.id)),v(),R("title",r.name||"Generating name..."),v(),k(r.name?2:3),v(3),G("starred",i.isStarred(r)),R("title",i.isStarred(r)?"Unstar thread":"Star thread"),v(2),ke(i.isStarred(r)?"star":"star_outline")}}function XB(n,t){if(n&1&&(h(0,"div",6)(1,"div",8),b(2),p(),At(3,KB,11,8,"div",9,qB),p()),n&2){let e=t.$implicit;v(2),ke(e.label),v(),Ot(e.threads)}}function JB(n,t){n&1&&(h(0,"div",7),b(1,"No existing threads"),p())}function eH(n,t){if(n&1&&(h(0,"div",7),b(1),p()),n&2){let e=y(3);v(),Ae('No threads matching "',e.searchQuery,'"')}}function tH(n,t){if(n&1&&(At(0,XB,5,1,"div",6,GB),I(2,JB,2,0,"div",7)(3,eH,2,1,"div",7)),n&2){let e,r=y(2);Ot(r.getGroupedThreads()),v(2),k(!((e=r.threads())!=null&&e.length)&&!r.searchQuery?2:r.searchQuery&&r.getGroupedThreads().length===0?3:-1)}}function nH(n,t){if(n&1&&(h(0,"div",1),I(1,YB,4,0,"div",3)(2,tH,4,1),p()),n&2){let e=y();v(),k(e.isLoadingThreadList()?1:2)}}function rH(n,t){n&1&&(h(0,"span",18),b(1,"No project selected"),p())}function iH(n,t){n&1&&(h(0,"span",18),b(1,"Loading..."),p())}function oH(n,t){if(n&1&&(h(0,"div",2),I(1,rH,2,0,"span",18)(2,iH,2,0,"span",18),p()),n&2){let e,r=y();v(),k((e=r.currentProject())!=null&&e.name?2:1)}}var up=class n{projects=null;searchMode=!1;searchQuery="";searchModeChange=new V;projectStateService=u(gt);threadStateService=u(hn);threadApiService=u(Fi);userService=u(dp);router=u(wt);currentThread=Xt(this.threadStateService.selectedThread$);currentProject=Xt(this.projectStateService.selectedProject$);threads=Xt(this.threadStateService.threadList$);isLoadingThreadList=Xt(this.threadStateService.isLoadingThreadList$);username=Xt(this.userService.username$);ngOnInit(){this.userService.fetchCurrentUser().subscribe({error:t=>{console.error("[THREAD-SELECTOR] Failed to load current user:",t)}})}selectThread(t){this.threadStateService.selectThread(t),this.router.navigate(["project",this.currentProject()?.name,"thread",t])}getGroupedThreads(){let t=this.threads();if(!t?.length)return[];if(this.searchQuery&&this.searchQuery.trim()){let c=this.searchQuery.toLowerCase().trim();t=t.filter(d=>d.name.toLowerCase().includes(c))}if(!t.length)return[];let e=this.username();if(!e)return[];let r=t.filter(c=>c.starring&&c.starring.includes(e)),i=t.filter(c=>!c.starring||!c.starring.includes(e)),o=new Map,s=new Date;s.setHours(0,0,0,0);for(let c of i){let d=new Date(c.modifiedDate);d.setHours(0,0,0,0);let f=s.getTime()-d.getTime(),g=Math.floor(f/(1e3*60*60*24)),m;g===0?m="Today":g===1?m="Yesterday":g<7?m="This Week":g<30?m="This Month":g<90?m="Last 3 Months":m="Older",o.has(m)||o.set(m,[]),o.get(m).push(c)}let a=[];if(r.length>0){let c=[...r].sort((d,f)=>d.modifiedDate>f.modifiedDate?-1:1);a.push({label:"Starred",threads:c})}return["Today","Yesterday","This Week","This Month","Last 3 Months","Older"].filter(c=>o.has(c)).forEach(c=>{a.push({label:c,threads:o.get(c)})}),a}isStarred(t){let e=this.username();return!!e&&t.starring&&t.starring.includes(e)}toggleStar(t,e){t.stopPropagation();let r=this.currentProject()?.name,i=this.username();if(!r||!i)return;(e.starring&&e.starring.includes(i)?this.threadApiService.unstarThread(r,e.id):this.threadApiService.starThread(r,e.id)).subscribe({next:()=>{this.threadStateService.refreshThreadList()},error:a=>{console.error("Error toggling star:",a)}})}deleteThread(t,e){t.stopPropagation();let r=this.currentProject()?.name;!r||!confirm(`Are you sure you want to delete the thread "${e.name}"?`)||this.threadApiService.deleteThread(r,e.id).subscribe({next:()=>{this.currentThread()?.id===e.id&&(this.threadStateService.clearSelection(),this.router.navigate(["project",r])),this.threadStateService.refreshThreadList()},error:o=>{console.error("Error deleting thread:",o),alert("Failed to delete thread. Please try again.")}})}formatDate(t){try{let e=new Date(t),i=new Date().getTime()-e.getTime(),o=Math.floor(i/(1e3*60*60*24));return o===0?"Today":o===1?"Yesterday":o<7?`${o} days ago`:e.toLocaleDateString("en-EN",{day:"numeric",month:"short"})}catch{return"No date"}}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=F({type:n,selectors:[["app-thread-selector"]],inputs:{searchMode:"searchMode",searchQuery:"searchQuery"},outputs:{searchModeChange:"searchModeChange"},decls:3,vars:1,consts:[["tabindex","0","role","application","aria-label","Thread selector",1,"thread-selector",3,"click","keydown"],["role","menu","aria-label","Thread selection",1,"thread-list"],[1,"thread-disabled"],[1,"thread-loading"],[1,"loading-spinner"],[1,"loading-text"],[1,"thread-group"],[1,"thread-empty"],[1,"thread-group-header"],[1,"thread-item-wrapper",3,"current"],[1,"thread-item-wrapper"],["type","button","role","menuitem",1,"thread-item",3,"click","title"],[1,"thread-name"],[1,"action-buttons"],["type","button",1,"action-button","star-button",3,"click","title"],["title","Delete thread","type","button",1,"action-button","delete-button",3,"click"],[1,"thread-name-spinner",3,"diameter"],[1,"thread-name","thread-name-generating"],[1,"disabled-text"]],template:function(e,r){if(e&1&&(h(0,"div",0),D("click",function(o){return o.stopPropagation()})("keydown",function(o){return o.stopPropagation()}),I(1,nH,3,1,"div",1)(2,oH,3,1,"div",2),p()),e&2){let i;v(),k((i=r.currentProject())!=null&&i.name?1:2)}},dependencies:[st,Ut,pa,un,Ai,OT,ka,NT,PT],styles:[".thread-selector[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:100%;min-height:0}.sidenav-thread-selector[_nghost-%COMP%] .thread-selector[_ngcontent-%COMP%], .sidenav-thread-selector [_nghost-%COMP%] .thread-selector[_ngcontent-%COMP%]{flex:1;min-height:0}.thread-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:0;max-height:none;overflow:visible}.thread-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;margin-bottom:.5rem}.thread-group[_ngcontent-%COMP%]:last-child{margin-bottom:0}.thread-group-header[_ngcontent-%COMP%]{padding:.5rem 1rem .25rem;font-size:.75rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);z-index:1}.thread-item-wrapper[_ngcontent-%COMP%]{display:flex;align-items:center;position:relative;width:100%;border-radius:0;min-width:0;gap:.25rem}.thread-item-wrapper[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover)}.thread-item-wrapper[_ngcontent-%COMP%]:hover .action-buttons[_ngcontent-%COMP%]{display:flex}.thread-item-wrapper.current[_ngcontent-%COMP%]{background:var(--color-primary-light)}.thread-item-wrapper.current[_ngcontent-%COMP%] .thread-item[_ngcontent-%COMP%]{color:var(--color-primary-text);font-weight:600}.thread-item[_ngcontent-%COMP%]{display:flex;align-items:center;flex:1;min-width:0;padding:.7rem 1rem;background:transparent;border:none;color:var(--color-text);text-align:left;cursor:pointer;transition:none;gap:0;border-radius:0}.thread-item[_ngcontent-%COMP%]:active{transform:scale(.98)}.thread-item.new-thread-item[_ngcontent-%COMP%]{margin-bottom:.25rem}.action-buttons[_ngcontent-%COMP%]{display:none;align-items:center;gap:.25rem;flex-shrink:0;margin-right:.5rem}.action-button[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease}.action-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;color:var(--color-text-secondary)}.action-button[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover-secondary, rgba(0, 0, 0, .1))}.action-button[_ngcontent-%COMP%]:hover mat-icon[_ngcontent-%COMP%]{color:var(--color-text)}.action-button.star-button.starred[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:#fbbf24}.action-button.star-button[_ngcontent-%COMP%]:hover mat-icon[_ngcontent-%COMP%]{color:#fbbf24}.action-button.delete-button[_ngcontent-%COMP%]:hover{background:#ef44441a}.action-button.delete-button[_ngcontent-%COMP%]:hover mat-icon[_ngcontent-%COMP%]{color:#ef4444}.thread-link[_ngcontent-%COMP%]{display:inline-flex;align-items:center;background:transparent;border:none;text-decoration:none;cursor:pointer;transition:all .2s ease;gap:.5rem;font-size:.875rem;font-weight:400;padding:0 1rem}.thread-link[_ngcontent-%COMP%]:hover:not(.new-thread-link){color:var(--color-primary-hover, var(--color-primary));text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}.thread-link[_ngcontent-%COMP%]:focus{outline:2px solid var(--color-primary);outline-offset:2px}.thread-link.new-thread-link[_ngcontent-%COMP%]{margin-bottom:.5rem;font-weight:600;font-size:.95rem}.thread-link.new-thread-link[_ngcontent-%COMP%] .thread-name[_ngcontent-%COMP%]{background:linear-gradient(90deg,var(--color-primary, #3b82f6) 0%,var(--color-accent, #8b5cf6) 50%,var(--color-primary, #3b82f6) 100%);background-size:200% auto;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:_ngcontent-%COMP%_gradientShift 3s ease-in-out infinite}.thread-link.new-thread-link[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--color-primary);animation:_ngcontent-%COMP%_iconPulse 3s ease-in-out infinite}.thread-link.new-thread-link[_ngcontent-%COMP%]:hover{transform:translate(4px)}.thread-link.new-thread-link[_ngcontent-%COMP%]:hover mat-icon[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_iconPulse 1.5s ease-in-out infinite}.thread-link[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}@keyframes _ngcontent-%COMP%_gradientShift{0%{background-position:0 center}50%{background-position:100% center}to{background-position:0 center}}@keyframes _ngcontent-%COMP%_iconPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.thread-name[_ngcontent-%COMP%]{flex:1;font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.thread-name.thread-name-generating[_ngcontent-%COMP%]{color:var(--color-text-muted);font-style:italic}.thread-name-spinner[_ngcontent-%COMP%]{flex-shrink:0;margin-right:.5rem}.thread-name-spinner[_ngcontent-%COMP%] .mat-mdc-progress-spinner circle{stroke:var(--color-primary)!important}.current-indicator[_ngcontent-%COMP%]{color:var(--color-success);font-weight:700;flex-shrink:0;font-size:1rem}.thread-separator[_ngcontent-%COMP%]{height:1px;background:var(--color-border);margin:.25rem 0}.thread-empty[_ngcontent-%COMP%]{padding:1.5rem 1rem;text-align:center;color:var(--color-text-muted);font-size:.8rem;font-style:italic}.thread-loading[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;gap:.75rem}.thread-loading[_ngcontent-%COMP%] .loading-spinner[_ngcontent-%COMP%]{width:24px;height:24px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:_ngcontent-%COMP%_spin .8s linear infinite}.thread-loading[_ngcontent-%COMP%] .loading-text[_ngcontent-%COMP%]{color:var(--color-text-muted);font-size:.8rem}@keyframes _ngcontent-%COMP%_spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.thread-disabled[_ngcontent-%COMP%]{padding:1.5rem 1rem}.thread-disabled[_ngcontent-%COMP%] .disabled-text[_ngcontent-%COMP%]{display:block;color:var(--color-text-muted);font-size:.85rem;font-style:italic;text-align:center}@media (max-width: 768px){.thread-item[_ngcontent-%COMP%]{padding:.6rem .8rem}.thread-name[_ngcontent-%COMP%]{font-size:.8rem}}"]})};function sH(n,t){n&1&&(h(0,"div",5),z(1,"div",7),h(2,"p"),b(3,"Loading configuration..."),p()())}function aH(n,t){if(n&1&&(h(0,"div",10),b(1),p()),n&2){let e=y(3);v(),Ae(" \u274C ",e.errorMessage," ")}}function lH(n,t){if(n&1){let e=$();h(0,"div",6)(1,"textarea",8),Ee("ngModelChange",function(i){S(e);let o=y(2);return Me(o.jsonContent,i)||(o.jsonContent=i),x(i)}),p(),h(2,"div",9),I(3,aH,2,1,"div",10),p(),h(4,"div",11)(5,"button",12),D("click",function(){S(e);let i=y(2);return x(i.onCancel())}),b(6," Cancel "),p(),h(7,"button",13),D("click",function(){S(e);let i=y(2);return x(i.onSave())}),b(8),p()()()}if(n&2){let e=y(2);v(),we("ngModel",e.jsonContent),v(2),k(e.errorMessage?3:-1),v(2),R("disabled",e.isSaving),v(2),R("disabled",e.isSaving),v(),Ae(" ",e.isSaving?"Saving...":"Save"," ")}}function cH(n,t){if(n&1){let e=$();h(0,"div",1),D("click",function(){S(e);let i=y();return x(i.onCancel())})("keyup.escape",function(){S(e);let i=y();return x(i.onCancel())}),h(1,"div",2),D("click",function(i){return S(e),x(i.stopPropagation())})("keydown.enter",function(i){return S(e),x(i.stopPropagation())}),h(2,"div",3)(3,"h2"),b(4),p(),h(5,"button",4),D("click",function(){S(e);let i=y();return x(i.onCancel())}),b(6,"\u2715"),p()(),I(7,sH,4,0,"div",5),I(8,lH,9,5,"div",6),p()()}if(n&2){let e=y();v(4),ke(e.getTitle()),v(3),k(e.isLoading?7:-1),v(),k(e.isLoading?-1:8)}}var fp=class n{configType="user";projectName;isOpen=!1;initialContent="";isLoading=!1;isSaving=!1;isOpenChange=new V;save=new V;closeEditor=new V;jsonContent="";errorMessage="";ngOnChanges(){this.initialContent&&(this.jsonContent=this.initialContent)}onSave(){this.errorMessage="";let t;try{t=JSON.parse(this.jsonContent)}catch(e){this.errorMessage=`Invalid JSON syntax: ${e instanceof Error?e.message:"Unknown error"}`;return}this.save.emit(t)}onCancel(){this.errorMessage="",this.closeEditor.emit()}getTitle(){return this.configType==="user"?"User Configuration":`Project Configuration: ${this.projectName||"Unknown"}`}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=F({type:n,selectors:[["app-json-editor"]],inputs:{configType:"configType",projectName:"projectName",isOpen:"isOpen",initialContent:"initialContent",isLoading:"isLoading",isSaving:"isSaving"},outputs:{isOpenChange:"isOpenChange",save:"save",closeEditor:"closeEditor"},features:[Ge],decls:1,vars:1,consts:[["tabindex","0","role","dialog","aria-modal","true","aria-label","JSON Editor",1,"json-editor-overlay"],["tabindex","0","role","dialog","aria-modal","true","aria-label","JSON Editor",1,"json-editor-overlay",3,"click","keyup.escape"],["tabindex","-1",1,"json-editor-modal",3,"click","keydown.enter"],[1,"editor-header"],["title","Close",1,"close-btn",3,"click"],[1,"loading-state"],[1,"editor-content"],[1,"spinner"],["spellcheck","false","placeholder","Enter JSON configuration...",1,"json-textarea",3,"ngModelChange","ngModel"],[1,"messages"],[1,"error-message"],[1,"editor-actions"],[1,"btn","btn-secondary",3,"click","disabled"],[1,"btn","btn-primary",3,"click","disabled"]],template:function(e,r){e&1&&I(0,cH,9,3,"div",0),e&2&&k(r.isOpen?0:-1)},dependencies:[st,Ut,cn,dn,Jt],styles:[".json-editor-overlay[_ngcontent-%COMP%]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1600;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.json-editor-modal[_ngcontent-%COMP%]{background:var(--color-bg);border-radius:8px;box-shadow:0 4px 20px #0000004d;width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.editor-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary)}.editor-header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text)}.editor-header[_ngcontent-%COMP%] .close-btn[_ngcontent-%COMP%]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-secondary);padding:.25rem .5rem;line-height:1;border-radius:4px;transition:all .2s}.editor-header[_ngcontent-%COMP%] .close-btn[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover);color:var(--color-text)}.loading-state[_ngcontent-%COMP%]{padding:3rem;display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--color-text-secondary)}.loading-state[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:_ngcontent-%COMP%_spin .8s linear infinite}@keyframes _ngcontent-%COMP%_spin{to{transform:rotate(360deg)}}.editor-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;min-height:0;padding:1.5rem;gap:1rem}.json-textarea[_ngcontent-%COMP%]{flex:1;min-height:300px;max-height:80vh;padding:1rem;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:.875rem;line-height:1.5;background:var(--color-code-bg);color:var(--color-text);border:1px solid var(--color-border);border-radius:4px;resize:vertical;outline:none;transition:border-color .2s}.json-textarea[_ngcontent-%COMP%]:focus{border-color:var(--color-primary)}.json-textarea[_ngcontent-%COMP%]::placeholder{color:var(--color-text-secondary);opacity:.6}.messages[_ngcontent-%COMP%]{min-height:2rem;display:flex;flex-direction:column;gap:.5rem}.error-message[_ngcontent-%COMP%], .success-message[_ngcontent-%COMP%]{padding:.75rem 1rem;border-radius:4px;font-size:.875rem;line-height:1.4}.error-message[_ngcontent-%COMP%]{background:#dc26261a;color:#dc2626;border:1px solid rgba(220,38,38,.3)}.success-message[_ngcontent-%COMP%]{background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.editor-actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:.75rem;padding-top:.5rem;border-top:1px solid var(--color-border)}.btn[_ngcontent-%COMP%]{padding:.625rem 1.25rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[_ngcontent-%COMP%]{background:var(--color-bg-secondary);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary[_ngcontent-%COMP%]:hover:not(:disabled){background:var(--color-bg-hover)}.btn-primary[_ngcontent-%COMP%]{background:var(--color-primary);color:#fff}.btn-primary[_ngcontent-%COMP%]:hover:not(:disabled){background:var(--color-primary-hover)}@media (max-width: 768px){.json-editor-modal[_ngcontent-%COMP%]{width:95%;max-height:95vh}.editor-content[_ngcontent-%COMP%]{padding:1rem}.json-textarea[_ngcontent-%COMP%]{min-height:250px;max-height:70vh;font-size:.8125rem}}"]})};var dH=(n,t)=>t.uuid;function uH(n,t){n&1&&(Te(0,"div",3),Rt(1,"div",7),Te(2,"p"),b(3,"Loading webhooks..."),Ie()())}function fH(n,t){if(n&1&&(Te(0,"div",4)(1,"p"),b(2),Ie()()),n&2){let e=y();v(2),Ae("\u274C ",e.errorMessage)}}function hH(n,t){n&1&&(Te(0,"div",5)(1,"p"),b(2,"No webhooks configured yet."),Ie(),Te(3,"p",8),b(4,"Create your first webhook to enable programmatic AI interactions."),Ie()())}function pH(n,t){if(n&1){let e=$();Te(0,"tr")(1,"td",9),b(2),Ie(),Te(3,"td",10),b(4),Ie(),Te(5,"td",11)(6,"span",12),b(7),Ie()(),Te(8,"td",13)(9,"div",14)(10,"span",15),b(11),Ie(),Te(12,"span",16),b(13),Ie()()(),Te(14,"td",17)(15,"button",18),po("click",function(){let i=S(e).$implicit,o=y(2);return x(o.onCopyUrl(i))}),b(16," \u{1F4CB} "),Ie(),Te(17,"button",19),po("click",function(){let i=S(e).$implicit,o=y(2);return x(o.onEditClick(i))}),b(18," \u270F\uFE0F "),Ie(),Te(19,"button",20),po("click",function(){let i=S(e).$implicit,o=y(2);return x(o.onDeleteClick(i))}),b(20," \u{1F5D1}\uFE0F "),Ie()()()}if(n&2){let e=t.$implicit,r=y(2);v(2),ke(e.name),v(2),ke(e.project),v(2),G("type-free",e.commandType==="free")("type-template",e.commandType==="template"),v(),Ae(" ",r.getCommandTypeLabel(e.commandType)," "),v(4),ke(r.formatDate(e.createdAt)),v(2),Ae("by ",e.createdBy)}}function mH(n,t){if(n&1&&(Te(0,"div",6)(1,"table")(2,"thead")(3,"tr")(4,"th"),b(5,"Name"),Ie(),Te(6,"th"),b(7,"Project"),Ie(),Te(8,"th"),b(9,"Type"),Ie(),Te(10,"th"),b(11,"Created"),Ie(),Te(12,"th"),b(13,"Actions"),Ie()()(),Te(14,"tbody"),At(15,pH,21,9,"tr",null,dH),Ie()()()),n&2){let e=y();v(15),Ot(e.webhooks)}}var hp=class n{set webhooks(t){console.log("[WEBHOOK-LIST] Received webhooks:",t),this._webhooks=t}get webhooks(){return this._webhooks}_webhooks=[];isLoading=!1;errorMessage="";create=new V;edit=new V;deleteWebhook=new V;copyUrl=new V;onCreateClick(){this.create.emit()}onEditClick(t){this.edit.emit(t)}onDeleteClick(t){this.deleteWebhook.emit(t)}onCopyUrl(t){let e=`${window.location.origin}/api/webhooks/${t.uuid}/execute`;navigator.clipboard.writeText(e).then(()=>{this.copyUrl.emit(e)}).catch(r=>{console.error("Failed to copy URL:",r)})}formatDate(t){let e=typeof t=="string"?new Date(t):t;return e.toLocaleDateString()+" "+e.toLocaleTimeString()}getCommandTypeLabel(t){if(!t)return console.warn("[WEBHOOK-LIST] commandType is missing!",t),"Unknown";let e=t==="free"?"Free Form":"Template";return console.log("[WEBHOOK-LIST] getCommandTypeLabel called with:",t,"\u2192",e),e}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=F({type:n,selectors:[["app-webhook-list"]],inputs:{webhooks:"webhooks",isLoading:"isLoading",errorMessage:"errorMessage"},outputs:{create:"create",edit:"edit",deleteWebhook:"deleteWebhook",copyUrl:"copyUrl"},decls:10,vars:5,consts:[[1,"webhook-list-container"],[1,"list-header"],[1,"btn-create",3,"click","disabled"],[1,"loading-state"],[1,"error-state"],[1,"empty-state"],[1,"webhook-table"],[1,"spinner"],[1,"hint"],[1,"name-cell"],[1,"project-cell"],[1,"type-cell"],[1,"type-badge"],[1,"date-cell"],[1,"date-info"],[1,"date"],[1,"creator"],[1,"actions-cell"],["title","Copy webhook URL",1,"btn-action","btn-copy",3,"click"],["title","Edit webhook",1,"btn-action","btn-edit",3,"click"],["title","Delete webhook",1,"btn-action","btn-delete",3,"click"]],template:function(e,r){e&1&&(Te(0,"div",0)(1,"div",1)(2,"h2"),b(3,"Webhooks"),Ie(),Te(4,"button",2),po("click",function(){return r.onCreateClick()}),b(5," \u2795 New Webhook "),Ie()(),I(6,uH,4,0,"div",3),I(7,fH,3,1,"div",4),I(8,hH,5,0,"div",5),I(9,mH,17,0,"div",6),Ie()),e&2&&(v(4),Br("disabled",r.isLoading),v(2),k(r.isLoading?6:-1),v(),k(r.errorMessage&&!r.isLoading?7:-1),v(),k(!r.isLoading&&!r.errorMessage&&r.webhooks.length===0?8:-1),v(),k(!r.isLoading&&!r.errorMessage&&r.webhooks.length>0?9:-1))},dependencies:[st],styles:[".webhook-list-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem;padding:1rem;min-height:400px}.list-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.list-header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:1.5rem;color:var(--color-text)}.btn-create[_ngcontent-%COMP%]{padding:.5rem 1rem;background:var(--color-primary);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background .2s}.btn-create[_ngcontent-%COMP%]:hover:not(:disabled){background:var(--color-primary-hover)}.btn-create[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:not-allowed}.loading-state[_ngcontent-%COMP%], .error-state[_ngcontent-%COMP%], .empty-state[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;color:var(--color-text-secondary)}.loading-state[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{width:40px;height:40px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:_ngcontent-%COMP%_spin 1s linear infinite;margin-bottom:1rem}@keyframes _ngcontent-%COMP%_spin{to{transform:rotate(360deg)}}.error-state[_ngcontent-%COMP%]{color:var(--color-error)}.empty-state[_ngcontent-%COMP%] .hint[_ngcontent-%COMP%]{font-size:.9rem;margin-top:.5rem}.webhook-table[_ngcontent-%COMP%]{overflow-x:auto}.webhook-table[_ngcontent-%COMP%] table[_ngcontent-%COMP%]{width:100%;border-collapse:collapse;background:var(--color-bg);border:1px solid var(--color-border);border-radius:4px}.webhook-table[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{background:var(--color-bg-hover)}.webhook-table[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{padding:.75rem;text-align:left;font-weight:600;color:var(--color-text);border-bottom:2px solid var(--color-border);font-size:.9rem}.webhook-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]{border-bottom:1px solid var(--color-border);transition:background .2s}.webhook-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover)}.webhook-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child{border-bottom:none}.webhook-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding:.75rem;color:var(--color-text);font-size:.9rem}.webhook-table[_ngcontent-%COMP%] .name-cell[_ngcontent-%COMP%]{font-weight:500;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.webhook-table[_ngcontent-%COMP%] .project-cell[_ngcontent-%COMP%]{color:var(--color-text-secondary)}.webhook-table[_ngcontent-%COMP%] .type-cell[_ngcontent-%COMP%]{min-width:100px}.webhook-table[_ngcontent-%COMP%] .type-cell[_ngcontent-%COMP%] .type-badge[_ngcontent-%COMP%]{display:inline-block;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500}.webhook-table[_ngcontent-%COMP%] .type-cell[_ngcontent-%COMP%] .type-badge.type-free[_ngcontent-%COMP%]{background:var(--color-info);color:var(--color-text)}.webhook-table[_ngcontent-%COMP%] .type-cell[_ngcontent-%COMP%] .type-badge.type-template[_ngcontent-%COMP%]{background:var(--color-primary);color:#fff}.webhook-table[_ngcontent-%COMP%] .date-cell[_ngcontent-%COMP%] .date-info[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem}.webhook-table[_ngcontent-%COMP%] .date-cell[_ngcontent-%COMP%] .date-info[_ngcontent-%COMP%] .date[_ngcontent-%COMP%]{font-size:.85rem}.webhook-table[_ngcontent-%COMP%] .date-cell[_ngcontent-%COMP%] .date-info[_ngcontent-%COMP%] .creator[_ngcontent-%COMP%]{font-size:.75rem;color:var(--color-text-secondary)}.webhook-table[_ngcontent-%COMP%] .actions-cell[_ngcontent-%COMP%]{text-align:right;white-space:nowrap}.webhook-table[_ngcontent-%COMP%] .btn-action[_ngcontent-%COMP%]{display:inline-block;padding:.4rem .6rem;margin-left:.25rem;background:transparent;border:1px solid var(--color-border);border-radius:4px;cursor:pointer;font-size:1rem;transition:all .2s}.webhook-table[_ngcontent-%COMP%] .btn-action[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover);transform:scale(1.1)}.webhook-table[_ngcontent-%COMP%] .btn-action.btn-copy[_ngcontent-%COMP%]:hover, .webhook-table[_ngcontent-%COMP%] .btn-action.btn-edit[_ngcontent-%COMP%]:hover{border-color:var(--color-primary)}.webhook-table[_ngcontent-%COMP%] .btn-action.btn-delete[_ngcontent-%COMP%]:hover{border-color:var(--color-error)}@media (max-width: 768px){.webhook-table[_ngcontent-%COMP%] table[_ngcontent-%COMP%]{font-size:.8rem}.webhook-table[_ngcontent-%COMP%] .name-cell[_ngcontent-%COMP%]{max-width:120px}.webhook-table[_ngcontent-%COMP%] .date-info[_ngcontent-%COMP%] .date[_ngcontent-%COMP%]{font-size:.75rem}.webhook-table[_ngcontent-%COMP%] .date-info[_ngcontent-%COMP%] .creator[_ngcontent-%COMP%]{display:none}}"]})};function gH(n,t){if(n&1&&(h(0,"div",1),b(1),p()),n&2){let e=y();v(),Ae("\u274C ",e.errorMessage)}}function vH(n,t){if(n&1){let e=$();h(0,"input",20),Ee("ngModelChange",function(i){S(e);let o=y();return Me(o.project,i)||(o.project=i),x(i)}),p()}if(n&2){let e=y();we("ngModel",e.project),R("disabled",e.isSaving)}}function _H(n,t){if(n&1&&(h(0,"option",23),b(1),p()),n&2){let e=t.$implicit;R("value",e),v(),ke(e)}}function bH(n,t){if(n&1){let e=$();h(0,"select",21),Ee("ngModelChange",function(i){S(e);let o=y();return Me(o.project,i)||(o.project=i),x(i)}),h(1,"option",22),b(2,"Select a project..."),p(),At(3,_H,2,2,"option",23,Dv),p()}if(n&2){let e=y();we("ngModel",e.project),R("disabled",e.isSaving),v(3),Ot(e.availableProjects)}}function yH(n,t){if(n&1){let e=$();h(0,"div",3)(1,"label",24),b(2,"Commands *"),p(),h(3,"textarea",25),Ee("ngModelChange",function(i){S(e);let o=y();return Me(o.commands,i)||(o.commands=i),x(i)}),p(),h(4,"small",6),b(5," One command per line. Use double braces around placeholder names for dynamic values. "),p()()}if(n&2){let e=y();v(3),we("ngModel",e.commands),R("disabled",e.isSaving)}}function CH(n,t){n&1&&(h(0,"div",16)(1,"p")(2,"strong"),b(3,"\u2139\uFE0F Free Form Webhook"),p(),z(4,"br"),b(5," Callers will provide prompts in the request body using the "),h(6,"code"),b(7,"prompts"),p(),b(8," array field. "),p()())}var pp=class n{webhook;isSaving=!1;availableProjects=[];save=new V;cancelForm=new V;name="";project="";commandType="template";commands="";errorMessage="";get isEditMode(){return!!this.webhook}get formTitle(){return this.isEditMode?"Edit Webhook":"Create Webhook"}ngOnChanges(t){t.webhook&&this.webhook&&(this.name=this.webhook.name,this.project=this.webhook.project,this.commandType=this.webhook.commandType,this.commands=this.webhook.commands?.join(`
109
109
  `)??"")}onCommandTypeChange(){this.commandType==="free"&&(this.commands="")}onSave(){if(this.errorMessage="",!this.name.trim()){this.errorMessage="Webhook name is required";return}if(!this.project.trim()){this.errorMessage="Project is required";return}if(this.commandType==="template"&&this.commands.trim().split(`
110
110
  `).filter(i=>i.trim()).length===0){this.errorMessage="Template webhooks must have at least one command";return}let t=this.commandType==="template"?this.commands.trim().split(`
111
111
  `).filter(r=>r.trim()):void 0,e=E({name:this.name.trim(),project:this.project.trim(),commandType:this.commandType},t&&{commands:t});this.save.emit(e)}onCancel(){this.cancelForm.emit()}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=F({type:n,selectors:[["app-webhook-form"]],inputs:{webhook:"webhook",isSaving:"isSaving",availableProjects:"availableProjects"},outputs:{save:"save",cancelForm:"cancelForm"},features:[Ge],decls:43,vars:15,consts:[[1,"webhook-form-container"],[1,"error-message"],[3,"ngSubmit"],[1,"form-group"],["for","name"],["type","text","id","name","name","name","placeholder","e.g., CI Pipeline Webhook","required","",3,"ngModelChange","ngModel","disabled"],[1,"hint"],["for","project"],["type","text","id","project","name","project","placeholder","e.g., my-project","required","",3,"ngModel","disabled"],["id","project","name","project","required","",3,"ngModel","disabled"],[1,"field-label"],[1,"radio-group"],[1,"radio-option"],["type","radio","name","commandType","value","template",3,"ngModelChange","change","ngModel","disabled"],[1,"radio-label"],["type","radio","name","commandType","value","free",3,"ngModelChange","change","ngModel","disabled"],[1,"info-box"],[1,"form-actions"],["type","button",1,"btn-cancel",3,"click","disabled"],["type","submit",1,"btn-save",3,"disabled"],["type","text","id","project","name","project","placeholder","e.g., my-project","required","",3,"ngModelChange","ngModel","disabled"],["id","project","name","project","required","",3,"ngModelChange","ngModel","disabled"],["value",""],[3,"value"],["for","commands"],["id","commands","name","commands","rows","6","placeholder","Enter commands, one per line (use double braces for placeholders)","required","",3,"ngModelChange","ngModel","disabled"]],template:function(e,r){e&1&&(h(0,"div",0)(1,"h2"),b(2),p(),I(3,gH,2,1,"div",1),h(4,"form",2),D("ngSubmit",function(){return r.onSave()}),h(5,"div",3)(6,"label",4),b(7,"Name *"),p(),h(8,"input",5),Ee("ngModelChange",function(o){return Me(r.name,o)||(r.name=o),o}),p(),h(9,"small",6),b(10,"A descriptive name for this webhook"),p()(),h(11,"div",3)(12,"label",7),b(13,"Project *"),p(),I(14,vH,1,2,"input",8),I(15,bH,5,2,"select",9),h(16,"small",6),b(17,"The project context for this webhook"),p()(),h(18,"div",3)(19,"span",10),b(20,"Command Type *"),p(),h(21,"div",11)(22,"label",12)(23,"input",13),Ee("ngModelChange",function(o){return Me(r.commandType,o)||(r.commandType=o),o}),D("change",function(){return r.onCommandTypeChange()}),p(),h(24,"span",14)(25,"strong"),b(26,"Template"),p(),h(27,"small"),b(28,"Pre-defined commands with placeholders"),p()()(),h(29,"label",12)(30,"input",15),Ee("ngModelChange",function(o){return Me(r.commandType,o)||(r.commandType=o),o}),D("change",function(){return r.onCommandTypeChange()}),p(),h(31,"span",14)(32,"strong"),b(33,"Free Form"),p(),h(34,"small"),b(35,"Caller provides prompts in request body"),p()()()()(),I(36,yH,6,2,"div",3),I(37,CH,9,0,"div",16),h(38,"div",17)(39,"button",18),D("click",function(){return r.onCancel()}),b(40,"Cancel"),p(),h(41,"button",19),b(42),p()()()()),e&2&&(v(2),ke(r.formTitle),v(),k(r.errorMessage?3:-1),v(5),we("ngModel",r.name),R("disabled",r.isSaving),v(6),k(r.availableProjects.length===0?14:-1),v(),k(r.availableProjects.length>0?15:-1),v(8),we("ngModel",r.commandType),R("disabled",r.isSaving),v(7),we("ngModel",r.commandType),R("disabled",r.isSaving),v(6),k(r.commandType==="template"?36:-1),v(),k(r.commandType==="free"?37:-1),v(2),R("disabled",r.isSaving),v(2),R("disabled",r.isSaving),v(),Ae(" ",r.isSaving?"Saving...":"Save Webhook"," "))},dependencies:[st,Ut,Nh,fa,ha,cn,Pi,Nc,dn,Ah,Fc,Jt,Pc],styles:[".webhook-form-container[_ngcontent-%COMP%]{padding:1.5rem;background:var(--color-bg);border-radius:8px;max-width:600px;margin:0 auto}.webhook-form-container[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0 0 1.5rem;font-size:1.5rem;color:var(--color-text)}.error-message[_ngcontent-%COMP%]{padding:.75rem;background:#ff00001a;border-left:4px solid var(--color-error);color:var(--color-error);margin-bottom:1rem;border-radius:4px;font-size:.9rem}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.form-group[_ngcontent-%COMP%] label[_ngcontent-%COMP%], .form-group[_ngcontent-%COMP%] .field-label[_ngcontent-%COMP%]{font-weight:500;color:var(--color-text);font-size:.95rem}.form-group[_ngcontent-%COMP%] input[type=text][_ngcontent-%COMP%], .form-group[_ngcontent-%COMP%] select[_ngcontent-%COMP%], .form-group[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{padding:.75rem;border:1px solid var(--color-border);border-radius:4px;font-size:.95rem;background:var(--color-bg);color:var(--color-text);font-family:inherit;transition:border-color .2s}.form-group[_ngcontent-%COMP%] input[type=text][_ngcontent-%COMP%]:focus, .form-group[_ngcontent-%COMP%] select[_ngcontent-%COMP%]:focus, .form-group[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]:focus{outline:none;border-color:var(--color-primary)}.form-group[_ngcontent-%COMP%] input[type=text][_ngcontent-%COMP%]:disabled, .form-group[_ngcontent-%COMP%] select[_ngcontent-%COMP%]:disabled, .form-group[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]:disabled{opacity:.6;cursor:not-allowed}.form-group[_ngcontent-%COMP%] input[type=text][_ngcontent-%COMP%]::placeholder, .form-group[_ngcontent-%COMP%] select[_ngcontent-%COMP%]::placeholder, .form-group[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]::placeholder{color:var(--color-text-secondary)}.form-group[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{resize:vertical;min-height:120px;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:.9rem}.form-group[_ngcontent-%COMP%] .hint[_ngcontent-%COMP%]{font-size:.85rem;color:var(--color-text-secondary);margin-top:-.25rem}.form-group[_ngcontent-%COMP%] .hint[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:var(--color-code-bg);padding:.125rem .25rem;border-radius:3px;font-size:.8rem}.radio-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.75rem}.radio-group[_ngcontent-%COMP%] .radio-option[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;border:2px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .2s}.radio-group[_ngcontent-%COMP%] .radio-option[_ngcontent-%COMP%]:hover{border-color:var(--color-primary);background:var(--color-bg-hover)}.radio-group[_ngcontent-%COMP%] .radio-option[_ngcontent-%COMP%] input[type=radio][_ngcontent-%COMP%]{margin-top:.25rem;cursor:pointer}.radio-group[_ngcontent-%COMP%] .radio-option[_ngcontent-%COMP%] input[type=radio][_ngcontent-%COMP%]:disabled{cursor:not-allowed}.radio-group[_ngcontent-%COMP%] .radio-option[_ngcontent-%COMP%] .radio-label[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem;flex:1}.radio-group[_ngcontent-%COMP%] .radio-option[_ngcontent-%COMP%] .radio-label[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{color:var(--color-text);font-size:.95rem}.radio-group[_ngcontent-%COMP%] .radio-option[_ngcontent-%COMP%] .radio-label[_ngcontent-%COMP%] small[_ngcontent-%COMP%]{color:var(--color-text-secondary);font-size:.85rem}.radio-group[_ngcontent-%COMP%] .radio-option[_ngcontent-%COMP%]:has(input:checked){border-color:var(--color-primary);background:rgba(var(--color-primary-rgb),.05)}.info-box[_ngcontent-%COMP%]{padding:1rem;background:var(--color-bg-hover);border-left:4px solid var(--color-primary);border-radius:4px;font-size:.9rem}.info-box[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;color:var(--color-text);line-height:1.6}.info-box[_ngcontent-%COMP%] p[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{display:block;margin-bottom:.5rem}.info-box[_ngcontent-%COMP%] p[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:var(--color-code-bg);padding:.125rem .25rem;border-radius:3px;font-size:.85rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.form-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s}.form-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:disabled{opacity:.6;cursor:not-allowed}.form-actions[_ngcontent-%COMP%] .btn-cancel[_ngcontent-%COMP%]{background:transparent;border:1px solid var(--color-border);color:var(--color-text)}.form-actions[_ngcontent-%COMP%] .btn-cancel[_ngcontent-%COMP%]:hover:not(:disabled){background:var(--color-bg-hover)}.form-actions[_ngcontent-%COMP%] .btn-save[_ngcontent-%COMP%]{background:var(--color-primary);color:#fff}.form-actions[_ngcontent-%COMP%] .btn-save[_ngcontent-%COMP%]:hover:not(:disabled){background:var(--color-primary-hover)}@media (max-width: 768px){.webhook-form-container[_ngcontent-%COMP%]{padding:1rem}.webhook-form-container[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{font-size:1.25rem}.form-actions[_ngcontent-%COMP%]{flex-direction:column-reverse}.form-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:100%}}"]})};var mp=class n{http=u(Dt);BASE_URL="/api/webhooks";listWebhooks(){return this.http.get(this.BASE_URL)}getWebhook(t){return this.http.get(`${this.BASE_URL}/${t}`)}createWebhook(t){return this.http.post(this.BASE_URL,t)}updateWebhook(t,e){return this.http.put(`${this.BASE_URL}/${t}`,e)}deleteWebhook(t){return this.http.delete(`${this.BASE_URL}/${t}`)}static \u0275fac=function(e){return new(e||n)};static \u0275prov=C({token:n,factory:n.\u0275fac,providedIn:"root"})};function wH(n,t){if(n&1){let e=$();h(0,"button",12),D("click",function(){S(e);let i=y(2);return x(i.onFormCancel())}),b(1," \u2190 Back "),p()}}function EH(n,t){if(n&1&&(h(0,"div",7),b(1),p()),n&2){let e=y(2);v(),Ae(" \u2705 ",e.successMessage," ")}}function SH(n,t){if(n&1&&(h(0,"div",8),b(1),p()),n&2){let e=y(2);v(),Ae(" \u274C ",e.errorMessage," ")}}function xH(n,t){if(n&1){let e=$();h(0,"app-webhook-list",13),D("create",function(){S(e);let i=y(2);return x(i.onCreateClick())})("edit",function(i){S(e);let o=y(2);return x(o.onEditClick(i))})("deleteWebhook",function(i){S(e);let o=y(2);return x(o.onDeleteClick(i))})("copyUrl",function(i){S(e);let o=y(2);return x(o.onCopyUrl(i))}),p()}if(n&2){let e=y(2);R("webhooks",e.webhooks)("isLoading",e.isLoading)("errorMessage",e.errorMessage)}}function DH(n,t){if(n&1){let e=$();h(0,"app-webhook-form",14),D("save",function(i){S(e);let o=y(2);return x(o.onFormSave(i))})("cancelForm",function(){S(e);let i=y(2);return x(i.onFormCancel())}),p()}if(n&2){let e=y(2);R("webhook",e.editingWebhook)("isSaving",e.isSaving)("availableProjects",e.availableProjects)}}function MH(n,t){if(n&1){let e=$();h(0,"div",0)(1,"button",1),D("click",function(){S(e);let i=y();return x(i.onCloseClick())}),p(),h(2,"div",2)(3,"div",3),I(4,wH,2,0,"button",4),h(5,"h1",5),b(6),p(),h(7,"button",6),D("click",function(){S(e);let i=y();return x(i.onCloseClick())}),b(8,"\u2715"),p()(),I(9,EH,2,1,"div",7),I(10,SH,2,1,"div",8),h(11,"div",9),I(12,xH,1,3,"app-webhook-list",10),I(13,DH,1,3,"app-webhook-form",11),p()()()}if(n&2){let e=y();v(4),k(e.currentView==="form"?4:-1),v(2),Ae(" ",e.currentView==="list"?"Webhook Management":e.editingWebhook?"Edit Webhook":"Create Webhook"," "),v(3),k(e.successMessage?9:-1),v(),k(e.errorMessage&&e.currentView==="list"?10:-1),v(2),k(e.currentView==="list"?12:-1),v(),k(e.currentView==="form"?13:-1)}}var gp=class n{isOpen=!1;availableProjects=[];isOpenChange=new V;closeModal=new V;webhookApi=u(mp);webhooks=[];isLoading=!1;errorMessage="";currentView="list";editingWebhook;isSaving=!1;successMessage="";ngOnChanges(t){let e=t.isOpen;if(e){let r=e.currentValue,i=e.previousValue;r===!0&&i===!1&&(this.loadWebhooks(),this.currentView="list",this.editingWebhook=void 0),r===!1&&i===!0&&this.clearState()}}clearState(){this.webhooks=[],this.errorMessage="",this.successMessage="",this.currentView="list",this.editingWebhook=void 0,this.isLoading=!1,this.isSaving=!1}handleError(t,e){return console.error(e,t),`${e}: ${t.error?.error||t.message||"Unknown error"}`}loadWebhooks(){this.isLoading=!0,this.errorMessage="",this.webhookApi.listWebhooks().subscribe({next:t=>{this.webhooks=t,this.isLoading=!1},error:t=>{this.errorMessage=this.handleError(t,"Failed to load webhooks"),this.isLoading=!1}})}onCreateClick(){this.currentView="form",this.editingWebhook=void 0,this.errorMessage="",this.successMessage=""}onEditClick(t){this.currentView="form",this.editingWebhook=t,this.errorMessage="",this.successMessage=""}onDeleteClick(t){confirm(`Are you sure you want to delete webhook "${t.name}"?
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@whoz-oss/coday-client",
3
- "version": "0.38.0",
3
+ "version": "0.38.2",
4
4
  "repository": "https://github.com/whoz-oss/coday",
5
5
  "type": "module",
6
6
  "publishConfig": {