@8wave/ai-elements 0.114.0-beta.25 → 0.114.0-beta.30

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 (56) hide show
  1. package/dist/_chunks/{PkToolShowSources-Sc1W6WHe.js → PkToolShowSources-Bfx-Th_j.js} +2 -2
  2. package/dist/_chunks/{PkToolShowSources-Sc1W6WHe.js.map → PkToolShowSources-Bfx-Th_j.js.map} +1 -1
  3. package/dist/_chunks/{markdown-BrvkrEUr.js → markdown-BL7WANiX.js} +10 -3
  4. package/dist/_chunks/markdown-BL7WANiX.js.map +1 -0
  5. package/dist/ai-elements.es.js +792 -353
  6. package/dist/ai-elements.es.js.map +1 -1
  7. package/dist-vue/PkChatbot.js +1 -1
  8. package/dist-vue/PkChatbotAuth.js +1 -1
  9. package/dist-vue/PkChatbotMessages.js +1 -1
  10. package/dist-vue/PkChatbotViewChat.js +1 -1
  11. package/dist-vue/PkChatbotViewFiles.js +1 -1
  12. package/dist-vue/_chunks/{Document-p2Y_4gk8.js → Document-nCWwJC2h.js} +10 -3
  13. package/dist-vue/_chunks/Document-nCWwJC2h.js.map +1 -0
  14. package/dist-vue/_chunks/{PkChatbot-Dn_6yrFw.js → PkChatbot-CXQzBuxy.js} +3 -3
  15. package/dist-vue/_chunks/{PkChatbot-Dn_6yrFw.js.map → PkChatbot-CXQzBuxy.js.map} +1 -1
  16. package/dist-vue/_chunks/PkChatbotAuth-jzoNJkmH.js +421 -0
  17. package/dist-vue/_chunks/PkChatbotAuth-jzoNJkmH.js.map +1 -0
  18. package/dist-vue/_chunks/{PkChatbotMessages-Yaf_5xJV.js → PkChatbotMessages-KH5RE8Dk.js} +3 -3
  19. package/dist-vue/_chunks/{PkChatbotMessages-Yaf_5xJV.js.map → PkChatbotMessages-KH5RE8Dk.js.map} +1 -1
  20. package/dist-vue/_chunks/{PkChatbotViewChat-DFYw4nzP.js → PkChatbotViewChat-D5sfTMCW.js} +3 -3
  21. package/dist-vue/_chunks/{PkChatbotViewChat-DFYw4nzP.js.map → PkChatbotViewChat-D5sfTMCW.js.map} +1 -1
  22. package/dist-vue/_chunks/{PkChatbotViewFiles-BBBO5hyd.js → PkChatbotViewFiles-Bk9-K6Hw.js} +2 -2
  23. package/dist-vue/_chunks/{PkChatbotViewFiles-BBBO5hyd.js.map → PkChatbotViewFiles-Bk9-K6Hw.js.map} +1 -1
  24. package/dist-vue/_chunks/{PkToolShowDiagram-WyUnnDUn.js → PkToolShowDiagram-CztnTdq2.js} +2 -2
  25. package/dist-vue/_chunks/{PkToolShowDiagram-WyUnnDUn.js.map → PkToolShowDiagram-CztnTdq2.js.map} +1 -1
  26. package/dist-vue/_chunks/{PkToolShowSources-BItTltB5.js → PkToolShowSources-CyR2GTiE.js} +2 -2
  27. package/dist-vue/_chunks/{PkToolShowSources-BItTltB5.js.map → PkToolShowSources-CyR2GTiE.js.map} +1 -1
  28. package/dist-vue/apps/web-component/src/components/EmbeddedChatWidget.ce.d.ts +4 -4
  29. package/dist-vue/apps/web-component/src/composables/useChatbotAuth.d.ts +53 -5
  30. package/dist-vue/apps/web-component/src/composables/useChatbotAuthForm.d.ts +14 -0
  31. package/dist-vue/composables.js +333 -32
  32. package/dist-vue/composables.js.map +1 -1
  33. package/dist-vue/index.js +395 -367
  34. package/dist-vue/index.js.map +1 -1
  35. package/dist-vue/locales.js +24 -0
  36. package/dist-vue/packages/auth/src/additional-fields.d.ts +48 -0
  37. package/dist-vue/packages/auth/src/passkey-policy-client-plugin.d.ts +31 -0
  38. package/dist-vue/packages/auth/src/passkey-policy-plugin.d.ts +22 -0
  39. package/dist-vue/packages/auth/src/two-factor-policy-client-plugin.d.ts +60 -0
  40. package/dist-vue/packages/auth/src/two-factor-policy-plugin.d.ts +65 -0
  41. package/dist-vue/packages/components/src/PkQrCode.d.ts +14 -0
  42. package/dist-vue/packages/components/src/chat/PkChatbotAuth.d.ts +19 -0
  43. package/dist-vue/packages/components/src/index.d.ts +2 -1
  44. package/dist-vue/packages/models/src/schema/Document.d.ts +17 -0
  45. package/dist-vue/packages/models/src/schema/DocumentFolder.d.ts +10 -0
  46. package/dist-vue/packages/models/src/schema/DocumentSyncSource.d.ts +71 -1
  47. package/dist-vue/packages/models/src/schema/Member.d.ts +3 -0
  48. package/dist-vue/packages/models/src/schema/Notification.d.ts +6 -0
  49. package/dist-vue/packages/models/src/schema/Organization.d.ts +1 -0
  50. package/dist-vue/packages/models/src/schema/User.d.ts +1 -0
  51. package/dist-vue/style.css +1 -1
  52. package/package.json +1 -1
  53. package/dist/_chunks/markdown-BrvkrEUr.js.map +0 -1
  54. package/dist-vue/_chunks/Document-p2Y_4gk8.js.map +0 -1
  55. package/dist-vue/_chunks/PkChatbotAuth-Bi508F1u.js +0 -349
  56. package/dist-vue/_chunks/PkChatbotAuth-Bi508F1u.js.map +0 -1
@@ -1,11 +1,11 @@
1
1
  (function(){try{var __b=new URL(".",import.meta.url).href;if(typeof document<`u`){var e=document.createElement(`style`);e.appendChild(document.createTextNode(`@font-face{font-family:'Open Sans';font-style:italic;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWtE6F15M.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'Open Sans';font-style:italic;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWvU6F15M.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Open Sans';font-style:italic;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWtU6F15M.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:'Open Sans';font-style:italic;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuk6F15M.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:'Open Sans';font-style:italic;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWu06F15M.woff2) format('woff2');unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:'Open Sans';font-style:italic;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWxU6F15M.woff2) format('woff2');unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:'Open Sans';font-style:italic;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqW106F15M.woff2) format('woff2');unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:'Open Sans';font-style:italic;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWtk6F15M.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Open Sans';font-style:italic;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWt06F15M.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Open Sans';font-style:italic;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuU6F.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSKmu1aB.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSumu1aB.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSOmu1aB.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSymu1aB.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS2mu1aB.woff2) format('woff2');unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTVOmu1aB.woff2) format('woff2');unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTUGmu1aB.woff2) format('woff2');unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSCmu1aB.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSGmu1aB.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url("+__b+"assets/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-muw.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}`)),document.head.appendChild(e)}}catch(e){console.error(`vite-plugin-css-injected-by-js`,e)}})();
2
2
  import { S as e, T as t, a as n, b as r, c as i, d as a, f as o, g as s, h as c, i as l, l as u, m as d, n as f, o as p, p as m, r as h, t as g, u as _, v, w as y, x as b, y as x } from "./_chunks/zod-BTUfq5ZI.js";
3
- import { $ as S, B as C, C as w, Ct as ee, D as T, E as te, F as ne, G as E, H as re, I as ie, J as ae, K as oe, L as D, M as O, N as se, O as k, P as A, R as j, S as M, St as N, T as ce, Tt as P, X as F, Z as le, _ as I, _t as ue, b as L, bt as R, c as de, ct as z, d as B, dt as fe, et as pe, g as V, gt as me, h as H, ht as he, it as U, j as ge, k as _e, l as ve, lt as ye, m as W, n as be, nt as xe, ot as Se, pt as G, q as Ce, r as we, rt as Te, st as Ee, t as K, u as De, ut as Oe, v as q, vt as ke, w as Ae, wt as je, x as J, xt as Y, y as Me, yt as X, z as Ne } from "./_chunks/vue.runtime.esm-bundler-CIT_Sbqw.js";
3
+ import { $ as S, B as ee, C, Ct as te, D as w, E as T, F as ne, G as E, H as re, I as ie, J as ae, K as oe, L as D, M as O, N as se, O as k, P as A, R as j, S as M, St as N, T as ce, Tt as P, X as F, Z as le, _ as I, _t as ue, b as L, bt as R, c as de, ct as z, d as B, dt as fe, et as pe, g as V, gt as me, h as H, ht as he, it as U, j as ge, k as _e, l as ve, lt as ye, m as W, n as be, nt as xe, ot as Se, pt as G, q as Ce, r as we, rt as Te, st as Ee, t as K, u as De, ut as Oe, v as q, vt as ke, w as Ae, wt as je, x as J, xt as Y, y as Me, yt as X, z as Ne } from "./_chunks/vue.runtime.esm-bundler-CIT_Sbqw.js";
4
4
  import { n as Pe, r as Fe, t as Ie } from "./_chunks/vue-i18n-BdMHu4Kd.js";
5
5
  import { i as Le, n as Re, r as ze } from "./_chunks/iconify-CN8mivJ9.js";
6
6
  import { C as Be, D as Ve, E as He, O as Ue, S as We, T as Ge, _ as Ke, a as qe, b as Je, d as Ye, f as Xe, g as Ze, h as Qe, i as $e, k as et, l as tt, m as nt, n as rt, o as it, p as at, r as ot, t as st, u as ct, v as lt, w as ut, x as dt, y as ft } from "./_chunks/PkStreamingMarkdown-ZD0SROu1.js";
7
7
  import { a as pt, d as mt, f as ht, h as gt, i as _t, l as vt, n as yt, o as bt, p as xt, r as St, s as Ct, t as wt, u as Tt } from "./_chunks/Agent-DK76k05_.js";
8
- import { a as Et, i as Dt, n as Ot, t as kt } from "./_chunks/markdown-BrvkrEUr.js";
8
+ import { a as Et, i as Dt, n as Ot, t as kt } from "./_chunks/markdown-BL7WANiX.js";
9
9
  import { t as At } from "./_chunks/src-BQHP1-Xs.js";
10
10
  import { t as jt } from "./_chunks/text-DbSEK8si.js";
11
11
  import { r as Mt, t as Nt } from "./_chunks/url-validation-uLMZ5-AU.js";
@@ -268,7 +268,7 @@ function Mn(e, t, n) {
268
268
  let r, i = typeof t == "function";
269
269
  r = i ? n : t;
270
270
  function a(n, a) {
271
- let o = T();
271
+ let o = w();
272
272
  return n ||= o ? _e(rn, null) : null, n && nn(n), n = tn, n._s.has(e) || (i ? jn(e, t, r, n) : An(e, r, n)), n._s.get(e);
273
273
  }
274
274
  return a.$id = e, a;
@@ -510,7 +510,9 @@ var Pn = {
510
510
  welcomePopup: "Mostra popup di benvenuto",
511
511
  writeMessage: "Scrivi un messaggio",
512
512
  zoomIn: "Ingrandisci",
513
- zoomOut: "Riduci"
513
+ zoomOut: "Riduci",
514
+ createWebSource: "Crea sorgente",
515
+ webSourceConfirmRemoval: "Rimuovi le {count} pagine"
514
516
  },
515
517
  agent: {
516
518
  channel: {
@@ -726,7 +728,9 @@ var Pn = {
726
728
  unlinkAgent: "Rimuovere questo agente dal documento?",
727
729
  unlinkDocument: "Disassociare questo documento dall'agente?",
728
730
  unlinkLastAgentDelete: "Rimuovere l'ultimo agente da questo documento?",
729
- unlinkSyncedFolder: "Scollegare questa cartella?"
731
+ unlinkSyncedFolder: "Scollegare questa cartella?",
732
+ webSourceConfirmRemoval: "Rimuovere {count} pagine?",
733
+ unlinkWebSource: "Scollegare la sorgente?"
730
734
  },
731
735
  conversationAnalysis: {
732
736
  abuseCategory: {
@@ -868,7 +872,9 @@ var Pn = {
868
872
  unchanged: "invariati",
869
873
  skippedUnsupported: "formati non supportati",
870
874
  skippedTooLarge: "troppo grandi",
871
- failed: "falliti"
875
+ failed: "falliti",
876
+ scannedPages: "pagine esaminate",
877
+ capped: "rimandate al prossimo controllo"
872
878
  },
873
879
  documentSyncInterval: {
874
880
  daily: "Ogni giorno",
@@ -889,14 +895,28 @@ var Pn = {
889
895
  url: "Pagina web"
890
896
  },
891
897
  errors: {
898
+ ACCOUNT_TEMPORARILY_LOCKED: "Troppi codici sbagliati: la verifica è bloccata per 15 minuti.",
892
899
  BANNED_USER: "Questo account è stato bannato. Contatta l'assistenza se pensi che sia un errore.",
893
900
  CREDENTIAL_ACCOUNT_NOT_FOUND: "Questo account accede con Google o Microsoft e non ha una password da cambiare",
901
+ EMAIL_CODE_NOT_AVAILABLE: "Questo account usa un'app di autenticazione: scrivi il suo codice o un codice di recupero.",
902
+ TWO_FACTOR_REQUIRED: "Un'organizzazione di questo account richiede la verifica in due passaggi: configurala per continuare",
903
+ PASSKEY_PASSWORD_REQUIRED: "Conferma la password per aggiungere una passkey",
904
+ PASSKEY_RECENT_SIGN_IN_REQUIRED: "Esci e accedi di nuovo per aggiungere una passkey",
905
+ PASSKEY_NOT_ALLOWED_FOR_SESSION: "Una passkey la aggiunge solo il titolare dell'account, dopo l'accesso",
906
+ PASSKEY_USER_VERIFICATION_REQUIRED: "Questa passkey non ha chiesto né PIN né impronta né volto: impostane uno sul dispositivo e riprova",
907
+ PASSKEY_NOT_FOUND: "Questa passkey non è collegata a nessun account: accedi con la password",
908
+ AUTHENTICATION_FAILED: "Non è stato possibile verificare la passkey: riprova",
909
+ FAILED_TO_VERIFY_REGISTRATION: "Non è stato possibile salvare la passkey: riprova",
910
+ CHALLENGE_NOT_FOUND: "La richiesta è scaduta: riprova",
894
911
  EMAIL_NOT_VERIFIED: "Verifica il tuo indirizzo email",
895
912
  EMAIL_VERIFICATION_REQUIRED_BEFORE_ACCEPTING_OR_REJECTING_INVITATION: "Verifica il tuo indirizzo email prima di rispondere all'invito",
896
913
  FAILED_TO_UNLINK_LAST_ACCOUNT: "Non puoi scollegare l'unico metodo di accesso",
914
+ INVALID_BACKUP_CODE: "Il codice di recupero non è valido o è già stato usato.",
915
+ INVALID_CODE: "Il codice non è valido. Riprova.",
897
916
  INVALID_EMAIL_OR_PASSWORD: "Email o password non validi",
898
917
  INVALID_PASSWORD: "La password non è corretta",
899
918
  INVALID_TOKEN: "Il link è scaduto o è già stato usato. Richiedine uno nuovo.",
919
+ INVALID_TWO_FACTOR_COOKIE: "La verifica è scaduta. Accedi di nuovo.",
900
920
  INVITATION_LIMIT_REACHED: "Questa organizzazione ha raggiunto il limite di inviti",
901
921
  INVITATION_NOT_FOUND: "L'invito non è più valido: potrebbe essere scaduto, annullato o avere già ricevuto una risposta",
902
922
  INVITER_IS_NO_LONGER_A_MEMBER_OF_THE_ORGANIZATION: "Chi ti ha invitato non fa più parte dell'organizzazione, quindi l'invito non è più valido",
@@ -907,10 +927,15 @@ var Pn = {
907
927
  ORGANIZATION_MEMBERSHIP_LIMIT_REACHED: "Questa organizzazione ha raggiunto il limite di membri",
908
928
  ORGANIZATION_NOT_FOUND: "L'organizzazione non esiste più",
909
929
  ORGANIZATION_SLUG_ALREADY_TAKEN: "Questo slug è già usato da un'altra organizzazione",
930
+ OTP_HAS_EXPIRED: "Il codice è scaduto. Chiedine uno nuovo.",
910
931
  RATE_LIMIT_EXCEEDED: "Limite di richieste superato",
911
932
  SESSION_NOT_FRESH: "Per sicurezza, accedi di nuovo e ripeti l'operazione",
912
933
  SOCIAL_ACCOUNT_ALREADY_LINKED: "Questo account è già collegato a un altro utente",
934
+ TOO_MANY_ATTEMPTS_REQUEST_NEW_CODE: "Troppi tentativi. Accedi di nuovo per ricevere un nuovo codice.",
913
935
  TOO_MANY_REQUESTS: "Troppi tentativi. Attendi qualche minuto e riprova.",
936
+ TOTP_ALREADY_ENABLED: "La verifica in due passaggi con un'app è già attiva.",
937
+ TOTP_NOT_ENABLED: "Nessuna app di autenticazione è configurata per questo account.",
938
+ TWO_FACTOR_REQUIRED_TO_ENFORCE: "Attiva la verifica in due passaggi sul tuo account prima di renderla obbligatoria.",
914
939
  UNAUTHORIZED_SESSION: "La sessione è scaduta. Accedi di nuovo.",
915
940
  USER_ALREADY_EXISTS: "Esiste già un account con questa email",
916
941
  USER_ALREADY_EXISTS_USE_ANOTHER_EMAIL: "Esiste già un account con questa email",
@@ -925,6 +950,7 @@ var Pn = {
925
950
  YOU_CANNOT_LEAVE_THE_ORGANIZATION_AS_THE_ONLY_OWNER: "Sei l'unico proprietario: nomina un altro proprietario prima di uscire",
926
951
  YOU_CANNOT_LEAVE_THE_ORGANIZATION_WITHOUT_AN_OWNER: "L'organizzazione deve avere almeno un proprietario",
927
952
  YOU_CANNOT_REMOVE_YOURSELF: "Non puoi rimuovere te stesso",
953
+ YOU_CANNOT_RESET_YOUR_OWN_TWO_FACTOR: "La tua verifica in due passaggi si disattiva dal profilo.",
928
954
  YOU_HAVE_REACHED_THE_MAXIMUM_NUMBER_OF_ORGANIZATIONS: "Hai raggiunto il numero massimo di organizzazioni",
929
955
  fileAlreadyImported: "Questo file è già stato importato come documento",
930
956
  invalidToken: "Richiesta non più valida",
@@ -934,7 +960,8 @@ var Pn = {
934
960
  required: "Obbligatorio",
935
961
  slugAlreadyExists: "Lo slug esiste già",
936
962
  slugFormat: "Lo slug può contenere solo lettere minuscole, numeri e trattini (-)",
937
- urlAlreadyImported: "Questo URL è già stato importato come documento"
963
+ urlAlreadyImported: "Questo URL è già stato importato come documento",
964
+ syncSourceUrlOnly: "Solo una pagina web può appartenere a una sorgente web"
938
965
  },
939
966
  externalProvider: {
940
967
  domain: "Dominio email",
@@ -982,13 +1009,16 @@ var Pn = {
982
1009
  puppeteerBrowserEngine: "esegue JavaScript con un browser locale. Per pagine dinamiche o single-page.",
983
1010
  remoteBrowserEngine: "come Puppeteer, ma su un browser remoto. Aggira blocchi e rilevamento bot.",
984
1011
  useBrowserEngine: "Più lento, ma consente l'analisi di pagine dinamiche",
985
- useExtractionStrategy: "Migliora l'estrazione dei dati con l'AI"
1012
+ useExtractionStrategy: "Migliora l'estrazione dei dati con l'AI",
1013
+ webSourceWatch: "Le pagine vanno in una nuova cartella «{name}». Alla scadenza la piattaforma rilegge la sorgente e importa lì le pagine nuove. Le pagine restano modificabili.",
1014
+ webSourceRemoveMissing: "Per un sito tuo, la cui sitemap elenca tutto ciò che è pubblicato. Se ne mancano troppe in una volta non rimuove niente e chiede conferma."
986
1015
  },
987
- hint: /* @__PURE__ */ JSON.parse("{\"agentModel\":\"Pre-selezionato alla creazione di un nuovo agente.\",\"agentOnOwnEndpoint\":\"Questo agente gira sull’endpoint della tua organizzazione.\",\"allowedDomains\":\"Cerca solo all'interno di questi domini.\",\"approvalChannels\":\"Un tool può chiedere conferma all'utente prima di eseguire: espandi il tool per attivarla. Via API o in esecuzioni schedulate la chiamata viene rifiutata.\",\"audience\":\"L'audience attesa del token JWT (aud). Se vuota, l'audience non viene verificata.\",\"blockedDomains\":\"Escludi questi domini dai risultati.\",\"channel\":{\"app\":\"L'agente è accessibile tramite la pagina pubblica dedicata.\",\"frontoffice\":\"L'agente è visibile nel pannello Frontoffice.\",\"widget\":\"L'agente è incorporabile nei siti web tramite embed script.\"},\"channelAppDisabled\":\"Il canale App è disabilitato: il link diretto e l'iframe non funzioneranno.\",\"channelWidgetDisabled\":\"Il canale Widget è disabilitato: il codice embed e il loader non funzioneranno.\",\"costSourceEndpoint\":\"I modelli sull’endpoint della tua organizzazione: li fattura il tuo fornitore, qui il costo è una stima a prezzi di listino.\",\"customCss\":\"CSS iniettato nello shadow DOM del widget. Permette di personalizzare l'interfaccia della chat dall'esterno.\",\"disallowPromptTraining\":\"Instrada le richieste solo verso provider che non usano i dati per addestrare i modelli AI.\",\"dismissableNotice\":\"Verrà nascosto dopo il primo messaggio.\",\"documentFolderManaged\":\"Cartella sincronizzata da {provider}: il contenuto si modifica alla sorgente.\",\"documentRefresh\":\"Rilegge la pagina alla scadenza e rigenera solo ciò che è cambiato.\",\"documentRefreshTriggerOff\":\"Questa pagina si aggiorna da sola, e salvando un testo vostro si spegne.\",\"documentSelectionHasManaged\":\"La selezione contiene documenti che arrivano da una sorgente collegata e non si possono modificare a mano.\",\"documentSourceInterval\":\"Ogni quanto la cartella viene riletta. I file invariati non vengono riconvertiti.\",\"documentSourceName\":\"Il nome con cui la cartella compare qui. Quello remoto non cambia.\",\"emailClaim\":\"Il claim JWT che contiene l'email dell'utente (default: email).\",\"embedCode\":\"Copia e incolla questo codice per incorporare l'agente nel tuo sito web.\",\"embedding\":\"I vettori della base di conoscenza, dei file degli utenti e delle memorie. Si calcolano sul gateway AI della piattaforma, oppure sul tuo endpoint con uno dei due modelli ammessi.\",\"embeddingActivation\":\"Prima di salvare, l’endpoint calcola il vettore di una frase di prova, che viene confrontato con quello del modello: un modello diverso viene rifiutato. Passare a un altro modello ricalcola la base di conoscenza e le memorie, e finché non ha finito le ricerche trovano solo ciò che è già nel modello nuovo.\",\"embeddingEndpointModel\":\"L’id con cui il tuo endpoint serve il modello\",\"embeddingEndpointOff\":\"Accendi l’endpoint per calcolarci i vettori\",\"embeddingFamily\":\"Fra quelli che il tuo endpoint serve\",\"embeddingFamilyUnknown\":\"L’endpoint non lo dichiara: lo verifica il salvataggio\",\"embeddingModelsServed\":\"Il tuo endpoint serve anche questi. Non possono rispondere a un agente: quello con cui si calcolano i vettori si sceglie nella sezione Embedding.\",\"embeddingNotConfigured\":\"La base di conoscenza, le risposte corrette, le memorie e l’elaborazione dei documenti sono ferme, perché nessuno calcola i loro vettori. Attiva un modello di embedding sul tuo endpoint per farle ripartire.\",\"embeddingReindexing\":\"Finché la reindicizzazione non finisce, le ricerche nella base di conoscenza e nelle memorie trovano solo ciò che è già nel modello nuovo: risultati parziali, mai sbagliati. Non serve fare niente, e se si interrompe riparte da dove era arrivata.\",\"embeddingStopped\":\"L’endpoint che calcola i vettori è spento: la base di conoscenza, le risposte corrette, le memorie e l’elaborazione dei documenti sono ferme finché non lo riaccendi.\",\"embeddingWithoutEndpoint\":\"I vettori della base di conoscenza, dei file degli utenti e delle memorie si calcolano sul gateway AI della piattaforma. Collega il tuo endpoint per calcolarli lì.\",\"embedIframe\":\"Incorpora l'interfaccia della chat direttamente con un iframe.\",\"embedPreview\":\"L'agente sarà accessibile al seguente URL.\",\"embeddingWithoutEndpointOrGateway\":\"I vettori della base di conoscenza, dei file degli utenti e delle memorie non si calcolano: questa organizzazione non usa il gateway AI della piattaforma. Collega il tuo endpoint per calcolarli lì.\",\"embeddingWithoutGateway\":\"I vettori della base di conoscenza, dei file degli utenti e delle memorie. Questa organizzazione non usa il gateway AI della piattaforma, quindi si calcolano solo sul tuo endpoint, con uno dei due modelli ammessi.\",\"externalContextSchema\":\"Definisci quali dati contestuali il sito ospitante può inviare all'agente.\",\"externalContextSchemaToggle\":\"Abilita la ricezione di dati contestuali dal sito ospitante.\",\"feature\":{\"apiTools\":\"Gli agenti chiamano come tool le API dell’organizzazione.\",\"byok\":\"L’organizzazione collega un suo endpoint compatibile OpenAI e ne usa i modelli.\",\"endpoints\":\"Gli agenti rispondono via REST ad altri sistemi.\",\"fileUpload\":\"Gli utenti allegano file ai messaggi in chat.\",\"gateway\":\"I modelli del gateway AI, e con loro l’embedding della piattaforma, le utility e l’AI dei documenti che li usano.\",\"integrations\":\"Collegamenti a CRM e a sorgenti di documenti come SharePoint.\",\"mcpServers\":\"Gli agenti usano i tool di server MCP esterni.\",\"subAgents\":\"Un agente ne chiama un altro come tool.\",\"teams\":\"Gli agenti rispondono nelle chat di Teams.\",\"voice\":\"Gli agenti parlano con l’utente in tempo reale.\",\"whatsapp\":\"Gli agenti rispondono su WhatsApp Business.\"},\"fallbackModels\":\"Modelli alternativi tentati in ordine se il modello primario non è disponibile.\",\"fieldMappingFallback\":\"Valore usato se il campo sorgente è vuoto o assente.\",\"fieldMappingSource\":\"Supporta percorsi annidati (es. metadata.urgency).\",\"fieldMappingTransformExtractDomainCompany\":\"Estrae il nome azienda dal dominio email (es. mario@acme.it → Acme). Ignora i provider gratuiti (gmail, outlook, ecc.).\",\"fieldMappingTransformJoinArray\":\"Unisce i valori di un array separandoli con virgola.\",\"fieldMappingTransformMapValues\":\"Sostituisce il valore usando la tabella di mappatura.\",\"fieldMappingTransformNone\":\"Copia il valore così com'è.\",\"fieldMappingTransformSplitFirstLast\":\"Divide il testo sugli spazi.\",\"fileUploadDisabledHint\":\"Il caricamento file non è abilitato per questo agente. Puoi abilitarlo nelle impostazioni dell'agente.\",\"fileUploadEnabled\":\"Permetti agli utenti di allegare file ai messaggi.\",\"freshnessBoost\":\"Applica un boost basandosi su quanto recentemente il documento è stato aggiornato.\",\"freshnessScale\":\"Scala temporale spinta (Giorni)\",\"freshnessScaleExplanation\":\"Il bonus si dimezza dopo {half} giorni e si azzera praticamente dopo {zero} giorni ({zero} mesi).\",\"freshnessScaleExplanationDays\":\"Un documento modificato oggi ottiene un bonus di +{weight}. Il bonus si dimezza a +{halfWeight} dopo {half} giorni e si azzera praticamente (+{zeroWeight}) dopo {zero} giorni.\",\"freshnessScaleExplanationMonths\":\"Un documento modificato oggi ottiene un bonus di +{weight}. Il bonus si dimezza a +{halfWeight} dopo {half} giorni e si azzera praticamente (+{zeroWeight}) dopo {zero} giorni (circa {months} mesi).\",\"freshnessScaleExplanationYears\":\"Il bonus si dimezza dopo {half} giorni e si azzera praticamente dopo {zero} giorni ({years} anni).\",\"freshnessScaleTooltip\":\"Il tempo di dimezzamento (half-life) del decadimento esponenziale. Un documento vecchio esattamente quanto questo valore riceverà il 50% del boost massimo. Più è basso, più i documenti vecchi perderanno rapidamente il boost.\",\"freshnessWeight\":\"Moltiplicatore del peso del boost di freschezza nella formula.\",\"freshnessWeightTooltip\":\"Bonus massimo aggiunto allo score per i documenti appena modificati. Un peso di 0.1 significa che un documento freschissimo otterrà un vantaggio di +0.10 sullo score. Questo vantaggio decadrà esponenzialmente col tempo fino a azzerarsi.\",\"gatewayCatalog\":\"I modelli messi a disposizione dalla piattaforma, con il prezzo per milione di token, la dimensione del contesto e le garanzie sulla riservatezza dei dati. Spegni quelli che la tua organizzazione non usa: escono dalla scelta, e un agente che ne usa ancora uno risponde con il modello predefinito.\",\"gatewayNotUsed\":\"Questa organizzazione non usa il gateway AI della piattaforma, quindi i suoi modelli non sono disponibili. Può riattivarlo l’operatore della piattaforma.\",\"gatewayOffDisconnected\":\"Se il suo endpoint non è acceso e con dei modelli, l’organizzazione è scollegata: nessun agente risponde.\",\"gatewayOffNoByok\":\"Anche i modelli propri (BYOK) sono spenti: l’amministratore non può né configurare un endpoint né accenderlo o spegnerlo, e nemmeno spostare l’embedding.\",\"gatewayOffStops\":\"Spento, niente di questa organizzazione passa più dal gateway, entro trenta secondi: i modelli del gateway smettono di rispondere, e con loro le utility interne che li usano; la ricerca web si ferma. La base di conoscenza, le risposte corrette, le memorie e l’elaborazione dei documenti continuano solo se l’embedding è sull’endpoint dell’organizzazione: se è sulla piattaforma, si fermano.\",\"gatewayOffTodo\":\"L’amministratore deve spostare sull’endpoint dell’organizzazione entrambi i modelli predefiniti, altrimenti non si creano agenti nuovi, e l’embedding (Modelli, sezione Embedding), altrimenti la base di conoscenza e le memorie restano ferme. L’inferenza non scala più il credito; i minuti di voce e l’OCR dei documenti sì.\",\"guaranteeAll\":\"{name}: garantita su tutti i provider.\",\"guaranteeNone\":\"{name}: non garantita.\",\"guaranteeSome\":\"{name}: garantita solo su alcuni provider, il gateway instrada di conseguenza.\",\"includeThoughts\":\"Invia i pensieri del modello al client insieme alla risposta.\",\"inputSchema\":\"JSON Schema (draft-07) dei parametri di input che l'LLM può fornire.\",\"integrationOAuthAdminConsent\":\"Potrebbe servire un amministratore Microsoft 365 della vostra organizzazione.\",\"integrationAppCredentialScope\":\"Con Sites.Read.All l'app può leggere ogni sito del tenant. Il connettore legge solo le cartelle che collegate.\",\"integrationAppCredentialSteps\":\"In Microsoft Entra ID: Registrazioni app, Nuova registrazione. Poi Autorizzazioni API, Microsoft Graph, Autorizzazioni applicazione, Sites.Read.All, e Concedi consenso amministratore. Poi Certificati e segreti, Nuovo segreto client (annotate la scadenza). Copiate qui l'ID directory (tenant), l'ID applicazione (client) e il valore del segreto.\",\"interactiveLogin\":\"Permette agli utenti anonimi di accedere dalla chat. L'external token resta sempre attivo.\",\"issuer\":\"L'URL dell'issuer del token JWT (iss).\",\"jwksUrl\":\"L'URL dell'endpoint JWKS per la verifica della firma JWT.\",\"loadDelay\":\"Millisecondi di attesa prima di iniettare il widget. Utile su pagine con loader AMD lenti (es. RequireJS).\",\"loaderStrategy\":{\"dynamic-import\":\"Usa import() all'interno di un <script> classico. Fallback per pagine dove gli script module sono bloccati o intercettati da loader legacy.\",\"inline-module\":\"Inietta un <script type=\\\"module\\\"> inline con un import statico. Bypassa RequireJS e altri loader AMD. Consigliata per la maggior parte dei siti.\",\"script-src\":\"Carica il bundle tramite <script type=\\\"module\\\" src=\\\"...\\\">. Usala su siti con Content Security Policy (CSP) restrittiva che blocca gli script inline.\"},\"mcpServerHealthCheckPath\":\"L'endpoint utilizzato per verificare lo stato del Server MCP (es: /api/health).\",\"mcpStatelessServer\":\"Forza il client a connettersi in modalità stateless.\",\"mmr\":\"Bilancia la rilevanza semantica e la diversità dei documenti nei risultati di ricerca per evitare contenuti ridondanti.\",\"mmrCandidatesLimit\":\"Numero massimo di chunk candidati pre-selezionati prima di applicare l'MMR.\",\"mmrCandidatesLimitTooltip\":\"Quanti risultati pre-selezionare dal database prima di filtrare e diversificare. Esempio: se impostato a 100, il sistema cercherà i 100 chunk più pertinenti e poi estrarrà tra questi quelli più diversi tra loro fino a raggiungere il limite finale per la chat.\",\"mmrDiversity\":\"Tradeoff tra rilevanza (0.0) e diversità (1.0).\",\"mmrDiversityTooltip\":\"Determina quanto spazio dare a informazioni diverse. Un valore vicino a 0 predilige i risultati più pertinenti anche se simili tra loro. Un valore vicino a 1 forza l'inserimento di risultati con dettagli e temi differenti, riducendo la ripetitività.\",\"modelContextWindow\":\"Finestra di contesto: {count}k token.\",\"modelDefaultNoneAvailable\":\"Nessun modello disponibile: attiva almeno un modello del tuo endpoint qui sotto.\",\"modelDefaultOutsideCatalog\":\"Questo modello non è tra quelli disponibili per la tua organizzazione: scegline un altro. Nel frattempo i nuovi agenti partono con il modello standard della piattaforma.\",\"modelDefaults\":\"Valgono per tutta l'organizzazione. Ogni agente può comunque usare un modello diverso, scelto nelle sue impostazioni.\",\"modelDisabledForOrganization\":\"Spento per questa organizzazione: gli agenti che lo usano ancora rispondono con il modello predefinito, e non si può scegliere per uno nuovo.\",\"modelEndpointBaseUrl\":\"L'indirizzo base dell'API compatibile OpenAI.\",\"modelEndpointHttp\":\"Con http la chiave viaggia senza cifratura: usalo solo se l'endpoint è raggiungibile esclusivamente dalla tua rete interna.\",\"modelEndpointHttpTitle\":\"Connessione non cifrata (http)\",\"modelEndpointKey\":\"Viene salvata cifrata e non viene mai mostrata.\",\"modelEndpointKeyStored\":\"Già salvata. Lascia il campo vuoto per non cambiarla.\",\"modelEndpointName\":\"Il nome con cui lo riconoscerai nella scelta dei modelli.\",\"modelEndpointOffWithEmbedding\":\"Endpoint spento: i suoi modelli non sono disponibili, gli agenti che li usano smettono di rispondere, e con lui si fermano la base di conoscenza, le memorie e i documenti, perché calcola i loro vettori. Riaccendilo per farli ripartire.\",\"modelEndpointOnWithoutGateway\":\"Endpoint acceso: i modelli che attivi sono gli unici che gli agenti possono usare, perché questa organizzazione non usa il gateway della piattaforma, e possono essere i predefiniti.\",\"modelNotOnEndpoint\":\"Non disponibile per questa organizzazione: il suo endpoint non ha più questo modello, quindi un agente che lo usa non risponde finché non passa a un altro modello.\",\"modelSourceEndpoint\":\"Gira su {name}, l’endpoint della tua organizzazione: lo fattura il tuo fornitore, e i costi che vedi qui sono stimati dal listino.\",\"modelSourceOff\":\"Non disponibile per questa organizzazione: la sorgente su cui gira è spenta, quindi un agente che lo usa non risponde finché non passa a un altro modello o la sorgente non viene riaccesa.\",\"modelSourcePlatform\":\"Gira sul gateway AI della piattaforma e si paga con il credito della tua organizzazione.\",\"ownEndpoint\":\"Usa i tuoi modelli accanto a quelli della piattaforma: collega un endpoint compatibile con le API OpenAI e la tua chiave. Gli agenti che usano i suoi modelli non consumano il credito.\",\"modelEndpointOn\":\"Endpoint acceso: i modelli che attivi sono a disposizione degli agenti accanto a quelli della piattaforma, e possono essere i predefiniti.\",\"modelEndpointOff\":\"Endpoint spento: i suoi modelli non sono disponibili, e gli agenti che li usano smettono di rispondere. Attiva qui sotto i modelli che ti servono, poi accendilo.\",\"addModelsRule\":\"Attiva i modelli che i tuoi agenti potranno usare. Il prezzo viene preso dal listino della piattaforma; se un modello non è in listino, ti chiederemo di indicarlo.\",\"modelPriceAsk\":\"Questo modello non è nel listino della piattaforma. Scegli un modello del catalogo con un costo simile, oppure inserisci i prezzi per milione di token.\",\"modelPriceUnknown\":\"Non è nel listino della piattaforma: indica un prezzo.\",\"modelGuaranteedOnSome\":\"Le garanzie che hai acceso valgono solo su alcuni provider di questo modello: il gateway instrada di conseguenza.\",\"modelIdByHand\":\"Il nome tecnico con cui l'endpoint identifica il modello.\",\"modelNotCompatible\":\"Non compatibile con i flag di riservatezza di questo agente.\",\"modelPriceFromListing\":\"Prezzo preso da {id} nel listino della piattaforma.\",\"modelPriceListing\":\"Listino della piattaforma, voce {id}, aggiornato il {date}.\",\"modelPriceManual\":\"Prezzo inserito a mano il {date}.\",\"modelPriceReference\":\"Stesso prezzo di {id}, aggiornato il {date}.\",\"modelReference\":\"Un modello del catalogo a cui questo assomiglia.\",\"modelRetired\":\"Non più disponibile sulla piattaforma: sposta su un altro modello gli agenti che lo usano.\",\"moveDocument\":\"Scegli la cartella di destinazione per «{name}».\",\"moveDocuments\":\"Scegli la cartella di destinazione per {n} documento. | Scegli la cartella di destinazione per {n} documenti.\",\"multipleChoiceAllowCustomAnswer\":\"Mostra un campo di testo libero sotto le opzioni per consentire all'utente di inserire una risposta personalizzata.\",\"multipleChoiceMaxOptions\":\"Numero massimo di opzioni che l'AI può generare (min. 2, max. 10).\",\"nameClaim\":\"Il claim JWT che contiene il nome dell'utente (default: name). Se manca, il sistema prova name, given_name e family_name, e lo stesso namespace del claim email.\",\"oauthCallbackUrl\":\"Configura questa URL come Callback URL (Redirect URI) nel provider OAuth.\",\"outputSchema\":\"JSON Schema (draft-07) della risposta attesa. Solo documentativo.\",\"passphrase\":\"Inserisci {passphrase} per confermare l'operazione\",\"platformSupported\":\"Resa nativa su WhatsApp e Teams\",\"privacyPolicyNotice\":\"Visibile del modulo di contatto.\",\"providerOrganizationId\":\"Per Microsoft si riferisce all'identificativo del tenant (tenant ID). Per gli altri inserire il dominio dell'e-mail (es. company.com).\",\"providerTimeoutMs\":\"Timeout in millisecondi prima di passare al provider successivo (min 1000, max 789000). Solo credenziali BYOK.\",\"reasoningDefault\":\"Valore predefinito della piattaforma, si applica finché non scegli un valore diverso.\",\"reasoningNotSupported\":\"Il reasoning non è supportato per il provider selezionato.\",\"sessionExpiresIn\":\"Durata della sessione widget in secondi (min 60). Se vuoto vale il default di 8 ore.\",\"showExtendedSteps\":\"Visualizza la timeline con il ragionamento e gli strumenti nella chat.\",\"smoothStream\":\"Uniforma lo streaming del testo creando un'esperienza di lettura più naturale.\",\"subAgentName\":\"Sono consentiti solo lettere, numeri, underscore (_) e trattini (-).\",\"teamsAccentColor\":\"Per impostazione predefinita usa il colore del tema dell'agente.\",\"teamsAppVersion\":\"Incrementala (es. 1.0.1) e reinstalla il pacchetto per applicare le modifiche al manifest, come i nuovi permessi, alle app già installate.\",\"tool\":{\"fetchTeamsChannelHistory\":\"Sui canali Teams, permette all'agente di leggere su richiesta la conversazione più ampia del canale. Richiede la reinstallazione dell'app Teams.\",\"geocode\":\"Converte nomi di luoghi in coordinate geografiche e viceversa.\",\"getWeather\":\"Recupera i dati meteo attuali e le previsioni per una località specifica.\",\"readDocumentFile\":\"Permette all'agente di leggere il file originale dei documenti PDF/DOCX dalla knowledge base. Utile per tabelle, grafici e contenuti visivi.\",\"requestGeolocation\":\"Richiede la posizione GPS dell'utente tramite il browser.\",\"retrieveRevisedAnswers\":\"Recupera le risposte verificate dagli amministratori e le usa come fonte primaria.\",\"runWorker\":\"Permette all'agente di avviare worker generici che ereditano i suoi tool per gestire sotto-attività indipendenti in parallelo.\",\"searchInKnowledgeBase\":\"Cerca nei documenti caricati nella knowledge base per fornire risposte contestuali.\",\"searchInUserFiles\":\"Cerca nei file che l'utente ha caricato personalmente in chat (i suoi file privati), separati dalla knowledge base dell'agente.\",\"showArtifact\":\"Mostra contenuti strutturati come testi formattati, codice o documenti.\",\"showCalendarEvent\":\"Mostra un evento calendario con opzioni per Google Calendar, Outlook e download .ics.\",\"showComparison\":\"Confronta da 2 a 4 elementi affiancati per facilitare la scelta.\",\"showContactForm\":\"Mostra un modulo di contatto per raccogliere i dati dell'utente.\",\"showDiagram\":\"Mostra un grafico o un diagramma (flusso, sequenza, classe, ER, stato).\",\"showEmail\":\"Compone un'email pronta da inviare dal client di posta dell'utente.\",\"showForm\":\"Permette di raccogliere input strutturati (testo, numeri, date, scelte) tramite form multi-step.\",\"showImageGallery\":\"Raccoglie le immagini in una galleria navigabile con zoom e lightbox.\",\"showLocation\":\"Mostra una mappa interattiva con segnaposto e indicazioni stradali.\",\"showMessage\":\"Compone un messaggio da inviare tramite WhatsApp, Telegram o SMS.\",\"showMultipleChoice\":\"Propone opzioni selezionabili per guidare il flusso della conversazione.\",\"showProductList\":\"Mostra un elenco di prodotti con immagini, descrizioni e link d'acquisto.\",\"showQrCode\":\"Genera un codice QR a partire da testo, URL o dati strutturati.\",\"showSources\":\"Mostra i riferimenti ai documenti della knowledge base utilizzati nella risposta.\",\"showSuggestedReply\":\"Suggerisce risposte cliccabili per proseguire la conversazione. Per averle dopo ogni risposta, chiedilo nelle istruzioni dell'agente.\",\"showVideo\":\"Riproduce video inline: file diretti (MP4/WebM) o link YouTube/Vimeo.\",\"showWeather\":\"Mostra un widget con le previsioni meteo direttamente nella chat.\",\"showWebPages\":\"Suggerisce link a pagine web pertinenti alla domanda dell'utente.\",\"useAllUserFiles\":\"Cerca in tutti i file dell'utente, anche quelli caricati su altri agenti, non solo in quelli di questo agente.\",\"useAllUserKb\":\"Legge le memorie che l'utente ha condiviso con tutti gli agenti di questa organizzazione, non solo con questo. La scrittura resta legata a questo agente.\",\"userMemory\":\"Permette all'agente di ricordare e richiamare informazioni che l'utente condivide tra le conversazioni (nome, preferenze, ecc.).\"},\"toolRequiresApproval\":\"Prima di eseguire, l'assistente attende l'approvazione in chat.\",\"apiToolSecretParameters\":\"Inviati a ogni chiamata, nella query string o nel body JSON, e mai mostrati al modello. Dopo il salvataggio il valore non si vede più: lascialo vuoto per tenerlo.\",\"apiToolSecretParametersNew\":\"Inviati a ogni chiamata, nella query string o nel body JSON, e mai mostrati al modello. Scrivi ogni valore: dopo il salvataggio non si vede più.\",\"apiToolSecretStored\":\"Salvato: lascialo vuoto per tenerlo\",\"apiToolCredentialInSchema\":\"Questi parametri sembrano credenziali, e li compila il modello: {names}. Spostali fra i parametri segreti e toglili dallo schema di input.\",\"apiToolCredentialBadge\":\"Un parametro che sembra una credenziale viene compilato dal modello\",\"apiToolSecretsOriginChanged\":\"L'URL punta a un altro host: riscrivi i valori dei parametri segreti, quelli salvati restano legati all'host precedente.\",\"apiToolSecretBodyMethod\":\"Una richiesta {method} non ha body\",\"toolWorkingSetMode\":{\"active\":\"Prima di ogni risposta un modello di valutazione (TypeSafe Jev) sceglie i server MCP, gli API Tools e i sotto-agenti che servono al messaggio, e l’agente vede solo quelli. Se gliene serve un altro, lo riattiva da solo. Ogni valutazione è addebitata all’organizzazione.\",\"off\":\"L’agente vede tutti i tool a ogni risposta.\",\"shadow\":\"Il modello di valutazione sceglie i tool che servono a ogni messaggio, ma l’agente li vede comunque tutti: la scelta viene solo registrata nel dettaglio del messaggio, per confrontarla con i tool usati davvero prima di attivarla. Ogni valutazione è addebitata all’organizzazione.\"},\"useColorsForAgentHeader\":\"Colora l'intestazione dell'agente in base al colore principale.\",\"userFeedbackComment\":\"L'utente ha lasciato un commento su questa risposta\",\"userFeedbackNegative\":\"L'utente ha valutato negativamente questa risposta\",\"userFeedbackPositive\":\"L'utente ha valutato positivamente questa risposta\",\"userFeedbackReaction\":\"L'utente ha reagito a questa risposta\",\"utilityModel\":\"Usato dietro le quinte per compiti come riformulare le domande degli utenti e aggiornare le memorie.\",\"voiceApprovalRefused\":\"Durante una chiamata queste azioni non partono: l'approvazione si dà a schermo e al telefono non c'è nessuno a cui chiederla, quindi l'agente le rifiuta e lo dice. Riguarda: {tools}.\",\"voiceCascadeTimeoutSeconds\":\"Quanto il fornitore aspetta noi prima di annullare il turno. Deve stare sopra al turno più lento dell'agente: knowledge base, tool e modelli lenti lo allungano.\",\"voiceEnabled\":\"Permette di parlare con questo agente. La risposta resta sua, con la sua knowledge base e i suoi strumenti.\",\"voiceFillerAfterSeconds\":\"Dice che sta lavorando quando la risposta tarda. Vuoto: quattro secondi.\",\"voiceFillerMessage\":\"Scrivila in modo che ogni continuazione suoni naturale. Vuoto: una frase predefinita nella lingua della voce.\",\"voiceFirstMessage\":\"Detta appena si apre la chiamata. Copre anche il primo turno, il più lento.\",\"voiceId\":\"Le voci clonate non sono in elenco: il fornitore non le ammette qui.\",\"voiceIgnoreBackgroundVoices\":\"Ascolta solo chi parla. Da tenere attivo dove il microfono sente la stanza.\",\"voiceLanguage\":\"Usata per riconoscere il parlato e per parlare.\",\"voiceMaxSessionSeconds\":\"Una chiamata si paga a minuto e si chiude da sola a questo limite.\",\"voiceRemaining\":\"Tempo che resta in questa chiamata\",\"voiceSlowAgentOnCall\":\"Una knowledge base grande o server MCP collegati possono far metterci diversi secondi all'agente, e in chiamata quei secondi sono silenzio: le due impostazioni qui sotto sono ciò che tiene compagnia a chi chiama mentre lavora. Se le chiamate sembrano lente, la risposta si accorcia anche con meno passi, un limite di retrieval più basso o un modello più rapido.\",\"voiceTurnEagerness\":\"Pronto risponde prima ma ti taglia sulle pause; paziente aspetta che tu finisca.\",\"voiceTurnTimeoutSeconds\":\"Quanto l’agente aspetta il chiamante zitto prima di riprendere la parola. Niente a che vedere con la sua velocità di risposta.\",\"webSearchEnabled\":\"Permetti all'agente di cercare informazioni sul web durante le conversazioni.\",\"webSearchNative\":\"Usa le funzionalità di ricerca web integrate di {provider}.\",\"webhookUrl\":\"Incolla questo URL nella configurazione del webhook / endpoint di messaggistica della piattaforma.\",\"welcomePopup\":\"Mostra un popup di benvenuto con il messaggio iniziale prima che la chat venga aperta.\",\"whatsappVerifyToken\":\"Incolla questo token nella configurazione webhook di Meta.\",\"zeroDataRetention\":\"Instrada le richieste solo verso provider con accordi ZDR. Restringe il pool di provider disponibili.\"}"),
1016
+ hint: /* @__PURE__ */ JSON.parse("{\"agentModel\":\"Pre-selezionato alla creazione di un nuovo agente.\",\"agentOnOwnEndpoint\":\"Questo agente gira sull’endpoint della tua organizzazione.\",\"allowedDomains\":\"Cerca solo all'interno di questi domini.\",\"approvalChannels\":\"Un tool può chiedere conferma all'utente prima di eseguire: espandi il tool per attivarla. Via API o in esecuzioni schedulate la chiamata viene rifiutata.\",\"audience\":\"L'audience attesa del token JWT (aud). Se vuota, l'audience non viene verificata.\",\"blockedDomains\":\"Escludi questi domini dai risultati.\",\"channel\":{\"app\":\"L'agente è accessibile tramite la pagina pubblica dedicata.\",\"frontoffice\":\"L'agente è visibile nel pannello Frontoffice.\",\"widget\":\"L'agente è incorporabile nei siti web tramite embed script.\"},\"channelAppDisabled\":\"Il canale App è disabilitato: il link diretto e l'iframe non funzioneranno.\",\"channelWidgetDisabled\":\"Il canale Widget è disabilitato: il codice embed e il loader non funzioneranno.\",\"costSourceEndpoint\":\"I modelli sull’endpoint della tua organizzazione: li fattura il tuo fornitore, qui il costo è una stima a prezzi di listino.\",\"customCss\":\"CSS iniettato nello shadow DOM del widget. Permette di personalizzare l'interfaccia della chat dall'esterno.\",\"disallowPromptTraining\":\"Instrada le richieste solo verso provider che non usano i dati per addestrare i modelli AI.\",\"dismissableNotice\":\"Verrà nascosto dopo il primo messaggio.\",\"documentFolderManaged\":\"Cartella sincronizzata da {provider}: il contenuto si modifica alla sorgente.\",\"documentRefresh\":\"Rilegge la pagina alla scadenza e rigenera solo ciò che è cambiato.\",\"documentRefreshTriggerOff\":\"Questa pagina si aggiorna da sola, e salvando un testo vostro si spegne.\",\"documentSelectionHasManaged\":\"La selezione contiene documenti che arrivano da una sorgente collegata e non si possono modificare a mano.\",\"documentSourceInterval\":\"Ogni quanto la cartella viene riletta. I file invariati non vengono riconvertiti.\",\"documentSourceName\":\"Il nome con cui la cartella compare qui. Quello remoto non cambia.\",\"emailClaim\":\"Il claim JWT che contiene l'email dell'utente (default: email).\",\"embedCode\":\"Copia e incolla questo codice per incorporare l'agente nel tuo sito web.\",\"embedding\":\"I vettori della base di conoscenza, dei file degli utenti e delle memorie. Si calcolano sul gateway AI della piattaforma, oppure sul tuo endpoint con uno dei due modelli ammessi.\",\"embeddingActivation\":\"Prima di salvare, l’endpoint calcola il vettore di una frase di prova, che viene confrontato con quello del modello: un modello diverso viene rifiutato. Passare a un altro modello ricalcola la base di conoscenza e le memorie, e finché non ha finito le ricerche trovano solo ciò che è già nel modello nuovo.\",\"embeddingEndpointModel\":\"L’id con cui il tuo endpoint serve il modello\",\"embeddingEndpointOff\":\"Accendi l’endpoint per calcolarci i vettori\",\"embeddingFamily\":\"Fra quelli che il tuo endpoint serve\",\"embeddingFamilyUnknown\":\"L’endpoint non lo dichiara: lo verifica il salvataggio\",\"embeddingModelsServed\":\"Il tuo endpoint serve anche questi. Non possono rispondere a un agente: quello con cui si calcolano i vettori si sceglie nella sezione Embedding.\",\"embeddingNotConfigured\":\"La base di conoscenza, le risposte corrette, le memorie e l’elaborazione dei documenti sono ferme, perché nessuno calcola i loro vettori. Attiva un modello di embedding sul tuo endpoint per farle ripartire.\",\"embeddingReindexing\":\"Finché la reindicizzazione non finisce, le ricerche nella base di conoscenza e nelle memorie trovano solo ciò che è già nel modello nuovo: risultati parziali, mai sbagliati. Non serve fare niente, e se si interrompe riparte da dove era arrivata.\",\"embeddingStopped\":\"L’endpoint che calcola i vettori è spento: la base di conoscenza, le risposte corrette, le memorie e l’elaborazione dei documenti sono ferme finché non lo riaccendi.\",\"embeddingWithoutEndpoint\":\"I vettori della base di conoscenza, dei file degli utenti e delle memorie si calcolano sul gateway AI della piattaforma. Collega il tuo endpoint per calcolarli lì.\",\"embedIframe\":\"Incorpora l'interfaccia della chat direttamente con un iframe.\",\"embedPreview\":\"L'agente sarà accessibile al seguente URL.\",\"embeddingWithoutEndpointOrGateway\":\"I vettori della base di conoscenza, dei file degli utenti e delle memorie non si calcolano: questa organizzazione non usa il gateway AI della piattaforma. Collega il tuo endpoint per calcolarli lì.\",\"embeddingWithoutGateway\":\"I vettori della base di conoscenza, dei file degli utenti e delle memorie. Questa organizzazione non usa il gateway AI della piattaforma, quindi si calcolano solo sul tuo endpoint, con uno dei due modelli ammessi.\",\"externalContextSchema\":\"Definisci quali dati contestuali il sito ospitante può inviare all'agente.\",\"externalContextSchemaToggle\":\"Abilita la ricezione di dati contestuali dal sito ospitante.\",\"feature\":{\"apiTools\":\"Gli agenti chiamano come tool le API dell’organizzazione.\",\"byok\":\"L’organizzazione collega un suo endpoint compatibile OpenAI e ne usa i modelli.\",\"endpoints\":\"Gli agenti rispondono via REST ad altri sistemi.\",\"fileUpload\":\"Gli utenti allegano file ai messaggi in chat.\",\"gateway\":\"I modelli del gateway AI, e con loro l’embedding della piattaforma, le utility e l’AI dei documenti che li usano.\",\"integrations\":\"Collegamenti a CRM e a sorgenti di documenti come SharePoint.\",\"mcpServers\":\"Gli agenti usano i tool di server MCP esterni.\",\"subAgents\":\"Un agente ne chiama un altro come tool.\",\"teams\":\"Gli agenti rispondono nelle chat di Teams.\",\"voice\":\"Gli agenti parlano con l’utente in tempo reale.\",\"whatsapp\":\"Gli agenti rispondono su WhatsApp Business.\"},\"fallbackModels\":\"Modelli alternativi tentati in ordine se il modello primario non è disponibile.\",\"fieldMappingFallback\":\"Valore usato se il campo sorgente è vuoto o assente.\",\"fieldMappingSource\":\"Supporta percorsi annidati (es. metadata.urgency).\",\"fieldMappingTransformExtractDomainCompany\":\"Estrae il nome azienda dal dominio email (es. mario@acme.it → Acme). Ignora i provider gratuiti (gmail, outlook, ecc.).\",\"fieldMappingTransformJoinArray\":\"Unisce i valori di un array separandoli con virgola.\",\"fieldMappingTransformMapValues\":\"Sostituisce il valore usando la tabella di mappatura.\",\"fieldMappingTransformNone\":\"Copia il valore così com'è.\",\"fieldMappingTransformSplitFirstLast\":\"Divide il testo sugli spazi.\",\"fileUploadDisabledHint\":\"Il caricamento file non è abilitato per questo agente. Puoi abilitarlo nelle impostazioni dell'agente.\",\"fileUploadEnabled\":\"Permetti agli utenti di allegare file ai messaggi.\",\"freshnessBoost\":\"Applica un boost basandosi su quanto recentemente il documento è stato aggiornato.\",\"freshnessScale\":\"Scala temporale spinta (Giorni)\",\"freshnessScaleExplanation\":\"Il bonus si dimezza dopo {half} giorni e si azzera praticamente dopo {zero} giorni ({zero} mesi).\",\"freshnessScaleExplanationDays\":\"Un documento modificato oggi ottiene un bonus di +{weight}. Il bonus si dimezza a +{halfWeight} dopo {half} giorni e si azzera praticamente (+{zeroWeight}) dopo {zero} giorni.\",\"freshnessScaleExplanationMonths\":\"Un documento modificato oggi ottiene un bonus di +{weight}. Il bonus si dimezza a +{halfWeight} dopo {half} giorni e si azzera praticamente (+{zeroWeight}) dopo {zero} giorni (circa {months} mesi).\",\"freshnessScaleExplanationYears\":\"Il bonus si dimezza dopo {half} giorni e si azzera praticamente dopo {zero} giorni ({years} anni).\",\"freshnessScaleTooltip\":\"Il tempo di dimezzamento (half-life) del decadimento esponenziale. Un documento vecchio esattamente quanto questo valore riceverà il 50% del boost massimo. Più è basso, più i documenti vecchi perderanno rapidamente il boost.\",\"freshnessWeight\":\"Moltiplicatore del peso del boost di freschezza nella formula.\",\"freshnessWeightTooltip\":\"Bonus massimo aggiunto allo score per i documenti appena modificati. Un peso di 0.1 significa che un documento freschissimo otterrà un vantaggio di +0.10 sullo score. Questo vantaggio decadrà esponenzialmente col tempo fino a azzerarsi.\",\"gatewayCatalog\":\"I modelli messi a disposizione dalla piattaforma, con il prezzo per milione di token, la dimensione del contesto e le garanzie sulla riservatezza dei dati. Spegni quelli che la tua organizzazione non usa: escono dalla scelta, e un agente che ne usa ancora uno risponde con il modello predefinito.\",\"gatewayNotUsed\":\"Questa organizzazione non usa il gateway AI della piattaforma, quindi i suoi modelli non sono disponibili. Può riattivarlo l’operatore della piattaforma.\",\"gatewayOffDisconnected\":\"Se il suo endpoint non è acceso e con dei modelli, l’organizzazione è scollegata: nessun agente risponde.\",\"gatewayOffNoByok\":\"Anche i modelli propri (BYOK) sono spenti: l’amministratore non può né configurare un endpoint né accenderlo o spegnerlo, e nemmeno spostare l’embedding.\",\"gatewayOffStops\":\"Spento, niente di questa organizzazione passa più dal gateway, entro trenta secondi: i modelli del gateway smettono di rispondere, e con loro le utility interne che li usano; la ricerca web si ferma. La base di conoscenza, le risposte corrette, le memorie e l’elaborazione dei documenti continuano solo se l’embedding è sull’endpoint dell’organizzazione: se è sulla piattaforma, si fermano.\",\"gatewayOffTodo\":\"L’amministratore deve spostare sull’endpoint dell’organizzazione entrambi i modelli predefiniti, altrimenti non si creano agenti nuovi, e l’embedding (Modelli, sezione Embedding), altrimenti la base di conoscenza e le memorie restano ferme. L’inferenza non scala più il credito; i minuti di voce e l’OCR dei documenti sì.\",\"guaranteeAll\":\"{name}: garantita su tutti i provider.\",\"guaranteeNone\":\"{name}: non garantita.\",\"guaranteeSome\":\"{name}: garantita solo su alcuni provider, il gateway instrada di conseguenza.\",\"includeThoughts\":\"Invia i pensieri del modello al client insieme alla risposta.\",\"inputSchema\":\"JSON Schema (draft-07) dei parametri di input che l'LLM può fornire.\",\"integrationOAuthAdminConsent\":\"Potrebbe servire un amministratore Microsoft 365 della vostra organizzazione.\",\"integrationAppCredentialScope\":\"Con Sites.Read.All l'app può leggere ogni sito del tenant. Il connettore legge solo le cartelle che collegate.\",\"integrationAppCredentialSteps\":\"In Microsoft Entra ID: Registrazioni app, Nuova registrazione. Poi Autorizzazioni API, Microsoft Graph, Autorizzazioni applicazione, Sites.Read.All, e Concedi consenso amministratore. Poi Certificati e segreti, Nuovo segreto client (annotate la scadenza). Copiate qui l'ID directory (tenant), l'ID applicazione (client) e il valore del segreto.\",\"interactiveLogin\":\"Permette agli utenti anonimi di accedere dalla chat. L'external token resta sempre attivo.\",\"issuer\":\"L'URL dell'issuer del token JWT (iss).\",\"jwksUrl\":\"L'URL dell'endpoint JWKS per la verifica della firma JWT.\",\"loadDelay\":\"Millisecondi di attesa prima di iniettare il widget. Utile su pagine con loader AMD lenti (es. RequireJS).\",\"loaderStrategy\":{\"dynamic-import\":\"Usa import() all'interno di un <script> classico. Fallback per pagine dove gli script module sono bloccati o intercettati da loader legacy.\",\"inline-module\":\"Inietta un <script type=\\\"module\\\"> inline con un import statico. Bypassa RequireJS e altri loader AMD. Consigliata per la maggior parte dei siti.\",\"script-src\":\"Carica il bundle tramite <script type=\\\"module\\\" src=\\\"...\\\">. Usala su siti con Content Security Policy (CSP) restrittiva che blocca gli script inline.\"},\"mcpServerHealthCheckPath\":\"L'endpoint utilizzato per verificare lo stato del Server MCP (es: /api/health).\",\"mcpStatelessServer\":\"Forza il client a connettersi in modalità stateless.\",\"mmr\":\"Bilancia la rilevanza semantica e la diversità dei documenti nei risultati di ricerca per evitare contenuti ridondanti.\",\"mmrCandidatesLimit\":\"Numero massimo di chunk candidati pre-selezionati prima di applicare l'MMR.\",\"mmrCandidatesLimitTooltip\":\"Quanti risultati pre-selezionare dal database prima di filtrare e diversificare. Esempio: se impostato a 100, il sistema cercherà i 100 chunk più pertinenti e poi estrarrà tra questi quelli più diversi tra loro fino a raggiungere il limite finale per la chat.\",\"mmrDiversity\":\"Tradeoff tra rilevanza (0.0) e diversità (1.0).\",\"mmrDiversityTooltip\":\"Determina quanto spazio dare a informazioni diverse. Un valore vicino a 0 predilige i risultati più pertinenti anche se simili tra loro. Un valore vicino a 1 forza l'inserimento di risultati con dettagli e temi differenti, riducendo la ripetitività.\",\"modelContextWindow\":\"Finestra di contesto: {count}k token.\",\"modelDefaultNoneAvailable\":\"Nessun modello disponibile: attiva almeno un modello del tuo endpoint qui sotto.\",\"modelDefaultOutsideCatalog\":\"Questo modello non è tra quelli disponibili per la tua organizzazione: scegline un altro. Nel frattempo i nuovi agenti partono con il modello standard della piattaforma.\",\"modelDefaults\":\"Valgono per tutta l'organizzazione. Ogni agente può comunque usare un modello diverso, scelto nelle sue impostazioni.\",\"modelDisabledForOrganization\":\"Spento per questa organizzazione: gli agenti che lo usano ancora rispondono con il modello predefinito, e non si può scegliere per uno nuovo.\",\"modelEndpointBaseUrl\":\"L'indirizzo base dell'API compatibile OpenAI.\",\"modelEndpointHttp\":\"Con http la chiave viaggia senza cifratura: usalo solo se l'endpoint è raggiungibile esclusivamente dalla tua rete interna.\",\"modelEndpointHttpTitle\":\"Connessione non cifrata (http)\",\"modelEndpointKey\":\"Viene salvata cifrata e non viene mai mostrata.\",\"modelEndpointKeyStored\":\"Già salvata. Lascia il campo vuoto per non cambiarla.\",\"modelEndpointName\":\"Il nome con cui lo riconoscerai nella scelta dei modelli.\",\"modelEndpointOffWithEmbedding\":\"Endpoint spento: i suoi modelli non sono disponibili, gli agenti che li usano smettono di rispondere, e con lui si fermano la base di conoscenza, le memorie e i documenti, perché calcola i loro vettori. Riaccendilo per farli ripartire.\",\"modelEndpointOnWithoutGateway\":\"Endpoint acceso: i modelli che attivi sono gli unici che gli agenti possono usare, perché questa organizzazione non usa il gateway della piattaforma, e possono essere i predefiniti.\",\"modelNotOnEndpoint\":\"Non disponibile per questa organizzazione: il suo endpoint non ha più questo modello, quindi un agente che lo usa non risponde finché non passa a un altro modello.\",\"modelSourceEndpoint\":\"Gira su {name}, l’endpoint della tua organizzazione: lo fattura il tuo fornitore, e i costi che vedi qui sono stimati dal listino.\",\"modelSourceOff\":\"Non disponibile per questa organizzazione: la sorgente su cui gira è spenta, quindi un agente che lo usa non risponde finché non passa a un altro modello o la sorgente non viene riaccesa.\",\"modelSourcePlatform\":\"Gira sul gateway AI della piattaforma e si paga con il credito della tua organizzazione.\",\"ownEndpoint\":\"Usa i tuoi modelli accanto a quelli della piattaforma: collega un endpoint compatibile con le API OpenAI e la tua chiave. Gli agenti che usano i suoi modelli non consumano il credito.\",\"modelEndpointOn\":\"Endpoint acceso: i modelli che attivi sono a disposizione degli agenti accanto a quelli della piattaforma, e possono essere i predefiniti.\",\"modelEndpointOff\":\"Endpoint spento: i suoi modelli non sono disponibili, e gli agenti che li usano smettono di rispondere. Attiva qui sotto i modelli che ti servono, poi accendilo.\",\"addModelsRule\":\"Attiva i modelli che i tuoi agenti potranno usare. Il prezzo viene preso dal listino della piattaforma; se un modello non è in listino, ti chiederemo di indicarlo.\",\"modelPriceAsk\":\"Questo modello non è nel listino della piattaforma. Scegli un modello del catalogo con un costo simile, oppure inserisci i prezzi per milione di token.\",\"modelPriceUnknown\":\"Non è nel listino della piattaforma: indica un prezzo.\",\"modelGuaranteedOnSome\":\"Le garanzie che hai acceso valgono solo su alcuni provider di questo modello: il gateway instrada di conseguenza.\",\"modelIdByHand\":\"Il nome tecnico con cui l'endpoint identifica il modello.\",\"modelNotCompatible\":\"Non compatibile con i flag di riservatezza di questo agente.\",\"modelPriceFromListing\":\"Prezzo preso da {id} nel listino della piattaforma.\",\"modelPriceListing\":\"Listino della piattaforma, voce {id}, aggiornato il {date}.\",\"modelPriceManual\":\"Prezzo inserito a mano il {date}.\",\"modelPriceReference\":\"Stesso prezzo di {id}, aggiornato il {date}.\",\"modelReference\":\"Un modello del catalogo a cui questo assomiglia.\",\"modelRetired\":\"Non più disponibile sulla piattaforma: sposta su un altro modello gli agenti che lo usano.\",\"moveDocument\":\"Scegli la cartella di destinazione per «{name}».\",\"moveDocuments\":\"Scegli la cartella di destinazione per {n} documento. | Scegli la cartella di destinazione per {n} documenti.\",\"multipleChoiceAllowCustomAnswer\":\"Mostra un campo di testo libero sotto le opzioni per consentire all'utente di inserire una risposta personalizzata.\",\"multipleChoiceMaxOptions\":\"Numero massimo di opzioni che l'AI può generare (min. 2, max. 10).\",\"nameClaim\":\"Il claim JWT che contiene il nome dell'utente (default: name). Se manca, il sistema prova name, given_name e family_name, e lo stesso namespace del claim email.\",\"oauthCallbackUrl\":\"Configura questa URL come Callback URL (Redirect URI) nel provider OAuth.\",\"outputSchema\":\"JSON Schema (draft-07) della risposta attesa. Solo documentativo.\",\"passphrase\":\"Inserisci {passphrase} per confermare l'operazione\",\"platformSupported\":\"Resa nativa su WhatsApp e Teams\",\"privacyPolicyNotice\":\"Visibile del modulo di contatto.\",\"providerOrganizationId\":\"Per Microsoft si riferisce all'identificativo del tenant (tenant ID). Per gli altri inserire il dominio dell'e-mail (es. company.com).\",\"providerTimeoutMs\":\"Timeout in millisecondi prima di passare al provider successivo (min 1000, max 789000). Solo credenziali BYOK.\",\"reasoningDefault\":\"Valore predefinito della piattaforma, si applica finché non scegli un valore diverso.\",\"reasoningNotSupported\":\"Il reasoning non è supportato per il provider selezionato.\",\"sessionExpiresIn\":\"Durata della sessione widget in secondi (min 60). Se vuoto vale il default di 8 ore.\",\"showExtendedSteps\":\"Visualizza la timeline con il ragionamento e gli strumenti nella chat.\",\"smoothStream\":\"Uniforma lo streaming del testo creando un'esperienza di lettura più naturale.\",\"subAgentName\":\"Sono consentiti solo lettere, numeri, underscore (_) e trattini (-).\",\"teamsAccentColor\":\"Per impostazione predefinita usa il colore del tema dell'agente.\",\"teamsAppVersion\":\"Incrementala (es. 1.0.1) e reinstalla il pacchetto per applicare le modifiche al manifest, come i nuovi permessi, alle app già installate.\",\"tool\":{\"fetchTeamsChannelHistory\":\"Sui canali Teams, permette all'agente di leggere su richiesta la conversazione più ampia del canale. Richiede la reinstallazione dell'app Teams.\",\"geocode\":\"Converte nomi di luoghi in coordinate geografiche e viceversa.\",\"getWeather\":\"Recupera i dati meteo attuali e le previsioni per una località specifica.\",\"readDocumentFile\":\"Permette all'agente di leggere il file originale dei documenti PDF/DOCX dalla knowledge base. Utile per tabelle, grafici e contenuti visivi.\",\"requestGeolocation\":\"Richiede la posizione GPS dell'utente tramite il browser.\",\"retrieveRevisedAnswers\":\"Recupera le risposte verificate dagli amministratori e le usa come fonte primaria.\",\"runWorker\":\"Permette all'agente di avviare worker generici che ereditano i suoi tool per gestire sotto-attività indipendenti in parallelo.\",\"searchInKnowledgeBase\":\"Cerca nei documenti caricati nella knowledge base per fornire risposte contestuali.\",\"searchInUserFiles\":\"Cerca nei file che l'utente ha caricato personalmente in chat (i suoi file privati), separati dalla knowledge base dell'agente.\",\"showArtifact\":\"Mostra contenuti strutturati come testi formattati, codice o documenti.\",\"showCalendarEvent\":\"Mostra un evento calendario con opzioni per Google Calendar, Outlook e download .ics.\",\"showComparison\":\"Confronta da 2 a 4 elementi affiancati per facilitare la scelta.\",\"showContactForm\":\"Mostra un modulo di contatto per raccogliere i dati dell'utente.\",\"showDiagram\":\"Mostra un grafico o un diagramma (flusso, sequenza, classe, ER, stato).\",\"showEmail\":\"Compone un'email pronta da inviare dal client di posta dell'utente.\",\"showForm\":\"Permette di raccogliere input strutturati (testo, numeri, date, scelte) tramite form multi-step.\",\"showImageGallery\":\"Raccoglie le immagini in una galleria navigabile con zoom e lightbox.\",\"showLocation\":\"Mostra una mappa interattiva con segnaposto e indicazioni stradali.\",\"showMessage\":\"Compone un messaggio da inviare tramite WhatsApp, Telegram o SMS.\",\"showMultipleChoice\":\"Propone opzioni selezionabili per guidare il flusso della conversazione.\",\"showProductList\":\"Mostra un elenco di prodotti con immagini, descrizioni e link d'acquisto.\",\"showQrCode\":\"Genera un codice QR a partire da testo, URL o dati strutturati.\",\"showSources\":\"Mostra i riferimenti ai documenti della knowledge base utilizzati nella risposta.\",\"showSuggestedReply\":\"Suggerisce risposte cliccabili per proseguire la conversazione. Per averle dopo ogni risposta, chiedilo nelle istruzioni dell'agente.\",\"showVideo\":\"Riproduce video inline: file diretti (MP4/WebM) o link YouTube/Vimeo.\",\"showWeather\":\"Mostra un widget con le previsioni meteo direttamente nella chat.\",\"showWebPages\":\"Suggerisce link a pagine web pertinenti alla domanda dell'utente.\",\"useAllUserFiles\":\"Cerca in tutti i file dell'utente, anche quelli caricati su altri agenti, non solo in quelli di questo agente.\",\"useAllUserKb\":\"Legge le memorie che l'utente ha condiviso con tutti gli agenti di questa organizzazione, non solo con questo. La scrittura resta legata a questo agente.\",\"userMemory\":\"Permette all'agente di ricordare e richiamare informazioni che l'utente condivide tra le conversazioni (nome, preferenze, ecc.).\"},\"toolRequiresApproval\":\"Prima di eseguire, l'assistente attende l'approvazione in chat.\",\"apiToolSecretParameters\":\"Inviati a ogni chiamata, nella query string o nel body JSON, e mai mostrati al modello. Dopo il salvataggio il valore non si vede più: lascialo vuoto per tenerlo.\",\"apiToolSecretParametersNew\":\"Inviati a ogni chiamata, nella query string o nel body JSON, e mai mostrati al modello. Scrivi ogni valore: dopo il salvataggio non si vede più.\",\"apiToolSecretStored\":\"Salvato: lascialo vuoto per tenerlo\",\"apiToolCredentialInSchema\":\"Questi parametri sembrano credenziali, e li compila il modello: {names}. Spostali fra i parametri segreti e toglili dallo schema di input.\",\"apiToolCredentialBadge\":\"Un parametro che sembra una credenziale viene compilato dal modello\",\"apiToolSecretsOriginChanged\":\"L'URL punta a un altro host: riscrivi i valori dei parametri segreti, quelli salvati restano legati all'host precedente.\",\"apiToolSecretBodyMethod\":\"Una richiesta {method} non ha body\",\"toolWorkingSetMode\":{\"active\":\"Prima di ogni risposta un modello di valutazione (TypeSafe Jev) sceglie i server MCP, gli API Tools e i sotto-agenti che servono al messaggio, e l’agente vede solo quelli. Se gliene serve un altro, lo riattiva da solo. Ogni valutazione è addebitata all’organizzazione.\",\"off\":\"L’agente vede tutti i tool a ogni risposta.\",\"shadow\":\"Il modello di valutazione sceglie i tool che servono a ogni messaggio, ma l’agente li vede comunque tutti: la scelta viene solo registrata nel dettaglio del messaggio, per confrontarla con i tool usati davvero prima di attivarla. Ogni valutazione è addebitata all’organizzazione.\"},\"useColorsForAgentHeader\":\"Colora l'intestazione dell'agente in base al colore principale.\",\"userFeedbackComment\":\"L'utente ha lasciato un commento su questa risposta\",\"userFeedbackNegative\":\"L'utente ha valutato negativamente questa risposta\",\"userFeedbackPositive\":\"L'utente ha valutato positivamente questa risposta\",\"userFeedbackReaction\":\"L'utente ha reagito a questa risposta\",\"utilityModel\":\"Usato dietro le quinte per compiti come riformulare le domande degli utenti e aggiornare le memorie.\",\"voiceApprovalRefused\":\"Durante una chiamata queste azioni non partono: l'approvazione si dà a schermo e al telefono non c'è nessuno a cui chiederla, quindi l'agente le rifiuta e lo dice. Riguarda: {tools}.\",\"voiceCascadeTimeoutSeconds\":\"Quanto il fornitore aspetta noi prima di annullare il turno. Deve stare sopra al turno più lento dell'agente: knowledge base, tool e modelli lenti lo allungano.\",\"voiceEnabled\":\"Permette di parlare con questo agente. La risposta resta sua, con la sua knowledge base e i suoi strumenti.\",\"voiceFillerAfterSeconds\":\"Dice che sta lavorando quando la risposta tarda. Vuoto: quattro secondi.\",\"voiceFillerMessage\":\"Scrivila in modo che ogni continuazione suoni naturale. Vuoto: una frase predefinita nella lingua della voce.\",\"voiceFirstMessage\":\"Detta appena si apre la chiamata. Copre anche il primo turno, il più lento.\",\"voiceId\":\"Le voci clonate non sono in elenco: il fornitore non le ammette qui.\",\"voiceIgnoreBackgroundVoices\":\"Ascolta solo chi parla. Da tenere attivo dove il microfono sente la stanza.\",\"voiceLanguage\":\"Usata per riconoscere il parlato e per parlare.\",\"voiceMaxSessionSeconds\":\"Una chiamata si paga a minuto e si chiude da sola a questo limite.\",\"voiceRemaining\":\"Tempo che resta in questa chiamata\",\"voiceSlowAgentOnCall\":\"Una knowledge base grande o server MCP collegati possono far metterci diversi secondi all'agente, e in chiamata quei secondi sono silenzio: le due impostazioni qui sotto sono ciò che tiene compagnia a chi chiama mentre lavora. Se le chiamate sembrano lente, la risposta si accorcia anche con meno passi, un limite di retrieval più basso o un modello più rapido.\",\"voiceTurnEagerness\":\"Pronto risponde prima ma ti taglia sulle pause; paziente aspetta che tu finisca.\",\"voiceTurnTimeoutSeconds\":\"Quanto l’agente aspetta il chiamante zitto prima di riprendere la parola. Niente a che vedere con la sua velocità di risposta.\",\"webSearchEnabled\":\"Permetti all'agente di cercare informazioni sul web durante le conversazioni.\",\"webSearchNative\":\"Usa le funzionalità di ricerca web integrate di {provider}.\",\"webhookUrl\":\"Incolla questo URL nella configurazione del webhook / endpoint di messaggistica della piattaforma.\",\"welcomePopup\":\"Mostra un popup di benvenuto con il messaggio iniziale prima che la chat venga aperta.\",\"whatsappVerifyToken\":\"Incolla questo token nella configurazione webhook di Meta.\",\"zeroDataRetention\":\"Instrada le richieste solo verso provider con accordi ZDR. Restringe il pool di provider disponibili.\",\"webSourceUnselected\":\"Le pagine non selezionate arriveranno con i prossimi controlli della sorgente.\",\"documentFolderWebSource\":\"Cartella di un sito web: le pagine nuove arrivano da sole e restano modificabili.\"}"),
988
1017
  integrationProvider: {
989
1018
  hubspot: "HubSpot",
990
1019
  salesforce: "Salesforce",
991
- sharepoint: "SharePoint"
1020
+ sharepoint: "SharePoint",
1021
+ web: "Sito web"
992
1022
  },
993
1023
  integrationProviderDescription: {
994
1024
  hubspot: "Sincronizza i contatti con HubSpot CRM.",
@@ -1012,7 +1042,7 @@ var Pn = {
1012
1042
  expired: "Scaduto",
1013
1043
  pending: "In attesa"
1014
1044
  },
1015
- label: /* @__PURE__ */ JSON.parse("{\"AI\":\"AI\",\"acceptInvitationAndCreateAccount\":\"Accetta l'invito e crea il tuo account\",\"accountingCredit\":\"Saldo contabile\",\"actions\":\"Azioni\",\"active\":\"Attiva\",\"activeSessions\":\"Sessioni attive\",\"actualCost\":\"Costo reale\",\"addApiTool\":\"Aggiungi API Tool\",\"addIntegration\":\"Aggiungi integrazione\",\"additionalMetadata\":\"Metadati aggiuntivi\",\"admin\":\"Amministratore\",\"advancedOptions\":\"Opzioni avanzate\",\"agent\":\"Agente\",\"agentModel\":\"Modello di default\",\"agentResponse\":\"Risposta agente\",\"agentTree\":\"Albero Agente\",\"agents\":\"Agenti\",\"agentsUsed\":\"Agenti utilizzati\",\"aiDescription\":\"Generato con AI\",\"aiDescriptionModel\":\"Modello AI\",\"aiDescriptionPrompt\":\"Prompt personalizzato\",\"allAgents\":\"Tutti gli agenti\",\"allChannels\":\"Tutti i canali\",\"allowedDomains\":\"Domini consentiti\",\"analysis\":\"Analisi\",\"analyzed\":\"Analisi\",\"anonymized\":\"Anonimizzata\",\"anonymous\":\"Anonimo\",\"answer\":\"Risposta\",\"answeringOnTheCall\":\"Sto rispondendo…\",\"apiKey\":\"API Key\",\"apiKeys\":\"API Key\",\"appearance\":\"Aspetto\",\"arrayOfObjects\":\"Array di oggetti\",\"assistantMessage\":\"Risposta assistente\",\"attachmentsNotImported\":\"Allegati non importati\",\"attempts\":\"Tentativi\",\"attention\":\"Attenzione\",\"audience\":\"Audience\",\"authentication\":\"Autenticazione\",\"auto\":\"Auto\",\"autoDetected\":\"Rilevati automaticamente\",\"autoProvisioning\":\"Auto provisioning\",\"autoProvisioningDescription\":\"Gli utenti che si autenticano tramite questi provider di identità o domini verranno automaticamente aggiunti alla tua organizzazione con il ruolo predefinito.\",\"autoRefreshError\":\"Errore\",\"autoRefreshOff\":\"In pausa\",\"autoRefreshOn\":\"Live\",\"autoRefreshStoppedErrors\":\"Aggiornamento automatico interrotto dopo errori ripetuti.\",\"autoRefreshStoppedUnavailable\":\"Aggiornamento automatico interrotto: questo contenuto non è più accessibile.\",\"autoRefreshWarning\":\"Attenzione\",\"availableCredit\":\"Saldo disponibile\",\"averageLine\":\"Media\",\"avgChatsPerUser\":\"Chat per user\",\"avgMessagesPerChat\":\"Messaggi per chat\",\"avgTime\":\"Tempo medio\",\"banned\":\"Bannato\",\"baseUrl\":\"URL di base\",\"black\":\"Nero\",\"blocked\":\"Bloccato\",\"blockedDomains\":\"Domini bloccati\",\"blockedReasons\":\"Motivi di blocco\",\"body\":\"Testo\",\"botName\":\"Nome bot\",\"breadcrumbs\":\"Percorso di navigazione\",\"browserEngine\":\"Browser engine\",\"browsers\":\"Browser\",\"budgetTokens\":\"Budget token\",\"byChannel\":\"Per canale\",\"cached\":\"dalla cache\",\"calendarEvent\":\"Evento\",\"changePassword\":\"Cambia Password\",\"channel\":\"Canale\",\"channels\":\"Canali\",\"chat\":\"Chat\",\"chatCreatedAgo\":\"Creata\",\"chatOrigin\":\"Chat di origine\",\"chatStatistics\":\"Statistiche\",\"chatTypes\":\"Tipo di conversazione\",\"chatUpdatedAgo\":\"Ultimo messaggio\",\"chatWidget\":\"Chat Widget\",\"chunks\":\"Chunk\",\"clear\":\"Pulisci\",\"codeEditor\":\"Codice\",\"collapseContext\":\"Nascondi contesto\",\"comment\":\"Commento\",\"comparison\":\"Confronto\",\"completeName\":\"Nome e cognome\",\"completedAt\":\"Completata il\",\"configMcpServer\":\"Configura server MCP\",\"configure\":\"Configura\",\"confirm\":\"Conferma\",\"confirmPassword\":\"Conferma password\",\"confirmPrivateNetwork\":\"Confermo che l’endpoint non è raggiungibile da Internet\",\"confirmWithEmail\":\"Digita la tua email per confermare\",\"confirmWithPassword\":\"Inserisci la password per confermare\",\"connectMcpServer\":\"Connetti server MCP\",\"connectSubAgent\":\"Collega sotto-agente\",\"connectedAccounts\":\"Account collegati\",\"connectionChecking\":\"Verifica connessione...\",\"connectionConnected\":\"Connesso\",\"connectionError\":\"Errore di connessione\",\"connectionIdle\":\"Non verificato\",\"connectionStatus\":\"Connessione\",\"connectionTypes\":\"Connessione\",\"const\":\"Costante\",\"contactUs\":\"Contattaci\",\"content\":\"Contenuto\",\"contentPreview\":\"Anteprima contenuto\",\"contextTokens\":\"{count}k contesto\",\"conversationLengthBuckets\":\"Lunghezza conversazione\",\"conversationOutline\":\"Indice della conversazione\",\"conversations\":\"Conversazioni\",\"conversationsOverTime\":\"Conversazioni nel tempo\",\"cost\":\"Costo\",\"costByChannel\":\"Costo per canale\",\"costInUSD\":\"Costo in USD\",\"costSource\":\"Sorgente del costo\",\"costSourceAll\":\"Totale\",\"costSourceEndpoint\":\"Endpoint\",\"costSourceGateway\":\"Gateway\",\"country\":\"Paese\",\"crawlMode\":\"Modalità Crawling\",\"createdAt\":\"Creato il\",\"createdBy\":\"Creato da\",\"credit\":\"Credito\",\"creditUpdatedAt\":\"Credito aggiornato il\",\"credits\":\"Crediti\",\"crmSync\":\"Sincronizzazione CRM\",\"curlExample\":\"Esempio cURL\",\"currentAgent\":\"Agente corrente\",\"currentLocation\":\"Posizione attuale\",\"currentPassword\":\"Password attuale\",\"currentSession\":\"Sessione corrente\",\"customCss\":\"CSS personalizzato\",\"customRange\":\"Personalizzato\",\"dailyUsage\":\"Utilizzo giornaliero\",\"dark\":\"Scuro\",\"darkModePreference\":\"Tema scuro\",\"dataLoadFailed\":\"Non è stato possibile caricare questo dato\",\"datetime\":\"Data / Ora\",\"day\":\"Giorno\",\"dayRateLimit\":\"Limite al giorno\",\"days\":\"{count} giorno | {count} giorni\",\"default\":\"Predefinito\",\"defaultMappingHint\":\"Se non viene configurata una mappatura, verrà utilizzata quella predefinita per il provider.\",\"defaultRole\":\"Ruolo predefinito\",\"deleted\":\"Eliminato\",\"deprecated\":\"Deprecato\",\"description\":\"Descrizione\",\"deselectAction\":\"Rimuovi\",\"details\":\"Dettagli\",\"device\":\"Dispositivo\",\"deviceContext\":\"Contesto dispositivo\",\"deviceType\":\"Tipo dispositivo\",\"diagram\":\"Diagramma\",\"disabled\":\"Disabilitato\",\"disallowPromptTraining\":\"Prompt Training disabilitato\",\"dismissableNotice\":\"Avviso\",\"documentOrigin\":\"Origine\",\"documentPriority\":\"Priorità Documento\",\"documentRefresh\":\"Aggiornamento automatico\",\"documentRefreshAuto\":\"Automatico\",\"documentRefreshInterval\":\"Frequenza\",\"documentRefreshLastRead\":\"Ultima lettura\",\"documentRefreshNext\":\"Prossimo aggiornamento\",\"documentRefreshOutcome\":\"Esito\",\"documentRefreshPaused\":\"In pausa\",\"documentSourceInterval\":\"Frequenza di controllo\",\"documentSourceLastRun\":\"Ultima esecuzione\",\"documentSourceLastSync\":\"Ultimo controllo\",\"documentSourceNextSync\":\"Prossimo controllo\",\"documentSourceSearch\":\"Cerca un sito\",\"documentType\":\"Tipo documento\",\"documents\":\"Documenti\",\"domainFilter\":\"Filtro domini\",\"downloadFile\":\"Scarica file\",\"downloading\":\"Download in corso\",\"duration\":\"Durata\",\"editApiTool\":\"Modifica API Tool\",\"editIntegration\":\"Modifica integrazione\",\"editMcpServer\":\"Modifica server MCP\",\"editSubAgent\":\"Modifica sotto-agente\",\"effectiveCredit\":\"Credito effettivo\",\"email\":\"Email\",\"emailClaim\":\"Claim email\",\"emailDomain\":\"Dominio email\",\"emailVerified\":\"Email verificata\",\"embed\":\"Incorpora\",\"embedCode\":\"Codice Embed\",\"embedding\":\"Embedding\",\"embeddingEndpointModel\":\"Id sull’endpoint\",\"embeddingModel\":\"Modello di embedding\",\"embeddingModelsCount\":\"Modelli di embedding ({count})\",\"embeddingNotConfigured\":\"Non configurato\",\"embeddingNotConfiguredReason\":\"Il gateway AI della piattaforma è spento per questa organizzazione\",\"embeddingOnEndpoint\":\"Embedding sul tuo endpoint\",\"embeddingOnPlatform\":\"Sul gateway AI della piattaforma\",\"embeddingReindex\":\"Reindicizzazione della base di conoscenza e delle memorie\",\"embeddingReindexDone\":\"Reindicizzato il {date}\",\"embeddingReindexPaused\":\"Reindicizzazione in pausa\",\"embeddingReindexProgress\":\"Reindicizzazione: {done} vettori su {total}\",\"embeddingReindexQueued\":\"Reindicizzazione in coda: parte entro pochi minuti\",\"enabled\":\"Abilitato\",\"enabledTools\":\"Tool abilitati\",\"endDate\":\"Data fine\",\"endpointCost\":\"Costo endpoint (stima)\",\"endpointModels\":\"Modelli del tuo endpoint\",\"engagement\":\"Engagement\",\"enum\":\"Valori enum\",\"error\":\"Errore\",\"estimatedCost\":\"Costo stimato a fine mese\",\"estimatedCredit\":\"Credito stimato\",\"estimatedMonthlyCost\":\"Stima fine mese\",\"excludeDomains\":\"Domini esclusi\",\"expandContext\":\"Mostra più contesto\",\"expireIn\":\"Scade tra\",\"expires\":\"Scade\",\"expiresAt\":\"Scadenza\",\"exportMyData\":\"Esporta i miei dati\",\"externalAuth\":\"Autenticazione esterna\",\"externalAuthDescription\":\"Configura i provider di autenticazione esterna per consentire l'autenticazione tramite token JWT emessi da questi provider. Gli utenti autenticati tramite questi provider saranno aggiunti automaticamente alla tua organizzazione con il ruolo predefinito (auto provisioning).\",\"externalContext\":\"Contesto esterno\",\"externalContextSchema\":\"Schema contesto esterno\",\"externalId\":\"ID esterno (CRM)\",\"fallbackModels\":\"Modelli di fallback\",\"feedback\":\"Segnalazione\",\"feedbacks\":\"Feedback\",\"fieldMappingFallback\":\"Valore di default\",\"fieldMappingSource\":\"Campo sorgente\",\"fieldMappingTarget\":\"Campo destinazione {number}\",\"fieldMappingTransform\":\"Trasformazione\",\"fieldMappingTransformExtractDomainCompany\":\"Estrai azienda da dominio email\",\"fieldMappingTransformJoinArray\":\"Unisci array\",\"fieldMappingTransformMapValues\":\"Mappa valori\",\"fieldMappingTransformNone\":\"Nessuna\",\"fieldMappingTransformSplitFirstLast\":\"Dividi primo/ultimo\",\"fieldMappingValueMap\":\"Mappatura valori\",\"file\":\"File\",\"fileUpload\":\"Caricamento file\",\"fileUploadAllowedMimeTypes\":\"Tipi di file consentiti\",\"fileUploadEnabled\":\"Abilita caricamento file\",\"fileUploadMaxFileSize\":\"Dimensione massima file (MB)\",\"fileUploadMaxFilesPerChat\":\"File massimi per chat\",\"fileUploadMaxFilesPerMessage\":\"File massimi per messaggio\",\"files\":\"File\",\"filters\":\"Filtri\",\"floatingButtonPosition\":\"Posizione bottone\",\"folderName\":\"Nome cartella\",\"folders\":\"Cartelle\",\"followExternal\":\"Segui Link Esterni\",\"footer\":\"Footer\",\"forceOcr\":\"Forza OCR\",\"formMaxOptionsPerStep\":\"Opzioni massime consigliate\",\"formMaxSteps\":\"Step massimi consigliati\",\"frequencyPenalty\":\"Penalità di Frequenza\",\"freshnessBoost\":\"Boost Freschezza\",\"freshnessScale\":\"Scala temporale Freschezza\",\"freshnessWeight\":\"Peso Freschezza\",\"fullDuration\":\"Durata (ms)\",\"gallery\":\"Galleria ({count} immagini)\",\"gatewayCost\":\"Costo gateway\",\"gatewayModels\":\"Modelli della piattaforma\",\"gdprRequestType\":{\"conversations_erasure\":\"Cancellazione conversazioni\",\"erasure\":\"Cancellazione dati\",\"export\":\"Export dati\"},\"gdprRequests\":\"Richieste GDPR\",\"general\":\"Generale\",\"generateSchemaFromJson\":\"Genera schema da JSON\",\"goalOutcome\":\"Esito obiettivo\",\"granularity\":\"Granularità\",\"groupReasoningAgents\":\"Raggruppa\",\"hasRedundantChunks\":\"Ha Chunk Ridondanti\",\"header\":\"Header\",\"headers\":\"Header HTTP\",\"healthCheckPath\":\"Health check\",\"hour\":\"Ora\",\"hourRateLimit\":\"Limite all'ora\",\"hsAccessToken\":\"Access Token\",\"hsAccessTokenHint\":\"Crea una Private App di HubSpot con i seguenti scope: crm.objects.contacts.read, crm.objects.contacts.write, crm.objects.owners.read.\",\"hsDefaultOwnerId\":\"Owner ID predefinito\",\"hsDefaultOwnerIdHint\":\"ID utente HubSpot a cui assegnare i contatti. Lasciare vuoto per non assegnare un owner.\",\"hsStaticProperties\":\"Proprietà statiche\",\"hsStaticPropertiesHint\":\"Proprietà fisse aggiunte ad ogni contatto.\",\"httpHeaderKey\":\"Chiave\",\"httpHeaderValue\":\"Valore\",\"secretParameters\":\"Parametri segreti\",\"secretParameterPosition\":\"Inviato in\",\"secretPositionQuery\":\"Query string\",\"secretPositionBody\":\"Body\",\"apiToolCredentialBadge\":\"Chiave esposta\",\"httpHeaders\":\"Header HTTP\",\"iframe\":\"Iframe\",\"iframeCode\":\"Codice iframe\",\"imageLoadError\":\"Immagine non disponibile\",\"impersonated\":\"Impersonificato\",\"impersonation\":\"Impersonificazione\",\"importing\":\"Importazione in corso\",\"inRedis\":\"In Redis\",\"inStock\":\"Disponibile\",\"integrationReconnectNeeded\":\"Da riconnettere\",\"integrationAppCredential\":\"App {clientId}\",\"modelDefaults\":\"Modelli predefiniti\",\"modelNotAvailable\":\"non disponibile\",\"modelSourcePlatform\":\"Piattaforma\",\"modelSwitchedOff\":\"spento\",\"ownEndpoint\":\"Il tuo endpoint (BYOK)\",\"price\":\"Prezzo\",\"priceListModel\":\"Modello del listino\",\"priceToSet\":\"Prezzo da indicare\",\"modelPriceOf\":\"Prezzo di {id}\",\"context\":\"Contesto\",\"someProviders\":\"Alcuni provider\",\"modelsActiveSummary\":\"{active} modelli attivi su {count}\",\"noModelsYet\":\"Ancora nessun modello\",\"notServedAnyMore\":\"Non più offerto dall'endpoint\",\"modelIdByHand\":\"Id del modello\",\"modelReference\":\"Modello di riferimento\",\"msClientId\":\"ID applicazione (client)\",\"msClientSecret\":\"Client secret\",\"msTenantId\":\"ID directory (tenant)\",\"inTest\":\"In test\",\"includeDomains\":\"Domini inclusi\",\"includeThoughts\":\"Visualizza ragionamento\",\"indexStatus\":\"Stato indicizzazione\",\"info\":\"Info\",\"initialMessage\":\"Messaggio iniziale\",\"input\":\"Input\",\"inputSchema\":\"Schema di Input\",\"insertEmail\":\"Inserisci email\",\"integration\":\"Integrazione\",\"integrationConfig\":\"Configurazione\",\"integrationDisabled\":\"Disabilitata\",\"integrationEnabled\":\"Abilitata\",\"integrationFieldMapping\":\"Mappatura campi\",\"integrationProvider\":\"Provider\",\"integrationSyncLogs\":\"Log sincronizzazione\",\"integrationSyncLogsDescription\":\"La sincronizzazione avviene automaticamente alla creazione di un nuovo contatto.\",\"integrations\":\"Integrazioni\",\"interactiveLogin\":\"Mostra login/registrazione\",\"interface\":\"Interfaccia\",\"invitations\":\"Inviti\",\"ipAddress\":\"Indirizzo IP\",\"isAutoJoinEnabled\":\"Unisci automaticamente utenti già presenti con la stessa e-mail\",\"issuer\":\"Issuer\",\"itemsPerPage\":\"Per pagina\",\"jsonSample\":\"Esempio JSON\",\"jwksUrl\":\"JWKS URL\",\"key\":\"Chiave\",\"language\":\"Lingua\",\"languages\":\"Lingue\",\"last14Days\":\"Ultimi 14 giorni\",\"last30Days\":\"Ultimi 30 giorni\",\"last7Days\":\"Ultimi 7 giorni\",\"last90Days\":\"Ultimi 90 giorni\",\"lastActive\":\"Ultimo accesso\",\"lastActivity\":\"Ultima attività\",\"lastMonth\":\"Mese scorso\",\"lastRecalledAt\":\"Ultimo richiamo\",\"lastReconciledAt\":\"Ultimo allineamento\",\"lastRefillAt\":\"Ultima ricarica il\",\"lastSync\":\"Aggiornato il\",\"lastUsedAt\":\"Ultimo utilizzo\",\"latest\":\"Ultima\",\"leadId\":\"ID interno\",\"left\":\"Sinistra\",\"light\":\"Chiaro\",\"limit\":\"Limite\",\"limitedStock\":\"Ultimi pezzi\",\"linkedAgents\":\"Agenti collegati\",\"llmIssues\":\"Problemi LLM\",\"loadDelay\":\"Ritardo caricamento (ms)\",\"loaderStrategy\":\"Strategia di caricamento\",\"loaderStrategyDynamicImport\":\"Dynamic Import\",\"loaderStrategyInlineModule\":\"Inline Module\",\"loaderStrategyScriptSrc\":\"Script Src\",\"locale\":\"Lingua\",\"location\":\"Posizione\",\"logo\":\"Logo\",\"logoUrl\":\"Logo URL\",\"mainColor\":\"Colore principale\",\"manageProfileDescription\":\"Modifica nome, password, avatar e altro\",\"maxDepth\":\"Profondità Massima\",\"maxMessageLength\":\"Lunghezza massima messaggio\",\"maxOutputTokens\":\"Token Massimi\",\"maxPages\":\"Pagine Massime\",\"maxResults\":\"Risultati massimi\",\"maxStepCount\":\"Numero Massimo di Step\",\"maxUses\":\"Utilizzi massimi\",\"mcpAuthType\":\"Tipo di autenticazione\",\"mcpServer\":\"Server MCP\",\"mcpServerUrl\":\"URL del server MPC\",\"mcpStatelessServer\":\"Client stateless\",\"memberSince\":\"Membro dal\",\"memories\":\"Memorie\",\"memory\":\"Memoria\",\"message\":\"Messaggio\",\"messageDetails\":\"Dettaglio messaggio\",\"messagePlaceholder\":\"Segnaposto\",\"messages\":\"Messaggi\",\"metadata\":\"Metadati\",\"method\":\"Metodo\",\"mimeTypeDocuments\":\"Documenti\",\"mimeTypeImages\":\"Immagini\",\"mimeTypeText\":\"Testo\",\"minuteRateLimit\":\"Limite al minuto\",\"mmr\":\"Maximal Marginal Relevance (MMR)\",\"mmrCandidatesLimit\":\"Limite Candidati MMR\",\"mmrDiversity\":\"Diversità MMR\",\"model\":\"Modello\",\"modelParameters\":\"Parametri modello\",\"month\":\"Mese\",\"monthRateLimit\":\"Limite al mese\",\"monthlyCost\":\"Costo mensile\",\"multipleChoiceAllowCustomAnswer\":\"Consenti risposta personalizzata\",\"multipleChoiceMaxOptions\":\"Numero massimo di opzioni\",\"name\":\"Nome\",\"nameClaim\":\"Claim nome\",\"never\":\"Mai\",\"newChat\":\"Nuova chat\",\"newPassword\":\"Nuova password\",\"no\":\"No\",\"noDataAvailable\":\"Nessun dato disponibile\",\"noDataRetention\":\"ZDR\",\"noFieldMapping\":\"Nessuna mappatura personalizzata configurata\",\"noIntegrations\":\"Nessuna integrazione configurata\",\"noPromptTraining\":\"No training\",\"noSyncLogs\":\"Nessun log di sincronizzazione\",\"noTimingData\":\"Nessun dato. Effettua una richiesta di chat per vedere i log di timing.\",\"noTimingDataDesc\":\"Avvia una conversazione con un agente per vedere i log di timing qui in tempo reale.\",\"noTimingDataTitle\":\"Nessun dato disponibile\",\"notAvailable\":\"Non disponibile\",\"notCompatible\":\"non compatibile\",\"notConfigured\":\"Non configurata\",\"notConnected\":\"Non connesso\",\"notSynced\":\"Non sincronizzata\",\"notificationTitle\":{\"document_error\":\"Elaborazione documento fallita\",\"document_sync_removed\":\"Documenti rimossi da una cartella sincronizzata\",\"organization\":{\"created\":\"Organizzazione creata\",\"invite\":\"Invito organizzazione\",\"invite_accepted\":\"Invito accettato\",\"invite_rejected\":\"Invito rifiutato\",\"removed\":\"Rimosso dall'organizzazione\"},\"password_reset_requested\":\"È stata richiesta la reimpostazione della password\"},\"notificationType\":{\"api_key_expiring\":\"Scadenza API Key\",\"chat_blocked\":\"Chat bloccata\",\"chat_warning\":\"Avviso chat\",\"document_error\":\"Errore documento\",\"document_sync_removed\":\"Contenuti sincronizzati rimossi\",\"generic\":\"Generica\",\"organization\":\"Organizzazione\",\"password_reset_requested\":\"Reset password richiesto\"},\"oauthAuthorizationUrl\":\"URL di autorizzazione OAuth\",\"oauthClientId\":\"OAuth Client ID\",\"oauthClientSecret\":\"OAuth Client Secret\",\"oauthScopes\":\"Scopes OAuth\",\"oauthTokenUrl\":\"URL token OAuth\",\"ocrUsed\":\"OCR\",\"older\":\"Più vecchie\",\"onChannels\":\"WA · Teams\",\"openSource\":\"Apri sorgente\",\"operatingSystems\":\"Sistemi operativi\",\"or\":\"Oppure\",\"organization\":\"Organizzazione\",\"organizations\":\"Organizzazioni\",\"origin\":\"Origine\",\"originalMessage\":\"Risposta originale\",\"origins\":\"Sorgenti\",\"outOfStock\":\"Non disponibile\",\"output\":\"Output\",\"outputSchema\":\"Schema di Output\",\"pages\":\"Pagine\",\"passphrase\":\"Inserisci la parola chiave\",\"password\":\"Password\",\"paused\":\"In pausa\",\"peakHours\":\"Ore di punta\",\"perMillionTokens\":\"per milione di token\",\"period\":\"Periodo\",\"phaseBreakdown\":\"Breakdown fasi\",\"phone\":\"Telefono\",\"picture\":\"Immagine\",\"platformAssistant\":\"Assistente della piattaforma\",\"platformContext\":\"Contesto piattaforma\",\"postStreaming\":\"Post-streaming\",\"preStreaming\":\"Pre-streaming\",\"preferences\":\"Preferenze\",\"presencePenalty\":\"Penalità di Presenza\",\"preview\":\"Anteprima\",\"priceInput\":\"Prezzo input\",\"priceOutput\":\"Prezzo output\",\"priority\":\"Priorità\",\"priority_1\":\"Molto Bassa\",\"priority_2\":\"Bassa\",\"priority_3\":\"Normale\",\"priority_4\":\"Alta\",\"priority_5\":\"Critica\",\"privacy\":\"Privacy\",\"privacyPolicyNotice\":\"Informativa privacy\",\"processedAt\":\"Processato il\",\"processing\":\"Elaborazione in corso...\",\"profile\":\"Profilo\",\"prompt\":\"Prompt\",\"properties\":\"Proprietà\",\"provider\":\"Provider\",\"providerOrganizationId\":\"ID Provider\",\"providerTimeoutMs\":\"Timeout provider (ms)\",\"qdrantSync\":\"Sync Vettoriale\",\"qrCode\":\"Codice QR\",\"question\":\"Domanda\",\"rateLimits\":\"Limiti di utilizzo\",\"read\":\"Letto\",\"reasoning\":\"Reasoning\",\"reasoningAgentTester\":\"Test Agente di Ragionamento\",\"reasoningDetails\":\"Dettagli di ragionamento\",\"reasoningEffort\":\"Intensità ragionamento\",\"reasoningSummary\":\"Riepilogo ragionamento\",\"recommended\":\"Consigliato\",\"redundantChunks\":\"Chunk ridondanti\",\"referrerDomains\":\"Domini di provenienza\",\"refillAmount\":\"Importo ricarica\",\"released\":\"Rilascio\",\"rememberMe\":\"Ricordami\",\"replyWithoutText\":\"Risposta senza testo\",\"requestCount\":\"Richieste\",\"requestedAt\":\"Richiesta il\",\"requests\":\"Richieste\",\"requestsPerAgent\":\"Richieste per agente\",\"requestsUsed\":\"Richieste utilizzate\",\"required\":\"Obbligatorio\",\"requiredFields\":\"Campi obbligatori\",\"retired\":\"ritirato\",\"revisedMessage\":\"Risposta corretta\",\"right\":\"Destra\",\"riskScoreBands\":\"Fasce di rischio\",\"role\":\"Ruolo\",\"rootDocuments\":\"Senza cartella\",\"scheduledAt\":\"Programmata il\",\"schemaRootArray\":\"Array\",\"schemaRootObject\":\"Oggetto\",\"schemas\":\"Schemi\",\"screenCategories\":\"Risoluzione schermo\",\"searchAndExecution\":\"Ricerca ed esecuzione\",\"searchMode\":\"Modalità di Ricerca\",\"searchRecencyFilter\":\"Filtro temporale\",\"sectionChannelBreakdown\":\"Dettaglio per canale\",\"sectionConversationQuality\":\"Qualità conversazione\",\"sectionCostTrend\":\"Andamento costi mensili\",\"sectionDeviceContext\":\"Dispositivi e contesto (web e widget)\",\"sectionTraffic\":\"Traffico (web e widget)\",\"security\":\"Sicurezza\",\"selectAgent\":\"Seleziona agente\",\"selectedHint\":\"Selezionato\",\"sentiment\":\"Sentiment\",\"sentimentTrends\":\"Trend di sentiment\",\"serverInfo\":\"Info MCP server\",\"sessionExpiresIn\":\"Durata sessione (secondi)\",\"setPassword\":\"Imposta password\",\"settings\":\"Impostazioni\",\"sfApiVersion\":\"Versione API\",\"sfClientId\":\"Client ID\",\"sfClientSecret\":\"Client Secret\",\"sfExternalIdField\":\"Campo ID esterno\",\"sfInstanceUrl\":\"Instance URL\",\"shareWith\":\"Condividi con gli agenti\",\"showExtendedSteps\":\"Mostra i passaggi\",\"showing\":\"Mostrati\",\"similarity\":\"Similarità\",\"sitemapUrl\":\"URL Sitemap\",\"size\":\"Dimensione\",\"slowest\":\"Più lento\",\"slug\":\"Slug\",\"smartRanking\":\"Ranking Intelligente\",\"smoothStream\":\"Smooth streaming\",\"source\":\"Sorgente\",\"sources\":\"Fonti\",\"spokenExchange\":\"Scambiato a voce\",\"startDate\":\"Data inizio\",\"startUrl\":\"URL di Partenza\",\"status\":\"Stato\",\"steps\":\"step\",\"streaming\":\"Streaming\",\"style\":\"Stile\",\"subAgent\":\"Sotto-agente\",\"subject\":\"Oggetto\",\"syncStatus\":\"Stato\",\"targetAll\":\"Tutti gli utenti\",\"targetOrganization\":\"Organizzazione\",\"targetType\":\"Destinatario\",\"targetUser\":\"Utente specifico\",\"teams\":\"Microsoft Teams\",\"teamsAccentColor\":\"Colore del tema\",\"teamsAppId\":\"App ID (Microsoft)\",\"teamsAppPassword\":\"App password / client secret\",\"teamsAppTenantId\":\"Tenant ID\",\"teamsAppType\":\"Tipo app\",\"teamsAppVersion\":\"Versione app\",\"teamsDescriptionFull\":\"Descrizione completa\",\"teamsDescriptionShort\":\"Descrizione breve\",\"teamsDeveloperName\":\"Nome sviluppatore\",\"teamsManifestDetails\":\"Dettagli dell'app (mostrati in Teams)\",\"temperature\":\"Temperatura\",\"testConnection\":\"Verifica connessione\",\"testPlayground\":\"Test Playground\",\"textColor\":\"Colore del testo\",\"theme\":\"Tema\",\"thinking\":\"Pensiero\",\"thinkingBudget\":\"Budget ragionamento\",\"thinkingDisplay\":\"Visualizza ragionamento\",\"thinkingEffort\":\"Intensità ragionamento\",\"thinkingLevel\":\"Livello ragionamento\",\"thinkingType\":\"Tipo pensiero\",\"thisMonth\":\"Questo mese\",\"timelineSteps\":\"Timeline steps\",\"timeoutMs\":\"Timeout (ms)\",\"timezoneRegions\":\"Fuso orario\",\"title\":\"Titolo\",\"today\":\"Oggi\",\"tokens\":\"token\",\"tool\":\"Tool\",\"toolApprovalBadge\":\"Conferma utente\",\"toolName\":\"Nome del tool: {name}\",\"toolRequiresApproval\":\"Chiedi conferma all'utente\",\"toolWorkingSet\":\"Selezione dei tool\",\"toolWorkingSetMode\":\"Modalità\",\"tools\":\"Tool\",\"topPages\":\"Pagine principali\",\"topTopics\":\"Trending topics\",\"total\":\"Totale\",\"totalConversations\":\"Chat in totale\",\"totalCost\":\"Costo totale\",\"totalCostPartlyEstimated\":\"Costo totale, in parte stimato\",\"totalItemsCount\":\"Elementi: {total}\",\"totalMessages\":\"Messaggi in totale\",\"totalPages\":\"di {total}\",\"trustedOrigins\":\"Origini attendibili\",\"tuning\":\"Tuning\",\"type\":\"Tipo\",\"typeMain\":\"Main\",\"typeSub\":\"Sub\",\"uniqueUsers\":\"Utenti unici\",\"unitChat\":\"chat\",\"unitChatPerUser\":\"chat\",\"unitMessages\":\"messaggi\",\"unitMessagesPerChat\":\"messaggi\",\"unitUsers\":\"utenti\",\"unknown\":\"Sconosciuto\",\"unread\":\"Non letto\",\"updateProfile\":\"Aggiorna profilo\",\"updatedAt\":\"Aggiornato il\",\"upload\":\"Carica {index}/{total}\",\"url\":\"URL pagina web\",\"usage\":\"Utilizzo\",\"useBrowserEngine\":\"Utilizza il browser\",\"useExtractionStrategy\":\"Utilizza l'AI\",\"user\":\"Utente\",\"userInput\":\"Opzione selezionata\",\"userPrompt\":\"Richiesta utente\",\"userQuestion\":\"Domanda\",\"userTones\":\"Tono utente\",\"users\":\"Utenti\",\"utilityModel\":\"Modello per le funzioni interne\",\"value\":\"Valore\",\"version\":\"Versione\",\"video\":\"Video\",\"viewPdfPage\":\"Visualizza pagina PDF\",\"visibility\":\"Visibilità\",\"visualEditor\":\"Visuale\",\"voice\":\"Voce\",\"voiceCascadeTimeoutSeconds\":\"Tempo massimo per rispondere (secondi)\",\"voiceEnabled\":\"Conversazione vocale\",\"voiceFillerAfterSeconds\":\"Riempitivo dopo (secondi)\",\"voiceFillerMessage\":\"Frase di attesa\",\"voiceFirstMessage\":\"Frase di apertura\",\"voiceId\":\"Voce\",\"voiceIgnoreBackgroundVoices\":\"Ignora le voci di sottofondo\",\"voiceLanguage\":\"Lingua parlata\",\"voiceMaxSessionSeconds\":\"Durata massima sessione (secondi)\",\"voiceTurnEagerness\":\"Fine del turno\",\"voiceTurnTimeoutSeconds\":\"Pausa prima di riprendere la parola (secondi)\",\"vote\":\"Voto\",\"warnings\":\"Avvisi\",\"webSearch\":\"Ricerca web\",\"webSearchEnabled\":\"Abilita ricerca web\",\"webSearchNative\":\"Nativa\",\"webSearchProvider\":\"Provider di ricerca\",\"webhookUrl\":\"URL Webhook\",\"week\":\"Settimana\",\"welcome\":\"Benvenuto in {appName}!\",\"whatsapp\":\"WhatsApp\",\"whatsappAccessToken\":\"Access token\",\"whatsappAppSecret\":\"App secret\",\"whatsappPhoneNumberId\":\"Phone number ID\",\"whatsappVerifyToken\":\"Verify token\",\"white\":\"Bianco\",\"widgetUrl\":\"URL widget\",\"year\":\"Anno\",\"yes\":\"Sì\",\"yesterday\":\"Ieri\",\"zeroDataRetention\":\"Zero Data Retention (ZDR)\"}"),
1045
+ label: /* @__PURE__ */ JSON.parse("{\"AI\":\"AI\",\"acceptInvitationAndCreateAccount\":\"Accetta l'invito e crea il tuo account\",\"accountingCredit\":\"Saldo contabile\",\"actions\":\"Azioni\",\"active\":\"Attiva\",\"activeSessions\":\"Sessioni attive\",\"actualCost\":\"Costo reale\",\"addApiTool\":\"Aggiungi API Tool\",\"addIntegration\":\"Aggiungi integrazione\",\"additionalMetadata\":\"Metadati aggiuntivi\",\"admin\":\"Amministratore\",\"advancedOptions\":\"Opzioni avanzate\",\"agent\":\"Agente\",\"agentModel\":\"Modello di default\",\"agentResponse\":\"Risposta agente\",\"agentTree\":\"Albero Agente\",\"agents\":\"Agenti\",\"agentsUsed\":\"Agenti utilizzati\",\"aiDescription\":\"Generato con AI\",\"aiDescriptionModel\":\"Modello AI\",\"aiDescriptionPrompt\":\"Prompt personalizzato\",\"allAgents\":\"Tutti gli agenti\",\"allChannels\":\"Tutti i canali\",\"allowedDomains\":\"Domini consentiti\",\"analysis\":\"Analisi\",\"analyzed\":\"Analisi\",\"anonymized\":\"Anonimizzata\",\"anonymous\":\"Anonimo\",\"answer\":\"Risposta\",\"answeringOnTheCall\":\"Sto rispondendo…\",\"apiKey\":\"API Key\",\"apiKeys\":\"API Key\",\"appearance\":\"Aspetto\",\"arrayOfObjects\":\"Array di oggetti\",\"assistantMessage\":\"Risposta assistente\",\"attachmentsNotImported\":\"Allegati non importati\",\"attempts\":\"Tentativi\",\"attention\":\"Attenzione\",\"audience\":\"Audience\",\"authentication\":\"Autenticazione\",\"auto\":\"Auto\",\"autoDetected\":\"Rilevati automaticamente\",\"autoProvisioning\":\"Auto provisioning\",\"autoProvisioningDescription\":\"Gli utenti che si autenticano tramite questi provider di identità o domini verranno automaticamente aggiunti alla tua organizzazione con il ruolo predefinito.\",\"autoRefreshError\":\"Errore\",\"autoRefreshOff\":\"In pausa\",\"autoRefreshOn\":\"Live\",\"autoRefreshStoppedErrors\":\"Aggiornamento automatico interrotto dopo errori ripetuti.\",\"autoRefreshStoppedUnavailable\":\"Aggiornamento automatico interrotto: questo contenuto non è più accessibile.\",\"autoRefreshWarning\":\"Attenzione\",\"availableCredit\":\"Saldo disponibile\",\"averageLine\":\"Media\",\"avgChatsPerUser\":\"Chat per user\",\"avgMessagesPerChat\":\"Messaggi per chat\",\"avgTime\":\"Tempo medio\",\"banned\":\"Bannato\",\"baseUrl\":\"URL di base\",\"black\":\"Nero\",\"blocked\":\"Bloccato\",\"blockedDomains\":\"Domini bloccati\",\"blockedReasons\":\"Motivi di blocco\",\"body\":\"Testo\",\"botName\":\"Nome bot\",\"breadcrumbs\":\"Percorso di navigazione\",\"browserEngine\":\"Browser engine\",\"browsers\":\"Browser\",\"budgetTokens\":\"Budget token\",\"byChannel\":\"Per canale\",\"cached\":\"dalla cache\",\"calendarEvent\":\"Evento\",\"changePassword\":\"Cambia Password\",\"channel\":\"Canale\",\"channels\":\"Canali\",\"chat\":\"Chat\",\"chatCreatedAgo\":\"Creata\",\"chatOrigin\":\"Chat di origine\",\"chatStatistics\":\"Statistiche\",\"chatTypes\":\"Tipo di conversazione\",\"chatUpdatedAgo\":\"Ultimo messaggio\",\"chatWidget\":\"Chat Widget\",\"chunks\":\"Chunk\",\"clear\":\"Pulisci\",\"codeEditor\":\"Codice\",\"collapseContext\":\"Nascondi contesto\",\"comment\":\"Commento\",\"comparison\":\"Confronto\",\"completeName\":\"Nome e cognome\",\"completedAt\":\"Completata il\",\"configMcpServer\":\"Configura server MCP\",\"configure\":\"Configura\",\"confirm\":\"Conferma\",\"confirmPassword\":\"Conferma password\",\"confirmPrivateNetwork\":\"Confermo che l’endpoint non è raggiungibile da Internet\",\"confirmWithEmail\":\"Digita la tua email per confermare\",\"confirmWithPassword\":\"Inserisci la password per confermare\",\"connectMcpServer\":\"Connetti server MCP\",\"connectSubAgent\":\"Collega sotto-agente\",\"connectedAccounts\":\"Account collegati\",\"connectionChecking\":\"Verifica connessione...\",\"connectionConnected\":\"Connesso\",\"connectionError\":\"Errore di connessione\",\"connectionIdle\":\"Non verificato\",\"connectionStatus\":\"Connessione\",\"connectionTypes\":\"Connessione\",\"const\":\"Costante\",\"contactUs\":\"Contattaci\",\"content\":\"Contenuto\",\"contentPreview\":\"Anteprima contenuto\",\"contextTokens\":\"{count}k contesto\",\"conversationLengthBuckets\":\"Lunghezza conversazione\",\"conversationOutline\":\"Indice della conversazione\",\"conversations\":\"Conversazioni\",\"conversationsOverTime\":\"Conversazioni nel tempo\",\"cost\":\"Costo\",\"costByChannel\":\"Costo per canale\",\"costInUSD\":\"Costo in USD\",\"costSource\":\"Sorgente del costo\",\"costSourceAll\":\"Totale\",\"costSourceEndpoint\":\"Endpoint\",\"costSourceGateway\":\"Gateway\",\"country\":\"Paese\",\"crawlMode\":\"Modalità Crawling\",\"createdAt\":\"Creato il\",\"createdBy\":\"Creato da\",\"credit\":\"Credito\",\"creditUpdatedAt\":\"Credito aggiornato il\",\"credits\":\"Crediti\",\"crmSync\":\"Sincronizzazione CRM\",\"curlExample\":\"Esempio cURL\",\"currentAgent\":\"Agente corrente\",\"currentLocation\":\"Posizione attuale\",\"currentPassword\":\"Password attuale\",\"currentSession\":\"Sessione corrente\",\"customCss\":\"CSS personalizzato\",\"customRange\":\"Personalizzato\",\"dailyUsage\":\"Utilizzo giornaliero\",\"dark\":\"Scuro\",\"darkModePreference\":\"Tema scuro\",\"dataLoadFailed\":\"Non è stato possibile caricare questo dato\",\"datetime\":\"Data / Ora\",\"day\":\"Giorno\",\"dayRateLimit\":\"Limite al giorno\",\"days\":\"{count} giorno | {count} giorni\",\"default\":\"Predefinito\",\"defaultMappingHint\":\"Se non viene configurata una mappatura, verrà utilizzata quella predefinita per il provider.\",\"defaultRole\":\"Ruolo predefinito\",\"deleted\":\"Eliminato\",\"deprecated\":\"Deprecato\",\"description\":\"Descrizione\",\"deselectAction\":\"Rimuovi\",\"details\":\"Dettagli\",\"device\":\"Dispositivo\",\"deviceContext\":\"Contesto dispositivo\",\"deviceType\":\"Tipo dispositivo\",\"diagram\":\"Diagramma\",\"disabled\":\"Disabilitato\",\"disallowPromptTraining\":\"Prompt Training disabilitato\",\"dismissableNotice\":\"Avviso\",\"documentOrigin\":\"Origine\",\"documentPriority\":\"Priorità Documento\",\"documentRefresh\":\"Aggiornamento automatico\",\"documentRefreshAuto\":\"Automatico\",\"documentRefreshInterval\":\"Frequenza\",\"documentRefreshLastRead\":\"Ultima lettura\",\"documentRefreshNext\":\"Prossimo aggiornamento\",\"documentRefreshOutcome\":\"Esito\",\"documentRefreshPaused\":\"In pausa\",\"documentSourceInterval\":\"Frequenza di controllo\",\"documentSourceLastRun\":\"Ultima esecuzione\",\"documentSourceLastSync\":\"Ultimo controllo\",\"documentSourceNextSync\":\"Prossimo controllo\",\"documentSourceSearch\":\"Cerca un sito\",\"documentType\":\"Tipo documento\",\"documents\":\"Documenti\",\"domainFilter\":\"Filtro domini\",\"downloadFile\":\"Scarica file\",\"downloading\":\"Download in corso\",\"duration\":\"Durata\",\"editApiTool\":\"Modifica API Tool\",\"editIntegration\":\"Modifica integrazione\",\"editMcpServer\":\"Modifica server MCP\",\"editSubAgent\":\"Modifica sotto-agente\",\"effectiveCredit\":\"Credito effettivo\",\"email\":\"Email\",\"emailClaim\":\"Claim email\",\"emailDomain\":\"Dominio email\",\"emailVerified\":\"Email verificata\",\"embed\":\"Incorpora\",\"embedCode\":\"Codice Embed\",\"embedding\":\"Embedding\",\"embeddingEndpointModel\":\"Id sull’endpoint\",\"embeddingModel\":\"Modello di embedding\",\"embeddingModelsCount\":\"Modelli di embedding ({count})\",\"embeddingNotConfigured\":\"Non configurato\",\"embeddingNotConfiguredReason\":\"Il gateway AI della piattaforma è spento per questa organizzazione\",\"embeddingOnEndpoint\":\"Embedding sul tuo endpoint\",\"embeddingOnPlatform\":\"Sul gateway AI della piattaforma\",\"embeddingReindex\":\"Reindicizzazione della base di conoscenza e delle memorie\",\"embeddingReindexDone\":\"Reindicizzato il {date}\",\"embeddingReindexPaused\":\"Reindicizzazione in pausa\",\"embeddingReindexProgress\":\"Reindicizzazione: {done} vettori su {total}\",\"embeddingReindexQueued\":\"Reindicizzazione in coda: parte entro pochi minuti\",\"enabled\":\"Abilitato\",\"enabledTools\":\"Tool abilitati\",\"endDate\":\"Data fine\",\"endpointCost\":\"Costo endpoint (stima)\",\"endpointModels\":\"Modelli del tuo endpoint\",\"engagement\":\"Engagement\",\"enum\":\"Valori enum\",\"error\":\"Errore\",\"estimatedCost\":\"Costo stimato a fine mese\",\"estimatedCredit\":\"Credito stimato\",\"estimatedMonthlyCost\":\"Stima fine mese\",\"excludeDomains\":\"Domini esclusi\",\"expandContext\":\"Mostra più contesto\",\"expireIn\":\"Scade tra\",\"expires\":\"Scade\",\"expiresAt\":\"Scadenza\",\"exportMyData\":\"Esporta i miei dati\",\"externalAuth\":\"Autenticazione esterna\",\"externalAuthDescription\":\"Configura i provider di autenticazione esterna per consentire l'autenticazione tramite token JWT emessi da questi provider. Gli utenti autenticati tramite questi provider saranno aggiunti automaticamente alla tua organizzazione con il ruolo predefinito (auto provisioning).\",\"externalContext\":\"Contesto esterno\",\"externalContextSchema\":\"Schema contesto esterno\",\"externalId\":\"ID esterno (CRM)\",\"fallbackModels\":\"Modelli di fallback\",\"feedback\":\"Segnalazione\",\"feedbacks\":\"Feedback\",\"fieldMappingFallback\":\"Valore di default\",\"fieldMappingSource\":\"Campo sorgente\",\"fieldMappingTarget\":\"Campo destinazione {number}\",\"fieldMappingTransform\":\"Trasformazione\",\"fieldMappingTransformExtractDomainCompany\":\"Estrai azienda da dominio email\",\"fieldMappingTransformJoinArray\":\"Unisci array\",\"fieldMappingTransformMapValues\":\"Mappa valori\",\"fieldMappingTransformNone\":\"Nessuna\",\"fieldMappingTransformSplitFirstLast\":\"Dividi primo/ultimo\",\"fieldMappingValueMap\":\"Mappatura valori\",\"file\":\"File\",\"fileUpload\":\"Caricamento file\",\"fileUploadAllowedMimeTypes\":\"Tipi di file consentiti\",\"fileUploadEnabled\":\"Abilita caricamento file\",\"fileUploadMaxFileSize\":\"Dimensione massima file (MB)\",\"fileUploadMaxFilesPerChat\":\"File massimi per chat\",\"fileUploadMaxFilesPerMessage\":\"File massimi per messaggio\",\"files\":\"File\",\"filters\":\"Filtri\",\"floatingButtonPosition\":\"Posizione bottone\",\"folderName\":\"Nome cartella\",\"folders\":\"Cartelle\",\"followExternal\":\"Segui Link Esterni\",\"footer\":\"Footer\",\"forceOcr\":\"Forza OCR\",\"formMaxOptionsPerStep\":\"Opzioni massime consigliate\",\"formMaxSteps\":\"Step massimi consigliati\",\"frequencyPenalty\":\"Penalità di Frequenza\",\"freshnessBoost\":\"Boost Freschezza\",\"freshnessScale\":\"Scala temporale Freschezza\",\"freshnessWeight\":\"Peso Freschezza\",\"fullDuration\":\"Durata (ms)\",\"gallery\":\"Galleria ({count} immagini)\",\"gatewayCost\":\"Costo gateway\",\"gatewayModels\":\"Modelli della piattaforma\",\"gdprRequestType\":{\"conversations_erasure\":\"Cancellazione conversazioni\",\"erasure\":\"Cancellazione dati\",\"export\":\"Export dati\"},\"gdprRequests\":\"Richieste GDPR\",\"general\":\"Generale\",\"generateSchemaFromJson\":\"Genera schema da JSON\",\"goalOutcome\":\"Esito obiettivo\",\"granularity\":\"Granularità\",\"groupReasoningAgents\":\"Raggruppa\",\"hasRedundantChunks\":\"Ha Chunk Ridondanti\",\"header\":\"Header\",\"headers\":\"Header HTTP\",\"healthCheckPath\":\"Health check\",\"hour\":\"Ora\",\"hourRateLimit\":\"Limite all'ora\",\"hsAccessToken\":\"Access Token\",\"hsAccessTokenHint\":\"Crea una Private App di HubSpot con i seguenti scope: crm.objects.contacts.read, crm.objects.contacts.write, crm.objects.owners.read.\",\"hsDefaultOwnerId\":\"Owner ID predefinito\",\"hsDefaultOwnerIdHint\":\"ID utente HubSpot a cui assegnare i contatti. Lasciare vuoto per non assegnare un owner.\",\"hsStaticProperties\":\"Proprietà statiche\",\"hsStaticPropertiesHint\":\"Proprietà fisse aggiunte ad ogni contatto.\",\"httpHeaderKey\":\"Chiave\",\"httpHeaderValue\":\"Valore\",\"secretParameters\":\"Parametri segreti\",\"secretParameterPosition\":\"Inviato in\",\"secretPositionQuery\":\"Query string\",\"secretPositionBody\":\"Body\",\"apiToolCredentialBadge\":\"Chiave esposta\",\"httpHeaders\":\"Header HTTP\",\"iframe\":\"Iframe\",\"iframeCode\":\"Codice iframe\",\"imageLoadError\":\"Immagine non disponibile\",\"impersonated\":\"Impersonificato\",\"impersonation\":\"Impersonificazione\",\"importing\":\"Importazione in corso\",\"inRedis\":\"In Redis\",\"inStock\":\"Disponibile\",\"integrationReconnectNeeded\":\"Da riconnettere\",\"integrationAppCredential\":\"App {clientId}\",\"modelDefaults\":\"Modelli predefiniti\",\"modelNotAvailable\":\"non disponibile\",\"modelSourcePlatform\":\"Piattaforma\",\"modelSwitchedOff\":\"spento\",\"ownEndpoint\":\"Il tuo endpoint (BYOK)\",\"price\":\"Prezzo\",\"priceListModel\":\"Modello del listino\",\"priceToSet\":\"Prezzo da indicare\",\"modelPriceOf\":\"Prezzo di {id}\",\"context\":\"Contesto\",\"someProviders\":\"Alcuni provider\",\"modelsActiveSummary\":\"{active} modelli attivi su {count}\",\"noModelsYet\":\"Ancora nessun modello\",\"notServedAnyMore\":\"Non più offerto dall'endpoint\",\"modelIdByHand\":\"Id del modello\",\"modelReference\":\"Modello di riferimento\",\"msClientId\":\"ID applicazione (client)\",\"msClientSecret\":\"Client secret\",\"msTenantId\":\"ID directory (tenant)\",\"inTest\":\"In test\",\"includeDomains\":\"Domini inclusi\",\"includeThoughts\":\"Visualizza ragionamento\",\"indexStatus\":\"Stato indicizzazione\",\"info\":\"Info\",\"initialMessage\":\"Messaggio iniziale\",\"input\":\"Input\",\"inputSchema\":\"Schema di Input\",\"insertEmail\":\"Inserisci email\",\"integration\":\"Integrazione\",\"integrationConfig\":\"Configurazione\",\"integrationDisabled\":\"Disabilitata\",\"integrationEnabled\":\"Abilitata\",\"integrationFieldMapping\":\"Mappatura campi\",\"integrationProvider\":\"Provider\",\"integrationSyncLogs\":\"Log sincronizzazione\",\"integrationSyncLogsDescription\":\"La sincronizzazione avviene automaticamente alla creazione di un nuovo contatto.\",\"integrations\":\"Integrazioni\",\"interactiveLogin\":\"Mostra login/registrazione\",\"interface\":\"Interfaccia\",\"invitations\":\"Inviti\",\"ipAddress\":\"Indirizzo IP\",\"isAutoJoinEnabled\":\"Unisci automaticamente utenti già presenti con la stessa e-mail\",\"issuer\":\"Issuer\",\"itemsPerPage\":\"Per pagina\",\"jsonSample\":\"Esempio JSON\",\"jwksUrl\":\"JWKS URL\",\"key\":\"Chiave\",\"language\":\"Lingua\",\"languages\":\"Lingue\",\"last14Days\":\"Ultimi 14 giorni\",\"last30Days\":\"Ultimi 30 giorni\",\"last7Days\":\"Ultimi 7 giorni\",\"last90Days\":\"Ultimi 90 giorni\",\"lastActive\":\"Ultimo accesso\",\"lastActivity\":\"Ultima attività\",\"lastMonth\":\"Mese scorso\",\"lastRecalledAt\":\"Ultimo richiamo\",\"lastReconciledAt\":\"Ultimo allineamento\",\"lastRefillAt\":\"Ultima ricarica il\",\"lastSync\":\"Aggiornato il\",\"lastUsedAt\":\"Ultimo utilizzo\",\"latest\":\"Ultima\",\"leadId\":\"ID interno\",\"left\":\"Sinistra\",\"light\":\"Chiaro\",\"limit\":\"Limite\",\"limitedStock\":\"Ultimi pezzi\",\"linkedAgents\":\"Agenti collegati\",\"llmIssues\":\"Problemi LLM\",\"loadDelay\":\"Ritardo caricamento (ms)\",\"loaderStrategy\":\"Strategia di caricamento\",\"loaderStrategyDynamicImport\":\"Dynamic Import\",\"loaderStrategyInlineModule\":\"Inline Module\",\"loaderStrategyScriptSrc\":\"Script Src\",\"locale\":\"Lingua\",\"location\":\"Posizione\",\"logo\":\"Logo\",\"logoUrl\":\"Logo URL\",\"mainColor\":\"Colore principale\",\"manageProfileDescription\":\"Modifica nome, password, avatar e altro\",\"maxDepth\":\"Profondità Massima\",\"maxMessageLength\":\"Lunghezza massima messaggio\",\"maxOutputTokens\":\"Token Massimi\",\"maxPages\":\"Pagine Massime\",\"maxResults\":\"Risultati massimi\",\"maxStepCount\":\"Numero Massimo di Step\",\"maxUses\":\"Utilizzi massimi\",\"mcpAuthType\":\"Tipo di autenticazione\",\"mcpServer\":\"Server MCP\",\"mcpServerUrl\":\"URL del server MPC\",\"mcpStatelessServer\":\"Client stateless\",\"memberSince\":\"Membro dal\",\"memories\":\"Memorie\",\"memory\":\"Memoria\",\"message\":\"Messaggio\",\"messageDetails\":\"Dettaglio messaggio\",\"messagePlaceholder\":\"Segnaposto\",\"messages\":\"Messaggi\",\"metadata\":\"Metadati\",\"method\":\"Metodo\",\"mimeTypeDocuments\":\"Documenti\",\"mimeTypeImages\":\"Immagini\",\"mimeTypeText\":\"Testo\",\"minuteRateLimit\":\"Limite al minuto\",\"mmr\":\"Maximal Marginal Relevance (MMR)\",\"mmrCandidatesLimit\":\"Limite Candidati MMR\",\"mmrDiversity\":\"Diversità MMR\",\"model\":\"Modello\",\"modelParameters\":\"Parametri modello\",\"month\":\"Mese\",\"monthRateLimit\":\"Limite al mese\",\"monthlyCost\":\"Costo mensile\",\"multipleChoiceAllowCustomAnswer\":\"Consenti risposta personalizzata\",\"multipleChoiceMaxOptions\":\"Numero massimo di opzioni\",\"name\":\"Nome\",\"nameClaim\":\"Claim nome\",\"never\":\"Mai\",\"newChat\":\"Nuova chat\",\"newPassword\":\"Nuova password\",\"no\":\"No\",\"noDataAvailable\":\"Nessun dato disponibile\",\"noDataRetention\":\"ZDR\",\"noFieldMapping\":\"Nessuna mappatura personalizzata configurata\",\"noIntegrations\":\"Nessuna integrazione configurata\",\"noPromptTraining\":\"No training\",\"noSyncLogs\":\"Nessun log di sincronizzazione\",\"noTimingData\":\"Nessun dato. Effettua una richiesta di chat per vedere i log di timing.\",\"noTimingDataDesc\":\"Avvia una conversazione con un agente per vedere i log di timing qui in tempo reale.\",\"noTimingDataTitle\":\"Nessun dato disponibile\",\"notAvailable\":\"Non disponibile\",\"notCompatible\":\"non compatibile\",\"notConfigured\":\"Non configurata\",\"notConnected\":\"Non connesso\",\"notSynced\":\"Non sincronizzata\",\"notificationTitle\":{\"document_error\":\"Elaborazione documento fallita\",\"document_sync_removed\":\"Documenti rimossi da una cartella sincronizzata\",\"organization\":{\"created\":\"Organizzazione creata\",\"invite\":\"Invito organizzazione\",\"invite_accepted\":\"Invito accettato\",\"invite_rejected\":\"Invito rifiutato\",\"removed\":\"Rimosso dall'organizzazione\"},\"password_reset_requested\":\"È stata richiesta la reimpostazione della password\",\"two_factor\":{\"enabled\":\"Verifica in due passaggi attivata\",\"disabled\":\"Verifica in due passaggi disattivata\",\"app\":\"La verifica in due passaggi usa un'app\",\"reset\":\"Verifica in due passaggi reimpostata\",\"passkeyAdded\":\"Passkey aggiunta\",\"passkeyRemoved\":\"Passkey rimossa\"},\"web_source_pages_removed\":\"Pagine rimosse perché uscite dalla sitemap\",\"web_source_removal_held\":\"Pagine uscite dalla sitemap non rimosse\"},\"notificationType\":{\"api_key_expiring\":\"Scadenza API Key\",\"chat_blocked\":\"Chat bloccata\",\"chat_warning\":\"Avviso chat\",\"document_error\":\"Errore documento\",\"document_sync_removed\":\"Contenuti sincronizzati rimossi\",\"generic\":\"Generica\",\"organization\":\"Organizzazione\",\"password_reset_requested\":\"Reset password richiesto\",\"two_factor\":\"Sicurezza dell'accesso\",\"web_source_pages_removed\":\"Pagine uscite dalla sitemap\",\"web_source_removal_held\":\"Rimozione da confermare\"},\"oauthAuthorizationUrl\":\"URL di autorizzazione OAuth\",\"oauthClientId\":\"OAuth Client ID\",\"oauthClientSecret\":\"OAuth Client Secret\",\"oauthScopes\":\"Scopes OAuth\",\"oauthTokenUrl\":\"URL token OAuth\",\"ocrUsed\":\"OCR\",\"older\":\"Più vecchie\",\"onChannels\":\"WA · Teams\",\"openSource\":\"Apri sorgente\",\"operatingSystems\":\"Sistemi operativi\",\"or\":\"Oppure\",\"organization\":\"Organizzazione\",\"organizations\":\"Organizzazioni\",\"origin\":\"Origine\",\"originalMessage\":\"Risposta originale\",\"origins\":\"Sorgenti\",\"outOfStock\":\"Non disponibile\",\"output\":\"Output\",\"outputSchema\":\"Schema di Output\",\"pages\":\"Pagine\",\"passphrase\":\"Inserisci la parola chiave\",\"password\":\"Password\",\"paused\":\"In pausa\",\"peakHours\":\"Ore di punta\",\"perMillionTokens\":\"per milione di token\",\"period\":\"Periodo\",\"phaseBreakdown\":\"Breakdown fasi\",\"phone\":\"Telefono\",\"picture\":\"Immagine\",\"platformAssistant\":\"Assistente della piattaforma\",\"platformContext\":\"Contesto piattaforma\",\"postStreaming\":\"Post-streaming\",\"preStreaming\":\"Pre-streaming\",\"preferences\":\"Preferenze\",\"presencePenalty\":\"Penalità di Presenza\",\"preview\":\"Anteprima\",\"priceInput\":\"Prezzo input\",\"priceOutput\":\"Prezzo output\",\"priority\":\"Priorità\",\"priority_1\":\"Molto Bassa\",\"priority_2\":\"Bassa\",\"priority_3\":\"Normale\",\"priority_4\":\"Alta\",\"priority_5\":\"Critica\",\"privacy\":\"Privacy\",\"privacyPolicyNotice\":\"Informativa privacy\",\"processedAt\":\"Processato il\",\"processing\":\"Elaborazione in corso...\",\"profile\":\"Profilo\",\"prompt\":\"Prompt\",\"properties\":\"Proprietà\",\"provider\":\"Provider\",\"providerOrganizationId\":\"ID Provider\",\"providerTimeoutMs\":\"Timeout provider (ms)\",\"qdrantSync\":\"Sync Vettoriale\",\"qrCode\":\"Codice QR\",\"question\":\"Domanda\",\"rateLimits\":\"Limiti di utilizzo\",\"read\":\"Letto\",\"reasoning\":\"Reasoning\",\"reasoningAgentTester\":\"Test Agente di Ragionamento\",\"reasoningDetails\":\"Dettagli di ragionamento\",\"reasoningEffort\":\"Intensità ragionamento\",\"reasoningSummary\":\"Riepilogo ragionamento\",\"recommended\":\"Consigliato\",\"redundantChunks\":\"Chunk ridondanti\",\"referrerDomains\":\"Domini di provenienza\",\"refillAmount\":\"Importo ricarica\",\"released\":\"Rilascio\",\"rememberMe\":\"Ricordami\",\"replyWithoutText\":\"Risposta senza testo\",\"requestCount\":\"Richieste\",\"requestedAt\":\"Richiesta il\",\"requests\":\"Richieste\",\"requestsPerAgent\":\"Richieste per agente\",\"requestsUsed\":\"Richieste utilizzate\",\"required\":\"Obbligatorio\",\"requiredFields\":\"Campi obbligatori\",\"retired\":\"ritirato\",\"revisedMessage\":\"Risposta corretta\",\"right\":\"Destra\",\"riskScoreBands\":\"Fasce di rischio\",\"role\":\"Ruolo\",\"rootDocuments\":\"Senza cartella\",\"scheduledAt\":\"Programmata il\",\"schemaRootArray\":\"Array\",\"schemaRootObject\":\"Oggetto\",\"schemas\":\"Schemi\",\"screenCategories\":\"Risoluzione schermo\",\"searchAndExecution\":\"Ricerca ed esecuzione\",\"searchMode\":\"Modalità di Ricerca\",\"searchRecencyFilter\":\"Filtro temporale\",\"sectionChannelBreakdown\":\"Dettaglio per canale\",\"sectionConversationQuality\":\"Qualità conversazione\",\"sectionCostTrend\":\"Andamento costi mensili\",\"sectionDeviceContext\":\"Dispositivi e contesto (web e widget)\",\"sectionTraffic\":\"Traffico (web e widget)\",\"security\":\"Sicurezza\",\"selectAgent\":\"Seleziona agente\",\"selectedHint\":\"Selezionato\",\"sentiment\":\"Sentiment\",\"sentimentTrends\":\"Trend di sentiment\",\"serverInfo\":\"Info MCP server\",\"sessionExpiresIn\":\"Durata sessione (secondi)\",\"setPassword\":\"Imposta password\",\"settings\":\"Impostazioni\",\"sfApiVersion\":\"Versione API\",\"sfClientId\":\"Client ID\",\"sfClientSecret\":\"Client Secret\",\"sfExternalIdField\":\"Campo ID esterno\",\"sfInstanceUrl\":\"Instance URL\",\"shareWith\":\"Condividi con gli agenti\",\"showExtendedSteps\":\"Mostra i passaggi\",\"showing\":\"Mostrati\",\"similarity\":\"Similarità\",\"sitemapUrl\":\"URL Sitemap\",\"size\":\"Dimensione\",\"slowest\":\"Più lento\",\"slug\":\"Slug\",\"smartRanking\":\"Ranking Intelligente\",\"smoothStream\":\"Smooth streaming\",\"source\":\"Sorgente\",\"sources\":\"Fonti\",\"spokenExchange\":\"Scambiato a voce\",\"startDate\":\"Data inizio\",\"startUrl\":\"URL di Partenza\",\"status\":\"Stato\",\"steps\":\"step\",\"streaming\":\"Streaming\",\"style\":\"Stile\",\"subAgent\":\"Sotto-agente\",\"subject\":\"Oggetto\",\"syncStatus\":\"Stato\",\"targetAll\":\"Tutti gli utenti\",\"targetOrganization\":\"Organizzazione\",\"targetType\":\"Destinatario\",\"targetUser\":\"Utente specifico\",\"teams\":\"Microsoft Teams\",\"teamsAccentColor\":\"Colore del tema\",\"teamsAppId\":\"App ID (Microsoft)\",\"teamsAppPassword\":\"App password / client secret\",\"teamsAppTenantId\":\"Tenant ID\",\"teamsAppType\":\"Tipo app\",\"teamsAppVersion\":\"Versione app\",\"teamsDescriptionFull\":\"Descrizione completa\",\"teamsDescriptionShort\":\"Descrizione breve\",\"teamsDeveloperName\":\"Nome sviluppatore\",\"teamsManifestDetails\":\"Dettagli dell'app (mostrati in Teams)\",\"temperature\":\"Temperatura\",\"testConnection\":\"Verifica connessione\",\"testPlayground\":\"Test Playground\",\"textColor\":\"Colore del testo\",\"theme\":\"Tema\",\"thinking\":\"Pensiero\",\"thinkingBudget\":\"Budget ragionamento\",\"thinkingDisplay\":\"Visualizza ragionamento\",\"thinkingEffort\":\"Intensità ragionamento\",\"thinkingLevel\":\"Livello ragionamento\",\"thinkingType\":\"Tipo pensiero\",\"thisMonth\":\"Questo mese\",\"timelineSteps\":\"Timeline steps\",\"timeoutMs\":\"Timeout (ms)\",\"timezoneRegions\":\"Fuso orario\",\"title\":\"Titolo\",\"today\":\"Oggi\",\"tokens\":\"token\",\"tool\":\"Tool\",\"toolApprovalBadge\":\"Conferma utente\",\"toolName\":\"Nome del tool: {name}\",\"toolRequiresApproval\":\"Chiedi conferma all'utente\",\"toolWorkingSet\":\"Selezione dei tool\",\"toolWorkingSetMode\":\"Modalità\",\"tools\":\"Tool\",\"topPages\":\"Pagine principali\",\"topTopics\":\"Trending topics\",\"total\":\"Totale\",\"totalConversations\":\"Chat in totale\",\"totalCost\":\"Costo totale\",\"totalCostPartlyEstimated\":\"Costo totale, in parte stimato\",\"totalItemsCount\":\"Elementi: {total}\",\"totalMessages\":\"Messaggi in totale\",\"totalPages\":\"di {total}\",\"trustedOrigins\":\"Origini attendibili\",\"tuning\":\"Tuning\",\"type\":\"Tipo\",\"typeMain\":\"Main\",\"typeSub\":\"Sub\",\"uniqueUsers\":\"Utenti unici\",\"unitChat\":\"chat\",\"unitChatPerUser\":\"chat\",\"unitMessages\":\"messaggi\",\"unitMessagesPerChat\":\"messaggi\",\"unitUsers\":\"utenti\",\"unknown\":\"Sconosciuto\",\"unread\":\"Non letto\",\"updateProfile\":\"Aggiorna profilo\",\"updatedAt\":\"Aggiornato il\",\"upload\":\"Carica {index}/{total}\",\"url\":\"URL pagina web\",\"usage\":\"Utilizzo\",\"useBrowserEngine\":\"Utilizza il browser\",\"useExtractionStrategy\":\"Utilizza l'AI\",\"user\":\"Utente\",\"userInput\":\"Opzione selezionata\",\"userPrompt\":\"Richiesta utente\",\"userQuestion\":\"Domanda\",\"userTones\":\"Tono utente\",\"users\":\"Utenti\",\"utilityModel\":\"Modello per le funzioni interne\",\"value\":\"Valore\",\"version\":\"Versione\",\"video\":\"Video\",\"viewPdfPage\":\"Visualizza pagina PDF\",\"visibility\":\"Visibilità\",\"visualEditor\":\"Visuale\",\"voice\":\"Voce\",\"voiceCascadeTimeoutSeconds\":\"Tempo massimo per rispondere (secondi)\",\"voiceEnabled\":\"Conversazione vocale\",\"voiceFillerAfterSeconds\":\"Riempitivo dopo (secondi)\",\"voiceFillerMessage\":\"Frase di attesa\",\"voiceFirstMessage\":\"Frase di apertura\",\"voiceId\":\"Voce\",\"voiceIgnoreBackgroundVoices\":\"Ignora le voci di sottofondo\",\"voiceLanguage\":\"Lingua parlata\",\"voiceMaxSessionSeconds\":\"Durata massima sessione (secondi)\",\"voiceTurnEagerness\":\"Fine del turno\",\"voiceTurnTimeoutSeconds\":\"Pausa prima di riprendere la parola (secondi)\",\"vote\":\"Voto\",\"warnings\":\"Avvisi\",\"webSearch\":\"Ricerca web\",\"webSearchEnabled\":\"Abilita ricerca web\",\"webSearchNative\":\"Nativa\",\"webSearchProvider\":\"Provider di ricerca\",\"webhookUrl\":\"URL Webhook\",\"week\":\"Settimana\",\"welcome\":\"Benvenuto in {appName}!\",\"whatsapp\":\"WhatsApp\",\"whatsappAccessToken\":\"Access token\",\"whatsappAppSecret\":\"App secret\",\"whatsappPhoneNumberId\":\"Phone number ID\",\"whatsappVerifyToken\":\"Verify token\",\"white\":\"Bianco\",\"widgetUrl\":\"URL widget\",\"year\":\"Anno\",\"yes\":\"Sì\",\"yesterday\":\"Ieri\",\"zeroDataRetention\":\"Zero Data Retention (ZDR)\",\"webSourceWatch\":\"Controlla le pagine nuove\",\"webSourceInterval\":\"Frequenza del controllo\",\"webSourceRemoveMissing\":\"Rimuovi le pagine che escono dalla sitemap\"}"),
1016
1046
  language: {
1017
1047
  de: "Tedesco",
1018
1048
  en: "Inglese",
@@ -1091,7 +1121,7 @@ var Pn = {
1091
1121
  explicit: "Esplicita | Esplicite",
1092
1122
  extracted: "Estratta | Estratte"
1093
1123
  },
1094
- message: /* @__PURE__ */ JSON.parse("{\"accountLinkAlreadyLinked\":\"Questo account è già collegato a un altro utente. Accedi con quell'utente per scollegarlo prima.\",\"accountLinkCancelled\":\"Collegamento annullato sulla pagina del provider. Nulla è cambiato.\",\"accountLinkEmailMismatch\":\"Puoi collegare solo account che usano la stessa email del tuo profilo.\",\"accountLinkErrorWithCode\":\"Impossibile collegare l'account (codice: {code}). Riprova o segnala questo codice all'assistenza.\",\"accountLinkNotAllowed\":\"Questo provider non può essere collegato al tuo profilo: l'email dell'account non è verificata o il collegamento è disabilitato.\",\"accountLinkUserInfo\":\"Il provider non ha restituito un profilo utilizzabile, quindi nessun account è stato collegato. Riprova.\",\"accountUnlinked\":\"Account disconnesso\",\"agentAccessDenied\":\"Non hai accesso a questo agente\",\"agentAccessDeniedAction\":\"Vedi gli agenti disponibili\",\"agentActivated\":\"Agente attivato con successo\",\"agentDeactivated\":\"Agente disattivato con successo\",\"agentNotFound\":\"Agente non trovato\",\"agentsEmpty\":\"Nessun agente. Crea il primo per iniziare.\",\"analyzeChatError\":\"L'analisi non si è conclusa. Riprova fra qualche minuto.\",\"analyzeChatInProgress\":\"Analisi della conversazione in corso: su una lunga può volerci un minuto.\",\"analyzeChatSuccess\":\"Conversazione analizzata con successo\",\"apiKeyCreatedForUser\":\"Copiala adesso e consegnala all'utente su un canale sicuro: non verrà più mostrata.\",\"apiKeysEmpty\":\"Le chiavi che crei per l’accesso programmatico compaiono qui.\",\"apiToolsEmpty\":\"Nessun API tool. Aggiungi il primo per far chiamare all'agente un servizio esterno.\",\"banSuccess\":\"Utente bannato con successo\",\"blockChatSuccess\":\"Conversazione bloccata con successo\",\"bulkUnlinkAllDeleteConfirm\":\"{count} documenti verranno eliminati definitivamente perché non hanno altri agenti collegati. Vuoi procedere?\",\"bulkUnlinkMixedConfirm\":\"{unlinkCount} documenti verranno disassociati e {deleteCount} verranno eliminati definitivamente (non hanno altri agenti collegati). Vuoi procedere?\",\"cancelInvitationConfirm\":\"Sei sicuro di voler annullare l'invito per {email}?\",\"cancelInvitationSuccess\":\"Invito annullato con successo\",\"chatActionError\":\"L'azione non si è conclusa. Riprova fra qualche minuto.\",\"chatAnonymized\":\"Il contenuto di questa conversazione è stato cancellato (GDPR): restano solo le metriche aggregate.\",\"chatErrorBadRequest\":\"Si è verificato un errore con la richiesta. Inizia una nuova chat per continuare.\",\"chatErrorContextWindow\":\"La conversazione è diventata troppo lunga. Inizia una nuova chat per continuare.\",\"chatErrorConversationBlocked\":\"Questa conversazione è stata bloccata per violazione delle policy.\",\"chatErrorCreditExhausted\":\"Servizio non disponibile. Riprova più tardi.\",\"chatErrorGatewayDisabled\":\"Il modello di questo agente non è disponibile: l’organizzazione non usa il gateway AI della piattaforma. Un amministratore può spostare l’agente su uno dei modelli dell’organizzazione.\",\"chatErrorGatewayPromptTraining\":\"Il modello \\\"{model}\\\" non supporta l'opzione \\\"Disabilita addestramento prompt\\\". Disattiva questa impostazione nella configurazione del gateway dell'agente oppure scegli un modello compatibile.\",\"chatErrorGatewayZdr\":\"Il modello \\\"{model}\\\" non supporta l'opzione \\\"Zero Data Retention\\\". Disattiva ZDR nella configurazione del gateway dell'agente oppure scegli un modello compatibile.\",\"chatErrorGeneric\":\"Errore durante la richiesta. Se il problema persiste inizia una nuova chat. Riprovo tra {seconds}...\",\"chatErrorInternalServer\":\"Si è verificato un errore del server. Inizia una nuova chat per continuare.\",\"chatErrorModelUnavailable\":\"Il modello di questo agente ora non è disponibile: l’endpoint su cui gira è spento o non lo serve più. Un amministratore può riaccenderlo o spostare l’agente su un altro modello.\",\"chatErrorNotFound\":\"La conversazione non è più disponibile. Inizia una nuova chat per continuare.\",\"chatErrorOriginNotAllowed\":\"L'origine della richiesta non è consentita. Contatta l'amministratore del sistema.\",\"chatErrorRateLimit\":\"Il limite di richieste è stato superato. Riprovo tra {seconds} secondi...\",\"chatErrorRetrying\":\"Riprovo tra {seconds} secondi...\",\"checkYourEmail\":\"Verifica la tua casella email\",\"clearTimingLogsConfirm\":\"Svuotare tutti i log di timing?\",\"confirm\":\"Sei sicuro di voler procedere?\",\"confirmRefillCredits\":\"Sei sicuro di voler ricaricare il credito di {amount}?\",\"contentTruncated\":\"Contenuto troncato. Totale caratteri: {total}\",\"copied\":\"Copiato negli appunti\",\"crawlError\":\"Errore durante il crawling\",\"createFolderSuccess\":\"Cartella creata con successo\",\"defaultAgentWelcome\":\"Ciao! Come posso aiutarti oggi?\",\"defaultPrivacyPolicyNotice\":\"Inviando la richiesta accetti la nostra [Privacy Policy](https://www.iubenda.com/privacy-policy/46350192).\",\"deleteAgentConfirm\":\"Le sue cartelle vengono eliminate. Un documento che nessun altro agente usa viene eliminato, uno condiviso resta agli altri agenti.\",\"deleteAllMemoriesConfirm\":\"Spariscono definitivamente, ricerca semantica compresa.\",\"deleteAllNotificationsConfirm\":\"Eliminare tutte le notifiche?\",\"deleteBulkDocumentConfirm\":\"Vengono rimossi da tutti gli agenti collegati.\",\"deleteDocumentConfirm\":\"Viene rimosso da tutti gli agenti collegati.\",\"deleteDocumentConfirmWithAgents\":\"Sei sicuro di voler eliminare questo documento? Verrà rimosso dai seguenti agenti:{agents}\",\"deleteError\":\"Eliminazione non riuscita. Riprova.\",\"deleteFolderConfirm\":\"I documenti al suo interno vengono tolti da questo agente. Un documento che nessun altro agente usa viene eliminato.\",\"deleteFolderSuccess\":\"Cartella eliminata con successo\",\"deleteMyConversationsConfirm\":\"Non si può annullare.\",\"deleteNotificationConfirm\":\"Eliminare questa notifica?\",\"deleteProfileBlockedSoleOwner\":\"Sei l'unico proprietario di {organizations}. Trasferisci la proprietà o elimina le organizzazioni prima di poter eliminare l'account.\",\"deleteProfileConfirm\":\"Stai per eliminare definitivamente il tuo account: il profilo verrà anonimizzato e il contenuto delle tue conversazioni cancellato. Questa azione non può essere annullata.\",\"deleteProfileDescription\":\"Anonimizza il tuo account e cancella il contenuto delle tue conversazioni (diritto all'oblio).\",\"diagramRenderError\":\"Impossibile renderizzare il diagramma.\",\"documentRefreshPausedReason\":\"La pagina non risponde più, quindi l'aggiornamento automatico è in pausa. Aggiorna ora per riprovare.\",\"documentRefreshSet\":\"Aggiornamento automatico impostato su {updated} documenti, {skipped} saltati perché non sono pagine web\",\"documentRefreshStarted\":\"Aggiornamento avviato su {queued} documenti, {skipped} saltati\",\"documentsEmpty\":\"Questa cartella è ancora vuota. Aggiungi documenti dal menu Crea, oppure inizia con una cartella.\",\"documentsEmptyManaged\":\"Nessun file sincronizzato in questa cartella. Il contenuto arriva dalla sorgente collegata: se hai appena collegato la cartella, il primo import può richiedere qualche minuto.\",\"documentSourceLinked\":\"Cartella collegata. Il primo import parte tra poco.\",\"documentSourceNothingHere\":\"Non c’è nulla qui dentro.\",\"documentSourceStale\":\"Lo stato di questa cartella non è aggiornato: l’ultima lettura non è riuscita.\",\"documentSourceUnlinked\":\"Cartella scollegata. I documenti restano e ora si modificano come gli altri.\",\"embeddingActivated\":\"Embedding salvato: l’endpoint serve il modello dichiarato\",\"embeddingBackToPlatform\":\"I vettori si calcolano di nuovo sulla piattaforma\",\"embeddingIndexNotUpdated\":\"L’avanzamento non si aggiorna più.\",\"embeddingRemoved\":\"Embedding rimosso dall’endpoint\",\"empty\":\"Nessun elemento trovato\",\"endpointActivated\":\"Endpoint attivato con successo\",\"endpointDeactivated\":\"Endpoint disattivato con successo\",\"endpointsEmpty\":\"Nessun endpoint. Crea il primo per esporre l'agente via HTTP.\",\"error\":\"Errore\",\"errorRetry\":\"Qualcosa è andato storto. Riprova.\",\"exportError\":\"Errore durante l'esportazione dei dati\",\"exportFailed\":\"L'esportazione dei dati non è riuscita. Riprova più tardi.\",\"exportMyDataDescription\":\"Scarica una copia completa dei tuoi dati personali in formato ZIP (Art. 15 e 20 GDPR).\",\"exportRequested\":\"Stiamo preparando il tuo archivio: riceverai un'email con il link per scaricarlo.\",\"exportSuccess\":\"CSV esportato con successo\",\"feedbackSubmitError\":\"Invio fallito. Riprova per favore.\",\"feedbackSubmittedMessage\":\"Il tuo feedback è stato inviato con successo.\",\"feedbackSubmittedTitle\":\"Grazie!\",\"feedbacksEmpty\":\"I feedback che gli utenti lasciano sulle risposte dell'agente compariranno qui.\",\"fileAlreadyImported\":\"Già importato\",\"fileAlreadyImportedExistingList\":\"I seguenti file sono già presenti nell'organizzazione:\\n{names}\",\"fileAlreadyImportedLink\":\"Questo file è già stato importato. Vuoi collegarlo all'agente corrente o creare un nuovo documento?\",\"fileAlreadyImportedNewList\":\"I seguenti file sono nuovi e verranno importati normalmente:\\n{names}\",\"fileAlreadyImportedQuestion\":\"Vuoi collegare i file già presenti all'agente corrente?\",\"fileAlreadyLinkedToAgent\":\"I seguenti file sono già collegati all'agente corrente:\\n{names}\",\"fileLimitPerChat\":\"Hai raggiunto il limite di {max} file per questa conversazione.\",\"fileLimitPerMessage\":\"Puoi allegare al massimo {max} file per messaggio.\",\"foldersEmpty\":\"Nessuna cartella ancora. Crea la prima dalla pagina dei documenti per organizzarli.\",\"formRenderError\":\"Non è stato possibile mostrare il modulo. Chiedilo di nuovo e l'assistente lo invierà.\",\"gdprRequestsEmpty\":\"Le richieste di esportazione o cancellazione dei dati di questo utente compaiono qui.\",\"geolocationPermissionDenied\":\"Accesso alla posizione negato. Consentilo nelle impostazioni del browser.\",\"geolocationUnavailable\":\"Posizione non disponibile. Riprova o inserisci la posizione manualmente.\",\"getMcpServerInfoError\":\"Un errore è avvenuto durante il caricamento dei tool.\",\"importError\":\"Errore durante l'importazione\",\"importSuccess\":\"{count} documenti importati con successo\",\"importing\":\"Importazione in corso...\",\"info\":\"Informazione\",\"insufficientCredit\":\"Credito insufficiente. Riprova più tardi.\",\"insufficientCreditMessage\":\"Il tuo credito è insufficiente per completare questa operazione. Contatta l'amministratore del sistema per ulteriori informazioni.\",\"integrationConnected\":\"Connessione riuscita.\",\"integrationCreated\":\"Integrazione creata con successo\",\"integrationDisabled\":\"Integrazione disabilitata\",\"integrationDisconnected\":\"Connessione rimossa.\",\"integrationDisconnectConfirm\":\"Le cartelle sincronizzate vengono scollegate.\",\"integrationEnabled\":\"Integrazione abilitata\",\"integrationOAuthDenied\":\"La connessione è stata rifiutata, o manca ancora l’approvazione di un amministratore Microsoft 365.\",\"integrationOAuthFailed\":\"La connessione non è andata a buon fine.\",\"integrationOAuthStartFailed\":\"Non è stato possibile avviare la connessione.\",\"integrationRemoveConfirm\":\"La configurazione di questa integrazione viene rimossa.\",\"integrationTestFailed\":\"Verifica connessione fallita: {error}\",\"integrationTestSuccess\":\"Connessione verificata con successo\",\"integrationUpdated\":\"Integrazione aggiornata con successo\",\"invalidJson\":\"L'input non è un JSON valido\",\"invitationAccepted\":\"Invito accettato\",\"invitationAlreadyHandled\":\"Invito già gestito\",\"invitationDeclined\":\"Invito declinato\",\"invitationToJoinOrganization\":\"Sei stato invitato a unirti a\",\"invitationsEmpty\":\"Nessun invito in sospeso. Invita le persone dalla pagina dei membri.\",\"leadSubmitError\":\"Invio fallito. Riprova per favore.\",\"leadSubmittedMessage\":\"La richiesta è stata inviata con successo.\",\"leadSubmittedTitle\":\"Grazie!\",\"leadsEmpty\":\"I lead raccolti dall'agente durante le conversazioni compariranno qui.\",\"leftOrganization\":\"Hai lasciato l'organizzazione con successo\",\"loadConversationsError\":\"Impossibile caricare le conversazioni\",\"loading\":\"Caricamento...\",\"loadingError\":\"Errore durante il caricamento\",\"mcpServerCheckError\":\"Errore durante la verifica del server MCP: {error}\",\"mcpServerCheckSuccess\":\"Verifica del server MCP riuscita\",\"mcpServerInvalidEndpoint\":\"Questo URL non punta a un endpoint MCP: il server ha risposto con una pagina web. Controlla il percorso, di solito i server MCP lo espongono sotto /mcp.\",\"mcpServersEmpty\":\"Nessun server MCP. Collega il primo per dare nuovi strumenti all'agente.\",\"membersEmpty\":\"Nessun membro. Invita il primo per iniziare.\",\"memoriesEmpty\":\"Le memorie che l'agente salva su questo utente durante le conversazioni compariranno qui.\",\"memoryNotSynced\":\"Memoria non sincronizzata con la ricerca semantica: non viene considerata nelle risposte finché lo sweep di riparazione non la ripristina.\",\"modelDiscoveryUnavailable\":\"Questo endpoint non fornisce l'elenco dei suoi modelli: inserisci gli id a mano.\",\"modelDiscoveryFailed\":\"Non siamo riusciti a leggere l'elenco dei modelli dall'endpoint: vedi solo quelli già salvati.\",\"modelPricesUnchanged\":\"Nessun prezzo è cambiato.\",\"modelPricesUpdated\":\"Aggiornato il prezzo di un modello: {models}. | Aggiornati i prezzi di {count} modelli: {models}.\",\"modelProviderDeleted\":\"Endpoint eliminato.\",\"moveDocumentSuccess\":\"Documento spostato con successo\",\"noActiveSessions\":\"Nessuna altra sessione attiva\",\"noApiKeys\":\"Nessuna chiave API\",\"noChats\":\"Nessuna chat disponibile\",\"noConnectedAccounts\":\"Nessun account collegato\",\"noConversations\":\"Nessuna conversazione trovata\",\"noConversationsHint\":\"Inizia una nuova chat per vederla comparire qui.\",\"noCreditsData\":\"Nessun dato crediti disponibile\",\"noEndpointLogs\":\"Nessun log endpoint disponibile\",\"noEndpointModels\":\"Nessun modello disponibile: l'endpoint non ne elenca nessuno.\",\"modelRemoved\":\"Modello rimosso.\",\"noGdprRequests\":\"Nessuna richiesta GDPR\",\"noLinkedAgents\":\"Nessun agente collegato\",\"noNotifications\":\"Nessuna notifica\",\"noOptions\":\"Nessun elemento\",\"noOrganizations\":\"Nessuna organizzazione\",\"noResults\":\"Nessun risultato trovato\",\"noSearchResults\":\"Nessun elemento corrisponde alla ricerca. Cancellala per vedere tutto.\",\"notificationsEmpty\":\"Nessuna notifica inviata. Crea la prima per raggiungere i tuoi utenti.\",\"oauthConfigIncomplete\":\"Configurazione OAuth incompleta. Imposta il Client ID nelle impostazioni del server MCP.\",\"oauthConnected\":\"Autorizzazione OAuth completata con successo\",\"oauthError\":\"Errore durante l'autorizzazione OAuth\",\"organizationDisconnected\":\"Né il gateway della piattaforma né un endpoint proprio servono questa organizzazione, quindi i suoi agenti non rispondono.\",\"organizationMembersEmpty\":\"Nessun membro. Aggiungi il primo per iniziare.\",\"organizationNotSelected\":\"Nessuna organizzazione selezionata\",\"organizationsEmpty\":\"Nessuna organizzazione. Crea la prima per iniziare.\",\"pageNotFound\":\"Pagina non trovata\",\"passwordChangeSuccess\":\"Password cambiata con successo\",\"passwordResetSuccess\":\"Password reimpostata con successo\",\"profileOrganizationsEmpty\":\"Le organizzazioni di cui fai parte compaiono qui.\",\"readError\":\"Errore durante la lettura\",\"reasoningAgent\":\"Questo è un agente di ragionamento. Non è progettato per mantenere la storia della conversazione, ogni messaggio è processato indipendentemente.\",\"recoverPasswordSuccess\":\"Email di recupero inviata con successo\",\"refillFailed\":\"Ricarica fallita. Riprova più tardi.\",\"refillSuccess\":\"Ricarica completata con successo\",\"refreshSuccess\":\"Aggiornamento completato con successo\",\"releaseNotesEmpty\":\"Nessuna nota di rilascio pubblicata. Gli aggiornamenti compariranno qui man mano che escono.\",\"removeSuccess\":\"Eliminazione completata con successo\",\"renameFolderSuccess\":\"Cartella rinominata con successo\",\"revisedAnswersEmpty\":\"Nessuna risposta revisionata. Crea la prima per insegnare all'agente una risposta migliore.\",\"selectedCount\":\"{count} di {total} selezionati\",\"sendInvitationConfirm\":\"Sei sicuro di voler inviare nuovamente l'invito a {email}?\",\"sessionRevoked\":\"Sessione disconnessa\",\"sessionsEmpty\":\"Un accesso da un altro dispositivo o browser apre una nuova sessione, elencata qui.\",\"setPasswordDescription\":\"Per ora accedi solo tramite un account collegato. Imposta una password per entrare anche con email e password: ti inviamo un link per crearla.\",\"setPasswordLinkSent\":\"Ti abbiamo mandato il link a {email}.\",\"sharedSuccess\":\"Documento condiviso con successo\",\"sitemapUrlRequired\":\"L'URL della sitemap è richiesto\",\"startUrlRequired\":\"L'URL di partenza è richiesto\",\"subAgentsEmpty\":\"Collega un agente per delegargli una parte della conversazione.\",\"submitError\":\"Errore durante il salvataggio\",\"submitSuccess\":\"Salvataggio completato con successo\",\"success\":\"Successo\",\"testExecutionError\":\"Errore nell'esecuzione del test\",\"toolNameAutoGenerated\":\"Il nome del tool verrà generato in automatico\",\"typeToSearch\":\"Inizia a digitare per cercare...\",\"unauthorized\":\"Non hai i permessi per gestire i canali.\",\"unbanSuccess\":\"Utente sbannato con successo\",\"unblockChatSuccess\":\"Conversazione sbloccata con successo\",\"unlinkAgentConfirm\":\"Il documento resta disponibile per gli altri agenti collegati.\",\"unlinkDocumentConfirm\":\"Resta disponibile per gli altri agenti collegati.\",\"unlinkLastAgentDeleteConfirm\":\"Il documento viene eliminato definitivamente, perché nessun altro agente è collegato.\",\"unlinkSuccess\":\"Documento disassociato con successo\",\"unlinkSyncedFolderConfirm\":\"La sincronizzazione si ferma. La cartella e i suoi documenti restano all'agente e da ora si modificano come gli altri: per toglierli, elimina la cartella.\",\"unsavedChanges\":\"Salva o annulla le modifiche prima\",\"urlAlreadyImported\":\"Già importato\",\"urlAlreadyImportedLink\":\"Questo URL è già stato importato. Vuoi collegarlo all'agente corrente?\",\"userApiKeysEmpty\":\"Le chiavi che questo utente crea dal proprio profilo per l'accesso programmatico compariranno qui.\",\"userChatsEmpty\":\"Le conversazioni di questo utente con qualsiasi agente compariranno qui.\",\"userOrganizationsEmpty\":\"L'utente non appartiene ancora a nessuna organizzazione. Aggiungi la prima.\",\"userUpdateSuccess\":\"Profilo utente aggiornato con successo\",\"usersEmpty\":\"Nessun utente. Crea il primo per iniziare.\",\"voiceCancelled\":\"Ho annullato.\",\"voiceConfirmed\":\"Confermo.\",\"voiceConnecting\":\"Connessione…\",\"voiceConnectionDone\":\"Ho completato il collegamento.\",\"voiceFailed\":\"La sessione vocale si è interrotta\",\"voiceInterrupted\":\"Riprova, oppure continua per iscritto.\",\"voiceListening\":\"In ascolto\",\"voiceLocationRefused\":\"Preferisco non condividere la mia posizione.\",\"voiceLocationShared\":\"La mia posizione è {place}.\",\"voiceMuted\":\"Microfono disattivato\",\"voiceNoAnswer\":\"L'agente non è riuscito a produrre una risposta per questa chiamata. Riprova, oppure continua per iscritto.\",\"voiceSpeaking\":\"L'agente sta parlando\",\"voiceTookTooLong\":\"La risposta ha impiegato troppo tempo per la chiamata. Riprova, oppure continua per iscritto: la risposta comparirà qui appena pronta.\",\"warning\":\"Attenzione\"}"),
1124
+ message: /* @__PURE__ */ JSON.parse("{\"accountLinkAlreadyLinked\":\"Questo account è già collegato a un altro utente. Accedi con quell'utente per scollegarlo prima.\",\"accountLinkCancelled\":\"Collegamento annullato sulla pagina del provider. Nulla è cambiato.\",\"accountLinkEmailMismatch\":\"Puoi collegare solo account che usano la stessa email del tuo profilo.\",\"accountLinkErrorWithCode\":\"Impossibile collegare l'account (codice: {code}). Riprova o segnala questo codice all'assistenza.\",\"accountLinkNotAllowed\":\"Questo provider non può essere collegato al tuo profilo: l'email dell'account non è verificata o il collegamento è disabilitato.\",\"accountLinkUserInfo\":\"Il provider non ha restituito un profilo utilizzabile, quindi nessun account è stato collegato. Riprova.\",\"accountUnlinked\":\"Account disconnesso\",\"agentAccessDenied\":\"Non hai accesso a questo agente\",\"agentAccessDeniedAction\":\"Vedi gli agenti disponibili\",\"agentActivated\":\"Agente attivato con successo\",\"agentDeactivated\":\"Agente disattivato con successo\",\"agentNotFound\":\"Agente non trovato\",\"agentsEmpty\":\"Nessun agente. Crea il primo per iniziare.\",\"analyzeChatError\":\"L'analisi non si è conclusa. Riprova fra qualche minuto.\",\"analyzeChatInProgress\":\"Analisi della conversazione in corso: su una lunga può volerci un minuto.\",\"analyzeChatSuccess\":\"Conversazione analizzata con successo\",\"apiKeyCreatedForUser\":\"Copiala adesso e consegnala all'utente su un canale sicuro: non verrà più mostrata.\",\"apiKeysEmpty\":\"Le chiavi che crei per l’accesso programmatico compaiono qui.\",\"apiToolsEmpty\":\"Nessun API tool. Aggiungi il primo per far chiamare all'agente un servizio esterno.\",\"banSuccess\":\"Utente bannato con successo\",\"blockChatSuccess\":\"Conversazione bloccata con successo\",\"bulkUnlinkAllDeleteConfirm\":\"{count} documenti verranno eliminati definitivamente perché non hanno altri agenti collegati. Vuoi procedere?\",\"bulkUnlinkMixedConfirm\":\"{unlinkCount} documenti verranno disassociati e {deleteCount} verranno eliminati definitivamente (non hanno altri agenti collegati). Vuoi procedere?\",\"cancelInvitationConfirm\":\"Sei sicuro di voler annullare l'invito per {email}?\",\"cancelInvitationSuccess\":\"Invito annullato con successo\",\"chatActionError\":\"L'azione non si è conclusa. Riprova fra qualche minuto.\",\"chatAnonymized\":\"Il contenuto di questa conversazione è stato cancellato (GDPR): restano solo le metriche aggregate.\",\"chatErrorBadRequest\":\"Si è verificato un errore con la richiesta. Inizia una nuova chat per continuare.\",\"chatErrorContextWindow\":\"La conversazione è diventata troppo lunga. Inizia una nuova chat per continuare.\",\"chatErrorConversationBlocked\":\"Questa conversazione è stata bloccata per violazione delle policy.\",\"chatErrorCreditExhausted\":\"Servizio non disponibile. Riprova più tardi.\",\"chatErrorGatewayDisabled\":\"Il modello di questo agente non è disponibile: l’organizzazione non usa il gateway AI della piattaforma. Un amministratore può spostare l’agente su uno dei modelli dell’organizzazione.\",\"chatErrorGatewayPromptTraining\":\"Il modello \\\"{model}\\\" non supporta l'opzione \\\"Disabilita addestramento prompt\\\". Disattiva questa impostazione nella configurazione del gateway dell'agente oppure scegli un modello compatibile.\",\"chatErrorGatewayZdr\":\"Il modello \\\"{model}\\\" non supporta l'opzione \\\"Zero Data Retention\\\". Disattiva ZDR nella configurazione del gateway dell'agente oppure scegli un modello compatibile.\",\"chatErrorGeneric\":\"Errore durante la richiesta. Se il problema persiste inizia una nuova chat. Riprovo tra {seconds}...\",\"chatErrorInternalServer\":\"Si è verificato un errore del server. Inizia una nuova chat per continuare.\",\"chatErrorModelUnavailable\":\"Il modello di questo agente ora non è disponibile: l’endpoint su cui gira è spento o non lo serve più. Un amministratore può riaccenderlo o spostare l’agente su un altro modello.\",\"chatErrorNotFound\":\"La conversazione non è più disponibile. Inizia una nuova chat per continuare.\",\"chatErrorOriginNotAllowed\":\"L'origine della richiesta non è consentita. Contatta l'amministratore del sistema.\",\"chatErrorRateLimit\":\"Il limite di richieste è stato superato. Riprovo tra {seconds} secondi...\",\"chatErrorRetrying\":\"Riprovo tra {seconds} secondi...\",\"checkYourEmail\":\"Verifica la tua casella email\",\"clearTimingLogsConfirm\":\"Svuotare tutti i log di timing?\",\"confirm\":\"Sei sicuro di voler procedere?\",\"confirmRefillCredits\":\"Sei sicuro di voler ricaricare il credito di {amount}?\",\"contentTruncated\":\"Contenuto troncato. Totale caratteri: {total}\",\"copied\":\"Copiato negli appunti\",\"crawlError\":\"Errore durante il crawling\",\"createFolderSuccess\":\"Cartella creata con successo\",\"defaultAgentWelcome\":\"Ciao! Come posso aiutarti oggi?\",\"defaultPrivacyPolicyNotice\":\"Inviando la richiesta accetti la nostra [Privacy Policy](https://www.iubenda.com/privacy-policy/46350192).\",\"deleteAgentConfirm\":\"Le sue cartelle vengono eliminate. Un documento che nessun altro agente usa viene eliminato, uno condiviso resta agli altri agenti.\",\"deleteAllMemoriesConfirm\":\"Spariscono definitivamente, ricerca semantica compresa.\",\"deleteAllNotificationsConfirm\":\"Eliminare tutte le notifiche?\",\"deleteBulkDocumentConfirm\":\"Vengono rimossi da tutti gli agenti collegati.\",\"deleteDocumentConfirm\":\"Viene rimosso da tutti gli agenti collegati.\",\"deleteDocumentConfirmWithAgents\":\"Sei sicuro di voler eliminare questo documento? Verrà rimosso dai seguenti agenti:{agents}\",\"deleteError\":\"Eliminazione non riuscita. Riprova.\",\"deleteFolderConfirm\":\"I documenti al suo interno vengono tolti da questo agente. Un documento che nessun altro agente usa viene eliminato.\",\"deleteFolderSuccess\":\"Cartella eliminata con successo\",\"deleteMyConversationsConfirm\":\"Non si può annullare.\",\"deleteNotificationConfirm\":\"Eliminare questa notifica?\",\"deleteProfileBlockedSoleOwner\":\"Sei l'unico proprietario di {organizations}. Trasferisci la proprietà o elimina le organizzazioni prima di poter eliminare l'account.\",\"deleteProfileConfirm\":\"Stai per eliminare definitivamente il tuo account: il profilo verrà anonimizzato e il contenuto delle tue conversazioni cancellato. Questa azione non può essere annullata.\",\"deleteProfileDescription\":\"Anonimizza il tuo account e cancella il contenuto delle tue conversazioni (diritto all'oblio).\",\"diagramRenderError\":\"Impossibile renderizzare il diagramma.\",\"documentRefreshPausedReason\":\"La pagina non risponde più, quindi l'aggiornamento automatico è in pausa. Aggiorna ora per riprovare.\",\"documentRefreshSet\":\"Aggiornamento automatico impostato su {updated} documenti, {skipped} saltati perché non sono pagine web\",\"documentRefreshStarted\":\"Aggiornamento avviato su {queued} documenti, {skipped} saltati\",\"documentsEmpty\":\"Questa cartella è ancora vuota. Aggiungi documenti dal menu Crea, oppure inizia con una cartella.\",\"documentsEmptyManaged\":\"Nessun file sincronizzato in questa cartella. Il contenuto arriva dalla sorgente collegata: se hai appena collegato la cartella, il primo import può richiedere qualche minuto.\",\"documentSourceLinked\":\"Cartella collegata. Il primo import parte tra poco.\",\"documentSourceNothingHere\":\"Non c’è nulla qui dentro.\",\"documentSourceStale\":\"Lo stato di questa cartella non è aggiornato: l’ultima lettura non è riuscita.\",\"documentSourceUnlinked\":\"Cartella scollegata. I documenti restano e ora si modificano come gli altri.\",\"embeddingActivated\":\"Embedding salvato: l’endpoint serve il modello dichiarato\",\"embeddingBackToPlatform\":\"I vettori si calcolano di nuovo sulla piattaforma\",\"embeddingIndexNotUpdated\":\"L’avanzamento non si aggiorna più.\",\"embeddingRemoved\":\"Embedding rimosso dall’endpoint\",\"empty\":\"Nessun elemento trovato\",\"endpointActivated\":\"Endpoint attivato con successo\",\"endpointDeactivated\":\"Endpoint disattivato con successo\",\"endpointsEmpty\":\"Nessun endpoint. Crea il primo per esporre l'agente via HTTP.\",\"error\":\"Errore\",\"errorRetry\":\"Qualcosa è andato storto. Riprova.\",\"exportError\":\"Errore durante l'esportazione dei dati\",\"exportFailed\":\"L'esportazione dei dati non è riuscita. Riprova più tardi.\",\"exportMyDataDescription\":\"Scarica una copia completa dei tuoi dati personali in formato ZIP (Art. 15 e 20 GDPR).\",\"exportRequested\":\"Stiamo preparando il tuo archivio: riceverai un'email con il link per scaricarlo.\",\"exportSuccess\":\"CSV esportato con successo\",\"feedbackSubmitError\":\"Invio fallito. Riprova per favore.\",\"feedbackSubmittedMessage\":\"Il tuo feedback è stato inviato con successo.\",\"feedbackSubmittedTitle\":\"Grazie!\",\"feedbacksEmpty\":\"I feedback che gli utenti lasciano sulle risposte dell'agente compariranno qui.\",\"fileAlreadyImported\":\"Già importato\",\"fileAlreadyImportedExistingList\":\"I seguenti file sono già presenti nell'organizzazione:\\n{names}\",\"fileAlreadyImportedLink\":\"Questo file è già stato importato. Vuoi collegarlo all'agente corrente o creare un nuovo documento?\",\"fileAlreadyImportedNewList\":\"I seguenti file sono nuovi e verranno importati normalmente:\\n{names}\",\"fileAlreadyImportedQuestion\":\"Vuoi collegare i file già presenti all'agente corrente?\",\"fileAlreadyLinkedToAgent\":\"I seguenti file sono già collegati all'agente corrente:\\n{names}\",\"fileLimitPerChat\":\"Hai raggiunto il limite di {max} file per questa conversazione.\",\"fileLimitPerMessage\":\"Puoi allegare al massimo {max} file per messaggio.\",\"foldersEmpty\":\"Nessuna cartella ancora. Crea la prima dalla pagina dei documenti per organizzarli.\",\"formRenderError\":\"Non è stato possibile mostrare il modulo. Chiedilo di nuovo e l'assistente lo invierà.\",\"gdprRequestsEmpty\":\"Le richieste di esportazione o cancellazione dei dati di questo utente compaiono qui.\",\"geolocationPermissionDenied\":\"Accesso alla posizione negato. Consentilo nelle impostazioni del browser.\",\"geolocationUnavailable\":\"Posizione non disponibile. Riprova o inserisci la posizione manualmente.\",\"getMcpServerInfoError\":\"Un errore è avvenuto durante il caricamento dei tool.\",\"importError\":\"Errore durante l'importazione\",\"importSuccess\":\"{count} documenti importati con successo\",\"importing\":\"Importazione in corso...\",\"info\":\"Informazione\",\"insufficientCredit\":\"Credito insufficiente. Riprova più tardi.\",\"insufficientCreditMessage\":\"Il tuo credito è insufficiente per completare questa operazione. Contatta l'amministratore del sistema per ulteriori informazioni.\",\"integrationConnected\":\"Connessione riuscita.\",\"integrationCreated\":\"Integrazione creata con successo\",\"integrationDisabled\":\"Integrazione disabilitata\",\"integrationDisconnected\":\"Connessione rimossa.\",\"integrationDisconnectConfirm\":\"Le cartelle sincronizzate vengono scollegate.\",\"integrationEnabled\":\"Integrazione abilitata\",\"integrationOAuthDenied\":\"La connessione è stata rifiutata, o manca ancora l’approvazione di un amministratore Microsoft 365.\",\"integrationOAuthFailed\":\"La connessione non è andata a buon fine.\",\"integrationOAuthStartFailed\":\"Non è stato possibile avviare la connessione.\",\"integrationRemoveConfirm\":\"La configurazione di questa integrazione viene rimossa.\",\"integrationTestFailed\":\"Verifica connessione fallita: {error}\",\"integrationTestSuccess\":\"Connessione verificata con successo\",\"integrationUpdated\":\"Integrazione aggiornata con successo\",\"invalidJson\":\"L'input non è un JSON valido\",\"invitationAccepted\":\"Invito accettato\",\"invitationAlreadyHandled\":\"Invito già gestito\",\"invitationDeclined\":\"Invito declinato\",\"invitationToJoinOrganization\":\"Sei stato invitato a unirti a\",\"invitationsEmpty\":\"Nessun invito in sospeso. Invita le persone dalla pagina dei membri.\",\"leadSubmitError\":\"Invio fallito. Riprova per favore.\",\"leadSubmittedMessage\":\"La richiesta è stata inviata con successo.\",\"leadSubmittedTitle\":\"Grazie!\",\"leadsEmpty\":\"I lead raccolti dall'agente durante le conversazioni compariranno qui.\",\"leftOrganization\":\"Hai lasciato l'organizzazione con successo\",\"loadConversationsError\":\"Impossibile caricare le conversazioni\",\"loading\":\"Caricamento...\",\"loadingError\":\"Errore durante il caricamento\",\"mcpServerCheckError\":\"Errore durante la verifica del server MCP: {error}\",\"mcpServerCheckSuccess\":\"Verifica del server MCP riuscita\",\"mcpServerInvalidEndpoint\":\"Questo URL non punta a un endpoint MCP: il server ha risposto con una pagina web. Controlla il percorso, di solito i server MCP lo espongono sotto /mcp.\",\"mcpServersEmpty\":\"Nessun server MCP. Collega il primo per dare nuovi strumenti all'agente.\",\"membersEmpty\":\"Nessun membro. Invita il primo per iniziare.\",\"memoriesEmpty\":\"Le memorie che l'agente salva su questo utente durante le conversazioni compariranno qui.\",\"memoryNotSynced\":\"Memoria non sincronizzata con la ricerca semantica: non viene considerata nelle risposte finché lo sweep di riparazione non la ripristina.\",\"modelDiscoveryUnavailable\":\"Questo endpoint non fornisce l'elenco dei suoi modelli: inserisci gli id a mano.\",\"modelDiscoveryFailed\":\"Non siamo riusciti a leggere l'elenco dei modelli dall'endpoint: vedi solo quelli già salvati.\",\"modelPricesUnchanged\":\"Nessun prezzo è cambiato.\",\"modelPricesUpdated\":\"Aggiornato il prezzo di un modello: {models}. | Aggiornati i prezzi di {count} modelli: {models}.\",\"modelProviderDeleted\":\"Endpoint eliminato.\",\"moveDocumentSuccess\":\"Documento spostato con successo\",\"noActiveSessions\":\"Nessuna altra sessione attiva\",\"noApiKeys\":\"Nessuna chiave API\",\"noChats\":\"Nessuna chat disponibile\",\"noConnectedAccounts\":\"Nessun account collegato\",\"noConversations\":\"Nessuna conversazione trovata\",\"noConversationsHint\":\"Inizia una nuova chat per vederla comparire qui.\",\"noCreditsData\":\"Nessun dato crediti disponibile\",\"noEndpointLogs\":\"Nessun log endpoint disponibile\",\"noEndpointModels\":\"Nessun modello disponibile: l'endpoint non ne elenca nessuno.\",\"modelRemoved\":\"Modello rimosso.\",\"noGdprRequests\":\"Nessuna richiesta GDPR\",\"noLinkedAgents\":\"Nessun agente collegato\",\"noNotifications\":\"Nessuna notifica\",\"noOptions\":\"Nessun elemento\",\"noOrganizations\":\"Nessuna organizzazione\",\"noResults\":\"Nessun risultato trovato\",\"noSearchResults\":\"Nessun elemento corrisponde alla ricerca. Cancellala per vedere tutto.\",\"notificationsEmpty\":\"Nessuna notifica inviata. Crea la prima per raggiungere i tuoi utenti.\",\"oauthConfigIncomplete\":\"Configurazione OAuth incompleta. Imposta il Client ID nelle impostazioni del server MCP.\",\"oauthConnected\":\"Autorizzazione OAuth completata con successo\",\"oauthError\":\"Errore durante l'autorizzazione OAuth\",\"organizationDisconnected\":\"Né il gateway della piattaforma né un endpoint proprio servono questa organizzazione, quindi i suoi agenti non rispondono.\",\"organizationMembersEmpty\":\"Nessun membro. Aggiungi il primo per iniziare.\",\"organizationNotSelected\":\"Nessuna organizzazione selezionata\",\"organizationsEmpty\":\"Nessuna organizzazione. Crea la prima per iniziare.\",\"pageNotFound\":\"Pagina non trovata\",\"passwordChangeSuccess\":\"Password cambiata con successo\",\"passwordResetSuccess\":\"Password reimpostata con successo\",\"profileOrganizationsEmpty\":\"Le organizzazioni di cui fai parte compaiono qui.\",\"readError\":\"Errore durante la lettura\",\"reasoningAgent\":\"Questo è un agente di ragionamento. Non è progettato per mantenere la storia della conversazione, ogni messaggio è processato indipendentemente.\",\"recoverPasswordSuccess\":\"Email di recupero inviata con successo\",\"refillFailed\":\"Ricarica fallita. Riprova più tardi.\",\"refillSuccess\":\"Ricarica completata con successo\",\"refreshSuccess\":\"Aggiornamento completato con successo\",\"releaseNotesEmpty\":\"Nessuna nota di rilascio pubblicata. Gli aggiornamenti compariranno qui man mano che escono.\",\"removeSuccess\":\"Eliminazione completata con successo\",\"renameFolderSuccess\":\"Cartella rinominata con successo\",\"revisedAnswersEmpty\":\"Nessuna risposta revisionata. Crea la prima per insegnare all'agente una risposta migliore.\",\"selectedCount\":\"{count} di {total} selezionati\",\"sendInvitationConfirm\":\"Sei sicuro di voler inviare nuovamente l'invito a {email}?\",\"sessionRevoked\":\"Sessione disconnessa\",\"sessionsEmpty\":\"Un accesso da un altro dispositivo o browser apre una nuova sessione, elencata qui.\",\"setPasswordDescription\":\"Per ora accedi solo tramite un account collegato. Imposta una password per entrare anche con email e password: ti inviamo un link per crearla.\",\"setPasswordLinkSent\":\"Ti abbiamo mandato il link a {email}.\",\"sharedSuccess\":\"Documento condiviso con successo\",\"sitemapUrlRequired\":\"L'URL della sitemap è richiesto\",\"startUrlRequired\":\"L'URL di partenza è richiesto\",\"subAgentsEmpty\":\"Collega un agente per delegargli una parte della conversazione.\",\"submitError\":\"Errore durante il salvataggio\",\"submitSuccess\":\"Salvataggio completato con successo\",\"success\":\"Successo\",\"testExecutionError\":\"Errore nell'esecuzione del test\",\"toolNameAutoGenerated\":\"Il nome del tool verrà generato in automatico\",\"typeToSearch\":\"Inizia a digitare per cercare...\",\"unauthorized\":\"Non hai i permessi per gestire i canali.\",\"unbanSuccess\":\"Utente sbannato con successo\",\"unblockChatSuccess\":\"Conversazione sbloccata con successo\",\"unlinkAgentConfirm\":\"Il documento resta disponibile per gli altri agenti collegati.\",\"unlinkDocumentConfirm\":\"Resta disponibile per gli altri agenti collegati.\",\"unlinkLastAgentDeleteConfirm\":\"Il documento viene eliminato definitivamente, perché nessun altro agente è collegato.\",\"unlinkSuccess\":\"Documento disassociato con successo\",\"unlinkSyncedFolderConfirm\":\"La sincronizzazione si ferma. La cartella e i suoi documenti restano all'agente e da ora si modificano come gli altri: per toglierli, elimina la cartella.\",\"unsavedChanges\":\"Salva o annulla le modifiche prima\",\"urlAlreadyImported\":\"Già importato\",\"urlAlreadyImportedLink\":\"Questo URL è già stato importato. Vuoi collegarlo all'agente corrente?\",\"userApiKeysEmpty\":\"Le chiavi che questo utente crea dal proprio profilo per l'accesso programmatico compariranno qui.\",\"userChatsEmpty\":\"Le conversazioni di questo utente con qualsiasi agente compariranno qui.\",\"userOrganizationsEmpty\":\"L'utente non appartiene ancora a nessuna organizzazione. Aggiungi la prima.\",\"userUpdateSuccess\":\"Profilo utente aggiornato con successo\",\"usersEmpty\":\"Nessun utente. Crea il primo per iniziare.\",\"voiceCancelled\":\"Ho annullato.\",\"voiceConfirmed\":\"Confermo.\",\"voiceConnecting\":\"Connessione…\",\"voiceConnectionDone\":\"Ho completato il collegamento.\",\"voiceFailed\":\"La sessione vocale si è interrotta\",\"voiceInterrupted\":\"Riprova, oppure continua per iscritto.\",\"voiceListening\":\"In ascolto\",\"voiceLocationRefused\":\"Preferisco non condividere la mia posizione.\",\"voiceLocationShared\":\"La mia posizione è {place}.\",\"voiceMuted\":\"Microfono disattivato\",\"voiceNoAnswer\":\"L'agente non è riuscito a produrre una risposta per questa chiamata. Riprova, oppure continua per iscritto.\",\"voiceSpeaking\":\"L'agente sta parlando\",\"voiceTookTooLong\":\"La risposta ha impiegato troppo tempo per la chiamata. Riprova, oppure continua per iscritto: la risposta comparirà qui appena pronta.\",\"warning\":\"Attenzione\",\"webSourceCreated\":\"Sorgente creata: la cartella «{name}» riceverà le pagine nuove.\",\"webSourceCreateError\":\"Non è stato possibile creare la sorgente, e nessuna pagina è stata importata.\",\"webSourceEditable\":\"Le pagine scoperte restano modificabili. Scollegare la sorgente le lascia dove sono, con il loro aggiornamento automatico.\",\"webSourceRemovalHeld\":\"La sitemap non elenca più {count} pagine: sono troppe in una volta per rimuoverle senza un controllo, e non è stato rimosso niente.\",\"webSourceConfirmRemovalQuestion\":\"Il prossimo controllo toglie dalla knowledge base le pagine che la sitemap non elenca più, fino a {count}. Il loro contenuto resta nel database.\",\"unlinkWebSourceConfirm\":\"La sorgente smette di cercare pagine nuove. La cartella e le sue pagine restano, con il loro aggiornamento automatico.\"}"),
1095
1125
  messagePart: {
1096
1126
  enableTools: "Attivazione dei tool...",
1097
1127
  expandChunkContext: "Lettura di altro contesto...",
@@ -1244,6 +1274,7 @@ var Pn = {
1244
1274
  "price-list-unavailable": "Il listino del gateway ora non è raggiungibile: riprova, o scrivi il prezzo a mano.",
1245
1275
  "provider-request-failed": "Il provider esterno ha rifiutato la richiesta.",
1246
1276
  "rate-limit-exceeded": "Troppe richieste. Riprova più tardi.",
1277
+ "two-factor-required": "Un'organizzazione di cui fai parte richiede la verifica in due passaggi: configurala per continuare.",
1247
1278
  unauthorized: "Autenticazione richiesta. Effettua l'accesso.",
1248
1279
  "validation-error": "Errore di validazione. Verifica i dati inviati."
1249
1280
  },
@@ -1302,6 +1333,8 @@ var Pn = {
1302
1333
  subAgents: "Sotto-agenti",
1303
1334
  system: "Sistema",
1304
1335
  timingDebug: "Debug Performance",
1336
+ twoFactor: "Verifica in due passaggi",
1337
+ twoFactorSetup: "Configura la verifica in due passaggi",
1305
1338
  users: "Utenti",
1306
1339
  video: "Video",
1307
1340
  virtualAssistant: "Assistente virtuale"
@@ -1402,6 +1435,101 @@ var Pn = {
1402
1435
  title: "Valutazione a fine turno",
1403
1436
  version: "Versione delle domande: {version}"
1404
1437
  },
1438
+ twoFactor: {
1439
+ backupCode: "Codice di recupero",
1440
+ backupCodesDescription: "Ogni codice vale una volta sola, al posto di quello dell'app. Conservali in un posto sicuro: senza telefono e senza questi codici, solo un amministratore può ridarti l'accesso.",
1441
+ backupCodesFileHeader: "Codici di recupero di Eight Wave Agent Studio. Ognuno vale una volta sola.",
1442
+ backupCodesReplaced: "Ecco i nuovi codici di recupero: quelli vecchi non valgono più. Salvali adesso, non verranno mostrati di nuovo.",
1443
+ backupCodesSaved: "Ho salvato i codici",
1444
+ badge: "Verifica in due passaggi",
1445
+ challengeApp: "Scrivi il codice a 6 cifre della tua app di autenticazione.",
1446
+ challengeBackup: "Scrivi uno dei codici di recupero che hai salvato.",
1447
+ challengeEmailSending: "Ti stiamo inviando un codice via email.",
1448
+ challengeEmailSent: "Ti abbiamo inviato un codice a 6 cifre via email. Scade fra 5 minuti.",
1449
+ challengeTitle: "Verifica in due passaggi",
1450
+ code: "Codice a 6 cifre",
1451
+ column: "Verifica in due passaggi",
1452
+ disabledMessage: "La verifica in due passaggi è disattivata.",
1453
+ enabledMessage: "La verifica in due passaggi è attiva.",
1454
+ manualKey: "Non riesci a inquadrarlo? Inserisci questa chiave nell'app:",
1455
+ memberOff: "Non attiva",
1456
+ memberOn: "Attiva",
1457
+ memberPasskey: "Passkey",
1458
+ memberPasskeyHint: "Accede con una passkey, che rispetta l'obbligo. Con la sola password deve prima configurare la verifica.",
1459
+ memberPending: "Da configurare",
1460
+ memberPendingHint: "Accede con la password e non ha un secondo fattore: dovrà configurarlo prima di proseguire",
1461
+ memberSocialOnly: "Non serve",
1462
+ memberSocialOnlyHint: "Accede solo con Google o Microsoft, quindi vale la sicurezza del provider",
1463
+ methodApp: "App di autenticazione",
1464
+ methodAppSummary: "Un codice che cambia ogni 30 secondi, da Google Authenticator, Microsoft Authenticator, 1Password o simili. Consigliata.",
1465
+ methodEmail: "Codice via email",
1466
+ methodEmailSummary: "Un codice inviato a {email} a ogni accesso con la password.",
1467
+ newBackupCodes: "Nuovi codici di recupero",
1468
+ newBackupCodesDescription: "I codici che hai ora smettono di funzionare e ne ricevi dieci nuovi.",
1469
+ passkeyAdd: "Aggiungi una passkey",
1470
+ passkeyAddDescription: "Conferma la password, poi segui il dispositivo: ti chiederà l'impronta, il volto o il PIN.",
1471
+ passkeyAdded: "La passkey è pronta: usala al prossimo accesso.",
1472
+ passkeyAddNoPasswordDescription: "Segui il dispositivo: ti chiederà l'impronta, il volto o il PIN.",
1473
+ passkeyAlreadyRegistered: "Questo dispositivo ha già una passkey per il tuo account.",
1474
+ passkeyCancelled: "Il dispositivo non ha creato la passkey: riprova quando vuoi.",
1475
+ passkeyCreate: "Crea la passkey",
1476
+ passkeyCreatedAt: "Aggiunta il {date}",
1477
+ passkeyDeviceBound: "Solo su un dispositivo",
1478
+ passkeyDeviceRefused: "Il dispositivo non ha creato la passkey. Controlla che abbia un blocco schermo, un'impronta o un PIN e riprova.",
1479
+ passkeyFallbackName: "Passkey",
1480
+ passkeyName: "Nome",
1481
+ passkeyNameHint: "Per riconoscerla nella lista",
1482
+ passkeyRemove: "Rimuovi",
1483
+ passkeyRemoved: "Passkey rimossa.",
1484
+ passkeyRemoveDescription: "Non servirà più per accedere. Puoi aggiungerne una nuova quando vuoi.",
1485
+ passkeyRemoveQuestion: "Rimuovere la passkey {name}?",
1486
+ passkeys: "Passkey",
1487
+ passkeysDescription: "Accedi con l'impronta, il volto o il PIN del dispositivo: niente password e niente codice. Una passkey vale anche per le organizzazioni che richiedono la verifica in due passaggi.",
1488
+ passkeysEmpty: "Nessuna passkey.",
1489
+ passkeySynced: "Sincronizzata tra i tuoi dispositivi",
1490
+ qrLabel: "QR code per l'app di autenticazione",
1491
+ requireConsequence: "I membri che accedono con la password e non l'hanno ancora attiva verranno fermati alla prossima pagina finché non la configurano.",
1492
+ requiredBy: "Richiesta da {organizations}.",
1493
+ requiredByPasskeyEnough: "Richiesta da {organizations}: la tua passkey basta, con la sola password ti verrà chiesto di configurarla.",
1494
+ requireHint: "Chi accede con la password deve configurarla prima di usare la piattaforma. Chi accede con Google o Microsoft non è toccato.",
1495
+ requireLabel: "Richiedi la verifica in due passaggi",
1496
+ requireOff: "La verifica in due passaggi non è più obbligatoria.",
1497
+ requireOn: "Ora la verifica in due passaggi è obbligatoria.",
1498
+ requireQuestion: "Richiedere la verifica in due passaggi ai membri?",
1499
+ requireTitle: "Richiedi la verifica in due passaggi",
1500
+ reset: "Reimposta la verifica in due passaggi",
1501
+ resetConfirm: "Reimposta",
1502
+ resetDescription: "L'app di autenticazione e i codici di recupero smettono di funzionare e l'utente viene disconnesso ovunque. Potrà entrare con la sola password e configurarla di nuovo: lo avvisiamo via email.",
1503
+ resetQuestion: "Reimpostare la verifica in due passaggi di {name}?",
1504
+ scanDescription: "Apri l'app di autenticazione, aggiungi un account e inquadra il QR code. Poi scrivi il codice a 6 cifre che mostra.",
1505
+ sendAgain: "Invia un nuovo codice",
1506
+ setupAddAnotherPasskey: "Aggiungi una nuova passkey",
1507
+ setupAddPasskey: "Usa una passkey",
1508
+ setupDescription: "{organizations} la richiede a chi accede con la password.",
1509
+ setupSignInWithPasskey: "Accedi con la tua passkey",
1510
+ setupTitle: "Configura la verifica in due passaggi",
1511
+ signInWithPasskey: "Accedi con una passkey",
1512
+ stateNoPassword: "Non disponibile per questo account",
1513
+ stateOff: "Non attiva",
1514
+ stateOnApp: "Attiva, con un'app di autenticazione",
1515
+ stateOnEmail: "Attiva, con un codice via email",
1516
+ summaryNoPassword: "Accedi con Google o Microsoft, quindi vale la sicurezza del provider. Se aggiungi una password, potrai proteggerla anche qui.",
1517
+ summaryOff: "Chiede un codice, oltre alla password, a ogni accesso con email e password.",
1518
+ summaryOnApp: "Nessun codice di recupero rimasto: generane di nuovi. | Un codice di recupero rimasto. | {count} codici di recupero rimasti.",
1519
+ summaryOnEmail: "Il codice arriva a {email}.",
1520
+ switchToApp: "Usa un'app di autenticazione",
1521
+ title: "Verifica in due passaggi",
1522
+ trustDevice: "Ricorda questo dispositivo per 30 giorni",
1523
+ turnOff: "Disattiva",
1524
+ turnOffDescription: "Da adesso per entrare basterà la password. Ti mandiamo un'email di conferma.",
1525
+ turnOffRequired: "Un'organizzazione di cui fai parte la richiede",
1526
+ turnOffTitle: "Disattiva la verifica in due passaggi",
1527
+ turnOn: "Attiva",
1528
+ turnOnTitle: "Attiva la verifica in due passaggi",
1529
+ useApp: "Usa l'app di autenticazione",
1530
+ useBackupCode: "Usa un codice di recupero",
1531
+ verify: "Verifica"
1532
+ },
1405
1533
  userFiles: {
1406
1534
  allAgents: "Tutti gli agenti",
1407
1535
  chatFilesEmpty: "Nessun file caricato in questa chat.",
@@ -1664,7 +1792,9 @@ var Pn = {
1664
1792
  viewRecentChats: "View recent chats",
1665
1793
  welcomePopup: "Show welcome popup",
1666
1794
  zoomIn: "Zoom In",
1667
- zoomOut: "Zoom Out"
1795
+ zoomOut: "Zoom Out",
1796
+ createWebSource: "Create source",
1797
+ webSourceConfirmRemoval: "Remove the {count} pages"
1668
1798
  },
1669
1799
  agent: {
1670
1800
  channel: {
@@ -1880,7 +2010,9 @@ var Pn = {
1880
2010
  unlinkAgent: "Remove this agent from the document?",
1881
2011
  unlinkDocument: "Unlink this document from the agent?",
1882
2012
  unlinkLastAgentDelete: "Remove the last agent from this document?",
1883
- unlinkSyncedFolder: "Unlink this folder?"
2013
+ unlinkSyncedFolder: "Unlink this folder?",
2014
+ webSourceConfirmRemoval: "Remove {count} pages?",
2015
+ unlinkWebSource: "Unlink the source?"
1884
2016
  },
1885
2017
  conversationAnalysis: {
1886
2018
  abuseCategory: {
@@ -2022,7 +2154,9 @@ var Pn = {
2022
2154
  unchanged: "unchanged",
2023
2155
  skippedUnsupported: "unsupported formats",
2024
2156
  skippedTooLarge: "too large",
2025
- failed: "failed"
2157
+ failed: "failed",
2158
+ scannedPages: "pages checked",
2159
+ capped: "left for the next check"
2026
2160
  },
2027
2161
  documentSyncInterval: {
2028
2162
  daily: "Every day",
@@ -2043,14 +2177,28 @@ var Pn = {
2043
2177
  url: "Web page"
2044
2178
  },
2045
2179
  errors: {
2180
+ ACCOUNT_TEMPORARILY_LOCKED: "Too many wrong codes: verification is locked for 15 minutes.",
2046
2181
  BANNED_USER: "This account has been banned. Contact support if you think this is a mistake.",
2047
2182
  CREDENTIAL_ACCOUNT_NOT_FOUND: "This account signs in with Google or Microsoft and has no password to change",
2183
+ EMAIL_CODE_NOT_AVAILABLE: "This account uses an authenticator app: enter its code or a backup code.",
2184
+ TWO_FACTOR_REQUIRED: "An organization of this account requires two-step verification: set it up to continue",
2185
+ PASSKEY_PASSWORD_REQUIRED: "Confirm your password to add a passkey",
2186
+ PASSKEY_RECENT_SIGN_IN_REQUIRED: "Sign out and sign in again to add a passkey",
2187
+ PASSKEY_NOT_ALLOWED_FOR_SESSION: "Passkeys can be added only by the account owner, signed in",
2188
+ PASSKEY_USER_VERIFICATION_REQUIRED: "This passkey did not ask for a PIN, a fingerprint or a face: set one up on the device and try again",
2189
+ PASSKEY_NOT_FOUND: "This passkey is not linked to any account: sign in with your password",
2190
+ AUTHENTICATION_FAILED: "The passkey could not be verified: try again",
2191
+ FAILED_TO_VERIFY_REGISTRATION: "The passkey could not be saved: try again",
2192
+ CHALLENGE_NOT_FOUND: "The request expired: try again",
2048
2193
  EMAIL_NOT_VERIFIED: "Please verify your email address",
2049
2194
  EMAIL_VERIFICATION_REQUIRED_BEFORE_ACCEPTING_OR_REJECTING_INVITATION: "Verify your email address before answering the invitation",
2050
2195
  FAILED_TO_UNLINK_LAST_ACCOUNT: "You cannot unlink your only sign-in method",
2196
+ INVALID_BACKUP_CODE: "The backup code is not valid or has already been used.",
2197
+ INVALID_CODE: "The code is not valid. Try again.",
2051
2198
  INVALID_EMAIL_OR_PASSWORD: "Invalid email or password",
2052
2199
  INVALID_PASSWORD: "The password is not correct",
2053
2200
  INVALID_TOKEN: "This link has expired or has already been used. Request a new one.",
2201
+ INVALID_TWO_FACTOR_COOKIE: "The verification has expired. Sign in again.",
2054
2202
  INVITATION_LIMIT_REACHED: "This organization has reached its invitation limit",
2055
2203
  INVITATION_NOT_FOUND: "The invitation is no longer valid: it may have expired, been cancelled or already been answered",
2056
2204
  INVITER_IS_NO_LONGER_A_MEMBER_OF_THE_ORGANIZATION: "The person who invited you is no longer in the organization, so the invitation is no longer valid",
@@ -2061,10 +2209,15 @@ var Pn = {
2061
2209
  ORGANIZATION_MEMBERSHIP_LIMIT_REACHED: "This organization has reached its member limit",
2062
2210
  ORGANIZATION_NOT_FOUND: "The organization no longer exists",
2063
2211
  ORGANIZATION_SLUG_ALREADY_TAKEN: "This slug is already used by another organization",
2212
+ OTP_HAS_EXPIRED: "The code has expired. Ask for a new one.",
2064
2213
  RATE_LIMIT_EXCEEDED: "Rate limit exceeded",
2065
2214
  SESSION_NOT_FRESH: "For your security, sign in again and repeat the operation",
2066
2215
  SOCIAL_ACCOUNT_ALREADY_LINKED: "This account is already linked to another user",
2216
+ TOO_MANY_ATTEMPTS_REQUEST_NEW_CODE: "Too many attempts. Sign in again to get a new code.",
2067
2217
  TOO_MANY_REQUESTS: "Too many attempts. Wait a few minutes and try again.",
2218
+ TOTP_ALREADY_ENABLED: "Two-step verification with an app is already on.",
2219
+ TOTP_NOT_ENABLED: "No authenticator app is set up for this account.",
2220
+ TWO_FACTOR_REQUIRED_TO_ENFORCE: "Turn on two-step verification on your own account before requiring it.",
2068
2221
  UNAUTHORIZED_SESSION: "Your session has expired. Sign in again.",
2069
2222
  USER_ALREADY_EXISTS: "An account with this email already exists",
2070
2223
  USER_ALREADY_EXISTS_USE_ANOTHER_EMAIL: "An account with this email already exists",
@@ -2079,6 +2232,7 @@ var Pn = {
2079
2232
  YOU_CANNOT_LEAVE_THE_ORGANIZATION_AS_THE_ONLY_OWNER: "You are the only owner: make someone else an owner before leaving",
2080
2233
  YOU_CANNOT_LEAVE_THE_ORGANIZATION_WITHOUT_AN_OWNER: "The organization needs at least one owner",
2081
2234
  YOU_CANNOT_REMOVE_YOURSELF: "You cannot remove yourself",
2235
+ YOU_CANNOT_RESET_YOUR_OWN_TWO_FACTOR: "Your own two-step verification is turned off from your profile.",
2082
2236
  YOU_HAVE_REACHED_THE_MAXIMUM_NUMBER_OF_ORGANIZATIONS: "You have reached the maximum number of organizations",
2083
2237
  fileAlreadyImported: "This file has already been imported as a document",
2084
2238
  invalidToken: "Request no longer valid",
@@ -2088,7 +2242,8 @@ var Pn = {
2088
2242
  required: "Required",
2089
2243
  slugAlreadyExists: "The slug already exists",
2090
2244
  slugFormat: "The slug can only contain lowercase letters, numbers, and hyphens (-)",
2091
- urlAlreadyImported: "This URL has already been imported as a document"
2245
+ urlAlreadyImported: "This URL has already been imported as a document",
2246
+ syncSourceUrlOnly: "Only a web page can belong to a web source"
2092
2247
  },
2093
2248
  externalProvider: {
2094
2249
  domain: "Email domain",
@@ -2136,13 +2291,16 @@ var Pn = {
2136
2291
  puppeteerBrowserEngine: "runs JavaScript with a local browser. For dynamic or single-page apps.",
2137
2292
  remoteBrowserEngine: "like Puppeteer, but on a remote browser. Bypasses blocks and bot detection.",
2138
2293
  useBrowserEngine: "Slower, but allows analysis of dynamic pages",
2139
- useExtractionStrategy: "Improve data extraction with AI"
2294
+ useExtractionStrategy: "Improve data extraction with AI",
2295
+ webSourceWatch: "The pages go into a new folder “{name}”. When due, the platform reads the source again and imports new pages there. The pages stay editable.",
2296
+ webSourceRemoveMissing: "For a site of your own, whose sitemap lists everything published. If too many go missing at once, nothing is removed until you confirm."
2140
2297
  },
2141
- hint: /* @__PURE__ */ JSON.parse("{\"agentModel\":\"Pre-selected when you create a new agent.\",\"agentOnOwnEndpoint\":\"This agent runs on your organization's endpoint.\",\"allowedDomains\":\"Only search within these domains.\",\"approvalChannels\":\"A tool can ask the user to confirm before it runs: expand a tool to turn it on. On API endpoints and scheduled runs the call is refused.\",\"audience\":\"The expected JWT token audience (aud). If empty, the audience is not verified.\",\"blockedDomains\":\"Exclude these domains from results.\",\"channel\":{\"app\":\"The agent is accessible via the dedicated public page.\",\"frontoffice\":\"The agent is visible in the Frontoffice panel.\",\"widget\":\"The agent can be embedded in websites via embed script.\"},\"channelAppDisabled\":\"The App channel is disabled: the direct link and iframe will not work.\",\"channelWidgetDisabled\":\"The Widget channel is disabled: the embed code and loader will not work.\",\"costSourceEndpoint\":\"The models on your organization's endpoint: your provider bills them, the cost here is a list-price estimate.\",\"customCss\":\"CSS injected into the widget shadow DOM. Allows styling the chat interface from the outside.\",\"disallowPromptTraining\":\"Route requests only to providers that do not use your data to train AI models.\",\"dismissableNotice\":\"It will be hidden after the first message.\",\"documentFolderManaged\":\"Folder synced from {provider}: its content is changed at the source.\",\"documentRefresh\":\"Reads the page again when due and regenerates only what changed.\",\"documentRefreshTriggerOff\":\"This page updates itself, and saving your own text stops that.\",\"documentSelectionHasManaged\":\"The selection contains documents that come from a connected source and cannot be changed by hand.\",\"documentSourceInterval\":\"How often the folder is read again. Files that have not changed are not converted again.\",\"documentSourceName\":\"The name this folder has here. The remote one does not change.\",\"emailClaim\":\"The JWT claim containing the user email (default: email).\",\"embedCode\":\"Copy and paste this code to embed the agent in your website.\",\"embedding\":\"The vectors of the knowledge base, of the users' files and of the memories. They are computed on the platform AI gateway, or on your endpoint with one of the two models it can serve.\",\"embeddingActivation\":\"Before saving, the endpoint embeds a test sentence and its vector is compared with the model's own: a different model is refused. Moving to another model embeds the knowledge base and the memories again, and until it is done the searches find only what is already in the new model.\",\"embeddingEndpointModel\":\"The id your endpoint serves the model under\",\"embeddingEndpointOff\":\"Switch the endpoint on to compute the vectors there\",\"embeddingFamily\":\"Among those your endpoint serves\",\"embeddingFamilyUnknown\":\"Your endpoint does not declare it: the save checks it\",\"embeddingModelsServed\":\"Your endpoint serves these too. They cannot answer an agent: the one the vectors are computed with is chosen in the Embedding section.\",\"embeddingNotConfigured\":\"The knowledge base, the corrected answers, the memories and the document processing are stopped, because nothing computes their vectors. Activate an embedding model on your endpoint to start them again.\",\"embeddingReindexing\":\"Until the reindex ends, the searches in the knowledge base and in the memories find only what is already in the new model: partial results, never wrong ones. Nothing has to be done, and an interrupted run picks up where it stopped.\",\"embeddingStopped\":\"The endpoint that computes the vectors is off: the knowledge base, the corrected answers, the memories and the document processing are stopped until you switch it back on.\",\"embeddingWithoutEndpoint\":\"The vectors of the knowledge base, of the users' files and of the memories are computed on the platform AI gateway. Connect your endpoint to compute them there.\",\"embedIframe\":\"Embed the chat interface directly using an iframe. \",\"embedPreview\":\"The agent will be accessible at the following URL.\",\"embeddingWithoutEndpointOrGateway\":\"The vectors of the knowledge base, of the users' files and of the memories are not computed: this organization does not use the platform AI gateway. Connect your endpoint to compute them there.\",\"embeddingWithoutGateway\":\"The vectors of the knowledge base, of the users' files and of the memories. This organization does not use the platform AI gateway, so they are computed only on your endpoint, with one of the two models allowed.\",\"externalContextSchema\":\"Define which contextual data the hosting site can send to the agent.\",\"externalContextSchemaToggle\":\"Enable receiving contextual data from the hosting site.\",\"feature\":{\"apiTools\":\"Agents call the organization's own APIs as tools.\",\"byok\":\"The organization connects its own OpenAI compatible endpoint and uses its models.\",\"endpoints\":\"Agents answer other systems over REST.\",\"fileUpload\":\"Users attach files to their chat messages.\",\"gateway\":\"The AI gateway models, and with them the platform's embedding, and the utilities and the document AI that use them.\",\"integrations\":\"Connections to CRMs and to document sources such as SharePoint.\",\"mcpServers\":\"Agents use the tools of external MCP servers.\",\"subAgents\":\"An agent calls another one as a tool.\",\"teams\":\"Agents answer in Teams chats.\",\"voice\":\"Agents talk with the user in real time.\",\"whatsapp\":\"Agents answer on WhatsApp Business.\"},\"fallbackModels\":\"Alternative models tried in order if the primary model is unavailable.\",\"fieldMappingFallback\":\"Value used if the source field is empty or missing.\",\"fieldMappingSource\":\"Supports nested paths (e.g. metadata.urgency).\",\"fieldMappingTransformExtractDomainCompany\":\"Extracts the company name from the email domain (e.g. mario@acme.com → Acme). Skips free providers (gmail, outlook, etc.).\",\"fieldMappingTransformJoinArray\":\"Joins array values into a comma-separated string.\",\"fieldMappingTransformMapValues\":\"Replaces the value using the value map lookup table.\",\"fieldMappingTransformNone\":\"Copies the value as-is.\",\"fieldMappingTransformSplitFirstLast\":\"Splits text on spaces.\",\"fileUploadDisabledHint\":\"File upload is not enabled for this agent. You can enable it in the agent settings.\",\"fileUploadEnabled\":\"Allow users to attach files to their messages.\",\"freshnessBoost\":\"Applies a boost based on how recently the document was updated.\",\"freshnessScale\":\"Freshness Scale (Days)\",\"freshnessScaleExplanationDays\":\"A document updated today gets a +{weight} bonus. This bonus halves to +{halfWeight} after {half} days and practically drops to zero (+{zeroWeight}) after {zero} days.\",\"freshnessScaleExplanationMonths\":\"A document updated today gets a +{weight} bonus. This bonus halves to +{halfWeight} after {half} days and practically drops to zero (+{zeroWeight}) after {zero} days (approx. {months} months).\",\"freshnessScaleTooltip\":\"The half-life of the exponential decay. A document as old as this value will receive 50% of the maximum boost. Lower values cause older documents to lose the boost more quickly.\",\"freshnessWeight\":\"Weight multiplier of the freshness boost in the formula.\",\"freshnessWeightTooltip\":\"Maximum score bonus added to newly updated documents. A weight of 0.1 means a brand new document gets a +0.10 score advantage. This bonus decays exponentially over time until it reaches zero.\",\"gatewayCatalog\":\"The models the platform makes available, with the price per million tokens, the context size and the data privacy guarantees. Switch off the ones your organization does not use: they leave the pickers, and an agent still on one answers with the default model.\",\"gatewayNotUsed\":\"This organization does not use the platform AI gateway, so its models are not available. The platform operator can switch it back on.\",\"gatewayOffDisconnected\":\"Unless its own endpoint is on and serves models, the organization is disconnected: no agent answers.\",\"gatewayOffNoByok\":\"Own models (BYOK) are off too: its administrator can neither set up an endpoint nor switch one on or off, nor move the embedding.\",\"gatewayOffStops\":\"Switched off, nothing of this organization reaches the gateway, within thirty seconds: the gateway models stop answering, and so do the internal utilities on them; the web search stops. The knowledge base, the corrected answers, the memories and the document processing go on only if the embedding is on the organization's own endpoint: on the platform's, they stop.\",\"gatewayOffTodo\":\"The administrator has to move both default models to the organization's own endpoint, or new agents cannot be created, and the embedding too (Models, Embedding section), or the knowledge base and the memories stay stopped. The inference is no longer charged to the credit; the voice minutes and the document OCR still are.\",\"guaranteeAll\":\"{name}: guaranteed on every provider.\",\"guaranteeNone\":\"{name}: not guaranteed.\",\"guaranteeSome\":\"{name}: guaranteed on some providers only, the gateway routes accordingly.\",\"includeThoughts\":\"Streams the model's thoughts to the client along with the response.\",\"inputSchema\":\"JSON Schema (draft-07) of the input parameters the LLM can provide.\",\"integrationOAuthAdminConsent\":\"A Microsoft 365 administrator of your organization may need to approve this.\",\"integrationAppCredentialScope\":\"With Sites.Read.All the app can read every site of the tenant. The connector reads only the folders you link.\",\"integrationAppCredentialSteps\":\"In Microsoft Entra ID: App registrations, New registration. Then API permissions, Microsoft Graph, Application permissions, Sites.Read.All, and Grant admin consent. Then Certificates & secrets, New client secret (note when it expires). Copy the Directory (tenant) ID, the Application (client) ID and the secret value here.\",\"interactiveLogin\":\"Lets anonymous users sign in from the chat. The external token stays active.\",\"issuer\":\"The issuer URL of the JWT token (iss).\",\"jwksUrl\":\"The JWKS endpoint URL for JWT signature verification.\",\"loadDelay\":\"Milliseconds to wait before injecting the widget. Useful on pages with slow AMD loaders (e.g. RequireJS).\",\"loaderStrategy\":{\"dynamic-import\":\"Uses import() inside a classic <script>. Fallback for pages where module scripts are blocked or intercepted by legacy loaders.\",\"inline-module\":\"Injects an inline <script type=\\\"module\\\"> with a static import. Bypasses RequireJS and other AMD loaders. Recommended for most sites.\",\"script-src\":\"Loads the bundle via <script type=\\\"module\\\" src=\\\"...\\\">. Use this on sites with strict Content Security Policy (CSP) that block inline scripts.\"},\"mcpServerHealthCheckPath\":\"The endpoint used to check the health of the MCP Server (e.g., /api/health).\",\"mcpStatelessServer\":\"Force the client to connect in stateless mode.\",\"mmr\":\"Balances semantic relevance and document diversity in search results to avoid redundant content.\",\"mmrCandidatesLimit\":\"Maximum number of candidate chunks pre-selected before applying MMR.\",\"mmrCandidatesLimitTooltip\":\"The number of top candidate chunks retrieved from the database before applying the MMR diversity filter. For example, if set to 100, the system selects the 100 highest-scoring chunks first, then filters them to find the most diverse subset.\",\"mmrDiversity\":\"Tradeoff between relevance (0.0) and diversity (1.0).\",\"mmrDiversityTooltip\":\"Controls how diverse the search results should be. A value near 0 focuses solely on relevance (even if results are similar). A value near 1 forces the inclusion of results with different details and themes, reducing redundancy.\",\"modelContextWindow\":\"Context window: {count}k tokens.\",\"modelDefaultNoneAvailable\":\"No model available: switch on at least one model of your endpoint below.\",\"modelDefaultOutsideCatalog\":\"This model is not among those available to your organization: pick another one. Meanwhile new agents start on the platform's standard model.\",\"modelDefaults\":\"They apply to the whole organization. Each agent can still use a different model, chosen in its own settings.\",\"modelDisabledForOrganization\":\"Switched off for this organization: the agents still on it answer with the default model, and it cannot be picked for a new one.\",\"modelEndpointBaseUrl\":\"The base address of the OpenAI compatible API.\",\"modelEndpointHttp\":\"Over http the key travels unencrypted: use it only if the endpoint is reachable from your internal network alone.\",\"modelEndpointHttpTitle\":\"Unencrypted connection (http)\",\"modelEndpointKey\":\"It is stored encrypted and never shown again.\",\"modelEndpointKeyStored\":\"Already saved. Leave the field empty to keep it.\",\"modelEndpointName\":\"The name you will recognise it by when choosing models.\",\"modelEndpointOffWithEmbedding\":\"Endpoint off: its models are not available, the agents on them stop answering, and the knowledge base, the memories and the documents stop with it, because it computes their vectors. Turn it back on to start them again.\",\"modelEndpointOnWithoutGateway\":\"Endpoint on: the models you switch on are the only ones the agents can use, since this organization does not use the platform gateway, and can be the defaults.\",\"modelNotOnEndpoint\":\"Not available to this organization: its endpoint no longer has this model, so an agent on it does not answer until it is moved to another model.\",\"modelSourceEndpoint\":\"Runs on {name}, your organization's own endpoint: your provider bills it, and the costs shown here are estimated from the price list.\",\"modelSourceOff\":\"Not available to this organization: the source it runs on is switched off, so an agent on it does not answer until it is moved to another model or the source is switched back on.\",\"modelSourcePlatform\":\"Runs on the platform AI gateway and is paid with your organization's credit.\",\"ownEndpoint\":\"Use your own models next to the platform ones: connect an OpenAI compatible endpoint with your own key. The agents that run on its models are not charged to your credit.\",\"modelEndpointOn\":\"Endpoint on: the models you switch on are available to the agents next to the platform ones, and can be the defaults.\",\"modelEndpointOff\":\"Endpoint off: its models are not available, and the agents on them stop answering. Switch on the models you need below, then turn it on.\",\"addModelsRule\":\"Switch on the models your agents will be able to use. The price comes from the platform price list; if a model is not in the list, you will be asked to enter it.\",\"modelPriceAsk\":\"This model is not in the platform price list. Pick a catalog model with a similar cost, or enter the prices per million tokens.\",\"modelPriceUnknown\":\"Not in the platform price list: enter a price.\",\"modelGuaranteedOnSome\":\"The guarantees you switched on hold only on some providers of this model: the gateway routes accordingly.\",\"modelIdByHand\":\"The technical name the endpoint uses to identify the model.\",\"modelNotCompatible\":\"Not compatible with the privacy flags of this agent.\",\"modelPriceFromListing\":\"Price taken from {id} in the platform price list.\",\"modelPriceListing\":\"Platform price list, entry {id}, updated on {date}.\",\"modelPriceManual\":\"Price typed by hand on {date}.\",\"modelPriceReference\":\"Same price as {id}, updated on {date}.\",\"modelReference\":\"A catalog model this one costs like.\",\"modelRetired\":\"No longer available on the platform: move the agents using it to another model.\",\"moveDocument\":\"Choose the destination folder for «{name}».\",\"moveDocuments\":\"Choose the destination folder for {n} document. | Choose the destination folder for {n} documents.\",\"multipleChoiceAllowCustomAnswer\":\"Show a free-text field below the options so the user can type a custom answer.\",\"multipleChoiceMaxOptions\":\"Maximum number of options the AI can generate (min. 2, max. 10).\",\"nameClaim\":\"The JWT claim containing the user name (default: name). When missing, the system also tries name, given_name and family_name, and the same namespace as the email claim.\",\"oauthCallbackUrl\":\"Set this URL as the Callback URL (Redirect URI) in the OAuth provider.\",\"outputSchema\":\"JSON Schema (draft-07) of the expected response. Informational only.\",\"passphrase\":\"Enter {passphrase} to confirm the operation\",\"platformSupported\":\"Renders natively on WhatsApp and Teams\",\"privacyPolicyNotice\":\"Displayed at the bottom of the contact form. Supports Markdown.\",\"providerOrganizationId\":\"For Microsoft this refers to the tenant identifier (tenant ID). \\nFor others, enter the email domain (e.g. company.com).\",\"providerTimeoutMs\":\"Timeout in milliseconds before falling back to the next provider (min 1000, max 789000). BYOK credentials only.\",\"reasoningDefault\":\"Platform default, applied until you choose a different value.\",\"reasoningNotSupported\":\"Reasoning is not supported for the selected provider.\",\"sessionExpiresIn\":\"Widget session duration in seconds (min 60). If empty, the default of 8 hours applies.\",\"showExtendedSteps\":\"Shows reasoning and tool calls as an expandable timeline in the chat.\",\"smoothStream\":\"Smooths text streaming creating a more natural reading experience.\",\"subAgentName\":\"Only letters, numbers, underscores (_) and hyphens (-) are allowed.\",\"teamsAccentColor\":\"Defaults to the agent's theme color.\",\"teamsAppVersion\":\"Bump this (e.g. 1.0.1) and reinstall the package to push manifest changes, such as new permissions, to already-installed apps.\",\"tool\":{\"fetchTeamsChannelHistory\":\"On Teams channels, lets the agent read the wider channel conversation on demand. Requires reinstalling the Teams app.\",\"geocode\":\"Converts place names to geographic coordinates and vice versa.\",\"getWeather\":\"Fetches current weather data and forecasts for a specific location.\",\"readDocumentFile\":\"Allows the agent to read the original file of PDF/DOCX documents from the knowledge base. Useful for tables, charts, and visual content.\",\"requestGeolocation\":\"Requests the user's GPS location via the browser.\",\"retrieveRevisedAnswers\":\"Retrieves administrator-verified answers and uses them as the primary source of truth.\",\"runWorker\":\"Lets the agent run generic workers that inherit its tools to handle independent sub-tasks in parallel.\",\"searchInKnowledgeBase\":\"Searches uploaded documents in the knowledge base to provide contextual answers.\",\"searchInUserFiles\":\"Searches the files this user personally uploaded in chat (their private files), kept separate from the agent knowledge base.\",\"showArtifact\":\"Displays structured content such as formatted text, code, or documents.\",\"showCalendarEvent\":\"Shows a calendar event with options for Google Calendar, Outlook, and .ics download.\",\"showComparison\":\"Compares 2 to 4 items side by side to help the user decide.\",\"showContactForm\":\"Displays a contact form to collect user information.\",\"showDiagram\":\"Renders a chart or a diagram (flowchart, sequence, class, ER, state).\",\"showEmail\":\"Composes a ready-to-send email from the user's email client.\",\"showForm\":\"Allows collecting structured input (text, numbers, dates, choices) via multi-step forms.\",\"showImageGallery\":\"Collects images in a browsable gallery with zoom and lightbox.\",\"showLocation\":\"Displays an interactive map with a marker and directions.\",\"showMessage\":\"Composes a message to send via WhatsApp, Telegram, or SMS.\",\"showMultipleChoice\":\"Presents selectable options to guide the conversation flow.\",\"showProductList\":\"Shows a product list with images, descriptions, and purchase links.\",\"showQrCode\":\"Generates a QR code from text, URLs, or structured data.\",\"showSources\":\"Shows references to the knowledge base documents used in the response.\",\"showSuggestedReply\":\"Suggests clickable replies to continue the conversation. To have them after every answer, ask for it in the agent's instructions.\",\"showVideo\":\"Plays videos inline: direct files (MP4/WebM) or YouTube/Vimeo links.\",\"showWeather\":\"Displays a weather forecast widget directly in the chat.\",\"showWebPages\":\"Suggests links to web pages relevant to the user's question.\",\"useAllUserFiles\":\"Searches all the user's files, including those uploaded on other agents, not just this agent's.\",\"useAllUserKb\":\"Reads the memories the user shared with every agent of this organization, not just this one. Writing stays scoped to this agent.\",\"userMemory\":\"Lets the agent remember and recall facts the user shares across conversations (name, preferences, etc.).\"},\"toolRequiresApproval\":\"The assistant waits for approval in the chat before running.\",\"apiToolSecretParameters\":\"Sent with every call, in the query string or in the JSON body, and never shown to the model. Once saved a value is not shown again: leave it empty to keep it.\",\"apiToolSecretParametersNew\":\"Sent with every call, in the query string or in the JSON body, and never shown to the model. Type every value: once saved it is not shown again.\",\"apiToolSecretStored\":\"Saved: leave it empty to keep it\",\"apiToolCredentialInSchema\":\"These parameters look like credentials, and the model fills them in: {names}. Move them to the secret parameters and remove them from the input schema.\",\"apiToolCredentialBadge\":\"A parameter that looks like a credential is filled in by the model\",\"apiToolSecretsOriginChanged\":\"The URL points to another host: type the values of the secret parameters again, the saved ones stay with the previous host.\",\"apiToolSecretBodyMethod\":\"A {method} request sends no body\",\"toolWorkingSetMode\":{\"active\":\"Before each reply, an evaluation model (TypeSafe Jev) picks the MCP servers, API tools and sub-agents the message needs, and the agent sees only those. When it needs another one, it brings it back on its own. Each evaluation is charged to the organization.\",\"off\":\"The agent sees every tool on every reply.\",\"shadow\":\"The evaluation model picks the tools each message needs, but the agent still sees them all: the choice is only recorded in the message detail, to compare it with the tools actually used before turning it on. Each evaluation is charged to the organization.\"},\"useColorsForAgentHeader\":\"Color the agent header based on the main color.\",\"userFeedbackComment\":\"The user left a comment on this answer\",\"userFeedbackNegative\":\"The user rated this answer negatively\",\"userFeedbackPositive\":\"The user rated this answer positively\",\"userFeedbackReaction\":\"The user reacted to this answer\",\"utilityModel\":\"Used behind the scenes for tasks such as rephrasing user questions and updating memories.\",\"voiceApprovalRefused\":\"During a call these actions do not run: approval is given on screen and on the phone there is nobody to ask, so the agent refuses them and says so. Affected: {tools}.\",\"voiceCascadeTimeoutSeconds\":\"How long the provider waits for us before cancelling the turn. It must sit above the agent's slowest turn: a knowledge base, tools and slow models all stretch it.\",\"voiceEnabled\":\"Let people talk to this agent. The answer is still this agent, with its knowledge and tools.\",\"voiceFillerAfterSeconds\":\"Says it is working when the answer is late. Empty: four seconds.\",\"voiceFillerMessage\":\"Write it so any continuation still sounds natural. Empty: a default sentence in the voice language.\",\"voiceFirstMessage\":\"Said as soon as the call opens. It also covers the slower first turn.\",\"voiceId\":\"Cloned voices are not listed: the provider forbids them here.\",\"voiceIgnoreBackgroundVoices\":\"Listen only to who is talking. Leave on where the microphone hears a room.\",\"voiceLanguage\":\"Used to recognise speech and to speak.\",\"voiceMaxSessionSeconds\":\"A call is billed by the minute and stops on its own at this limit.\",\"voiceRemaining\":\"Time left in this call\",\"voiceSlowAgentOnCall\":\"A large knowledge base or connected MCP servers can take an agent several seconds to answer, and on a call those seconds are silence: the two settings below are what keeps the caller company while it works. If your calls feel slow, the answer itself gets shorter with fewer steps, a smaller retrieval limit or a faster model.\",\"voiceTurnEagerness\":\"Eager answers sooner but cuts in on pauses; patient waits for you to finish.\",\"voiceTurnTimeoutSeconds\":\"How long the agent lets the caller stay silent before speaking again. Nothing to do with how fast it answers.\",\"webSearchEnabled\":\"Allow the agent to search the web during conversations.\",\"webSearchNative\":\"Uses {provider}'s built-in web search capabilities.\",\"webhookUrl\":\"Paste this URL into the platform's webhook / messaging endpoint configuration.\",\"welcomePopup\":\"Show a welcome popup with the initial message before the chat is opened.\",\"whatsappVerifyToken\":\"Paste this token into the Meta webhook configuration.\",\"zeroDataRetention\":\"Route requests only to ZDR-compliant providers. Restricts the pool of available providers.\"}"),
2298
+ hint: /* @__PURE__ */ JSON.parse("{\"agentModel\":\"Pre-selected when you create a new agent.\",\"agentOnOwnEndpoint\":\"This agent runs on your organization's endpoint.\",\"allowedDomains\":\"Only search within these domains.\",\"approvalChannels\":\"A tool can ask the user to confirm before it runs: expand a tool to turn it on. On API endpoints and scheduled runs the call is refused.\",\"audience\":\"The expected JWT token audience (aud). If empty, the audience is not verified.\",\"blockedDomains\":\"Exclude these domains from results.\",\"channel\":{\"app\":\"The agent is accessible via the dedicated public page.\",\"frontoffice\":\"The agent is visible in the Frontoffice panel.\",\"widget\":\"The agent can be embedded in websites via embed script.\"},\"channelAppDisabled\":\"The App channel is disabled: the direct link and iframe will not work.\",\"channelWidgetDisabled\":\"The Widget channel is disabled: the embed code and loader will not work.\",\"costSourceEndpoint\":\"The models on your organization's endpoint: your provider bills them, the cost here is a list-price estimate.\",\"customCss\":\"CSS injected into the widget shadow DOM. Allows styling the chat interface from the outside.\",\"disallowPromptTraining\":\"Route requests only to providers that do not use your data to train AI models.\",\"dismissableNotice\":\"It will be hidden after the first message.\",\"documentFolderManaged\":\"Folder synced from {provider}: its content is changed at the source.\",\"documentRefresh\":\"Reads the page again when due and regenerates only what changed.\",\"documentRefreshTriggerOff\":\"This page updates itself, and saving your own text stops that.\",\"documentSelectionHasManaged\":\"The selection contains documents that come from a connected source and cannot be changed by hand.\",\"documentSourceInterval\":\"How often the folder is read again. Files that have not changed are not converted again.\",\"documentSourceName\":\"The name this folder has here. The remote one does not change.\",\"emailClaim\":\"The JWT claim containing the user email (default: email).\",\"embedCode\":\"Copy and paste this code to embed the agent in your website.\",\"embedding\":\"The vectors of the knowledge base, of the users' files and of the memories. They are computed on the platform AI gateway, or on your endpoint with one of the two models it can serve.\",\"embeddingActivation\":\"Before saving, the endpoint embeds a test sentence and its vector is compared with the model's own: a different model is refused. Moving to another model embeds the knowledge base and the memories again, and until it is done the searches find only what is already in the new model.\",\"embeddingEndpointModel\":\"The id your endpoint serves the model under\",\"embeddingEndpointOff\":\"Switch the endpoint on to compute the vectors there\",\"embeddingFamily\":\"Among those your endpoint serves\",\"embeddingFamilyUnknown\":\"Your endpoint does not declare it: the save checks it\",\"embeddingModelsServed\":\"Your endpoint serves these too. They cannot answer an agent: the one the vectors are computed with is chosen in the Embedding section.\",\"embeddingNotConfigured\":\"The knowledge base, the corrected answers, the memories and the document processing are stopped, because nothing computes their vectors. Activate an embedding model on your endpoint to start them again.\",\"embeddingReindexing\":\"Until the reindex ends, the searches in the knowledge base and in the memories find only what is already in the new model: partial results, never wrong ones. Nothing has to be done, and an interrupted run picks up where it stopped.\",\"embeddingStopped\":\"The endpoint that computes the vectors is off: the knowledge base, the corrected answers, the memories and the document processing are stopped until you switch it back on.\",\"embeddingWithoutEndpoint\":\"The vectors of the knowledge base, of the users' files and of the memories are computed on the platform AI gateway. Connect your endpoint to compute them there.\",\"embedIframe\":\"Embed the chat interface directly using an iframe. \",\"embedPreview\":\"The agent will be accessible at the following URL.\",\"embeddingWithoutEndpointOrGateway\":\"The vectors of the knowledge base, of the users' files and of the memories are not computed: this organization does not use the platform AI gateway. Connect your endpoint to compute them there.\",\"embeddingWithoutGateway\":\"The vectors of the knowledge base, of the users' files and of the memories. This organization does not use the platform AI gateway, so they are computed only on your endpoint, with one of the two models allowed.\",\"externalContextSchema\":\"Define which contextual data the hosting site can send to the agent.\",\"externalContextSchemaToggle\":\"Enable receiving contextual data from the hosting site.\",\"feature\":{\"apiTools\":\"Agents call the organization's own APIs as tools.\",\"byok\":\"The organization connects its own OpenAI compatible endpoint and uses its models.\",\"endpoints\":\"Agents answer other systems over REST.\",\"fileUpload\":\"Users attach files to their chat messages.\",\"gateway\":\"The AI gateway models, and with them the platform's embedding, and the utilities and the document AI that use them.\",\"integrations\":\"Connections to CRMs and to document sources such as SharePoint.\",\"mcpServers\":\"Agents use the tools of external MCP servers.\",\"subAgents\":\"An agent calls another one as a tool.\",\"teams\":\"Agents answer in Teams chats.\",\"voice\":\"Agents talk with the user in real time.\",\"whatsapp\":\"Agents answer on WhatsApp Business.\"},\"fallbackModels\":\"Alternative models tried in order if the primary model is unavailable.\",\"fieldMappingFallback\":\"Value used if the source field is empty or missing.\",\"fieldMappingSource\":\"Supports nested paths (e.g. metadata.urgency).\",\"fieldMappingTransformExtractDomainCompany\":\"Extracts the company name from the email domain (e.g. mario@acme.com → Acme). Skips free providers (gmail, outlook, etc.).\",\"fieldMappingTransformJoinArray\":\"Joins array values into a comma-separated string.\",\"fieldMappingTransformMapValues\":\"Replaces the value using the value map lookup table.\",\"fieldMappingTransformNone\":\"Copies the value as-is.\",\"fieldMappingTransformSplitFirstLast\":\"Splits text on spaces.\",\"fileUploadDisabledHint\":\"File upload is not enabled for this agent. You can enable it in the agent settings.\",\"fileUploadEnabled\":\"Allow users to attach files to their messages.\",\"freshnessBoost\":\"Applies a boost based on how recently the document was updated.\",\"freshnessScale\":\"Freshness Scale (Days)\",\"freshnessScaleExplanationDays\":\"A document updated today gets a +{weight} bonus. This bonus halves to +{halfWeight} after {half} days and practically drops to zero (+{zeroWeight}) after {zero} days.\",\"freshnessScaleExplanationMonths\":\"A document updated today gets a +{weight} bonus. This bonus halves to +{halfWeight} after {half} days and practically drops to zero (+{zeroWeight}) after {zero} days (approx. {months} months).\",\"freshnessScaleTooltip\":\"The half-life of the exponential decay. A document as old as this value will receive 50% of the maximum boost. Lower values cause older documents to lose the boost more quickly.\",\"freshnessWeight\":\"Weight multiplier of the freshness boost in the formula.\",\"freshnessWeightTooltip\":\"Maximum score bonus added to newly updated documents. A weight of 0.1 means a brand new document gets a +0.10 score advantage. This bonus decays exponentially over time until it reaches zero.\",\"gatewayCatalog\":\"The models the platform makes available, with the price per million tokens, the context size and the data privacy guarantees. Switch off the ones your organization does not use: they leave the pickers, and an agent still on one answers with the default model.\",\"gatewayNotUsed\":\"This organization does not use the platform AI gateway, so its models are not available. The platform operator can switch it back on.\",\"gatewayOffDisconnected\":\"Unless its own endpoint is on and serves models, the organization is disconnected: no agent answers.\",\"gatewayOffNoByok\":\"Own models (BYOK) are off too: its administrator can neither set up an endpoint nor switch one on or off, nor move the embedding.\",\"gatewayOffStops\":\"Switched off, nothing of this organization reaches the gateway, within thirty seconds: the gateway models stop answering, and so do the internal utilities on them; the web search stops. The knowledge base, the corrected answers, the memories and the document processing go on only if the embedding is on the organization's own endpoint: on the platform's, they stop.\",\"gatewayOffTodo\":\"The administrator has to move both default models to the organization's own endpoint, or new agents cannot be created, and the embedding too (Models, Embedding section), or the knowledge base and the memories stay stopped. The inference is no longer charged to the credit; the voice minutes and the document OCR still are.\",\"guaranteeAll\":\"{name}: guaranteed on every provider.\",\"guaranteeNone\":\"{name}: not guaranteed.\",\"guaranteeSome\":\"{name}: guaranteed on some providers only, the gateway routes accordingly.\",\"includeThoughts\":\"Streams the model's thoughts to the client along with the response.\",\"inputSchema\":\"JSON Schema (draft-07) of the input parameters the LLM can provide.\",\"integrationOAuthAdminConsent\":\"A Microsoft 365 administrator of your organization may need to approve this.\",\"integrationAppCredentialScope\":\"With Sites.Read.All the app can read every site of the tenant. The connector reads only the folders you link.\",\"integrationAppCredentialSteps\":\"In Microsoft Entra ID: App registrations, New registration. Then API permissions, Microsoft Graph, Application permissions, Sites.Read.All, and Grant admin consent. Then Certificates & secrets, New client secret (note when it expires). Copy the Directory (tenant) ID, the Application (client) ID and the secret value here.\",\"interactiveLogin\":\"Lets anonymous users sign in from the chat. The external token stays active.\",\"issuer\":\"The issuer URL of the JWT token (iss).\",\"jwksUrl\":\"The JWKS endpoint URL for JWT signature verification.\",\"loadDelay\":\"Milliseconds to wait before injecting the widget. Useful on pages with slow AMD loaders (e.g. RequireJS).\",\"loaderStrategy\":{\"dynamic-import\":\"Uses import() inside a classic <script>. Fallback for pages where module scripts are blocked or intercepted by legacy loaders.\",\"inline-module\":\"Injects an inline <script type=\\\"module\\\"> with a static import. Bypasses RequireJS and other AMD loaders. Recommended for most sites.\",\"script-src\":\"Loads the bundle via <script type=\\\"module\\\" src=\\\"...\\\">. Use this on sites with strict Content Security Policy (CSP) that block inline scripts.\"},\"mcpServerHealthCheckPath\":\"The endpoint used to check the health of the MCP Server (e.g., /api/health).\",\"mcpStatelessServer\":\"Force the client to connect in stateless mode.\",\"mmr\":\"Balances semantic relevance and document diversity in search results to avoid redundant content.\",\"mmrCandidatesLimit\":\"Maximum number of candidate chunks pre-selected before applying MMR.\",\"mmrCandidatesLimitTooltip\":\"The number of top candidate chunks retrieved from the database before applying the MMR diversity filter. For example, if set to 100, the system selects the 100 highest-scoring chunks first, then filters them to find the most diverse subset.\",\"mmrDiversity\":\"Tradeoff between relevance (0.0) and diversity (1.0).\",\"mmrDiversityTooltip\":\"Controls how diverse the search results should be. A value near 0 focuses solely on relevance (even if results are similar). A value near 1 forces the inclusion of results with different details and themes, reducing redundancy.\",\"modelContextWindow\":\"Context window: {count}k tokens.\",\"modelDefaultNoneAvailable\":\"No model available: switch on at least one model of your endpoint below.\",\"modelDefaultOutsideCatalog\":\"This model is not among those available to your organization: pick another one. Meanwhile new agents start on the platform's standard model.\",\"modelDefaults\":\"They apply to the whole organization. Each agent can still use a different model, chosen in its own settings.\",\"modelDisabledForOrganization\":\"Switched off for this organization: the agents still on it answer with the default model, and it cannot be picked for a new one.\",\"modelEndpointBaseUrl\":\"The base address of the OpenAI compatible API.\",\"modelEndpointHttp\":\"Over http the key travels unencrypted: use it only if the endpoint is reachable from your internal network alone.\",\"modelEndpointHttpTitle\":\"Unencrypted connection (http)\",\"modelEndpointKey\":\"It is stored encrypted and never shown again.\",\"modelEndpointKeyStored\":\"Already saved. Leave the field empty to keep it.\",\"modelEndpointName\":\"The name you will recognise it by when choosing models.\",\"modelEndpointOffWithEmbedding\":\"Endpoint off: its models are not available, the agents on them stop answering, and the knowledge base, the memories and the documents stop with it, because it computes their vectors. Turn it back on to start them again.\",\"modelEndpointOnWithoutGateway\":\"Endpoint on: the models you switch on are the only ones the agents can use, since this organization does not use the platform gateway, and can be the defaults.\",\"modelNotOnEndpoint\":\"Not available to this organization: its endpoint no longer has this model, so an agent on it does not answer until it is moved to another model.\",\"modelSourceEndpoint\":\"Runs on {name}, your organization's own endpoint: your provider bills it, and the costs shown here are estimated from the price list.\",\"modelSourceOff\":\"Not available to this organization: the source it runs on is switched off, so an agent on it does not answer until it is moved to another model or the source is switched back on.\",\"modelSourcePlatform\":\"Runs on the platform AI gateway and is paid with your organization's credit.\",\"ownEndpoint\":\"Use your own models next to the platform ones: connect an OpenAI compatible endpoint with your own key. The agents that run on its models are not charged to your credit.\",\"modelEndpointOn\":\"Endpoint on: the models you switch on are available to the agents next to the platform ones, and can be the defaults.\",\"modelEndpointOff\":\"Endpoint off: its models are not available, and the agents on them stop answering. Switch on the models you need below, then turn it on.\",\"addModelsRule\":\"Switch on the models your agents will be able to use. The price comes from the platform price list; if a model is not in the list, you will be asked to enter it.\",\"modelPriceAsk\":\"This model is not in the platform price list. Pick a catalog model with a similar cost, or enter the prices per million tokens.\",\"modelPriceUnknown\":\"Not in the platform price list: enter a price.\",\"modelGuaranteedOnSome\":\"The guarantees you switched on hold only on some providers of this model: the gateway routes accordingly.\",\"modelIdByHand\":\"The technical name the endpoint uses to identify the model.\",\"modelNotCompatible\":\"Not compatible with the privacy flags of this agent.\",\"modelPriceFromListing\":\"Price taken from {id} in the platform price list.\",\"modelPriceListing\":\"Platform price list, entry {id}, updated on {date}.\",\"modelPriceManual\":\"Price typed by hand on {date}.\",\"modelPriceReference\":\"Same price as {id}, updated on {date}.\",\"modelReference\":\"A catalog model this one costs like.\",\"modelRetired\":\"No longer available on the platform: move the agents using it to another model.\",\"moveDocument\":\"Choose the destination folder for «{name}».\",\"moveDocuments\":\"Choose the destination folder for {n} document. | Choose the destination folder for {n} documents.\",\"multipleChoiceAllowCustomAnswer\":\"Show a free-text field below the options so the user can type a custom answer.\",\"multipleChoiceMaxOptions\":\"Maximum number of options the AI can generate (min. 2, max. 10).\",\"nameClaim\":\"The JWT claim containing the user name (default: name). When missing, the system also tries name, given_name and family_name, and the same namespace as the email claim.\",\"oauthCallbackUrl\":\"Set this URL as the Callback URL (Redirect URI) in the OAuth provider.\",\"outputSchema\":\"JSON Schema (draft-07) of the expected response. Informational only.\",\"passphrase\":\"Enter {passphrase} to confirm the operation\",\"platformSupported\":\"Renders natively on WhatsApp and Teams\",\"privacyPolicyNotice\":\"Displayed at the bottom of the contact form. Supports Markdown.\",\"providerOrganizationId\":\"For Microsoft this refers to the tenant identifier (tenant ID). \\nFor others, enter the email domain (e.g. company.com).\",\"providerTimeoutMs\":\"Timeout in milliseconds before falling back to the next provider (min 1000, max 789000). BYOK credentials only.\",\"reasoningDefault\":\"Platform default, applied until you choose a different value.\",\"reasoningNotSupported\":\"Reasoning is not supported for the selected provider.\",\"sessionExpiresIn\":\"Widget session duration in seconds (min 60). If empty, the default of 8 hours applies.\",\"showExtendedSteps\":\"Shows reasoning and tool calls as an expandable timeline in the chat.\",\"smoothStream\":\"Smooths text streaming creating a more natural reading experience.\",\"subAgentName\":\"Only letters, numbers, underscores (_) and hyphens (-) are allowed.\",\"teamsAccentColor\":\"Defaults to the agent's theme color.\",\"teamsAppVersion\":\"Bump this (e.g. 1.0.1) and reinstall the package to push manifest changes, such as new permissions, to already-installed apps.\",\"tool\":{\"fetchTeamsChannelHistory\":\"On Teams channels, lets the agent read the wider channel conversation on demand. Requires reinstalling the Teams app.\",\"geocode\":\"Converts place names to geographic coordinates and vice versa.\",\"getWeather\":\"Fetches current weather data and forecasts for a specific location.\",\"readDocumentFile\":\"Allows the agent to read the original file of PDF/DOCX documents from the knowledge base. Useful for tables, charts, and visual content.\",\"requestGeolocation\":\"Requests the user's GPS location via the browser.\",\"retrieveRevisedAnswers\":\"Retrieves administrator-verified answers and uses them as the primary source of truth.\",\"runWorker\":\"Lets the agent run generic workers that inherit its tools to handle independent sub-tasks in parallel.\",\"searchInKnowledgeBase\":\"Searches uploaded documents in the knowledge base to provide contextual answers.\",\"searchInUserFiles\":\"Searches the files this user personally uploaded in chat (their private files), kept separate from the agent knowledge base.\",\"showArtifact\":\"Displays structured content such as formatted text, code, or documents.\",\"showCalendarEvent\":\"Shows a calendar event with options for Google Calendar, Outlook, and .ics download.\",\"showComparison\":\"Compares 2 to 4 items side by side to help the user decide.\",\"showContactForm\":\"Displays a contact form to collect user information.\",\"showDiagram\":\"Renders a chart or a diagram (flowchart, sequence, class, ER, state).\",\"showEmail\":\"Composes a ready-to-send email from the user's email client.\",\"showForm\":\"Allows collecting structured input (text, numbers, dates, choices) via multi-step forms.\",\"showImageGallery\":\"Collects images in a browsable gallery with zoom and lightbox.\",\"showLocation\":\"Displays an interactive map with a marker and directions.\",\"showMessage\":\"Composes a message to send via WhatsApp, Telegram, or SMS.\",\"showMultipleChoice\":\"Presents selectable options to guide the conversation flow.\",\"showProductList\":\"Shows a product list with images, descriptions, and purchase links.\",\"showQrCode\":\"Generates a QR code from text, URLs, or structured data.\",\"showSources\":\"Shows references to the knowledge base documents used in the response.\",\"showSuggestedReply\":\"Suggests clickable replies to continue the conversation. To have them after every answer, ask for it in the agent's instructions.\",\"showVideo\":\"Plays videos inline: direct files (MP4/WebM) or YouTube/Vimeo links.\",\"showWeather\":\"Displays a weather forecast widget directly in the chat.\",\"showWebPages\":\"Suggests links to web pages relevant to the user's question.\",\"useAllUserFiles\":\"Searches all the user's files, including those uploaded on other agents, not just this agent's.\",\"useAllUserKb\":\"Reads the memories the user shared with every agent of this organization, not just this one. Writing stays scoped to this agent.\",\"userMemory\":\"Lets the agent remember and recall facts the user shares across conversations (name, preferences, etc.).\"},\"toolRequiresApproval\":\"The assistant waits for approval in the chat before running.\",\"apiToolSecretParameters\":\"Sent with every call, in the query string or in the JSON body, and never shown to the model. Once saved a value is not shown again: leave it empty to keep it.\",\"apiToolSecretParametersNew\":\"Sent with every call, in the query string or in the JSON body, and never shown to the model. Type every value: once saved it is not shown again.\",\"apiToolSecretStored\":\"Saved: leave it empty to keep it\",\"apiToolCredentialInSchema\":\"These parameters look like credentials, and the model fills them in: {names}. Move them to the secret parameters and remove them from the input schema.\",\"apiToolCredentialBadge\":\"A parameter that looks like a credential is filled in by the model\",\"apiToolSecretsOriginChanged\":\"The URL points to another host: type the values of the secret parameters again, the saved ones stay with the previous host.\",\"apiToolSecretBodyMethod\":\"A {method} request sends no body\",\"toolWorkingSetMode\":{\"active\":\"Before each reply, an evaluation model (TypeSafe Jev) picks the MCP servers, API tools and sub-agents the message needs, and the agent sees only those. When it needs another one, it brings it back on its own. Each evaluation is charged to the organization.\",\"off\":\"The agent sees every tool on every reply.\",\"shadow\":\"The evaluation model picks the tools each message needs, but the agent still sees them all: the choice is only recorded in the message detail, to compare it with the tools actually used before turning it on. Each evaluation is charged to the organization.\"},\"useColorsForAgentHeader\":\"Color the agent header based on the main color.\",\"userFeedbackComment\":\"The user left a comment on this answer\",\"userFeedbackNegative\":\"The user rated this answer negatively\",\"userFeedbackPositive\":\"The user rated this answer positively\",\"userFeedbackReaction\":\"The user reacted to this answer\",\"utilityModel\":\"Used behind the scenes for tasks such as rephrasing user questions and updating memories.\",\"voiceApprovalRefused\":\"During a call these actions do not run: approval is given on screen and on the phone there is nobody to ask, so the agent refuses them and says so. Affected: {tools}.\",\"voiceCascadeTimeoutSeconds\":\"How long the provider waits for us before cancelling the turn. It must sit above the agent's slowest turn: a knowledge base, tools and slow models all stretch it.\",\"voiceEnabled\":\"Let people talk to this agent. The answer is still this agent, with its knowledge and tools.\",\"voiceFillerAfterSeconds\":\"Says it is working when the answer is late. Empty: four seconds.\",\"voiceFillerMessage\":\"Write it so any continuation still sounds natural. Empty: a default sentence in the voice language.\",\"voiceFirstMessage\":\"Said as soon as the call opens. It also covers the slower first turn.\",\"voiceId\":\"Cloned voices are not listed: the provider forbids them here.\",\"voiceIgnoreBackgroundVoices\":\"Listen only to who is talking. Leave on where the microphone hears a room.\",\"voiceLanguage\":\"Used to recognise speech and to speak.\",\"voiceMaxSessionSeconds\":\"A call is billed by the minute and stops on its own at this limit.\",\"voiceRemaining\":\"Time left in this call\",\"voiceSlowAgentOnCall\":\"A large knowledge base or connected MCP servers can take an agent several seconds to answer, and on a call those seconds are silence: the two settings below are what keeps the caller company while it works. If your calls feel slow, the answer itself gets shorter with fewer steps, a smaller retrieval limit or a faster model.\",\"voiceTurnEagerness\":\"Eager answers sooner but cuts in on pauses; patient waits for you to finish.\",\"voiceTurnTimeoutSeconds\":\"How long the agent lets the caller stay silent before speaking again. Nothing to do with how fast it answers.\",\"webSearchEnabled\":\"Allow the agent to search the web during conversations.\",\"webSearchNative\":\"Uses {provider}'s built-in web search capabilities.\",\"webhookUrl\":\"Paste this URL into the platform's webhook / messaging endpoint configuration.\",\"welcomePopup\":\"Show a welcome popup with the initial message before the chat is opened.\",\"whatsappVerifyToken\":\"Paste this token into the Meta webhook configuration.\",\"zeroDataRetention\":\"Route requests only to ZDR-compliant providers. Restricts the pool of available providers.\",\"webSourceUnselected\":\"Pages you leave unselected will arrive with the next checks of the source.\",\"documentFolderWebSource\":\"Website folder: new pages arrive on their own and stay editable.\"}"),
2142
2299
  integrationProvider: {
2143
2300
  hubspot: "HubSpot",
2144
2301
  salesforce: "Salesforce",
2145
- sharepoint: "SharePoint"
2302
+ sharepoint: "SharePoint",
2303
+ web: "Website"
2146
2304
  },
2147
2305
  integrationProviderDescription: {
2148
2306
  hubspot: "Sync contacts and leads with HubSpot CRM.",
@@ -2166,7 +2324,7 @@ var Pn = {
2166
2324
  expired: "Expired",
2167
2325
  pending: "Pending"
2168
2326
  },
2169
- label: /* @__PURE__ */ JSON.parse("{\"AI\":\"AI\",\"acceptInvitationAndCreateAccount\":\"Accept the invitation and create your account\",\"accountingCredit\":\"Accounting balance\",\"actions\":\"Actions\",\"active\":\"Active\",\"activeSessions\":\"Active sessions\",\"actualCost\":\"Actual cost\",\"addApiTool\":\"Add API Tool\",\"addIntegration\":\"Add integration\",\"additionalMetadata\":\"Additional metadata\",\"admin\":\"Admin\",\"advancedOptions\":\"Advanced options\",\"agent\":\"Agent\",\"agentModel\":\"Default model\",\"agentResponse\":\"Agent response\",\"agentTree\":\"Agent Tree\",\"agents\":\"Agents\",\"agentsUsed\":\"Agents used\",\"aiDescription\":\"AI Generated\",\"aiDescriptionModel\":\"AI model\",\"aiDescriptionPrompt\":\"Custom prompt\",\"allAgents\":\"All agents\",\"allChannels\":\"All channels\",\"allowedDomains\":\"Allowed domains\",\"analysis\":\"Analysis\",\"anonymized\":\"Anonymized\",\"anonymous\":\"Anonymous\",\"answer\":\"Answer\",\"answeringOnTheCall\":\"Answering…\",\"apiKey\":\"API Key\",\"apiKeys\":\"API Keys\",\"appearance\":\"Appearance\",\"arrayOfObjects\":\"Array of objects\",\"assistantMessage\":\"Assistant response\",\"attachmentsNotImported\":\"Attachments not imported\",\"attempts\":\"Attempts\",\"attention\":\"Attention\",\"audience\":\"Audience\",\"authentication\":\"Authentication\",\"auto\":\"Auto\",\"autoDetected\":\"Automatically detected\",\"autoProvisioning\":\"Auto provisioning\",\"autoProvisioningDescription\":\"Users who authenticate through these identity providers or domains will be automatically added to your organization with the default role.\",\"autoRefreshError\":\"Error\",\"autoRefreshOff\":\"Paused\",\"autoRefreshOn\":\"Live\",\"autoRefreshStoppedErrors\":\"Automatic update stopped after repeated errors.\",\"autoRefreshStoppedUnavailable\":\"Automatic update stopped: this content is no longer accessible.\",\"autoRefreshWarning\":\"Warning\",\"availableCredit\":\"Available balance\",\"averageLine\":\"Average\",\"avgChatsPerUser\":\"Chats per user\",\"avgMessagesPerChat\":\"Messages per chat\",\"avgTime\":\"Avg. time\",\"banned\":\"Banned\",\"baseUrl\":\"Base URL\",\"black\":\"Black\",\"blocked\":\"Blocked\",\"blockedDomains\":\"Blocked domains\",\"blockedReasons\":\"Blocked reasons\",\"body\":\"Body\",\"botName\":\"Bot name\",\"breadcrumbs\":\"Breadcrumbs\",\"browserEngine\":\"Browser engine\",\"browsers\":\"Browsers\",\"budgetTokens\":\"Budget tokens\",\"byChannel\":\"By channel\",\"cached\":\"cached\",\"calendarEvent\":\"Event\",\"changePassword\":\"Change Password\",\"channel\":\"Channel\",\"channels\":\"Channels\",\"chat\":\"Chat\",\"chatCreatedAgo\":\"Created\",\"chatOrigin\":\"Chat origin\",\"chatStatistics\":\"Statistics\",\"chatTypes\":\"Conversation type\",\"chatUpdatedAgo\":\"Last message\",\"chatWidget\":\"Chat Widget\",\"chunks\":\"Chunks\",\"clear\":\"Clear\",\"codeEditor\":\"Code\",\"collapseContext\":\"Hide context\",\"comment\":\"Comment\",\"comparison\":\"Comparison\",\"completeName\":\"Full name\",\"completedAt\":\"Completed at\",\"configMcpServer\":\"Configure MCP server\",\"configure\":\"Configure\",\"confirm\":\"Confirm\",\"confirmPassword\":\"Confirm password\",\"confirmPrivateNetwork\":\"I confirm the endpoint cannot be reached from the internet\",\"confirmWithEmail\":\"Type your email to confirm\",\"confirmWithPassword\":\"Enter your password to confirm\",\"connectMcpServer\":\"Connect MCP server\",\"connectSubAgent\":\"Connect sub-agent\",\"connectedAccounts\":\"Connected accounts\",\"connectionChecking\":\"Connection checking...\",\"connectionConnected\":\"Connected\",\"connectionError\":\"Connection error\",\"connectionIdle\":\"Not verified\",\"connectionStatus\":\"Connection\",\"connectionTypes\":\"Connection type\",\"const\":\"Constant\",\"contactUs\":\"Contact us\",\"content\":\"Content\",\"contentPreview\":\"Content preview\",\"contextTokens\":\"{count}k context\",\"conversationLengthBuckets\":\"Conversation length\",\"conversationOutline\":\"Conversation outline\",\"conversations\":\"Conversations\",\"conversationsOverTime\":\"Conversations over time\",\"cost\":\"Cost\",\"costByChannel\":\"Cost per channel\",\"costInUSD\":\"Cost in USD\",\"costSource\":\"Cost source\",\"costSourceAll\":\"Total\",\"costSourceEndpoint\":\"Endpoint\",\"costSourceGateway\":\"Gateway\",\"country\":\"Country\",\"crawlMode\":\"Crawl Mode\",\"createdAt\":\"Created at\",\"createdBy\":\"Created by\",\"credit\":\"Credit\",\"creditUpdatedAt\":\"Credit updated at\",\"credits\":\"Credits\",\"crmSync\":\"CRM Sync\",\"curlExample\":\"cURL Example\",\"currentAgent\":\"Current agent\",\"currentLocation\":\"Current location\",\"currentPassword\":\"Current password\",\"currentSession\":\"Current session\",\"customCss\":\"Custom CSS\",\"customRange\":\"Custom range\",\"dailyUsage\":\"Daily usage\",\"dark\":\"Dark\",\"darkModePreference\":\"Dark mode\",\"dataLoadFailed\":\"Could not load this data\",\"datetime\":\"Date / Time\",\"day\":\"Day\",\"dayRateLimit\":\"Day Rate Limit\",\"days\":\"{count} day | {count} days\",\"default\":\"Default\",\"defaultMappingHint\":\"If no mapping is configured, the default one for the provider will be used.\",\"defaultRole\":\"Default role\",\"deleted\":\"Deleted\",\"deprecated\":\"Deprecated\",\"description\":\"Description\",\"deselectAction\":\"Remove\",\"details\":\"Details\",\"device\":\"Device\",\"deviceContext\":\"Device context\",\"deviceType\":\"Device type\",\"diagram\":\"Diagram\",\"disabled\":\"Disabled\",\"disallowPromptTraining\":\"Prompt Training disallowed\",\"dismissableNotice\":\"Notice\",\"documentOrigin\":\"Origin\",\"documentPriority\":\"Document Priority\",\"documentRefresh\":\"Automatic update\",\"documentRefreshAuto\":\"Automatic\",\"documentRefreshInterval\":\"Frequency\",\"documentRefreshLastRead\":\"Last read\",\"documentRefreshNext\":\"Next update\",\"documentRefreshOutcome\":\"Outcome\",\"documentRefreshPaused\":\"Paused\",\"documentSourceInterval\":\"Check frequency\",\"documentSourceLastRun\":\"Last run\",\"documentSourceLastSync\":\"Last check\",\"documentSourceNextSync\":\"Next check\",\"documentSourceSearch\":\"Search a site\",\"documentType\":\"Document type\",\"documents\":\"Documents\",\"domainFilter\":\"Domain filter\",\"downloadFile\":\"Download file\",\"downloading\":\"Downloading\",\"duration\":\"Duration\",\"editApiTool\":\"Edit API Tool\",\"editIntegration\":\"Edit integration\",\"editMcpServer\":\"Edit MCP server\",\"editSubAgent\":\"Edit sub-agent\",\"effectiveCredit\":\"Effective credit\",\"email\":\"Email\",\"emailClaim\":\"Email claim\",\"emailDomain\":\"Email domain\",\"emailVerified\":\"Email verified\",\"embed\":\"Embed\",\"embedCode\":\"Embed Code\",\"embedding\":\"Embedding\",\"embeddingEndpointModel\":\"Id on the endpoint\",\"embeddingModel\":\"Embedding model\",\"embeddingModelsCount\":\"Embedding models ({count})\",\"embeddingNotConfigured\":\"Not configured\",\"embeddingNotConfiguredReason\":\"The platform AI gateway is off for this organization\",\"embeddingOnEndpoint\":\"Embedding on your endpoint\",\"embeddingOnPlatform\":\"On the platform AI gateway\",\"embeddingReindex\":\"Reindex of the knowledge base and the memories\",\"embeddingReindexDone\":\"Reindexed on {date}\",\"embeddingReindexPaused\":\"Reindex paused\",\"embeddingReindexProgress\":\"Reindexing: {done} of {total} vectors done\",\"embeddingReindexQueued\":\"Reindex queued: it starts within a few minutes\",\"enabled\":\"Enabled\",\"enabledTools\":\"Enabled tools\",\"endDate\":\"End date\",\"endpointCost\":\"Endpoint cost (estimate)\",\"endpointModels\":\"Your endpoint's models\",\"engagement\":\"Engagement\",\"enum\":\"Enum values\",\"error\":\"Error\",\"estimatedCost\":\"Estimated end-of-month cost\",\"estimatedCredit\":\"Estimated credit\",\"estimatedMonthlyCost\":\"Month-end estimate\",\"excludeDomains\":\"Exclude domains\",\"expandContext\":\"Show more context\",\"expireIn\":\"Expires in\",\"expires\":\"Expires\",\"expiresAt\":\"Expiration\",\"exportMyData\":\"Export my data\",\"externalAuth\":\"External authentication\",\"externalAuthDescription\":\"Configure external authentication providers to allow authentication via JWT tokens issued by these providers. Users authenticated through these providers will be automatically added to your organization with the default role (auto provisioning).\",\"externalContext\":\"External context\",\"externalContextSchema\":\"External context schema\",\"externalId\":\"External ID (CRM)\",\"fallbackModels\":\"Fallback models\",\"feedback\":\"Feedback\",\"feedbacks\":\"Feedbacks\",\"fieldMappingFallback\":\"Fallback value\",\"fieldMappingSource\":\"Source field\",\"fieldMappingTarget\":\"Target field {number}\",\"fieldMappingTransform\":\"Transform\",\"fieldMappingTransformExtractDomainCompany\":\"Extract company from email domain\",\"fieldMappingTransformJoinArray\":\"Join array\",\"fieldMappingTransformMapValues\":\"Map values\",\"fieldMappingTransformNone\":\"None\",\"fieldMappingTransformSplitFirstLast\":\"Split first/last\",\"fieldMappingValueMap\":\"Value map\",\"file\":\"File\",\"fileUpload\":\"File Upload\",\"fileUploadAllowedMimeTypes\":\"Allowed file types\",\"fileUploadEnabled\":\"Enable file upload\",\"fileUploadMaxFileSize\":\"Max file size (MB)\",\"fileUploadMaxFilesPerChat\":\"Max files per chat\",\"fileUploadMaxFilesPerMessage\":\"Max files per message\",\"files\":\"Files\",\"filters\":\"Filters\",\"floatingButtonPosition\":\"Button position\",\"folderName\":\"Folder name\",\"followExternal\":\"Follow External Links\",\"footer\":\"Footer\",\"forceOcr\":\"Force OCR\",\"formMaxOptionsPerStep\":\"Suggested max options\",\"formMaxSteps\":\"Suggested max steps\",\"frequencyPenalty\":\"Frequency Penalty\",\"freshnessBoost\":\"Freshness Boost\",\"freshnessScale\":\"Freshness Scale\",\"freshnessWeight\":\"Freshness Weight\",\"fullDuration\":\"Duration (ms)\",\"gallery\":\"Gallery ({count} images)\",\"gatewayCost\":\"Gateway cost\",\"gatewayModels\":\"Platform models\",\"gdprRequestType\":{\"conversations_erasure\":\"Conversations erasure\",\"erasure\":\"Data erasure\",\"export\":\"Data export\"},\"gdprRequests\":\"GDPR requests\",\"general\":\"General\",\"generateSchemaFromJson\":\"Generate schema from JSON\",\"goalOutcome\":\"Goal outcome\",\"granularity\":\"Granularity\",\"groupReasoningAgents\":\"Group\",\"hasRedundantChunks\":\"Has Redundant Chunks\",\"header\":\"Header\",\"headers\":\"HTTP headers\",\"healthCheckPath\":\"Health check\",\"hour\":\"Hour\",\"hourRateLimit\":\"Hour Rate Limit\",\"hsAccessToken\":\"Access Token\",\"hsAccessTokenHint\":\"Create a HubSpot Private App with the following scopes: crm.objects.contacts.read, crm.objects.contacts.write, crm.objects.owners.read.\",\"hsDefaultOwnerId\":\"Default Owner ID\",\"hsDefaultOwnerIdHint\":\"HubSpot user ID to assign contacts to. Leave empty to not assign an owner.\",\"hsStaticProperties\":\"Static Properties\",\"hsStaticPropertiesHint\":\"Fixed properties added to every contact.\",\"httpHeaderKey\":\"Key\",\"httpHeaderValue\":\"Value\",\"secretParameters\":\"Secret parameters\",\"secretParameterPosition\":\"Sent in\",\"secretPositionQuery\":\"Query string\",\"secretPositionBody\":\"Body\",\"apiToolCredentialBadge\":\"Key exposed\",\"httpHeaders\":\"HTTP headers\",\"iframe\":\"Iframe\",\"iframeCode\":\"Iframe Code\",\"imageLoadError\":\"Image not available\",\"impersonated\":\"Impersonated\",\"impersonation\":\"Impersonation\",\"importing\":\"Importing\",\"inRedis\":\"In Redis\",\"inStock\":\"In stock\",\"integrationReconnectNeeded\":\"Reconnect needed\",\"integrationAppCredential\":\"App {clientId}\",\"modelDefaults\":\"Default models\",\"modelNotAvailable\":\"not available\",\"modelSourcePlatform\":\"Platform\",\"modelSwitchedOff\":\"switched off\",\"ownEndpoint\":\"Your own endpoint (BYOK)\",\"price\":\"Price\",\"priceListModel\":\"Price list model\",\"priceToSet\":\"Price to set\",\"modelPriceOf\":\"Price of {id}\",\"context\":\"Context\",\"someProviders\":\"Some providers\",\"modelsActiveSummary\":\"{active} of {count} models active\",\"noModelsYet\":\"No models yet\",\"notServedAnyMore\":\"No longer offered by the endpoint\",\"modelIdByHand\":\"Model id\",\"modelReference\":\"Reference model\",\"msClientId\":\"Application (client) ID\",\"msClientSecret\":\"Client secret\",\"msTenantId\":\"Directory (tenant) ID\",\"inTest\":\"In testing\",\"includeDomains\":\"Include domains\",\"includeThoughts\":\"View reasoning\",\"indexStatus\":\"Index status\",\"info\":\"Info\",\"initialMessage\":\"Initial message\",\"input\":\"Input\",\"inputSchema\":\"Input Schema\",\"insertEmail\":\"Insert email\",\"integration\":\"Integration\",\"integrationConfig\":\"Configuration\",\"integrationDisabled\":\"Disabled\",\"integrationEnabled\":\"Enabled\",\"integrationFieldMapping\":\"Field mapping\",\"integrationProvider\":\"Provider\",\"integrationSyncLogs\":\"Sync logs\",\"integrationSyncLogsDescription\":\"Synchronization occurs automatically when a new lead is created.\",\"integrations\":\"Integrations\",\"interactiveLogin\":\"Show login/registration\",\"interface\":\"Interface\",\"ipAddress\":\"IP Address\",\"isAutoJoinEnabled\":\"Automatically merge existing users with the same email\",\"issuer\":\"Issuer\",\"itemsPerPage\":\"Items Per Page\",\"jsonSample\":\"JSON sample\",\"jwksUrl\":\"JWKS URL\",\"key\":\"Key\",\"language\":\"Language\",\"languages\":\"Languages\",\"last14Days\":\"Last 14 days\",\"last30Days\":\"Last 30 days\",\"last7Days\":\"Last 7 days\",\"last90Days\":\"Last 90 days\",\"lastActive\":\"Last active\",\"lastActivity\":\"Last activity\",\"lastMonth\":\"Last month\",\"lastRecalledAt\":\"Last recalled\",\"lastReconciledAt\":\"Last reconciled at\",\"lastRefillAt\":\"Last refill at\",\"lastSync\":\"Last sync\",\"lastUsedAt\":\"Last used\",\"latest\":\"Latest\",\"leadId\":\"Lead ID\",\"left\":\"Left\",\"light\":\"Light\",\"limit\":\"Limit\",\"limitedStock\":\"Limited stock\",\"linkedAgents\":\"Linked agents\",\"llmIssues\":\"LLM issues\",\"loadDelay\":\"Load Delay (ms)\",\"loaderStrategy\":\"Loader Strategy\",\"loaderStrategyDynamicImport\":\"Dynamic Import\",\"loaderStrategyInlineModule\":\"Inline Module\",\"loaderStrategyScriptSrc\":\"Script Src\",\"locale\":\"Language\",\"location\":\"Location\",\"logo\":\"Logo\",\"logoUrl\":\"Logo URL\",\"mainColor\":\"Main color\",\"manageProfileDescription\":\"Edit your name, password, avatar and more\",\"maxDepth\":\"Max Depth\",\"maxMessageLength\":\"Max Message Length\",\"maxOutputTokens\":\"Max Tokens\",\"maxPages\":\"Max Pages\",\"maxResults\":\"Max results\",\"maxStepCount\":\"Max Steps\",\"maxUses\":\"Max uses\",\"mcpAuthType\":\"Authentication type\",\"mcpServer\":\"MCP Server\",\"mcpServerUrl\":\"MPC server URL\",\"mcpStatelessServer\":\"Stateless client\",\"memberSince\":\"Member since\",\"memories\":\"Memories\",\"memory\":\"Memory\",\"message\":\"Message\",\"messageDetails\":\"Message detail\",\"messagePlaceholder\":\"Placeholder\",\"messages\":\"Messages\",\"metadata\":\"Metadata\",\"method\":\"Method\",\"mimeTypeDocuments\":\"Documents\",\"mimeTypeImages\":\"Images\",\"mimeTypeText\":\"Text\",\"minuteRateLimit\":\"Minute Rate Limit\",\"mmr\":\"Maximal Marginal Relevance (MMR)\",\"mmrCandidatesLimit\":\"Candidates Limit\",\"mmrDiversity\":\"MMR Diversity\",\"model\":\"Model\",\"modelParameters\":\"Model parameters\",\"month\":\"Month\",\"monthRateLimit\":\"Month Rate Limit\",\"monthlyCost\":\"Monthly cost\",\"multipleChoiceAllowCustomAnswer\":\"Allow custom answer\",\"multipleChoiceMaxOptions\":\"Maximum number of options\",\"name\":\"Name\",\"nameClaim\":\"Name claim\",\"never\":\"Never\",\"newChat\":\"New chat\",\"newPassword\":\"New password\",\"no\":\"No\",\"noDataAvailable\":\"No data available\",\"noDataRetention\":\"ZDR\",\"noFieldMapping\":\"No custom field mapping configured\",\"noIntegrations\":\"No integrations configured\",\"noPromptTraining\":\"No training\",\"noSyncLogs\":\"No sync logs found\",\"noTimingData\":\"No data yet. Make a chat request to see timing logs.\",\"noTimingDataDesc\":\"Start a conversation with an agent to see timing logs here in real time.\",\"noTimingDataTitle\":\"No data available\",\"notAvailable\":\"Not available\",\"notCompatible\":\"not compatible\",\"notConfigured\":\"Not configured\",\"notConnected\":\"Not connected\",\"notSynced\":\"Not synced\",\"notificationTitle\":{\"document_error\":\"Document processing failed\",\"document_sync_removed\":\"Documents removed from a synchronised folder\",\"organization\":{\"created\":\"Organization Created\",\"invite\":\"Organization Invite\",\"invite_accepted\":\"Invitation Accepted\",\"invite_rejected\":\"Invitation Rejected\",\"removed\":\"Removed from Organization\"},\"password_reset_requested\":\"A password reset has been requested\"},\"notificationType\":{\"api_key_expiring\":\"API Key expiring\",\"chat_blocked\":\"Chat blocked\",\"chat_warning\":\"Chat warning\",\"document_error\":\"Document error\",\"document_sync_removed\":\"Synchronised content removed\",\"generic\":\"Generic\",\"organization\":\"Organization\",\"password_reset_requested\":\"Password reset requested\"},\"oauthAuthorizationUrl\":\"OAuth Authorization URL\",\"oauthClientId\":\"OAuth Client ID\",\"oauthClientSecret\":\"OAuth Client Secret\",\"oauthScopes\":\"OAuth Scopes\",\"oauthTokenUrl\":\"OAuth Token URL\",\"ocrUsed\":\"OCR\",\"older\":\"Older\",\"onChannels\":\"WA · Teams\",\"openSource\":\"Open source\",\"operatingSystems\":\"Operating systems\",\"or\":\"Or\",\"organization\":\"Organization\",\"organizations\":\"Organizations\",\"origin\":\"Origine\",\"originalMessage\":\"Original answer\",\"origins\":\"Origins\",\"outOfStock\":\"Out of stock\",\"output\":\"Output\",\"outputSchema\":\"Output Schema\",\"pages\":\"Pages\",\"passphrase\":\"Enter passphrase\",\"password\":\"Password\",\"paused\":\"Paused\",\"peakHours\":\"Peak hours\",\"perMillionTokens\":\"per million tokens\",\"period\":\"Period\",\"phaseBreakdown\":\"Phase breakdown\",\"phone\":\"Phone number\",\"picture\":\"Picture\",\"platformAssistant\":\"Platform assistant\",\"platformContext\":\"Platform context\",\"postStreaming\":\"Post-streaming\",\"preStreaming\":\"Pre-streaming\",\"preferences\":\"Preferences\",\"presencePenalty\":\"Presence Penalty\",\"preview\":\"Preview\",\"priceInput\":\"Input price\",\"priceOutput\":\"Output price\",\"priority\":\"Priority\",\"priority_1\":\"Lowest\",\"priority_2\":\"Low\",\"priority_3\":\"Normal\",\"priority_4\":\"High\",\"priority_5\":\"Critical\",\"privacy\":\"Privacy\",\"privacyPolicyNotice\":\"Visible in the contact form.\",\"processedAt\":\"Processed at\",\"processing\":\"Processing...\",\"profile\":\"Profile\",\"prompt\":\"Prompt\",\"properties\":\"Properties\",\"provider\":\"Provider\",\"providerOrganizationId\":\"Provider ID\",\"providerTimeoutMs\":\"Provider timeout (ms)\",\"qdrantSync\":\"Vector Sync\",\"qrCode\":\"QR Code\",\"question\":\"Question\",\"rateLimits\":\"Rate Limits\",\"read\":\"Read\",\"reasoning\":\"Reasoning\",\"reasoningAgentTester\":\"Reasoning Agent Tester\",\"reasoningDetails\":\"Reasoning details\",\"reasoningEffort\":\"Reasoning effort\",\"reasoningSummary\":\"Reasoning summary\",\"recommended\":\"Recommended\",\"redundantChunks\":\"Redundant chunks\",\"referrerDomains\":\"Referrer domains\",\"refillAmount\":\"Refill amount\",\"released\":\"Released\",\"rememberMe\":\"Remember me\",\"replyWithoutText\":\"Reply without text\",\"requestCount\":\"Requests\",\"requestedAt\":\"Requested at\",\"requests\":\"Requests\",\"requestsPerAgent\":\"Requests per agent\",\"requestsUsed\":\"Requests used\",\"required\":\"Required\",\"requiredFields\":\"Required fields\",\"retired\":\"retired\",\"revisedMessage\":\"Revised answer\",\"right\":\"Right\",\"riskScoreBands\":\"Risk score bands\",\"role\":\"Role\",\"rootDocuments\":\"Without folder\",\"scheduledAt\":\"Scheduled at\",\"schemaRootArray\":\"Array\",\"schemaRootObject\":\"Object\",\"schemas\":\"Schemas\",\"screenCategories\":\"Screen resolution\",\"searchAndExecution\":\"Search & execution\",\"searchMode\":\"Search Mode\",\"searchRecencyFilter\":\"Recency filter\",\"sectionChannelBreakdown\":\"Channel breakdown\",\"sectionConversationQuality\":\"Conversation quality\",\"sectionCostTrend\":\"Monthly cost trend\",\"sectionDeviceContext\":\"Devices & context (web and widget)\",\"sectionTraffic\":\"Traffic (web and widget)\",\"security\":\"Security\",\"selectAgent\":\"Select an agent\",\"selectedHint\":\"Selected\",\"sentiment\":\"Sentiment\",\"sentimentTrends\":\"Sentiment trends\",\"serverInfo\":\"MCP Server info\",\"sessionExpiresIn\":\"Session duration (seconds)\",\"setPassword\":\"Set password\",\"settings\":\"Settings\",\"sfApiVersion\":\"API Version\",\"sfClientId\":\"Client ID\",\"sfClientSecret\":\"Client Secret\",\"sfExternalIdField\":\"External ID Field\",\"sfInstanceUrl\":\"Instance URL\",\"shareWith\":\"Share with agents\",\"showExtendedSteps\":\"Extended steps view\",\"showing\":\"Showing\",\"similarity\":\"Similarity\",\"sitemapUrl\":\"Sitemap URL\",\"size\":\"Size\",\"slowest\":\"Slowest\",\"slug\":\"Slug\",\"smartRanking\":\"Smart Ranking\",\"smoothStream\":\"Smooth streaming\",\"source\":\"Source\",\"sources\":\"Sources\",\"spokenExchange\":\"Exchanged by voice\",\"startDate\":\"Start date\",\"startUrl\":\"Start URL\",\"status\":\"Status\",\"steps\":\"steps\",\"streaming\":\"Streaming\",\"style\":\"Style\",\"subAgent\":\"Sub-agent\",\"subject\":\"Subject\",\"syncStatus\":\"Sync status\",\"targetAll\":\"All users\",\"targetOrganization\":\"Organization\",\"targetType\":\"Target\",\"targetUser\":\"Specific user\",\"teams\":\"Microsoft Teams\",\"teamsAccentColor\":\"Accent color\",\"teamsAppId\":\"App ID (Microsoft)\",\"teamsAppPassword\":\"App password / client secret\",\"teamsAppTenantId\":\"Tenant ID\",\"teamsAppType\":\"App type\",\"teamsAppVersion\":\"App version\",\"teamsDescriptionFull\":\"Full description\",\"teamsDescriptionShort\":\"Short description\",\"teamsDeveloperName\":\"Developer name\",\"teamsManifestDetails\":\"App details (shown in Teams)\",\"temperature\":\"Temperature\",\"testConnection\":\"Test connection\",\"testPlayground\":\"Test Playground\",\"textColor\":\"Text color\",\"theme\":\"Theme\",\"thinking\":\"Thinking\",\"thinkingBudget\":\"Thinking budget\",\"thinkingDisplay\":\"Thinking display\",\"thinkingEffort\":\"Thinking effort\",\"thinkingLevel\":\"Thinking level\",\"thinkingType\":\"Thinking type\",\"thisMonth\":\"This month\",\"timelineSteps\":\"Timeline steps\",\"timeoutMs\":\"Timeout (ms)\",\"timezoneRegions\":\"Timezone region\",\"title\":\"Title\",\"today\":\"Today\",\"tokens\":\"tokens\",\"tool\":\"Tool\",\"toolApprovalBadge\":\"User confirm\",\"toolName\":\"Tool name: {name}\",\"toolRequiresApproval\":\"Ask the user to confirm\",\"toolWorkingSet\":\"Tool selection\",\"toolWorkingSetMode\":\"Mode\",\"tools\":\"Tools\",\"topPages\":\"Top pages\",\"topTopics\":\"Trending topics\",\"total\":\"Total\",\"totalConversations\":\"Chat in total\",\"totalCost\":\"Total cost\",\"totalCostPartlyEstimated\":\"Total cost, partly estimated\",\"totalItemsCount\":\"Items: {total}\",\"totalMessages\":\"Messages in total\",\"totalPages\":\"of {total}\",\"trustedOrigins\":\"Trusted Origins\",\"tuning\":\"Tuning\",\"type\":\"Type\",\"typeMain\":\"Main\",\"typeSub\":\"Sub\",\"uniqueUsers\":\"Unique users\",\"unitChat\":\"chats\",\"unitChatPerUser\":\"chats\",\"unitMessages\":\"messages\",\"unitMessagesPerChat\":\"messages\",\"unitUsers\":\"users\",\"unknown\":\"Unknown\",\"unread\":\"Unread\",\"updateProfile\":\"Update profile\",\"updatedAt\":\"Updated at\",\"upload\":\"Upload {index}/{total}\",\"url\":\"Web page URL\",\"usage\":\"Usage\",\"useBrowserEngine\":\"Browser engine\",\"useExtractionStrategy\":\"Use AI\",\"user\":\"User\",\"userInput\":\"Selected option\",\"userPrompt\":\"User question\",\"userQuestion\":\"Question\",\"userTones\":\"User tone\",\"users\":\"Users\",\"utilityModel\":\"Model for internal tasks\",\"value\":\"Value\",\"version\":\"Version\",\"video\":\"Video\",\"viewPdfPage\":\"View PDF page\",\"visibility\":\"Visibility\",\"visualEditor\":\"Visual\",\"voice\":\"Voice\",\"voiceCascadeTimeoutSeconds\":\"Answer deadline (seconds)\",\"voiceEnabled\":\"Voice conversation\",\"voiceFillerAfterSeconds\":\"Filler after (seconds)\",\"voiceFillerMessage\":\"Filler phrase\",\"voiceFirstMessage\":\"Opening line\",\"voiceId\":\"Voice\",\"voiceIgnoreBackgroundVoices\":\"Ignore background voices\",\"voiceLanguage\":\"Spoken language\",\"voiceMaxSessionSeconds\":\"Session limit (seconds)\",\"voiceTurnEagerness\":\"End of turn\",\"voiceTurnTimeoutSeconds\":\"Pause before speaking again (seconds)\",\"vote\":\"Vote\",\"warnings\":\"Warnings\",\"webSearch\":\"Web search\",\"webSearchEnabled\":\"Enable web search\",\"webSearchNative\":\"Built-in\",\"webSearchProvider\":\"Search provider\",\"webhookUrl\":\"Webhook URL\",\"week\":\"Week\",\"welcome\":\"Welcome to {appName}!\",\"whatsapp\":\"WhatsApp\",\"whatsappAccessToken\":\"Access token\",\"whatsappAppSecret\":\"App secret\",\"whatsappPhoneNumberId\":\"Phone number ID\",\"whatsappVerifyToken\":\"Verify token\",\"white\":\"White\",\"widgetUrl\":\"Widget URL\",\"year\":\"Year\",\"yes\":\"Yes\",\"yesterday\":\"Yesterday\",\"zeroDataRetention\":\"Zero Data Retention (ZDR)\"}"),
2327
+ label: /* @__PURE__ */ JSON.parse("{\"AI\":\"AI\",\"acceptInvitationAndCreateAccount\":\"Accept the invitation and create your account\",\"accountingCredit\":\"Accounting balance\",\"actions\":\"Actions\",\"active\":\"Active\",\"activeSessions\":\"Active sessions\",\"actualCost\":\"Actual cost\",\"addApiTool\":\"Add API Tool\",\"addIntegration\":\"Add integration\",\"additionalMetadata\":\"Additional metadata\",\"admin\":\"Admin\",\"advancedOptions\":\"Advanced options\",\"agent\":\"Agent\",\"agentModel\":\"Default model\",\"agentResponse\":\"Agent response\",\"agentTree\":\"Agent Tree\",\"agents\":\"Agents\",\"agentsUsed\":\"Agents used\",\"aiDescription\":\"AI Generated\",\"aiDescriptionModel\":\"AI model\",\"aiDescriptionPrompt\":\"Custom prompt\",\"allAgents\":\"All agents\",\"allChannels\":\"All channels\",\"allowedDomains\":\"Allowed domains\",\"analysis\":\"Analysis\",\"anonymized\":\"Anonymized\",\"anonymous\":\"Anonymous\",\"answer\":\"Answer\",\"answeringOnTheCall\":\"Answering…\",\"apiKey\":\"API Key\",\"apiKeys\":\"API Keys\",\"appearance\":\"Appearance\",\"arrayOfObjects\":\"Array of objects\",\"assistantMessage\":\"Assistant response\",\"attachmentsNotImported\":\"Attachments not imported\",\"attempts\":\"Attempts\",\"attention\":\"Attention\",\"audience\":\"Audience\",\"authentication\":\"Authentication\",\"auto\":\"Auto\",\"autoDetected\":\"Automatically detected\",\"autoProvisioning\":\"Auto provisioning\",\"autoProvisioningDescription\":\"Users who authenticate through these identity providers or domains will be automatically added to your organization with the default role.\",\"autoRefreshError\":\"Error\",\"autoRefreshOff\":\"Paused\",\"autoRefreshOn\":\"Live\",\"autoRefreshStoppedErrors\":\"Automatic update stopped after repeated errors.\",\"autoRefreshStoppedUnavailable\":\"Automatic update stopped: this content is no longer accessible.\",\"autoRefreshWarning\":\"Warning\",\"availableCredit\":\"Available balance\",\"averageLine\":\"Average\",\"avgChatsPerUser\":\"Chats per user\",\"avgMessagesPerChat\":\"Messages per chat\",\"avgTime\":\"Avg. time\",\"banned\":\"Banned\",\"baseUrl\":\"Base URL\",\"black\":\"Black\",\"blocked\":\"Blocked\",\"blockedDomains\":\"Blocked domains\",\"blockedReasons\":\"Blocked reasons\",\"body\":\"Body\",\"botName\":\"Bot name\",\"breadcrumbs\":\"Breadcrumbs\",\"browserEngine\":\"Browser engine\",\"browsers\":\"Browsers\",\"budgetTokens\":\"Budget tokens\",\"byChannel\":\"By channel\",\"cached\":\"cached\",\"calendarEvent\":\"Event\",\"changePassword\":\"Change Password\",\"channel\":\"Channel\",\"channels\":\"Channels\",\"chat\":\"Chat\",\"chatCreatedAgo\":\"Created\",\"chatOrigin\":\"Chat origin\",\"chatStatistics\":\"Statistics\",\"chatTypes\":\"Conversation type\",\"chatUpdatedAgo\":\"Last message\",\"chatWidget\":\"Chat Widget\",\"chunks\":\"Chunks\",\"clear\":\"Clear\",\"codeEditor\":\"Code\",\"collapseContext\":\"Hide context\",\"comment\":\"Comment\",\"comparison\":\"Comparison\",\"completeName\":\"Full name\",\"completedAt\":\"Completed at\",\"configMcpServer\":\"Configure MCP server\",\"configure\":\"Configure\",\"confirm\":\"Confirm\",\"confirmPassword\":\"Confirm password\",\"confirmPrivateNetwork\":\"I confirm the endpoint cannot be reached from the internet\",\"confirmWithEmail\":\"Type your email to confirm\",\"confirmWithPassword\":\"Enter your password to confirm\",\"connectMcpServer\":\"Connect MCP server\",\"connectSubAgent\":\"Connect sub-agent\",\"connectedAccounts\":\"Connected accounts\",\"connectionChecking\":\"Connection checking...\",\"connectionConnected\":\"Connected\",\"connectionError\":\"Connection error\",\"connectionIdle\":\"Not verified\",\"connectionStatus\":\"Connection\",\"connectionTypes\":\"Connection type\",\"const\":\"Constant\",\"contactUs\":\"Contact us\",\"content\":\"Content\",\"contentPreview\":\"Content preview\",\"contextTokens\":\"{count}k context\",\"conversationLengthBuckets\":\"Conversation length\",\"conversationOutline\":\"Conversation outline\",\"conversations\":\"Conversations\",\"conversationsOverTime\":\"Conversations over time\",\"cost\":\"Cost\",\"costByChannel\":\"Cost per channel\",\"costInUSD\":\"Cost in USD\",\"costSource\":\"Cost source\",\"costSourceAll\":\"Total\",\"costSourceEndpoint\":\"Endpoint\",\"costSourceGateway\":\"Gateway\",\"country\":\"Country\",\"crawlMode\":\"Crawl Mode\",\"createdAt\":\"Created at\",\"createdBy\":\"Created by\",\"credit\":\"Credit\",\"creditUpdatedAt\":\"Credit updated at\",\"credits\":\"Credits\",\"crmSync\":\"CRM Sync\",\"curlExample\":\"cURL Example\",\"currentAgent\":\"Current agent\",\"currentLocation\":\"Current location\",\"currentPassword\":\"Current password\",\"currentSession\":\"Current session\",\"customCss\":\"Custom CSS\",\"customRange\":\"Custom range\",\"dailyUsage\":\"Daily usage\",\"dark\":\"Dark\",\"darkModePreference\":\"Dark mode\",\"dataLoadFailed\":\"Could not load this data\",\"datetime\":\"Date / Time\",\"day\":\"Day\",\"dayRateLimit\":\"Day Rate Limit\",\"days\":\"{count} day | {count} days\",\"default\":\"Default\",\"defaultMappingHint\":\"If no mapping is configured, the default one for the provider will be used.\",\"defaultRole\":\"Default role\",\"deleted\":\"Deleted\",\"deprecated\":\"Deprecated\",\"description\":\"Description\",\"deselectAction\":\"Remove\",\"details\":\"Details\",\"device\":\"Device\",\"deviceContext\":\"Device context\",\"deviceType\":\"Device type\",\"diagram\":\"Diagram\",\"disabled\":\"Disabled\",\"disallowPromptTraining\":\"Prompt Training disallowed\",\"dismissableNotice\":\"Notice\",\"documentOrigin\":\"Origin\",\"documentPriority\":\"Document Priority\",\"documentRefresh\":\"Automatic update\",\"documentRefreshAuto\":\"Automatic\",\"documentRefreshInterval\":\"Frequency\",\"documentRefreshLastRead\":\"Last read\",\"documentRefreshNext\":\"Next update\",\"documentRefreshOutcome\":\"Outcome\",\"documentRefreshPaused\":\"Paused\",\"documentSourceInterval\":\"Check frequency\",\"documentSourceLastRun\":\"Last run\",\"documentSourceLastSync\":\"Last check\",\"documentSourceNextSync\":\"Next check\",\"documentSourceSearch\":\"Search a site\",\"documentType\":\"Document type\",\"documents\":\"Documents\",\"domainFilter\":\"Domain filter\",\"downloadFile\":\"Download file\",\"downloading\":\"Downloading\",\"duration\":\"Duration\",\"editApiTool\":\"Edit API Tool\",\"editIntegration\":\"Edit integration\",\"editMcpServer\":\"Edit MCP server\",\"editSubAgent\":\"Edit sub-agent\",\"effectiveCredit\":\"Effective credit\",\"email\":\"Email\",\"emailClaim\":\"Email claim\",\"emailDomain\":\"Email domain\",\"emailVerified\":\"Email verified\",\"embed\":\"Embed\",\"embedCode\":\"Embed Code\",\"embedding\":\"Embedding\",\"embeddingEndpointModel\":\"Id on the endpoint\",\"embeddingModel\":\"Embedding model\",\"embeddingModelsCount\":\"Embedding models ({count})\",\"embeddingNotConfigured\":\"Not configured\",\"embeddingNotConfiguredReason\":\"The platform AI gateway is off for this organization\",\"embeddingOnEndpoint\":\"Embedding on your endpoint\",\"embeddingOnPlatform\":\"On the platform AI gateway\",\"embeddingReindex\":\"Reindex of the knowledge base and the memories\",\"embeddingReindexDone\":\"Reindexed on {date}\",\"embeddingReindexPaused\":\"Reindex paused\",\"embeddingReindexProgress\":\"Reindexing: {done} of {total} vectors done\",\"embeddingReindexQueued\":\"Reindex queued: it starts within a few minutes\",\"enabled\":\"Enabled\",\"enabledTools\":\"Enabled tools\",\"endDate\":\"End date\",\"endpointCost\":\"Endpoint cost (estimate)\",\"endpointModels\":\"Your endpoint's models\",\"engagement\":\"Engagement\",\"enum\":\"Enum values\",\"error\":\"Error\",\"estimatedCost\":\"Estimated end-of-month cost\",\"estimatedCredit\":\"Estimated credit\",\"estimatedMonthlyCost\":\"Month-end estimate\",\"excludeDomains\":\"Exclude domains\",\"expandContext\":\"Show more context\",\"expireIn\":\"Expires in\",\"expires\":\"Expires\",\"expiresAt\":\"Expiration\",\"exportMyData\":\"Export my data\",\"externalAuth\":\"External authentication\",\"externalAuthDescription\":\"Configure external authentication providers to allow authentication via JWT tokens issued by these providers. Users authenticated through these providers will be automatically added to your organization with the default role (auto provisioning).\",\"externalContext\":\"External context\",\"externalContextSchema\":\"External context schema\",\"externalId\":\"External ID (CRM)\",\"fallbackModels\":\"Fallback models\",\"feedback\":\"Feedback\",\"feedbacks\":\"Feedbacks\",\"fieldMappingFallback\":\"Fallback value\",\"fieldMappingSource\":\"Source field\",\"fieldMappingTarget\":\"Target field {number}\",\"fieldMappingTransform\":\"Transform\",\"fieldMappingTransformExtractDomainCompany\":\"Extract company from email domain\",\"fieldMappingTransformJoinArray\":\"Join array\",\"fieldMappingTransformMapValues\":\"Map values\",\"fieldMappingTransformNone\":\"None\",\"fieldMappingTransformSplitFirstLast\":\"Split first/last\",\"fieldMappingValueMap\":\"Value map\",\"file\":\"File\",\"fileUpload\":\"File Upload\",\"fileUploadAllowedMimeTypes\":\"Allowed file types\",\"fileUploadEnabled\":\"Enable file upload\",\"fileUploadMaxFileSize\":\"Max file size (MB)\",\"fileUploadMaxFilesPerChat\":\"Max files per chat\",\"fileUploadMaxFilesPerMessage\":\"Max files per message\",\"files\":\"Files\",\"filters\":\"Filters\",\"floatingButtonPosition\":\"Button position\",\"folderName\":\"Folder name\",\"followExternal\":\"Follow External Links\",\"footer\":\"Footer\",\"forceOcr\":\"Force OCR\",\"formMaxOptionsPerStep\":\"Suggested max options\",\"formMaxSteps\":\"Suggested max steps\",\"frequencyPenalty\":\"Frequency Penalty\",\"freshnessBoost\":\"Freshness Boost\",\"freshnessScale\":\"Freshness Scale\",\"freshnessWeight\":\"Freshness Weight\",\"fullDuration\":\"Duration (ms)\",\"gallery\":\"Gallery ({count} images)\",\"gatewayCost\":\"Gateway cost\",\"gatewayModels\":\"Platform models\",\"gdprRequestType\":{\"conversations_erasure\":\"Conversations erasure\",\"erasure\":\"Data erasure\",\"export\":\"Data export\"},\"gdprRequests\":\"GDPR requests\",\"general\":\"General\",\"generateSchemaFromJson\":\"Generate schema from JSON\",\"goalOutcome\":\"Goal outcome\",\"granularity\":\"Granularity\",\"groupReasoningAgents\":\"Group\",\"hasRedundantChunks\":\"Has Redundant Chunks\",\"header\":\"Header\",\"headers\":\"HTTP headers\",\"healthCheckPath\":\"Health check\",\"hour\":\"Hour\",\"hourRateLimit\":\"Hour Rate Limit\",\"hsAccessToken\":\"Access Token\",\"hsAccessTokenHint\":\"Create a HubSpot Private App with the following scopes: crm.objects.contacts.read, crm.objects.contacts.write, crm.objects.owners.read.\",\"hsDefaultOwnerId\":\"Default Owner ID\",\"hsDefaultOwnerIdHint\":\"HubSpot user ID to assign contacts to. Leave empty to not assign an owner.\",\"hsStaticProperties\":\"Static Properties\",\"hsStaticPropertiesHint\":\"Fixed properties added to every contact.\",\"httpHeaderKey\":\"Key\",\"httpHeaderValue\":\"Value\",\"secretParameters\":\"Secret parameters\",\"secretParameterPosition\":\"Sent in\",\"secretPositionQuery\":\"Query string\",\"secretPositionBody\":\"Body\",\"apiToolCredentialBadge\":\"Key exposed\",\"httpHeaders\":\"HTTP headers\",\"iframe\":\"Iframe\",\"iframeCode\":\"Iframe Code\",\"imageLoadError\":\"Image not available\",\"impersonated\":\"Impersonated\",\"impersonation\":\"Impersonation\",\"importing\":\"Importing\",\"inRedis\":\"In Redis\",\"inStock\":\"In stock\",\"integrationReconnectNeeded\":\"Reconnect needed\",\"integrationAppCredential\":\"App {clientId}\",\"modelDefaults\":\"Default models\",\"modelNotAvailable\":\"not available\",\"modelSourcePlatform\":\"Platform\",\"modelSwitchedOff\":\"switched off\",\"ownEndpoint\":\"Your own endpoint (BYOK)\",\"price\":\"Price\",\"priceListModel\":\"Price list model\",\"priceToSet\":\"Price to set\",\"modelPriceOf\":\"Price of {id}\",\"context\":\"Context\",\"someProviders\":\"Some providers\",\"modelsActiveSummary\":\"{active} of {count} models active\",\"noModelsYet\":\"No models yet\",\"notServedAnyMore\":\"No longer offered by the endpoint\",\"modelIdByHand\":\"Model id\",\"modelReference\":\"Reference model\",\"msClientId\":\"Application (client) ID\",\"msClientSecret\":\"Client secret\",\"msTenantId\":\"Directory (tenant) ID\",\"inTest\":\"In testing\",\"includeDomains\":\"Include domains\",\"includeThoughts\":\"View reasoning\",\"indexStatus\":\"Index status\",\"info\":\"Info\",\"initialMessage\":\"Initial message\",\"input\":\"Input\",\"inputSchema\":\"Input Schema\",\"insertEmail\":\"Insert email\",\"integration\":\"Integration\",\"integrationConfig\":\"Configuration\",\"integrationDisabled\":\"Disabled\",\"integrationEnabled\":\"Enabled\",\"integrationFieldMapping\":\"Field mapping\",\"integrationProvider\":\"Provider\",\"integrationSyncLogs\":\"Sync logs\",\"integrationSyncLogsDescription\":\"Synchronization occurs automatically when a new lead is created.\",\"integrations\":\"Integrations\",\"interactiveLogin\":\"Show login/registration\",\"interface\":\"Interface\",\"ipAddress\":\"IP Address\",\"isAutoJoinEnabled\":\"Automatically merge existing users with the same email\",\"issuer\":\"Issuer\",\"itemsPerPage\":\"Items Per Page\",\"jsonSample\":\"JSON sample\",\"jwksUrl\":\"JWKS URL\",\"key\":\"Key\",\"language\":\"Language\",\"languages\":\"Languages\",\"last14Days\":\"Last 14 days\",\"last30Days\":\"Last 30 days\",\"last7Days\":\"Last 7 days\",\"last90Days\":\"Last 90 days\",\"lastActive\":\"Last active\",\"lastActivity\":\"Last activity\",\"lastMonth\":\"Last month\",\"lastRecalledAt\":\"Last recalled\",\"lastReconciledAt\":\"Last reconciled at\",\"lastRefillAt\":\"Last refill at\",\"lastSync\":\"Last sync\",\"lastUsedAt\":\"Last used\",\"latest\":\"Latest\",\"leadId\":\"Lead ID\",\"left\":\"Left\",\"light\":\"Light\",\"limit\":\"Limit\",\"limitedStock\":\"Limited stock\",\"linkedAgents\":\"Linked agents\",\"llmIssues\":\"LLM issues\",\"loadDelay\":\"Load Delay (ms)\",\"loaderStrategy\":\"Loader Strategy\",\"loaderStrategyDynamicImport\":\"Dynamic Import\",\"loaderStrategyInlineModule\":\"Inline Module\",\"loaderStrategyScriptSrc\":\"Script Src\",\"locale\":\"Language\",\"location\":\"Location\",\"logo\":\"Logo\",\"logoUrl\":\"Logo URL\",\"mainColor\":\"Main color\",\"manageProfileDescription\":\"Edit your name, password, avatar and more\",\"maxDepth\":\"Max Depth\",\"maxMessageLength\":\"Max Message Length\",\"maxOutputTokens\":\"Max Tokens\",\"maxPages\":\"Max Pages\",\"maxResults\":\"Max results\",\"maxStepCount\":\"Max Steps\",\"maxUses\":\"Max uses\",\"mcpAuthType\":\"Authentication type\",\"mcpServer\":\"MCP Server\",\"mcpServerUrl\":\"MPC server URL\",\"mcpStatelessServer\":\"Stateless client\",\"memberSince\":\"Member since\",\"memories\":\"Memories\",\"memory\":\"Memory\",\"message\":\"Message\",\"messageDetails\":\"Message detail\",\"messagePlaceholder\":\"Placeholder\",\"messages\":\"Messages\",\"metadata\":\"Metadata\",\"method\":\"Method\",\"mimeTypeDocuments\":\"Documents\",\"mimeTypeImages\":\"Images\",\"mimeTypeText\":\"Text\",\"minuteRateLimit\":\"Minute Rate Limit\",\"mmr\":\"Maximal Marginal Relevance (MMR)\",\"mmrCandidatesLimit\":\"Candidates Limit\",\"mmrDiversity\":\"MMR Diversity\",\"model\":\"Model\",\"modelParameters\":\"Model parameters\",\"month\":\"Month\",\"monthRateLimit\":\"Month Rate Limit\",\"monthlyCost\":\"Monthly cost\",\"multipleChoiceAllowCustomAnswer\":\"Allow custom answer\",\"multipleChoiceMaxOptions\":\"Maximum number of options\",\"name\":\"Name\",\"nameClaim\":\"Name claim\",\"never\":\"Never\",\"newChat\":\"New chat\",\"newPassword\":\"New password\",\"no\":\"No\",\"noDataAvailable\":\"No data available\",\"noDataRetention\":\"ZDR\",\"noFieldMapping\":\"No custom field mapping configured\",\"noIntegrations\":\"No integrations configured\",\"noPromptTraining\":\"No training\",\"noSyncLogs\":\"No sync logs found\",\"noTimingData\":\"No data yet. Make a chat request to see timing logs.\",\"noTimingDataDesc\":\"Start a conversation with an agent to see timing logs here in real time.\",\"noTimingDataTitle\":\"No data available\",\"notAvailable\":\"Not available\",\"notCompatible\":\"not compatible\",\"notConfigured\":\"Not configured\",\"notConnected\":\"Not connected\",\"notSynced\":\"Not synced\",\"notificationTitle\":{\"document_error\":\"Document processing failed\",\"document_sync_removed\":\"Documents removed from a synchronised folder\",\"organization\":{\"created\":\"Organization Created\",\"invite\":\"Organization Invite\",\"invite_accepted\":\"Invitation Accepted\",\"invite_rejected\":\"Invitation Rejected\",\"removed\":\"Removed from Organization\"},\"password_reset_requested\":\"A password reset has been requested\",\"two_factor\":{\"enabled\":\"Two-step verification turned on\",\"disabled\":\"Two-step verification turned off\",\"app\":\"Two-step verification uses an app\",\"reset\":\"Two-step verification reset\",\"passkeyAdded\":\"Passkey added\",\"passkeyRemoved\":\"Passkey removed\"},\"web_source_pages_removed\":\"Pages removed because they left the sitemap\",\"web_source_removal_held\":\"Pages that left a sitemap were not removed\"},\"notificationType\":{\"api_key_expiring\":\"API Key expiring\",\"chat_blocked\":\"Chat blocked\",\"chat_warning\":\"Chat warning\",\"document_error\":\"Document error\",\"document_sync_removed\":\"Synchronised content removed\",\"generic\":\"Generic\",\"organization\":\"Organization\",\"password_reset_requested\":\"Password reset requested\",\"two_factor\":\"Sign-in security\",\"web_source_pages_removed\":\"Pages that left a sitemap\",\"web_source_removal_held\":\"Removal to confirm\"},\"oauthAuthorizationUrl\":\"OAuth Authorization URL\",\"oauthClientId\":\"OAuth Client ID\",\"oauthClientSecret\":\"OAuth Client Secret\",\"oauthScopes\":\"OAuth Scopes\",\"oauthTokenUrl\":\"OAuth Token URL\",\"ocrUsed\":\"OCR\",\"older\":\"Older\",\"onChannels\":\"WA · Teams\",\"openSource\":\"Open source\",\"operatingSystems\":\"Operating systems\",\"or\":\"Or\",\"organization\":\"Organization\",\"organizations\":\"Organizations\",\"origin\":\"Origine\",\"originalMessage\":\"Original answer\",\"origins\":\"Origins\",\"outOfStock\":\"Out of stock\",\"output\":\"Output\",\"outputSchema\":\"Output Schema\",\"pages\":\"Pages\",\"passphrase\":\"Enter passphrase\",\"password\":\"Password\",\"paused\":\"Paused\",\"peakHours\":\"Peak hours\",\"perMillionTokens\":\"per million tokens\",\"period\":\"Period\",\"phaseBreakdown\":\"Phase breakdown\",\"phone\":\"Phone number\",\"picture\":\"Picture\",\"platformAssistant\":\"Platform assistant\",\"platformContext\":\"Platform context\",\"postStreaming\":\"Post-streaming\",\"preStreaming\":\"Pre-streaming\",\"preferences\":\"Preferences\",\"presencePenalty\":\"Presence Penalty\",\"preview\":\"Preview\",\"priceInput\":\"Input price\",\"priceOutput\":\"Output price\",\"priority\":\"Priority\",\"priority_1\":\"Lowest\",\"priority_2\":\"Low\",\"priority_3\":\"Normal\",\"priority_4\":\"High\",\"priority_5\":\"Critical\",\"privacy\":\"Privacy\",\"privacyPolicyNotice\":\"Visible in the contact form.\",\"processedAt\":\"Processed at\",\"processing\":\"Processing...\",\"profile\":\"Profile\",\"prompt\":\"Prompt\",\"properties\":\"Properties\",\"provider\":\"Provider\",\"providerOrganizationId\":\"Provider ID\",\"providerTimeoutMs\":\"Provider timeout (ms)\",\"qdrantSync\":\"Vector Sync\",\"qrCode\":\"QR Code\",\"question\":\"Question\",\"rateLimits\":\"Rate Limits\",\"read\":\"Read\",\"reasoning\":\"Reasoning\",\"reasoningAgentTester\":\"Reasoning Agent Tester\",\"reasoningDetails\":\"Reasoning details\",\"reasoningEffort\":\"Reasoning effort\",\"reasoningSummary\":\"Reasoning summary\",\"recommended\":\"Recommended\",\"redundantChunks\":\"Redundant chunks\",\"referrerDomains\":\"Referrer domains\",\"refillAmount\":\"Refill amount\",\"released\":\"Released\",\"rememberMe\":\"Remember me\",\"replyWithoutText\":\"Reply without text\",\"requestCount\":\"Requests\",\"requestedAt\":\"Requested at\",\"requests\":\"Requests\",\"requestsPerAgent\":\"Requests per agent\",\"requestsUsed\":\"Requests used\",\"required\":\"Required\",\"requiredFields\":\"Required fields\",\"retired\":\"retired\",\"revisedMessage\":\"Revised answer\",\"right\":\"Right\",\"riskScoreBands\":\"Risk score bands\",\"role\":\"Role\",\"rootDocuments\":\"Without folder\",\"scheduledAt\":\"Scheduled at\",\"schemaRootArray\":\"Array\",\"schemaRootObject\":\"Object\",\"schemas\":\"Schemas\",\"screenCategories\":\"Screen resolution\",\"searchAndExecution\":\"Search & execution\",\"searchMode\":\"Search Mode\",\"searchRecencyFilter\":\"Recency filter\",\"sectionChannelBreakdown\":\"Channel breakdown\",\"sectionConversationQuality\":\"Conversation quality\",\"sectionCostTrend\":\"Monthly cost trend\",\"sectionDeviceContext\":\"Devices & context (web and widget)\",\"sectionTraffic\":\"Traffic (web and widget)\",\"security\":\"Security\",\"selectAgent\":\"Select an agent\",\"selectedHint\":\"Selected\",\"sentiment\":\"Sentiment\",\"sentimentTrends\":\"Sentiment trends\",\"serverInfo\":\"MCP Server info\",\"sessionExpiresIn\":\"Session duration (seconds)\",\"setPassword\":\"Set password\",\"settings\":\"Settings\",\"sfApiVersion\":\"API Version\",\"sfClientId\":\"Client ID\",\"sfClientSecret\":\"Client Secret\",\"sfExternalIdField\":\"External ID Field\",\"sfInstanceUrl\":\"Instance URL\",\"shareWith\":\"Share with agents\",\"showExtendedSteps\":\"Extended steps view\",\"showing\":\"Showing\",\"similarity\":\"Similarity\",\"sitemapUrl\":\"Sitemap URL\",\"size\":\"Size\",\"slowest\":\"Slowest\",\"slug\":\"Slug\",\"smartRanking\":\"Smart Ranking\",\"smoothStream\":\"Smooth streaming\",\"source\":\"Source\",\"sources\":\"Sources\",\"spokenExchange\":\"Exchanged by voice\",\"startDate\":\"Start date\",\"startUrl\":\"Start URL\",\"status\":\"Status\",\"steps\":\"steps\",\"streaming\":\"Streaming\",\"style\":\"Style\",\"subAgent\":\"Sub-agent\",\"subject\":\"Subject\",\"syncStatus\":\"Sync status\",\"targetAll\":\"All users\",\"targetOrganization\":\"Organization\",\"targetType\":\"Target\",\"targetUser\":\"Specific user\",\"teams\":\"Microsoft Teams\",\"teamsAccentColor\":\"Accent color\",\"teamsAppId\":\"App ID (Microsoft)\",\"teamsAppPassword\":\"App password / client secret\",\"teamsAppTenantId\":\"Tenant ID\",\"teamsAppType\":\"App type\",\"teamsAppVersion\":\"App version\",\"teamsDescriptionFull\":\"Full description\",\"teamsDescriptionShort\":\"Short description\",\"teamsDeveloperName\":\"Developer name\",\"teamsManifestDetails\":\"App details (shown in Teams)\",\"temperature\":\"Temperature\",\"testConnection\":\"Test connection\",\"testPlayground\":\"Test Playground\",\"textColor\":\"Text color\",\"theme\":\"Theme\",\"thinking\":\"Thinking\",\"thinkingBudget\":\"Thinking budget\",\"thinkingDisplay\":\"Thinking display\",\"thinkingEffort\":\"Thinking effort\",\"thinkingLevel\":\"Thinking level\",\"thinkingType\":\"Thinking type\",\"thisMonth\":\"This month\",\"timelineSteps\":\"Timeline steps\",\"timeoutMs\":\"Timeout (ms)\",\"timezoneRegions\":\"Timezone region\",\"title\":\"Title\",\"today\":\"Today\",\"tokens\":\"tokens\",\"tool\":\"Tool\",\"toolApprovalBadge\":\"User confirm\",\"toolName\":\"Tool name: {name}\",\"toolRequiresApproval\":\"Ask the user to confirm\",\"toolWorkingSet\":\"Tool selection\",\"toolWorkingSetMode\":\"Mode\",\"tools\":\"Tools\",\"topPages\":\"Top pages\",\"topTopics\":\"Trending topics\",\"total\":\"Total\",\"totalConversations\":\"Chat in total\",\"totalCost\":\"Total cost\",\"totalCostPartlyEstimated\":\"Total cost, partly estimated\",\"totalItemsCount\":\"Items: {total}\",\"totalMessages\":\"Messages in total\",\"totalPages\":\"of {total}\",\"trustedOrigins\":\"Trusted Origins\",\"tuning\":\"Tuning\",\"type\":\"Type\",\"typeMain\":\"Main\",\"typeSub\":\"Sub\",\"uniqueUsers\":\"Unique users\",\"unitChat\":\"chats\",\"unitChatPerUser\":\"chats\",\"unitMessages\":\"messages\",\"unitMessagesPerChat\":\"messages\",\"unitUsers\":\"users\",\"unknown\":\"Unknown\",\"unread\":\"Unread\",\"updateProfile\":\"Update profile\",\"updatedAt\":\"Updated at\",\"upload\":\"Upload {index}/{total}\",\"url\":\"Web page URL\",\"usage\":\"Usage\",\"useBrowserEngine\":\"Browser engine\",\"useExtractionStrategy\":\"Use AI\",\"user\":\"User\",\"userInput\":\"Selected option\",\"userPrompt\":\"User question\",\"userQuestion\":\"Question\",\"userTones\":\"User tone\",\"users\":\"Users\",\"utilityModel\":\"Model for internal tasks\",\"value\":\"Value\",\"version\":\"Version\",\"video\":\"Video\",\"viewPdfPage\":\"View PDF page\",\"visibility\":\"Visibility\",\"visualEditor\":\"Visual\",\"voice\":\"Voice\",\"voiceCascadeTimeoutSeconds\":\"Answer deadline (seconds)\",\"voiceEnabled\":\"Voice conversation\",\"voiceFillerAfterSeconds\":\"Filler after (seconds)\",\"voiceFillerMessage\":\"Filler phrase\",\"voiceFirstMessage\":\"Opening line\",\"voiceId\":\"Voice\",\"voiceIgnoreBackgroundVoices\":\"Ignore background voices\",\"voiceLanguage\":\"Spoken language\",\"voiceMaxSessionSeconds\":\"Session limit (seconds)\",\"voiceTurnEagerness\":\"End of turn\",\"voiceTurnTimeoutSeconds\":\"Pause before speaking again (seconds)\",\"vote\":\"Vote\",\"warnings\":\"Warnings\",\"webSearch\":\"Web search\",\"webSearchEnabled\":\"Enable web search\",\"webSearchNative\":\"Built-in\",\"webSearchProvider\":\"Search provider\",\"webhookUrl\":\"Webhook URL\",\"week\":\"Week\",\"welcome\":\"Welcome to {appName}!\",\"whatsapp\":\"WhatsApp\",\"whatsappAccessToken\":\"Access token\",\"whatsappAppSecret\":\"App secret\",\"whatsappPhoneNumberId\":\"Phone number ID\",\"whatsappVerifyToken\":\"Verify token\",\"white\":\"White\",\"widgetUrl\":\"Widget URL\",\"year\":\"Year\",\"yes\":\"Yes\",\"yesterday\":\"Yesterday\",\"zeroDataRetention\":\"Zero Data Retention (ZDR)\",\"webSourceWatch\":\"Check for new pages\",\"webSourceInterval\":\"Check frequency\",\"webSourceRemoveMissing\":\"Remove pages that leave the sitemap\"}"),
2170
2328
  language: {
2171
2329
  de: "German",
2172
2330
  en: "English",
@@ -2245,7 +2403,7 @@ var Pn = {
2245
2403
  explicit: "Explicit | Explicit",
2246
2404
  extracted: "Extracted | Extracted"
2247
2405
  },
2248
- message: /* @__PURE__ */ JSON.parse("{\"accountLinkAlreadyLinked\":\"This account is already linked to another user. Sign in with that user to unlink it first.\",\"accountLinkCancelled\":\"Linking was cancelled on the provider's page. Nothing was changed.\",\"accountLinkEmailMismatch\":\"You can only link accounts that use the same email as your profile.\",\"accountLinkErrorWithCode\":\"Unable to link the account (code: {code}). Please try again or contact support with this code.\",\"accountLinkNotAllowed\":\"This provider cannot be linked to your profile: the account's email is not verified or linking is disabled.\",\"accountLinkUserInfo\":\"The provider did not return a usable profile, so no account was linked. Please try again.\",\"accountUnlinked\":\"Account disconnected\",\"agentAccessDenied\":\"You do not have access to this agent\",\"agentAccessDeniedAction\":\"View available agents\",\"agentActivated\":\"Agent activated successfully\",\"agentDeactivated\":\"Agent deactivated successfully\",\"agentNotFound\":\"Agent not found\",\"agentsEmpty\":\"No agents yet. Create the first one to get started.\",\"analyzeChatError\":\"The analysis did not complete. Try again in a few minutes.\",\"analyzeChatInProgress\":\"Analyzing the conversation: a long one can take a minute.\",\"analyzeChatSuccess\":\"Conversation analyzed successfully\",\"apiKeyCreatedForUser\":\"Copy it now and hand it to the user over a secure channel: it will not be shown again.\",\"apiKeysEmpty\":\"The keys you create for programmatic access appear here.\",\"apiToolsEmpty\":\"No API tools yet. Add the first one to let the agent call an external service.\",\"banSuccess\":\"User banned successfully\",\"blockChatSuccess\":\"Conversation blocked successfully\",\"bulkUnlinkAllDeleteConfirm\":\"{count} document(s) will be permanently deleted because they have no other linked agents. Do you want to proceed?\",\"bulkUnlinkMixedConfirm\":\"{unlinkCount} document(s) will be unlinked and {deleteCount} will be permanently deleted (they have no other linked agents). Do you want to proceed?\",\"cancelInvitationConfirm\":\"Are you sure you want to cancel the invitation for {email}?\",\"cancelInvitationSuccess\":\"Invitation cancelled successfully\",\"chatActionError\":\"The action did not complete. Try again in a few minutes.\",\"chatAnonymized\":\"The content of this conversation has been erased (GDPR): only aggregate metrics remain.\",\"chatErrorBadRequest\":\"An error occurred with the request. Start a new chat to continue.\",\"chatErrorContextWindow\":\"The conversation has become too long. Start a new chat to continue.\",\"chatErrorConversationBlocked\":\"This conversation has been blocked for policy violations.\",\"chatErrorCreditExhausted\":\"Service unavailable. Please try again later.\",\"chatErrorGatewayDisabled\":\"This agent's model is not available: the organization does not use the platform AI gateway. An administrator can move the agent to one of the organization's own models.\",\"chatErrorGatewayPromptTraining\":\"Model \\\"{model}\\\" does not support the \\\"Disable prompt training\\\" option. Disable this setting in the agent's gateway configuration or choose a compatible model.\",\"chatErrorGatewayZdr\":\"Model \\\"{model}\\\" does not support the \\\"Zero Data Retention\\\" option. Disable ZDR in the agent's gateway configuration or choose a compatible model.\",\"chatErrorGeneric\":\"An error occurred. Start a new chat if the problem persists. Retrying in {seconds}...\",\"chatErrorInternalServer\":\"A server error occurred. Start a new chat to continue.\",\"chatErrorModelUnavailable\":\"This agent's model is not available right now: the endpoint it runs on is switched off or no longer serves it. An administrator can switch it back on or move the agent to another model.\",\"chatErrorNotFound\":\"The conversation is no longer available. Start a new chat to continue.\",\"chatErrorOriginNotAllowed\":\"The request origin is not allowed. Contact the system administrator.\",\"chatErrorRateLimit\":\"The rate limit has been exceeded. Retrying in {seconds} seconds...\",\"chatErrorRetrying\":\"Retrying in {seconds} seconds...\",\"checkYourEmail\":\"Check your email inbox\",\"clearTimingLogsConfirm\":\"Clear all timing logs?\",\"confirm\":\"Are you sure you want to proceed?\",\"confirmRefillCredits\":\"Are you sure you want to refill the credit of {amount} €?\",\"contentTruncated\":\"Content truncated. Total characters: {total}\",\"copied\":\"Copied to clipboard\",\"crawlError\":\"Error during crawling\",\"createFolderSuccess\":\"Folder created successfully\",\"defaultAgentWelcome\":\"Hello! How can I help you today?\",\"defaultPrivacyPolicyNotice\":\"By sending the request you accept our [Privacy Policy](https://www.iubenda.com/privacy-policy/46350192).\",\"deleteAgentConfirm\":\"Its folders are deleted. A document no other agent uses is deleted, a shared one stays with the other agents.\",\"deleteAllMemoriesConfirm\":\"They go for good, semantic search included.\",\"deleteAllNotificationsConfirm\":\"Delete every notification?\",\"deleteBulkDocumentConfirm\":\"They are removed from every agent linked to them.\",\"deleteDocumentConfirm\":\"It is removed from every agent linked to it.\",\"deleteDocumentConfirmWithAgents\":\"Are you sure you want to delete this document? It will be removed from the following agents:{agents}\",\"deleteError\":\"The deletion failed. Please try again.\",\"deleteFolderConfirm\":\"Its documents are removed from this agent. A document no other agent uses is deleted.\",\"deleteFolderSuccess\":\"Folder deleted successfully\",\"deleteMyConversationsConfirm\":\"This cannot be undone.\",\"deleteNotificationConfirm\":\"Delete this notification?\",\"deleteProfileBlockedSoleOwner\":\"You are the sole owner of {organizations}. Transfer ownership or delete the organizations before deleting your account.\",\"deleteProfileConfirm\":\"You are about to permanently delete your account: your profile will be anonymized and the content of your conversations erased. This action cannot be undone.\",\"deleteProfileDescription\":\"Anonymize your account and erase the content of your conversations (right to be forgotten).\",\"diagramRenderError\":\"Could not render diagram.\",\"documentRefreshPausedReason\":\"The page no longer responds, so the automatic update is paused. Update now to try again.\",\"documentRefreshSet\":\"Automatic update set on {updated} documents, {skipped} skipped because they are not web pages\",\"documentRefreshStarted\":\"Update started on {queued} documents, {skipped} skipped\",\"documentsEmpty\":\"Nothing in this folder yet. Add documents from the Create menu, or start with a folder.\",\"documentsEmptyManaged\":\"No synced files in this folder. Its content comes from the connected source: if you have just linked it, the first import can take a few minutes.\",\"documentSourceLinked\":\"Folder linked. The first import starts shortly.\",\"documentSourceNothingHere\":\"Nothing in here.\",\"documentSourceStale\":\"The state of this folder is not up to date: the last read failed.\",\"documentSourceUnlinked\":\"Folder unlinked. Its documents stay, and can now be edited like any other.\",\"embeddingActivated\":\"Embedding saved: the endpoint serves the declared model\",\"embeddingBackToPlatform\":\"The vectors are computed on the platform again\",\"embeddingIndexNotUpdated\":\"The progress stopped updating.\",\"embeddingRemoved\":\"Embedding removed from the endpoint\",\"empty\":\"No items found\",\"endpointActivated\":\"Endpoint activated successfully\",\"endpointDeactivated\":\"Endpoint deactivated successfully\",\"endpointsEmpty\":\"No endpoints yet. Create the first one to expose the agent over HTTP.\",\"error\":\"Error\",\"errorRetry\":\"Something went wrong. Try again.\",\"exportError\":\"Error while exporting data\",\"exportFailed\":\"The data export failed. Please try again later.\",\"exportMyDataDescription\":\"Download a complete copy of your personal data as a ZIP archive (GDPR Art. 15 and 20).\",\"exportRequested\":\"We are preparing your archive: you will receive an email with the download link.\",\"exportSuccess\":\"CSV exported successfully\",\"feedbackSubmitError\":\"Submission failed. Please try again.\",\"feedbackSubmittedMessage\":\"Your feedback has been submitted successfully.\",\"feedbackSubmittedTitle\":\"Thank you!\",\"feedbacksEmpty\":\"Feedback that users leave on the agent's answers will appear here.\",\"fileAlreadyImported\":\"Already imported\",\"fileAlreadyImportedExistingList\":\"The following files are already present in the organization:\\n{names}\",\"fileAlreadyImportedLink\":\"This file has already been imported. Do you want to link the existing document to the current agent or create a new one?\",\"fileAlreadyImportedNewList\":\"The following files are new and will be imported normally:\\n{names}\",\"fileAlreadyImportedQuestion\":\"Do you want to link the existing files to the current agent?\",\"fileAlreadyLinkedToAgent\":\"The following files are already linked to the current agent:\\n{names}\",\"fileLimitPerChat\":\"You have reached the limit of {max} files for this conversation.\",\"fileLimitPerMessage\":\"You can attach at most {max} files per message.\",\"foldersEmpty\":\"No folders yet. Create the first one from the documents page to organize them.\",\"formRenderError\":\"The form could not be shown. Ask again and the assistant will send it.\",\"gdprRequestsEmpty\":\"Export or deletion requests for this user appear here.\",\"geolocationPermissionDenied\":\"Location access denied. Please allow it in your browser settings.\",\"geolocationUnavailable\":\"Location unavailable. Please try again or enter your location manually.\",\"getMcpServerInfoError\":\"An error occurred while loading the tools.\",\"importError\":\"Error during import\",\"importSuccess\":\"{count} documents imported successfully\",\"importing\":\"Importing...\",\"info\":\"Information\",\"insufficientCredit\":\"Insufficient credit. Please try again later.\",\"insufficientCreditMessage\":\"Your credit is insufficient to complete this operation. Please contact the system administrator for more information.\",\"integrationConnected\":\"Connected successfully.\",\"integrationCreated\":\"Integration created successfully\",\"integrationDisabled\":\"Integration disabled\",\"integrationDisconnected\":\"Connection removed.\",\"integrationDisconnectConfirm\":\"The folders it keeps in sync are unlinked.\",\"integrationEnabled\":\"Integration enabled\",\"integrationOAuthDenied\":\"The connection was refused, or a Microsoft 365 administrator has not approved it yet.\",\"integrationOAuthFailed\":\"The connection did not succeed.\",\"integrationOAuthStartFailed\":\"The connection could not be started.\",\"integrationRemoveConfirm\":\"This integration's configuration is removed.\",\"integrationTestFailed\":\"Connection test failed: {error}\",\"integrationTestSuccess\":\"Connection verified successfully\",\"integrationUpdated\":\"Integration updated successfully\",\"invalidJson\":\"The input is not valid JSON\",\"invitationAccepted\":\"Invitation accepted\",\"invitationAlreadyHandled\":\"Invitation already handled\",\"invitationDeclined\":\"Invitation declined\",\"invitationToJoinOrganization\":\"You have been invited to join\",\"invitationsEmpty\":\"No pending invitations. Invite people from the members page.\",\"leadSubmitError\":\"Failed to submit. Please try again.\",\"leadSubmittedMessage\":\"Your information has been submitted successfully.\",\"leadSubmittedTitle\":\"Thank you!\",\"leadsEmpty\":\"Leads collected by the agent during conversations will appear here.\",\"leftOrganization\":\"You have successfully left the organization\",\"loadConversationsError\":\"Failed to load conversations\",\"loading\":\"Loading...\",\"loadingError\":\"Error while loading\",\"mcpServerCheckError\":\"Error while checking MCP Server: {error}\",\"mcpServerCheckSuccess\":\"MCP Server check successful\",\"mcpServerInvalidEndpoint\":\"This URL does not point to an MCP endpoint: the server replied with a web page. Check the path, MCP servers usually expose it under /mcp.\",\"mcpServersEmpty\":\"No MCP servers yet. Connect the first one to give the agent new tools.\",\"membersEmpty\":\"No members yet. Invite the first one to get started.\",\"memoriesEmpty\":\"Memories the agent saves about this user during conversations will appear here.\",\"memoryNotSynced\":\"Memory not synced with semantic search: it is not considered in answers until the repair sweep heals it.\",\"modelDiscoveryUnavailable\":\"This endpoint does not provide the list of its models: enter the ids by hand.\",\"modelDiscoveryFailed\":\"We could not read the list of models from the endpoint: only the models already saved are shown.\",\"modelPricesUnchanged\":\"No price changed.\",\"modelPricesUpdated\":\"Updated the price of one model: {models}. | Updated the prices of {count} models: {models}.\",\"modelProviderDeleted\":\"Endpoint deleted.\",\"moveDocumentSuccess\":\"Document moved successfully\",\"noActiveSessions\":\"No other active sessions\",\"noApiKeys\":\"No API keys\",\"noChats\":\"No chat available\",\"noConnectedAccounts\":\"No connected accounts\",\"noConversations\":\"No conversations found\",\"noConversationsHint\":\"Start a new chat to see it appear here.\",\"noCreditsData\":\"No credit data available\",\"noEndpointLogs\":\"No endpoint logs available\",\"noEndpointModels\":\"No model available: the endpoint listed none.\",\"modelRemoved\":\"Model removed.\",\"noGdprRequests\":\"No GDPR requests\",\"noLinkedAgents\":\"No linked agents\",\"noNotifications\":\"No notifications\",\"noOptions\":\"No options\",\"noOrganizations\":\"No organizations\",\"noResults\":\"No results\",\"noSearchResults\":\"Nothing matches your search. Clear it to see everything.\",\"notificationsEmpty\":\"No notifications sent yet. Create the first one to reach your users.\",\"oauthConfigIncomplete\":\"OAuth configuration incomplete. Set the Client ID in the MCP server settings.\",\"oauthConnected\":\"OAuth authorization completed successfully\",\"oauthError\":\"Error during OAuth authorization\",\"organizationDisconnected\":\"Neither the platform gateway nor an endpoint of its own serves this organization, so its agents do not answer.\",\"organizationMembersEmpty\":\"No members yet. Add the first one to get started.\",\"organizationNotSelected\":\"No organization selected\",\"organizationsEmpty\":\"No organizations yet. Create the first one to get started.\",\"pageNotFound\":\"Page not found\",\"passwordChangeSuccess\":\"Password changed successfully\",\"passwordResetSuccess\":\"Password reset successfully\",\"profileOrganizationsEmpty\":\"The organizations you belong to appear here.\",\"readError\":\"Error while reading\",\"reasoningAgent\":\"This is a reasoning agent. It is not designed to maintain the conversation history, each message is processed independently.\",\"recoverPasswordSuccess\":\"Recovery email sent successfully\",\"refillFailed\":\"Refill failed. Please try again later.\",\"refillSuccess\":\"Refill completed successfully\",\"refreshSuccess\":\"Refresh completed successfully\",\"releaseNotesEmpty\":\"No release notes published yet. Updates will be listed here as they ship.\",\"removeSuccess\":\"Removal completed successfully\",\"renameFolderSuccess\":\"Folder renamed successfully\",\"revisedAnswersEmpty\":\"No revised answers yet. Create the first one to teach the agent a better reply.\",\"selectedCount\":\"{count} of {total} selected\",\"sendInvitationConfirm\":\"Are you sure you want to resend the invitation to {email}?\",\"sessionRevoked\":\"Session signed out\",\"sessionsEmpty\":\"Signing in from another device or browser opens a new session, listed here.\",\"setPasswordDescription\":\"For now you sign in only through a connected account. Set a password to sign in with email and password too: we will email you a link to create it.\",\"setPasswordLinkSent\":\"We sent the link to {email}.\",\"sharedSuccess\":\"Document shared successfully\",\"sitemapUrlRequired\":\"Sitemap URL is required\",\"startUrlRequired\":\"Start URL is required\",\"subAgentsEmpty\":\"Connect an agent to delegate part of the conversation to it.\",\"submitError\":\"Error while saving\",\"submitSuccess\":\"Save completed successfully\",\"success\":\"Success\",\"testExecutionError\":\"Error executing test\",\"toolNameAutoGenerated\":\"The tool name will be generated automatically\",\"typeToSearch\":\"Start typing to search...\",\"unauthorized\":\"You do not have permission to manage channels.\",\"unbanSuccess\":\"User unbanned successfully\",\"unblockChatSuccess\":\"Conversation unblocked successfully\",\"unlinkAgentConfirm\":\"The document stays available to the other agents linked to it.\",\"unlinkDocumentConfirm\":\"It stays available to the other agents linked to it.\",\"unlinkLastAgentDeleteConfirm\":\"The document is permanently deleted, because no other agent is linked to it.\",\"unlinkSuccess\":\"Document unlinked successfully\",\"unlinkSyncedFolderConfirm\":\"Syncing stops. The folder and its documents stay with the agent and can be edited like any other from now on: to remove them, delete the folder.\",\"unsavedChanges\":\"Save or discard your changes first\",\"urlAlreadyImported\":\"Already imported\",\"urlAlreadyImportedLink\":\"This URL has already been imported. Do you want to link it to the current agent?\",\"userApiKeysEmpty\":\"Keys this user creates from their profile for programmatic access will appear here.\",\"userChatsEmpty\":\"Conversations this user has with any agent will appear here.\",\"userOrganizationsEmpty\":\"This user does not belong to any organization yet. Add the first one.\",\"userUpdateSuccess\":\"User profile updated successfully\",\"usersEmpty\":\"No users yet. Create the first one to get started.\",\"voiceCancelled\":\"I have cancelled.\",\"voiceConfirmed\":\"I confirm.\",\"voiceConnecting\":\"Connecting…\",\"voiceConnectionDone\":\"I have completed the connection.\",\"voiceFailed\":\"The voice session stopped\",\"voiceInterrupted\":\"Try again, or continue in writing.\",\"voiceListening\":\"Listening\",\"voiceLocationRefused\":\"I would rather not share my location.\",\"voiceLocationShared\":\"My location is {place}.\",\"voiceMuted\":\"Microphone muted\",\"voiceNoAnswer\":\"The agent could not produce an answer for this call. Try again, or continue in writing.\",\"voiceSpeaking\":\"The agent is speaking\",\"voiceTookTooLong\":\"The answer took too long for the call. Try again, or continue in writing: the answer will appear here as soon as it is ready.\",\"warning\":\"Warning\"}"),
2406
+ message: /* @__PURE__ */ JSON.parse("{\"accountLinkAlreadyLinked\":\"This account is already linked to another user. Sign in with that user to unlink it first.\",\"accountLinkCancelled\":\"Linking was cancelled on the provider's page. Nothing was changed.\",\"accountLinkEmailMismatch\":\"You can only link accounts that use the same email as your profile.\",\"accountLinkErrorWithCode\":\"Unable to link the account (code: {code}). Please try again or contact support with this code.\",\"accountLinkNotAllowed\":\"This provider cannot be linked to your profile: the account's email is not verified or linking is disabled.\",\"accountLinkUserInfo\":\"The provider did not return a usable profile, so no account was linked. Please try again.\",\"accountUnlinked\":\"Account disconnected\",\"agentAccessDenied\":\"You do not have access to this agent\",\"agentAccessDeniedAction\":\"View available agents\",\"agentActivated\":\"Agent activated successfully\",\"agentDeactivated\":\"Agent deactivated successfully\",\"agentNotFound\":\"Agent not found\",\"agentsEmpty\":\"No agents yet. Create the first one to get started.\",\"analyzeChatError\":\"The analysis did not complete. Try again in a few minutes.\",\"analyzeChatInProgress\":\"Analyzing the conversation: a long one can take a minute.\",\"analyzeChatSuccess\":\"Conversation analyzed successfully\",\"apiKeyCreatedForUser\":\"Copy it now and hand it to the user over a secure channel: it will not be shown again.\",\"apiKeysEmpty\":\"The keys you create for programmatic access appear here.\",\"apiToolsEmpty\":\"No API tools yet. Add the first one to let the agent call an external service.\",\"banSuccess\":\"User banned successfully\",\"blockChatSuccess\":\"Conversation blocked successfully\",\"bulkUnlinkAllDeleteConfirm\":\"{count} document(s) will be permanently deleted because they have no other linked agents. Do you want to proceed?\",\"bulkUnlinkMixedConfirm\":\"{unlinkCount} document(s) will be unlinked and {deleteCount} will be permanently deleted (they have no other linked agents). Do you want to proceed?\",\"cancelInvitationConfirm\":\"Are you sure you want to cancel the invitation for {email}?\",\"cancelInvitationSuccess\":\"Invitation cancelled successfully\",\"chatActionError\":\"The action did not complete. Try again in a few minutes.\",\"chatAnonymized\":\"The content of this conversation has been erased (GDPR): only aggregate metrics remain.\",\"chatErrorBadRequest\":\"An error occurred with the request. Start a new chat to continue.\",\"chatErrorContextWindow\":\"The conversation has become too long. Start a new chat to continue.\",\"chatErrorConversationBlocked\":\"This conversation has been blocked for policy violations.\",\"chatErrorCreditExhausted\":\"Service unavailable. Please try again later.\",\"chatErrorGatewayDisabled\":\"This agent's model is not available: the organization does not use the platform AI gateway. An administrator can move the agent to one of the organization's own models.\",\"chatErrorGatewayPromptTraining\":\"Model \\\"{model}\\\" does not support the \\\"Disable prompt training\\\" option. Disable this setting in the agent's gateway configuration or choose a compatible model.\",\"chatErrorGatewayZdr\":\"Model \\\"{model}\\\" does not support the \\\"Zero Data Retention\\\" option. Disable ZDR in the agent's gateway configuration or choose a compatible model.\",\"chatErrorGeneric\":\"An error occurred. Start a new chat if the problem persists. Retrying in {seconds}...\",\"chatErrorInternalServer\":\"A server error occurred. Start a new chat to continue.\",\"chatErrorModelUnavailable\":\"This agent's model is not available right now: the endpoint it runs on is switched off or no longer serves it. An administrator can switch it back on or move the agent to another model.\",\"chatErrorNotFound\":\"The conversation is no longer available. Start a new chat to continue.\",\"chatErrorOriginNotAllowed\":\"The request origin is not allowed. Contact the system administrator.\",\"chatErrorRateLimit\":\"The rate limit has been exceeded. Retrying in {seconds} seconds...\",\"chatErrorRetrying\":\"Retrying in {seconds} seconds...\",\"checkYourEmail\":\"Check your email inbox\",\"clearTimingLogsConfirm\":\"Clear all timing logs?\",\"confirm\":\"Are you sure you want to proceed?\",\"confirmRefillCredits\":\"Are you sure you want to refill the credit of {amount} €?\",\"contentTruncated\":\"Content truncated. Total characters: {total}\",\"copied\":\"Copied to clipboard\",\"crawlError\":\"Error during crawling\",\"createFolderSuccess\":\"Folder created successfully\",\"defaultAgentWelcome\":\"Hello! How can I help you today?\",\"defaultPrivacyPolicyNotice\":\"By sending the request you accept our [Privacy Policy](https://www.iubenda.com/privacy-policy/46350192).\",\"deleteAgentConfirm\":\"Its folders are deleted. A document no other agent uses is deleted, a shared one stays with the other agents.\",\"deleteAllMemoriesConfirm\":\"They go for good, semantic search included.\",\"deleteAllNotificationsConfirm\":\"Delete every notification?\",\"deleteBulkDocumentConfirm\":\"They are removed from every agent linked to them.\",\"deleteDocumentConfirm\":\"It is removed from every agent linked to it.\",\"deleteDocumentConfirmWithAgents\":\"Are you sure you want to delete this document? It will be removed from the following agents:{agents}\",\"deleteError\":\"The deletion failed. Please try again.\",\"deleteFolderConfirm\":\"Its documents are removed from this agent. A document no other agent uses is deleted.\",\"deleteFolderSuccess\":\"Folder deleted successfully\",\"deleteMyConversationsConfirm\":\"This cannot be undone.\",\"deleteNotificationConfirm\":\"Delete this notification?\",\"deleteProfileBlockedSoleOwner\":\"You are the sole owner of {organizations}. Transfer ownership or delete the organizations before deleting your account.\",\"deleteProfileConfirm\":\"You are about to permanently delete your account: your profile will be anonymized and the content of your conversations erased. This action cannot be undone.\",\"deleteProfileDescription\":\"Anonymize your account and erase the content of your conversations (right to be forgotten).\",\"diagramRenderError\":\"Could not render diagram.\",\"documentRefreshPausedReason\":\"The page no longer responds, so the automatic update is paused. Update now to try again.\",\"documentRefreshSet\":\"Automatic update set on {updated} documents, {skipped} skipped because they are not web pages\",\"documentRefreshStarted\":\"Update started on {queued} documents, {skipped} skipped\",\"documentsEmpty\":\"Nothing in this folder yet. Add documents from the Create menu, or start with a folder.\",\"documentsEmptyManaged\":\"No synced files in this folder. Its content comes from the connected source: if you have just linked it, the first import can take a few minutes.\",\"documentSourceLinked\":\"Folder linked. The first import starts shortly.\",\"documentSourceNothingHere\":\"Nothing in here.\",\"documentSourceStale\":\"The state of this folder is not up to date: the last read failed.\",\"documentSourceUnlinked\":\"Folder unlinked. Its documents stay, and can now be edited like any other.\",\"embeddingActivated\":\"Embedding saved: the endpoint serves the declared model\",\"embeddingBackToPlatform\":\"The vectors are computed on the platform again\",\"embeddingIndexNotUpdated\":\"The progress stopped updating.\",\"embeddingRemoved\":\"Embedding removed from the endpoint\",\"empty\":\"No items found\",\"endpointActivated\":\"Endpoint activated successfully\",\"endpointDeactivated\":\"Endpoint deactivated successfully\",\"endpointsEmpty\":\"No endpoints yet. Create the first one to expose the agent over HTTP.\",\"error\":\"Error\",\"errorRetry\":\"Something went wrong. Try again.\",\"exportError\":\"Error while exporting data\",\"exportFailed\":\"The data export failed. Please try again later.\",\"exportMyDataDescription\":\"Download a complete copy of your personal data as a ZIP archive (GDPR Art. 15 and 20).\",\"exportRequested\":\"We are preparing your archive: you will receive an email with the download link.\",\"exportSuccess\":\"CSV exported successfully\",\"feedbackSubmitError\":\"Submission failed. Please try again.\",\"feedbackSubmittedMessage\":\"Your feedback has been submitted successfully.\",\"feedbackSubmittedTitle\":\"Thank you!\",\"feedbacksEmpty\":\"Feedback that users leave on the agent's answers will appear here.\",\"fileAlreadyImported\":\"Already imported\",\"fileAlreadyImportedExistingList\":\"The following files are already present in the organization:\\n{names}\",\"fileAlreadyImportedLink\":\"This file has already been imported. Do you want to link the existing document to the current agent or create a new one?\",\"fileAlreadyImportedNewList\":\"The following files are new and will be imported normally:\\n{names}\",\"fileAlreadyImportedQuestion\":\"Do you want to link the existing files to the current agent?\",\"fileAlreadyLinkedToAgent\":\"The following files are already linked to the current agent:\\n{names}\",\"fileLimitPerChat\":\"You have reached the limit of {max} files for this conversation.\",\"fileLimitPerMessage\":\"You can attach at most {max} files per message.\",\"foldersEmpty\":\"No folders yet. Create the first one from the documents page to organize them.\",\"formRenderError\":\"The form could not be shown. Ask again and the assistant will send it.\",\"gdprRequestsEmpty\":\"Export or deletion requests for this user appear here.\",\"geolocationPermissionDenied\":\"Location access denied. Please allow it in your browser settings.\",\"geolocationUnavailable\":\"Location unavailable. Please try again or enter your location manually.\",\"getMcpServerInfoError\":\"An error occurred while loading the tools.\",\"importError\":\"Error during import\",\"importSuccess\":\"{count} documents imported successfully\",\"importing\":\"Importing...\",\"info\":\"Information\",\"insufficientCredit\":\"Insufficient credit. Please try again later.\",\"insufficientCreditMessage\":\"Your credit is insufficient to complete this operation. Please contact the system administrator for more information.\",\"integrationConnected\":\"Connected successfully.\",\"integrationCreated\":\"Integration created successfully\",\"integrationDisabled\":\"Integration disabled\",\"integrationDisconnected\":\"Connection removed.\",\"integrationDisconnectConfirm\":\"The folders it keeps in sync are unlinked.\",\"integrationEnabled\":\"Integration enabled\",\"integrationOAuthDenied\":\"The connection was refused, or a Microsoft 365 administrator has not approved it yet.\",\"integrationOAuthFailed\":\"The connection did not succeed.\",\"integrationOAuthStartFailed\":\"The connection could not be started.\",\"integrationRemoveConfirm\":\"This integration's configuration is removed.\",\"integrationTestFailed\":\"Connection test failed: {error}\",\"integrationTestSuccess\":\"Connection verified successfully\",\"integrationUpdated\":\"Integration updated successfully\",\"invalidJson\":\"The input is not valid JSON\",\"invitationAccepted\":\"Invitation accepted\",\"invitationAlreadyHandled\":\"Invitation already handled\",\"invitationDeclined\":\"Invitation declined\",\"invitationToJoinOrganization\":\"You have been invited to join\",\"invitationsEmpty\":\"No pending invitations. Invite people from the members page.\",\"leadSubmitError\":\"Failed to submit. Please try again.\",\"leadSubmittedMessage\":\"Your information has been submitted successfully.\",\"leadSubmittedTitle\":\"Thank you!\",\"leadsEmpty\":\"Leads collected by the agent during conversations will appear here.\",\"leftOrganization\":\"You have successfully left the organization\",\"loadConversationsError\":\"Failed to load conversations\",\"loading\":\"Loading...\",\"loadingError\":\"Error while loading\",\"mcpServerCheckError\":\"Error while checking MCP Server: {error}\",\"mcpServerCheckSuccess\":\"MCP Server check successful\",\"mcpServerInvalidEndpoint\":\"This URL does not point to an MCP endpoint: the server replied with a web page. Check the path, MCP servers usually expose it under /mcp.\",\"mcpServersEmpty\":\"No MCP servers yet. Connect the first one to give the agent new tools.\",\"membersEmpty\":\"No members yet. Invite the first one to get started.\",\"memoriesEmpty\":\"Memories the agent saves about this user during conversations will appear here.\",\"memoryNotSynced\":\"Memory not synced with semantic search: it is not considered in answers until the repair sweep heals it.\",\"modelDiscoveryUnavailable\":\"This endpoint does not provide the list of its models: enter the ids by hand.\",\"modelDiscoveryFailed\":\"We could not read the list of models from the endpoint: only the models already saved are shown.\",\"modelPricesUnchanged\":\"No price changed.\",\"modelPricesUpdated\":\"Updated the price of one model: {models}. | Updated the prices of {count} models: {models}.\",\"modelProviderDeleted\":\"Endpoint deleted.\",\"moveDocumentSuccess\":\"Document moved successfully\",\"noActiveSessions\":\"No other active sessions\",\"noApiKeys\":\"No API keys\",\"noChats\":\"No chat available\",\"noConnectedAccounts\":\"No connected accounts\",\"noConversations\":\"No conversations found\",\"noConversationsHint\":\"Start a new chat to see it appear here.\",\"noCreditsData\":\"No credit data available\",\"noEndpointLogs\":\"No endpoint logs available\",\"noEndpointModels\":\"No model available: the endpoint listed none.\",\"modelRemoved\":\"Model removed.\",\"noGdprRequests\":\"No GDPR requests\",\"noLinkedAgents\":\"No linked agents\",\"noNotifications\":\"No notifications\",\"noOptions\":\"No options\",\"noOrganizations\":\"No organizations\",\"noResults\":\"No results\",\"noSearchResults\":\"Nothing matches your search. Clear it to see everything.\",\"notificationsEmpty\":\"No notifications sent yet. Create the first one to reach your users.\",\"oauthConfigIncomplete\":\"OAuth configuration incomplete. Set the Client ID in the MCP server settings.\",\"oauthConnected\":\"OAuth authorization completed successfully\",\"oauthError\":\"Error during OAuth authorization\",\"organizationDisconnected\":\"Neither the platform gateway nor an endpoint of its own serves this organization, so its agents do not answer.\",\"organizationMembersEmpty\":\"No members yet. Add the first one to get started.\",\"organizationNotSelected\":\"No organization selected\",\"organizationsEmpty\":\"No organizations yet. Create the first one to get started.\",\"pageNotFound\":\"Page not found\",\"passwordChangeSuccess\":\"Password changed successfully\",\"passwordResetSuccess\":\"Password reset successfully\",\"profileOrganizationsEmpty\":\"The organizations you belong to appear here.\",\"readError\":\"Error while reading\",\"reasoningAgent\":\"This is a reasoning agent. It is not designed to maintain the conversation history, each message is processed independently.\",\"recoverPasswordSuccess\":\"Recovery email sent successfully\",\"refillFailed\":\"Refill failed. Please try again later.\",\"refillSuccess\":\"Refill completed successfully\",\"refreshSuccess\":\"Refresh completed successfully\",\"releaseNotesEmpty\":\"No release notes published yet. Updates will be listed here as they ship.\",\"removeSuccess\":\"Removal completed successfully\",\"renameFolderSuccess\":\"Folder renamed successfully\",\"revisedAnswersEmpty\":\"No revised answers yet. Create the first one to teach the agent a better reply.\",\"selectedCount\":\"{count} of {total} selected\",\"sendInvitationConfirm\":\"Are you sure you want to resend the invitation to {email}?\",\"sessionRevoked\":\"Session signed out\",\"sessionsEmpty\":\"Signing in from another device or browser opens a new session, listed here.\",\"setPasswordDescription\":\"For now you sign in only through a connected account. Set a password to sign in with email and password too: we will email you a link to create it.\",\"setPasswordLinkSent\":\"We sent the link to {email}.\",\"sharedSuccess\":\"Document shared successfully\",\"sitemapUrlRequired\":\"Sitemap URL is required\",\"startUrlRequired\":\"Start URL is required\",\"subAgentsEmpty\":\"Connect an agent to delegate part of the conversation to it.\",\"submitError\":\"Error while saving\",\"submitSuccess\":\"Save completed successfully\",\"success\":\"Success\",\"testExecutionError\":\"Error executing test\",\"toolNameAutoGenerated\":\"The tool name will be generated automatically\",\"typeToSearch\":\"Start typing to search...\",\"unauthorized\":\"You do not have permission to manage channels.\",\"unbanSuccess\":\"User unbanned successfully\",\"unblockChatSuccess\":\"Conversation unblocked successfully\",\"unlinkAgentConfirm\":\"The document stays available to the other agents linked to it.\",\"unlinkDocumentConfirm\":\"It stays available to the other agents linked to it.\",\"unlinkLastAgentDeleteConfirm\":\"The document is permanently deleted, because no other agent is linked to it.\",\"unlinkSuccess\":\"Document unlinked successfully\",\"unlinkSyncedFolderConfirm\":\"Syncing stops. The folder and its documents stay with the agent and can be edited like any other from now on: to remove them, delete the folder.\",\"unsavedChanges\":\"Save or discard your changes first\",\"urlAlreadyImported\":\"Already imported\",\"urlAlreadyImportedLink\":\"This URL has already been imported. Do you want to link it to the current agent?\",\"userApiKeysEmpty\":\"Keys this user creates from their profile for programmatic access will appear here.\",\"userChatsEmpty\":\"Conversations this user has with any agent will appear here.\",\"userOrganizationsEmpty\":\"This user does not belong to any organization yet. Add the first one.\",\"userUpdateSuccess\":\"User profile updated successfully\",\"usersEmpty\":\"No users yet. Create the first one to get started.\",\"voiceCancelled\":\"I have cancelled.\",\"voiceConfirmed\":\"I confirm.\",\"voiceConnecting\":\"Connecting…\",\"voiceConnectionDone\":\"I have completed the connection.\",\"voiceFailed\":\"The voice session stopped\",\"voiceInterrupted\":\"Try again, or continue in writing.\",\"voiceListening\":\"Listening\",\"voiceLocationRefused\":\"I would rather not share my location.\",\"voiceLocationShared\":\"My location is {place}.\",\"voiceMuted\":\"Microphone muted\",\"voiceNoAnswer\":\"The agent could not produce an answer for this call. Try again, or continue in writing.\",\"voiceSpeaking\":\"The agent is speaking\",\"voiceTookTooLong\":\"The answer took too long for the call. Try again, or continue in writing: the answer will appear here as soon as it is ready.\",\"warning\":\"Warning\",\"webSourceCreated\":\"Source created: the folder “{name}” will receive new pages.\",\"webSourceCreateError\":\"The source could not be created, and no page was imported.\",\"webSourceEditable\":\"Discovered pages stay editable. Unlinking the source leaves them where they are, with their automatic refresh.\",\"webSourceRemovalHeld\":\"The sitemap no longer lists {count} pages: too many at once to remove without a check, so nothing was removed.\",\"webSourceConfirmRemovalQuestion\":\"The next check takes out of the knowledge base the pages the sitemap no longer lists, up to {count}. Their content stays in the database.\",\"unlinkWebSourceConfirm\":\"The source stops looking for new pages. The folder and its pages stay, with their automatic refresh.\"}"),
2249
2407
  messagePart: {
2250
2408
  enableTools: "Enabling tools...",
2251
2409
  expandChunkContext: "Reading more context...",
@@ -2398,6 +2556,7 @@ var Pn = {
2398
2556
  "price-list-unavailable": "The gateway price list cannot be reached right now: try again, or type the price by hand.",
2399
2557
  "provider-request-failed": "The external provider refused the request.",
2400
2558
  "rate-limit-exceeded": "Too many requests. Please try again later.",
2559
+ "two-factor-required": "An organization you belong to requires two-step verification: set it up to continue.",
2401
2560
  unauthorized: "Authentication required. Please log in.",
2402
2561
  "validation-error": "Validation error. Check the submitted data."
2403
2562
  },
@@ -2455,6 +2614,8 @@ var Pn = {
2455
2614
  subAgents: "Sub-agents",
2456
2615
  system: "System",
2457
2616
  timingDebug: "Timing Debug",
2617
+ twoFactor: "Two-step verification",
2618
+ twoFactorSetup: "Set up two-step verification",
2458
2619
  users: "Users",
2459
2620
  video: "Video",
2460
2621
  virtualAssistant: "Virtual assistant"
@@ -2555,6 +2716,101 @@ var Pn = {
2555
2716
  title: "Evaluation after the reply",
2556
2717
  version: "Questions version {version}"
2557
2718
  },
2719
+ twoFactor: {
2720
+ backupCode: "Backup code",
2721
+ backupCodesDescription: "Each code works once, in place of the app's. Keep them somewhere safe: without your phone and without these codes, only an administrator can restore your access.",
2722
+ backupCodesFileHeader: "Eight Wave Agent Studio backup codes. Each one works once.",
2723
+ backupCodesReplaced: "Here are your new backup codes: the old ones no longer work. Save them now, they will not be shown again.",
2724
+ backupCodesSaved: "I saved the codes",
2725
+ badge: "Two-step verification",
2726
+ challengeApp: "Enter the 6-digit code from your authenticator app.",
2727
+ challengeBackup: "Enter one of the backup codes you saved.",
2728
+ challengeEmailSending: "We are sending a code to your email.",
2729
+ challengeEmailSent: "We sent a 6-digit code to your email. It expires in 5 minutes.",
2730
+ challengeTitle: "Two-step verification",
2731
+ code: "6-digit code",
2732
+ column: "Two-step verification",
2733
+ disabledMessage: "Two-step verification is off.",
2734
+ enabledMessage: "Two-step verification is on.",
2735
+ manualKey: "Can't scan it? Enter this key in the app:",
2736
+ memberOff: "Off",
2737
+ memberOn: "On",
2738
+ memberPasskey: "Passkey",
2739
+ memberPasskeyHint: "Signs in with a passkey, which meets the policy. With the password alone, the setup comes first.",
2740
+ memberPending: "To set up",
2741
+ memberPendingHint: "Signs in with a password and has no second factor: they will be asked to set it up before going on",
2742
+ memberSocialOnly: "Not needed",
2743
+ memberSocialOnlyHint: "Signs in only with Google or Microsoft, whose own security applies",
2744
+ methodApp: "Authenticator app",
2745
+ methodAppSummary: "A code that changes every 30 seconds, from Google Authenticator, Microsoft Authenticator, 1Password or similar. Recommended.",
2746
+ methodEmail: "Code by email",
2747
+ methodEmailSummary: "A code sent to {email} at every sign-in with the password.",
2748
+ newBackupCodes: "New backup codes",
2749
+ newBackupCodesDescription: "The codes you have now stop working, and you get ten new ones.",
2750
+ passkeyAdd: "Add a passkey",
2751
+ passkeyAddDescription: "Confirm your password, then follow your device: it will ask for your fingerprint, your face or its PIN.",
2752
+ passkeyAdded: "The passkey is ready: use it next time you sign in.",
2753
+ passkeyAddNoPasswordDescription: "Follow your device: it will ask for your fingerprint, your face or its PIN.",
2754
+ passkeyAlreadyRegistered: "This device already holds a passkey for your account.",
2755
+ passkeyCancelled: "The device did not create the passkey: try again when you are ready.",
2756
+ passkeyCreate: "Create the passkey",
2757
+ passkeyCreatedAt: "Added on {date}",
2758
+ passkeyDeviceBound: "On one device only",
2759
+ passkeyDeviceRefused: "The device did not create the passkey. Check that it has a screen lock, a fingerprint or a PIN, then try again.",
2760
+ passkeyFallbackName: "Passkey",
2761
+ passkeyName: "Name",
2762
+ passkeyNameHint: "To recognize it in the list",
2763
+ passkeyRemove: "Remove",
2764
+ passkeyRemoved: "The passkey was removed.",
2765
+ passkeyRemoveDescription: "It will no longer sign you in. You can add a new one at any time.",
2766
+ passkeyRemoveQuestion: "Remove the passkey {name}?",
2767
+ passkeys: "Passkeys",
2768
+ passkeysDescription: "Sign in with your fingerprint, your face or the PIN of your device: no password and no code. A passkey also meets an organization that requires two-step verification.",
2769
+ passkeysEmpty: "No passkeys yet.",
2770
+ passkeySynced: "Synced across your devices",
2771
+ qrLabel: "QR code for the authenticator app",
2772
+ requireConsequence: "Members who sign in with a password and have not set it up yet will be stopped at their next page until they do.",
2773
+ requiredBy: "Required by {organizations}.",
2774
+ requiredByPasskeyEnough: "Required by {organizations}: your passkey is enough, while the password alone will ask you to set it up.",
2775
+ requireHint: "Members who sign in with a password must set it up before using the platform. Those who sign in with Google or Microsoft are not affected.",
2776
+ requireLabel: "Require two-step verification",
2777
+ requireOff: "Two-step verification is no longer required.",
2778
+ requireOn: "Two-step verification is now required.",
2779
+ requireQuestion: "Require two-step verification from the members?",
2780
+ requireTitle: "Require two-step verification",
2781
+ reset: "Reset two-step verification",
2782
+ resetConfirm: "Reset",
2783
+ resetDescription: "The authenticator app and the backup codes stop working and the user is signed out everywhere. They can sign in with the password alone and set it up again: we will tell them by email.",
2784
+ resetQuestion: "Reset the two-step verification of {name}?",
2785
+ scanDescription: "Open your authenticator app, add an account and scan the QR code. Then enter the 6-digit code it shows.",
2786
+ sendAgain: "Send a new code",
2787
+ setupAddAnotherPasskey: "Add a new passkey",
2788
+ setupAddPasskey: "Use a passkey instead",
2789
+ setupDescription: "{organizations} requires it for everyone who signs in with a password.",
2790
+ setupSignInWithPasskey: "Sign in with your passkey",
2791
+ setupTitle: "Set up two-step verification",
2792
+ signInWithPasskey: "Sign in with a passkey",
2793
+ stateNoPassword: "Not available for this account",
2794
+ stateOff: "Off",
2795
+ stateOnApp: "On, with an authenticator app",
2796
+ stateOnEmail: "On, with a code by email",
2797
+ summaryNoPassword: "You sign in with Google or Microsoft, so their own security applies. Add a password and you can protect it here too.",
2798
+ summaryOff: "Asks for a code, besides the password, every time you sign in with email and password.",
2799
+ summaryOnApp: "No backup codes left: generate new ones. | One backup code left. | {count} backup codes left.",
2800
+ summaryOnEmail: "The code goes to {email}.",
2801
+ switchToApp: "Use an authenticator app",
2802
+ title: "Two-step verification",
2803
+ trustDevice: "Trust this device for 30 days",
2804
+ turnOff: "Turn off",
2805
+ turnOffDescription: "From now on the password alone is enough to sign in. We will send you an email to confirm.",
2806
+ turnOffRequired: "An organization you belong to requires it",
2807
+ turnOffTitle: "Turn off two-step verification",
2808
+ turnOn: "Turn on",
2809
+ turnOnTitle: "Turn on two-step verification",
2810
+ useApp: "Use the authenticator app",
2811
+ useBackupCode: "Use a backup code",
2812
+ verify: "Verify"
2813
+ },
2558
2814
  userFiles: {
2559
2815
  allAgents: "All agents",
2560
2816
  chatFilesEmpty: "No files uploaded in this chat.",
@@ -3432,7 +3688,8 @@ s({
3432
3688
  banReason: x().nullable(),
3433
3689
  banExpires: g().nullable(),
3434
3690
  isAnonymous: p().nullable(),
3435
- role: Dr
3691
+ role: Dr,
3692
+ twoFactorEnabled: p().optional()
3436
3693
  }), s({
3437
3694
  id: x(),
3438
3695
  name: x(),
@@ -4667,7 +4924,7 @@ var Wo = async (e, t) => {
4667
4924
  error: null
4668
4925
  };
4669
4926
  }
4670
- let y = t?.jsonParser ?? Do, b = await h.text(), x = To(b), S = x ? await y(b) : null, C = {
4927
+ let y = t?.jsonParser ?? Do, b = await h.text(), x = To(b), S = x ? await y(b) : null, ee = {
4671
4928
  response: h,
4672
4929
  responseText: b,
4673
4930
  request: p,
@@ -4677,8 +4934,8 @@ var Wo = async (e, t) => {
4677
4934
  })
4678
4935
  };
4679
4936
  for (let e of r.onError) if (e) {
4680
- var w;
4681
- await e(Z(Z({}, C), {}, { response: t != null && (w = t.hookOptions) != null && w.cloneResponse ? h.clone() : h }));
4937
+ var C;
4938
+ await e(Z(Z({}, ee), {}, { response: t != null && (C = t.hookOptions) != null && C.cloneResponse ? h.clone() : h }));
4682
4939
  }
4683
4940
  if (t?.retry) {
4684
4941
  let n = ho(t.retry), i = t.retryAttempt ?? 0;
@@ -8386,10 +8643,10 @@ var Bu = "voice-", Vu = (e) => e.replace(/\s+/g, " ").trim().toLowerCase(), Hu =
8386
8643
  };
8387
8644
  function qu(e) {
8388
8645
  return Mn(`chatbot-${e}`, () => {
8389
- let { t, te: n, locale: r } = Fe({ useScope: "global" }), i = G(""), a = G(), o = G(e), s = G(), c = G(), l = G(), u = G(), d = G(), f = G(), p = G(), m = G(), h = G(), g = G(), _ = G(), v = G(), y = G(), b = G(), x = G(), S = G(), C = G(!1), w = It(), ee = W(() => {
8646
+ let { t, te: n, locale: r } = Fe({ useScope: "global" }), i = G(""), a = G(), o = G(e), s = G(), c = G(), l = G(), u = G(), d = G(), f = G(), p = G(), m = G(), h = G(), g = G(), _ = G(), v = G(), y = G(), b = G(), x = G(), S = G(), ee = G(!1), C = It(), te = W(() => {
8390
8647
  let e = u.value?.theme;
8391
- return (!e || e === "auto") && (e = S.value), e ? e === "dark" : w.value;
8392
- }), T = W(() => c.value === "reasoning"), te = W(() => T.value ? g.value?.filter((e) => ![
8648
+ return (!e || e === "auto") && (e = S.value), e ? e === "dark" : C.value;
8649
+ }), w = W(() => c.value === "reasoning"), T = W(() => w.value ? g.value?.filter((e) => ![
8393
8650
  "upvote",
8394
8651
  "downvote",
8395
8652
  "feedback"
@@ -8429,7 +8686,7 @@ function qu(e) {
8429
8686
  }), A = W(() => new zu({
8430
8687
  id: E.value,
8431
8688
  transport: new du({
8432
- api: O.value.getChatEndpoint(o.value, T.value ? "reasoning" : "chat"),
8689
+ api: O.value.getChatEndpoint(o.value, w.value ? "reasoning" : "chat"),
8433
8690
  prepareSendMessagesRequest: ({ messages: e, id: t }) => ({ body: {
8434
8691
  id: t,
8435
8692
  messages: [e[e.length - 1]],
@@ -8457,7 +8714,7 @@ function qu(e) {
8457
8714
  onError: D,
8458
8715
  onFinish: () => {
8459
8716
  let e = E.value;
8460
- !T.value && !I.value.some((t) => t.id === e) && ye(o.value);
8717
+ !w.value && !I.value.some((t) => t.id === e) && ye(o.value);
8461
8718
  }
8462
8719
  })), j = W(() => {
8463
8720
  let e = u.value?.initialMessage;
@@ -8488,13 +8745,13 @@ function qu(e) {
8488
8745
  };
8489
8746
  })
8490
8747
  });
8491
- return T.value ? e(A.value.messages) : !C.value && A.value.messages?.[0]?.role !== "assistant" ? [N.value, ...e(A.value.messages)] : e(A.value.messages);
8748
+ return w.value ? e(A.value.messages) : !ee.value && A.value.messages?.[0]?.role !== "assistant" ? [N.value, ...e(A.value.messages)] : e(A.value.messages);
8492
8749
  }), P = W(() => {
8493
8750
  let e = u.value?.messagePlaceholder;
8494
8751
  return e?.[r.value] ? e[r.value] : n("placeholder.askAnything") ? t("placeholder.askAnything") : "";
8495
8752
  }), I = G([]), ue = G(!1), L = G([]), R = G(!1), de = G("chat"), z = G([]), B = G(), fe = G(!1), pe = G(!1), V = G(), me = G(!1), H = G(!1), he = G(), U = G(""), ge = G([]), _e = G(""), ve = G(0);
8496
8753
  async function ye(e) {
8497
- if (T.value) {
8754
+ if (w.value) {
8498
8755
  I.value = [];
8499
8756
  return;
8500
8757
  }
@@ -8532,7 +8789,7 @@ function qu(e) {
8532
8789
  await O.value.deleteChatFile(e), L.value = L.value.filter((t) => t.documentId !== e);
8533
8790
  }
8534
8791
  async function we(e, t) {
8535
- if (!T.value) try {
8792
+ if (!w.value) try {
8536
8793
  let n = await O.value.getChat(e, t);
8537
8794
  if (t !== E.value || A.value.status !== "ready" || A.value.messages.length > 0) return;
8538
8795
  n && (A.value.messages = n.messages, ie.value = n.blocked ?? !1);
@@ -8543,7 +8800,7 @@ function qu(e) {
8543
8800
  return e === "submitted" || e === "streaming";
8544
8801
  }, Ee = 0, K = 0;
8545
8802
  async function De() {
8546
- if (T.value || Te()) return "indeterminate";
8803
+ if (w.value || Te()) return "indeterminate";
8547
8804
  let e = E.value, t = Ee += 1;
8548
8805
  try {
8549
8806
  let n = await O.value.getChat(o.value, e);
@@ -8592,7 +8849,7 @@ function qu(e) {
8592
8849
  filename: e.mediaSource.name,
8593
8850
  providerMetadata: { "8bot": { media: e.mediaSource } }
8594
8851
  }));
8595
- T.value && ce.value.length > 0 && await Ne(), _e.value = e, ve.value = A.value.messages.length;
8852
+ w.value && ce.value.length > 0 && await Ne(), _e.value = e, ve.value = A.value.messages.length;
8596
8853
  let n = A.value.sendMessage;
8597
8854
  n({
8598
8855
  text: e,
@@ -8754,7 +9011,7 @@ function qu(e) {
8754
9011
  if (!e || e === tt) return;
8755
9012
  let t = tt;
8756
9013
  if (tt = e, t === void 0) return;
8757
- let n = E.value, r = !T.value && await nt(n);
9014
+ let n = E.value, r = !w.value && await nt(n);
8758
9015
  if (l.value === e && E.value === n) {
8759
9016
  if (r) {
8760
9017
  ye(o.value);
@@ -8777,15 +9034,15 @@ function qu(e) {
8777
9034
  revisedAnswers: m,
8778
9035
  model: h,
8779
9036
  actionsInput: g,
8780
- actions: te,
9037
+ actions: T,
8781
9038
  agentFileUpload: _,
8782
9039
  agentVoice: v,
8783
9040
  fallbackModels: y,
8784
9041
  gatewayOptions: b,
8785
9042
  externalContext: x,
8786
9043
  systemTheme: S,
8787
- hideWelcomeMessage: C,
8788
- isDark: ee,
9044
+ hideWelcomeMessage: ee,
9045
+ isDark: te,
8789
9046
  chat: A,
8790
9047
  messages: ce,
8791
9048
  conversations: I,
@@ -8849,9 +9106,9 @@ var Ju = G(!1), Yu = G(), Xu = G(), Zu = G(), Qu = G(), $u = G(!1), ed = G(), td
8849
9106
  Yu.value = void 0, Xu.value = void 0, Zu.value = void 0, Qu.value = void 0, $u.value = void 0, ed.value = void 0, td.value = void 0;
8850
9107
  };
8851
9108
  return {
8852
- PkGlobalDialog: w({
9109
+ PkGlobalDialog: C({
8853
9110
  name: "PkGlobalDialog",
8854
- render: () => te(Ht, {
9111
+ render: () => T(Ht, {
8855
9112
  modelValue: Ju.value,
8856
9113
  title: Yu.value,
8857
9114
  transition: Xu.value,
@@ -8881,16 +9138,16 @@ var rd = () => {
8881
9138
  keepOpen: !0,
8882
9139
  title: d
8883
9140
  }, {
8884
- default: () => te("div", [
8885
- te("div", {
9141
+ default: () => T("div", [
9142
+ T("div", {
8886
9143
  class: o ? "" : "mb-sm",
8887
9144
  style: "white-space: pre-line"
8888
9145
  }, a ?? t("message.confirm")),
8889
- o ? te("p", {
9146
+ o ? T("p", {
8890
9147
  class: "text-14 text-word-2 mt-xs mb-sm",
8891
9148
  style: "white-space: pre-line"
8892
9149
  }, o) : void 0,
8893
- c ? te(Bt, {
9150
+ c ? T(Bt, {
8894
9151
  modelValue: m.value,
8895
9152
  "onUpdate:modelValue": (e) => {
8896
9153
  m.value = e;
@@ -8903,15 +9160,15 @@ var rd = () => {
8903
9160
  hintLabel: u ?? t("hint.passphrase", { passphrase: c })
8904
9161
  }) : void 0
8905
9162
  ]),
8906
- footer: () => te(Rt, () => {
9163
+ footer: () => T(Rt, () => {
8907
9164
  let e = [];
8908
- return s || e.push(te(Wt, {
9165
+ return s || e.push(T(Wt, {
8909
9166
  label: i ?? t("action.cancel"),
8910
9167
  modifiers: "ghost",
8911
9168
  onClick: () => {
8912
9169
  n && p(), f(!1), h.value = !1;
8913
9170
  }
8914
- })), e.push(te(Wt, {
9171
+ })), e.push(T(Wt, {
8915
9172
  label: r ?? t("action.proceed"),
8916
9173
  disabled: c ? c !== m.value : !1,
8917
9174
  onClick: () => {
@@ -9983,7 +10240,7 @@ function qf(e = {}) {
9983
10240
  }
9984
10241
  }
9985
10242
  }
9986
- async function C() {
10243
+ async function ee() {
9987
10244
  s.value || await p(async () => {
9988
10245
  if (!(u.value || n.value)) {
9989
10246
  s.value = !0;
@@ -10004,14 +10261,14 @@ function qf(e = {}) {
10004
10261
  return;
10005
10262
  }
10006
10263
  if (e.awaitExternalToken) return;
10007
- C();
10264
+ ee();
10008
10265
  return;
10009
10266
  }
10010
10267
  let i = r.data?.user;
10011
10268
  if (!n.value) {
10012
10269
  if (r.data?.session?.hardExpiresAt && !x) {
10013
10270
  if (x = !0, !u.value) {
10014
- re();
10271
+ k();
10015
10272
  return;
10016
10273
  }
10017
10274
  if (b !== u.value) {
@@ -10032,9 +10289,9 @@ function qf(e = {}) {
10032
10289
  u.value = e, l.value && S(e);
10033
10290
  return;
10034
10291
  }
10035
- t && u.value === t && re();
10292
+ t && u.value === t && k();
10036
10293
  });
10037
- function w(t) {
10294
+ function C(t) {
10038
10295
  if (t.status === 401) {
10039
10296
  if (n.value) {
10040
10297
  o.value.refetch();
@@ -10044,28 +10301,69 @@ function qf(e = {}) {
10044
10301
  S(u.value);
10045
10302
  return;
10046
10303
  }
10047
- e.awaitExternalToken || C();
10304
+ e.awaitExternalToken || ee();
10048
10305
  }
10049
10306
  }
10050
- let ee = W(() => o.value.data?.user?.id);
10307
+ let te = W(() => o.value.data?.user?.id), w = G();
10051
10308
  async function T(t, n, i) {
10052
10309
  let o = await a.signIn.email({
10053
10310
  email: t,
10054
10311
  password: n,
10055
10312
  rememberMe: i
10313
+ }), s = o.data;
10314
+ return s?.twoFactorRedirect ? (w.value = s.twoFactorToken ? {
10315
+ token: s.twoFactorToken,
10316
+ methods: s.twoFactorMethods ?? []
10317
+ } : void 0, Bf(e.cookieName), o) : (o.data?.token && (r.value = o.data.token, Bf(e.cookieName)), o);
10318
+ }
10319
+ let ne = {
10320
+ totp: "/two-factor/verify-totp",
10321
+ otp: "/two-factor/verify-otp",
10322
+ backup: "/two-factor/verify-backup-code"
10323
+ };
10324
+ function E(e) {
10325
+ return {
10326
+ method: "POST",
10327
+ headers: { "x-two-factor-token": e.token },
10328
+ auth: {
10329
+ type: "Bearer",
10330
+ token: ""
10331
+ }
10332
+ };
10333
+ }
10334
+ let re = {
10335
+ data: null,
10336
+ error: {
10337
+ code: "INVALID_TWO_FACTOR_COOKIE",
10338
+ message: void 0
10339
+ }
10340
+ };
10341
+ async function ie(e, t) {
10342
+ let n = w.value;
10343
+ if (!n) return re;
10344
+ let i = await a.$fetch(ne[e], {
10345
+ ...E(n),
10346
+ body: { code: t }
10056
10347
  });
10057
- return o.data?.token && (r.value = o.data.token, Bf(e.cookieName)), o;
10348
+ return i.data?.token && (r.value = i.data.token, w.value = void 0), i;
10349
+ }
10350
+ async function ae() {
10351
+ let e = w.value;
10352
+ return e ? a.$fetch("/two-factor/send-otp", E(e)) : re;
10353
+ }
10354
+ function oe() {
10355
+ w.value = void 0;
10058
10356
  }
10059
- function te(e) {
10357
+ function D(e) {
10060
10358
  return a.signUp.email(e);
10061
10359
  }
10062
- function ne(e, t) {
10360
+ function O(e, t) {
10063
10361
  return a.requestPasswordReset({
10064
10362
  email: e,
10065
10363
  redirectTo: t
10066
10364
  });
10067
10365
  }
10068
- async function E(t, n) {
10366
+ async function se(t, n) {
10069
10367
  let i = e.baseUrl ?? "https://ai-api.8wave.it", a = e.basePath ?? "auth", s = Kf(), c = new URL(`${i}/${a}/oauth-popup/start`);
10070
10368
  c.searchParams.set("provider", t), c.searchParams.set("popupOrigin", window.location.origin), c.searchParams.set("popupNonce", s);
10071
10369
  let l = window.open(c.toString(), "eightwave-oauth", "width=600,height=700,menubar=no,toolbar=no");
@@ -10082,7 +10380,7 @@ function qf(e = {}) {
10082
10380
  window.addEventListener("message", d);
10083
10381
  }) : { popupBlocked: !0 };
10084
10382
  }
10085
- async function re() {
10383
+ async function k() {
10086
10384
  if (n.value) return;
10087
10385
  u.value = void 0;
10088
10386
  let e = r.value;
@@ -10099,15 +10397,19 @@ function qf(e = {}) {
10099
10397
  isExternalAuth: d,
10100
10398
  token: r,
10101
10399
  headers: i,
10102
- onError: w,
10103
- userId: ee,
10400
+ onError: C,
10401
+ userId: te,
10104
10402
  signInWithEmail: T,
10105
- signUpWithEmail: te,
10106
- requestPasswordReset: ne,
10403
+ twoFactorChallenge: w,
10404
+ verifyTwoFactor: ie,
10405
+ sendTwoFactorCode: ae,
10406
+ cancelTwoFactor: oe,
10407
+ signUpWithEmail: D,
10408
+ requestPasswordReset: O,
10107
10409
  signInSocial: a.signIn.social,
10108
- signInWithSocialPopup: E,
10410
+ signInWithSocialPopup: se,
10109
10411
  signInWithExternalToken: S,
10110
- signOut: re
10412
+ signOut: k
10111
10413
  };
10112
10414
  }
10113
10415
  //#endregion
@@ -10255,10 +10557,30 @@ function $f(e) {
10255
10557
  n.value = a(r);
10256
10558
  return;
10257
10559
  }
10560
+ e.isTwoFactorPending() || (await e.refetchSession(), await e.reload());
10561
+ });
10562
+ }
10563
+ let c = /* @__PURE__ */ new Set(["INVALID_TWO_FACTOR_COOKIE", "TOO_MANY_ATTEMPTS_REQUEST_NEW_CODE"]);
10564
+ async function l(t) {
10565
+ await o(async () => {
10566
+ let { error: r } = await e.verifyTwoFactor(t.kind, t.code);
10567
+ if (r) {
10568
+ n.value = a(r), r.code && c.has(r.code) && e.cancelTwoFactor();
10569
+ return;
10570
+ }
10258
10571
  await e.refetchSession(), await e.reload();
10259
10572
  });
10260
10573
  }
10261
- async function c(i) {
10574
+ async function u() {
10575
+ await o(async () => {
10576
+ let { error: t } = await e.sendTwoFactorCode();
10577
+ t && (n.value = a(t), t.code && c.has(t.code) && e.cancelTwoFactor());
10578
+ });
10579
+ }
10580
+ function d() {
10581
+ n.value = void 0, e.cancelTwoFactor();
10582
+ }
10583
+ async function f(i) {
10262
10584
  await o(async () => {
10263
10585
  let { error: o } = await e.signUpWithEmail(i);
10264
10586
  if (o) {
@@ -10271,7 +10593,7 @@ function $f(e) {
10271
10593
  };
10272
10594
  });
10273
10595
  }
10274
- async function l(i) {
10596
+ async function p(i) {
10275
10597
  await o(async () => {
10276
10598
  let o = `https://ai.8wave.it/auth/reset-password?email=${encodeURIComponent(i.email)}`, { error: s } = await e.requestPasswordReset(i.email, o);
10277
10599
  if (s) {
@@ -10284,7 +10606,7 @@ function $f(e) {
10284
10606
  };
10285
10607
  });
10286
10608
  }
10287
- async function u(r) {
10609
+ async function m(r) {
10288
10610
  await o(async () => {
10289
10611
  let { popupBlocked: i } = await e.signInWithSocialPopup(r, () => e.reload());
10290
10612
  i && (n.value = t("auth.popupBlocked"));
@@ -10295,9 +10617,12 @@ function $f(e) {
10295
10617
  authSuccess: r,
10296
10618
  authLoading: i,
10297
10619
  handleSignIn: s,
10298
- handleSignUp: c,
10299
- handleReset: l,
10300
- handleSocial: u
10620
+ handleSignUp: f,
10621
+ handleReset: p,
10622
+ handleSocial: m,
10623
+ handleVerifyTwoFactor: l,
10624
+ handleSendTwoFactorCode: u,
10625
+ handleCancelTwoFactor: d
10301
10626
  };
10302
10627
  }
10303
10628
  //#endregion
@@ -10315,7 +10640,7 @@ function ep() {
10315
10640
  });
10316
10641
  }
10317
10642
  k(), U(), Y();
10318
- var tp = ["src"], np = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
10643
+ var tp = ["src"], np = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
10319
10644
  __name: "PkAvatar",
10320
10645
  props: {
10321
10646
  name: {
@@ -10368,7 +10693,7 @@ var rp = {
10368
10693
  }, ip = {
10369
10694
  key: 1,
10370
10695
  class: "pk-aurora__fallback"
10371
- }, ap = "\nattribute vec2 a_position;\nvoid main() {\n gl_Position = vec4(a_position, 0.0, 1.0);\n}", op = "\nprecision mediump float;\nuniform vec2 u_resolution;\nuniform float u_time;\nuniform vec3 u_color;\nuniform vec2 u_center;\nuniform vec2 u_half;\nuniform float u_spread;\n\nvec3 permute(vec3 x) { return mod(((x * 34.0) + 1.0) * x, 289.0); }\n\nfloat snoise(vec2 v) {\n const vec4 C = vec4(0.211324865405187, 0.366025403784439,\n -0.577350269189626, 0.024390243902439);\n vec2 i = floor(v + dot(v, C.yy));\n vec2 x0 = v - i + dot(i, C.xx);\n vec2 i1 = (x0.x > x0.y) ? vec2(1.0, 0.0) : vec2(0.0, 1.0);\n vec4 x12 = x0.xyxy + C.xxzz;\n x12.xy -= i1;\n i = mod(i, 289.0);\n vec3 p = permute(permute(i.y + vec3(0.0, i1.y, 1.0))\n + i.x + vec3(0.0, i1.x, 1.0));\n vec3 m = max(0.5 - vec3(dot(x0, x0), dot(x12.xy, x12.xy),\n dot(x12.zw, x12.zw)), 0.0);\n m = m * m;\n m = m * m;\n vec3 x = 2.0 * fract(p * C.www) - 1.0;\n vec3 h = abs(x) - 0.5;\n vec3 ox = floor(x + 0.5);\n vec3 a0 = x - ox;\n m *= 1.79284291400159 - 0.85373472095314 * (a0 * a0 + h * h);\n vec3 g;\n g.x = a0.x * x0.x + h.x * x0.y;\n g.yz = a0.yz * x12.xz + h.yz * x12.yw;\n return 130.0 * dot(m, g);\n}\n\nvoid main() {\n vec2 px = gl_FragCoord.xy;\n vec2 rel = px - u_center;\n\n // Ignition: the ellipse lights up expanding from the center on mount\n float intro = smoothstep(0.0, 1.4, u_time);\n\n // Breathing: size and brightness oscillate gently but visibly\n float breath = 1.0\n + 0.12 * sin(u_time * 0.55)\n + 0.06 * snoise(vec2(u_time * 0.1, 3.7));\n float pulse = 1.0 + 0.2 * sin(u_time * 0.55 + 1.3);\n\n // Keep it simple (Gemini-style): one huge soft elliptical glow\n // centered on the pill\n vec2 radii = vec2(u_half.x * 0.95, u_half.y * 6.5)\n * u_spread\n * breath\n * mix(0.15, 1.0, intro);\n float r = length(rel / max(radii, vec2(1.0)));\n float glow = exp(-r * r * 2.2);\n\n // Never cut hard against the canvas bounds\n vec2 m = min(px, u_resolution - px);\n glow *= smoothstep(0.0, 32.0, min(m.x, m.y));\n\n // Dither: breaks the 8-bit banding rings of the very soft gradient\n // (no CSS blur on the canvas, the noise must fully mask the bands)\n glow = max(glow + (snoise(px * 0.9) - 0.5) * 0.03, 0.0);\n\n float alpha = glow * 0.2 * pulse * intro;\n\n // Premultiplied alpha (default canvas compositing)\n gl_FragColor = vec4(u_color * alpha, alpha);\n}", sp = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
10696
+ }, ap = "\nattribute vec2 a_position;\nvoid main() {\n gl_Position = vec4(a_position, 0.0, 1.0);\n}", op = "\nprecision mediump float;\nuniform vec2 u_resolution;\nuniform float u_time;\nuniform vec3 u_color;\nuniform vec2 u_center;\nuniform vec2 u_half;\nuniform float u_spread;\n\nvec3 permute(vec3 x) { return mod(((x * 34.0) + 1.0) * x, 289.0); }\n\nfloat snoise(vec2 v) {\n const vec4 C = vec4(0.211324865405187, 0.366025403784439,\n -0.577350269189626, 0.024390243902439);\n vec2 i = floor(v + dot(v, C.yy));\n vec2 x0 = v - i + dot(i, C.xx);\n vec2 i1 = (x0.x > x0.y) ? vec2(1.0, 0.0) : vec2(0.0, 1.0);\n vec4 x12 = x0.xyxy + C.xxzz;\n x12.xy -= i1;\n i = mod(i, 289.0);\n vec3 p = permute(permute(i.y + vec3(0.0, i1.y, 1.0))\n + i.x + vec3(0.0, i1.x, 1.0));\n vec3 m = max(0.5 - vec3(dot(x0, x0), dot(x12.xy, x12.xy),\n dot(x12.zw, x12.zw)), 0.0);\n m = m * m;\n m = m * m;\n vec3 x = 2.0 * fract(p * C.www) - 1.0;\n vec3 h = abs(x) - 0.5;\n vec3 ox = floor(x + 0.5);\n vec3 a0 = x - ox;\n m *= 1.79284291400159 - 0.85373472095314 * (a0 * a0 + h * h);\n vec3 g;\n g.x = a0.x * x0.x + h.x * x0.y;\n g.yz = a0.yz * x12.xz + h.yz * x12.yw;\n return 130.0 * dot(m, g);\n}\n\nvoid main() {\n vec2 px = gl_FragCoord.xy;\n vec2 rel = px - u_center;\n\n // Ignition: the ellipse lights up expanding from the center on mount\n float intro = smoothstep(0.0, 1.4, u_time);\n\n // Breathing: size and brightness oscillate gently but visibly\n float breath = 1.0\n + 0.12 * sin(u_time * 0.55)\n + 0.06 * snoise(vec2(u_time * 0.1, 3.7));\n float pulse = 1.0 + 0.2 * sin(u_time * 0.55 + 1.3);\n\n // Keep it simple (Gemini-style): one huge soft elliptical glow\n // centered on the pill\n vec2 radii = vec2(u_half.x * 0.95, u_half.y * 6.5)\n * u_spread\n * breath\n * mix(0.15, 1.0, intro);\n float r = length(rel / max(radii, vec2(1.0)));\n float glow = exp(-r * r * 2.2);\n\n // Never cut hard against the canvas bounds\n vec2 m = min(px, u_resolution - px);\n glow *= smoothstep(0.0, 32.0, min(m.x, m.y));\n\n // Dither: breaks the 8-bit banding rings of the very soft gradient\n // (no CSS blur on the canvas, the noise must fully mask the bands)\n glow = max(glow + (snoise(px * 0.9) - 0.5) * 0.03, 0.0);\n\n float alpha = glow * 0.2 * pulse * intro;\n\n // Premultiplied alpha (default canvas compositing)\n gl_FragColor = vec4(u_color * alpha, alpha);\n}", sp = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
10372
10697
  __name: "PkAuroraCanvas",
10373
10698
  props: { sourceSelector: { type: String } },
10374
10699
  setup(e) {
@@ -10454,7 +10779,7 @@ var rp = {
10454
10779
  k(), U(), Y();
10455
10780
  //#endregion
10456
10781
  //#region ../../packages/components/src/chat/PkChatbotError.vue
10457
- var cp = /* @__PURE__ */ w({
10782
+ var cp = /* @__PURE__ */ C({
10458
10783
  __name: "PkChatbotError",
10459
10784
  props: { error: { type: Error } },
10460
10785
  emits: ["retry", "reset"],
@@ -10513,7 +10838,7 @@ k(), U(), Y(), we();
10513
10838
  var lp = { class: "border border-surface-3 rounded-xl w-full overflow-hidden bg-surface" }, up = { class: "px-sm py-6 bg-surface-1 min-h-40 text-12 border-b border-surface-3 text-word-3 flex items-center gap-8 min-h-40" }, dp = { class: "font-bold" }, fp = { key: 0 }, pp = { class: "p-sm" }, mp = { class: "flex justify-end border-t border-surface-3 px-sm py-10" }, hp = {
10514
10839
  key: 1,
10515
10840
  class: "p-sm"
10516
- }, gp = { class: "flex items-center gap-sm" }, _p = { class: "font-medium block text-word-1" }, vp = { class: "text-word-3" }, yp = /* @__PURE__ */ w({
10841
+ }, gp = { class: "flex items-center gap-sm" }, _p = { class: "font-medium block text-word-1" }, vp = { class: "text-word-3" }, yp = /* @__PURE__ */ C({
10517
10842
  __name: "PkChatbotFeedbackForm",
10518
10843
  props: {
10519
10844
  submitted: { type: Boolean },
@@ -10599,7 +10924,7 @@ var bp = { class: "pk-message-feedback__badge" }, xp = {
10599
10924
  }, Sp = {
10600
10925
  key: 0,
10601
10926
  class: "pk-message-feedback__comment"
10602
- }, Cp = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
10927
+ }, Cp = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
10603
10928
  __name: "PkChatbotMessageFeedback",
10604
10929
  props: { feedback: { type: null } },
10605
10930
  setup(e) {
@@ -10651,7 +10976,7 @@ var wp = [
10651
10976
  "href",
10652
10977
  "title",
10653
10978
  "aria-label"
10654
- ], Rp = ["title", "aria-label"], zp = 300, Bp = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
10979
+ ], Rp = ["title", "aria-label"], zp = 300, Bp = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
10655
10980
  __name: "PkChatbotFilePreview",
10656
10981
  props: {
10657
10982
  mediaType: { type: String },
@@ -10876,7 +11201,7 @@ var wp = [
10876
11201
  }
10877
11202
  }), [["styles", [".pk-chatbot-file-preview{--file-radius:var(--rounded-lg,12px);background-color:var(--color-surface-1);border:1px solid var(--color-surface-3);border-radius:var(--file-radius);max-width:280px;color:var(--color-word-2);font-size:var(--text-12);position:relative}.pk-chatbot-file-preview--error{border-color:var(--color-danger)}.pk-chatbot-file-preview--doc{align-items:center;gap:var(--spacing-8);padding:var(--spacing-8);min-width:0;transition:border-color .18s var(--ease-out), background-color .18s var(--ease-out), box-shadow .18s var(--ease-out);display:flex}.pk-chatbot-file-preview--doc:hover{border-color:var(--color-surface-4);background-color:var(--color-surface-2);box-shadow:var(--shadow-sm)}.pk-chatbot-file-preview__icon-tile{width:var(--spacing-36);height:var(--spacing-36);border-radius:var(--rounded-md,6px);background-color:color-mix(in srgb, var(--file-accent) 14%, transparent);color:var(--file-accent);flex-shrink:0;justify-content:center;align-items:center;display:flex}.pk-chatbot-file-preview__icon{width:var(--spacing-20);height:var(--spacing-20)}.pk-chatbot-file-preview__body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.pk-chatbot-file-preview__open{width:var(--spacing-28);height:var(--spacing-28);border-radius:var(--rounded);color:var(--color-word-3);opacity:0;transition:opacity .18s var(--ease-out), color .18s var(--ease-out), background-color .18s var(--ease-out);flex-shrink:0;justify-content:center;align-items:center;margin-inline-start:var(--spacing-4);text-decoration:none;display:flex}.pk-chatbot-file-preview__open:hover{background-color:var(--color-surface-3);color:var(--color-word-1)}.pk-chatbot-file-preview--doc:hover .pk-chatbot-file-preview__open,.pk-chatbot-file-preview--doc:focus-within .pk-chatbot-file-preview__open{opacity:1}@media (hover:none){.pk-chatbot-file-preview--doc .pk-chatbot-file-preview__open{opacity:1}}.pk-chatbot-file-preview--image{flex-direction:column;margin:0;display:inline-flex}.pk-chatbot-file-preview__thumb-wrap{background-color:var(--color-surface);border-radius:var(--file-radius);width:280px;max-width:100%;height:200px;display:flex;position:relative;overflow:hidden}.pk-chatbot-file-preview__thumb-link{cursor:pointer;width:100%;height:100%;display:flex}.pk-chatbot-file-preview__thumb{object-fit:cover;width:100%;height:100%;display:block}.pk-chatbot-file-preview__caption{padding:var(--spacing-8);flex-direction:column;gap:1px;min-width:0;display:flex}.pk-chatbot-file-preview__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:var(--font-medium,500);color:var(--color-word-1);overflow:hidden}.pk-chatbot-file-preview__meta{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-10);line-height:var(--leading-normal);min-height:1.4em;color:var(--color-word-4);font-variant-numeric:tabular-nums;overflow:hidden}.pk-chatbot-file-preview__error{align-items:center;gap:var(--spacing-4);color:var(--color-danger);display:inline-flex}.pk-chatbot-file-preview__error .vv-icon{flex-shrink:0}.pk-chatbot-file-preview__status{justify-content:center;align-items:center;display:inline-flex}.pk-chatbot-file-preview__status .vv-icon{width:var(--spacing-32);height:var(--spacing-32)}.pk-chatbot-file-preview__status--overlay{background-color:color-mix(in srgb, var(--color-surface-1) 70%, transparent);color:var(--color-word-1);position:absolute;inset:0}.pk-chatbot-file-preview__status--error{color:var(--color-word-4)}.pk-chatbot-file-preview__remove{width:var(--spacing-28);height:var(--spacing-28);border-radius:var(--rounded-full,9999px);background-color:color-mix(in srgb, var(--color-surface-1) 85%, transparent);color:var(--color-word-2);cursor:pointer;box-shadow:var(--shadow-sm);transition:background-color .18s var(--ease-out), color .18s var(--ease-out), scale .12s var(--ease-out);border:none;justify-content:center;align-items:center;padding:0;line-height:1;display:flex;position:absolute;top:0;right:0;transform:translate(50%,-50%)}.pk-chatbot-file-preview__remove:hover{background-color:var(--color-surface-2);color:var(--color-word-1)}.pk-chatbot-file-preview__remove:active{scale:.96}.pk-chatbot-file-preview__remove--inline{box-shadow:none;color:var(--color-word-4);background-color:#0000;flex-shrink:0;position:static}.pk-chatbot-file-preview__remove--inline:hover{background-color:var(--color-surface-3);color:var(--color-word-1)}.pk-chatbot-file-preview--compact{--chip-size:var(--spacing-56);max-width:240px}.pk-chatbot-file-preview--compact.pk-chatbot-file-preview--image{width:var(--chip-size);height:var(--chip-size);border-radius:var(--rounded-md,6px)}.pk-chatbot-file-preview--compact .pk-chatbot-file-preview__thumb-wrap,.pk-chatbot-file-preview--compact .pk-chatbot-file-preview__thumb-link{width:100%;height:100%}.pk-chatbot-file-preview--compact.pk-chatbot-file-preview--doc{height:var(--chip-size);gap:var(--spacing-8);padding:var(--spacing-8);padding-inline-end:var(--spacing-28)}.pk-chatbot-file-preview--compact .pk-chatbot-file-preview__icon-tile{aspect-ratio:1;align-self:stretch;width:auto;height:auto}.pk-chatbot-file-preview--compact .pk-chatbot-file-preview__icon{width:var(--spacing-20);height:var(--spacing-20)}.pk-chatbot-file-preview--compact .pk-chatbot-file-preview__remove{top:var(--spacing-4);right:var(--spacing-4);width:var(--spacing-24);height:var(--spacing-24);border:1px solid var(--color-surface-4);background-color:var(--color-surface);color:var(--color-word-1);font-size:var(--text-16);box-shadow:var(--shadow-sm)}.pk-chatbot-file-preview--compact .pk-chatbot-file-preview__remove:after{content:\"\";inset:calc(-1 * var(--spacing-4));position:absolute}.pk-chatbot-file-preview--compact .pk-chatbot-file-preview__remove:hover{background-color:var(--color-surface-2);color:var(--color-word-1)}@media (prefers-reduced-motion:reduce){.pk-chatbot-file-preview--doc,.pk-chatbot-file-preview__open,.pk-chatbot-file-preview__remove{transition:none}}"]]]);
10878
11203
  k(), Y(), U();
10879
- var Vp = ["datetime"], Hp = 6e4, Up = /* @__PURE__ */ w({
11204
+ var Vp = ["datetime"], Hp = 6e4, Up = /* @__PURE__ */ C({
10880
11205
  __name: "PkRelativeTime",
10881
11206
  props: {
10882
11207
  date: { type: [
@@ -10942,7 +11267,7 @@ var Wp = {
10942
11267
  showMultipleChoice: M(() => import("./_chunks/PkToolShowForm-KW8MOL-j.js")),
10943
11268
  showProductList: M(() => import("./_chunks/PkToolShowProductList-BpCZ1x86.js")),
10944
11269
  showQrCode: M(() => import("./_chunks/PkToolShowQrCode-BF7J2tXo.js")),
10945
- showSources: M(() => import("./_chunks/PkToolShowSources-Sc1W6WHe.js")),
11270
+ showSources: M(() => import("./_chunks/PkToolShowSources-Bfx-Th_j.js")),
10946
11271
  showSuggestedReply: M(() => import("./_chunks/PkToolShowSuggestedReply-Dl4x_nEJ.js")),
10947
11272
  showVideo: M(() => import("./_chunks/PkToolShowVideo-p6Y9j3-B.js")),
10948
11273
  showWeather: M(() => import("./_chunks/PkToolShowWeather-B9QOh9HH.js")),
@@ -10952,7 +11277,7 @@ k(), Y();
10952
11277
  var Gp = {
10953
11278
  key: 0,
10954
11279
  class: "text-12 text-word-3 m-0 mb-xs"
10955
- }, Kp = /* @__PURE__ */ w({
11280
+ }, Kp = /* @__PURE__ */ C({
10956
11281
  __name: "PkToolApprovalPreviewMessage",
10957
11282
  props: { input: { type: null } },
10958
11283
  setup(e) {
@@ -10967,7 +11292,7 @@ k(), U(), Y(), we();
10967
11292
  var Jp = {
10968
11293
  key: 0,
10969
11294
  class: "text-12 text-word-3 m-0 mb-xs"
10970
- }, Yp = /* @__PURE__ */ w({
11295
+ }, Yp = /* @__PURE__ */ C({
10971
11296
  __name: "PkToolApprovalCard",
10972
11297
  props: {
10973
11298
  part: { type: null },
@@ -11032,7 +11357,7 @@ var Jp = {
11032
11357
  }
11033
11358
  });
11034
11359
  k(), Y(), U();
11035
- var Xp = 8, Zp = /* @__PURE__ */ w({
11360
+ var Xp = 8, Zp = /* @__PURE__ */ C({
11036
11361
  __name: "PkStreamingMarkdownAutoscroll",
11037
11362
  props: {
11038
11363
  markdown: { type: String },
@@ -11081,7 +11406,7 @@ var Qp = {
11081
11406
  }, om = {
11082
11407
  key: 1,
11083
11408
  class: "pk-chatbot-step-payload__full"
11084
- }, sm = 120, cm = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
11409
+ }, sm = 120, cm = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
11085
11410
  __name: "PkChatbotStepPayload",
11086
11411
  props: {
11087
11412
  label: { type: String },
@@ -11182,7 +11507,7 @@ var lm = { class: "pk-chatbot-step-detail" }, um = {
11182
11507
  }, xm = { class: "pk-chatbot-step-detail__passage-header" }, Sm = { class: "pk-chatbot-step-detail__hit-heading" }, Cm = { class: "pk-chatbot-step-detail__hit-title" }, wm = {
11183
11508
  key: 0,
11184
11509
  class: "pk-chatbot-step-detail__hit-meta"
11185
- }, Tm = { class: "pk-chatbot-step-detail__passage-content" }, Em = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
11510
+ }, Tm = { class: "pk-chatbot-step-detail__passage-content" }, Em = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
11186
11511
  __name: "PkChatbotStepToolDetail",
11187
11512
  props: { part: { type: null } },
11188
11513
  setup(e) {
@@ -11334,7 +11659,7 @@ var lm = { class: "pk-chatbot-step-detail" }, um = {
11334
11659
  }, b = W(() => {
11335
11660
  let e = y();
11336
11661
  return h.value.length && (e.facts = [...h.value, ...e.facts ?? []]), l.value?.searchUnavailable && (e.showEmpty = !1), e.chips?.length || e.facts?.length || e.passage || e.showEmpty || e.hits?.length || (e.rawInput = o.value, e.rawOutput ??= s.value), e;
11337
- }), x = fe(/* @__PURE__ */ new Set()), C = (e) => {
11662
+ }), x = fe(/* @__PURE__ */ new Set()), ee = (e) => {
11338
11663
  x.has(e) ? x.delete(e) : x.add(e);
11339
11664
  };
11340
11665
  return (e, t) => {
@@ -11358,7 +11683,7 @@ var lm = { class: "pk-chatbot-step-detail" }, um = {
11358
11683
  type: e.body ? "button" : void 0,
11359
11684
  class: "pk-chatbot-step-detail__hit-header",
11360
11685
  "aria-expanded": e.body ? x.has(e.key) : void 0,
11361
- onClick: (t) => e.body ? C(e.key) : void 0
11686
+ onClick: (t) => e.body ? ee(e.key) : void 0
11362
11687
  }, {
11363
11688
  default: S(() => [
11364
11689
  J(r, {
@@ -11431,7 +11756,7 @@ var Dm = {
11431
11756
  }, Lm = {
11432
11757
  key: 2,
11433
11758
  class: "pk-chatbot-steps__step-payload pk-chatbot-steps__step-payload--error"
11434
- }, Rm = { class: "pk-chatbot-steps__step-payload-label" }, zm = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
11759
+ }, Rm = { class: "pk-chatbot-steps__step-payload-label" }, zm = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
11435
11760
  __name: "PkChatbotSteps",
11436
11761
  props: {
11437
11762
  message: { type: Object },
@@ -11559,7 +11884,7 @@ k(), U(), Y();
11559
11884
  var Bm = ["aria-label"], Vm = {
11560
11885
  class: "pk-chatbot-outline__bars",
11561
11886
  "aria-hidden": "true"
11562
- }, Hm = { class: "pk-chatbot-outline__panel" }, Um = ["aria-current", "onClick"], Wm = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
11887
+ }, Hm = { class: "pk-chatbot-outline__panel" }, Um = ["aria-current", "onClick"], Wm = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
11563
11888
  __name: "PkChatbotOutlineRail",
11564
11889
  props: {
11565
11890
  items: { type: Array },
@@ -11614,27 +11939,27 @@ function qm(e) {
11614
11939
  return;
11615
11940
  }
11616
11941
  e < g && s?.(), e > g && (u.value && (l.value = !1), c?.()), g = e;
11617
- }, C = () => {
11942
+ }, ee = () => {
11618
11943
  if (d || l.value || !t.value) return;
11619
11944
  let e = t.value, n = e.scrollHeight - e.clientHeight;
11620
11945
  n <= e.scrollTop || (u.value = !0, d = !0, e.scrollTop = n, requestAnimationFrame(() => {
11621
11946
  d = !1;
11622
11947
  }));
11623
- }, w = () => {
11624
- !f && t.value && (f = new MutationObserver(C), f.observe(t.value, {
11948
+ }, C = () => {
11949
+ !f && t.value && (f = new MutationObserver(ee), f.observe(t.value, {
11625
11950
  childList: !0,
11626
11951
  subtree: !0,
11627
11952
  characterData: !0
11628
11953
  }));
11629
- }, ee = () => {
11954
+ }, te = () => {
11630
11955
  f?.disconnect(), f = null;
11631
11956
  };
11632
11957
  F(n, (e, t) => {
11633
11958
  if (e === "streaming" || e === "submitted") {
11634
- w();
11959
+ C();
11635
11960
  return;
11636
11961
  }
11637
- (e !== "ready" || t !== "streaming") && ee();
11962
+ (e !== "ready" || t !== "streaming") && te();
11638
11963
  }), F(r, async () => {
11639
11964
  if (r() && i() !== "assistant") {
11640
11965
  E(), l.value = !1, d = !0;
@@ -11645,23 +11970,23 @@ function qm(e) {
11645
11970
  }
11646
11971
  }
11647
11972
  });
11648
- let T = null, te = () => {
11649
- t.value && (t.value.scrollHeight <= t.value.clientHeight || (t.value.scrollTop = t.value.scrollHeight, T && clearTimeout(T), T = setTimeout(E, 300)));
11973
+ let w = null, T = () => {
11974
+ t.value && (t.value.scrollHeight <= t.value.clientHeight || (t.value.scrollTop = t.value.scrollHeight, w && clearTimeout(w), w = setTimeout(E, 300)));
11650
11975
  }, E = () => {
11651
- p?.disconnect(), p = null, m?.disconnect(), m = null, T &&= (clearTimeout(T), null);
11976
+ p?.disconnect(), p = null, m?.disconnect(), m = null, w &&= (clearTimeout(w), null);
11652
11977
  };
11653
11978
  return ne(() => {
11654
11979
  if (!t.value) return;
11655
11980
  t.value.addEventListener("wheel", v, { passive: !0 }), t.value.addEventListener("touchstart", b, { passive: !0 }), t.value.addEventListener("touchmove", x, { passive: !0 });
11656
11981
  let e = n() === "submitted" || n() === "streaming";
11657
- e ? w() : (p = new ResizeObserver(te), p.observe(t.value), m = new MutationObserver(te), m.observe(t.value, {
11982
+ e ? C() : (p = new ResizeObserver(T), p.observe(t.value), m = new MutationObserver(T), m.observe(t.value, {
11658
11983
  childList: !0,
11659
11984
  subtree: !0
11660
11985
  }));
11661
11986
  let r = a?.() ?? t.value.firstElementChild;
11662
- r && (h = new ResizeObserver(C), h.observe(r)), e || te();
11987
+ r && (h = new ResizeObserver(ee), h.observe(r)), e || T();
11663
11988
  }), A(() => {
11664
- t.value?.removeEventListener("wheel", v), t.value?.removeEventListener("touchstart", b), t.value?.removeEventListener("touchmove", x), h?.disconnect(), h = null, ee(), E();
11989
+ t.value?.removeEventListener("wheel", v), t.value?.removeEventListener("touchstart", b), t.value?.removeEventListener("touchmove", x), h?.disconnect(), h = null, te(), E();
11665
11990
  }), {
11666
11991
  handleScroll: S,
11667
11992
  scrollToBottom: _,
@@ -11697,7 +12022,7 @@ var Jm = ["aria-busy"], Ym = {
11697
12022
  }, fh = { class: "truncate" }, ph = ["datetime"], mh = { class: "truncate" }, hh = {
11698
12023
  key: 3,
11699
12024
  class: "flex items-center gap-4 text-12 text-word-3"
11700
- }, gh = { class: "pk-chatbot-message__loading-info" }, _h = { class: "flex gap-8 items-center" }, vh = { class: "text-12" }, yh = ["title", "aria-label"], bh = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
12025
+ }, gh = { class: "pk-chatbot-message__loading-info" }, _h = { class: "flex gap-8 items-center" }, vh = { class: "text-12" }, yh = ["title", "aria-label"], bh = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
11701
12026
  __name: "PkChatbotMessages",
11702
12027
  props: {
11703
12028
  status: { type: String },
@@ -11761,7 +12086,7 @@ var Jm = ["aria-busy"], Ym = {
11761
12086
  messagesLength: () => n.messages?.length,
11762
12087
  lastMessageRole: () => n.messages?.[n.messages.length - 1]?.role,
11763
12088
  contentEl: () => u.value,
11764
- beforeNewMessageScroll: () => te(),
12089
+ beforeNewMessageScroll: () => T(),
11765
12090
  onScrollUp: () => r("scroll-up"),
11766
12091
  onScrollDown: () => r("scroll-down")
11767
12092
  }), g = () => {
@@ -11782,22 +12107,22 @@ var Jm = ["aria-busy"], Ym = {
11782
12107
  });
11783
12108
  let x = () => {
11784
12109
  f(), b();
11785
- }, w = (e) => {
12110
+ }, C = (e) => {
11786
12111
  let t = l.value, n = _.value.findIndex((t) => t.id === e), r = y()[n];
11787
12112
  t && r && (m.value = !0, t.scrollTo({
11788
12113
  top: t.scrollTop + r.getBoundingClientRect().top - t.getBoundingClientRect().top - Number.parseFloat(getComputedStyle(t).paddingTop),
11789
12114
  behavior: "smooth"
11790
12115
  }));
11791
- }, ee = G(0), T = G(!1), te = async () => {
12116
+ }, te = G(0), w = G(!1), T = async () => {
11792
12117
  let e = n.messages;
11793
- if (!e?.length || n.disableHeightAdjustment || e[e.length - 1].role !== "user" && n.status !== "submitted" && n.status !== "streaming" || (T.value = !1, await se(), !l.value)) return;
12118
+ if (!e?.length || n.disableHeightAdjustment || e[e.length - 1].role !== "user" && n.status !== "submitted" && n.status !== "streaming" || (w.value = !1, await se(), !l.value)) return;
11794
12119
  let { paddingTop: t, paddingBottom: r } = getComputedStyle(l.value), i = l.value.clientHeight - Number.parseFloat(t) - Number.parseFloat(r), a = u.value && Number.parseFloat(getComputedStyle(u.value).rowGap) || 0, o = y(), s = i - (o[o.length - 1]?.clientHeight ?? 0) - a;
11795
- i > 0 && (ee.value = Math.max(s, 0)), await se();
12120
+ i > 0 && (te.value = Math.max(s, 0)), await se();
11796
12121
  };
11797
- F(() => [n.messages?.length, n.messages?.[n.messages.length - 1]?.id], () => te()), ne(() => {
11798
- (n.status === "submitted" || n.status === "streaming" || n.awaitingSpokenAnswer) && te();
12122
+ F(() => [n.messages?.length, n.messages?.[n.messages.length - 1]?.id], () => T()), ne(() => {
12123
+ (n.status === "submitted" || n.status === "streaming" || n.awaitingSpokenAnswer) && T();
11799
12124
  }), F(() => n.status, (e) => {
11800
- (e === "ready" || e === "error") && (T.value = !0, ee.value = 0);
12125
+ (e === "ready" || e === "error") && (w.value = !0, te.value = 0);
11801
12126
  });
11802
12127
  let E = (e) => n.revisedAnswers?.some((t) => t.messageId === e), ie = (e) => n.messageFeedbacks?.find((t) => t.messageId === e), oe = (e, t) => !n.readonlyFeedback && Se(e, t), k = (e) => n.readonlyFeedback ? ie(e) : void 0, A = (e) => k(e)?.vote, j = (e) => {
11803
12128
  let t = k(e);
@@ -11861,7 +12186,7 @@ var Jm = ["aria-busy"], Ym = {
11861
12186
  return D(), q("div", {
11862
12187
  ref_key: "scrollEl",
11863
12188
  ref: l,
11864
- class: N(["pk-chatbot-messages", { "pk-chatbot-messages--settling": T.value }]),
12189
+ class: N(["pk-chatbot-messages", { "pk-chatbot-messages--settling": w.value }]),
11865
12190
  role: "log",
11866
12191
  "aria-live": "polite",
11867
12192
  "aria-relevant": "additions text",
@@ -11875,7 +12200,7 @@ var Jm = ["aria-busy"], Ym = {
11875
12200
  e.showScrollToBottom && _.value.length > 1 ? (D(), q("div", Ym, [J(Wm, {
11876
12201
  items: _.value,
11877
12202
  "active-id": v.value,
11878
- onSelect: w
12203
+ onSelect: C
11879
12204
  }, null, 8, ["items", "active-id"])])) : I("", !0),
11880
12205
  H("div", {
11881
12206
  ref_key: "wrapperEl",
@@ -11885,7 +12210,7 @@ var Jm = ["aria-busy"], Ym = {
11885
12210
  (D(!0), q(B, null, Ne(e.messages, (l, u) => (D(), q(B, { key: l.id }, [Y(l) && Pe(u) ? (D(), q("div", Xm, [H("span", Zm, P(R(a)(Pe(u), "short")), 1)])) : I("", !0), l.parts.length || be(u) && me.value && Ae(l) ? (D(), q("div", {
11886
12211
  key: 1,
11887
12212
  class: N(["pk-chatbot-message", [`pk-chatbot-message--${l.role}`, { "pk-chatbot-message--loading": me.value && be(u) && Ae(l) }]]),
11888
- style: je({ minHeight: be(u) && Ae(l) && !he.value ? `${ee.value}px` : void 0 })
12213
+ style: je({ minHeight: be(u) && Ae(l) && !he.value ? `${te.value}px` : void 0 })
11889
12214
  }, [
11890
12215
  J(K, {
11891
12216
  appear: "",
@@ -11910,7 +12235,7 @@ var Jm = ["aria-busy"], Ym = {
11910
12235
  appear: "",
11911
12236
  name: "pk-chatbot-part"
11912
12237
  }, {
11913
- default: S(() => [H("div", Qm, [C(t.$slots, "text", O({ ref_for: !0 }, {
12238
+ default: S(() => [H("div", Qm, [ee(t.$slots, "text", O({ ref_for: !0 }, {
11914
12239
  message: l,
11915
12240
  part: n,
11916
12241
  index: u,
@@ -11977,7 +12302,7 @@ var Jm = ["aria-busy"], Ym = {
11977
12302
  default: S(() => [!R(s)[n.type] && R(Wp)[R(Ge)(n)] ? (D(), V(re(R(Wp)[R(Ge)(n)]), {
11978
12303
  key: `component-${i}-${R(Ye)(n)}`,
11979
12304
  part: n
11980
- }, null, 8, ["part"])) : C(t.$slots, n.type, O({ ref_for: !0 }, {
12305
+ }, null, 8, ["part"])) : ee(t.$slots, n.type, O({ ref_for: !0 }, {
11981
12306
  message: l,
11982
12307
  part: n,
11983
12308
  index: u,
@@ -12204,7 +12529,7 @@ var Jm = ["aria-busy"], Ym = {
12204
12529
  default: S(() => [U.value ? (D(), q("div", {
12205
12530
  key: 0,
12206
12531
  class: "pk-chatbot-message pk-chatbot-message--assistant pk-chatbot-message--loading",
12207
- style: je({ minHeight: ge.value ? `${ee.value}px` : void 0 })
12532
+ style: je({ minHeight: ge.value ? `${te.value}px` : void 0 })
12208
12533
  }, [H("div", gh, [H("div", _h, [J(r, {
12209
12534
  name: "loading-loop",
12210
12535
  class: "shrink-0"
@@ -12226,7 +12551,7 @@ var Jm = ["aria-busy"], Ym = {
12226
12551
  de.value?.role === "user" && !ge.value || he.value ? (D(), q("div", {
12227
12552
  key: 0,
12228
12553
  class: "pk-chatbot-messages__spacer",
12229
- style: je({ minHeight: `${ee.value}px` })
12554
+ style: je({ minHeight: `${te.value}px` })
12230
12555
  }, null, 4)) : I("", !0)
12231
12556
  ], 512),
12232
12557
  J(K, { name: "pk-chatbot-messages-fab" }, {
@@ -12321,7 +12646,7 @@ k(), Y();
12321
12646
  var Eh = ["type"], Dh = {
12322
12647
  key: 0,
12323
12648
  class: "pk-chat-button__label"
12324
- }, Oh = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
12649
+ }, Oh = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
12325
12650
  __name: "PkChatButton",
12326
12651
  props: {
12327
12652
  icon: { type: String },
@@ -12371,7 +12696,7 @@ var kh = { class: "pk-chatbot-input" }, Ah = {
12371
12696
  "aria-describedby",
12372
12697
  "aria-invalid",
12373
12698
  "placeholder"
12374
- ], zh = ["id"], Bh = { class: "opacity-60" }, Vh = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
12699
+ ], zh = ["id"], Bh = { class: "opacity-60" }, Vh = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
12375
12700
  __name: "PkChatbotInput",
12376
12701
  props: /*@__PURE__*/ ge({
12377
12702
  placeholder: { type: String },
@@ -12413,7 +12738,7 @@ var kh = { class: "pk-chatbot-input" }, Ah = {
12413
12738
  o.value && Th.update(o.value);
12414
12739
  }));
12415
12740
  });
12416
- let g = W(() => a.status === "streaming"), _ = W(() => a.status === "submitted"), v = W(() => g.value || _.value), y = E(), b = W(() => u.value.length), x = W(() => a.maxMessageLength !== void 0 && b.value > a.maxMessageLength), w = W(() => r.value.some((e) => e.state === "uploading")), T = W(() => v.value || w.value || x.value ? !1 : u.value.trim().length > 0), te = "capture" in document.createElement("input"), re = W(() => a.fileUpload?.allowedMimeTypes?.join(",") ?? ""), ie = W(() => (a.fileUpload?.allowedMimeTypes ?? []).filter((e) => e.startsWith("image/")).join(",")), k = W(() => te && ie.value.length > 0), j = () => {
12741
+ let g = W(() => a.status === "streaming"), _ = W(() => a.status === "submitted"), v = W(() => g.value || _.value), y = E(), b = W(() => u.value.length), x = W(() => a.maxMessageLength !== void 0 && b.value > a.maxMessageLength), C = W(() => r.value.some((e) => e.state === "uploading")), w = W(() => v.value || C.value || x.value ? !1 : u.value.trim().length > 0), T = "capture" in document.createElement("input"), re = W(() => a.fileUpload?.allowedMimeTypes?.join(",") ?? ""), ie = W(() => (a.fileUpload?.allowedMimeTypes ?? []).filter((e) => e.startsWith("image/")).join(",")), k = W(() => T && ie.value.length > 0), j = () => {
12417
12742
  s.value?.click();
12418
12743
  }, M = () => {
12419
12744
  c.value?.click();
@@ -12446,7 +12771,7 @@ var kh = { class: "pk-chatbot-input" }, Ah = {
12446
12771
  }, U = () => {
12447
12772
  he(), i("stop-generation");
12448
12773
  }, ge = () => {
12449
- T.value && (he(), p(), i("submit"), u.value = "", n.value = "", se(() => {
12774
+ w.value && (he(), p(), i("submit"), u.value = "", n.value = "", se(() => {
12450
12775
  o.value && (o.value.value = "", Th.update(o.value));
12451
12776
  }));
12452
12777
  }, _e = (e) => {
@@ -12514,8 +12839,8 @@ var kh = { class: "pk-chatbot-input" }, Ah = {
12514
12839
  "onRemove"
12515
12840
  ]))), 128))])) : I("", !0),
12516
12841
  H("div", Nh, [
12517
- C(t.$slots, "prepend"),
12518
- e.fileUpload && e.fileUpload.enabled && (k.value || t.$slots["additional-actions"]) ? (D(), V(p, ee(O({ key: 0 }, {
12842
+ ee(t.$slots, "prepend"),
12843
+ e.fileUpload && e.fileUpload.enabled && (k.value || t.$slots["additional-actions"]) ? (D(), V(p, te(O({ key: 0 }, {
12519
12844
  placement: "top-start",
12520
12845
  modifiers: "menu",
12521
12846
  flip: !0,
@@ -12553,7 +12878,7 @@ var kh = { class: "pk-chatbot-input" }, Ah = {
12553
12878
  }), L(" " + P(t.$t("action.attachFile")), 1)]),
12554
12879
  _: 1
12555
12880
  }, 8, ["disabled"]),
12556
- C(t.$slots, "additional-actions")
12881
+ ee(t.$slots, "additional-actions")
12557
12882
  ]),
12558
12883
  _: 3
12559
12884
  }, 16)) : e.fileUpload && e.fileUpload.enabled ? (D(), V(Oh, {
@@ -12622,7 +12947,7 @@ var kh = { class: "pk-chatbot-input" }, Ah = {
12622
12947
  modifiers: "primary",
12623
12948
  icon: _.value ? "loading-loop" : "ri:arrow-up-line",
12624
12949
  title: t.$t("action.submit"),
12625
- disabled: !T.value
12950
+ disabled: !w.value
12626
12951
  }, null, 8, [
12627
12952
  "icon",
12628
12953
  "title",
@@ -12636,7 +12961,7 @@ var kh = { class: "pk-chatbot-input" }, Ah = {
12636
12961
  //#endregion
12637
12962
  //#region ../../packages/components/src/chat/PkChatbotEmptyState.vue?vue&type=script&setup=true&lang.ts
12638
12963
  k();
12639
- var Hh = { class: "pk-chatbot-empty-state" }, Uh = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
12964
+ var Hh = { class: "pk-chatbot-empty-state" }, Uh = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
12640
12965
  __name: "PkChatbotEmptyState",
12641
12966
  props: {
12642
12967
  greeting: { type: String },
@@ -12659,7 +12984,7 @@ var Hh = { class: "pk-chatbot-empty-state" }, Uh = /*#__PURE__*/ Qt(/* @__PURE__
12659
12984
  }
12660
12985
  }), [["styles", [".pk-chatbot-empty-state{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);text-align:center;flex-direction:column;display:flex;position:relative}.pk-chatbot--phone .pk-chatbot-empty-state{padding-inline:var(--spacing-56)}.pk-chatbot-empty-state__avatar{width:var(--spacing-64);height:var(--spacing-64);font-size:var(--text-20);border-radius:var(--rounded-full)}.pk-chatbot:not(.pk-chatbot--tight) .pk-chatbot-empty-state__avatar{display:none}.pk-chatbot-empty-state__greeting{font-size:var(--text-28);font-weight:var(--font-light);color:var(--color-word-1);text-wrap:balance}.pk-chatbot-empty-state__greeting :first-child{margin-top:0}.pk-chatbot-empty-state__greeting :last-child{margin-bottom:0}.pk-chatbot-empty-state__avatar,.pk-chatbot-empty-state__greeting{animation:pk-chatbot-greeting-enter .6s var(--ease-out) both}@media (prefers-reduced-motion:reduce){.pk-chatbot-empty-state__avatar,.pk-chatbot-empty-state__greeting{animation:none}}@keyframes pk-chatbot-greeting-enter{0%{opacity:0;transform:translateY(var(--spacing-16))}}"]]]);
12661
12986
  k(), Y();
12662
- var Wh = .18, Gh = .35, Kh = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
12987
+ var Wh = .18, Gh = .35, Kh = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
12663
12988
  __name: "PkVoiceOrb",
12664
12989
  props: {
12665
12990
  sample: { type: Function },
@@ -12731,7 +13056,7 @@ var qh = {
12731
13056
  key: 0,
12732
13057
  class: "pk-voice-session__live-dot",
12733
13058
  "aria-hidden": "true"
12734
- }, Xh = ["title"], Zh = ["title"], Qh = { class: "pk-voice-session__actions" }, $h = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
13059
+ }, Xh = ["title"], Zh = ["title"], Qh = { class: "pk-voice-session__actions" }, $h = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
12735
13060
  __name: "PkVoiceSession",
12736
13061
  props: {
12737
13062
  state: { type: String },
@@ -12957,7 +13282,7 @@ var tg = { class: "pk-chatbot-view-chat__input-stage" }, ng = {
12957
13282
  }, ag = {
12958
13283
  key: 0,
12959
13284
  class: "pk-chatbot-view-chat__drop-overlay"
12960
- }, og = 3e3, sg = 6e4, cg = 3e5, lg = 6e5, ug = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
13285
+ }, og = 3e3, sg = 6e4, cg = 3e5, lg = 6e5, ug = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
12961
13286
  __name: "PkChatbotViewChat",
12962
13287
  props: {
12963
13288
  agentId: { type: String },
@@ -12966,7 +13291,7 @@ var tg = { class: "pk-chatbot-view-chat__input-stage" }, ng = {
12966
13291
  },
12967
13292
  emits: ["show-info", "revise"],
12968
13293
  setup(e, { emit: t }) {
12969
- let n = M(() => import("./_chunks/PkToolShowForm-KW8MOL-j.js")), r = M(() => import("./_chunks/PkToolShowContactForm-BO3JQfts.js")), i = M(() => import("./_chunks/PkToolShowSuggestedReply-Dl4x_nEJ.js")), a = M(() => import("./_chunks/PkToolShowSources-Sc1W6WHe.js")), o = M(() => import("./_chunks/PkToolRequestGeolocation-OF1PWhMw.js")), s = M(() => import("./_chunks/PkToolRequestOAuthConnection-ChGMAKV7.js")), c = M(() => import("./_chunks/PkToolShowLocation-D72rWN1o.js")), l = M(() => import("./_chunks/PkToolShowDiagram-CWsqmvB2.js")), u = e, d = t, f = qu(u.agentId), { agentInterface: p, agentFileUpload: m, agentVoice: h, actions: g, revisedAnswers: _, messages: v, chat: y, messageFeedbacks: b, feedbackDialogMessage: x, isFeedbackSubmitting: C, isFeedbackSubmitted: w, feedbackSubmitError: ee, isLeadSubmitted: T, isLoadingSubmitLead: te, submitLeadError: ne, input: E, inputMessagePlaceholder: re, isConversationBlocked: ie, baseUrl: oe, pendingAttachments: O, isAttachmentLimitReached: se, fileLimitError: k, apiClient: j, isDark: ce } = Nn(f), { handleSubmit: le, stopGeneration: ue, regenerate: L, onUpvote: de, onDownvote: B, onFeedback: fe, onFeedbackSubmit: pe, onLeadSubmit: me, startNewChat: he, addToolOutput: U, addToolApprovalResponse: ge, handleFileSelect: _e, clearFileLimitError: ve, refreshMessages: ye, appendMessage: be } = f, { t: xe } = Fe({ useScope: "global" }), Se = W(() => {
13294
+ let n = M(() => import("./_chunks/PkToolShowForm-KW8MOL-j.js")), r = M(() => import("./_chunks/PkToolShowContactForm-BO3JQfts.js")), i = M(() => import("./_chunks/PkToolShowSuggestedReply-Dl4x_nEJ.js")), a = M(() => import("./_chunks/PkToolShowSources-Bfx-Th_j.js")), o = M(() => import("./_chunks/PkToolRequestGeolocation-OF1PWhMw.js")), s = M(() => import("./_chunks/PkToolRequestOAuthConnection-ChGMAKV7.js")), c = M(() => import("./_chunks/PkToolShowLocation-D72rWN1o.js")), l = M(() => import("./_chunks/PkToolShowDiagram-CWsqmvB2.js")), u = e, d = t, f = qu(u.agentId), { agentInterface: p, agentFileUpload: m, agentVoice: h, actions: g, revisedAnswers: _, messages: v, chat: y, messageFeedbacks: b, feedbackDialogMessage: x, isFeedbackSubmitting: ee, isFeedbackSubmitted: C, feedbackSubmitError: te, isLeadSubmitted: w, isLoadingSubmitLead: T, submitLeadError: ne, input: E, inputMessagePlaceholder: re, isConversationBlocked: ie, baseUrl: oe, pendingAttachments: O, isAttachmentLimitReached: se, fileLimitError: k, apiClient: j, isDark: ce } = Nn(f), { handleSubmit: le, stopGeneration: ue, regenerate: L, onUpvote: de, onDownvote: B, onFeedback: fe, onFeedbackSubmit: pe, onLeadSubmit: me, startNewChat: he, addToolOutput: U, addToolApprovalResponse: ge, handleFileSelect: _e, clearFileLimitError: ve, refreshMessages: ye, appendMessage: be } = f, { t: xe } = Fe({ useScope: "global" }), Se = W(() => {
12970
13295
  let e = k.value;
12971
13296
  if (e) return e.reason === "per-chat" ? xe("message.fileLimitPerChat", { max: e.max }) : xe("message.fileLimitPerMessage", { max: e.max });
12972
13297
  }), Ce = qt(() => p.value?.dismissableNotice), we = W(() => v.value.some((e) => e.role === "user")), Te = W(() => u.modifier === "fullscreen" && !we.value), Ee = ad(p, () => u.userName), De = ae("chatViewEl"), Oe = async (e) => (await j.value.expandSourceContext(u.agentId, e.documentId, e.chunkIndex)).content, ke = async (e) => {
@@ -13133,9 +13458,9 @@ var tg = { class: "pk-chatbot-view-chat__input-stage" }, ng = {
13133
13458
  actions: R(g),
13134
13459
  "message-feedbacks": R(b),
13135
13460
  "feedback-message-id": R(x)?.id,
13136
- "feedback-loading": R(C),
13137
- "feedback-submitted": R(w),
13138
- "feedback-error": R(ee),
13461
+ "feedback-loading": R(ee),
13462
+ "feedback-submitted": R(C),
13463
+ "feedback-error": R(te),
13139
13464
  "show-extended-steps": R(p)?.showExtendedSteps,
13140
13465
  "awaiting-spoken-answer": X.value,
13141
13466
  "is-dark": R(ce),
@@ -13156,8 +13481,8 @@ var tg = { class: "pk-chatbot-view-chat__input-stage" }, ng = {
13156
13481
  "tool-showContactForm": S(({ part: e }) => [J(R(r), {
13157
13482
  part: e,
13158
13483
  readonly: !R(oe),
13159
- submitted: R(T),
13160
- loading: R(te),
13484
+ submitted: R(w),
13485
+ loading: R(T),
13161
13486
  error: R(ne),
13162
13487
  "privacy-policy-notice": R(p)?.privacyPolicyNotice,
13163
13488
  onSubmit: R(me)
@@ -13371,7 +13696,7 @@ var dg = { class: "flex flex-col flex-1 min-h-0 relative" }, fg = {
13371
13696
  key: 3,
13372
13697
  class: "absolute bottom-0 left-0 right-0 flex flex-col items-center gap-4 px-16 pb-16 pt-32 pointer-events-none",
13373
13698
  style: { background: "linear-gradient(to top, var(--color-surface) 55%, transparent)" }
13374
- }, kg = /* @__PURE__ */ w({
13699
+ }, kg = /* @__PURE__ */ C({
13375
13700
  __name: "PkChatbotViewConversations",
13376
13701
  props: { agentId: { type: String } },
13377
13702
  setup(e) {
@@ -13382,19 +13707,19 @@ var dg = { class: "flex flex-col flex-1 min-h-0 relative" }, fg = {
13382
13707
  d.value || (o.value = e, s("chat"));
13383
13708
  }, y = (e) => o.value === e.id, b = (e, t) => kt(ut(e.filter((e) => e.role === t).slice(-1)[0]) || ""), x = (e) => {
13384
13709
  p(e, b(e.messages, "assistant"));
13385
- }, { openDialogConfirm: C } = rd(), w = _e(Yf, void 0), ee = W(() => !!w?.eraseConversations && !(w.isExternalAuth?.value ?? !1)), T = G(!1), te = async () => {
13386
- let e = w?.eraseConversations;
13387
- if (e && ee.value && await C({
13710
+ }, { openDialogConfirm: ee } = rd(), C = _e(Yf, void 0), te = W(() => !!C?.eraseConversations && !(C.isExternalAuth?.value ?? !1)), w = G(!1), T = async () => {
13711
+ let e = C?.eraseConversations;
13712
+ if (e && te.value && await ee({
13388
13713
  title: n("confirmTitle.deleteMyConversations"),
13389
13714
  questionLabel: n("message.deleteMyConversationsConfirm")
13390
13715
  })) {
13391
- T.value = !0;
13716
+ w.value = !0;
13392
13717
  try {
13393
13718
  await e(), i.value = [], c();
13394
13719
  } catch {
13395
13720
  r.loadConversations(t.agentId);
13396
13721
  } finally {
13397
- T.value = !1;
13722
+ w.value = !1;
13398
13723
  }
13399
13724
  }
13400
13725
  };
@@ -13484,15 +13809,15 @@ var dg = { class: "flex flex-col flex-1 min-h-0 relative" }, fg = {
13484
13809
  icon: "ri:add-line",
13485
13810
  label: R(n)("action.startNewChat"),
13486
13811
  onClick: t[3] ||= De((e) => R(c)(), ["stop"])
13487
- }, null, 8, ["label"]), ee.value ? (D(), V(o, {
13812
+ }, null, 8, ["label"]), te.value ? (D(), V(o, {
13488
13813
  key: 0,
13489
13814
  class: "text-12 pointer-events-auto",
13490
13815
  modifiers: "action-quiet-danger",
13491
13816
  icon: "ri:delete-bin-line",
13492
- loading: T.value,
13493
- disabled: T.value,
13817
+ loading: w.value,
13818
+ disabled: w.value,
13494
13819
  label: R(n)("action.deleteMyConversations"),
13495
- onClick: t[4] ||= De((e) => te(), ["stop"])
13820
+ onClick: t[4] ||= De((e) => T(), ["stop"])
13496
13821
  }, null, 8, [
13497
13822
  "loading",
13498
13823
  "disabled",
@@ -13511,7 +13836,7 @@ var Ag = { class: "flex flex-col flex-1 min-h-0 relative" }, jg = {
13511
13836
  }, Fg = { class: "w-64 h-64 rounded-full bg-surface-1 border border-surface-3 flex items-center justify-center" }, Ig = { class: "text-14 text-word-3 leading-relaxed" }, Lg = {
13512
13837
  key: 2,
13513
13838
  class: "pk-chatbot-files u-pick-list__list u-pick-list__list--fill overflow-y-auto light-scrollbar"
13514
- }, Rg = ["title", "onClick"], zg = { class: "pk-chatbot-files__icon" }, Bg = ["src", "onError"], Vg = { class: "flex flex-col min-w-0 flex-1" }, Hg = { class: "u-pick-list__label" }, Ug = { class: "text-12 text-word-3" }, Wg = { class: "u-pick-list__actions pk-chatbot-files__actions" }, Gg = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
13839
+ }, Rg = ["title", "onClick"], zg = { class: "pk-chatbot-files__icon" }, Bg = ["src", "onError"], Vg = { class: "flex flex-col min-w-0 flex-1" }, Hg = { class: "u-pick-list__label" }, Ug = { class: "text-12 text-word-3" }, Wg = { class: "u-pick-list__actions pk-chatbot-files__actions" }, Gg = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
13515
13840
  __name: "PkChatbotViewFiles",
13516
13841
  props: { agentId: { type: String } },
13517
13842
  setup(e) {
@@ -13589,7 +13914,7 @@ var Kg = { class: "flex flex-col flex-1 min-h-0 overflow-y-auto" }, qg = { class
13589
13914
  }, Zg = { class: "flex flex-col gap-sm p-md flex-1" }, Qg = ["href"], $g = { class: "w-40 h-40 rounded-lg bg-surface-2 border border-surface-3 flex items-center justify-center shrink-0" }, e_ = { class: "flex flex-col flex-1 min-w-0 gap-1" }, t_ = { class: "text-14 font-medium text-word-1 leading-tight" }, n_ = { class: "text-12 text-word-3 leading-tight" }, r_ = {
13590
13915
  key: 0,
13591
13916
  class: "px-md py-sm"
13592
- }, i_ = /* @__PURE__ */ w({
13917
+ }, i_ = /* @__PURE__ */ C({
13593
13918
  __name: "PkChatbotViewProfile",
13594
13919
  props: { agentId: { type: String } },
13595
13920
  setup(e) {
@@ -13649,7 +13974,7 @@ var Kg = { class: "flex flex-col flex-1 min-h-0 overflow-y-auto" }, qg = { class
13649
13974
  "disabled",
13650
13975
  "label"
13651
13976
  ])])),
13652
- C(e.$slots, "default")
13977
+ ee(e.$slots, "default")
13653
13978
  ]);
13654
13979
  };
13655
13980
  }
@@ -13661,7 +13986,7 @@ var a_ = { class: "pk-chatbot__header-start" }, o_ = ["title"], s_ = { key: 1 },
13661
13986
  }, p_ = {
13662
13987
  key: 7,
13663
13988
  class: "pk-chatbot__footer"
13664
- }, m_ = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
13989
+ }, m_ = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
13665
13990
  __name: "PkChatbot",
13666
13991
  props: /*@__PURE__*/ ge({
13667
13992
  baseUrl: { type: String },
@@ -13702,8 +14027,8 @@ var a_ = { class: "pk-chatbot__header-start" }, o_ = ["title"], s_ = { key: 1 },
13702
14027
  setup(e, { expose: t, emit: n }) {
13703
14028
  let r = Ce(), { t: i } = Fe({ useScope: "global" }), a = e, o = n, s = oe(e, "chatId"), c = qu(a.agentId);
13704
14029
  Xt((e) => c.apiClient.resolveShortUrls(e));
13705
- let { messages: l, chat: u, localChatId: d, activeView: f, chatError: p, isDark: m } = Nn(c), h = ue(c, "agentId"), { startNewChat: g, stopGeneration: _, regenerate: v, navigate: y, sendMessage: b } = c, x = _e(Yf, void 0), w = W(() => x?.canManageProfile.value ?? !1), T = W(() => !w.value && (x?.canSignIn?.value ?? !1) && r["view-auth"] !== void 0);
13706
- F(w, (e) => {
14030
+ let { messages: l, chat: u, localChatId: d, activeView: f, chatError: p, isDark: m } = Nn(c), h = ue(c, "agentId"), { startNewChat: g, stopGeneration: _, regenerate: v, navigate: y, sendMessage: b } = c, x = _e(Yf, void 0), C = W(() => x?.canManageProfile.value ?? !1), w = W(() => !C.value && (x?.canSignIn?.value ?? !1) && r["view-auth"] !== void 0);
14031
+ F(C, (e) => {
13707
14032
  e && f.value === "auth" && y("chat");
13708
14033
  }), le(() => {
13709
14034
  c.baseUrl = a.baseUrl, c.basePath = a.basePath, c.name = a.name, c.agentType = a.agentType, c.userId = a.userId, c.agentInterface = a.agentInterface, c.agentModel = a.agentModel, c.agentTools = a.agentTools, c.headers = a.headers, c.revisedAnswers = a.revisedAnswers, c.model = a.model, c.actionsInput = a.actions, c.agentFileUpload = a.agentFileUpload, c.agentVoice = a.voice, c.fallbackModels = a.fallbackModels, c.gatewayOptions = a.gatewayOptions, c.externalContext = a.externalContext, c.systemTheme = a.systemTheme, c.hideWelcomeMessage = a.modifier === "fullscreen";
@@ -13717,7 +14042,7 @@ var a_ = { class: "pk-chatbot__header-start" }, o_ = ["title"], s_ = { key: 1 },
13717
14042
  o("error", t);
13718
14043
  } catch {}
13719
14044
  });
13720
- let te = W(() => a.modifier === "fullscreen"), ne = W(() => a.modifier === "panel"), E = ae("chatbotEl"), { width: re } = Lt(E), ie = W(() => re.value > 0 && re.value < 576), se = W(() => re.value > 0 && re.value < 640), k = W(() => re.value >= 848), A = W(() => a.agentType === "reasoning"), j = W(() => a.agentInterface?.useColorsForAgentHeader), M = W(() => !ne.value || w.value || T.value || !!a.userFilesEnabled && !!d.value), de = W(() => ["theme", `theme--${m.value ? "dark" : "light"}`]), z = W(() => a.agentInterface?.mainColor), fe = W(() => dt(a.agentInterface?.textColor, z.value)), pe = qt(() => a.agentInterface?.footerMessage), me = W(() => f.value === "conversations" ? i("label.conversations") : f.value === "profile" ? i("label.profile") : f.value === "auth" ? i("label.authentication") : f.value === "files" ? i("userFiles.chatFilesTitle") : a.name), he = W(() => u.value.status === "ready"), U = W(() => l.value?.[l.value.length - 1]);
14045
+ let T = W(() => a.modifier === "fullscreen"), ne = W(() => a.modifier === "panel"), E = ae("chatbotEl"), { width: re } = Lt(E), ie = W(() => re.value > 0 && re.value < 576), se = W(() => re.value > 0 && re.value < 640), k = W(() => re.value >= 848), A = W(() => a.agentType === "reasoning"), j = W(() => a.agentInterface?.useColorsForAgentHeader), M = W(() => !ne.value || C.value || w.value || !!a.userFilesEnabled && !!d.value), de = W(() => ["theme", `theme--${m.value ? "dark" : "light"}`]), z = W(() => a.agentInterface?.mainColor), fe = W(() => dt(a.agentInterface?.textColor, z.value)), pe = qt(() => a.agentInterface?.footerMessage), me = W(() => f.value === "conversations" ? i("label.conversations") : f.value === "profile" ? i("label.profile") : f.value === "auth" ? i("label.authentication") : f.value === "files" ? i("userFiles.chatFilesTitle") : a.name), he = W(() => u.value.status === "ready"), U = W(() => l.value?.[l.value.length - 1]);
13721
14046
  return t({
13722
14047
  startNewChat: g,
13723
14048
  regenerate: v,
@@ -13738,14 +14063,14 @@ var a_ = { class: "pk-chatbot__header-start" }, o_ = ["title"], s_ = { key: 1 },
13738
14063
  ref_key: "chatbotEl",
13739
14064
  ref: E,
13740
14065
  class: N(["pk-chatbot", [de.value, {
13741
- "pk-chatbot--fullscreen": te.value,
14066
+ "pk-chatbot--fullscreen": T.value,
13742
14067
  "pk-chatbot--panel": ne.value,
13743
14068
  "pk-chatbot--phone": ie.value,
13744
14069
  "pk-chatbot--tight": se.value,
13745
14070
  "pk-chatbot--wide": k.value
13746
14071
  }]])
13747
14072
  }, [
13748
- te.value ? I("", !0) : (D(), q("div", {
14073
+ T.value ? I("", !0) : (D(), q("div", {
13749
14074
  key: 0,
13750
14075
  class: "pk-chatbot__header",
13751
14076
  style: je(j.value ? { backgroundColor: z.value } : void 0)
@@ -13772,7 +14097,7 @@ var a_ = { class: "pk-chatbot__header-start" }, o_ = ["title"], s_ = { key: 1 },
13772
14097
  modifiers: "compact"
13773
14098
  }, {
13774
14099
  default: S(() => [
13775
- C(t.$slots, "header-actions", ee(ce({
14100
+ ee(t.$slots, "header-actions", te(ce({
13776
14101
  mainColor: z.value,
13777
14102
  useColorsForAgentHeader: j.value,
13778
14103
  contrastColor: fe.value,
@@ -13801,7 +14126,7 @@ var a_ = { class: "pk-chatbot__header-start" }, o_ = ["title"], s_ = { key: 1 },
13801
14126
  "disabled",
13802
14127
  "title"
13803
14128
  ]))], 64)) : I("", !0),
13804
- M.value ? (D(), V(l, ee(O({ key: 1 }, {
14129
+ M.value ? (D(), V(l, te(O({ key: 1 }, {
13805
14130
  placement: "bottom-end",
13806
14131
  modifiers: "menu",
13807
14132
  flip: !0,
@@ -13823,20 +14148,20 @@ var a_ = { class: "pk-chatbot__header-start" }, o_ = ["title"], s_ = { key: 1 },
13823
14148
  default: S(() => [J(s, { name: "ri:history-line" }), L(" " + P(R(i)("action.viewRecentChats")), 1)]),
13824
14149
  _: 1
13825
14150
  })) : I("", !0),
13826
- (w.value || e.userFilesEnabled) && R(d) ? (D(), V(c, {
14151
+ (C.value || e.userFilesEnabled) && R(d) ? (D(), V(c, {
13827
14152
  key: 2,
13828
14153
  onClick: n[5] ||= (e) => R(y)("files")
13829
14154
  }, {
13830
14155
  default: S(() => [J(s, { name: "ri:attachment-2" }), L(" " + P(R(i)("userFiles.chatFilesTitle")), 1)]),
13831
14156
  _: 1
13832
14157
  })) : I("", !0),
13833
- w.value ? (D(), V(c, {
14158
+ C.value ? (D(), V(c, {
13834
14159
  key: 3,
13835
14160
  onClick: n[6] ||= (e) => R(y)("profile")
13836
14161
  }, {
13837
14162
  default: S(() => [J(s, { name: "ri:user-line" }), L(" " + P(R(i)("label.profile")), 1)]),
13838
14163
  _: 1
13839
- })) : T.value ? (D(), V(c, {
14164
+ })) : w.value ? (D(), V(c, {
13840
14165
  key: 4,
13841
14166
  onClick: n[7] ||= (e) => R(y)("auth")
13842
14167
  }, {
@@ -13844,7 +14169,7 @@ var a_ = { class: "pk-chatbot__header-start" }, o_ = ["title"], s_ = { key: 1 },
13844
14169
  _: 1
13845
14170
  })) : I("", !0)
13846
14171
  ]),
13847
- default: S(() => [J(a, ee(ce({
14172
+ default: S(() => [J(a, te(ce({
13848
14173
  modifiers: j.value ? `action-quiet-${fe.value}` : "action-quiet",
13849
14174
  icon: "ri:more-2-fill",
13850
14175
  disabled: !he.value,
@@ -13852,7 +14177,7 @@ var a_ = { class: "pk-chatbot__header-start" }, o_ = ["title"], s_ = { key: 1 },
13852
14177
  })), null, 16)]),
13853
14178
  _: 1
13854
14179
  }, 16)) : I("", !0),
13855
- C(t.$slots, "actions", ee(ce({
14180
+ ee(t.$slots, "actions", te(ce({
13856
14181
  mainColor: z.value,
13857
14182
  useColorsForAgentHeader: j.value,
13858
14183
  contrastColor: fe.value,
@@ -13878,7 +14203,7 @@ var a_ = { class: "pk-chatbot__header-start" }, o_ = ["title"], s_ = { key: 1 },
13878
14203
  onRevise: n[9] ||= (e) => o("revise", e)
13879
14204
  }, Me({ _: 2 }, [Ne(Object.keys(R(r)), (e) => ({
13880
14205
  name: e,
13881
- fn: S((n) => [C(t.$slots, e, ee(ce(n)))])
14206
+ fn: S((n) => [ee(t.$slots, e, te(ce(n)))])
13882
14207
  }))]), 1032, [
13883
14208
  "agent-id",
13884
14209
  "modifier",
@@ -13888,16 +14213,16 @@ var a_ = { class: "pk-chatbot__header-start" }, o_ = ["title"], s_ = { key: 1 },
13888
14213
  "agent-id": e.agentId
13889
14214
  }, Me({ _: 2 }, [Ne(Object.keys(R(r)), (e) => ({
13890
14215
  name: e,
13891
- fn: S((n) => [C(t.$slots, e, ee(ce(n)))])
14216
+ fn: S((n) => [ee(t.$slots, e, te(ce(n)))])
13892
14217
  }))]), 1032, ["agent-id"])) : R(f) === "files" ? (D(), V(Gg, {
13893
14218
  key: 4,
13894
14219
  "agent-id": e.agentId
13895
- }, null, 8, ["agent-id"])) : R(f) === "auth" ? (D(), q("div", f_, [C(t.$slots, "view-auth")])) : (D(), V(i_, {
14220
+ }, null, 8, ["agent-id"])) : R(f) === "auth" ? (D(), q("div", f_, [ee(t.$slots, "view-auth")])) : (D(), V(i_, {
13896
14221
  key: 6,
13897
14222
  "agent-id": e.agentId
13898
14223
  }, Me({ _: 2 }, [Ne(Object.keys(R(r)), (e) => ({
13899
14224
  name: e,
13900
- fn: S((n) => [C(t.$slots, e, ee(ce(n)))])
14225
+ fn: S((n) => [ee(t.$slots, e, te(ce(n)))])
13901
14226
  }))]), 1032, ["agent-id"])),
13902
14227
  R(pe) ? (D(), q("div", p_, [J(st, {
13903
14228
  markdown: R(pe),
@@ -13917,7 +14242,7 @@ var h_ = { class: "pk-chatbot-auth flex flex-col items-center justify-center w-f
13917
14242
  }, C_ = ["src", "alt"], w_ = { class: "text-center leading-normal mb-lg" }, T_ = {
13918
14243
  key: 0,
13919
14244
  class: "font-bold text-20 m-0"
13920
- }, E_ = { class: "mb-md" }, D_ = { class: "mb-md" }, O_ = { class: "mb-md" }, k_ = { class: "hr mt-xs" }, A_ = { class: "pt-lg text-center text-word-3" }, j_ = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
14245
+ }, E_ = { class: "text-14 text-word-3 text-center leading-normal mb-md" }, D_ = { class: "flex justify-center mt-md" }, O_ = { class: "mb-md" }, k_ = { class: "mb-md" }, A_ = { class: "mb-md" }, j_ = { class: "hr mt-xs" }, M_ = { class: "pt-lg text-center text-word-3" }, N_ = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
13921
14246
  __name: "PkChatbotAuth",
13922
14247
  props: /*@__PURE__*/ ge({
13923
14248
  branding: {
@@ -13931,6 +14256,10 @@ var h_ = { class: "pk-chatbot-auth flex flex-col items-center justify-center w-f
13931
14256
  loading: {
13932
14257
  type: Boolean,
13933
14258
  default: !1
14259
+ },
14260
+ twoFactorMethods: {
14261
+ default: void 0,
14262
+ type: Array
13934
14263
  }
13935
14264
  }, {
13936
14265
  errorMessage: { default: void 0 },
@@ -13943,6 +14272,9 @@ var h_ = { class: "pk-chatbot-auth flex flex-col items-center justify-center w-f
13943
14272
  "sign-up",
13944
14273
  "request-reset",
13945
14274
  "social",
14275
+ "verify-two-factor",
14276
+ "send-two-factor-code",
14277
+ "cancel-two-factor",
13946
14278
  "update:errorMessage",
13947
14279
  "update:success"
13948
14280
  ], ["update:errorMessage", "update:success"]),
@@ -13958,40 +14290,54 @@ var h_ = { class: "pk-chatbot-auth flex flex-col items-center justify-center w-f
13958
14290
  email: _(),
13959
14291
  password: Or,
13960
14292
  rememberMe: p().default(!1)
13961
- }), h = s({ email: _() }), { VvForm: g, VvFormField: v } = Yt(m, { lazyLoad: !0 }), { VvForm: y, VvFormField: b, clear: x } = Yt(Ar, { lazyLoad: !0 }), { VvForm: C, VvFormField: w, clear: ee } = Yt(h, { lazyLoad: !0 });
14293
+ }), h = s({ email: _() }), { VvForm: g, VvFormField: v } = Yt(m, { lazyLoad: !0 }), { VvForm: y, VvFormField: b, clear: ee } = Yt(Ar, { lazyLoad: !0 }), { VvForm: C, VvFormField: te, clear: w } = Yt(h, { lazyLoad: !0 });
13962
14294
  F(c, (e) => {
13963
- e && (x(), ee());
14295
+ e && (ee(), w());
13964
14296
  });
13965
14297
  let T = G();
13966
- function te() {
14298
+ function ne() {
13967
14299
  c.value && T.value?.focus();
13968
14300
  }
13969
- function ne(e) {
14301
+ function E(e) {
13970
14302
  l("sign-in", {
13971
14303
  email: e.email,
13972
14304
  password: e.password,
13973
14305
  rememberMe: e.rememberMe ?? !1
13974
14306
  });
13975
14307
  }
13976
- function E(e) {
14308
+ function ie(e) {
13977
14309
  l("sign-up", {
13978
14310
  name: e.name.trim(),
13979
14311
  email: e.email,
13980
14312
  password: e.password
13981
14313
  });
13982
14314
  }
13983
- function ie(e) {
14315
+ function ae(e) {
13984
14316
  l("request-reset", { email: e.email });
13985
14317
  }
13986
- function ae(e) {
14318
+ function O(e) {
13987
14319
  l("social", e);
13988
14320
  }
14321
+ let se = W(() => !!r.twoFactorMethods?.length), k = G("totp"), { VvForm: A, VvFormField: j, clear: M } = Yt(s({ code: x().trim().min(6).max(32) }), { lazyLoad: !0 });
14322
+ F(() => r.twoFactorMethods, (e) => {
14323
+ e?.length && (k.value = e.includes("totp") ? "totp" : "otp", M(), k.value === "otp" && l("send-two-factor-code"));
14324
+ }, { immediate: !0 });
14325
+ function N(e) {
14326
+ k.value = e, o.value = void 0, M();
14327
+ }
14328
+ let ce = W(() => k.value === "backup" ? n("twoFactor.challengeBackup") : k.value === "otp" ? n("twoFactor.challengeEmailSent") : n("twoFactor.challengeApp"));
14329
+ function le(e) {
14330
+ l("verify-two-factor", {
14331
+ kind: k.value,
14332
+ code: e.code.trim()
14333
+ });
14334
+ }
13989
14335
  return (t, r) => {
13990
- let s = Gt, l = Wt, p = Ut, m = Rt;
14336
+ let s = Gt, p = Wt, m = Ut, h = Rt;
13991
14337
  return D(), q("div", h_, [H("div", g_, [J(K, {
13992
14338
  name: "pk-flip",
13993
14339
  mode: "out-in",
13994
- onAfterEnter: te
14340
+ onAfterEnter: ne
13995
14341
  }, {
13996
14342
  default: S(() => [c.value ? (D(), q("div", {
13997
14343
  ref_key: "successCard",
@@ -14007,7 +14353,7 @@ var h_ = { class: "pk-chatbot-auth flex flex-col items-center justify-center w-f
14007
14353
  })]),
14008
14354
  H("h1", v_, P(c.value.title), 1),
14009
14355
  H("p", y_, P(c.value.message), 1),
14010
- J(l, {
14356
+ J(p, {
14011
14357
  type: "button",
14012
14358
  modifiers: "link",
14013
14359
  icon: "chevron-left",
@@ -14022,22 +14368,68 @@ var h_ = { class: "pk-chatbot-auth flex flex-col items-center justify-center w-f
14022
14368
  onError: r[0] ||= (t) => R(a)(e.branding?.interface.logo)
14023
14369
  }, null, 40, C_)])) : I("", !0),
14024
14370
  H("div", w_, [e.branding?.name ? (D(), q("h1", T_, P(e.branding.name), 1)) : I("", !0), (D(), V(re(e.branding?.name ? "h2" : "h1"), { class: "text-word-3 mb-0" }, {
14025
- default: S(() => [u.value === "sign-in" ? (D(), q(B, { key: 0 }, [L(P(R(n)("auth.signInTitle")), 1)], 64)) : u.value === "sign-up" ? (D(), q(B, { key: 1 }, [L(P(R(n)("auth.signUpTitle")), 1)], 64)) : u.value === "reset" ? (D(), q(B, { key: 2 }, [L(P(R(n)("auth.resetTitle")), 1)], 64)) : I("", !0)]),
14371
+ default: S(() => [se.value ? (D(), q(B, { key: 0 }, [L(P(R(n)("twoFactor.challengeTitle")), 1)], 64)) : u.value === "sign-in" ? (D(), q(B, { key: 1 }, [L(P(R(n)("auth.signInTitle")), 1)], 64)) : u.value === "sign-up" ? (D(), q(B, { key: 2 }, [L(P(R(n)("auth.signUpTitle")), 1)], 64)) : u.value === "reset" ? (D(), q(B, { key: 3 }, [L(P(R(n)("auth.resetTitle")), 1)], 64)) : I("", !0)]),
14026
14372
  _: 1
14027
14373
  }))]),
14028
- o.value ? (D(), V(p, {
14374
+ o.value ? (D(), V(m, {
14029
14375
  key: 1,
14030
14376
  modifiers: "danger",
14031
14377
  class: "mb-md",
14032
14378
  content: o.value
14033
14379
  }, null, 8, ["content"])) : I("", !0),
14034
- u.value === "sign-in" ? (D(), V(R(g), {
14035
- key: 2,
14380
+ se.value ? (D(), q(B, { key: 2 }, [
14381
+ H("p", E_, P(ce.value), 1),
14382
+ J(R(A), {
14383
+ class: "flex flex-col",
14384
+ readonly: e.loading,
14385
+ onSubmit: le
14386
+ }, {
14387
+ default: S(() => [J(R(j), {
14388
+ name: "code",
14389
+ type: "text",
14390
+ autocomplete: k.value === "backup" ? "off" : "one-time-code",
14391
+ label: k.value === "backup" ? R(n)("twoFactor.backupCode") : R(n)("twoFactor.code"),
14392
+ floating: ""
14393
+ }, null, 8, ["autocomplete", "label"]), J(p, {
14394
+ type: "submit",
14395
+ modifiers: "primary",
14396
+ loading: e.loading,
14397
+ disabled: e.loading,
14398
+ label: R(n)("twoFactor.verify")
14399
+ }, null, 8, [
14400
+ "loading",
14401
+ "disabled",
14402
+ "label"
14403
+ ])]),
14404
+ _: 1
14405
+ }, 8, ["readonly"]),
14406
+ H("div", D_, [k.value === "totp" ? (D(), V(p, {
14407
+ key: 0,
14408
+ type: "button",
14409
+ modifiers: "link",
14410
+ label: R(n)("twoFactor.useBackupCode"),
14411
+ onClick: r[1] ||= (e) => N("backup")
14412
+ }, null, 8, ["label"])) : k.value === "backup" ? (D(), V(p, {
14413
+ key: 1,
14414
+ type: "button",
14415
+ modifiers: "link",
14416
+ label: R(n)("twoFactor.useApp"),
14417
+ onClick: r[2] ||= (e) => N("totp")
14418
+ }, null, 8, ["label"])) : (D(), V(p, {
14419
+ key: 2,
14420
+ type: "button",
14421
+ modifiers: "link",
14422
+ disabled: e.loading,
14423
+ label: R(n)("twoFactor.sendAgain"),
14424
+ onClick: r[3] ||= (e) => l("send-two-factor-code")
14425
+ }, null, 8, ["disabled", "label"]))])
14426
+ ], 64)) : u.value === "sign-in" ? (D(), V(R(g), {
14427
+ key: 3,
14036
14428
  class: "flex flex-col",
14037
14429
  readonly: e.loading,
14038
- onSubmit: ne
14430
+ onSubmit: E
14039
14431
  }, {
14040
- default: S(() => [H("div", E_, [
14432
+ default: S(() => [H("div", O_, [
14041
14433
  J(R(v), {
14042
14434
  name: "email",
14043
14435
  type: "email",
@@ -14052,11 +14444,11 @@ var h_ = { class: "pk-chatbot-auth flex flex-col items-center justify-center w-f
14052
14444
  label: R(n)("label.password"),
14053
14445
  floating: ""
14054
14446
  }, null, 8, ["label"]),
14055
- H("div", D_, [J(l, {
14447
+ H("div", k_, [J(p, {
14056
14448
  type: "button",
14057
14449
  modifiers: "link",
14058
14450
  label: R(n)("action.forgetPassword"),
14059
- onClick: r[1] ||= (e) => u.value = "reset"
14451
+ onClick: r[4] ||= (e) => u.value = "reset"
14060
14452
  }, null, 8, ["label"])]),
14061
14453
  J(R(v), {
14062
14454
  name: "rememberMe",
@@ -14064,7 +14456,7 @@ var h_ = { class: "pk-chatbot-auth flex flex-col items-center justify-center w-f
14064
14456
  label: R(n)("label.rememberMe"),
14065
14457
  switch: ""
14066
14458
  }, null, 8, ["label"])
14067
- ]), J(l, {
14459
+ ]), J(p, {
14068
14460
  type: "submit",
14069
14461
  modifiers: "primary",
14070
14462
  loading: e.loading,
@@ -14077,12 +14469,12 @@ var h_ = { class: "pk-chatbot-auth flex flex-col items-center justify-center w-f
14077
14469
  ])]),
14078
14470
  _: 1
14079
14471
  }, 8, ["readonly"])) : u.value === "sign-up" ? (D(), V(R(y), {
14080
- key: 3,
14472
+ key: 4,
14081
14473
  class: "flex flex-col",
14082
14474
  readonly: e.loading,
14083
- onSubmit: E
14475
+ onSubmit: ie
14084
14476
  }, {
14085
- default: S(() => [H("div", O_, [
14477
+ default: S(() => [H("div", A_, [
14086
14478
  J(R(b), {
14087
14479
  name: "name",
14088
14480
  type: "text",
@@ -14111,7 +14503,7 @@ var h_ = { class: "pk-chatbot-auth flex flex-col items-center justify-center w-f
14111
14503
  label: R(n)("label.confirmPassword"),
14112
14504
  floating: ""
14113
14505
  }, null, 8, ["label"])
14114
- ]), J(l, {
14506
+ ]), J(p, {
14115
14507
  type: "submit",
14116
14508
  modifiers: "primary",
14117
14509
  loading: e.loading,
@@ -14124,19 +14516,19 @@ var h_ = { class: "pk-chatbot-auth flex flex-col items-center justify-center w-f
14124
14516
  ])]),
14125
14517
  _: 1
14126
14518
  }, 8, ["readonly"])) : u.value === "reset" ? (D(), V(R(C), {
14127
- key: 4,
14519
+ key: 5,
14128
14520
  class: "flex flex-col",
14129
14521
  readonly: e.loading,
14130
- onSubmit: ie
14522
+ onSubmit: ae
14131
14523
  }, {
14132
- default: S(() => [J(R(w), {
14524
+ default: S(() => [J(R(te), {
14133
14525
  name: "email",
14134
14526
  type: "email",
14135
14527
  autocomplete: "username",
14136
14528
  label: R(n)("label.email"),
14137
14529
  floating: ""
14138
- }, null, 8, ["label"]), J(m, { modifiers: "vertical" }, {
14139
- default: S(() => [J(l, {
14530
+ }, null, 8, ["label"]), J(h, { modifiers: "vertical" }, {
14531
+ default: S(() => [J(p, {
14140
14532
  type: "submit",
14141
14533
  modifiers: "primary",
14142
14534
  loading: e.loading,
@@ -14151,67 +14543,74 @@ var h_ = { class: "pk-chatbot-auth flex flex-col items-center justify-center w-f
14151
14543
  })]),
14152
14544
  _: 1
14153
14545
  }, 8, ["readonly"])) : I("", !0),
14154
- (u.value === "sign-in" || u.value === "sign-up") && f.value ? (D(), q(B, { key: 5 }, [H("div", k_, [H("span", null, P(R(n)("label.or")), 1)]), J(m, {
14546
+ !se.value && (u.value === "sign-in" || u.value === "sign-up") && f.value ? (D(), q(B, { key: 6 }, [H("div", j_, [H("span", null, P(R(n)("label.or")), 1)]), J(h, {
14155
14547
  modifiers: "vertical",
14156
14548
  class: "gap-xs mt-xs"
14157
14549
  }, {
14158
- default: S(() => [e.authMethods?.google ? (D(), V(l, {
14550
+ default: S(() => [e.authMethods?.google ? (D(), V(p, {
14159
14551
  key: 0,
14160
14552
  type: "button",
14161
14553
  modifiers: "secondary",
14162
14554
  icon: "logos:google-icon",
14163
14555
  disabled: e.loading,
14164
14556
  label: R(n)("action.signInWithSocialProvider", { provider: "Google" }),
14165
- onClick: r[2] ||= (e) => ae("google")
14166
- }, null, 8, ["disabled", "label"])) : I("", !0), e.authMethods?.microsoft ? (D(), V(l, {
14557
+ onClick: r[5] ||= (e) => O("google")
14558
+ }, null, 8, ["disabled", "label"])) : I("", !0), e.authMethods?.microsoft ? (D(), V(p, {
14167
14559
  key: 1,
14168
14560
  type: "button",
14169
14561
  modifiers: "secondary",
14170
14562
  icon: "logos:microsoft-icon",
14171
14563
  disabled: e.loading,
14172
14564
  label: R(n)("action.signInWithSocialProvider", { provider: "Microsoft" }),
14173
- onClick: r[3] ||= (e) => ae("microsoft")
14565
+ onClick: r[6] ||= (e) => O("microsoft")
14174
14566
  }, null, 8, ["disabled", "label"])) : I("", !0)]),
14175
14567
  _: 1
14176
14568
  })], 64)) : I("", !0)
14177
- ]), H("div", A_, [u.value === "sign-in" ? (D(), q(B, { key: 0 }, [L(P(R(n)("auth.noAccount")) + " ", 1), J(l, {
14569
+ ]), H("div", M_, [se.value ? (D(), V(p, {
14570
+ key: 0,
14571
+ type: "button",
14572
+ modifiers: "link",
14573
+ icon: "chevron-left",
14574
+ label: R(n)("action.backToSignIn"),
14575
+ onClick: r[7] ||= (e) => l("cancel-two-factor")
14576
+ }, null, 8, ["label"])) : u.value === "sign-in" ? (D(), q(B, { key: 1 }, [L(P(R(n)("auth.noAccount")) + " ", 1), J(p, {
14178
14577
  type: "button",
14179
14578
  modifiers: "link",
14180
14579
  class: "font-semibold",
14181
14580
  label: R(n)("action.signUp"),
14182
- onClick: r[4] ||= (e) => u.value = "sign-up"
14183
- }, null, 8, ["label"])], 64)) : u.value === "sign-up" ? (D(), q(B, { key: 1 }, [L(P(R(n)("auth.haveAccount")) + " ", 1), J(l, {
14581
+ onClick: r[8] ||= (e) => u.value = "sign-up"
14582
+ }, null, 8, ["label"])], 64)) : u.value === "sign-up" ? (D(), q(B, { key: 2 }, [L(P(R(n)("auth.haveAccount")) + " ", 1), J(p, {
14184
14583
  type: "button",
14185
14584
  modifiers: "link",
14186
14585
  class: "font-semibold",
14187
14586
  label: R(n)("action.signIn"),
14188
- onClick: r[5] ||= (e) => u.value = "sign-in"
14189
- }, null, 8, ["label"])], 64)) : (D(), V(l, {
14190
- key: 2,
14587
+ onClick: r[9] ||= (e) => u.value = "sign-in"
14588
+ }, null, 8, ["label"])], 64)) : (D(), V(p, {
14589
+ key: 3,
14191
14590
  type: "button",
14192
14591
  modifiers: "link",
14193
14592
  icon: "chevron-left",
14194
14593
  label: R(n)("action.backToSignIn"),
14195
- onClick: r[6] ||= (e) => u.value = "sign-in"
14594
+ onClick: r[10] ||= (e) => u.value = "sign-in"
14196
14595
  }, null, 8, ["label"]))])]))]),
14197
14596
  _: 1
14198
14597
  })])]);
14199
14598
  };
14200
14599
  }
14201
- }), [["styles", [".pk-chatbot-auth__flip{transform-style:preserve-3d;perspective:1000px;display:grid}.pk-chatbot-auth__flip-card{backface-visibility:hidden;transform-style:preserve-3d;grid-area:1/1}.pk-chatbot-auth__success-icon{animation:.4s ease-out .3s backwards pk-chatbot-auth-check-pop}.pk-flip-enter-active{animation:.6s ease-out pk-chatbot-auth-flip-in}.pk-flip-leave-active{animation:.6s ease-in pk-chatbot-auth-flip-out}@keyframes pk-chatbot-auth-flip-in{0%{opacity:0;transform:rotateY(-180deg)}to{opacity:1;transform:rotateY(0)}}@keyframes pk-chatbot-auth-flip-out{0%{opacity:1;transform:rotateY(0)}to{opacity:0;transform:rotateY(180deg)}}@keyframes pk-chatbot-auth-check-pop{0%{opacity:0;transform:scale(0)}60%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}"]]]), M_ = "@layer volver.reset,volver.preflight,volver.props;@layer volver.components{.pk-loader{width:var(--spacing-48);height:var(--spacing-48);border-radius:50%;animation:1s linear infinite rotate;position:relative}.pk-loader:before{content:\"\";box-sizing:border-box;border:var(--spacing-5) solid var(--color-brand);border-radius:50%;animation:2s linear infinite prix-clip-fix;position:absolute;inset:0}@keyframes rotate{to{rotate:360deg}}@keyframes prix-clip-fix{0%{clip-path:polygon(50% 50%,0 0,0 0,0 0,0 0,0 0)}25%{clip-path:polygon(50% 50%,0 0,100% 0,100% 0,100% 0,100% 0)}50%{clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,100% 100%,100% 100%)}75%{clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 100%)}to{clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 0)}}}@layer volver.themes,volver.utilities;";
14600
+ }), [["styles", [".pk-chatbot-auth__flip{transform-style:preserve-3d;perspective:1000px;display:grid}.pk-chatbot-auth__flip-card{backface-visibility:hidden;transform-style:preserve-3d;grid-area:1/1}.pk-chatbot-auth__success-icon{animation:.4s ease-out .3s backwards pk-chatbot-auth-check-pop}.pk-flip-enter-active{animation:.6s ease-out pk-chatbot-auth-flip-in}.pk-flip-leave-active{animation:.6s ease-in pk-chatbot-auth-flip-out}@keyframes pk-chatbot-auth-flip-in{0%{opacity:0;transform:rotateY(-180deg)}to{opacity:1;transform:rotateY(0)}}@keyframes pk-chatbot-auth-flip-out{0%{opacity:1;transform:rotateY(0)}to{opacity:0;transform:rotateY(180deg)}}@keyframes pk-chatbot-auth-check-pop{0%{opacity:0;transform:scale(0)}60%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}"]]]), P_ = "@layer volver.reset,volver.preflight,volver.props;@layer volver.components{.pk-loader{width:var(--spacing-48);height:var(--spacing-48);border-radius:50%;animation:1s linear infinite rotate;position:relative}.pk-loader:before{content:\"\";box-sizing:border-box;border:var(--spacing-5) solid var(--color-brand);border-radius:50%;animation:2s linear infinite prix-clip-fix;position:absolute;inset:0}@keyframes rotate{to{rotate:360deg}}@keyframes prix-clip-fix{0%{clip-path:polygon(50% 50%,0 0,0 0,0 0,0 0,0 0)}25%{clip-path:polygon(50% 50%,0 0,100% 0,100% 0,100% 0,100% 0)}50%{clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,100% 100%,100% 100%)}75%{clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 100%)}to{clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 0)}}}@layer volver.themes,volver.utilities;";
14202
14601
  //#endregion
14203
14602
  //#region ../../packages/components/src/PkLoader.vue
14204
14603
  k();
14205
- var N_ = {};
14206
- function P_(e, t) {
14604
+ var F_ = {};
14605
+ function I_(e, t) {
14207
14606
  return D(), q("div", null, [...t[0] ||= [H("div", {
14208
14607
  "aria-hidden": "true",
14209
14608
  class: "pk-loader"
14210
14609
  }, null, -1)]]);
14211
14610
  }
14212
- var F_ = /*#__PURE__*/ Qt(N_, [["render", P_], ["styles", [M_]]]);
14611
+ var L_ = /*#__PURE__*/ Qt(F_, [["render", I_], ["styles", [P_]]]);
14213
14612
  k(), Y(), we(), U();
14214
- var I_ = { class: "welcome-popup__text" }, L_ = ["aria-label"], R_ = 100, z_ = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
14613
+ var R_ = { class: "welcome-popup__text" }, z_ = ["aria-label"], B_ = 100, V_ = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
14215
14614
  __name: "PkWelcomePopup",
14216
14615
  props: {
14217
14616
  agentId: { type: String },
@@ -14232,7 +14631,7 @@ var I_ = { class: "welcome-popup__text" }, L_ = ["aria-label"], R_ = 100, z_ = /
14232
14631
  c.value = [], s.value = !1;
14233
14632
  let t = e.split(/(\s+)/), n = 0;
14234
14633
  function r() {
14235
- n < t.length ? (c.value.push(t[n]), n++, l = setTimeout(r, R_)) : s.value = !0;
14634
+ n < t.length ? (c.value.push(t[n]), n++, l = setTimeout(r, B_)) : s.value = !0;
14236
14635
  }
14237
14636
  r();
14238
14637
  }
@@ -14256,7 +14655,7 @@ var I_ = { class: "welcome-popup__text" }, L_ = ["aria-label"], R_ = 100, z_ = /
14256
14655
  key: 0,
14257
14656
  class: "welcome-popup",
14258
14657
  onClick: De(m, ["stop"])
14259
- }, [H("p", I_, [(D(!0), q(B, null, Ne(c.value, (e, t) => (D(), q("span", {
14658
+ }, [H("p", R_, [(D(!0), q(B, null, Ne(c.value, (e, t) => (D(), q("span", {
14260
14659
  key: t,
14261
14660
  class: "welcome-popup__word"
14262
14661
  }, P(e), 1))), 128))]), J(K, null, {
@@ -14272,7 +14671,7 @@ var I_ = { class: "welcome-popup__text" }, L_ = ["aria-label"], R_ = 100, z_ = /
14272
14671
  width: "14",
14273
14672
  height: "14",
14274
14673
  fill: "currentColor"
14275
- }, [H("path", { d: "M12.0007 10.5865L16.9504 5.63672L18.3646 7.05093L13.4149 12.0007L18.3646 16.9504L16.9504 18.3646L12.0007 13.4149L7.05093 18.3646L5.63672 16.9504L10.5865 12.0007L5.63672 7.05093L7.05093 5.63672L12.0007 10.5865Z" })], -1)]], 8, L_)) : I("", !0)]),
14674
+ }, [H("path", { d: "M12.0007 10.5865L16.9504 5.63672L18.3646 7.05093L13.4149 12.0007L18.3646 16.9504L16.9504 18.3646L12.0007 13.4149L7.05093 18.3646L5.63672 16.9504L10.5865 12.0007L5.63672 7.05093L7.05093 5.63672L12.0007 10.5865Z" })], -1)]], 8, z_)) : I("", !0)]),
14276
14675
  _: 1
14277
14676
  })])) : I("", !0)]),
14278
14677
  _: 1
@@ -14280,10 +14679,10 @@ var I_ = { class: "welcome-popup__text" }, L_ = ["aria-label"], R_ = 100, z_ = /
14280
14679
  }
14281
14680
  }), [["styles", [".welcome-popup{background:var(--color-surface);pointer-events:auto;max-width:300px;color:var(--color-word-2);line-height:var(--leading-normal);border-width:var(--spacing-px);border-color:var(--color-surface-3);padding:var(--spacing-sm);border-radius:var(--rounded-xl);font-size:var(--text-14);cursor:pointer;box-shadow:0 4px 16px #00000014,0 1px 4px #0000000f}.welcome-popup__word{animation:.3s ease-out both welcome-popup-word-in;display:inline}.welcome-popup__close{background-color:var(--color-surface);border:1px solid var(--color-surface-3);border-radius:var(--rounded-full);width:var(--spacing-20);height:var(--spacing-20);top:calc(-1 * var(--spacing-8));right:calc(-1 * var(--spacing-8));padding:var(--spacing-2);cursor:pointer;color:var(--color-word-4);border-radius:var(--rounded-full);transition:var(--transition-colors);box-shadow:var(--shadow-md);justify-content:center;align-items:center;line-height:1;display:flex;position:absolute}.welcome-popup__close:hover{color:var(--color-word)}.welcome-popup-enter-active,.welcome-popup-leave-active{transition:transform var(--duration-300) var(--ease-out), opacity var(--duration-300) var(--ease-out)}.welcome-popup-enter-from{opacity:0;transform:translateY(var(--spacing-32))}.welcome-popup-leave-to{opacity:0}@keyframes welcome-popup-word-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}"]]]);
14282
14681
  k(), U(), Y(), we();
14283
- var B_ = {
14682
+ var H_ = {
14284
14683
  key: 0,
14285
14684
  class: "floating-chat-widget__launcher"
14286
- }, V_ = {
14685
+ }, U_ = {
14287
14686
  key: 0,
14288
14687
  class: "w-full h-full",
14289
14688
  xmlns: "http://www.w3.org/2000/svg",
@@ -14291,7 +14690,7 @@ var B_ = {
14291
14690
  width: "24",
14292
14691
  height: "24",
14293
14692
  fill: "currentColor"
14294
- }, H_ = {
14693
+ }, W_ = {
14295
14694
  key: 1,
14296
14695
  class: "w-full h-full",
14297
14696
  xmlns: "http://www.w3.org/2000/svg",
@@ -14299,13 +14698,13 @@ var B_ = {
14299
14698
  width: "24",
14300
14699
  height: "24",
14301
14700
  fill: "currentColor"
14302
- }, U_ = {
14701
+ }, G_ = {
14303
14702
  key: 0,
14304
14703
  class: "floating-chat-widget__chat floating-chat-widget__auth"
14305
- }, W_ = {
14704
+ }, K_ = {
14306
14705
  key: 0,
14307
14706
  class: "floating-chat-widget__chat floating-chat-widget__loading"
14308
- }, G_ = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
14707
+ }, q_ = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
14309
14708
  inheritAttrs: !1,
14310
14709
  __name: "FloatingChatWidget.ce",
14311
14710
  props: {
@@ -14357,7 +14756,7 @@ var B_ = {
14357
14756
  });
14358
14757
  let { PkGlobalDialog: r } = nd(), { emit: i } = fd(), a = G(), o = G(), s = Jt(W(() => `${n.agentId}-is-open`), !1), c = () => {
14359
14758
  s.value = !s.value, Lr(s.value ? "widget_opened" : "widget_closed"), i(s.value ? "opened" : "closed"), s.value || a.value?.stopGeneration();
14360
- }, { session: l, onError: u, headers: d, token: f, userId: p, isExternalAuth: m, signInWithEmail: h, signUpWithEmail: g, requestPasswordReset: _, signInWithSocialPopup: v, signInWithExternalToken: y, signOut: b } = qf({
14759
+ }, { session: l, onError: u, headers: d, token: f, userId: p, isExternalAuth: m, signInWithEmail: h, twoFactorChallenge: g, verifyTwoFactor: _, sendTwoFactorCode: v, cancelTwoFactor: y, signUpWithEmail: b, requestPasswordReset: x, signInWithSocialPopup: ee, signInWithExternalToken: C, signOut: te } = qf({
14361
14760
  baseUrl: n.baseUrl,
14362
14761
  externalToken: () => n.externalToken,
14363
14762
  awaitExternalToken: !!n.awaitExternalToken && n.awaitExternalToken !== "false",
@@ -14378,44 +14777,48 @@ var B_ = {
14378
14777
  }), F(() => l.value.data, (e) => {
14379
14778
  e && i("ready");
14380
14779
  });
14381
- function x(e) {
14780
+ function w(e) {
14382
14781
  Rr(/* @__PURE__ */ Error(`${e.type}: ${e.title}`), { status: String(e.status) }), i("error", {
14383
14782
  type: e.type,
14384
14783
  title: e.title,
14385
14784
  status: e.status
14386
14785
  }), u(e);
14387
14786
  }
14388
- let { agent: C, branding: w, authMethods: ee, requiresAuth: T, notFound: te, isLoading: ne, contrastColor: E, themeClass: ie, themeStyle: ae, reload: oe } = Qf({
14787
+ let { agent: T, branding: ne, authMethods: E, requiresAuth: ie, notFound: ae, isLoading: oe, contrastColor: O, themeClass: se, themeStyle: k, reload: A } = Qf({
14389
14788
  baseUrl: n.baseUrl,
14390
14789
  organizationSlug: () => n.organizationSlug,
14391
14790
  agentId: () => n.agentId,
14392
14791
  headers: d,
14393
14792
  systemTheme: () => n.systemTheme
14394
- }), { authBranding: O } = Zf({
14395
- agent: C,
14396
- branding: w,
14397
- authMethods: ee,
14793
+ }), { authBranding: j } = Zf({
14794
+ agent: T,
14795
+ branding: ne,
14796
+ authMethods: E,
14398
14797
  session: l,
14399
- signOut: b,
14798
+ signOut: te,
14400
14799
  isExternalAuth: m,
14401
14800
  token: f,
14402
14801
  baseUrl: n.baseUrl,
14403
14802
  headers: d,
14404
14803
  cookieName: n.cookieName
14405
- }), se = W(() => n.floatingButtonPosition ?? C.value?.interface.floatingButtonPosition ?? w.value?.interface.floatingButtonPosition ?? "right"), k = W(() => {
14804
+ }), M = W(() => n.floatingButtonPosition ?? T.value?.interface.floatingButtonPosition ?? ne.value?.interface.floatingButtonPosition ?? "right"), ce = W(() => {
14406
14805
  let e = [
14407
- C.value?.interface?.customCss,
14408
- w.value?.interface.customCss,
14806
+ T.value?.interface?.customCss,
14807
+ ne.value?.interface.customCss,
14409
14808
  n.customCss
14410
14809
  ].filter(Boolean);
14411
14810
  return e.length ? e.join("\n") : void 0;
14412
- }), { authError: A, authSuccess: j, authLoading: M, handleSignIn: ce, handleSignUp: le, handleReset: ue, handleSocial: de } = $f({
14811
+ }), { authError: le, authSuccess: ue, authLoading: de, handleSignIn: B, handleSignUp: fe, handleReset: pe, handleSocial: me, handleVerifyTwoFactor: he, handleSendTwoFactorCode: U, handleCancelTwoFactor: ge } = $f({
14413
14812
  signInWithEmail: h,
14414
- signUpWithEmail: g,
14415
- requestPasswordReset: _,
14416
- signInWithSocialPopup: v,
14813
+ isTwoFactorPending: () => !!g.value,
14814
+ verifyTwoFactor: _,
14815
+ sendTwoFactorCode: v,
14816
+ cancelTwoFactor: y,
14817
+ signUpWithEmail: b,
14818
+ requestPasswordReset: x,
14819
+ signInWithSocialPopup: ee,
14417
14820
  refetchSession: () => l.value.refetch(),
14418
- reload: oe
14821
+ reload: A
14419
14822
  });
14420
14823
  return t({
14421
14824
  open() {
@@ -14436,26 +14839,26 @@ var B_ = {
14436
14839
  setContext(e) {
14437
14840
  o.value = e;
14438
14841
  },
14439
- signIn: y,
14440
- signOut: b,
14842
+ signIn: C,
14843
+ signOut: te,
14441
14844
  get isOpen() {
14442
14845
  return s.value;
14443
14846
  }
14444
14847
  }), (t, n) => {
14445
14848
  let i = Wt;
14446
14849
  return D(), q("div", {
14447
- class: N(["floating-chat-widget", [R(ie), { "floating-chat-widget--position-left": se.value === "left" }]]),
14448
- style: je(R(ae))
14850
+ class: N(["floating-chat-widget", [R(se), { "floating-chat-widget--position-left": M.value === "left" }]]),
14851
+ style: je(R(k))
14449
14852
  }, [
14450
- k.value ? (D(), V(re("style"), { key: 0 }, {
14451
- default: S(() => [L(P(k.value), 1)]),
14853
+ ce.value ? (D(), V(re("style"), { key: 0 }, {
14854
+ default: S(() => [L(P(ce.value), 1)]),
14452
14855
  _: 1
14453
14856
  })) : I("", !0),
14454
14857
  J(K, { name: "slide-bottom" }, {
14455
- default: S(() => [(R(C) || R(w)) && !R(te) ? (D(), q("div", B_, [J(z_, {
14858
+ default: S(() => [(R(T) || R(ne)) && !R(ae) ? (D(), q("div", H_, [J(V_, {
14456
14859
  "agent-id": e.agentId,
14457
- message: R(C)?.interface.initialMessage,
14458
- enabled: !R(s) && R(C)?.interface?.welcomePopup,
14860
+ message: R(T)?.interface.initialMessage,
14861
+ enabled: !R(s) && R(T)?.interface?.welcomePopup,
14459
14862
  onOpen: c
14460
14863
  }, null, 8, [
14461
14864
  "agent-id",
@@ -14466,24 +14869,28 @@ var B_ = {
14466
14869
  "aria-label": "chat-button",
14467
14870
  class: "floating-chat-widget__button",
14468
14871
  onClick: De(c, ["stop"])
14469
- }, [R(s) ? (D(), q("svg", V_, [...n[4] ||= [H("path", { d: "M11.9999 13.1714L16.9497 8.22168L18.3639 9.63589L11.9999 15.9999L5.63599 9.63589L7.0502 8.22168L11.9999 13.1714Z" }, null, -1)]])) : (D(), q("svg", H_, [...n[5] ||= [H("path", { d: "M12 1.99996C12.8632 1.99996 13.701 2.10973 14.5 2.31539L14 4.25192C13.3608 4.0874 12.6906 3.99997 12 3.99997C7.58174 3.99997 4.00002 7.58172 4 12C4 13.3344 4.3255 14.6174 4.93945 15.7656L5.28906 16.4189L4.63379 19.3662L7.58105 18.7109L8.23438 19.0605C9.38255 19.6745 10.6656 20 12 20C16.4183 20 20 16.4183 20 12C20 11.6771 19.9805 11.3587 19.9434 11.0459L21.9297 10.8095C21.976 11.1999 22 11.5972 22 12C22 17.5228 17.5228 22 12 22C10.2975 22 8.69425 21.5746 7.29102 20.8242L2 22L3.17578 16.709C2.42541 15.3057 2 13.7025 2 12C2.00002 6.47714 6.47717 1.99996 12 1.99996ZM19.5293 1.3193C19.7058 0.893513 20.2942 0.8935 20.4707 1.3193L20.7236 1.93063C21.1555 2.97343 21.9615 3.80614 22.9746 4.2568L23.6914 4.57614C24.1022 4.75882 24.1022 5.35635 23.6914 5.53903L22.9326 5.87692C21.945 6.3162 21.1534 7.11943 20.7139 8.1279L20.4668 8.69333C20.2863 9.10747 19.7136 9.10747 19.5332 8.69333L19.2861 8.1279C18.8466 7.11942 18.0551 6.3162 17.0674 5.87692L16.3076 5.53903C15.8974 5.35618 15.8974 4.75895 16.3076 4.57614L17.0254 4.2568C18.0384 3.80614 18.8445 2.97343 19.2764 1.93063L19.5293 1.3193Z" }, null, -1)]]))])])) : I("", !0)]),
14872
+ }, [R(s) ? (D(), q("svg", U_, [...n[4] ||= [H("path", { d: "M11.9999 13.1714L16.9497 8.22168L18.3639 9.63589L11.9999 15.9999L5.63599 9.63589L7.0502 8.22168L11.9999 13.1714Z" }, null, -1)]])) : (D(), q("svg", W_, [...n[5] ||= [H("path", { d: "M12 1.99996C12.8632 1.99996 13.701 2.10973 14.5 2.31539L14 4.25192C13.3608 4.0874 12.6906 3.99997 12 3.99997C7.58174 3.99997 4.00002 7.58172 4 12C4 13.3344 4.3255 14.6174 4.93945 15.7656L5.28906 16.4189L4.63379 19.3662L7.58105 18.7109L8.23438 19.0605C9.38255 19.6745 10.6656 20 12 20C16.4183 20 20 16.4183 20 12C20 11.6771 19.9805 11.3587 19.9434 11.0459L21.9297 10.8095C21.976 11.1999 22 11.5972 22 12C22 17.5228 17.5228 22 12 22C10.2975 22 8.69425 21.5746 7.29102 20.8242L2 22L3.17578 16.709C2.42541 15.3057 2 13.7025 2 12C2.00002 6.47714 6.47717 1.99996 12 1.99996ZM19.5293 1.3193C19.7058 0.893513 20.2942 0.8935 20.4707 1.3193L20.7236 1.93063C21.1555 2.97343 21.9615 3.80614 22.9746 4.2568L23.6914 4.57614C24.1022 4.75882 24.1022 5.35635 23.6914 5.53903L22.9326 5.87692C21.945 6.3162 21.1534 7.11943 20.7139 8.1279L20.4668 8.69333C20.2863 9.10747 19.7136 9.10747 19.5332 8.69333L19.2861 8.1279C18.8466 7.11942 18.0551 6.3162 17.0674 5.87692L16.3076 5.53903C15.8974 5.35618 15.8974 4.75895 16.3076 4.57614L17.0254 4.2568C18.0384 3.80614 18.8445 2.97343 19.2764 1.93063L19.5293 1.3193Z" }, null, -1)]]))])])) : I("", !0)]),
14470
14873
  _: 1
14471
14874
  }),
14472
14875
  J(K, null, {
14473
- default: S(() => [R(s) && (R(T) || R(ne)) && !(R(C) && R(l).data) ? (D(), q("div", U_, [R(T) ? (D(), V(j_, {
14876
+ default: S(() => [R(s) && (R(ie) || R(oe)) && !(R(T) && R(l).data) ? (D(), q("div", G_, [R(ie) ? (D(), V(N_, {
14474
14877
  key: 0,
14475
- "error-message": R(A),
14476
- "onUpdate:errorMessage": n[0] ||= (e) => z(A) ? A.value = e : null,
14477
- success: R(j),
14478
- "onUpdate:success": n[1] ||= (e) => z(j) ? j.value = e : null,
14479
- branding: R(w),
14480
- "auth-methods": R(ee),
14878
+ "error-message": R(le),
14879
+ "onUpdate:errorMessage": n[0] ||= (e) => z(le) ? le.value = e : null,
14880
+ success: R(ue),
14881
+ "onUpdate:success": n[1] ||= (e) => z(ue) ? ue.value = e : null,
14882
+ branding: R(ne),
14883
+ "auth-methods": R(E),
14481
14884
  "base-url": e.baseUrl,
14482
- loading: R(M),
14483
- onSignIn: R(ce),
14484
- onSignUp: R(le),
14485
- onRequestReset: R(ue),
14486
- onSocial: R(de)
14885
+ loading: R(de),
14886
+ "two-factor-methods": R(g)?.methods,
14887
+ onSignIn: R(B),
14888
+ onSignUp: R(fe),
14889
+ onRequestReset: R(pe),
14890
+ onSocial: R(me),
14891
+ onVerifyTwoFactor: R(he),
14892
+ onSendTwoFactorCode: R(U),
14893
+ onCancelTwoFactor: R(ge)
14487
14894
  }, null, 8, [
14488
14895
  "error-message",
14489
14896
  "success",
@@ -14491,19 +14898,23 @@ var B_ = {
14491
14898
  "auth-methods",
14492
14899
  "base-url",
14493
14900
  "loading",
14901
+ "two-factor-methods",
14494
14902
  "onSignIn",
14495
14903
  "onSignUp",
14496
14904
  "onRequestReset",
14497
- "onSocial"
14498
- ])) : (D(), V(F_, { key: 1 }))])) : I("", !0)]),
14905
+ "onSocial",
14906
+ "onVerifyTwoFactor",
14907
+ "onSendTwoFactorCode",
14908
+ "onCancelTwoFactor"
14909
+ ])) : (D(), V(L_, { key: 1 }))])) : I("", !0)]),
14499
14910
  _: 1
14500
14911
  }),
14501
14912
  J(K, null, {
14502
- default: S(() => [R(s) && !R(T) && !R(C) && !R(ne) ? (D(), q("div", W_, [J(F_)])) : I("", !0)]),
14913
+ default: S(() => [R(s) && !R(ie) && !R(T) && !R(oe) ? (D(), q("div", K_, [J(L_)])) : I("", !0)]),
14503
14914
  _: 1
14504
14915
  }),
14505
14916
  J(K, null, {
14506
- default: S(() => [R(C) && R(s) && R(l).data ? (D(), V(m_, {
14917
+ default: S(() => [R(T) && R(s) && R(l).data ? (D(), V(m_, {
14507
14918
  key: e.agentId,
14508
14919
  ref_key: "chatbotEl",
14509
14920
  ref: a,
@@ -14511,10 +14922,10 @@ var B_ = {
14511
14922
  "base-url": e.baseUrl,
14512
14923
  "agent-id": e.agentId,
14513
14924
  "user-id": R(p),
14514
- name: R(C).name,
14515
- "agent-interface": R(C).interface,
14516
- "agent-file-upload": R(C).capabilities?.fileUpload,
14517
- voice: R(C).capabilities?.voice,
14925
+ name: R(T).name,
14926
+ "agent-interface": R(T).interface,
14927
+ "agent-file-upload": R(T).capabilities?.fileUpload,
14928
+ voice: R(T).capabilities?.voice,
14518
14929
  headers: R(d),
14519
14930
  "system-theme": e.systemTheme,
14520
14931
  actions: [
@@ -14524,36 +14935,44 @@ var B_ = {
14524
14935
  "regenerate"
14525
14936
  ],
14526
14937
  "external-context": o.value,
14527
- onError: x
14938
+ onError: w
14528
14939
  }, {
14529
14940
  actions: S(({ useColorsForAgentHeader: e }) => [J(i, {
14530
- modifiers: e ? `action-quiet-${R(E)}` : "action-quiet",
14941
+ modifiers: e ? `action-quiet-${R(O)}` : "action-quiet",
14531
14942
  icon: "ri:close-line",
14532
14943
  title: t.$t("action.close"),
14533
14944
  onClick: De(c, ["stop"])
14534
14945
  }, null, 8, ["modifiers", "title"])]),
14535
- "view-auth": S(() => [J(j_, {
14536
- "error-message": R(A),
14537
- "onUpdate:errorMessage": n[2] ||= (e) => z(A) ? A.value = e : null,
14538
- success: R(j),
14539
- "onUpdate:success": n[3] ||= (e) => z(j) ? j.value = e : null,
14540
- branding: R(O),
14541
- "auth-methods": R(ee),
14542
- loading: R(M),
14543
- onSignIn: R(ce),
14544
- onSignUp: R(le),
14545
- onRequestReset: R(ue),
14546
- onSocial: R(de)
14946
+ "view-auth": S(() => [J(N_, {
14947
+ "error-message": R(le),
14948
+ "onUpdate:errorMessage": n[2] ||= (e) => z(le) ? le.value = e : null,
14949
+ success: R(ue),
14950
+ "onUpdate:success": n[3] ||= (e) => z(ue) ? ue.value = e : null,
14951
+ branding: R(j),
14952
+ "auth-methods": R(E),
14953
+ loading: R(de),
14954
+ "two-factor-methods": R(g)?.methods,
14955
+ onSignIn: R(B),
14956
+ onSignUp: R(fe),
14957
+ onRequestReset: R(pe),
14958
+ onSocial: R(me),
14959
+ onVerifyTwoFactor: R(he),
14960
+ onSendTwoFactorCode: R(U),
14961
+ onCancelTwoFactor: R(ge)
14547
14962
  }, null, 8, [
14548
14963
  "error-message",
14549
14964
  "success",
14550
14965
  "branding",
14551
14966
  "auth-methods",
14552
14967
  "loading",
14968
+ "two-factor-methods",
14553
14969
  "onSignIn",
14554
14970
  "onSignUp",
14555
14971
  "onRequestReset",
14556
- "onSocial"
14972
+ "onSocial",
14973
+ "onVerifyTwoFactor",
14974
+ "onSendTwoFactorCode",
14975
+ "onCancelTwoFactor"
14557
14976
  ])]),
14558
14977
  _: 1
14559
14978
  }, 8, [
@@ -14576,16 +14995,16 @@ var B_ = {
14576
14995
  }
14577
14996
  }), [["styles", [".floating-chat-widget{display:contents}.floating-chat-widget__launcher{bottom:var(--spacing-16);right:var(--spacing-16);align-items:flex-end;gap:var(--spacing-14);z-index:99999997;background:0 0;flex-direction:column;width:fit-content;display:flex;position:fixed}.floating-chat-widget__button{padding:var(--spacing-10);width:var(--spacing-48);height:var(--spacing-48);border-radius:var(--rounded-full);background-color:var(--chatbot-main-color,var(--color-black,#000));color:var(--chatbot-contrast-color,var(--color-white,#fff));cursor:pointer;pointer-events:auto;border:0;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s ease-in-out;display:block;transform:scale(1);box-shadow:0 4px 8px #0003}.floating-chat-widget__button:hover{transform:scale(1.1)}.floating-chat-widget__chat{z-index:2147483647;height:auto;position:fixed;inset:0;overflow:hidden}@media (width>=576px){.floating-chat-widget__chat{border-radius:var(--rounded-xxl);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);width:406px;height:85dvh;inset:auto 16px 78px auto;box-shadow:0 260px 73px #0000,0 166px 67px #00000003,0 94px 56px #00000005,0 42px 42px #00000008,0 10px 23px #0000000a}}.floating-chat-widget__loading,.floating-chat-widget__auth{background-color:var(--color-surface,#fff);justify-content:center;align-items:center;display:flex}.floating-chat-widget--position-left .floating-chat-widget__launcher{right:unset;left:var(--spacing-16);align-items:flex-start}@media (width>=576px){.floating-chat-widget--position-left .floating-chat-widget__chat{right:unset;left:16px}}"]]]);
14578
14997
  k(), U(), Y(), we();
14579
- var K_ = {
14998
+ var J_ = {
14580
14999
  key: 1,
14581
15000
  class: "embedded-chat-widget embedded-chat-widget--not-found"
14582
- }, q_ = {
15001
+ }, Y_ = {
14583
15002
  key: 0,
14584
15003
  class: "embedded-chat-widget embedded-chat-widget--auth"
14585
- }, J_ = {
15004
+ }, X_ = {
14586
15005
  key: 0,
14587
15006
  class: "embedded-chat-widget embedded-chat-widget--loading"
14588
- }, Y_ = /*#__PURE__*/ Qt(/* @__PURE__ */ w({
15007
+ }, Z_ = /*#__PURE__*/ Qt(/* @__PURE__ */ C({
14589
15008
  inheritAttrs: !1,
14590
15009
  __name: "EmbeddedChatWidget.ce",
14591
15010
  props: {
@@ -14639,7 +15058,7 @@ var K_ = {
14639
15058
  organizationSlug: n.organizationSlug,
14640
15059
  agentId: n.agentId
14641
15060
  });
14642
- let { session: s, onError: c, headers: l, token: u, userId: d, isExternalAuth: f, signInWithEmail: p, signUpWithEmail: m, requestPasswordReset: h, signInWithSocialPopup: g, signInWithExternalToken: _, signOut: v } = qf({
15061
+ let { session: s, onError: c, headers: l, token: u, userId: d, isExternalAuth: f, signInWithEmail: p, twoFactorChallenge: m, verifyTwoFactor: h, sendTwoFactorCode: g, cancelTwoFactor: _, signUpWithEmail: v, requestPasswordReset: y, signInWithSocialPopup: b, signInWithExternalToken: x, signOut: C } = qf({
14643
15062
  baseUrl: n.baseUrl,
14644
15063
  externalToken: () => n.externalToken,
14645
15064
  awaitExternalToken: !!n.awaitExternalToken && n.awaitExternalToken !== "false",
@@ -14659,41 +15078,45 @@ var K_ = {
14659
15078
  }), F(() => s.value.data, (e) => {
14660
15079
  e && i("ready");
14661
15080
  });
14662
- function y(e) {
15081
+ function te(e) {
14663
15082
  Rr(/* @__PURE__ */ Error(`${e.type}: ${e.title}`), { status: String(e.status) }), i("error", {
14664
15083
  type: e.type,
14665
15084
  title: e.title,
14666
15085
  status: e.status
14667
15086
  }), c(e);
14668
15087
  }
14669
- let { t: b } = Fe({ useScope: "global" }), { agent: x, branding: w, authMethods: ee, requiresAuth: T, notFound: te, isLoading: ne, reload: E, themeClass: ie, themeStyle: ae } = Qf({
15088
+ let { t: w } = Fe({ useScope: "global" }), { agent: T, branding: ne, authMethods: E, requiresAuth: ie, notFound: ae, isLoading: oe, reload: O, themeClass: se, themeStyle: k } = Qf({
14670
15089
  baseUrl: n.baseUrl,
14671
15090
  organizationSlug: () => n.organizationSlug,
14672
15091
  agentId: () => n.agentId,
14673
15092
  headers: l,
14674
15093
  systemTheme: () => n.systemTheme
14675
- }), { authBranding: oe } = Zf({
14676
- agent: x,
14677
- branding: w,
14678
- authMethods: ee,
15094
+ }), { authBranding: A } = Zf({
15095
+ agent: T,
15096
+ branding: ne,
15097
+ authMethods: E,
14679
15098
  session: s,
14680
- signOut: v,
15099
+ signOut: C,
14681
15100
  isExternalAuth: f,
14682
15101
  token: u,
14683
15102
  baseUrl: n.baseUrl,
14684
15103
  headers: l,
14685
15104
  cookieName: n.cookieName
14686
- }), { authError: O, authSuccess: se, authLoading: k, handleSignIn: A, handleSignUp: j, handleReset: M, handleSocial: ce } = $f({
15105
+ }), { authError: j, authSuccess: M, authLoading: ce, handleSignIn: le, handleSignUp: ue, handleReset: de, handleSocial: B, handleVerifyTwoFactor: fe, handleSendTwoFactorCode: pe, handleCancelTwoFactor: me } = $f({
14687
15106
  signInWithEmail: p,
14688
- signUpWithEmail: m,
14689
- requestPasswordReset: h,
14690
- signInWithSocialPopup: g,
15107
+ isTwoFactorPending: () => !!m.value,
15108
+ verifyTwoFactor: h,
15109
+ sendTwoFactorCode: g,
15110
+ cancelTwoFactor: _,
15111
+ signUpWithEmail: v,
15112
+ requestPasswordReset: y,
15113
+ signInWithSocialPopup: b,
14691
15114
  refetchSession: () => s.value.refetch(),
14692
- reload: E
14693
- }), le = W(() => n.forwardedSlots ? n.forwardedSlots.split(",").map((e) => e.trim()).filter(Boolean) : []), ue = W(() => s.value.data?.user?.isAnonymous ? void 0 : s.value.data?.user?.name), de = W(() => {
15115
+ reload: O
15116
+ }), he = W(() => n.forwardedSlots ? n.forwardedSlots.split(",").map((e) => e.trim()).filter(Boolean) : []), U = W(() => s.value.data?.user?.isAnonymous ? void 0 : s.value.data?.user?.name), ge = W(() => {
14694
15117
  let e = [
14695
- x.value?.interface?.customCss,
14696
- w.value?.interface.customCss,
15118
+ T.value?.interface?.customCss,
15119
+ ne.value?.interface.customCss,
14697
15120
  n.customCss
14698
15121
  ].filter(Boolean);
14699
15122
  return e.length ? e.join("\n") : void 0;
@@ -14708,55 +15131,63 @@ var K_ = {
14708
15131
  setContext(e) {
14709
15132
  o.value = e;
14710
15133
  },
14711
- signIn: _,
14712
- signOut: v
15134
+ signIn: x,
15135
+ signOut: C
14713
15136
  }), (t, n) => (D(), q("div", {
14714
- class: N(["embedded-chat-widget-root", R(ie)]),
14715
- style: je(R(ae))
15137
+ class: N(["embedded-chat-widget-root", R(se)]),
15138
+ style: je(R(k))
14716
15139
  }, [
14717
- de.value ? (D(), V(re("style"), { key: 0 }, {
14718
- default: S(() => [L(P(de.value), 1)]),
15140
+ ge.value ? (D(), V(re("style"), { key: 0 }, {
15141
+ default: S(() => [L(P(ge.value), 1)]),
14719
15142
  _: 1
14720
15143
  })) : I("", !0),
14721
- R(te) ? (D(), q("div", K_, [H("p", null, P(R(b)("message.agentNotFound")), 1)])) : I("", !0),
15144
+ R(ae) ? (D(), q("div", J_, [H("p", null, P(R(w)("message.agentNotFound")), 1)])) : I("", !0),
14722
15145
  J(K, {
14723
15146
  name: "fade",
14724
15147
  appear: ""
14725
15148
  }, {
14726
- default: S(() => [(R(x) || R(w)) && !R(te) && R(T) && (!R(s).data?.user?.id || R(s).data?.user?.isAnonymous) ? (D(), q("div", q_, [R(ee) ? (D(), V(j_, {
15149
+ default: S(() => [(R(T) || R(ne)) && !R(ae) && R(ie) && (!R(s).data?.user?.id || R(s).data?.user?.isAnonymous) ? (D(), q("div", Y_, [R(E) ? (D(), V(N_, {
14727
15150
  key: 0,
14728
- "error-message": R(O),
14729
- "onUpdate:errorMessage": n[0] ||= (e) => z(O) ? O.value = e : null,
14730
- success: R(se),
14731
- "onUpdate:success": n[1] ||= (e) => z(se) ? se.value = e : null,
14732
- branding: R(w),
14733
- "auth-methods": R(ee),
14734
- loading: R(k),
14735
- onSignIn: R(A),
14736
- onSignUp: R(j),
14737
- onRequestReset: R(M),
14738
- onSocial: R(ce)
15151
+ "error-message": R(j),
15152
+ "onUpdate:errorMessage": n[0] ||= (e) => z(j) ? j.value = e : null,
15153
+ success: R(M),
15154
+ "onUpdate:success": n[1] ||= (e) => z(M) ? M.value = e : null,
15155
+ branding: R(ne),
15156
+ "auth-methods": R(E),
15157
+ loading: R(ce),
15158
+ "two-factor-methods": R(m)?.methods,
15159
+ onSignIn: R(le),
15160
+ onSignUp: R(ue),
15161
+ onRequestReset: R(de),
15162
+ onSocial: R(B),
15163
+ onVerifyTwoFactor: R(fe),
15164
+ onSendTwoFactorCode: R(pe),
15165
+ onCancelTwoFactor: R(me)
14739
15166
  }, null, 8, [
14740
15167
  "error-message",
14741
15168
  "success",
14742
15169
  "branding",
14743
15170
  "auth-methods",
14744
15171
  "loading",
15172
+ "two-factor-methods",
14745
15173
  "onSignIn",
14746
15174
  "onSignUp",
14747
15175
  "onRequestReset",
14748
- "onSocial"
14749
- ])) : (D(), V(F_, { key: 1 }))])) : I("", !0)]),
15176
+ "onSocial",
15177
+ "onVerifyTwoFactor",
15178
+ "onSendTwoFactorCode",
15179
+ "onCancelTwoFactor"
15180
+ ])) : (D(), V(L_, { key: 1 }))])) : I("", !0)]),
14750
15181
  _: 1
14751
15182
  }),
14752
15183
  J(K, {
14753
15184
  name: "fade",
14754
15185
  appear: ""
14755
15186
  }, {
14756
- default: S(() => [R(ne) && !R(te) ? (D(), q("div", J_, [J(F_)])) : I("", !0)]),
15187
+ default: S(() => [R(oe) && !R(ae) ? (D(), q("div", X_, [J(L_)])) : I("", !0)]),
14757
15188
  _: 1
14758
15189
  }),
14759
- R(x) && R(s).data && !R(te) ? (D(), V(m_, {
15190
+ R(T) && R(s).data && !R(ae) ? (D(), V(m_, {
14760
15191
  key: 2,
14761
15192
  ref_key: "chatbotEl",
14762
15193
  ref: a,
@@ -14764,12 +15195,12 @@ var K_ = {
14764
15195
  "base-url": e.baseUrl,
14765
15196
  "agent-id": e.agentId,
14766
15197
  "user-id": R(d),
14767
- name: R(x).name,
14768
- "agent-interface": R(x).interface,
14769
- "agent-file-upload": R(x).capabilities?.fileUpload,
14770
- voice: R(x).capabilities?.voice,
15198
+ name: R(T).name,
15199
+ "agent-interface": R(T).interface,
15200
+ "agent-file-upload": R(T).capabilities?.fileUpload,
15201
+ voice: R(T).capabilities?.voice,
14771
15202
  modifier: e.displayMode,
14772
- "user-name": ue.value,
15203
+ "user-name": U.value,
14773
15204
  headers: R(l),
14774
15205
  "system-theme": e.systemTheme,
14775
15206
  actions: [
@@ -14779,37 +15210,45 @@ var K_ = {
14779
15210
  "regenerate"
14780
15211
  ],
14781
15212
  "external-context": o.value,
14782
- onError: y
15213
+ onError: te
14783
15214
  }, Me({
14784
- "header-actions": S(() => [C(t.$slots, "header-actions")]),
14785
- actions: S(() => [C(t.$slots, "actions")]),
14786
- "view-auth": S(() => [J(j_, {
14787
- "error-message": R(O),
14788
- "onUpdate:errorMessage": n[2] ||= (e) => z(O) ? O.value = e : null,
14789
- success: R(se),
14790
- "onUpdate:success": n[3] ||= (e) => z(se) ? se.value = e : null,
14791
- branding: R(oe),
14792
- "auth-methods": R(ee),
14793
- loading: R(k),
14794
- onSignIn: R(A),
14795
- onSignUp: R(j),
14796
- onRequestReset: R(M),
14797
- onSocial: R(ce)
15215
+ "header-actions": S(() => [ee(t.$slots, "header-actions")]),
15216
+ actions: S(() => [ee(t.$slots, "actions")]),
15217
+ "view-auth": S(() => [J(N_, {
15218
+ "error-message": R(j),
15219
+ "onUpdate:errorMessage": n[2] ||= (e) => z(j) ? j.value = e : null,
15220
+ success: R(M),
15221
+ "onUpdate:success": n[3] ||= (e) => z(M) ? M.value = e : null,
15222
+ branding: R(A),
15223
+ "auth-methods": R(E),
15224
+ loading: R(ce),
15225
+ "two-factor-methods": R(m)?.methods,
15226
+ onSignIn: R(le),
15227
+ onSignUp: R(ue),
15228
+ onRequestReset: R(de),
15229
+ onSocial: R(B),
15230
+ onVerifyTwoFactor: R(fe),
15231
+ onSendTwoFactorCode: R(pe),
15232
+ onCancelTwoFactor: R(me)
14798
15233
  }, null, 8, [
14799
15234
  "error-message",
14800
15235
  "success",
14801
15236
  "branding",
14802
15237
  "auth-methods",
14803
15238
  "loading",
15239
+ "two-factor-methods",
14804
15240
  "onSignIn",
14805
15241
  "onSignUp",
14806
15242
  "onRequestReset",
14807
- "onSocial"
15243
+ "onSocial",
15244
+ "onVerifyTwoFactor",
15245
+ "onSendTwoFactorCode",
15246
+ "onCancelTwoFactor"
14808
15247
  ])]),
14809
15248
  _: 2
14810
- }, [Ne(le.value, (e) => ({
15249
+ }, [Ne(he.value, (e) => ({
14811
15250
  name: e,
14812
- fn: S(() => [C(t.$slots, e)])
15251
+ fn: S(() => [ee(t.$slots, e)])
14813
15252
  }))]), 1032, [
14814
15253
  "base-url",
14815
15254
  "agent-id",
@@ -14831,7 +15270,7 @@ var K_ = {
14831
15270
  //#endregion
14832
15271
  //#region src/lib.ts
14833
15272
  we();
14834
- function X_(e) {
15273
+ function Q_(e) {
14835
15274
  let { t } = Bn.global;
14836
15275
  e.use(vn()), e.use(Bn), e.provide(Ie, Bn), e.use(ir, {
14837
15276
  iconsCollections: [ar, or],
@@ -14852,16 +15291,16 @@ function X_(e) {
14852
15291
  Rr(e instanceof Error ? e : Error(String(e)), { vueInfo: n });
14853
15292
  };
14854
15293
  }
14855
- function Z_(e) {
15294
+ function $_(e) {
14856
15295
  let { styles: t } = e;
14857
15296
  return {
14858
- configureApp: X_,
15297
+ configureApp: Q_,
14859
15298
  styles: [zr, ...t ?? []]
14860
15299
  };
14861
15300
  }
14862
- var Q_ = be(G_, Z_(G_)), $_ = be(Y_, Z_(Y_));
14863
- customElements.define("floating-chat-widget", Q_), customElements.define("embedded-chat-widget", $_);
15301
+ var ev = be(q_, $_(q_)), tv = be(Z_, $_(Z_));
15302
+ customElements.define("floating-chat-widget", ev), customElements.define("embedded-chat-widget", tv);
14864
15303
  //#endregion
14865
- export { $_ as EmbeddedChatWidgetCe, Q_ as FloatingChatWidgetCe };
15304
+ export { tv as EmbeddedChatWidgetCe, ev as FloatingChatWidgetCe };
14866
15305
 
14867
15306
  //# sourceMappingURL=ai-elements.es.js.map