@whoz-oss/coday-client 0.119.0 → 0.121.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/browser/{chunk-A2XOITOY.js → chunk-3YDRI4TY.js} +1 -1
  2. package/browser/chunk-4VDSG7R6.js +11 -0
  3. package/browser/{chunk-6PWH64OF.js → chunk-665PXQXJ.js} +1 -1
  4. package/browser/chunk-6WTX5KC7.js +1 -0
  5. package/browser/chunk-72FRBMD4.js +1 -0
  6. package/browser/{chunk-L72BYLQX.js → chunk-75YBV3AO.js} +1 -1
  7. package/browser/{chunk-QJ5RZT2C.js → chunk-7AQBJ5TI.js} +1 -1
  8. package/browser/{chunk-6WUBJOTP.js → chunk-7CLTLEML.js} +1 -1
  9. package/browser/{chunk-ORNGVCRW.js → chunk-7TOE3DRW.js} +1 -1
  10. package/browser/chunk-A4ZJFWAK.js +1 -0
  11. package/browser/{chunk-3QJA3PD3.js → chunk-BIJXZ7JD.js} +1 -1
  12. package/browser/chunk-CNPJ5XEL.js +1 -0
  13. package/browser/chunk-EAUVSQPC.js +1 -0
  14. package/browser/{chunk-AINTM6ON.js → chunk-GLWBXLFL.js} +1 -1
  15. package/browser/{chunk-H72Z2LX3.js → chunk-HNL4PUVG.js} +1 -1
  16. package/browser/{chunk-NSSFL3WG.js → chunk-J3WTEANY.js} +1 -1
  17. package/browser/{chunk-H5JAF7XP.js → chunk-JB7MERI6.js} +1 -1
  18. package/browser/chunk-JBCOCIPY.js +1 -0
  19. package/browser/chunk-JDOIYNG7.js +1 -0
  20. package/browser/{chunk-HGEXTRZ7.js → chunk-LXI5747H.js} +1 -1
  21. package/browser/chunk-OVZ5YI5D.js +1 -0
  22. package/browser/{chunk-6F5GPHWV.js → chunk-PKJOCTNH.js} +1 -1
  23. package/browser/{chunk-55ETGHKC.js → chunk-QCHIMPFZ.js} +1 -1
  24. package/browser/chunk-QMHQ4NWQ.js +2 -0
  25. package/browser/{chunk-TRUXCA4C.js → chunk-QU3UZZE4.js} +2 -2
  26. package/browser/{chunk-JCQFYRAF.js → chunk-RNFBUSBO.js} +1 -1
  27. package/browser/chunk-RQLPS2YR.js +1 -0
  28. package/browser/{chunk-5MXEOOQM.js → chunk-S2O6N5YR.js} +1 -1
  29. package/browser/{chunk-ISPDD5IG.js → chunk-S43E5ZUR.js} +1 -1
  30. package/browser/{chunk-VVZKXHDD.js → chunk-SQBLNCXA.js} +1 -1
  31. package/browser/chunk-TA4AM2F6.js +1 -0
  32. package/browser/{chunk-AE24ERN3.js → chunk-U3HXU6IS.js} +1 -1
  33. package/browser/{chunk-OUZFS4TC.js → chunk-UAD6TAO5.js} +1 -1
  34. package/browser/chunk-VIG2DS4B.js +1 -0
  35. package/browser/chunk-VLQP3XTM.js +1 -0
  36. package/browser/chunk-VOAECLLH.js +1 -0
  37. package/browser/chunk-WCNGR6NT.js +1 -0
  38. package/browser/{chunk-FZVCANBC.js → chunk-YZAA7VTK.js} +1 -1
  39. package/browser/index.html +2 -2
  40. package/browser/{main-GWIBNPSN.js → main-HXX7E37B.js} +2 -2
  41. package/browser/{styles-7E3CGANH.css → styles-HC545BYS.css} +1 -1
  42. package/package.json +1 -1
  43. package/browser/chunk-23NDPEFI.js +0 -1
  44. package/browser/chunk-2DVVHRX4.js +0 -1
  45. package/browser/chunk-2PPPVBTK.js +0 -1
  46. package/browser/chunk-4NNLWDVJ.js +0 -10
  47. package/browser/chunk-4SMKZ2HA.js +0 -1
  48. package/browser/chunk-6XQBGSR4.js +0 -1
  49. package/browser/chunk-AE2AQO4B.js +0 -2
  50. package/browser/chunk-AWTXRCO7.js +0 -1
  51. package/browser/chunk-B2QVH3K3.js +0 -1
  52. package/browser/chunk-FMBLR6NH.js +0 -1
  53. package/browser/chunk-JROTC4FL.js +0 -1
  54. package/browser/chunk-SPAN622B.js +0 -1
  55. package/browser/chunk-STNEVMCX.js +0 -2
@@ -1 +1 @@
1
- @charset "UTF-8";:root{--color-bg: linear-gradient(135deg, #fafbfc 0%, #f5f6f8 100%);--color-bg-solid: #fafbfc;--color-bg-secondary: rgba(255, 255, 255, .7);--color-bg-secondary-rgb: 255 255 255;--color-text: #1d1d1f;--color-text-secondary: #6e6e73;--color-text-inverse: #ffffff;--color-primary: #007aff;--color-primary-hover: #0051d5;--color-accent: #8b5cf6;--color-link: #007aff;--color-border: rgba(0, 0, 0, .1);--color-border-light: rgba(40, 40, 40, .08);--color-input-bg: rgba(255, 255, 255, .8);--color-success: #34c759;--color-error: #ff3b30;--color-warning: #ff9500;--color-info: #5ac8fa;--color-message-user: rgba(0, 122, 255, .1);--color-message-ai: rgba(255, 255, 255, .8);--color-code-bg: rgba(142, 142, 147, .12);--color-code-text: #ff375f;--color-bg-hover: rgba(0, 0, 0, .04);--glass-bg: rgba(255, 255, 255, .72);--glass-border: rgba(255, 255, 255, .18);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .15);--glass-backdrop-blur: blur(20px);--color-modal-bg: #ffffff;--color-modal-border: rgba(0, 0, 0, .12);--color-modal-shadow: 0 8px 40px rgba(0, 0, 0, .18), 0 2px 8px rgba(0, 0, 0, .1);--color-shadow: rgba(0, 0, 0, .08);--color-overlay: rgba(0, 0, 0, .4)}[data-theme=dark]{--color-bg: linear-gradient(135deg, #1c1c1e 0%, #2c2c2e 100%);--color-bg-solid: #1c1c1e;--color-bg-secondary: rgba(44, 44, 46, .72);--color-bg-secondary-rgb: 44 44 46;--color-text: #f5f5f7;--color-text-secondary: #98989d;--color-text-inverse: #ffffff;--color-primary: #0a84ff;--color-primary-hover: #409cff;--color-accent: #a78bfa;--color-link: #0a84ff;--color-border: rgba(255, 255, 255, .15);--color-border-light: rgba(255, 255, 255, .05);--color-input-bg: rgba(44, 44, 46, .8);--color-success: #32d74b;--color-error: #ff453a;--color-warning: #ff9f0a;--color-info: #64d2ff;--color-message-user: rgba(10, 132, 255, .15);--color-message-ai: rgba(58, 58, 60, .72);--color-code-bg: rgba(142, 142, 147, .24);--color-code-text: #ff375f;--color-bg-hover: rgba(255, 255, 255, .08);--glass-bg: rgba(40, 42, 44);--glass-border: rgba(255, 255, 255, .18);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--glass-backdrop-blur: blur(20px);--color-modal-bg: #2c2c2e;--color-modal-border: rgba(255, 255, 255, .12);--color-modal-shadow: 0 8px 48px rgba(0, 0, 0, .55), 0 2px 12px rgba(0, 0, 0, .35);--color-shadow: rgba(0, 0, 0, .5);--color-overlay: rgba(0, 0, 0, .8)}.glass-panel{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.glass-interactive{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-interactive:hover{transform:translateY(-2px);box-shadow:0 12px 40px #00000026}.glass-interactive:active{transform:translateY(0)}.glass-card{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:20px;padding:1.5rem}.glass-button{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-button:hover{transform:translateY(-2px);box-shadow:0 12px 40px #00000026}.glass-button:active{transform:translateY(0)}.glass-button{border-radius:12px;padding:.75rem 1.5rem;font-weight:600;cursor:pointer}.glass-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.glass-button:disabled:hover{transform:none}.smooth-theme-transition{transition:background .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease}@media print{html,body,app-root,app-main,.app,.chat-wrapper,app-chat-history,.chat-history{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}app-floating-menu,.floating-menu-btn,.floating-menu,.menu-backdrop,.input-section,app-chat-textarea,app-choice-select,.actions,.action-btn,.go-to-bottom-btn,.thinking,.stop-btn,.connection-status,.upload-status{display:none!important}.chat-wrapper{padding:1rem 2rem!important;background:#fff!important}.chat-history{display:flex!important;flex-direction:column!important;gap:1rem!important}.message{page-break-inside:avoid;display:flex!important;flex-direction:column!important;max-width:75%!important;margin:.5rem 0!important;padding:0!important;background:none!important;border:none!important;cursor:default!important}.message.user{align-self:flex-end!important;margin-left:auto!important;margin-right:0!important}.message.assistant{align-self:flex-start!important;margin-left:0!important;margin-right:auto!important}.message-header{display:flex!important;flex-direction:column!important;margin-bottom:.25rem!important;gap:.25rem!important;align-items:normal!important}.speaker{font-size:9pt!important;font-weight:600!important;color:#333!important;margin:0!important;padding:0 .25rem!important}.message.user .speaker{text-align:right!important}.message.assistant .speaker{text-align:left!important}.content{padding:.75rem 1rem!important;border-radius:1rem!important;font-size:10pt!important;line-height:1.5!important;word-wrap:break-word!important;box-shadow:none!important}.message.user .content{background:#e8e5ff!important;color:#000!important;border-bottom-right-radius:.25rem!important}.message.assistant .content{background:#f3f4f6!important;color:#000!important;border-bottom-left-radius:.25rem!important}.message.technical,.message.system{display:none!important}body.print-include-technical .message.technical,body.print-include-technical .message.system{display:flex!important;max-width:100%!important;margin:.25rem 0!important;align-self:stretch!important}body.print-include-technical .message.technical .simple-content,body.print-include-technical .message.system .simple-content{padding:.5rem!important;font-family:Courier New,monospace!important;font-size:8pt!important;color:#666!important;background:#fafafa!important;border-left:2px solid #ddd!important;border-radius:.25rem!important}.message.error{max-width:100%!important;align-self:stretch!important}.message.error .content{background:#fff5f5!important;border-left:3px solid #e53e3e!important;color:#c53030!important;border-radius:.5rem!important}.message.warning{max-width:100%!important;align-self:stretch!important}.message.warning .content{background:#fffaf0!important;border-left:3px solid #dd6b20!important;color:#c05621!important;border-radius:.5rem!important}.markdown-content p{margin:.5rem 0!important;color:#000!important}.markdown-content p:first-child{margin-top:0!important}.markdown-content p:last-child{margin-bottom:0!important}.markdown-content code{background:#0000000d!important;padding:.1rem .3rem!important;border-radius:.25rem!important;font-family:Courier New,Consolas,monospace!important;font-size:9pt!important;color:#000!important;border:1px solid rgba(0,0,0,.1)!important}.markdown-content pre{background:#f8f9fa!important;padding:.75rem!important;border:1px solid #e0e0e0!important;border-radius:.5rem!important;page-break-inside:avoid;overflow:visible!important;white-space:pre-wrap!important;word-wrap:break-word!important;margin:.75rem 0!important}.markdown-content pre code{background:none!important;border:none!important;padding:0!important;font-size:8pt!important}.markdown-content strong,.markdown-content b{font-weight:700!important;color:#000!important}.markdown-content em,.markdown-content i{font-style:italic!important}.markdown-content ul,.markdown-content ol{margin:.5rem 0!important;padding-left:1.5rem!important}.markdown-content ul li,.markdown-content ol li{margin:.25rem 0!important;line-height:1.5!important}.markdown-content blockquote{border-left:3px solid #999!important;margin:.75rem 0!important;padding:.5rem 0 .5rem 1rem!important;font-style:italic!important;color:#333!important;background:#00000005!important;border-radius:0 .25rem .25rem 0!important}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin:1rem 0 .5rem!important;font-weight:700!important;color:#000!important;page-break-after:avoid}.markdown-content h1:first-child,.markdown-content h2:first-child,.markdown-content h3:first-child,.markdown-content h4:first-child,.markdown-content h5:first-child,.markdown-content h6:first-child{margin-top:0!important}.markdown-content h1{font-size:14pt!important}.markdown-content h2{font-size:12pt!important}.markdown-content h3{font-size:11pt!important}.markdown-content h4,.markdown-content h5,.markdown-content h6{font-size:10pt!important}.markdown-content a{color:#000!important;text-decoration:underline!important}.markdown-content a:after{content:" (" attr(href) ")";font-size:8pt;color:#666;font-style:italic}.markdown-content hr{border:none!important;border-top:1px solid #ddd!important;margin:1rem 0!important;page-break-after:avoid}.markdown-content table{border-collapse:collapse!important;margin:.75rem 0!important;page-break-inside:avoid;width:100%!important}.markdown-content table th,.markdown-content table td{padding:.5rem!important;border:1px solid #ddd!important;font-size:9pt!important;text-align:left!important}.markdown-content table th{font-weight:700!important;background:#f5f5f5!important}.markdown-content table tr:nth-child(2n) td{background:#fafafa!important}.user .markdown-content a{color:#328dff!important;background-color:#fff;padding:2px;display:inline-block;border-radius:4px;text-decoration:underline!important}.user .markdown-content a:after{display:inline-block}.message-image{max-width:100%!important;height:auto!important;page-break-inside:avoid;border:1px solid #ddd!important;border-radius:.5rem!important;margin:.5rem 0!important}.image-content{page-break-inside:avoid;margin:.5rem 0!important}.message,.message-header,blockquote,pre,table,.image-content{page-break-inside:avoid}h1,h2,h3,h4,h5,h6,.speaker{page-break-after:avoid}.message{page-break-before:auto}*{animation:none!important;transition:none!important;box-shadow:none!important;text-shadow:none!important}}@keyframes gradientBorderShift{0%{background-position:0 0}50%{background-position:100% 0}to{background-position:0 0}}.mat-elevation-z0,.mat-mdc-elevation-specific.mat-elevation-z0{box-shadow:var(--mat-app-elevation-shadow-level-0, 0px 0px 0px 0px --mat-sys-shadow, 0px 0px 0px 0px --mat-sys-shadow, 0px 0px 0px 0px --mat-sys-shadow)}.mat-elevation-z1,.mat-mdc-elevation-specific.mat-elevation-z1{box-shadow:var(--mat-app-elevation-shadow-level-1, 0px 2px 1px -1px --mat-sys-shadow, 0px 1px 1px 0px --mat-sys-shadow, 0px 1px 3px 0px --mat-sys-shadow)}.mat-elevation-z2,.mat-mdc-elevation-specific.mat-elevation-z2{box-shadow:var(--mat-app-elevation-shadow-level-2, 0px 3px 1px -2px --mat-sys-shadow, 0px 2px 2px 0px --mat-sys-shadow, 0px 1px 5px 0px --mat-sys-shadow)}.mat-elevation-z3,.mat-mdc-elevation-specific.mat-elevation-z3{box-shadow:var(--mat-app-elevation-shadow-level-3, 0px 3px 3px -2px --mat-sys-shadow, 0px 3px 4px 0px --mat-sys-shadow, 0px 1px 8px 0px --mat-sys-shadow)}.mat-elevation-z4,.mat-mdc-elevation-specific.mat-elevation-z4{box-shadow:var(--mat-app-elevation-shadow-level-4, 0px 2px 4px -1px --mat-sys-shadow, 0px 4px 5px 0px --mat-sys-shadow, 0px 1px 10px 0px --mat-sys-shadow)}.mat-elevation-z5,.mat-mdc-elevation-specific.mat-elevation-z5{box-shadow:var(--mat-app-elevation-shadow-level-5, 0px 3px 5px -1px --mat-sys-shadow, 0px 5px 8px 0px --mat-sys-shadow, 0px 1px 14px 0px --mat-sys-shadow)}.mat-elevation-z6,.mat-mdc-elevation-specific.mat-elevation-z6{box-shadow:var(--mat-app-elevation-shadow-level-6, 0px 3px 5px -1px --mat-sys-shadow, 0px 6px 10px 0px --mat-sys-shadow, 0px 1px 18px 0px --mat-sys-shadow)}.mat-elevation-z7,.mat-mdc-elevation-specific.mat-elevation-z7{box-shadow:var(--mat-app-elevation-shadow-level-7, 0px 4px 5px -2px --mat-sys-shadow, 0px 7px 10px 1px --mat-sys-shadow, 0px 2px 16px 1px --mat-sys-shadow)}.mat-elevation-z8,.mat-mdc-elevation-specific.mat-elevation-z8{box-shadow:var(--mat-app-elevation-shadow-level-8, 0px 5px 5px -3px --mat-sys-shadow, 0px 8px 10px 1px --mat-sys-shadow, 0px 3px 14px 2px --mat-sys-shadow)}.mat-elevation-z9,.mat-mdc-elevation-specific.mat-elevation-z9{box-shadow:var(--mat-app-elevation-shadow-level-9, 0px 5px 6px -3px --mat-sys-shadow, 0px 9px 12px 1px --mat-sys-shadow, 0px 3px 16px 2px --mat-sys-shadow)}.mat-elevation-z10,.mat-mdc-elevation-specific.mat-elevation-z10{box-shadow:var(--mat-app-elevation-shadow-level-10, 0px 6px 6px -3px --mat-sys-shadow, 0px 10px 14px 1px --mat-sys-shadow, 0px 4px 18px 3px --mat-sys-shadow)}.mat-elevation-z11,.mat-mdc-elevation-specific.mat-elevation-z11{box-shadow:var(--mat-app-elevation-shadow-level-11, 0px 6px 7px -4px --mat-sys-shadow, 0px 11px 15px 1px --mat-sys-shadow, 0px 4px 20px 3px --mat-sys-shadow)}.mat-elevation-z12,.mat-mdc-elevation-specific.mat-elevation-z12{box-shadow:var(--mat-app-elevation-shadow-level-12, 0px 7px 8px -4px --mat-sys-shadow, 0px 12px 17px 2px --mat-sys-shadow, 0px 5px 22px 4px --mat-sys-shadow)}.mat-elevation-z13,.mat-mdc-elevation-specific.mat-elevation-z13{box-shadow:var(--mat-app-elevation-shadow-level-13, 0px 7px 8px -4px --mat-sys-shadow, 0px 13px 19px 2px --mat-sys-shadow, 0px 5px 24px 4px --mat-sys-shadow)}.mat-elevation-z14,.mat-mdc-elevation-specific.mat-elevation-z14{box-shadow:var(--mat-app-elevation-shadow-level-14, 0px 7px 9px -4px --mat-sys-shadow, 0px 14px 21px 2px --mat-sys-shadow, 0px 5px 26px 4px --mat-sys-shadow)}.mat-elevation-z15,.mat-mdc-elevation-specific.mat-elevation-z15{box-shadow:var(--mat-app-elevation-shadow-level-15, 0px 8px 9px -5px --mat-sys-shadow, 0px 15px 22px 2px --mat-sys-shadow, 0px 6px 28px 5px --mat-sys-shadow)}.mat-elevation-z16,.mat-mdc-elevation-specific.mat-elevation-z16{box-shadow:var(--mat-app-elevation-shadow-level-16, 0px 8px 10px -5px --mat-sys-shadow, 0px 16px 24px 2px --mat-sys-shadow, 0px 6px 30px 5px --mat-sys-shadow)}.mat-elevation-z17,.mat-mdc-elevation-specific.mat-elevation-z17{box-shadow:var(--mat-app-elevation-shadow-level-17, 0px 8px 11px -5px --mat-sys-shadow, 0px 17px 26px 2px --mat-sys-shadow, 0px 6px 32px 5px --mat-sys-shadow)}.mat-elevation-z18,.mat-mdc-elevation-specific.mat-elevation-z18{box-shadow:var(--mat-app-elevation-shadow-level-18, 0px 9px 11px -5px --mat-sys-shadow, 0px 18px 28px 2px --mat-sys-shadow, 0px 7px 34px 6px --mat-sys-shadow)}.mat-elevation-z19,.mat-mdc-elevation-specific.mat-elevation-z19{box-shadow:var(--mat-app-elevation-shadow-level-19, 0px 9px 12px -6px --mat-sys-shadow, 0px 19px 29px 2px --mat-sys-shadow, 0px 7px 36px 6px --mat-sys-shadow)}.mat-elevation-z20,.mat-mdc-elevation-specific.mat-elevation-z20{box-shadow:var(--mat-app-elevation-shadow-level-20, 0px 10px 13px -6px --mat-sys-shadow, 0px 20px 31px 3px --mat-sys-shadow, 0px 8px 38px 7px --mat-sys-shadow)}.mat-elevation-z21,.mat-mdc-elevation-specific.mat-elevation-z21{box-shadow:var(--mat-app-elevation-shadow-level-21, 0px 10px 13px -6px --mat-sys-shadow, 0px 21px 33px 3px --mat-sys-shadow, 0px 8px 40px 7px --mat-sys-shadow)}.mat-elevation-z22,.mat-mdc-elevation-specific.mat-elevation-z22{box-shadow:var(--mat-app-elevation-shadow-level-22, 0px 10px 14px -6px --mat-sys-shadow, 0px 22px 35px 3px --mat-sys-shadow, 0px 8px 42px 7px --mat-sys-shadow)}.mat-elevation-z23,.mat-mdc-elevation-specific.mat-elevation-z23{box-shadow:var(--mat-app-elevation-shadow-level-23, 0px 11px 14px -7px --mat-sys-shadow, 0px 23px 36px 3px --mat-sys-shadow, 0px 9px 44px 8px --mat-sys-shadow)}.mat-elevation-z24,.mat-mdc-elevation-specific.mat-elevation-z24{box-shadow:var(--mat-app-elevation-shadow-level-24, 0px 11px 15px -7px --mat-sys-shadow, 0px 24px 38px 3px --mat-sys-shadow, 0px 9px 46px 8px --mat-sys-shadow)}*{box-sizing:border-box}html{color-scheme:light}html[data-theme=dark]{color-scheme:dark}html{--mat-sys-background: light-dark(#faf9fd, #121316);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f2f0f4, #2f3033);--mat-sys-inverse-primary: light-dark(#abc7ff, #005cbb);--mat-sys-inverse-surface: light-dark(#2f3033, #e3e2e6);--mat-sys-on-background: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #002f65);--mat-sys-on-primary-container: light-dark(#00458f, #d7e3ff);--mat-sys-on-primary-fixed: light-dark(#001b3f, #001b3f);--mat-sys-on-primary-fixed-variant: light-dark(#00458f, #00458f);--mat-sys-on-secondary: light-dark(#ffffff, #283041);--mat-sys-on-secondary-container: light-dark(#3e4759, #dae2f9);--mat-sys-on-secondary-fixed: light-dark(#131c2b, #131c2b);--mat-sys-on-secondary-fixed-variant: light-dark(#3e4759, #3e4759);--mat-sys-on-surface: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-surface-variant: light-dark(#44474e, #e0e2ec);--mat-sys-on-tertiary: light-dark(#ffffff, #002f65);--mat-sys-on-tertiary-container: light-dark(#00458f, #d7e3ff);--mat-sys-on-tertiary-fixed: light-dark(#001b3f, #001b3f);--mat-sys-on-tertiary-fixed-variant: light-dark(#00458f, #00458f);--mat-sys-outline: light-dark(#74777f, #8e9099);--mat-sys-outline-variant: light-dark(#c4c6d0, #44474e);--mat-sys-primary: light-dark(#005cbb, #abc7ff);--mat-sys-primary-container: light-dark(#d7e3ff, #00458f);--mat-sys-primary-fixed: light-dark(#d7e3ff, #d7e3ff);--mat-sys-primary-fixed-dim: light-dark(#abc7ff, #abc7ff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#565e71, #bec6dc);--mat-sys-secondary-container: light-dark(#dae2f9, #3e4759);--mat-sys-secondary-fixed: light-dark(#dae2f9, #dae2f9);--mat-sys-secondary-fixed-dim: light-dark(#bec6dc, #bec6dc);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#faf9fd, #121316);--mat-sys-surface-bright: light-dark(#faf9fd, #38393c);--mat-sys-surface-container: light-dark(#efedf0, #1f2022);--mat-sys-surface-container-high: light-dark(#e9e7eb, #292a2c);--mat-sys-surface-container-highest: light-dark(#e3e2e6, #343537);--mat-sys-surface-container-low: light-dark(#f4f3f6, #1a1b1f);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0d0e11);--mat-sys-surface-dim: light-dark(#dbd9dd, #121316);--mat-sys-surface-tint: light-dark(#005cbb, #abc7ff);--mat-sys-surface-variant: light-dark(#e0e2ec, #44474e);--mat-sys-tertiary: light-dark(#005cbb, #abc7ff);--mat-sys-tertiary-container: light-dark(#d7e3ff, #00458f);--mat-sys-tertiary-fixed: light-dark(#d7e3ff, #d7e3ff);--mat-sys-tertiary-fixed-dim: light-dark(#abc7ff, #abc7ff);--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-large-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-medium-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-small-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-large-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-medium-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-small-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-large-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-medium-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-small-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-large-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-medium-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-small-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-large-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-medium-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-small-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12;--mat-snack-bar-container-shape: transparent;--mat-snack-bar-container-color: transparent;--mat-snack-bar-supporting-text-color: var(--color-text)}html,body{margin:0;padding:0;width:100%;height:100%}body{background:var(--color-bg);color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Helvetica Neue,Arial,sans-serif;transition:background .3s ease,color .3s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:0!important}.markdown-content p{margin:0 0 .75rem;line-height:1.6}.markdown-content p:last-child{margin-bottom:0}.markdown-content code{background:var(--color-code-bg);padding:.125rem .375rem;border-radius:6px;font-family:SF Mono,Monaco,Menlo,Cascadia Code,Consolas,monospace;font-size:.9em;color:var(--color-code-text);border:1px solid var(--color-border)}.markdown-content pre{background:var(--color-code-bg);padding:1rem;border-radius:12px;overflow-x:auto;margin:.75rem 0;border:1px solid var(--color-border);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);box-shadow:var(--glass-shadow)}.markdown-content pre code{background:none;padding:0;color:inherit;font-size:.85rem;border:none}.markdown-content strong,.markdown-content b{font-weight:600;color:var(--color-text, #282a36)}.markdown-content em,.markdown-content i{font-style:italic}.markdown-content ul,.markdown-content ol{margin:.75rem 0;padding-left:1.5rem}.markdown-content ul li,.markdown-content ol li{margin:.25rem 0;line-height:1.5}.markdown-content ul ul,.markdown-content ul ol,.markdown-content ol ul,.markdown-content ol ol{margin:.25rem 0}.markdown-content blockquote{border-left:4px solid var(--color-primary, #7064fb);margin:.75rem 0;padding:.5rem 0 .5rem 1rem;font-style:italic;color:var(--color-text-secondary, #6272a4);background:var(--color-bg-secondary, rgba(112, 100, 251, .05));border-radius:0 4px 4px 0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin:1rem 0 .5rem;font-weight:600;line-height:1.3;color:var(--color-text, #282a36)}.markdown-content h1:first-child,.markdown-content h2:first-child,.markdown-content h3:first-child,.markdown-content h4:first-child,.markdown-content h5:first-child,.markdown-content h6:first-child{margin-top:0}.markdown-content h1{font-size:1.5rem}.markdown-content h2{font-size:1.3rem}.markdown-content h3{font-size:1.1rem}.markdown-content h4{font-size:1rem}.markdown-content h5{font-size:.9rem}.markdown-content h6{font-size:.85rem}.markdown-content a{color:var(--color-link, #3498db);text-decoration:none}.markdown-content a:hover{text-decoration:underline}.markdown-content .external-link-icon{display:inline-block;margin-left:.25rem;font-size:.85em;opacity:.7;transition:opacity .2s ease;vertical-align:super;line-height:0}.markdown-content a:hover .external-link-icon{opacity:1}.markdown-content hr{border:none;border-top:1px solid var(--color-border, #e5e7eb);margin:1rem 0}.markdown-content table{width:100%;border-collapse:collapse;margin:.75rem 0}.markdown-content table th,.markdown-content table td{padding:.5rem;text-align:left;border-bottom:1px solid var(--color-border, #e5e7eb)}.markdown-content table th{font-weight:600;background:var(--color-bg-secondary, #f8f9fa)}app-sidenav{display:block;width:100%;height:100%}app-main{position:relative;z-index:1}.app{position:relative;z-index:1}.cdk-overlay-container{z-index:10000}.mat-mdc-snackbar-surface{z-index:10000;border-radius:16px!important;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-backdrop-blur);backdrop-filter:var(--glass-backdrop-blur);position:relative;background:var(--glass-bg, #1e1e1e)!important;background-clip:padding-box}.mat-mdc-snackbar-surface:before{content:"";position:absolute;inset:-2px;border-radius:inherit;background-size:200% 100%;background:linear-gradient(90deg,var(--color-primary, #3b82f6) 0%,var(--color-accent, #8b5cf6) 50%,var(--color-primary, #3b82f6) 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:1px;pointer-events:none;z-index:-1;animation:gradientBorderShift 3s ease-in-out infinite}.mat-mdc-snackbar-surface.snackbar-error{--mat-snack-bar-button-color: var(--color-error);--mdc-snackbar-supporting-text-color: var(--color-error)}.mat-mdc-snackbar-surface.snackbar-error:before{background:linear-gradient(90deg,var(--color-primary, #3b82f6) 0%,var(--color-error) 50%,var(--color-primary, #3b82f6) 100%);background-size:200% 100%}.mat-mdc-dialog-container{--mdc-dialog-container-color: var(--color-modal-bg);--mdc-dialog-supporting-text-color: var(--color-text)}.mat-mdc-dialog-container .mdc-dialog__surface{border:1px solid var(--color-modal-border)!important;border-radius:16px!important;box-shadow:var(--color-modal-shadow)!important}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{background:var(--color-overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.cdk-overlay-pane .mat-mdc-dialog-container{height:80vh}.cdk-overlay-pane.confirm-dialog-panel .mat-mdc-dialog-container{height:auto}[data-theme=dark] .mat-mdc-snack-bar-container.snackbar-success{--mdc-snackbar-container-color: var(--glass-bg);--mat-snack-bar-button-color: var(--color-primary, #3b82f6);--mdc-snackbar-supporting-text-color: var(--color-primary, #3b82f6)}[data-theme=dark] .mat-mdc-snack-bar-container.snackbar-error{--mdc-snackbar-container-color: var(--glass-bg);--mat-snack-bar-button-color: #f44336;--mdc-snackbar-supporting-text-color: #f44336}[data-theme=dark] .mat-mdc-snack-bar-container.snackbar-info{--mdc-snackbar-container-color: var(--glass-bg);--mat-snack-bar-button-color: var(--color-primary, #3b82f6);--mdc-snackbar-supporting-text-color: var(--color-primary, #3b82f6)}mat-slide-toggle{transform:scale(.75);transform-origin:right center}
1
+ @charset "UTF-8";:root{--color-bg: linear-gradient(135deg, #fafbfc 0%, #f5f6f8 100%);--color-bg-solid: #fafbfc;--color-bg-secondary: rgba(255, 255, 255, .7);--color-bg-secondary-rgb: 255 255 255;--color-text: #1d1d1f;--color-text-secondary: #6e6e73;--color-text-inverse: #ffffff;--color-primary: #007aff;--color-primary-hover: #0051d5;--color-accent: #8b5cf6;--color-link: #007aff;--color-border: rgba(0, 0, 0, .1);--color-border-light: rgba(40, 40, 40, .08);--color-input-bg: rgba(255, 255, 255, .8);--color-success: #34c759;--color-error: #ff3b30;--color-warning: #ff9500;--color-info: #5ac8fa;--color-message-user: rgba(0, 122, 255, .1);--color-message-ai: rgba(255, 255, 255, .8);--color-code-bg: rgba(142, 142, 147, .12);--color-code-text: #ff375f;--color-bg-hover: rgba(0, 0, 0, .04);--glass-bg: rgba(255, 255, 255, .72);--glass-border: rgba(255, 255, 255, .18);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .15);--glass-backdrop-blur: blur(20px);--color-modal-bg: #ffffff;--color-modal-border: rgba(0, 0, 0, .12);--color-modal-shadow: 0 8px 40px rgba(0, 0, 0, .18), 0 2px 8px rgba(0, 0, 0, .1);--color-shadow: rgba(0, 0, 0, .08);--color-overlay: rgba(0, 0, 0, .4)}[data-theme=dark]{--color-bg: linear-gradient(135deg, #1c1c1e 0%, #2c2c2e 100%);--color-bg-solid: #1c1c1e;--color-bg-secondary: rgba(44, 44, 46, .72);--color-bg-secondary-rgb: 44 44 46;--color-text: #f5f5f7;--color-text-secondary: #98989d;--color-text-inverse: #ffffff;--color-primary: #0a84ff;--color-primary-hover: #409cff;--color-accent: #a78bfa;--color-link: #0a84ff;--color-border: rgba(255, 255, 255, .15);--color-border-light: rgba(255, 255, 255, .05);--color-input-bg: rgba(44, 44, 46, .8);--color-success: #32d74b;--color-error: #ff453a;--color-warning: #ff9f0a;--color-info: #64d2ff;--color-message-user: rgba(10, 132, 255, .15);--color-message-ai: rgba(58, 58, 60, .72);--color-code-bg: rgba(142, 142, 147, .24);--color-code-text: #ff375f;--color-bg-hover: rgba(255, 255, 255, .08);--glass-bg: rgba(40, 42, 44);--glass-border: rgba(255, 255, 255, .18);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--glass-backdrop-blur: blur(20px);--color-modal-bg: #2c2c2e;--color-modal-border: rgba(255, 255, 255, .12);--color-modal-shadow: 0 8px 48px rgba(0, 0, 0, .55), 0 2px 12px rgba(0, 0, 0, .35);--color-shadow: rgba(0, 0, 0, .5);--color-overlay: rgba(0, 0, 0, .8)}.glass-panel{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.glass-interactive{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-interactive:hover{transform:translateY(-2px);box-shadow:0 12px 40px #00000026}.glass-interactive:active{transform:translateY(0)}.glass-card{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:20px;padding:1.5rem}.glass-button{background:var(--glass-bg);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-button:hover{transform:translateY(-2px);box-shadow:0 12px 40px #00000026}.glass-button:active{transform:translateY(0)}.glass-button{border-radius:12px;padding:.75rem 1.5rem;font-weight:600;cursor:pointer}.glass-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.glass-button:disabled:hover{transform:none}.smooth-theme-transition{transition:background .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease}@media print{html,body,app-root,app-main,.app,.chat-wrapper,app-chat-history,.chat-history{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}app-floating-menu,.floating-menu-btn,.floating-menu,.menu-backdrop,.input-section,app-chat-textarea,app-choice-select,.actions,.action-btn,.go-to-bottom-btn,.thinking,.stop-btn,.connection-status,.upload-status{display:none!important}.chat-wrapper{padding:1rem 2rem!important;background:#fff!important}.chat-history{display:flex!important;flex-direction:column!important;gap:1rem!important}.message{page-break-inside:avoid;display:flex!important;flex-direction:column!important;max-width:75%!important;margin:.5rem 0!important;padding:0!important;background:none!important;border:none!important;cursor:default!important}.message.user{align-self:flex-end!important;margin-left:auto!important;margin-right:0!important}.message.assistant{align-self:flex-start!important;margin-left:0!important;margin-right:auto!important}.message-header{display:flex!important;flex-direction:column!important;margin-bottom:.25rem!important;gap:.25rem!important;align-items:normal!important}.speaker{font-size:9pt!important;font-weight:600!important;color:#333!important;margin:0!important;padding:0 .25rem!important}.message.user .speaker{text-align:right!important}.message.assistant .speaker{text-align:left!important}.content{padding:.75rem 1rem!important;border-radius:1rem!important;font-size:10pt!important;line-height:1.5!important;word-wrap:break-word!important;box-shadow:none!important}.message.user .content{background:#e8e5ff!important;color:#000!important;border-bottom-right-radius:.25rem!important}.message.assistant .content{background:#f3f4f6!important;color:#000!important;border-bottom-left-radius:.25rem!important}.message.technical,.message.system{display:none!important}body.print-include-technical .message.technical,body.print-include-technical .message.system{display:flex!important;max-width:100%!important;margin:.25rem 0!important;align-self:stretch!important}body.print-include-technical .message.technical .simple-content,body.print-include-technical .message.system .simple-content{padding:.5rem!important;font-family:Courier New,monospace!important;font-size:8pt!important;color:#666!important;background:#fafafa!important;border-left:2px solid #ddd!important;border-radius:.25rem!important}.message.error{max-width:100%!important;align-self:stretch!important}.message.error .content{background:#fff5f5!important;border-left:3px solid #e53e3e!important;color:#c53030!important;border-radius:.5rem!important}.message.warning{max-width:100%!important;align-self:stretch!important}.message.warning .content{background:#fffaf0!important;border-left:3px solid #dd6b20!important;color:#c05621!important;border-radius:.5rem!important}.markdown-content p{margin:.5rem 0!important;color:#000!important}.markdown-content p:first-child{margin-top:0!important}.markdown-content p:last-child{margin-bottom:0!important}.markdown-content code{background:#0000000d!important;padding:.1rem .3rem!important;border-radius:.25rem!important;font-family:Courier New,Consolas,monospace!important;font-size:9pt!important;color:#000!important;border:1px solid rgba(0,0,0,.1)!important}.markdown-content pre{background:#f8f9fa!important;padding:.75rem!important;border:1px solid #e0e0e0!important;border-radius:.5rem!important;page-break-inside:avoid;overflow:visible!important;white-space:pre-wrap!important;word-wrap:break-word!important;margin:.75rem 0!important}.markdown-content pre code{background:none!important;border:none!important;padding:0!important;font-size:8pt!important}.markdown-content strong,.markdown-content b{font-weight:700!important;color:#000!important}.markdown-content em,.markdown-content i{font-style:italic!important}.markdown-content ul,.markdown-content ol{margin:.5rem 0!important;padding-left:1.5rem!important}.markdown-content ul li,.markdown-content ol li{margin:.25rem 0!important;line-height:1.5!important}.markdown-content blockquote{border-left:3px solid #999!important;margin:.75rem 0!important;padding:.5rem 0 .5rem 1rem!important;font-style:italic!important;color:#333!important;background:#00000005!important;border-radius:0 .25rem .25rem 0!important}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin:1rem 0 .5rem!important;font-weight:700!important;color:#000!important;page-break-after:avoid}.markdown-content h1:first-child,.markdown-content h2:first-child,.markdown-content h3:first-child,.markdown-content h4:first-child,.markdown-content h5:first-child,.markdown-content h6:first-child{margin-top:0!important}.markdown-content h1{font-size:14pt!important}.markdown-content h2{font-size:12pt!important}.markdown-content h3{font-size:11pt!important}.markdown-content h4,.markdown-content h5,.markdown-content h6{font-size:10pt!important}.markdown-content a{color:#000!important;text-decoration:underline!important}.markdown-content a:after{content:" (" attr(href) ")";font-size:8pt;color:#666;font-style:italic}.markdown-content hr{border:none!important;border-top:1px solid #ddd!important;margin:1rem 0!important;page-break-after:avoid}.markdown-content table{border-collapse:collapse!important;margin:.75rem 0!important;page-break-inside:avoid;width:100%!important}.markdown-content table th,.markdown-content table td{padding:.5rem!important;border:1px solid #ddd!important;font-size:9pt!important;text-align:left!important}.markdown-content table th{font-weight:700!important;background:#f5f5f5!important}.markdown-content table tr:nth-child(2n) td{background:#fafafa!important}.user .markdown-content a{color:#328dff!important;background-color:#fff;padding:2px;display:inline-block;border-radius:4px;text-decoration:underline!important}.user .markdown-content a:after{display:inline-block}.message-image{max-width:100%!important;height:auto!important;page-break-inside:avoid;border:1px solid #ddd!important;border-radius:.5rem!important;margin:.5rem 0!important}.image-content{page-break-inside:avoid;margin:.5rem 0!important}.message,.message-header,blockquote,pre,table,.image-content{page-break-inside:avoid}h1,h2,h3,h4,h5,h6,.speaker{page-break-after:avoid}.message{page-break-before:auto}*{animation:none!important;transition:none!important;box-shadow:none!important;text-shadow:none!important}}@keyframes gradientBorderShift{0%{background-position:0 0}50%{background-position:100% 0}to{background-position:0 0}}.mat-elevation-z0,.mat-mdc-elevation-specific.mat-elevation-z0{box-shadow:var(--mat-app-elevation-shadow-level-0, 0px 0px 0px 0px --mat-sys-shadow, 0px 0px 0px 0px --mat-sys-shadow, 0px 0px 0px 0px --mat-sys-shadow)}.mat-elevation-z1,.mat-mdc-elevation-specific.mat-elevation-z1{box-shadow:var(--mat-app-elevation-shadow-level-1, 0px 2px 1px -1px --mat-sys-shadow, 0px 1px 1px 0px --mat-sys-shadow, 0px 1px 3px 0px --mat-sys-shadow)}.mat-elevation-z2,.mat-mdc-elevation-specific.mat-elevation-z2{box-shadow:var(--mat-app-elevation-shadow-level-2, 0px 3px 1px -2px --mat-sys-shadow, 0px 2px 2px 0px --mat-sys-shadow, 0px 1px 5px 0px --mat-sys-shadow)}.mat-elevation-z3,.mat-mdc-elevation-specific.mat-elevation-z3{box-shadow:var(--mat-app-elevation-shadow-level-3, 0px 3px 3px -2px --mat-sys-shadow, 0px 3px 4px 0px --mat-sys-shadow, 0px 1px 8px 0px --mat-sys-shadow)}.mat-elevation-z4,.mat-mdc-elevation-specific.mat-elevation-z4{box-shadow:var(--mat-app-elevation-shadow-level-4, 0px 2px 4px -1px --mat-sys-shadow, 0px 4px 5px 0px --mat-sys-shadow, 0px 1px 10px 0px --mat-sys-shadow)}.mat-elevation-z5,.mat-mdc-elevation-specific.mat-elevation-z5{box-shadow:var(--mat-app-elevation-shadow-level-5, 0px 3px 5px -1px --mat-sys-shadow, 0px 5px 8px 0px --mat-sys-shadow, 0px 1px 14px 0px --mat-sys-shadow)}.mat-elevation-z6,.mat-mdc-elevation-specific.mat-elevation-z6{box-shadow:var(--mat-app-elevation-shadow-level-6, 0px 3px 5px -1px --mat-sys-shadow, 0px 6px 10px 0px --mat-sys-shadow, 0px 1px 18px 0px --mat-sys-shadow)}.mat-elevation-z7,.mat-mdc-elevation-specific.mat-elevation-z7{box-shadow:var(--mat-app-elevation-shadow-level-7, 0px 4px 5px -2px --mat-sys-shadow, 0px 7px 10px 1px --mat-sys-shadow, 0px 2px 16px 1px --mat-sys-shadow)}.mat-elevation-z8,.mat-mdc-elevation-specific.mat-elevation-z8{box-shadow:var(--mat-app-elevation-shadow-level-8, 0px 5px 5px -3px --mat-sys-shadow, 0px 8px 10px 1px --mat-sys-shadow, 0px 3px 14px 2px --mat-sys-shadow)}.mat-elevation-z9,.mat-mdc-elevation-specific.mat-elevation-z9{box-shadow:var(--mat-app-elevation-shadow-level-9, 0px 5px 6px -3px --mat-sys-shadow, 0px 9px 12px 1px --mat-sys-shadow, 0px 3px 16px 2px --mat-sys-shadow)}.mat-elevation-z10,.mat-mdc-elevation-specific.mat-elevation-z10{box-shadow:var(--mat-app-elevation-shadow-level-10, 0px 6px 6px -3px --mat-sys-shadow, 0px 10px 14px 1px --mat-sys-shadow, 0px 4px 18px 3px --mat-sys-shadow)}.mat-elevation-z11,.mat-mdc-elevation-specific.mat-elevation-z11{box-shadow:var(--mat-app-elevation-shadow-level-11, 0px 6px 7px -4px --mat-sys-shadow, 0px 11px 15px 1px --mat-sys-shadow, 0px 4px 20px 3px --mat-sys-shadow)}.mat-elevation-z12,.mat-mdc-elevation-specific.mat-elevation-z12{box-shadow:var(--mat-app-elevation-shadow-level-12, 0px 7px 8px -4px --mat-sys-shadow, 0px 12px 17px 2px --mat-sys-shadow, 0px 5px 22px 4px --mat-sys-shadow)}.mat-elevation-z13,.mat-mdc-elevation-specific.mat-elevation-z13{box-shadow:var(--mat-app-elevation-shadow-level-13, 0px 7px 8px -4px --mat-sys-shadow, 0px 13px 19px 2px --mat-sys-shadow, 0px 5px 24px 4px --mat-sys-shadow)}.mat-elevation-z14,.mat-mdc-elevation-specific.mat-elevation-z14{box-shadow:var(--mat-app-elevation-shadow-level-14, 0px 7px 9px -4px --mat-sys-shadow, 0px 14px 21px 2px --mat-sys-shadow, 0px 5px 26px 4px --mat-sys-shadow)}.mat-elevation-z15,.mat-mdc-elevation-specific.mat-elevation-z15{box-shadow:var(--mat-app-elevation-shadow-level-15, 0px 8px 9px -5px --mat-sys-shadow, 0px 15px 22px 2px --mat-sys-shadow, 0px 6px 28px 5px --mat-sys-shadow)}.mat-elevation-z16,.mat-mdc-elevation-specific.mat-elevation-z16{box-shadow:var(--mat-app-elevation-shadow-level-16, 0px 8px 10px -5px --mat-sys-shadow, 0px 16px 24px 2px --mat-sys-shadow, 0px 6px 30px 5px --mat-sys-shadow)}.mat-elevation-z17,.mat-mdc-elevation-specific.mat-elevation-z17{box-shadow:var(--mat-app-elevation-shadow-level-17, 0px 8px 11px -5px --mat-sys-shadow, 0px 17px 26px 2px --mat-sys-shadow, 0px 6px 32px 5px --mat-sys-shadow)}.mat-elevation-z18,.mat-mdc-elevation-specific.mat-elevation-z18{box-shadow:var(--mat-app-elevation-shadow-level-18, 0px 9px 11px -5px --mat-sys-shadow, 0px 18px 28px 2px --mat-sys-shadow, 0px 7px 34px 6px --mat-sys-shadow)}.mat-elevation-z19,.mat-mdc-elevation-specific.mat-elevation-z19{box-shadow:var(--mat-app-elevation-shadow-level-19, 0px 9px 12px -6px --mat-sys-shadow, 0px 19px 29px 2px --mat-sys-shadow, 0px 7px 36px 6px --mat-sys-shadow)}.mat-elevation-z20,.mat-mdc-elevation-specific.mat-elevation-z20{box-shadow:var(--mat-app-elevation-shadow-level-20, 0px 10px 13px -6px --mat-sys-shadow, 0px 20px 31px 3px --mat-sys-shadow, 0px 8px 38px 7px --mat-sys-shadow)}.mat-elevation-z21,.mat-mdc-elevation-specific.mat-elevation-z21{box-shadow:var(--mat-app-elevation-shadow-level-21, 0px 10px 13px -6px --mat-sys-shadow, 0px 21px 33px 3px --mat-sys-shadow, 0px 8px 40px 7px --mat-sys-shadow)}.mat-elevation-z22,.mat-mdc-elevation-specific.mat-elevation-z22{box-shadow:var(--mat-app-elevation-shadow-level-22, 0px 10px 14px -6px --mat-sys-shadow, 0px 22px 35px 3px --mat-sys-shadow, 0px 8px 42px 7px --mat-sys-shadow)}.mat-elevation-z23,.mat-mdc-elevation-specific.mat-elevation-z23{box-shadow:var(--mat-app-elevation-shadow-level-23, 0px 11px 14px -7px --mat-sys-shadow, 0px 23px 36px 3px --mat-sys-shadow, 0px 9px 44px 8px --mat-sys-shadow)}.mat-elevation-z24,.mat-mdc-elevation-specific.mat-elevation-z24{box-shadow:var(--mat-app-elevation-shadow-level-24, 0px 11px 15px -7px --mat-sys-shadow, 0px 24px 38px 3px --mat-sys-shadow, 0px 9px 46px 8px --mat-sys-shadow)}*{box-sizing:border-box}html{color-scheme:light}html[data-theme=dark]{color-scheme:dark}html{--mat-sys-background: light-dark(#faf9fd, #121316);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f2f0f4, #2f3033);--mat-sys-inverse-primary: light-dark(#abc7ff, #005cbb);--mat-sys-inverse-surface: light-dark(#2f3033, #e3e2e6);--mat-sys-on-background: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #002f65);--mat-sys-on-primary-container: light-dark(#00458f, #d7e3ff);--mat-sys-on-primary-fixed: light-dark(#001b3f, #001b3f);--mat-sys-on-primary-fixed-variant: light-dark(#00458f, #00458f);--mat-sys-on-secondary: light-dark(#ffffff, #283041);--mat-sys-on-secondary-container: light-dark(#3e4759, #dae2f9);--mat-sys-on-secondary-fixed: light-dark(#131c2b, #131c2b);--mat-sys-on-secondary-fixed-variant: light-dark(#3e4759, #3e4759);--mat-sys-on-surface: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-surface-variant: light-dark(#44474e, #e0e2ec);--mat-sys-on-tertiary: light-dark(#ffffff, #002f65);--mat-sys-on-tertiary-container: light-dark(#00458f, #d7e3ff);--mat-sys-on-tertiary-fixed: light-dark(#001b3f, #001b3f);--mat-sys-on-tertiary-fixed-variant: light-dark(#00458f, #00458f);--mat-sys-outline: light-dark(#74777f, #8e9099);--mat-sys-outline-variant: light-dark(#c4c6d0, #44474e);--mat-sys-primary: light-dark(#005cbb, #abc7ff);--mat-sys-primary-container: light-dark(#d7e3ff, #00458f);--mat-sys-primary-fixed: light-dark(#d7e3ff, #d7e3ff);--mat-sys-primary-fixed-dim: light-dark(#abc7ff, #abc7ff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#565e71, #bec6dc);--mat-sys-secondary-container: light-dark(#dae2f9, #3e4759);--mat-sys-secondary-fixed: light-dark(#dae2f9, #dae2f9);--mat-sys-secondary-fixed-dim: light-dark(#bec6dc, #bec6dc);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#faf9fd, #121316);--mat-sys-surface-bright: light-dark(#faf9fd, #38393c);--mat-sys-surface-container: light-dark(#efedf0, #1f2022);--mat-sys-surface-container-high: light-dark(#e9e7eb, #292a2c);--mat-sys-surface-container-highest: light-dark(#e3e2e6, #343537);--mat-sys-surface-container-low: light-dark(#f4f3f6, #1a1b1f);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0d0e11);--mat-sys-surface-dim: light-dark(#dbd9dd, #121316);--mat-sys-surface-tint: light-dark(#005cbb, #abc7ff);--mat-sys-surface-variant: light-dark(#e0e2ec, #44474e);--mat-sys-tertiary: light-dark(#005cbb, #abc7ff);--mat-sys-tertiary-container: light-dark(#d7e3ff, #00458f);--mat-sys-tertiary-fixed: light-dark(#d7e3ff, #d7e3ff);--mat-sys-tertiary-fixed-dim: light-dark(#abc7ff, #abc7ff);--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-large-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-medium-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-small-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-large-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-medium-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-small-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-large-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-medium-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-small-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-large-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-medium-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-small-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-large-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-medium-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-small-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12;--mat-snack-bar-container-shape: transparent;--mat-snack-bar-container-color: transparent;--mat-snack-bar-supporting-text-color: var(--color-text)}html,body{margin:0;padding:0;width:100%;height:100%}body{background:var(--color-bg);color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Helvetica Neue,Arial,sans-serif;transition:background .3s ease,color .3s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:0!important}.markdown-content p{margin:0 0 .75rem;line-height:1.6}.markdown-content p:last-child{margin-bottom:0}.markdown-content code{background:var(--color-code-bg);padding:.125rem .375rem;border-radius:6px;font-family:SF Mono,Monaco,Menlo,Cascadia Code,Consolas,monospace;font-size:.9em;color:var(--color-code-text);border:1px solid var(--color-border)}.markdown-content pre{background:var(--color-code-bg);padding:1rem;border-radius:12px;overflow-x:auto;margin:.75rem 0;border:1px solid var(--color-border);backdrop-filter:var(--glass-backdrop-blur);-webkit-backdrop-filter:var(--glass-backdrop-blur);box-shadow:var(--glass-shadow)}.markdown-content pre code{background:none;padding:0;color:inherit;font-size:.85rem;border:none}.markdown-content strong,.markdown-content b{font-weight:600;color:var(--color-text, #282a36)}.markdown-content em,.markdown-content i{font-style:italic}.markdown-content ul,.markdown-content ol{margin:.75rem 0;padding-left:1.5rem}.markdown-content ul li,.markdown-content ol li{margin:.25rem 0;line-height:1.5}.markdown-content ul ul,.markdown-content ul ol,.markdown-content ol ul,.markdown-content ol ol{margin:.25rem 0}.markdown-content blockquote{border-left:4px solid var(--color-primary, #7064fb);margin:.75rem 0;padding:.5rem 0 .5rem 1rem;font-style:italic;color:var(--color-text-secondary, #6272a4);background:var(--color-bg-secondary, rgba(112, 100, 251, .05));border-radius:0 4px 4px 0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin:1rem 0 .5rem;font-weight:600;line-height:1.3;color:var(--color-text, #282a36)}.markdown-content h1:first-child,.markdown-content h2:first-child,.markdown-content h3:first-child,.markdown-content h4:first-child,.markdown-content h5:first-child,.markdown-content h6:first-child{margin-top:0}.markdown-content h1{font-size:1.5rem}.markdown-content h2{font-size:1.3rem}.markdown-content h3{font-size:1.1rem}.markdown-content h4{font-size:1rem}.markdown-content h5{font-size:.9rem}.markdown-content h6{font-size:.85rem}.markdown-content a{color:var(--color-link, #3498db);text-decoration:none}.markdown-content a:hover{text-decoration:underline}.markdown-content .external-link-icon{display:inline-block;margin-left:.25rem;font-size:.85em;opacity:.7;transition:opacity .2s ease;vertical-align:super;line-height:0}.markdown-content a:hover .external-link-icon{opacity:1}.markdown-content hr{border:none;border-top:1px solid var(--color-border, #e5e7eb);margin:1rem 0}.markdown-content table{width:100%;border-collapse:collapse;margin:.75rem 0}.markdown-content table th,.markdown-content table td{padding:.5rem;text-align:left;border-bottom:1px solid var(--color-border, #e5e7eb)}.markdown-content table th{font-weight:600;background:var(--color-bg-secondary, #f8f9fa)}app-sidenav{display:block;width:100%;height:100%}app-main{position:relative;z-index:1}.app{position:relative;z-index:1}.cdk-overlay-container{z-index:10000}.mat-mdc-snackbar-surface{z-index:10000;border-radius:16px!important;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-backdrop-blur);backdrop-filter:var(--glass-backdrop-blur);position:relative;background:var(--glass-bg, #1e1e1e)!important;background-clip:padding-box}.mat-mdc-snackbar-surface:before{content:"";position:absolute;inset:-2px;border-radius:inherit;background-size:200% 100%;background:linear-gradient(90deg,var(--color-primary, #3b82f6) 0%,var(--color-accent, #8b5cf6) 50%,var(--color-primary, #3b82f6) 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:1px;pointer-events:none;z-index:-1;animation:gradientBorderShift 3s ease-in-out infinite}.mat-mdc-snackbar-surface.snackbar-error{--mat-snack-bar-button-color: var(--color-error);--mdc-snackbar-supporting-text-color: var(--color-error)}.mat-mdc-snackbar-surface.snackbar-error:before{background:linear-gradient(90deg,var(--color-primary, #3b82f6) 0%,var(--color-error) 50%,var(--color-primary, #3b82f6) 100%);background-size:200% 100%}.mat-mdc-dialog-container{--mdc-dialog-container-color: var(--color-modal-bg);--mdc-dialog-supporting-text-color: var(--color-text)}.mat-mdc-dialog-container .mdc-dialog__surface{border:1px solid var(--color-modal-border)!important;border-radius:16px!important;box-shadow:var(--color-modal-shadow)!important}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{background:var(--color-overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.cdk-overlay-pane .mat-mdc-dialog-container{height:80vh}.cdk-overlay-pane.confirm-dialog-panel .mat-mdc-dialog-container{height:auto}[data-theme=dark] .mat-mdc-snack-bar-container.snackbar-success{--mdc-snackbar-container-color: var(--glass-bg);--mat-snack-bar-button-color: var(--color-primary, #3b82f6);--mdc-snackbar-supporting-text-color: var(--color-primary, #3b82f6)}[data-theme=dark] .mat-mdc-snack-bar-container.snackbar-error{--mdc-snackbar-container-color: var(--glass-bg);--mat-snack-bar-button-color: #f44336;--mdc-snackbar-supporting-text-color: #f44336}[data-theme=dark] .mat-mdc-snack-bar-container.snackbar-info{--mdc-snackbar-container-color: var(--glass-bg);--mat-snack-bar-button-color: var(--color-primary, #3b82f6);--mdc-snackbar-supporting-text-color: var(--color-primary, #3b82f6)}mat-slide-toggle{transform:scale(.75);transform-origin:right center}[data-variant=danger].mat-mdc-menu-item,[data-variant=danger].mat-mdc-menu-item .mat-icon{color:var(--color-error, #ff3b30)}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@whoz-oss/coday-client",
3
- "version": "0.119.0",
3
+ "version": "0.121.0",
4
4
  "repository": "https://github.com/whoz-oss/coday",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1 +0,0 @@
1
- import{a as De}from"./chunk-3QJA3PD3.js";import{b as te}from"./chunk-H72Z2LX3.js";import{b as We}from"./chunk-ORNGVCRW.js";import{a as Oe,b as Ie,c as Fe,d as Te,e as ke}from"./chunk-AE2AQO4B.js";import{a as ne,b as ie,d as oe,e as re,f as ae,g as le,h as se}from"./chunk-OUZFS4TC.js";import{M as be,O as xe,P as ve,S as Ae,T as we,U as Se,V as Ee,W as Pe,z as ye}from"./chunk-4NNLWDVJ.js";import{L as O,P as ee,R as I,S as T,T as k}from"./chunk-5MXEOOQM.js";import{b as F}from"./chunk-L72BYLQX.js";import{A as Ce,C as Me,c as de,g as me,m as ce,o as ge,p as pe,w as ue,x as _e,y as fe,z as he}from"./chunk-AE24ERN3.js";import"./chunk-VVZKXHDD.js";import{$a as q,Ab as B,Bb as Z,Cb as u,Db as _,Ea as E,Eb as f,Hb as K,Ib as J,Ka as W,Ob as Q,P as N,Qa as U,Qb as X,Sa as M,T as h,Ta as y,Ua as L,Va as z,Wa as P,X as g,Xa as D,Y as p,Ya as C,Za as i,_a as o,db as H,eb as G,f as j,ga as S,gb as b,ib as c,kb as m,oc as Y,tc as $,ua as d,ub as R,wb as A,yb as l,zb as x}from"./chunk-TRUXCA4C.js";var v=class s{http=h(Y);projectState=h(F);getBaseUrl(){return`/api/projects/${this.projectState.getSelectedProjectIdOrThrow()}/agents`}listEditableAgents(){return this.http.get(`${this.getBaseUrl()}/editable`)}getAgent(t){return this.http.get(`${this.getBaseUrl()}/${encodeURIComponent(t)}`)}createAgent(t,e){return this.http.post(this.getBaseUrl(),{location:e,definition:t})}updateAgent(t,e){return this.http.put(`${this.getBaseUrl()}/${encodeURIComponent(t)}`,{definition:e})}listDocuments(t){return this.http.get(`${this.getBaseUrl()}/documents`,{params:{location:t}})}uploadDocument(t,e){return new j(n=>{let r=new FileReader;r.onload=()=>{let a=r.result.split(",")[1];this.http.post(`${this.getBaseUrl()}/documents`,{filename:e.name,content:a,mimeType:e.type},{params:{location:t}}).subscribe(n)},r.onerror=()=>n.error(r.error),r.readAsDataURL(e)})}deleteAgent(t){return this.http.delete(`${this.getBaseUrl()}/${encodeURIComponent(t)}`)}static \u0275fac=function(e){return new(e||s)};static \u0275prov=N({token:s,factory:s.\u0275fac,providedIn:"root"})};function Ne(s,t){s&1&&(i(0,"p",15),l(1,"No integrations defined \u2014 agent will have access to all tools."),o())}function Ue(s,t){if(s&1){let e=b();i(0,"div",16)(1,"mat-form-field",22)(2,"mat-label"),l(3,"Integration"),o(),i(4,"input",23),f("ngModelChange",function(r){let a=g(e).$implicit;return _(a.integration,r)||(a.integration=r),p(r)}),o()(),i(5,"mat-form-field",24)(6,"mat-label"),l(7,"Tools (comma-separated)"),o(),i(8,"input",25),f("ngModelChange",function(r){let a=g(e).$implicit;return _(a.tools,r)||(a.tools=r),p(r)}),o()(),i(9,"button",26),c("click",function(){let r=g(e).$index,a=m();return p(a.removeIntegrationRow(r))}),i(10,"mat-icon"),l(11,"delete"),o()()()}if(s&2){let e=t.$implicit;d(4),u("ngModel",e.integration),d(4),u("ngModel",e.tools)}}function ze(s,t){if(s&1&&(i(0,"p",30),l(1),o()),s&2){let e=m(2);d(),x(e.docUploadError)}}function qe(s,t){s&1&&(i(0,"p",15),l(1,"No mandatory documents defined."),o())}function He(s,t){if(s&1&&q(0,"option",35),s&2){let e=t.$implicit;C("value","documents/"+e)}}function Ge(s,t){if(s&1){let e=b();i(0,"div",31)(1,"mat-form-field",32)(2,"mat-label"),l(3,"Document path"),o(),i(4,"input",33),f("ngModelChange",function(r){let a=g(e).$index,V=m(2);return _(V.mandatoryDocs[a],r)||(V.mandatoryDocs[a]=r),p(r)}),o(),i(5,"datalist",34),P(6,He,1,1,"option",35,z),o()(),i(8,"button",26),c("click",function(){let r=g(e).$index,a=m(2);return p(a.removeDocRow(r))}),i(9,"mat-icon"),l(10,"delete"),o()()()}if(s&2){let e=t.$index,n=m(2);d(4),u("ngModel",n.mandatoryDocs[e]),U("list","docs-list-"+e),d(),C("id","docs-list-"+e),d(),D(n.availableDocuments)}}function Ze(s,t){if(s&1){let e=b();i(0,"div",6)(1,"span"),l(2,"Mandatory Documents"),o(),i(3,"button",27),c("click",function(){g(e);let r=m();return p(r.addDocRow())}),i(4,"mat-icon"),l(5,"add"),o()(),i(6,"label",28)(7,"mat-icon"),l(8,"upload_file"),o(),i(9,"input",29),c("change",function(r){g(e);let a=m();return p(a.onDocFileSelected(r))}),o()()(),M(10,ze,2,1,"p",30),M(11,qe,2,0,"p",15),P(12,Ge,11,3,"div",31,L)}if(s&2){let e=m();d(6),A("uploading",e.isUploadingDoc),d(3),C("disabled",e.isUploadingDoc),d(),y(e.docUploadError?10:-1),d(),y(e.mandatoryDocs.length===0?11:-1),d(),D(e.mandatoryDocs)}}function Ke(s,t){s&1&&(i(0,"p",15),l(1,"\u{1F4A1} Documents can be added after the agent is created."),o())}function Je(s,t){if(s&1){let e=b();i(0,"div",6),l(1,"Save to"),o(),i(2,"div",36)(3,"label",37)(4,"input",38),f("ngModelChange",function(r){g(e);let a=m();return _(a.location,r)||(a.location=r),p(r)}),o(),i(5,"div",39)(6,"div",40)(7,"span",41),l(8,"\u{1F464}"),o(),i(9,"span",42),l(10,"Project config"),o()(),i(11,"p",43),l(12),o()()(),i(13,"label",37)(14,"input",44),f("ngModelChange",function(r){g(e);let a=m();return _(a.location,r)||(a.location=r),p(r)}),o(),i(15,"div",39)(16,"div",40)(17,"span",41),l(18,"\u{1F4E6}"),o(),i(19,"span",42),l(20,"Colocated"),o()(),i(21,"p",43),l(22,"Next to coday.yaml in ./agents/ (committable)"),o()()()(),i(23,"p",15),l(24,"Storage location is permanent and cannot be changed after creation."),o()}if(s&2){let e=m();d(3),A("selected",e.location==="project"),d(),u("ngModel",e.location),d(8),Z("~/.coday/projects/","{","name","}","/agents/ (not committed)"),d(),A("selected",e.location==="colocated"),d(),u("ngModel",e.location)}}function Qe(s,t){if(s&1&&(i(0,"div",17)(1,"span",6),l(2,"Storage Location"),o(),i(3,"span",45),l(4),o(),i(5,"p",15),l(6,"Cannot be changed after creation."),o()()),s&2){let e=m();d(3),A("badge-project",e.location==="project")("badge-colocated",e.location==="colocated"),d(),B(" ",e.location==="project"?"\u{1F464} Project config":"\u{1F4E6} Colocated"," ")}}function Xe(s,t){if(s&1&&(i(0,"div",18)(1,"mat-icon"),l(2,"error"),o(),i(3,"span"),l(4),o()()),s&2){let e=m();d(4),x(e.errorMessage)}}var w=class s{agentCrudApi=h(v);agentApi=h(De);dialogRef=h(ne);data=h(ie);name="";description="";instructions="";aiProvider="";modelName="";temperature=null;maxOutputTokens=null;openaiAssistantId="";integrationRows=[];mandatoryDocs=[];availableDocuments=[];isUploadingDoc=!1;docUploadError="";location="project";isSaving=!1;errorMessage="";isEditMode=!1;ngOnInit(){if(this.isEditMode=this.data.mode==="edit",this.isEditMode&&this.data.agent){let t=this.data.agent.definition;this.name=t.name,this.description=t.description,this.instructions=t.instructions??"",this.aiProvider=t.aiProvider??"",this.modelName=t.modelName??"",this.temperature=t.temperature??null,this.maxOutputTokens=t.maxOutputTokens??null,this.openaiAssistantId=t.openaiAssistantId??"",this.location=this.data.agent.source,t.integrations&&(this.integrationRows=Object.entries(t.integrations).map(([e,n])=>({integration:e,tools:n?.join(", ")??""}))),this.mandatoryDocs=[...t.mandatoryDocs??[]],this.loadAvailableDocuments()}}loadAvailableDocuments(){this.agentCrudApi.listDocuments(this.location).subscribe({next:t=>this.availableDocuments=t,error:()=>this.availableDocuments=[]})}addDocRow(){this.mandatoryDocs.push("")}removeDocRow(t){this.mandatoryDocs.splice(t,1)}onDocFileSelected(t){let e=t.target,n=e.files?.[0];n&&(this.isUploadingDoc=!0,this.docUploadError="",this.agentCrudApi.uploadDocument(this.location,n).subscribe({next:r=>{this.isUploadingDoc=!1,this.mandatoryDocs.push(r.relativePath),this.loadAvailableDocuments(),e.value=""},error:r=>{this.isUploadingDoc=!1,this.docUploadError=r?.error?.error??r?.message??"Upload failed",e.value=""}}))}addIntegrationRow(){this.integrationRows.push({integration:"",tools:""})}removeIntegrationRow(t){this.integrationRows.splice(t,1)}trackByIndex(t){return t}validateForm(){if(!this.name.trim())return this.errorMessage="Name is required",!1;if(!/^[a-zA-Z0-9][a-zA-Z0-9_-]*$/.test(this.name.trim()))return this.errorMessage="Name must start with alphanumeric and contain only letters, digits, hyphens or underscores",!1;if(!this.description.trim())return this.errorMessage="Description is required",!1;for(let t of this.integrationRows)if(!t.integration.trim())return this.errorMessage="Integration name cannot be empty",!1;return!0}buildDefinition(){let t=this.mandatoryDocs.map(n=>n.trim()).filter(Boolean),e=this.integrationRows.length>0?Object.fromEntries(this.integrationRows.filter(n=>n.integration.trim()).map(n=>[n.integration.trim(),n.tools.split(",").map(r=>r.trim()).filter(Boolean)])):void 0;return{name:this.name.trim(),description:this.description.trim(),instructions:this.instructions.trim()||void 0,aiProvider:this.aiProvider.trim()||void 0,modelName:this.modelName.trim()||void 0,temperature:this.temperature??void 0,maxOutputTokens:this.maxOutputTokens??void 0,openaiAssistantId:this.openaiAssistantId.trim()||void 0,integrations:e,mandatoryDocs:t.length>0?t:void 0}}save(){if(this.errorMessage="",!this.validateForm())return;let t=this.buildDefinition();this.isSaving=!0,(this.isEditMode?this.agentCrudApi.updateAgent(this.name.trim(),t):this.agentCrudApi.createAgent(t,this.location)).subscribe({next:()=>{this.isSaving=!1,this.agentApi.clearAllCache(),this.dialogRef.close(!0)},error:n=>{this.isSaving=!1,this.errorMessage=n?.error?.error||n?.message||"Failed to save agent"}})}cancel(){this.dialogRef.close(!1)}static \u0275fac=function(e){return new(e||s)};static \u0275cmp=E({type:s,selectors:[["app-agent-form"]],decls:69,vars:18,consts:[["mat-dialog-title",""],[1,"form-container"],["appearance","outline",1,"full-width"],["matInput","","placeholder","my-agent","required","",3,"ngModelChange","ngModel","readonly"],["matInput","","placeholder","What does this agent do?","rows","2","required","",3,"ngModelChange","ngModel"],["matInput","","placeholder","System instructions for the agent...","rows","6",3,"ngModelChange","ngModel"],[1,"section-title"],[1,"row-2col"],["appearance","outline"],["matInput","","placeholder","e.g. anthropic, openai",3,"ngModelChange","ngModel"],["matInput","","placeholder","e.g. claude-sonnet-4-5",3,"ngModelChange","ngModel"],["matInput","","type","number","min","0","max","2","step","0.1","placeholder","0.0 \u2013 2.0",3,"ngModelChange","ngModel"],["matInput","","type","number","min","1","placeholder","e.g. 4096",3,"ngModelChange","ngModel"],["matInput","","placeholder","asst_...",3,"ngModelChange","ngModel"],["mat-icon-button","","type","button","title","Add integration",3,"click"],[1,"hint"],[1,"integration-row"],[1,"source-display"],[1,"error-message"],["align","end"],["mat-button","",3,"click","disabled"],["mat-raised-button","","color","primary",3,"click","disabled"],["appearance","outline",1,"integration-name"],["matInput","","placeholder","e.g. GITHUB",3,"ngModelChange","ngModel"],["appearance","outline",1,"integration-tools"],["matInput","","placeholder","Leave empty for all tools",3,"ngModelChange","ngModel"],["mat-icon-button","","type","button","title","Remove",3,"click"],["mat-icon-button","","type","button","title","Add document path",3,"click"],["title","Upload a document to the pool",1,"upload-btn"],["type","file","hidden","",3,"change","disabled"],[1,"doc-upload-error"],[1,"doc-row"],["appearance","outline",1,"doc-field"],["matInput","","placeholder","documents/guide.md",3,"ngModelChange","ngModel"],[3,"id"],[3,"value"],[1,"source-options"],[1,"source-option"],["type","radio","name","location","value","project",3,"ngModelChange","ngModel"],[1,"source-content"],[1,"source-header"],[1,"source-icon"],[1,"source-label"],[1,"source-description"],["type","radio","name","location","value","colocated",3,"ngModelChange","ngModel"],[1,"source-badge"]],template:function(e,n){e&1&&(i(0,"h2",0),l(1),o(),i(2,"mat-dialog-content")(3,"div",1)(4,"mat-form-field",2)(5,"mat-label"),l(6,"Name"),o(),i(7,"input",3),f("ngModelChange",function(a){return _(n.name,a)||(n.name=a),a}),o(),i(8,"mat-hint"),l(9,"Alphanumeric, hyphens and underscores only. Cannot be changed after creation."),o()(),i(10,"mat-form-field",2)(11,"mat-label"),l(12,"Description"),o(),i(13,"textarea",4),f("ngModelChange",function(a){return _(n.description,a)||(n.description=a),a}),o()(),i(14,"mat-form-field",2)(15,"mat-label"),l(16,"Instructions"),o(),i(17,"textarea",5),f("ngModelChange",function(a){return _(n.instructions,a)||(n.instructions=a),a}),o(),i(18,"mat-hint"),l(19,"System prompt / instructions sent to the AI model"),o()(),i(20,"div",6),l(21,"AI Configuration"),o(),i(22,"div",7)(23,"mat-form-field",8)(24,"mat-label"),l(25,"AI Provider"),o(),i(26,"input",9),f("ngModelChange",function(a){return _(n.aiProvider,a)||(n.aiProvider=a),a}),o()(),i(27,"mat-form-field",8)(28,"mat-label"),l(29,"Model Name"),o(),i(30,"input",10),f("ngModelChange",function(a){return _(n.modelName,a)||(n.modelName=a),a}),o()()(),i(31,"div",7)(32,"mat-form-field",8)(33,"mat-label"),l(34,"Temperature"),o(),i(35,"input",11),f("ngModelChange",function(a){return _(n.temperature,a)||(n.temperature=a),a}),o(),i(36,"mat-hint"),l(37,"Leave empty for model default"),o()(),i(38,"mat-form-field",8)(39,"mat-label"),l(40,"Max Output Tokens"),o(),i(41,"input",12),f("ngModelChange",function(a){return _(n.maxOutputTokens,a)||(n.maxOutputTokens=a),a}),o(),i(42,"mat-hint"),l(43,"Leave empty for model default"),o()()(),i(44,"mat-form-field",2)(45,"mat-label"),l(46,"OpenAI Assistant ID"),o(),i(47,"input",13),f("ngModelChange",function(a){return _(n.openaiAssistantId,a)||(n.openaiAssistantId=a),a}),o(),i(48,"mat-hint"),l(49,"If set, forces aiProvider to openai"),o()(),i(50,"div",6)(51,"span"),l(52,"Integrations"),o(),i(53,"button",14),c("click",function(){return n.addIntegrationRow()}),i(54,"mat-icon"),l(55,"add"),o()()(),M(56,Ne,2,0,"p",15),P(57,Ue,12,2,"div",16,L),M(59,Ze,14,5)(60,Ke,2,0,"p",15),M(61,Je,25,8),M(62,Qe,7,5,"div",17),M(63,Xe,5,1,"div",18),o()(),i(64,"mat-dialog-actions",19)(65,"button",20),c("click",function(){return n.cancel()}),l(66,"Cancel"),o(),i(67,"button",21),c("click",function(){return n.save()}),l(68),o()()),e&2&&(d(),x(n.isEditMode?"Edit Agent":"Create Agent"),d(6),u("ngModel",n.name),C("readonly",n.isEditMode),d(6),u("ngModel",n.description),d(4),u("ngModel",n.instructions),d(9),u("ngModel",n.aiProvider),d(4),u("ngModel",n.modelName),d(5),u("ngModel",n.temperature),d(6),u("ngModel",n.maxOutputTokens),d(6),u("ngModel",n.openaiAssistantId),d(9),y(n.integrationRows.length===0?56:-1),d(),D(n.integrationRows),d(2),y(n.isEditMode?59:60),d(2),y(n.isEditMode?-1:61),d(),y(n.isEditMode?62:-1),d(),y(n.errorMessage?63:-1),d(2),C("disabled",n.isSaving),d(2),C("disabled",n.isSaving),d(),B(" ",n.isSaving?"Saving...":"Save"," "))},dependencies:[Me,ue,_e,de,ge,pe,me,Ce,he,fe,ce,se,re,le,ae,I,ee,O,Ee,Se,Ae,xe,ve,we,k,T,We,te],styles:[".form-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem;padding:0;min-width:560px}@media(max-width:768px){.form-container[_ngcontent-%COMP%]{min-width:auto}}.full-width[_ngcontent-%COMP%]{width:100%}.section-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;margin-top:.5rem;margin-bottom:-.25rem}.row-2col[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:768px){.row-2col[_ngcontent-%COMP%]{grid-template-columns:1fr}}.integration-row[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:.5rem}.integration-row[_ngcontent-%COMP%] .integration-name[_ngcontent-%COMP%]{flex:0 0 180px}.integration-row[_ngcontent-%COMP%] .integration-tools[_ngcontent-%COMP%]{flex:1}.hint[_ngcontent-%COMP%]{margin:0;font-size:.85rem;color:var(--color-text-secondary);font-style:italic}.source-options[_ngcontent-%COMP%]{display:flex;gap:1rem;margin-bottom:.5rem}@media(max-width:768px){.source-options[_ngcontent-%COMP%]{flex-direction:column}}.source-option[_ngcontent-%COMP%]{flex:1;display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:var(--color-bg);border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s ease}.source-option[_ngcontent-%COMP%]:hover{border-color:var(--color-primary);background:var(--color-bg-hover)}.source-option.selected[_ngcontent-%COMP%]{border-color:var(--color-primary);background:var(--color-bg-hover);box-shadow:0 0 0 1px var(--color-primary)}.source-option[_ngcontent-%COMP%] input[type=radio][_ngcontent-%COMP%]{margin-top:2px;cursor:pointer}.source-option[_ngcontent-%COMP%] .source-content[_ngcontent-%COMP%]{flex:1}.source-option[_ngcontent-%COMP%] .source-content[_ngcontent-%COMP%] .source-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.source-option[_ngcontent-%COMP%] .source-content[_ngcontent-%COMP%] .source-header[_ngcontent-%COMP%] .source-icon[_ngcontent-%COMP%]{font-size:1.25rem}.source-option[_ngcontent-%COMP%] .source-content[_ngcontent-%COMP%] .source-header[_ngcontent-%COMP%] .source-label[_ngcontent-%COMP%]{font-weight:600;font-size:.95rem}.source-option[_ngcontent-%COMP%] .source-content[_ngcontent-%COMP%] .source-description[_ngcontent-%COMP%]{margin:0;font-size:.85rem;color:var(--color-text-secondary);font-family:monospace;line-height:1.4}.source-display[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.source-badge[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:6px;font-size:.9rem;font-weight:500}.source-badge.badge-project[_ngcontent-%COMP%]{background:#2196f31a;color:#2196f3;border:1px solid rgba(33,150,243,.3)}.source-badge.badge-colocated[_ngcontent-%COMP%]{background:#4caf501a;color:#4caf50;border:1px solid rgba(76,175,80,.3)}.doc-row[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:.5rem}.doc-row[_ngcontent-%COMP%] .doc-field[_ngcontent-%COMP%]{flex:1}.upload-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;cursor:pointer;color:var(--color-text-secondary);transition:background .2s}.upload-btn[_ngcontent-%COMP%]:hover{background:var(--color-bg-hover);color:var(--color-primary)}.upload-btn.uploading[_ngcontent-%COMP%]{opacity:.5;cursor:wait}.upload-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:1.25rem;width:1.25rem;height:1.25rem}.doc-upload-error[_ngcontent-%COMP%]{margin:0;font-size:.85rem;color:var(--color-error)}.error-message[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#f443361a;border:1px solid var(--color-error);border-radius:4px;color:var(--color-error)}.error-message[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:1.25rem;width:1.25rem;height:1.25rem}.error-message[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{flex:1}"]})};var Ye=()=>[],$e=s=>({id:s});function et(s,t){if(s&1&&(i(0,"div",5),l(1),o()),s&2){let e=m();d(),x(e.errorMessage())}}function tt(s,t){if(s&1){let e=b();i(0,"ds-entity-card",7),c("selected",function(r){g(e);let a=m();return p(a.onEdit(r))}),H(1,8),i(2,"button",9),c("click",function(r){return r.stopPropagation()}),i(3,"mat-icon"),l(4,"more_vert"),o()(),G(),o()}if(s&2){let e=t.$implicit;m();let n=R(9);C("id",e.id)("name",e.name)("description",e.description)("badges",e.badges??K(6,Ye)),d(2),C("matMenuTriggerFor",n)("matMenuTriggerData",J(7,$e,e.id))}}function nt(s,t){if(s&1){let e=b();i(0,"button",10),c("click",function(){let r=g(e).id,a=m();return p(a.onEdit(r))}),i(1,"mat-icon"),l(2,"edit"),o(),l(3," Edit "),o(),i(4,"button",11),c("click",function(){let r=g(e).id,a=m();return p(a.onDelete(r))}),i(5,"mat-icon"),l(6,"delete"),o(),l(7," Delete "),o()}}var Re=class s{agentCrudApi=h(v);projectState=h(F);dialog=h(oe);router=h($);agents=S([]);isLoading=S(!1);errorMessage=S(null);agentItems=X(()=>this.agents().map(t=>({id:t.name,name:t.name,description:t.description,badges:this.buildBadges(t),groupKey:t.source,groupLabel:t.source==="project"?"Project (~/.coday/)":"Colocated (next to coday.yaml)"})));ngOnInit(){this.loadAgents()}loadAgents(){this.isLoading.set(!0),this.errorMessage.set(null),this.agentCrudApi.listEditableAgents().subscribe({next:t=>{this.agents.set(t),this.isLoading.set(!1)},error:t=>{this.errorMessage.set(t?.error?.error??"Failed to load agents"),this.isLoading.set(!1)}})}onBack(){let t=this.projectState.getSelectedProjectId();this.router.navigate(t?["project",t]:["/"])}onCreate(){this.dialog.open(w,{width:"700px",maxHeight:"90vh",data:{mode:"create"}}).afterClosed().subscribe(e=>{e&&this.loadAgents()})}onEdit(t){this.agentCrudApi.getAgent(t).subscribe({next:e=>{this.dialog.open(w,{width:"700px",maxHeight:"90vh",data:{mode:"edit",agent:e}}).afterClosed().subscribe(r=>{r&&this.loadAgents()})},error:e=>this.errorMessage.set(e?.error?.error??"Failed to load agent")})}onDelete(t){confirm(`Are you sure you want to delete agent "${t}"?`)&&this.agentCrudApi.deleteAgent(t).subscribe({next:()=>this.loadAgents(),error:e=>this.errorMessage.set(e?.error?.error??"Failed to delete agent")})}buildBadges(t){return[t.source==="project"?{label:"project",variant:"info"}:{label:"colocated",variant:"success"}]}static \u0275fac=function(e){return new(e||s)};static \u0275cmp=E({type:s,selectors:[["app-agent-list"]],decls:11,vars:4,consts:[["agentCard",""],["cardMenu","matMenu"],[1,"agent-list-page"],["title","Agents","cardMinWidth","260px","contentMaxWidth","1400px","searchPlaceholder","Filter agents\u2026","emptyMessage","No file-based agents found.",3,"createRequested","items","showCreate","itemTemplate"],["toolbar-start","","mat-icon-button","","title","Back",3,"click"],[1,"agent-list__error"],["matMenuContent",""],[3,"selected","id","name","description","badges"],["dsCardActions",""],["mat-icon-button","",3,"click","matMenuTriggerFor","matMenuTriggerData"],["mat-menu-item","",3,"click"],["mat-menu-item","",1,"agent-list__delete-item",3,"click"]],template:function(e,n){if(e&1&&(i(0,"div",2)(1,"ds-entity-list",3),c("createRequested",function(){return n.onCreate()}),i(2,"button",4),c("click",function(){return n.onBack()}),i(3,"mat-icon"),l(4,"chevron_left"),o()()(),M(5,et,2,1,"div",5),o(),W(6,tt,5,9,"ng-template",null,0,Q),i(8,"mat-menu",null,1),W(10,nt,8,0,"ng-template",6),o()),e&2){let r=R(7);d(),C("items",n.agentItems())("showCreate",!0)("itemTemplate",r),d(4),y(n.errorMessage()?5:-1)}},dependencies:[Pe,be,ye,I,O,k,T,ke,Fe,Oe,Ie,Te],styles:["[_nghost-%COMP%]{display:block;width:100%;min-height:100vh;background:var(--color-bg);overflow-y:auto}.agent-list__delete-item[_ngcontent-%COMP%]{color:var(--color-error, #ff3b30)}.agent-list__delete-item[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:inherit}.agent-list__error[_ngcontent-%COMP%]{margin:1rem auto;max-width:900px;padding:.75rem 1rem;background:#dc262614;border:1px solid rgba(220,38,38,.25);border-radius:8px;color:var(--color-error, #ff3b30);font-size:.875rem}"]})};export{Re as AgentListComponent};
@@ -1 +0,0 @@
1
- import{P as y,R as F,S as H,T as V,U as J,a as f,b as u,da as k,f as W,lc as D,mc as h,oc as j}from"./chunk-TRUXCA4C.js";var v=class{apiKeys;username;password;accessToken;basePath;withCredentials;encoder;encodeParam;credentials;constructor({accessToken:b,apiKeys:n,basePath:r,credentials:s,encodeParam:o,encoder:t,password:e,username:p,withCredentials:c}={}){n&&(this.apiKeys=n),p!==void 0&&(this.username=p),e!==void 0&&(this.password=e),b!==void 0&&(this.accessToken=b),r!==void 0&&(this.basePath=r),c!==void 0&&(this.withCredentials=c),t&&(this.encoder=t),this.encodeParam=o??(a=>this.defaultEncodeParam(a)),this.credentials=s??{}}selectHeaderContentType(b){if(b.length===0)return;let n=b.find(r=>this.isJsonMime(r));return n===void 0?b[0]:n}selectHeaderAccept(b){if(b.length===0)return;let n=b.find(r=>this.isJsonMime(r));return n===void 0?b[0]:n}isJsonMime(b){let n=new RegExp("^(application/json|[^;/ ]+/[^;/ ]+[+]json)[ ]*(;.*)?$","i");return b!==null&&(n.test(b)||b.toLowerCase()==="application/json-patch+json")}lookupCredential(b){let n=this.credentials[b];return typeof n=="function"?n():n}addCredentialToHeaders(b,n,r,s){let o=this.lookupCredential(b);return o?r.set(n,(s??"")+o):r}addCredentialToQuery(b,n,r){let s=this.lookupCredential(b);return s?r.set(n,s):r}defaultEncodeParam(b){let n=b.dataFormat==="date-time"&&b.value instanceof Date?b.value.toISOString():b.value;return encodeURIComponent(String(n))}};var m=new F("basePath");var I=class{encodeKey(b){return encodeURIComponent(b)}encodeValue(b){return encodeURIComponent(b)}decodeKey(b){return decodeURIComponent(b)}decodeValue(b){return decodeURIComponent(b)}};var A=class{basePath="http://localhost:8124";defaultHeaders=new D;configuration;encoder;constructor(b,n){if(this.configuration=n||new v,typeof this.configuration.basePath!="string"){let r=Array.isArray(b)?b[0]:void 0;r!=null&&(b=r),typeof b!="string"&&(b=this.basePath),this.configuration.basePath=b}this.encoder=this.configuration.encoder||new I}canConsumeForm(b){return b.indexOf("multipart/form-data")!==-1}addToHttpParams(b,n,r,s=!1){return typeof n=="object"&&!(n instanceof Date)?this.addToHttpParamsRecursive(b,n,s?r:void 0,s):this.addToHttpParamsRecursive(b,n,r)}addToHttpParamsRecursive(b,n,r,s=!1){if(n==null)return b;if(typeof n=="object"){if(r!=null)return s?Object.keys(n).reduce((o,t)=>o.append(`${r}[${t}]`,n[t]),b):b.append(r,JSON.stringify(n));if(Array.isArray(n))n.forEach(o=>b=this.addToHttpParamsRecursive(b,o,r));else if(n instanceof Date)if(r!=null)b=b.append(r,n.toISOString());else throw Error("key may not be null if value is Date");else Object.keys(n).forEach(o=>{let t=r?`${r}.${o}`:o;b=this.addToHttpParamsRecursive(b,n[o],t)});return b}else if(r!=null)return b.append(r,n);throw Error("key may not be null if value is not object or array")}};var R=class g extends A{constructor(n,r,s){super(r,s);this.httpClient=n}addMessageCase(n,r,s="body",o=!1,t){if(n==null)throw new Error("Required parameter caseId was null or undefined when calling addMessageCase.");if(r==null)throw new Error("Required parameter addMessageRequest was null or undefined when calling addMessageCase.");let e=this.defaultHeaders,p=t?.httpHeaderAccept??this.configuration.selectHeaderAccept([]);p!==void 0&&(e=e.set("Accept",p));let c=t?.context??new h,a=t?.transferCache??!0,d=["application/json"],i=this.configuration.selectHeaderContentType(d);i!==void 0&&(e=e.set("Content-Type",i));let l="json";p&&(p.startsWith("text")?l="text":this.configuration.isJsonMime(p)?l="json":l="blob");let x=`/api/cases/${this.configuration.encodeParam({name:"caseId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}/messages`,{basePath:C,withCredentials:P}=this.configuration;return this.httpClient.request("post",`${C}${x}`,u(f({context:c,body:r,responseType:l},P?{withCredentials:P}:{}),{headers:e,observe:s,transferCache:a,reportProgress:o}))}createCase(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter _case was null or undefined when calling createCase.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a=["application/json"],d=this.configuration.selectHeaderContentType(a);d!==void 0&&(t=t.set("Content-Type",d));let i="json";e&&(e.startsWith("text")?i="text":this.configuration.isJsonMime(e)?i="json":i="blob");let l="/api/cases",{basePath:x,withCredentials:C}=this.configuration;return this.httpClient.request("post",`${x}${l}`,u(f({context:p,body:n,responseType:i},C?{withCredentials:C}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}deleteCase(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter id was null or undefined when calling deleteCase.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept([]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/cases/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("delete",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}getByIdCase(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter id was null or undefined when calling getByIdCase.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/cases/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("get",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}getByIdsCase(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter requestBody was null or undefined when calling getByIdsCase.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a=["application/json"],d=this.configuration.selectHeaderContentType(a);d!==void 0&&(t=t.set("Content-Type",d));let i="json";e&&(e.startsWith("text")?i="text":this.configuration.isJsonMime(e)?i="json":i="blob");let l="/api/cases/by-ids",{basePath:x,withCredentials:C}=this.configuration;return this.httpClient.request("post",`${x}${l}`,u(f({context:p,body:n,responseType:i},C?{withCredentials:C}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}interruptCase(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter caseId was null or undefined when calling interruptCase.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept([]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/cases/${this.configuration.encodeParam({name:"caseId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}/interrupt`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("post",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}killCase(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter caseId was null or undefined when calling killCase.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept([]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/cases/${this.configuration.encodeParam({name:"caseId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}/kill`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("post",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}listByParentCase(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter parentId was null or undefined when calling listByParentCase.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/cases/by-parentId/${this.configuration.encodeParam({name:"parentId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("get",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}updateCase(n,r,s="body",o=!1,t){if(n==null)throw new Error("Required parameter id was null or undefined when calling updateCase.");if(r==null)throw new Error("Required parameter _case was null or undefined when calling updateCase.");let e=this.defaultHeaders,p=t?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);p!==void 0&&(e=e.set("Accept",p));let c=t?.context??new h,a=t?.transferCache??!0,d=["application/json"],i=this.configuration.selectHeaderContentType(d);i!==void 0&&(e=e.set("Content-Type",i));let l="json";p&&(p.startsWith("text")?l="text":this.configuration.isJsonMime(p)?l="json":l="blob");let x=`/api/cases/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:C,withCredentials:P}=this.configuration;return this.httpClient.request("put",`${C}${x}`,u(f({context:c,body:r,responseType:l},P?{withCredentials:P}:{}),{headers:e,observe:s,transferCache:a,reportProgress:o}))}static \u0275fac=function(r){return new(r||g)(H(j),H(m,8),H(v,8))};static \u0275prov=y({token:g,factory:g.\u0275fac,providedIn:"root"})};var O=class g extends A{constructor(n,r,s){super(r,s);this.httpClient=n}createIntegrationConfig(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter integrationConfig was null or undefined when calling createIntegrationConfig.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a=["application/json"],d=this.configuration.selectHeaderContentType(a);d!==void 0&&(t=t.set("Content-Type",d));let i="json";e&&(e.startsWith("text")?i="text":this.configuration.isJsonMime(e)?i="json":i="blob");let l="/api/integration-configs",{basePath:x,withCredentials:C}=this.configuration;return this.httpClient.request("post",`${x}${l}`,u(f({context:p,body:n,responseType:i},C?{withCredentials:C}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}deleteIntegrationConfig(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter id was null or undefined when calling deleteIntegrationConfig.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept([]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/integration-configs/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("delete",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}getByIdIntegrationConfig(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter id was null or undefined when calling getByIdIntegrationConfig.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/integration-configs/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("get",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}getByIdsIntegrationConfig(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter requestBody was null or undefined when calling getByIdsIntegrationConfig.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a=["application/json"],d=this.configuration.selectHeaderContentType(a);d!==void 0&&(t=t.set("Content-Type",d));let i="json";e&&(e.startsWith("text")?i="text":this.configuration.isJsonMime(e)?i="json":i="blob");let l="/api/integration-configs/by-ids",{basePath:x,withCredentials:C}=this.configuration;return this.httpClient.request("post",`${x}${l}`,u(f({context:p,body:n,responseType:i},C?{withCredentials:C}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}listByParentIntegrationConfig(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter parentId was null or undefined when calling listByParentIntegrationConfig.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/integration-configs/by-parentId/${this.configuration.encodeParam({name:"parentId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("get",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}updateIntegrationConfig(n,r,s="body",o=!1,t){if(n==null)throw new Error("Required parameter id was null or undefined when calling updateIntegrationConfig.");if(r==null)throw new Error("Required parameter integrationConfig was null or undefined when calling updateIntegrationConfig.");let e=this.defaultHeaders,p=t?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);p!==void 0&&(e=e.set("Accept",p));let c=t?.context??new h,a=t?.transferCache??!0,d=["application/json"],i=this.configuration.selectHeaderContentType(d);i!==void 0&&(e=e.set("Content-Type",i));let l="json";p&&(p.startsWith("text")?l="text":this.configuration.isJsonMime(p)?l="json":l="blob");let x=`/api/integration-configs/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:C,withCredentials:P}=this.configuration;return this.httpClient.request("put",`${C}${x}`,u(f({context:c,body:r,responseType:l},P?{withCredentials:P}:{}),{headers:e,observe:s,transferCache:a,reportProgress:o}))}static \u0275fac=function(r){return new(r||g)(H(j),H(m,8),H(v,8))};static \u0275prov=y({token:g,factory:g.\u0275fac,providedIn:"root"})};var S=class g extends A{constructor(n,r,s){super(r,s);this.httpClient=n}getTypeIntegrationType(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter type was null or undefined when calling getTypeIntegrationType.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/integration-types/${this.configuration.encodeParam({name:"type",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:void 0})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("get",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}listTypesIntegrationType(n="body",r=!1,s){let o=this.defaultHeaders,t=s?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);t!==void 0&&(o=o.set("Accept",t));let e=s?.context??new h,p=s?.transferCache??!0,c="json";t&&(t.startsWith("text")?c="text":this.configuration.isJsonMime(t)?c="json":c="blob");let a="/api/integration-types",{basePath:d,withCredentials:i}=this.configuration;return this.httpClient.request("get",`${d}${a}`,u(f({context:e,responseType:c},i?{withCredentials:i}:{}),{headers:o,observe:n,transferCache:p,reportProgress:r}))}static \u0275fac=function(r){return new(r||g)(H(j),H(m,8),H(v,8))};static \u0275prov=y({token:g,factory:g.\u0275fac,providedIn:"root"})};var $=class g extends A{constructor(n,r,s){super(r,s);this.httpClient=n}createNamespace(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter namespace was null or undefined when calling createNamespace.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a=["application/json"],d=this.configuration.selectHeaderContentType(a);d!==void 0&&(t=t.set("Content-Type",d));let i="json";e&&(e.startsWith("text")?i="text":this.configuration.isJsonMime(e)?i="json":i="blob");let l="/api/namespaces",{basePath:x,withCredentials:C}=this.configuration;return this.httpClient.request("post",`${x}${l}`,u(f({context:p,body:n,responseType:i},C?{withCredentials:C}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}deleteNamespace(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter id was null or undefined when calling deleteNamespace.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept([]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/namespaces/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("delete",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}getByIdNamespace(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter id was null or undefined when calling getByIdNamespace.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/namespaces/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("get",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}getByIdsNamespace(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter requestBody was null or undefined when calling getByIdsNamespace.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a=["application/json"],d=this.configuration.selectHeaderContentType(a);d!==void 0&&(t=t.set("Content-Type",d));let i="json";e&&(e.startsWith("text")?i="text":this.configuration.isJsonMime(e)?i="json":i="blob");let l="/api/namespaces/by-ids",{basePath:x,withCredentials:C}=this.configuration;return this.httpClient.request("post",`${x}${l}`,u(f({context:p,body:n,responseType:i},C?{withCredentials:C}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}listAllNamespace(n="body",r=!1,s){let o=this.defaultHeaders,t=s?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);t!==void 0&&(o=o.set("Accept",t));let e=s?.context??new h,p=s?.transferCache??!0,c="json";t&&(t.startsWith("text")?c="text":this.configuration.isJsonMime(t)?c="json":c="blob");let a="/api/namespaces",{basePath:d,withCredentials:i}=this.configuration;return this.httpClient.request("get",`${d}${a}`,u(f({context:e,responseType:c},i?{withCredentials:i}:{}),{headers:o,observe:n,transferCache:p,reportProgress:r}))}listByParentNamespace(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter parentId was null or undefined when calling listByParentNamespace.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/namespaces/by-parentId/${this.configuration.encodeParam({name:"parentId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("get",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}updateNamespace(n,r,s="body",o=!1,t){if(n==null)throw new Error("Required parameter id was null or undefined when calling updateNamespace.");if(r==null)throw new Error("Required parameter namespace was null or undefined when calling updateNamespace.");let e=this.defaultHeaders,p=t?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);p!==void 0&&(e=e.set("Accept",p));let c=t?.context??new h,a=t?.transferCache??!0,d=["application/json"],i=this.configuration.selectHeaderContentType(d);i!==void 0&&(e=e.set("Content-Type",i));let l="json";p&&(p.startsWith("text")?l="text":this.configuration.isJsonMime(p)?l="json":l="blob");let x=`/api/namespaces/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:C,withCredentials:P}=this.configuration;return this.httpClient.request("put",`${C}${x}`,u(f({context:c,body:r,responseType:l},P?{withCredentials:P}:{}),{headers:e,observe:s,transferCache:a,reportProgress:o}))}static \u0275fac=function(r){return new(r||g)(H(j),H(m,8),H(v,8))};static \u0275prov=y({token:g,factory:g.\u0275fac,providedIn:"root"})};var q=class g extends A{constructor(n,r,s){super(r,s);this.httpClient=n}create2(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter agentFinishedEventAgentRunningEventAgentSelectedEventAnswerEventCaseStatusEventIntentionGeneratedEventMessageEventQuestionEventTextChunkEventThinkingEventToolRequestEventToolResponseEventToolSelectedEventWarnEvent was null or undefined when calling create2.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a=["application/json"],d=this.configuration.selectHeaderContentType(a);d!==void 0&&(t=t.set("Content-Type",d));let i="json";e&&(e.startsWith("text")?i="text":this.configuration.isJsonMime(e)?i="json":i="blob");let l="/api/case-events",{basePath:x,withCredentials:C}=this.configuration;return this.httpClient.request("post",`${x}${l}`,u(f({context:p,body:n,responseType:i},C?{withCredentials:C}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}delete2(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter id was null or undefined when calling delete2.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept([]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/case-events/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("delete",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}getById2(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter id was null or undefined when calling getById2.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/case-events/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("get",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}getByIds2(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter requestBody was null or undefined when calling getByIds2.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a=["application/json"],d=this.configuration.selectHeaderContentType(a);d!==void 0&&(t=t.set("Content-Type",d));let i="json";e&&(e.startsWith("text")?i="text":this.configuration.isJsonMime(e)?i="json":i="blob");let l="/api/case-events/by-ids",{basePath:x,withCredentials:C}=this.configuration;return this.httpClient.request("post",`${x}${l}`,u(f({context:p,body:n,responseType:i},C?{withCredentials:C}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}listByParent2(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter parentId was null or undefined when calling listByParent2.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/case-events/by-parentId/${this.configuration.encodeParam({name:"parentId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("get",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}update2(n,r,s="body",o=!1,t){if(n==null)throw new Error("Required parameter id was null or undefined when calling update2.");if(r==null)throw new Error("Required parameter agentFinishedEventAgentRunningEventAgentSelectedEventAnswerEventCaseStatusEventIntentionGeneratedEventMessageEventQuestionEventTextChunkEventThinkingEventToolRequestEventToolResponseEventToolSelectedEventWarnEvent was null or undefined when calling update2.");let e=this.defaultHeaders,p=t?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);p!==void 0&&(e=e.set("Accept",p));let c=t?.context??new h,a=t?.transferCache??!0,d=["application/json"],i=this.configuration.selectHeaderContentType(d);i!==void 0&&(e=e.set("Content-Type",i));let l="json";p&&(p.startsWith("text")?l="text":this.configuration.isJsonMime(p)?l="json":l="blob");let x=`/api/case-events/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:C,withCredentials:P}=this.configuration;return this.httpClient.request("put",`${C}${x}`,u(f({context:c,body:r,responseType:l},P?{withCredentials:P}:{}),{headers:e,observe:s,transferCache:a,reportProgress:o}))}static \u0275fac=function(r){return new(r||g)(H(j),H(m,8),H(v,8))};static \u0275prov=y({token:g,factory:g.\u0275fac,providedIn:"root"})};var B=class g extends A{constructor(n,r,s){super(r,s);this.httpClient=n}debugAllPlugins(n="body",r=!1,s){let o=this.defaultHeaders,t=s?.httpHeaderAccept??this.configuration.selectHeaderAccept(["*/*"]);t!==void 0&&(o=o.set("Accept",t));let e=s?.context??new h,p=s?.transferCache??!0,c="json";t&&(t.startsWith("text")?c="text":this.configuration.isJsonMime(t)?c="json":c="blob");let a="/api/plugins/debug",{basePath:d,withCredentials:i}=this.configuration;return this.httpClient.request("get",`${d}${a}`,u(f({context:e,responseType:c},i?{withCredentials:i}:{}),{headers:o,observe:n,transferCache:p,reportProgress:r}))}debugPlugin(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter pluginId was null or undefined when calling debugPlugin.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["*/*"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/plugins/${this.configuration.encodeParam({name:"pluginId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:void 0})}/debug`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("get",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}getAllPlugins(n="body",r=!1,s){let o=this.defaultHeaders,t=s?.httpHeaderAccept??this.configuration.selectHeaderAccept(["*/*"]);t!==void 0&&(o=o.set("Accept",t));let e=s?.context??new h,p=s?.transferCache??!0,c="json";t&&(t.startsWith("text")?c="text":this.configuration.isJsonMime(t)?c="json":c="blob");let a="/api/plugins",{basePath:d,withCredentials:i}=this.configuration;return this.httpClient.request("get",`${d}${a}`,u(f({context:e,responseType:c},i?{withCredentials:i}:{}),{headers:o,observe:n,transferCache:p,reportProgress:r}))}getPlugin(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter pluginId was null or undefined when calling getPlugin.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["*/*"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/plugins/${this.configuration.encodeParam({name:"pluginId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:void 0})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("get",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}reloadAllAgentsPlugin(n="body",r=!1,s){let o=this.defaultHeaders,t=s?.httpHeaderAccept??this.configuration.selectHeaderAccept(["*/*"]);t!==void 0&&(o=o.set("Accept",t));let e=s?.context??new h,p=s?.transferCache??!0,c="json";t&&(t.startsWith("text")?c="text":this.configuration.isJsonMime(t)?c="json":c="blob");let a="/api/plugins/reload-agents",{basePath:d,withCredentials:i}=this.configuration;return this.httpClient.request("post",`${d}${a}`,u(f({context:e,responseType:c},i?{withCredentials:i}:{}),{headers:o,observe:n,transferCache:p,reportProgress:r}))}reloadPlugin(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter pluginId was null or undefined when calling reloadPlugin.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["*/*"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/plugins/${this.configuration.encodeParam({name:"pluginId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:void 0})}/reload`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("post",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}startPlugin(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter pluginId was null or undefined when calling startPlugin.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["*/*"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/plugins/${this.configuration.encodeParam({name:"pluginId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:void 0})}/start`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("post",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}stopPlugin(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter pluginId was null or undefined when calling stopPlugin.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["*/*"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/plugins/${this.configuration.encodeParam({name:"pluginId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:void 0})}/stop`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("post",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}unloadPlugin(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter pluginId was null or undefined when calling unloadPlugin.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["*/*"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/plugins/${this.configuration.encodeParam({name:"pluginId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:void 0})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("delete",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}uploadPlugin(n="body",r=!1,s){let o=this.defaultHeaders,t=s?.httpHeaderAccept??this.configuration.selectHeaderAccept(["*/*"]);t!==void 0&&(o=o.set("Accept",t));let e=s?.context??new h,p=s?.transferCache??!0,c="json";t&&(t.startsWith("text")?c="text":this.configuration.isJsonMime(t)?c="json":c="blob");let a="/api/plugins/upload",{basePath:d,withCredentials:i}=this.configuration;return this.httpClient.request("post",`${d}${a}`,u(f({context:e,responseType:c},i?{withCredentials:i}:{}),{headers:o,observe:n,transferCache:p,reportProgress:r}))}static \u0275fac=function(r){return new(r||g)(H(j),H(m,8),H(v,8))};static \u0275prov=y({token:g,factory:g.\u0275fac,providedIn:"root"})};var N=class g extends A{constructor(n,r,s){super(r,s);this.httpClient=n}streamEventsCaseEventSse(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter caseId was null or undefined when calling streamEventsCaseEventSse.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["text/event-stream"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/cases/${this.configuration.encodeParam({name:"caseId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}/events`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("get",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}static \u0275fac=function(r){return new(r||g)(H(j),H(m,8),H(v,8))};static \u0275prov=y({token:g,factory:g.\u0275fac,providedIn:"root"})};var M=class g extends A{constructor(n,r,s){super(r,s);this.httpClient=n}createUser(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter user was null or undefined when calling createUser.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a=["application/json"],d=this.configuration.selectHeaderContentType(a);d!==void 0&&(t=t.set("Content-Type",d));let i="json";e&&(e.startsWith("text")?i="text":this.configuration.isJsonMime(e)?i="json":i="blob");let l="/api/users",{basePath:x,withCredentials:C}=this.configuration;return this.httpClient.request("post",`${x}${l}`,u(f({context:p,body:n,responseType:i},C?{withCredentials:C}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}deleteUser(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter id was null or undefined when calling deleteUser.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept([]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/users/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("delete",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}getByIdUser(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter id was null or undefined when calling getByIdUser.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/users/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("get",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}getByIdsUser(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter requestBody was null or undefined when calling getByIdsUser.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a=["application/json"],d=this.configuration.selectHeaderContentType(a);d!==void 0&&(t=t.set("Content-Type",d));let i="json";e&&(e.startsWith("text")?i="text":this.configuration.isJsonMime(e)?i="json":i="blob");let l="/api/users/by-ids",{basePath:x,withCredentials:C}=this.configuration;return this.httpClient.request("post",`${x}${l}`,u(f({context:p,body:n,responseType:i},C?{withCredentials:C}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}getMeUser(n="body",r=!1,s){let o=this.defaultHeaders,t=s?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);t!==void 0&&(o=o.set("Accept",t));let e=s?.context??new h,p=s?.transferCache??!0,c="json";t&&(t.startsWith("text")?c="text":this.configuration.isJsonMime(t)?c="json":c="blob");let a="/api/users/me",{basePath:d,withCredentials:i}=this.configuration;return this.httpClient.request("get",`${d}${a}`,u(f({context:e,responseType:c},i?{withCredentials:i}:{}),{headers:o,observe:n,transferCache:p,reportProgress:r}))}listAllUser(n="body",r=!1,s){let o=this.defaultHeaders,t=s?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);t!==void 0&&(o=o.set("Accept",t));let e=s?.context??new h,p=s?.transferCache??!0,c="json";t&&(t.startsWith("text")?c="text":this.configuration.isJsonMime(t)?c="json":c="blob");let a="/api/users",{basePath:d,withCredentials:i}=this.configuration;return this.httpClient.request("get",`${d}${a}`,u(f({context:e,responseType:c},i?{withCredentials:i}:{}),{headers:o,observe:n,transferCache:p,reportProgress:r}))}listByParentUser(n,r="body",s=!1,o){if(n==null)throw new Error("Required parameter parentId was null or undefined when calling listByParentUser.");let t=this.defaultHeaders,e=o?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);e!==void 0&&(t=t.set("Accept",e));let p=o?.context??new h,c=o?.transferCache??!0,a="json";e&&(e.startsWith("text")?a="text":this.configuration.isJsonMime(e)?a="json":a="blob");let d=`/api/users/by-parentId/${this.configuration.encodeParam({name:"parentId",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:i,withCredentials:l}=this.configuration;return this.httpClient.request("get",`${i}${d}`,u(f({context:p,responseType:a},l?{withCredentials:l}:{}),{headers:t,observe:r,transferCache:c,reportProgress:s}))}updateUser(n,r,s="body",o=!1,t){if(n==null)throw new Error("Required parameter id was null or undefined when calling updateUser.");if(r==null)throw new Error("Required parameter user was null or undefined when calling updateUser.");let e=this.defaultHeaders,p=t?.httpHeaderAccept??this.configuration.selectHeaderAccept(["application/json"]);p!==void 0&&(e=e.set("Accept",p));let c=t?.context??new h,a=t?.transferCache??!0,d=["application/json"],i=this.configuration.selectHeaderContentType(d);i!==void 0&&(e=e.set("Content-Type",i));let l="json";p&&(p.startsWith("text")?l="text":this.configuration.isJsonMime(p)?l="json":l="blob");let x=`/api/users/${this.configuration.encodeParam({name:"id",value:n,in:"path",style:"simple",explode:!1,dataType:"string",dataFormat:"uuid"})}`,{basePath:C,withCredentials:P}=this.configuration;return this.httpClient.request("put",`${C}${x}`,u(f({context:c,body:r,responseType:l},P?{withCredentials:P}:{}),{headers:e,observe:s,transferCache:a,reportProgress:o}))}static \u0275fac=function(r){return new(r||g)(H(j),H(m,8),H(v,8))};static \u0275prov=y({token:g,factory:g.\u0275fac,providedIn:"root"})};function Hn(g){return J([typeof g=="string"?{provide:m,useValue:g}:{provide:v,useValue:new v(f({},g))}])}var U=class g{config=V(v);zone=V(k);connect(b){let n=`${this.config.basePath}/api/cases/${b}/events`;return new W(r=>{let s=this.zone.runOutsideAngular(()=>new EventSource(n));return s.onmessage=o=>{try{let t=JSON.parse(o.data);this.zone.run(()=>r.next(t))}catch(t){this.zone.run(()=>r.error(new Error(`Failed to parse SSE event: ${t}`)))}},s.onerror=o=>{s.readyState===EventSource.CLOSED?this.zone.run(()=>r.complete()):this.zone.run(()=>r.error(new Error(`SSE connection error for case ${b}`))),s.close()},()=>s.close()})}static \u0275fac=function(n){return new(n||g)};static \u0275prov=y({token:g,factory:g.\u0275fac,providedIn:"root"})};export{v as a,R as b,O as c,S as d,$ as e,B as f,M as g,Hn as h};
@@ -1 +0,0 @@
1
- import{a as O,b as P}from"./chunk-FMBLR6NH.js";import{a as E}from"./chunk-FZVCANBC.js";import{a as k}from"./chunk-JCQFYRAF.js";import{w as x}from"./chunk-4NNLWDVJ.js";import"./chunk-5MXEOOQM.js";import"./chunk-AE24ERN3.js";import{a as S}from"./chunk-55ETGHKC.js";import{a as v,b as y,c as M}from"./chunk-NSSFL3WG.js";import"./chunk-H5JAF7XP.js";import"./chunk-2DVVHRX4.js";import"./chunk-VVZKXHDD.js";import{$a as u,Ea as p,Sa as g,Ta as b,Ya as f,Za as t,_a as n,ga as s,ib as l,kb as C,ua as c,yb as o,zb as h}from"./chunk-TRUXCA4C.js";var r=()=>!0;var T=[{path:"",loadComponent:()=>import("./chunk-4SMKZ2HA.js").then(e=>e.AgentosShellComponent),children:[{path:"",loadComponent:()=>import("./chunk-SPAN622B.js").then(e=>e.LayoutComponent),children:[{path:"namespaces/new",canActivate:[r],loadComponent:()=>import("./chunk-AINTM6ON.js").then(e=>e.NamespaceFormComponent)},{path:"namespaces/:namespaceId/edit",canActivate:[r],loadComponent:()=>import("./chunk-AINTM6ON.js").then(e=>e.NamespaceFormComponent)},{path:"namespaces",canActivate:[r],loadComponent:()=>import("./chunk-6XQBGSR4.js").then(e=>e.NamespaceListComponent)},{path:":namespaceId/cases",canActivate:[r],loadComponent:()=>import("./chunk-AWTXRCO7.js").then(e=>e.CaseListComponent)},{path:":namespaceId/integrations/new",canActivate:[r],loadComponent:()=>import("./chunk-A2XOITOY.js").then(e=>e.IntegrationFormComponent)},{path:":namespaceId/integrations/:integrationId/edit",canActivate:[r],loadComponent:()=>import("./chunk-A2XOITOY.js").then(e=>e.IntegrationFormComponent)},{path:":namespaceId/integrations",canActivate:[r],loadComponent:()=>import("./chunk-HGEXTRZ7.js").then(e=>e.NamespaceIntegrationsComponent)},{path:":namespaceId/cases/:caseId",canActivate:[r],loadComponent:()=>import("./chunk-B2QVH3K3.js").then(e=>e.CaseChatComponent)},{path:"me",canActivate:[r],loadComponent:()=>import("./chunk-6WUBJOTP.js").then(e=>e.UserProfileComponent)},{path:"",redirectTo:"namespaces",pathMatch:"full"}]}]}];function A(e,m){if(e&1&&(t(0,"p",11),o(1," Last action: "),t(2,"strong"),o(3),n()()),e&2){let a=C();c(3),h(a.lastAction())}}var _=class e{lastAction=s(null);onSend(){this.lastAction.set("send")}onStop(){this.lastAction.set("stop")}onAttach(){this.lastAction.set("attach")}static \u0275fac=function(a){return new(a||e)};static \u0275cmp=p({type:e,selectors:[["agentos-hello"]],decls:35,vars:2,consts:[[1,"hello-agentos"],[1,"card"],[1,"badge"],[1,"principles"],[1,"demo"],[1,"demo-label"],[1,"demo-buttons"],["icon","send","variant","primary","title","Send",3,"action"],["icon","stop","variant","danger","title","Stop",3,"action"],["icon","attach_file","variant","default","title","Attach",3,"action"],["icon","mic","variant","default","title","Record",3,"action","disabled"],[1,"demo-feedback"]],template:function(a,i){a&1&&(t(0,"div",0)(1,"div",1)(2,"div",2),o(3,"AgentOS UI"),n(),t(4,"h1"),o(5,"Hello AgentOS"),n(),t(6,"p"),o(7," This component lives in "),t(8,"code"),o(9,"libs/agentos-ui"),n(),o(10," \u2014 isolated from Coday internals, ready to be published as "),t(11,"code"),o(12,"@whoz-oss/agentos-ui"),n(),o(13,". "),n(),u(14,"agentos-backend-status"),t(15,"ul",3)(16,"li"),o(17,"\u2726 No imports from Coday app"),n(),t(18,"li"),o(19,"\u2726 CSS custom properties as host contract"),n(),t(20,"li"),o(21,"\u2726 Standalone Angular components"),n(),t(22,"li"),o(23,"\u2726 Signals-first reactive state"),n()(),t(24,"div",4)(25,"p",5),o(26,"ds-icon-button from "),t(27,"code"),o(28,"@whoz-oss/design-system"),n()(),t(29,"div",6)(30,"ds-icon-button",7),l("action",function(){return i.onSend()}),n(),t(31,"ds-icon-button",8),l("action",function(){return i.onStop()}),n(),t(32,"ds-icon-button",9),l("action",function(){return i.onAttach()}),n(),t(33,"ds-icon-button",10),l("action",function(){return i.onAttach()}),n()(),g(34,A,4,1,"p",11),n()()()),a&2&&(c(33),f("disabled",!0),c(),b(i.lastAction()?34:-1))},dependencies:[x,v],styles:['@charset "UTF-8";.hello-agentos[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.card[_ngcontent-%COMP%]{background:var(--glass-bg, rgba(255, 255, 255, .72));border:1px solid var(--glass-border, rgba(255, 255, 255, .18));box-shadow:var(--glass-shadow, 0 8px 32px 0 rgba(31, 38, 135, .15));backdrop-filter:var(--glass-backdrop-blur, blur(20px));-webkit-backdrop-filter:var(--glass-backdrop-blur, blur(20px));border-radius:20px;padding:3rem;max-width:480px;width:100%;text-align:center}.badge[_ngcontent-%COMP%]{display:inline-block;background:var(--color-primary, #007aff);color:var(--color-text-inverse, #ffffff);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:.25rem .75rem;border-radius:100px;margin-bottom:1.5rem}h1[_ngcontent-%COMP%]{color:var(--color-text, #1d1d1f);font-size:2rem;font-weight:700;margin:0 0 1rem;letter-spacing:-.02em}p[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);line-height:1.6;margin:0 0 1.5rem}p[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:var(--color-code-bg, rgba(142, 142, 147, .12));color:var(--color-code-text, #ff375f);padding:.125rem .375rem;border-radius:6px;font-size:.875em;border:1px solid var(--color-border, rgba(0, 0, 0, .1))}.principles[_ngcontent-%COMP%]{list-style:none;margin:0 0 1.5rem;padding:0;text-align:left;display:flex;flex-direction:column;gap:.5rem}.principles[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-size:.9rem;padding:.5rem .75rem;background:var(--color-bg-hover, rgba(0, 0, 0, .04));border-radius:8px;border:1px solid var(--color-border-light, rgba(40, 40, 40, .08))}.demo[_ngcontent-%COMP%]{border-top:1px solid var(--color-border-light, rgba(40, 40, 40, .08));padding-top:1.25rem}.demo[_ngcontent-%COMP%] .demo-label[_ngcontent-%COMP%]{color:var(--color-text-secondary, #6e6e73);font-size:.8rem;margin:0 0 .75rem}.demo[_ngcontent-%COMP%] .demo-label[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:var(--color-code-bg, rgba(142, 142, 147, .12));color:var(--color-code-text, #ff375f);padding:.125rem .375rem;border-radius:6px;font-size:.875em;border:1px solid var(--color-border, rgba(0, 0, 0, .1))}.demo[_ngcontent-%COMP%] .demo-buttons[_ngcontent-%COMP%]{display:flex;gap:.5rem;align-items:center;justify-content:center;padding:.75rem;background:var(--color-bg-hover, rgba(0, 0, 0, .04));border-radius:12px;border:1px solid var(--color-border-light, rgba(40, 40, 40, .08))}.demo[_ngcontent-%COMP%] .demo-feedback[_ngcontent-%COMP%]{margin:.75rem 0 0;font-size:.85rem;color:var(--color-text-secondary, #6e6e73)}.demo[_ngcontent-%COMP%] .demo-feedback[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{color:var(--color-primary, #007aff)}']})};export{T as AGENTOS_ROUTES,S as AgentosShellComponent,v as BackendStatusComponent,k as CaseChatComponent,E as CaseListComponent,y as HeaderComponent,_ as HelloAgentosComponent,M as LayoutComponent,O as NamespaceItemComponent,P as NamespaceListComponent,r as agentosReadyGuard};