@camera.ui/server 2.2.5-beta.3 → 2.2.5

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 (645) hide show
  1. package/dist/interface/assets/{404-YZOLos9r.js → 404-CiOxoqnT.js} +1 -1
  2. package/dist/interface/assets/{About-HtxMc8JZ.js → About-DWOlfWEm.js} +1 -1
  3. package/dist/interface/assets/Assistant-B1xdMAkA.js +1 -0
  4. package/dist/interface/assets/{Assistant-BMscGKnc.css → Assistant-CXx7EY1W.css} +1 -1
  5. package/dist/interface/assets/{Automation-D3DcUyui.js → Automation-BJgwUkUB.js} +3 -3
  6. package/dist/interface/assets/{AutomationImport-Dp_hT6hQ.js → AutomationImport-9GRAndAt.js} +2 -2
  7. package/dist/interface/assets/{AutomationStore-BKR7GXMk.js → AutomationStore-D_HR2Xby.js} +2 -2
  8. package/dist/interface/assets/{AutomationStoreDetail-B9yh51WQ.js → AutomationStoreDetail-B9MxV2py.js} +2 -2
  9. package/dist/interface/assets/Automations-Bpw8olkc.js +2 -0
  10. package/dist/interface/assets/Camera-BpFfZDaS.js +2 -0
  11. package/dist/interface/assets/{CameraConsole-BI93OaRt.js → CameraConsole-BKPTLSTO.js} +1 -1
  12. package/dist/interface/assets/{Cameras-Ctub8sVt.js → Cameras-DcrVCgLy.js} +2 -2
  13. package/dist/interface/assets/Camview-C16pyCZk.js +1 -0
  14. package/dist/interface/assets/{Camview-CZct5cnP.css → Camview-DasO326h.css} +1 -1
  15. package/dist/interface/assets/{CertificateUpload-xW55NA1Q.js → CertificateUpload-BYFKZCP9.js} +1 -1
  16. package/dist/interface/assets/Config-BmEL5EaW.js +2 -0
  17. package/dist/interface/assets/{ConfigActionAssistant-B488rOp5.js → ConfigActionAssistant-DM4tIhoa.js} +1 -1
  18. package/dist/interface/assets/{ConfigActionCameraControl-ZMUuBxOs.js → ConfigActionCameraControl-Deo0eDPS.js} +1 -1
  19. package/dist/interface/assets/{ConfigActionDelay-BJ11xvOW.js → ConfigActionDelay-_EqbfWgo.js} +1 -1
  20. package/dist/interface/assets/{ConfigActionHttp-DOUo69OR.js → ConfigActionHttp-BxJmoshF.js} +1 -1
  21. package/dist/interface/assets/{ConfigActionImageInput-BMzuVZW9.js → ConfigActionImageInput-KrzXFQDm.js} +1 -1
  22. package/dist/interface/assets/{ConfigActionMqtt-Co_uksca.js → ConfigActionMqtt-BoYBomRC.js} +1 -1
  23. package/dist/interface/assets/{ConfigActionNotification-CcZkstYx.js → ConfigActionNotification-CSAOijDt.js} +1 -1
  24. package/dist/interface/assets/{ConfigActionNotificationControl--VeucoTw.js → ConfigActionNotificationControl-BOdyKiOs.js} +1 -1
  25. package/dist/interface/assets/{ConfigActionOutput-CyDa1LGA.js → ConfigActionOutput-CwsPcnd_.js} +1 -1
  26. package/dist/interface/assets/{ConfigActionPlugin-Kfg3ZEQF.js → ConfigActionPlugin-D3wyULpp.js} +1 -1
  27. package/dist/interface/assets/{ConfigActionSensor-DhAF0HPw.js → ConfigActionSensor-BmeaIxYY.js} +1 -1
  28. package/dist/interface/assets/{ConfigActionSnapshot-zMe3SPvW.js → ConfigActionSnapshot-DbyFKcYr.js} +1 -1
  29. package/dist/interface/assets/{ConfigActionVariable-BE5q3NwY.js → ConfigActionVariable-cThGJ1Pc.js} +1 -1
  30. package/dist/interface/assets/{ConfigConditionIfElse-BNIRtSVD.js → ConfigConditionIfElse-BugkJeXR.js} +1 -1
  31. package/dist/interface/assets/{ConfigConditionSensorState-DTNd-SzI.js → ConfigConditionSensorState-Bf-mMf4E.js} +1 -1
  32. package/dist/interface/assets/{ConfigConditionSwitch-BU5wWMU1.js → ConfigConditionSwitch-DcpFoYET.js} +1 -1
  33. package/dist/interface/assets/{ConfigConditionTime-KXTCIVIV.js → ConfigConditionTime-CM4bSMyU.js} +1 -1
  34. package/dist/interface/assets/{ConfigSensorValueInput-BC1FpMm-.js → ConfigSensorValueInput-CgAI34__.js} +1 -1
  35. package/dist/interface/assets/{ConfigTriggerDetection-hIN1hi53.js → ConfigTriggerDetection-BWK6gfwM.js} +1 -1
  36. package/dist/interface/assets/ConfigTriggerGeofence-Cm3CU7Tl.js +1 -0
  37. package/dist/interface/assets/{ConfigTriggerManual-C5vwxS-e.js → ConfigTriggerManual-DgkR-GWy.js} +1 -1
  38. package/dist/interface/assets/{ConfigTriggerMqtt-B4PtWC3E.js → ConfigTriggerMqtt-BMFjTAso.js} +1 -1
  39. package/dist/interface/assets/{ConfigTriggerSchedule-BZzUdGBa.js → ConfigTriggerSchedule-E_QWfNKy.js} +1 -1
  40. package/dist/interface/assets/{ConfigTriggerSensor-D18nwMsj.js → ConfigTriggerSensor-DOdJkZRo.js} +1 -1
  41. package/dist/interface/assets/{ConfigTriggerSystem-BhygWLB4.js → ConfigTriggerSystem-BFDIbZsE.js} +1 -1
  42. package/dist/interface/assets/{ConfigTriggerWebhook-yyuBuhLD.js → ConfigTriggerWebhook-DDoUEVHb.js} +1 -1
  43. package/dist/interface/assets/Console-BIj7cIqO.js +1 -0
  44. package/dist/interface/assets/CuiAssistantConversation-CRNCKRHz.js +5 -0
  45. package/dist/interface/assets/{CuiAssistantConversation-lkpZg3ML.css → CuiAssistantConversation-DQ0wOJvV.css} +1 -1
  46. package/dist/interface/assets/CuiAutomationRunsDialog-DMUfNcsf.js +1 -0
  47. package/dist/interface/assets/CuiBottomSheet-CYi5c3fP.js +1 -0
  48. package/dist/interface/assets/{CuiBottomSheet-DWefGWK2.js → CuiBottomSheet-FwsPnJ3n.js} +1 -1
  49. package/dist/interface/assets/{CuiCameraPipCard-C2qaGJlH.js → CuiCameraPipCard-Cb_Qbly6.js} +1 -1
  50. package/dist/interface/assets/CuiCameraRecordings-BeciatDY.js +1 -0
  51. package/dist/interface/assets/{CuiCameraShares-DcqOcePX.js → CuiCameraShares-CSFwIYsg.js} +1 -1
  52. package/dist/interface/assets/CuiCameraTable-BgL5FZso.js +1 -0
  53. package/dist/interface/assets/{CuiCameraTable-BOkfp_5M.js → CuiCameraTable-DBRfGX3I.js} +2 -2
  54. package/dist/interface/assets/{CuiChartTable-DP38uBwK.js → CuiChartTable-CtasoxMM.js} +1 -1
  55. package/dist/interface/assets/{CuiConsole-C7xE_nQg.js → CuiConsole-DQbAafiz.js} +2 -2
  56. package/dist/interface/assets/CuiDataTable-JlD7Agky.js +1 -0
  57. package/dist/interface/assets/{CuiLightControl-ChGYpQAK.js → CuiLightControl-CLYl5pfN.js} +1 -1
  58. package/dist/interface/assets/{CuiList-DJp0__mV.js → CuiList-Dsu5m0TA.js} +1 -1
  59. package/dist/interface/assets/{CuiMarkdownContent-BUYtK_wD.js → CuiMarkdownContent-BYBQX_aF.js} +1 -1
  60. package/dist/interface/assets/CuiMarkdownContent-DTAm-EDR.js +1 -0
  61. package/dist/interface/assets/{CuiPluginCard-CWImTZ6l.js → CuiPluginCard-CC1oXY16.js} +2 -2
  62. package/dist/interface/assets/{CuiPluginCategoryChip-Ch_upS6Y.js → CuiPluginCategoryChip-B2bR5LQa.js} +1 -1
  63. package/dist/interface/assets/{CuiPluginOAuthButton-DEQ9xILN.js → CuiPluginOAuthButton-DfEjfcY-.js} +2 -2
  64. package/dist/interface/assets/{CuiPluginTrustBadge-sVWdvHcM.js → CuiPluginTrustBadge-C6CW6Soh.js} +1 -1
  65. package/dist/interface/assets/{CuiQRCode-DqSF4SkD.js → CuiQRCode-DGKBhDib.js} +1 -1
  66. package/dist/interface/assets/CuiSchema-pAAVh28m.js +1 -0
  67. package/dist/interface/assets/{CuiTopNavbarItem-B_KWykgq.js → CuiTopNavbarItem-ve-3Dsc3.js} +1 -1
  68. package/dist/interface/assets/Faces-1xd5yGuO.js +1 -0
  69. package/dist/interface/assets/{FirstSteps-QNYTkEJo.js → FirstSteps-E9cMqa0a.js} +1 -1
  70. package/dist/interface/assets/Floorplan-BovV_ATh.js +1 -0
  71. package/dist/interface/assets/Instances-BbxyB7vR.js +1 -0
  72. package/dist/interface/assets/{Logs-BSPT80vP.js → Logs-BhRactvQ.js} +2 -2
  73. package/dist/interface/assets/{Menu-HHtuhIS2.js → Menu-DMCmUVDs.js} +1 -1
  74. package/dist/interface/assets/Metrics-BgXrNl38.js +12 -0
  75. package/dist/interface/assets/Metrics-ChVnC6f6.css +1 -0
  76. package/dist/interface/assets/{OAuthDeviceFlow-Bn1nlWNa.js → OAuthDeviceFlow-BMEwVkIa.js} +1 -1
  77. package/dist/interface/assets/Plugin-CDNywaVE.js +1 -0
  78. package/dist/interface/assets/Plugin-Qr_Q_Qfi.css +1 -0
  79. package/dist/interface/assets/{PluginConsole-Cv-uhnPY.js → PluginConsole-C4Ba_U_1.js} +1 -1
  80. package/dist/interface/assets/{PluginDetail-cpOz7FkA.js → PluginDetail-13OWIzdd.js} +2 -2
  81. package/dist/interface/assets/{PluginSchema-DW3TGeTM.js → PluginSchema-DN0cSU8s.js} +1 -1
  82. package/dist/interface/assets/PluginSearch-sPkO8aH3.js +2 -0
  83. package/dist/interface/assets/PluginSearch-xNIlfXk4.js +1 -0
  84. package/dist/interface/assets/{PluginUpdateProgress-n6q6vzyd.js → PluginUpdateProgress-CeWuRp3Z.js} +1 -1
  85. package/dist/interface/assets/Plugins-C8yjhxnQ.js +1 -0
  86. package/dist/interface/assets/{RecentEventsFilter-CTR5JK_P.js → RecentEventsFilter-Kp_lTOuG.js} +1 -1
  87. package/dist/interface/assets/Recordings-BHT8Vvv_.js +1 -0
  88. package/dist/interface/assets/Recordings-DwuojaAw.css +1 -0
  89. package/dist/interface/assets/SensorEdit-C-yJdJuP.js +1 -0
  90. package/dist/interface/assets/{SensorHistory-9CdOpCPs.js → SensorHistory-ClAcOgHj.js} +1 -1
  91. package/dist/interface/assets/Sensors-Cza4Et2c.js +2 -0
  92. package/dist/interface/assets/Settings-Cj0leoGd.js +1 -0
  93. package/dist/interface/assets/SettingsAccount-COkcBBSz.js +1 -0
  94. package/dist/interface/assets/SettingsAccount-DjrJdssy.js +1 -0
  95. package/dist/interface/assets/{SettingsAppearance-BY1xQMx4.js → SettingsAppearance-CJt4xJEW.js} +1 -1
  96. package/dist/interface/assets/SettingsAppearance-D20YW7Vq.js +1 -0
  97. package/dist/interface/assets/SettingsAssistant-CDdbbG-c.css +1 -0
  98. package/dist/interface/assets/SettingsAssistant-DKWDp1AI.js +1 -0
  99. package/dist/interface/assets/{SettingsBackup-D_weokqu.js → SettingsBackup-DIJmci05.js} +1 -1
  100. package/dist/interface/assets/{SettingsList-Bq24WTDU.js → SettingsList-Cb_dLy5T.js} +1 -1
  101. package/dist/interface/assets/SettingsMqtt-LIuCRPT5.js +1 -0
  102. package/dist/interface/assets/{SettingsNotifications-8TZOUxg2.js → SettingsNotifications-CZxqqH_8.js} +1 -1
  103. package/dist/interface/assets/{SettingsPermissions-M8u_jrN0.js → SettingsPermissions-CJiz0Z7B.js} +1 -1
  104. package/dist/interface/assets/{SettingsRecordings-C1Kp5xW_.js → SettingsRecordings-BEpwMh-y.js} +1 -1
  105. package/dist/interface/assets/SettingsRemote-DRt-N_yA.js +2 -0
  106. package/dist/interface/assets/{SettingsSystem-Cetu2faJ.js → SettingsSystem-Cncdpx8T.js} +2 -2
  107. package/dist/interface/assets/{SettingsUsers-CDwtQLdV.js → SettingsUsers-DZkz8WlI.js} +1 -1
  108. package/dist/interface/assets/Terminal-U4yfJN3O.js +4 -0
  109. package/dist/interface/assets/Training-Bkn52mPJ.css +1 -0
  110. package/dist/interface/assets/Training-DfgE_dA8.js +1 -0
  111. package/dist/interface/assets/Updates-cCvbFq3w.js +2 -0
  112. package/dist/interface/assets/{VariableInput-BxPj5wo6.js → VariableInput-PVsqGYW0.js} +1 -1
  113. package/dist/interface/assets/{VariableSuggestions-CbizvAkz.js → VariableSuggestions-DwLtlzVz.js} +1 -1
  114. package/dist/interface/assets/{VersionsHandler-CePyEUVO.js → VersionsHandler-Df7dhddp.js} +2 -2
  115. package/dist/interface/assets/{VirtualSensorCreate-D_GVoeL7.js → VirtualSensorCreate-FTKANjd-.js} +1 -1
  116. package/dist/interface/assets/Workers-Ba37_3cY.js +2 -0
  117. package/dist/interface/assets/{account-Bu30He0P.js → account-DwW7pBOb.js} +1 -1
  118. package/dist/interface/assets/{alert-circle-D2fAQwTX.js → alert-circle-BdUVAt1B.js} +1 -1
  119. package/dist/interface/assets/{alert-outline-D7zaSJH_.js → alert-outline-IRxYbw0j.js} +1 -1
  120. package/dist/interface/assets/api-C1mraOYr.js +4 -0
  121. package/dist/interface/assets/{api-DW2niHRN.js → api-DpqXhwcx.js} +1 -1
  122. package/dist/interface/assets/api-z8ZVnoOl.css +2 -0
  123. package/dist/interface/assets/{arrow-left-BGLyEqqa.js → arrow-left-Bk-ZrOVr.js} +1 -1
  124. package/dist/interface/assets/assistant-Lz3mFLDo.js +1 -0
  125. package/dist/interface/assets/{assistantModels-D0soYqq7.js → assistantModels-BsSgRsws.js} +1 -1
  126. package/dist/interface/assets/{auth-Dc8bUpc-.js → auth-L7_5vsJs.js} +1 -1
  127. package/dist/interface/assets/{automations-DXrjbArj.js → automations-D1XFFSrm.js} +1 -1
  128. package/dist/interface/assets/{back-filled-BPBVnQjx.js → back-filled-D-X19YMO.js} +1 -1
  129. package/dist/interface/assets/{bell-ring-CyCFPUL_.js → bell-ring-DreEHgoT.js} +1 -1
  130. package/dist/interface/assets/{brain-CIJB1ree.js → brain-DuDAg544.js} +1 -1
  131. package/dist/interface/assets/{cameraSources-QJfUDOQJ.js → cameraSources-DEGJDtmK.js} +1 -1
  132. package/dist/interface/assets/{cctv-D6kxZ-lp.js → cctv-DM-C_8_6.js} +1 -1
  133. package/dist/interface/assets/{check-circle-DHAAn6A6.js → check-circle-Bevuw8-0.js} +1 -1
  134. package/dist/interface/assets/{check-circle-outline-BbqeKfIK.js → check-circle-outline-aMxkvksr.js} +1 -1
  135. package/dist/interface/assets/{chevron-down-ZYTrU871.js → chevron-down-CCFn9Z56.js} +1 -1
  136. package/dist/interface/assets/{chevron-up-LQXNz9CE.js → chevron-up-CSImUM3_.js} +1 -1
  137. package/dist/interface/assets/{clock-outline-CKTiLKoR.js → clock-outline-DH3WIEJt.js} +1 -1
  138. package/dist/interface/assets/{close-BbEPZQqa.js → close-CMxyM4v9.js} +1 -1
  139. package/dist/interface/assets/{close-circle-BSUSUs4K.js → close-circle-CfgJCZ9A.js} +1 -1
  140. package/dist/interface/assets/{cloud-check-BTGbrAQ_.js → cloud-check-CbdFLIdR.js} +1 -1
  141. package/dist/interface/assets/cloudHandoff-DkUx4m3P.js +1 -0
  142. package/dist/interface/assets/{config-CiQDwB4t.js → config-CVqy37fG.js} +1 -1
  143. package/dist/interface/assets/{content-copy-V0DW9ZbH.js → content-copy-Bz49QPOI.js} +1 -1
  144. package/dist/interface/assets/{copy-DsmMEtSH.js → copy-DA6QQHRt.js} +1 -1
  145. package/dist/interface/assets/{cube-scan-DGhUFV1x.js → cube-scan-IiH8zwm2.js} +1 -1
  146. package/dist/interface/assets/database-refresh-outline-CIUDpcuq.js +1 -0
  147. package/dist/interface/assets/{delete-CY8fsIW6.js → delete-Btu-UVx9.js} +1 -1
  148. package/dist/interface/assets/{dist-DNyx_J8o.js → dist-D_qWDAKp.js} +1 -1
  149. package/dist/interface/assets/{dots-vertical-pP1vP0Qa.js → dots-vertical-D496SIss.js} +1 -1
  150. package/dist/interface/assets/{download-CyjJ7yJW.js → download-BSC7lwq_.js} +1 -1
  151. package/dist/interface/assets/esm-0kxqa_1s.js +1 -0
  152. package/dist/interface/assets/esm-4p_M5mFV.js +1 -0
  153. package/dist/interface/assets/esm-8G-vO1KQ.js +1 -0
  154. package/dist/interface/assets/esm-8cB56ICb.js +1 -0
  155. package/dist/interface/assets/esm-B92csSEb.js +1 -0
  156. package/dist/interface/assets/esm-BHiNTIiN.js +1 -0
  157. package/dist/interface/assets/esm-Bu9PMLmw.js +1 -0
  158. package/dist/interface/assets/esm-CS6Ra46d.js +1 -0
  159. package/dist/interface/assets/esm-CWvQWALL.js +1 -0
  160. package/dist/interface/assets/esm-D2UDrwmt.js +1 -0
  161. package/dist/interface/assets/esm-D8OHF2X1.js +1 -0
  162. package/dist/interface/assets/esm-DrXkS8eG.js +1 -0
  163. package/dist/interface/assets/esm-pfoHiO1a.js +1 -0
  164. package/dist/interface/assets/esm-tJSCF7Vh.js +1 -0
  165. package/dist/interface/assets/{eventIcons-cdzqQc0W.js → eventIcons-UQutPG3p.js} +1 -1
  166. package/dist/interface/assets/{eye-off-JCu1iUer.js → eye-off-CSU0U8g7.js} +1 -1
  167. package/dist/interface/assets/{eye-off-outline-GErp76H2.js → eye-off-outline-DCxLRGo_.js} +1 -1
  168. package/dist/interface/assets/{flowSchema-BRTZHQ1w.js → flowSchema-CppNBDy1.js} +1 -1
  169. package/dist/interface/assets/{help-circle-outline-G43EJuch.js → help-circle-outline-Cr_yNhPi.js} +1 -1
  170. package/dist/interface/assets/{history-CNJREqJG.js → history-anuCbp1T.js} +1 -1
  171. package/dist/interface/assets/{home-B-_OQpZ6.js → home-N3bDR1vX.js} +1 -1
  172. package/dist/interface/assets/{information-outline-Blt4EtWJ.js → information-outline-CMWIvLNB.js} +1 -1
  173. package/dist/interface/assets/{intercomService-BnA-FQ0Q.js → intercomService-CjoJaOZ7.js} +1 -1
  174. package/dist/interface/assets/{lan-C3jliANx.js → lan-CYXjdk7L.js} +1 -1
  175. package/dist/interface/assets/main-BK3kmiG2.js +3 -0
  176. package/dist/interface/assets/{main-BoGhBedC.css → main-Bo0Lb1y2.css} +1 -1
  177. package/dist/interface/assets/{microphone-B6xc9JQ2.js → microphone-BB2pATI_.js} +1 -1
  178. package/dist/interface/assets/{minus-BI5qXFwJ.js → minus-BCp3ZNKO.js} +1 -1
  179. package/dist/interface/assets/{mqtt-iD9XHYO_.js → mqtt-BENV9Fx4.js} +1 -1
  180. package/dist/interface/assets/native-BEkWOGyD.js +1 -0
  181. package/dist/interface/assets/native-ugMg173F.js +1 -0
  182. package/dist/interface/assets/{nodeDefinitions-Dop49tx8.js → nodeDefinitions-ByrqsENY.js} +1 -1
  183. package/dist/interface/assets/{notifications-CbAJX7RF.js → notifications-By40oPng.js} +1 -1
  184. package/dist/interface/assets/{pause-DKzvPG2b.js → pause-BQlxwAW2.js} +1 -1
  185. package/dist/interface/assets/{pencil-DKbi9SsG.js → pencil-CDsNnEXi.js} +1 -1
  186. package/dist/interface/assets/{pencil-outline-CD3Xv98d.js → pencil-outline-CIQL5Kui.js} +1 -1
  187. package/dist/interface/assets/plugin-eafNQWg2.js +1 -0
  188. package/dist/interface/assets/{plugins-eIUrXNeM.js → plugins-09rEDbMz.js} +1 -1
  189. package/dist/interface/assets/{plus-CHPYoMO_.js → plus-Bp4q9G7S.js} +1 -1
  190. package/dist/interface/assets/{plus--kDl8ben.js → plus-CySoovdr.js} +1 -1
  191. package/dist/interface/assets/{power-C9wmNlFS.js → power-WmBLDR0-.js} +1 -1
  192. package/dist/interface/assets/{radar-B3ra28GD.js → radar-CyYAmume.js} +1 -1
  193. package/dist/interface/assets/{refresh-DfqyhMOh.js → refresh-CHTA3jVN.js} +1 -1
  194. package/dist/interface/assets/{restore-FMacmqd_.js → restore-C8RNM5yX.js} +1 -1
  195. package/dist/interface/assets/{rooms-BqPyo8jc.js → rooms-LBxn-Uuu.js} +1 -1
  196. package/dist/interface/assets/{round-alt-arrow-left-bold-56eF9Bol.js → round-alt-arrow-left-bold-Gh5mi_yR.js} +1 -1
  197. package/dist/interface/assets/{search-BXbDWhLk.js → search-BajCVmOI.js} +1 -1
  198. package/dist/interface/assets/sensorIcons-Csu5s0uk.js +1 -0
  199. package/dist/interface/assets/{sensorSlots-BZCXtnb6.js → sensorSlots-CtbKmsGG.js} +1 -1
  200. package/dist/interface/assets/{sensors-DttBNEEt.js → sensors-CbzNs18A.js} +1 -1
  201. package/dist/interface/assets/{server-DUFhf2c_.js → server-Btp5KILd.js} +1 -1
  202. package/dist/interface/assets/{settings-Cw63SIJl.js → settings-DnksaK7m.js} +1 -1
  203. package/dist/interface/assets/{source-branch-oyzrlfCD.js → source-branch-CzqIPffP.js} +1 -1
  204. package/dist/interface/assets/{theme-BMmjtQ4w.js → theme-GhzGwpqd.js} +1 -1
  205. package/dist/interface/assets/{trash-2-BQc04l9M.js → trash-2-DJeEhHf4.js} +1 -1
  206. package/dist/interface/assets/{trash-can-outline-Bk5eENNM.js → trash-can-outline-DrT6iw7I.js} +1 -1
  207. package/dist/interface/assets/{trash-fill-CXk8BmtF.js → trash-fill-Bb_-UicM.js} +1 -1
  208. package/dist/interface/assets/{trash2-2rUvghml.js → trash2-Dsl8gfxq.js} +1 -1
  209. package/dist/interface/assets/types-BAwhu9iv.js +1 -0
  210. package/dist/interface/assets/{types-DWTSNJ79.js → types-CklFkUXk.js} +1 -1
  211. package/dist/interface/assets/{types-CXw7CEzu.js → types-D8QWPhe-.js} +1 -1
  212. package/dist/interface/assets/{undo-Dcf7vcsv.js → undo-DoqJW-k7.js} +1 -1
  213. package/dist/interface/assets/ungrouped-BMk56E3L.js +1 -0
  214. package/dist/interface/assets/{ungrouped-DHMJ9Rg1.css → ungrouped-BnQIcSQd.css} +1 -1
  215. package/dist/interface/assets/{updates-TIPWXKzL.js → updates-CGo0T4sn.js} +1 -1
  216. package/dist/interface/assets/{upload-nnbfDypK.js → upload-C3w1XH-o.js} +1 -1
  217. package/dist/interface/assets/{upload-B-ZYPekV.js → upload-DtIcwiNC.js} +1 -1
  218. package/dist/interface/assets/{useAppVersion-BIz44Bg4.js → useAppVersion-CJlexqyz.js} +1 -1
  219. package/dist/interface/assets/{useAssistantActions-CLkkw9kB.js → useAssistantActions-Cc_O6M9_.js} +1 -1
  220. package/dist/interface/assets/useBackupRestore-_s8vS5WF.js +1 -0
  221. package/dist/interface/assets/{useCameraOptions-A97teAIr.js → useCameraOptions-CFISVNgk.js} +1 -1
  222. package/dist/interface/assets/{useKeyboardInset-DXVi1dLG.js → useKeyboardInset-DkUn62i7.js} +1 -1
  223. package/dist/interface/assets/{useLogsSocket-BlFxVXjF.js → useLogsSocket-D-ndWAg0.js} +1 -1
  224. package/dist/interface/assets/{useNavLayout-C5obaCNv.js → useNavLayout-CG0X_3kt.js} +1 -1
  225. package/dist/interface/assets/{usePermissions-C8hB_pG1.js → usePermissions-BXTw4tII.js} +1 -1
  226. package/dist/interface/assets/{usePluginUpdates-DO0-Gk4Q.js → usePluginUpdates-nW_dt66E.js} +1 -1
  227. package/dist/interface/assets/{usePushRegistration-BUttCraQ.js → usePushRegistration-DCqOAxR4.js} +2 -2
  228. package/dist/interface/assets/{useServerRestart-Cz9eVHUE.js → useServerRestart-CxJGxAcU.js} +1 -1
  229. package/dist/interface/assets/{useStreamStatus-BhS_MCCB.js → useStreamStatus-CXb1HbAq.js} +1 -1
  230. package/dist/interface/assets/{useTabSwipe-D4k8lm1M.js → useTabSwipe-DHb8__wU.js} +1 -1
  231. package/dist/interface/assets/{useUpdateChannel-D9lhfW0y.js → useUpdateChannel-BR4PMh1R.js} +1 -1
  232. package/dist/interface/assets/{useUpdatesSocket-DnH9sON5.js → useUpdatesSocket-DKDRZhvc.js} +1 -1
  233. package/dist/interface/assets/useUserOptions-lyc4WJ4L.js +1 -0
  234. package/dist/interface/assets/{variable-CcE0ZwTr.js → variable-ywTlRfo5.js} +1 -1
  235. package/dist/interface/assets/{vendor-cameraui-QXD8jkcj.js → vendor-cameraui-CK4yHsJi.js} +45 -45
  236. package/dist/interface/assets/{vendor-capacitor-COL6Kz75.js → vendor-capacitor-f9ShAzys.js} +2 -2
  237. package/dist/interface/assets/{vendor-chart-80wrH3md.js → vendor-chart-DBK083Hu.js} +1 -1
  238. package/dist/interface/assets/{vendor-core-CnhnyKDl.js → vendor-core-B-Q4es-f.js} +1 -1
  239. package/dist/interface/assets/{vendor-dnd-CEJS9JKU.js → vendor-dnd-DGQLvX6Y.js} +1 -1
  240. package/dist/interface/assets/{vendor-draggabilly-BY7O1F_Z.js → vendor-draggabilly-D8CK6M-y.js} +1 -1
  241. package/dist/interface/assets/{vendor-DGke_6M4.js → vendor-gFkr2qsZ.js} +1 -1
  242. package/dist/interface/assets/vendor-gridstack-DtDG3os6.js +3 -0
  243. package/dist/interface/assets/{vendor-markdown-DD4teg2u.js → vendor-markdown-qHIinIUE.js} +1 -1
  244. package/dist/interface/assets/{vendor-primevue-CCUqY55W.js → vendor-primevue-Cmp3VjIC.js} +72 -72
  245. package/dist/interface/assets/{vendor-vueflow-Bmwd2les.js → vendor-vueflow-bSwRZ9X8.js} +1 -1
  246. package/dist/interface/assets/web-3OOGlctS.js +1 -0
  247. package/dist/interface/assets/web-5NFVd9gs.js +1 -0
  248. package/dist/interface/assets/web-A4yovlXr.js +1 -0
  249. package/dist/interface/assets/web-BBC3YoWX.js +1 -0
  250. package/dist/interface/assets/web-B_9Qyt8E.js +1 -0
  251. package/dist/interface/assets/web-BjKL51lK-DUIsII0n.js +1 -0
  252. package/dist/interface/assets/web-C2-YAfsx.js +1 -0
  253. package/dist/interface/assets/web-CUL_MhvM.js +1 -0
  254. package/dist/interface/assets/web-CZVCXYLV.js +1 -0
  255. package/dist/interface/assets/web-DJ-LUxlV.js +1 -0
  256. package/dist/interface/assets/web-DNsEGLGS.js +1 -0
  257. package/dist/interface/assets/web-DZsU0QT_.js +1 -0
  258. package/dist/interface/assets/web-MoyOTbiU.js +1 -0
  259. package/dist/interface/assets/web-avRH_3t7.js +1 -0
  260. package/dist/interface/assets/{webhook-oVbP79Yk.js → webhook-CWKf2Qxu.js} +1 -1
  261. package/dist/interface/assets/workbox-window.prod.es5-BEYAF-e-.js +1 -0
  262. package/dist/interface/assets/{zoom-in-GKNy8xA7.js → zoom-in-CHkXAWHy.js} +1 -1
  263. package/dist/interface/ha/{404-DLhJqxRl.js → 404-B2T8Gktj.js} +1 -1
  264. package/dist/interface/ha/{About-DC0i1iE4.js → About-CrTKzU9_.js} +6 -6
  265. package/dist/interface/ha/{Assistant-BmazMPIg.js → Assistant-BDHJmYx_.js} +823 -820
  266. package/dist/interface/ha/{Automation-gabF9YzQ.js → Automation-Czo5EsAg.js} +337 -337
  267. package/dist/interface/ha/{AutomationImport-DaqZNs9s.js → AutomationImport-CuFAQbiX.js} +6 -6
  268. package/dist/interface/ha/{AutomationStore-DzM4huo5.js → AutomationStore-D-6x0JIt.js} +16 -16
  269. package/dist/interface/ha/{AutomationStoreDetail-CpzQMt_D.js → AutomationStoreDetail-Dad4q1MN.js} +19 -19
  270. package/dist/interface/ha/{Automations-Dcm4Us50.js → Automations-C-oGM5SR.js} +71 -71
  271. package/dist/interface/ha/{Camera-CNK3QR7l.js → Camera-CerkQGbZ.js} +214 -214
  272. package/dist/interface/ha/{CameraConsole-CpcF0411.js → CameraConsole-hRGwbjsD.js} +3 -3
  273. package/dist/interface/ha/{Cameras-Cf9rwRyf.js → Cameras-Bk5TFXA8.js} +92 -92
  274. package/dist/interface/ha/{Camview-BFKR2t6C.js → Camview-CsKKqxxY.js} +382 -382
  275. package/dist/interface/ha/{Config-1XH3zfr2.js → Config-Vl4-K3A_.js} +11 -11
  276. package/dist/interface/ha/{ConfigActionAssistant-C0-NFoTB.js → ConfigActionAssistant-OWUX8glZ.js} +4 -4
  277. package/dist/interface/ha/{ConfigActionCameraControl-DNSKZPSZ.js → ConfigActionCameraControl-DEaOot8w.js} +3 -3
  278. package/dist/interface/ha/{ConfigActionHttp-DVJAcGkl.js → ConfigActionHttp-CSr2BpKL.js} +2 -2
  279. package/dist/interface/ha/{ConfigActionImageInput-VVbHHHZs.js → ConfigActionImageInput--O8Tyca-.js} +1 -1
  280. package/dist/interface/ha/{ConfigActionMqtt-N5OUJDzM.js → ConfigActionMqtt-DQJ4-gs2.js} +4 -4
  281. package/dist/interface/ha/{ConfigActionNotification-s142tQoU.js → ConfigActionNotification-wR8CCA_T.js} +3 -3
  282. package/dist/interface/ha/{ConfigActionNotificationControl-Dh7kaKVP.js → ConfigActionNotificationControl-DNMrHwPz.js} +2 -2
  283. package/dist/interface/ha/{ConfigActionOutput-B4HHTg5C.js → ConfigActionOutput-C-LVFxFP.js} +1 -1
  284. package/dist/interface/ha/{ConfigActionPlugin-D20G2Dqf.js → ConfigActionPlugin-BCREAkNo.js} +5 -5
  285. package/dist/interface/ha/{ConfigActionSensor-BS3jrFaG.js → ConfigActionSensor-D48CQ6qR.js} +5 -5
  286. package/dist/interface/ha/{ConfigActionSnapshot-CInLAcwK.js → ConfigActionSnapshot-DpDy88Mg.js} +2 -2
  287. package/dist/interface/ha/{ConfigActionVariable-C5vADGNF.js → ConfigActionVariable-D9BxmwvB.js} +1 -1
  288. package/dist/interface/ha/{ConfigConditionIfElse-CPeWDD31.js → ConfigConditionIfElse-CW42tQFY.js} +3 -3
  289. package/dist/interface/ha/{ConfigConditionSensorState-BM5GmpN6.js → ConfigConditionSensorState-BZpij7kB.js} +4 -4
  290. package/dist/interface/ha/{ConfigConditionSwitch-Dmz9FduJ.js → ConfigConditionSwitch-DlTuJ9Sf.js} +5 -5
  291. package/dist/interface/ha/{ConfigSensorValueInput-Ch5njvtv.js → ConfigSensorValueInput-2QLHESlE.js} +5 -5
  292. package/dist/interface/ha/{ConfigTriggerDetection-BR2QWNyO.js → ConfigTriggerDetection-DPmUkmUJ.js} +3 -3
  293. package/dist/interface/ha/{ConfigTriggerGeofence-CaImOjyW.js → ConfigTriggerGeofence--T9OXhGl.js} +2 -2
  294. package/dist/interface/ha/{ConfigTriggerMqtt-DWz1XwZQ.js → ConfigTriggerMqtt-fZn_X6yY.js} +1 -1
  295. package/dist/interface/ha/{ConfigTriggerSensor-lfnhz0im.js → ConfigTriggerSensor-_3O6iBFX.js} +1 -1
  296. package/dist/interface/ha/{ConfigTriggerSystem-CwUhyFAj.js → ConfigTriggerSystem-CC9lqi8Q.js} +2 -2
  297. package/dist/interface/ha/{ConfigTriggerWebhook-J6Xts7GQ.js → ConfigTriggerWebhook-BuBcgXqf.js} +1 -1
  298. package/dist/interface/ha/{Console-BSdKFm6Y.js → Console-DNc49UEt.js} +13 -13
  299. package/dist/interface/ha/{CuiAutomationRunsDialog-BU8sympp.js → CuiAutomationRunsDialog-Dj_iiZht.js} +2 -2
  300. package/dist/interface/ha/{CuiBottomSheet-Bnp7ta7V.js → CuiBottomSheet-DG7wOV7m.js} +1 -1
  301. package/dist/interface/ha/{CuiCameraRecordings-E-mMqKSs.js → CuiCameraRecordings-BlOZTfQ4.js} +12 -12
  302. package/dist/interface/ha/{CuiCameraShares-DcNwd2OC.js → CuiCameraShares-BOn-mobi.js} +2 -2
  303. package/dist/interface/ha/{CuiCameraTable-DNW9Vm_A.js → CuiCameraTable-D50FLiK8.js} +9 -9
  304. package/dist/interface/ha/{CuiChartTable-muC7jL2H.js → CuiChartTable-CfcVRvdZ.js} +42 -42
  305. package/dist/interface/ha/{CuiConsole-ND8bcuTg.js → CuiConsole-UpN0Wihm.js} +6 -6
  306. package/dist/interface/ha/{CuiDataTable-CN4T8DgP.js → CuiDataTable-CpADXKNF.js} +6 -6
  307. package/dist/interface/ha/{CuiPluginCard-nIQiyQvH.js → CuiPluginCard-CT6ZfL9o.js} +52 -52
  308. package/dist/interface/ha/{CuiPluginOAuthButton-FJ49NfUh.js → CuiPluginOAuthButton-BJVKd6Ac.js} +6 -6
  309. package/dist/interface/ha/{CuiPluginTrustBadge-D6eanMyI.js → CuiPluginTrustBadge-gb9GI24w.js} +3 -3
  310. package/dist/interface/ha/{CuiQRCode-BdJzeeoE.js → CuiQRCode-DqKDx9zR.js} +7 -7
  311. package/dist/interface/ha/{CuiSchema-DY0V-8xP.js → CuiSchema-CHeJkx0k.js} +129 -129
  312. package/dist/interface/ha/{CuiTopNavbarItem-DT5pAKHp.js → CuiTopNavbarItem-CFeI6ZYU.js} +5 -5
  313. package/dist/interface/ha/Faces-CTfvhhCj.js +1441 -0
  314. package/dist/interface/ha/{FirstSteps-yS2M2cor.js → FirstSteps-C-WXJ8IL.js} +80 -80
  315. package/dist/interface/ha/{Floorplan-DSOeScjI.js → Floorplan-CDKTYN7B.js} +307 -307
  316. package/dist/interface/ha/{Instances-B4h5EKpF.js → Instances-n23yvN3L.js} +62 -62
  317. package/dist/interface/ha/{Logs-BH0Lxvs6.js → Logs-Dfm0BWOQ.js} +10 -10
  318. package/dist/interface/ha/{Menu-COH7QXuE.js → Menu-76kvdAEF.js} +15 -15
  319. package/dist/interface/ha/{Metrics-BtnRqL_I.js → Metrics-lnivlTWm.js} +101 -100
  320. package/dist/interface/ha/{OAuthDeviceFlow-D2QJ9MnP.js → OAuthDeviceFlow-4ChaymHu.js} +7 -7
  321. package/dist/interface/ha/{Plugin-EfUSqwyh.js → Plugin-BV8YA8aN.js} +486 -347
  322. package/dist/interface/ha/{PluginConsole-hh_o15f7.js → PluginConsole-csf1Km7f.js} +4 -4
  323. package/dist/interface/ha/{PluginDetail-DFiXGkrY.js → PluginDetail-DTff6cbA.js} +185 -185
  324. package/dist/interface/ha/{PluginSearch-Cdrfubrj.js → PluginSearch-CdjxmFPN.js} +116 -116
  325. package/dist/interface/ha/{PluginUpdateProgress-BD2g2kVj.js → PluginUpdateProgress-ClyF4pbA.js} +3 -3
  326. package/dist/interface/ha/{Plugins-qFiHW-Nk.js → Plugins-_xOrqP36.js} +34 -34
  327. package/dist/interface/ha/{RecentEventsFilter-UWrXnvfq.js → RecentEventsFilter-9ZkDHD1g.js} +1 -1
  328. package/dist/interface/ha/{Recordings-BzeC6tOz.js → Recordings-dTZv0pkp.js} +483 -458
  329. package/dist/interface/ha/{SensorEdit-BSgy7lkZ.js → SensorEdit-DDRkZjmm.js} +40 -40
  330. package/dist/interface/ha/{SensorHistory-IDvP8LKH.js → SensorHistory-DSGlRITr.js} +2 -2
  331. package/dist/interface/ha/{Sensors-Diqp4oZ0.js → Sensors-DjhGRUzM.js} +477 -462
  332. package/dist/interface/ha/{Settings-BgDsxAlx.js → Settings-DYuvz4de.js} +17 -17
  333. package/dist/interface/ha/{SettingsAccount-DBXMQPYk.js → SettingsAccount-DQAo8SnK.js} +146 -146
  334. package/dist/interface/ha/{SettingsAppearance-VmbjnT3o.js → SettingsAppearance-_tbhpUA0.js} +8 -8
  335. package/dist/interface/ha/{SettingsAssistant-C2R4ZetE.js → SettingsAssistant-DSf-dYuD.js} +656 -533
  336. package/dist/interface/ha/{SettingsBackup-BqY9TwYn.js → SettingsBackup-wLOa7xtw.js} +40 -40
  337. package/dist/interface/ha/{SettingsList-CzHcfo2N.js → SettingsList-CYujivw5.js} +4 -4
  338. package/dist/interface/ha/{SettingsMqtt-DqV3h3Ow.js → SettingsMqtt-DbxJ-h3J.js} +115 -115
  339. package/dist/interface/ha/{SettingsNotifications-yn5fIR_7.js → SettingsNotifications-DO2-KJvq.js} +118 -118
  340. package/dist/interface/ha/{SettingsRecordings-DDs1lyfY.js → SettingsRecordings-C47i1UhI.js} +9 -9
  341. package/dist/interface/ha/{SettingsRemote-jBw3l5E0.js → SettingsRemote-BPvb-KLI.js} +335 -335
  342. package/dist/interface/ha/{SettingsSystem-BOv9hNlk.js → SettingsSystem-BJPrv9JE.js} +9 -9
  343. package/dist/interface/ha/{SettingsUsers-Biv-2F4C.js → SettingsUsers-CcpCz6Y1.js} +89 -89
  344. package/dist/interface/ha/{Terminal-CmcrGEV0.js → Terminal-DT7-WNH1.js} +16 -16
  345. package/dist/interface/ha/Training-CqGBf8k1.js +1694 -0
  346. package/dist/interface/ha/{Updates-DJAcmDQJ.js → Updates-CgdrqX6R.js} +13 -13
  347. package/dist/interface/ha/{VariableInput-DlYg7t0m.js → VariableInput-DOzSFgxT.js} +1 -1
  348. package/dist/interface/ha/{VersionsHandler-UnrAWn-b.js → VersionsHandler-ItklhE2t.js} +10 -10
  349. package/dist/interface/ha/{VirtualSensorCreate-CssxeaCC.js → VirtualSensorCreate-DbS3VqHC.js} +2 -2
  350. package/dist/interface/ha/{Workers-CLpqLugC.js → Workers-6PU7yUv1.js} +36 -36
  351. package/dist/interface/ha/{api-BP7mlzjP.js → api-Dv3Lk_g5.js} +8832 -8608
  352. package/dist/interface/ha/{api-B_tDa73J.js → api-anWolhVj.js} +3 -3
  353. package/dist/interface/ha/{assistant-Cb6ACguQ.js → assistant-B3m0Kgev.js} +101 -97
  354. package/dist/interface/ha/{auth-DOYDRgFm.js → auth-CAkpM_7A.js} +33 -33
  355. package/dist/interface/ha/{automationBlueprint-CbbG_ku4.js → automationBlueprint-DwVvbKbw.js} +4 -4
  356. package/dist/interface/ha/cameraui-cards.js +1 -1
  357. package/dist/interface/ha/{cards-BpBP1zVW.js → cards-B0qagpBw.js} +743 -667
  358. package/dist/interface/ha/{config-DroY1HBs.js → config-C20itAPE.js} +14 -14
  359. package/dist/interface/ha/database-refresh-outline-PiqlCkA7.js +19 -0
  360. package/dist/interface/ha/{dist-BTp4AyuI.js → dist-BIngHzHx.js} +5 -5
  361. package/dist/interface/ha/{dist-C6MBHJhs.js → dist-oFWkn6pD.js} +5 -8
  362. package/dist/interface/ha/{mqtt-NJTVdd53.js → mqtt-C6JvkA5E.js} +14 -14
  363. package/dist/interface/ha/{notifications-BPTvvgvv.js → notifications-gLmNZxwZ.js} +19 -19
  364. package/dist/interface/ha/{pinia-C6gt7A_Q.js → pinia-Du8AM917.js} +639 -625
  365. package/dist/interface/ha/{plugins-B29K3nQP.js → plugins-6x0kBuQb.js} +53 -53
  366. package/dist/interface/ha/{rooms-DLw0WUy_.js → rooms-C-mLT6mX.js} +11 -11
  367. package/dist/interface/ha/{server-B4b5_Ecu.js → server-DuikIt69.js} +28 -28
  368. package/dist/interface/ha/{types-DJHHL7nn.js → types-C0NcQ4Cz.js} +49 -38
  369. package/dist/interface/ha/{types-XqA3YJPD.js → types-wLECk3Ml.js} +3 -1
  370. package/dist/interface/ha/{ungrouped-xyK1QrsM.js → ungrouped-ooCH0Izh.js} +120 -120
  371. package/dist/interface/ha/{updates-XFSu9Tfm.js → updates-H8MlOQLC.js} +36 -36
  372. package/dist/interface/ha/{useAppVersion-BH3rU1zz.js → useAppVersion-DAUCV_cn.js} +1 -1
  373. package/dist/interface/ha/{useLogsSocket-CaTRzvgU.js → useLogsSocket-BOLAXPuD.js} +1 -1
  374. package/dist/interface/ha/{useNavLayout-DV0_OQx0.js → useNavLayout-B7VoHzM1.js} +2 -2
  375. package/dist/interface/ha/{useServerRestart-C8tynLUf.js → useServerRestart-qSH0bqwY.js} +1 -1
  376. package/dist/interface/ha/{useTabSwipe-CFoLDp3j.js → useTabSwipe-DYzG_gVG.js} +1 -1
  377. package/dist/interface/ha/{useUpdateChannel-DSG2RTPe.js → useUpdateChannel-CK7JiWbG.js} +2 -2
  378. package/dist/interface/ha/{useUpdatesSocket-CSQ0g7-6.js → useUpdatesSocket-DrqkGMuR.js} +1 -1
  379. package/dist/interface/ha/{useUserOptions-CFaCy6L1.js → useUserOptions-BteVUdaT.js} +1 -1
  380. package/dist/interface/index.html +70 -70
  381. package/dist/interface/sw.js +1 -1
  382. package/dist/server/package.json +28 -28
  383. package/dist/server/requirements.txt +2 -2
  384. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/__init__.py +44 -0
  385. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/config.py +2 -0
  386. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/detection.py +7 -2
  387. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/__init__.py +42 -0
  388. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/assistant_models.py +300 -0
  389. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/contract.py +9 -0
  390. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/helper.py +21 -0
  391. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/interfaces.py +80 -4
  392. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/__init__.py +6 -0
  393. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/base.py +2 -0
  394. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/face.py +3 -7
  395. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/face_embedder.py +69 -0
  396. package/dist/server/src/api/controllers/assistant.controller.js +1 -1
  397. package/dist/server/src/api/controllers/assistant.controller.js.map +1 -1
  398. package/dist/server/src/api/database/index.d.ts +1 -1
  399. package/dist/server/src/api/database/index.js +1 -1
  400. package/dist/server/src/api/database/migrations/v2-2-5.d.ts +3 -0
  401. package/dist/server/src/api/database/migrations/v2-2-5.js +19 -0
  402. package/dist/server/src/api/database/migrations/v2-2-5.js.map +1 -0
  403. package/dist/server/src/api/database/record-schemas.d.ts +4 -2
  404. package/dist/server/src/api/database/record-schemas.js +4 -1
  405. package/dist/server/src/api/database/record-schemas.js.map +1 -1
  406. package/dist/server/src/api/database/types.d.ts +5 -1
  407. package/dist/server/src/api/schemas/assistant.schema.d.ts +21 -7
  408. package/dist/server/src/api/schemas/assistant.schema.js +4 -1
  409. package/dist/server/src/api/schemas/assistant.schema.js.map +1 -1
  410. package/dist/server/src/api/schemas/cameras.schema.d.ts +56 -8
  411. package/dist/server/src/api/schemas/cameras.schema.js +4 -3
  412. package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
  413. package/dist/server/src/api/services/assistant.service.d.ts +1 -1
  414. package/dist/server/src/api/services/assistant.service.js +4 -1
  415. package/dist/server/src/api/services/assistant.service.js.map +1 -1
  416. package/dist/server/src/api/services/cameras.service.js +2 -2
  417. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  418. package/dist/server/src/api/websocket/nsp/logs.js +3 -3
  419. package/dist/server/src/api/websocket/nsp/logs.js.map +1 -1
  420. package/dist/server/src/api/websocket/nsp/worker-perf.js +13 -0
  421. package/dist/server/src/api/websocket/nsp/worker-perf.js.map +1 -1
  422. package/dist/server/src/api/websocket/types.d.ts +12 -0
  423. package/dist/server/src/assistant/budget.d.ts +27 -0
  424. package/dist/server/src/assistant/budget.js +118 -0
  425. package/dist/server/src/assistant/budget.js.map +1 -0
  426. package/dist/server/src/assistant/compaction.d.ts +10 -0
  427. package/dist/server/src/assistant/compaction.js +83 -0
  428. package/dist/server/src/assistant/compaction.js.map +1 -0
  429. package/dist/server/src/assistant/docs.js +4 -3
  430. package/dist/server/src/assistant/docs.js.map +1 -1
  431. package/dist/server/src/assistant/history.d.ts +1 -0
  432. package/dist/server/src/assistant/history.js +28 -0
  433. package/dist/server/src/assistant/history.js.map +1 -1
  434. package/dist/server/src/assistant/manager.d.ts +10 -0
  435. package/dist/server/src/assistant/manager.js +261 -62
  436. package/dist/server/src/assistant/manager.js.map +1 -1
  437. package/dist/server/src/assistant/plugin-models.d.ts +34 -0
  438. package/dist/server/src/assistant/plugin-models.js +266 -0
  439. package/dist/server/src/assistant/plugin-models.js.map +1 -0
  440. package/dist/server/src/assistant/prompt.d.ts +7 -1
  441. package/dist/server/src/assistant/prompt.js +75 -11
  442. package/dist/server/src/assistant/prompt.js.map +1 -1
  443. package/dist/server/src/assistant/providers.js +7 -3
  444. package/dist/server/src/assistant/providers.js.map +1 -1
  445. package/dist/server/src/assistant/recap.d.ts +3 -0
  446. package/dist/server/src/assistant/recap.js +65 -0
  447. package/dist/server/src/assistant/recap.js.map +1 -0
  448. package/dist/server/src/assistant/registry.d.ts +16 -1
  449. package/dist/server/src/assistant/registry.js +49 -1
  450. package/dist/server/src/assistant/registry.js.map +1 -1
  451. package/dist/server/src/assistant/retry.js +38 -24
  452. package/dist/server/src/assistant/retry.js.map +1 -1
  453. package/dist/server/src/assistant/router.d.ts +7 -0
  454. package/dist/server/src/assistant/router.js +67 -0
  455. package/dist/server/src/assistant/router.js.map +1 -0
  456. package/dist/server/src/assistant/skills.d.ts +8 -0
  457. package/dist/server/src/assistant/skills.js +59 -1
  458. package/dist/server/src/assistant/skills.js.map +1 -1
  459. package/dist/server/src/assistant/threads.d.ts +1 -0
  460. package/dist/server/src/assistant/threads.js +7 -1
  461. package/dist/server/src/assistant/threads.js.map +1 -1
  462. package/dist/server/src/assistant/tool-names.js +9 -1
  463. package/dist/server/src/assistant/tool-names.js.map +1 -1
  464. package/dist/server/src/assistant/tool-rank.d.ts +2 -0
  465. package/dist/server/src/assistant/tool-rank.js +48 -0
  466. package/dist/server/src/assistant/tool-rank.js.map +1 -0
  467. package/dist/server/src/assistant/tool-schema.d.ts +3 -0
  468. package/dist/server/src/assistant/tool-schema.js +65 -0
  469. package/dist/server/src/assistant/tool-schema.js.map +1 -0
  470. package/dist/server/src/assistant/tools/api.js +7 -9
  471. package/dist/server/src/assistant/tools/api.js.map +1 -1
  472. package/dist/server/src/assistant/tools/ask.js +1 -2
  473. package/dist/server/src/assistant/tools/ask.js.map +1 -1
  474. package/dist/server/src/assistant/tools/automations.js +3 -5
  475. package/dist/server/src/assistant/tools/automations.js.map +1 -1
  476. package/dist/server/src/assistant/tools/cameras.js +3 -4
  477. package/dist/server/src/assistant/tools/cameras.js.map +1 -1
  478. package/dist/server/src/assistant/tools/docs.js +5 -6
  479. package/dist/server/src/assistant/tools/docs.js.map +1 -1
  480. package/dist/server/src/assistant/tools/instance.js +19 -19
  481. package/dist/server/src/assistant/tools/instance.js.map +1 -1
  482. package/dist/server/src/assistant/tools/memory.js +3 -4
  483. package/dist/server/src/assistant/tools/memory.js.map +1 -1
  484. package/dist/server/src/assistant/tools/metrics.js +1 -2
  485. package/dist/server/src/assistant/tools/metrics.js.map +1 -1
  486. package/dist/server/src/assistant/tools/notifications.js +4 -11
  487. package/dist/server/src/assistant/tools/notifications.js.map +1 -1
  488. package/dist/server/src/assistant/tools/plugins.js +12 -14
  489. package/dist/server/src/assistant/tools/plugins.js.map +1 -1
  490. package/dist/server/src/assistant/tools/report.js +17 -12
  491. package/dist/server/src/assistant/tools/report.js.map +1 -1
  492. package/dist/server/src/assistant/tools/schedules.js +6 -11
  493. package/dist/server/src/assistant/tools/schedules.js.map +1 -1
  494. package/dist/server/src/assistant/tools/sensors.js +63 -4
  495. package/dist/server/src/assistant/tools/sensors.js.map +1 -1
  496. package/dist/server/src/assistant/tools/settings.js +2 -3
  497. package/dist/server/src/assistant/tools/settings.js.map +1 -1
  498. package/dist/server/src/assistant/tools/system.js +3 -5
  499. package/dist/server/src/assistant/tools/system.js.map +1 -1
  500. package/dist/server/src/assistant/tools/terminal.js +4 -5
  501. package/dist/server/src/assistant/tools/terminal.js.map +1 -1
  502. package/dist/server/src/assistant/types.d.ts +10 -1
  503. package/dist/server/src/assistant/uploads.d.ts +2 -1
  504. package/dist/server/src/assistant/uploads.js +25 -3
  505. package/dist/server/src/assistant/uploads.js.map +1 -1
  506. package/dist/server/src/camera/decoder/detection-coordinator.d.ts +5 -0
  507. package/dist/server/src/camera/decoder/detection-coordinator.js +45 -14
  508. package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
  509. package/dist/server/src/camera/decoder/detection-pipeline.js +2 -1
  510. package/dist/server/src/camera/decoder/detection-pipeline.js.map +1 -1
  511. package/dist/server/src/camera/decoder/event-manager.d.ts +27 -4
  512. package/dist/server/src/camera/decoder/event-manager.js +175 -48
  513. package/dist/server/src/camera/decoder/event-manager.js.map +1 -1
  514. package/dist/server/src/camera/decoder/nvr-sink.d.ts +4 -1
  515. package/dist/server/src/camera/decoder/nvr-sink.js +1 -1
  516. package/dist/server/src/camera/decoder/nvr-sink.js.map +1 -1
  517. package/dist/server/src/camera/decoder/perf-tracker.d.ts +10 -0
  518. package/dist/server/src/camera/decoder/perf-tracker.js +20 -0
  519. package/dist/server/src/camera/decoder/perf-tracker.js.map +1 -1
  520. package/dist/server/src/camera/decoder/secondary-stage.d.ts +21 -1
  521. package/dist/server/src/camera/decoder/secondary-stage.js +301 -59
  522. package/dist/server/src/camera/decoder/secondary-stage.js.map +1 -1
  523. package/dist/server/src/camera/decoder/side-queue.d.ts +13 -0
  524. package/dist/server/src/camera/decoder/side-queue.js +53 -0
  525. package/dist/server/src/camera/decoder/side-queue.js.map +1 -0
  526. package/dist/server/src/camera/decoder/sources/buffered-source.d.ts +2 -0
  527. package/dist/server/src/camera/decoder/sources/buffered-source.js +7 -1
  528. package/dist/server/src/camera/decoder/sources/buffered-source.js.map +1 -1
  529. package/dist/server/src/camera/decoder/types.d.ts +11 -1
  530. package/dist/server/src/camera/decoder/types.js +9 -1
  531. package/dist/server/src/camera/decoder/types.js.map +1 -1
  532. package/dist/server/src/camera/sensors/controller.d.ts +1 -0
  533. package/dist/server/src/camera/sensors/controller.js +28 -4
  534. package/dist/server/src/camera/sensors/controller.js.map +1 -1
  535. package/dist/server/src/main.js +11 -2
  536. package/dist/server/src/main.js.map +1 -1
  537. package/dist/server/src/plugins/runtime/python/proxy/camera_device.py +1 -14
  538. package/dist/server/src/plugins/runtime/python/proxy/sensor.py +14 -1
  539. package/dist/server/src/plugins/runtime/python/proxy/sensor_manager.py +1 -13
  540. package/dist/server/src/rpc/interfaces/detection.d.ts +14 -2
  541. package/dist/server/src/rpc/server.js +1 -0
  542. package/dist/server/src/rpc/server.js.map +1 -1
  543. package/dist/server/src/services/config/index.d.ts +1 -0
  544. package/dist/server/src/services/config/index.js +6 -11
  545. package/dist/server/src/services/config/index.js.map +1 -1
  546. package/dist/server/src/utils/camera.js +8 -5
  547. package/dist/server/src/utils/camera.js.map +1 -1
  548. package/dist/server/src/utils/instance-lock.d.ts +1 -0
  549. package/dist/server/src/utils/instance-lock.js +57 -0
  550. package/dist/server/src/utils/instance-lock.js.map +1 -0
  551. package/dist/server/src/workers/agent.d.ts +2 -0
  552. package/dist/server/src/workers/agent.js +11 -1
  553. package/dist/server/src/workers/agent.js.map +1 -1
  554. package/dist/server/src/workers/manager.js +9 -2
  555. package/dist/server/src/workers/manager.js.map +1 -1
  556. package/dist/server/src/workers/types.d.ts +1 -0
  557. package/npm-shrinkwrap.json +209 -209
  558. package/package.json +28 -28
  559. package/dist/interface/assets/Assistant-bB8RBo-m.js +0 -1
  560. package/dist/interface/assets/Automations-BdZZW2eN.js +0 -2
  561. package/dist/interface/assets/Camera-Ct7ndOxr.js +0 -2
  562. package/dist/interface/assets/Camview-BjQdTHNh.js +0 -1
  563. package/dist/interface/assets/Config-CBTbYd5v.js +0 -2
  564. package/dist/interface/assets/ConfigTriggerGeofence-Bl2ZacbY.js +0 -1
  565. package/dist/interface/assets/Console-Cfk9MA9m.js +0 -1
  566. package/dist/interface/assets/CuiAssistantConversation-BHK_i56I.js +0 -5
  567. package/dist/interface/assets/CuiAutomationRunsDialog-B0ohEHw0.js +0 -1
  568. package/dist/interface/assets/CuiBottomSheet-NgX7VFao.js +0 -1
  569. package/dist/interface/assets/CuiCameraRecordings-BTD-CQAg.js +0 -1
  570. package/dist/interface/assets/CuiCameraTable-KPk46Xcl.js +0 -1
  571. package/dist/interface/assets/CuiDataTable-CsqH-RB1.js +0 -1
  572. package/dist/interface/assets/CuiMarkdownContent-DSArmS0V.js +0 -1
  573. package/dist/interface/assets/CuiSchema-ytExUVhI.js +0 -1
  574. package/dist/interface/assets/Faces-Cb6XMxDC.js +0 -1
  575. package/dist/interface/assets/Floorplan-DbqADtN1.js +0 -1
  576. package/dist/interface/assets/Instances-DrMzPD65.js +0 -1
  577. package/dist/interface/assets/Metrics-BUP_-7o7.css +0 -1
  578. package/dist/interface/assets/Metrics-CqhUnVRA.js +0 -12
  579. package/dist/interface/assets/Plugin-BDqNeTCT.css +0 -1
  580. package/dist/interface/assets/Plugin-DyOg_fbg.js +0 -1
  581. package/dist/interface/assets/PluginSearch-BgecD9Ob.js +0 -2
  582. package/dist/interface/assets/PluginSearch-C8xHKikH.js +0 -1
  583. package/dist/interface/assets/Plugins-CuujWEtM.js +0 -1
  584. package/dist/interface/assets/Recordings-9FJqCfdM.css +0 -1
  585. package/dist/interface/assets/Recordings-ths9khZr.js +0 -1
  586. package/dist/interface/assets/SensorEdit-BzoIH7QC.js +0 -1
  587. package/dist/interface/assets/Sensors-CK5uExfU.js +0 -2
  588. package/dist/interface/assets/Settings-DN5hFtw_.js +0 -1
  589. package/dist/interface/assets/SettingsAccount-BCrmon5O.js +0 -1
  590. package/dist/interface/assets/SettingsAccount-CSy1BAIH.js +0 -1
  591. package/dist/interface/assets/SettingsAppearance-h_XPZfQl.js +0 -1
  592. package/dist/interface/assets/SettingsAssistant-BESab92C.css +0 -1
  593. package/dist/interface/assets/SettingsAssistant-D8FmVbUL.js +0 -1
  594. package/dist/interface/assets/SettingsMqtt-DCkLIYpF.js +0 -1
  595. package/dist/interface/assets/SettingsRemote-DXlQKwlT.js +0 -2
  596. package/dist/interface/assets/Terminal-Dl-aAZME.js +0 -4
  597. package/dist/interface/assets/Training-B1oQjAr8.css +0 -1
  598. package/dist/interface/assets/Training-DdZjXgt1.js +0 -1
  599. package/dist/interface/assets/Updates-CkB1lXuo.js +0 -2
  600. package/dist/interface/assets/Workers-7yiebNkl.js +0 -2
  601. package/dist/interface/assets/api-DK2Bav9D.js +0 -4
  602. package/dist/interface/assets/api-DTCqDA-h.css +0 -2
  603. package/dist/interface/assets/assistant-BJ6xKcw_.js +0 -1
  604. package/dist/interface/assets/cloudHandoff-DtlquYGZ.js +0 -1
  605. package/dist/interface/assets/esm-4Hzzm93H.js +0 -1
  606. package/dist/interface/assets/esm-BrFPi5_4.js +0 -1
  607. package/dist/interface/assets/esm-C7pcdfXf.js +0 -1
  608. package/dist/interface/assets/esm-C8bsO829.js +0 -1
  609. package/dist/interface/assets/esm-CXzdnAMk.js +0 -1
  610. package/dist/interface/assets/esm-CZNGZkPu.js +0 -1
  611. package/dist/interface/assets/esm-D0iI7OVb.js +0 -1
  612. package/dist/interface/assets/esm-DKolm6KU.js +0 -1
  613. package/dist/interface/assets/esm-DTywI9gs.js +0 -1
  614. package/dist/interface/assets/esm-DifXcK9i.js +0 -1
  615. package/dist/interface/assets/esm-Dq5o-Xb4.js +0 -1
  616. package/dist/interface/assets/esm-IbQuUZ5l.js +0 -1
  617. package/dist/interface/assets/esm-Xre_AP5i.js +0 -1
  618. package/dist/interface/assets/esm-zYnXHhpH.js +0 -1
  619. package/dist/interface/assets/main-D74mRIxc.js +0 -3
  620. package/dist/interface/assets/native-CAujTO6L.js +0 -1
  621. package/dist/interface/assets/native-sQ88qazf.js +0 -1
  622. package/dist/interface/assets/plugin-D7K50k_y.js +0 -1
  623. package/dist/interface/assets/sensorIcons-DQVgryYP.js +0 -1
  624. package/dist/interface/assets/types-5rE8Tz0_.js +0 -1
  625. package/dist/interface/assets/ungrouped-D56FGIrg.js +0 -1
  626. package/dist/interface/assets/useBackupRestore-Crfd592q.js +0 -1
  627. package/dist/interface/assets/useUserOptions-BTRBUuE2.js +0 -1
  628. package/dist/interface/assets/vendor-gridstack-anPyIu9V.js +0 -3
  629. package/dist/interface/assets/web-3M-ddn4G.js +0 -1
  630. package/dist/interface/assets/web-BY80VGyU.js +0 -1
  631. package/dist/interface/assets/web-B_tUYyM0.js +0 -1
  632. package/dist/interface/assets/web-BjKL51lK-Bb5NYhpJ.js +0 -1
  633. package/dist/interface/assets/web-Bv-4PJGI.js +0 -1
  634. package/dist/interface/assets/web-C3Pk8qeB.js +0 -1
  635. package/dist/interface/assets/web-CLcvGPH6.js +0 -1
  636. package/dist/interface/assets/web-DO8gTOVJ.js +0 -1
  637. package/dist/interface/assets/web-DR5q_DmI.js +0 -1
  638. package/dist/interface/assets/web-DRHbG4Te.js +0 -1
  639. package/dist/interface/assets/web-DaQ8d8yk.js +0 -1
  640. package/dist/interface/assets/web-EVRW5whF.js +0 -1
  641. package/dist/interface/assets/web-S6Dk3UWN.js +0 -1
  642. package/dist/interface/assets/web-pWIp0wf0.js +0 -1
  643. package/dist/interface/assets/workbox-window.prod.es5-Dz5rcO1z.js +0 -1
  644. package/dist/interface/ha/Faces-C_svyTrr.js +0 -1282
  645. package/dist/interface/ha/Training-BEzPiXZg.js +0 -1512
@@ -1,248 +1,319 @@
1
- import { F as e, G as t, H as n, Jt as r, Tt as i, Wt as a, _t as o, d as s, f as c, gt as l, kt as u, l as d, lt as f, ot as p, p as m, q as ee, r as h, rt as g, u as _, ut as v, v as y, x as b, xt as x, y as S } from "./runtime-core.esm-bundler-_TfE0DWz.js";
2
- import { t as C } from "./tooltip-BDrlgLof.js";
3
- import { t as te } from "./message-D6dIy_hz.js";
4
- import { t as w } from "./chevron-down-BNj8w2js.js";
5
- import { t as T } from "./tag-mchuCAPR.js";
6
- import { Dt as ne, On as E, Ot as D, Sr as re, V as O, Zi as k, _t as A, a as j, bi as ie, dt as ae, en as M, jn as oe, kt as se, mn as ce, nn as le, p as ue, pn as de, r as fe, tn as pe, wr as N } from "./api-BP7mlzjP.js";
7
- import { i as me } from "./intercomService-B7HkLs6z.js";
8
- import { K as P } from "./pinia-C6gt7A_Q.js";
9
- import { n as F } from "./vue-i18n-D5EAy78K.js";
10
- import { t as he } from "./button-BouAFgf5.js";
11
- import { t as ge } from "./inputtext-C_ygnPrC.js";
12
- import { t as _e } from "./select-DV7p2EDj.js";
13
- import { t as ve } from "./autocomplete-Cp3u2Ywa.js";
14
- import { i as ye, t as be } from "./CuiDataTable-CN4T8DgP.js";
15
- import { t as xe } from "./inputnumber-DZRwKgXr.js";
16
- import { t as Se } from "./multiselect-BOb4ScAZ.js";
17
- import { t as Ce } from "./textarea-ByXnzJzx.js";
18
- import { t as I } from "./assistant-Cb6ACguQ.js";
19
- import { t as we } from "./content-copy-CHPYjxRC.js";
20
- import { u as Te } from "./cards-BpBP1zVW.js";
21
- import { a as L, c as Ee, d as De, i as Oe, l as R, o as ke, s as Ae, u as z } from "./types-XqA3YJPD.js";
22
- import { t as je } from "./pause-BbFQ0FqK.js";
23
- import { t as Me } from "./restore-BxzmXRET.js";
24
- import { t as Ne } from "./dots-vertical-B0dv1-jL.js";
25
- import { t as Pe } from "./pencil-outline-SN9ingm5.js";
1
+ import { F as e, G as t, H as n, Jt as r, Tt as i, Wt as a, _t as o, d as s, f as c, gt as l, kt as u, l as d, lt as f, ot as p, p as m, q as h, r as g, rt as _, u as v, ut as y, v as b, x, xt as S, y as C } from "./runtime-core.esm-bundler-_TfE0DWz.js";
2
+ import { t as w } from "./tooltip-BDrlgLof.js";
3
+ import { t as ee } from "./message-D6dIy_hz.js";
4
+ import { t as T } from "./chevron-down-BNj8w2js.js";
5
+ import { t as E } from "./tag-mchuCAPR.js";
6
+ import { $i as D, Dt as te, Er as O, On as ne, Ot as k, Si as re, V as A, _t as j, a as M, dt as ie, en as ae, jn as oe, kt as se, mn as ce, nn as N, p as P, pn as le, r as ue, tn as de, wr as fe } from "./api-Dv3Lk_g5.js";
7
+ import { i as pe } from "./intercomService-B7HkLs6z.js";
8
+ import { K as F } from "./pinia-Du8AM917.js";
9
+ import { n as I } from "./vue-i18n-D5EAy78K.js";
10
+ import { t as L } from "./button-BouAFgf5.js";
11
+ import { t as me } from "./inputtext-C_ygnPrC.js";
12
+ import { t as he } from "./select-DV7p2EDj.js";
13
+ import { t as ge } from "./autocomplete-Cp3u2Ywa.js";
14
+ import { i as _e, t as ve } from "./CuiDataTable-CpADXKNF.js";
15
+ import { t as ye } from "./inputnumber-DZRwKgXr.js";
16
+ import { t as R } from "./progressbar-CaUaM8Bt.js";
17
+ import { t as be } from "./multiselect-BOb4ScAZ.js";
18
+ import { t as xe } from "./textarea-ByXnzJzx.js";
19
+ import { t as Se } from "./assistant-B3m0Kgev.js";
20
+ import { t as Ce } from "./content-copy-CHPYjxRC.js";
21
+ import { u as we } from "./cards-B0qagpBw.js";
22
+ import { a as z, c as Te, d as Ee, i as De, l as Oe, o as ke, s as Ae, u as je } from "./types-wLECk3Ml.js";
23
+ import { t as Me } from "./pause-BbFQ0FqK.js";
24
+ import { t as Ne } from "./restore-BxzmXRET.js";
25
+ import { t as Pe } from "./dots-vertical-B0dv1-jL.js";
26
+ import { t as Fe } from "./pencil-outline-SN9ingm5.js";
26
27
  //#region ~icons/mdi/wrench-outline
27
- var Fe = {
28
+ var B = {
28
29
  viewBox: "0 0 24 24",
29
30
  width: "1.2em",
30
31
  height: "1.2em"
31
32
  };
32
- function B(e, t) {
33
- return n(), m("svg", Fe, [...t[0] ||= [_("path", {
33
+ function V(e, t) {
34
+ return n(), m("svg", B, [...t[0] ||= [v("path", {
34
35
  fill: "currentColor",
35
36
  d: "m22.61 19l-9.08-9.09c.93-2.34.47-5.1-1.44-7C9.79.61 6.21.4 3.66 2.26L7.5 6.11L6.08 7.5L2.25 3.69C.39 6.23.6 9.82 2.9 12.11c1.86 1.86 4.57 2.35 6.89 1.48l9.11 9.11c.39.39 1.02.39 1.41 0l2.3-2.3c.39-.4.39-1.01 0-1.4m-3 1.59l-9.46-9.46c-.61.45-1.29.72-2 .82c-1.36.2-2.79-.21-3.83-1.25C3.37 9.76 2.93 8.5 3 7.26l3.09 3.09l4.24-4.24L7.24 3c1.26-.05 2.49.39 3.44 1.33a4.47 4.47 0 0 1 1.24 3.96a4.35 4.35 0 0 1-.88 1.96l9.46 9.45z"
36
37
  }, null, -1)]]);
37
38
  }
38
39
  var Ie = o({
39
40
  name: "mdi-wrench-outline",
40
- render: B
41
- }), V = {
41
+ render: V
42
+ }), Le = {
42
43
  viewBox: "0 0 24 24",
43
44
  width: "1.2em",
44
45
  height: "1.2em"
45
46
  };
46
- function Le(e, t) {
47
- return n(), m("svg", V, [...t[0] ||= [_("path", {
47
+ function Re(e, t) {
48
+ return n(), m("svg", Le, [...t[0] ||= [v("path", {
48
49
  fill: "currentColor",
49
50
  d: "M11 9.47V11h3.76L13 14.53V13H9.24zM13 1L6 15h5v8l7-14h-5z"
50
51
  }, null, -1)]]);
51
52
  }
52
- var Re = o({
53
+ var ze = o({
53
54
  name: "mdi-lightning-bolt-outline",
54
- render: Le
55
- }), ze = {
55
+ render: Re
56
+ }), H = {
56
57
  viewBox: "0 0 24 24",
57
58
  width: "1.2em",
58
59
  height: "1.2em"
59
60
  };
60
- function H(e, t) {
61
- return n(), m("svg", ze, [...t[0] ||= [_("path", {
61
+ function U(e, t) {
62
+ return n(), m("svg", H, [...t[0] ||= [v("path", {
62
63
  fill: "currentColor",
63
64
  d: "m12 15.39l-3.76 2.27l.99-4.28l-3.32-2.88l4.38-.37L12 6.09l1.71 4.04l4.38.37l-3.32 2.88l.99 4.28M22 9.24l-7.19-.61L12 2L9.19 8.63L2 9.24l5.45 4.73L5.82 21L12 17.27L18.18 21l-1.64-7.03z"
64
65
  }, null, -1)]]);
65
66
  }
66
67
  var Be = o({
67
68
  name: "mdi-star-outline",
68
- render: H
69
- }), U = { class: "flex w-full flex-col gap-6" }, Ve = { class: "flex flex-col field-gap" }, He = {
69
+ render: U
70
+ }), Ve = { class: "flex w-full flex-col gap-6" }, He = { class: "flex flex-col field-gap" }, Ue = {
70
71
  for: "assistantModelProvider",
71
72
  class: "cui-label"
72
- }, Ue = {
73
+ }, We = {
73
74
  key: 0,
74
75
  class: "flex flex-col field-gap"
75
- }, We = {
76
+ }, Ge = {
76
77
  for: "assistantModelBaseUrl",
77
78
  class: "cui-label"
78
- }, Ge = {
79
+ }, W = {
79
80
  key: 1,
80
81
  class: "flex flex-col field-gap"
81
- }, W = {
82
+ }, G = {
82
83
  for: "assistantModelKey",
83
84
  class: "cui-label"
84
- }, G = { class: "flex flex-col field-gap" }, K = {
85
+ }, K = {
86
+ key: 2,
87
+ class: "flex flex-col field-gap"
88
+ }, q = {
89
+ for: "assistantModelPluginModel",
90
+ class: "cui-label"
91
+ }, Ke = {
92
+ key: 3,
93
+ class: "flex flex-col field-gap"
94
+ }, J = {
85
95
  for: "assistantModelModel",
86
96
  class: "cui-label"
87
- }, q = { class: "flex flex-col field-gap" }, Ke = {
97
+ }, Y = {
98
+ key: 4,
99
+ class: "flex flex-col field-gap"
100
+ }, qe = {
101
+ for: "assistantModelContext",
102
+ class: "cui-label"
103
+ }, Je = { class: "flex flex-col field-gap" }, X = {
88
104
  for: "assistantModelName",
89
105
  class: "cui-label"
90
- }, J = { class: "flex items-center gap-4 cui-toggle-switch" }, Y = { class: "flex flex-col field-switch-gap" }, qe = {
106
+ }, Ye = { class: "flex items-center gap-4 cui-toggle-switch" }, Xe = { class: "flex flex-col field-switch-gap" }, Ze = {
91
107
  for: "assistantModelUsers",
92
108
  class: "cui-label-switch"
93
- }, Je = {
94
- key: 2,
109
+ }, Qe = { class: "flex items-center gap-4 cui-toggle-switch" }, Z = { class: "flex flex-col field-switch-gap" }, $e = {
110
+ for: "assistantModelRouting",
111
+ class: "cui-label-switch"
112
+ }, et = {
113
+ key: 5,
95
114
  class: "flex items-center gap-4 cui-toggle-switch"
96
- }, X = { class: "flex flex-col field-switch-gap" }, Ye = {
115
+ }, tt = { class: "flex flex-col field-switch-gap" }, nt = {
97
116
  for: "assistantModelImages",
98
117
  class: "cui-label-switch"
99
- }, Xe = /* @__PURE__ */ b({
118
+ }, Q = /* @__PURE__ */ x({
100
119
  __name: "AssistantModel",
101
120
  props: {
102
121
  entry: {},
103
- models: {}
122
+ models: {},
123
+ modelProviders: {}
104
124
  },
105
125
  setup(t, { expose: i }) {
106
- let a = new I(), o = t, { t: p } = F(), ee = ie(), g = a.listAssistantModelsMutation(), v = x(o.entry?.provider ?? "ollama"), b = x(o.entry?.baseURL ?? ""), C = x(""), w = x(o.entry?.model ?? ""), T = x(o.entry && o.entry.name !== o.entry.model ? o.entry.name : ""), ne = x(o.entry?.sendImages ?? !1), E = x(o.entry?.userAccess !== !1), D = x("new"), re = x([]), O = x([]), k = x(!1), A = d(() => ke.includes(v.value)), j = d(() => v.value === "ollama" || v.value === "openai-compatible"), M = d(() => o.entry?.apiKeySet === !0 && o.entry.provider === v.value), se = d(() => o.models.filter((e) => e._id !== o.entry?._id && e.provider === v.value && e.apiKeySet)), ce = d(() => [{
107
- label: M.value ? p("views.settings.assistant_api_key_stored") : p("views.settings.assistant_api_key_new"),
126
+ let a = new Se(), o = t, { t: h, locale: _ } = I(), y = re(), x = a.listAssistantModelsMutation(), w = S(o.entry?.provider ?? "ollama"), T = S(o.entry?.baseURL ?? ""), E = S(""), D = S(o.entry?.model ?? ""), te = S(o.entry && o.entry.name !== o.entry.model ? o.entry.name : ""), O = S(o.entry?.sendImages ?? !1), ne = S(o.entry?.contextTokens ?? null), k = S(o.entry?.toolRouting ?? !1), A = S(o.entry?.userAccess !== !1), j = S("new"), M = S([]), ae = S([]), se = S(!1), ce = d(() => [...Ae.map((e) => ({
127
+ label: e.label,
128
+ value: e.value
129
+ })), ...o.modelProviders.map((e) => ({
130
+ label: h("views.settings.assistant_provider_plugin", { name: e.pluginName }),
131
+ value: e.provider
132
+ }))]), N = d(() => o.modelProviders.find((e) => e.provider === w.value)), P = d(() => N.value?.models ?? []), le = d(() => N.value?.status), ue = d(() => {
133
+ let e = le.value?.ready === !1 ? le.value.progress : void 0;
134
+ return e === void 0 ? void 0 : Math.round(e * 100);
135
+ }), de = d(() => {
136
+ if (le.value?.ready === !1) return le.value.message || h("views.settings.assistant_model_plugin_loading");
137
+ if (!P.value.length) return h("views.settings.assistant_model_plugin_none");
138
+ let e = P.value.find((e) => e.id === D.value);
139
+ if (!e) return h("views.settings.assistant_model_plugin_info");
140
+ let t = h("views.settings.assistant_model_context", { tokens: e.contextTokens.toLocaleString(_.value) });
141
+ return e.note ? `${e.note} ${t}` : t;
142
+ }), fe = d(() => N.value ? h("views.settings.assistant_provider_hint_plugin") : h(`views.settings.assistant_provider_hint_${w.value.replace("-", "_")}`)), pe = d(() => ke.includes(w.value) && !N.value), F = d(() => w.value === "ollama" || w.value === "openai-compatible"), L = d(() => o.entry?.apiKeySet === !0 && o.entry.provider === w.value), _e = d(() => o.models.filter((e) => e._id !== o.entry?._id && e.provider === w.value && e.apiKeySet)), ve = d(() => [{
143
+ label: L.value ? h("views.settings.assistant_api_key_stored") : h("views.settings.assistant_api_key_new"),
108
144
  value: "new"
109
- }, ...se.value.map((e) => ({
110
- label: p("views.settings.assistant_api_key_from", { name: e.name }),
145
+ }, ..._e.value.map((e) => ({
146
+ label: h("views.settings.assistant_api_key_from", { name: e.name }),
111
147
  value: e._id
112
- }))]), le = d(() => A.value && D.value === "new" && !C.value && !M.value);
113
- function ue() {
114
- return M.value ? "new" : se.value[0]?._id ?? "new";
148
+ }))]), be = d(() => pe.value && j.value === "new" && !E.value && !L.value);
149
+ function xe() {
150
+ return L.value ? "new" : _e.value[0]?._id ?? "new";
115
151
  }
116
- function de() {
117
- let e = D.value === "new" ? C.value ? { apiKey: C.value } : o.entry && !M.value ? { apiKey: null } : {} : { copyKeyFrom: D.value };
152
+ function Ce() {
153
+ let e = j.value === "new" ? E.value ? { apiKey: E.value } : o.entry && !L.value ? { apiKey: null } : {} : { copyKeyFrom: j.value };
118
154
  return {
119
155
  ...o.entry ? {
120
156
  id: o.entry._id,
121
157
  retest: !0,
122
- sendImages: ne.value
158
+ sendImages: O.value
123
159
  } : {},
124
160
  ...e,
125
- name: T.value,
126
- provider: v.value,
127
- baseURL: j.value && b.value ? b.value : null,
128
- model: w.value.trim(),
129
- userAccess: E.value
161
+ name: te.value,
162
+ provider: w.value,
163
+ baseURL: F.value && T.value ? T.value : null,
164
+ model: D.value.trim(),
165
+ userAccess: A.value,
166
+ contextTokens: N.value ? null : ne.value ?? null,
167
+ toolRouting: k.value
130
168
  };
131
169
  }
132
- function fe() {
133
- b.value = "", w.value = "", re.value = [], O.value = [], D.value = ue();
170
+ function we() {
171
+ T.value = "", D.value = "", M.value = [], ae.value = [], j.value = xe();
134
172
  }
135
- function pe(e) {
173
+ function Te(e) {
136
174
  let t = e.query.toLowerCase();
137
- O.value = re.value.filter((e) => e.toLowerCase().includes(t));
175
+ ae.value = M.value.filter((e) => e.toLowerCase().includes(t));
138
176
  }
139
- async function N() {
140
- let e = await g.mutateAsync(de());
177
+ async function Ee() {
178
+ let e = await x.mutateAsync(Ce());
141
179
  if (e.error) {
142
- ee.add({
180
+ y.add({
143
181
  severity: "warn",
144
- detail: p("views.settings.assistant_models_failed", { message: e.error }),
182
+ detail: h("views.settings.assistant_models_failed", { message: e.error }),
145
183
  life: 5e3
146
184
  });
147
185
  return;
148
186
  }
149
- re.value = e.models, O.value = e.models;
187
+ M.value = e.models, ae.value = e.models;
150
188
  }
151
- return e(() => {
152
- D.value = ue();
153
- }), i({ onConfirm: async () => !w.value.trim() || le.value ? (k.value = !0, null) : de() }), (e, i) => {
154
- let a = _e, o = te, d = ge, p = ae, ee = ve, x = oe;
155
- return n(), m("div", U, [
156
- _("div", Ve, [
157
- _("label", He, r(e.$t("views.settings.assistant_provider_label")), 1),
158
- S(a, {
159
- modelValue: u(v),
160
- "onUpdate:modelValue": i[0] ||= (e) => l(v) ? v.value = e : null,
189
+ return p(() => P.value.find((e) => e.id === D.value), (e) => {
190
+ e && o.entry?.toolRouting == null && (k.value = e.toolRouting === !0);
191
+ }, { immediate: !0 }), e(() => {
192
+ j.value = xe();
193
+ }), i({ onConfirm: async () => !D.value.trim() || be.value ? (se.value = !0, null) : Ce() }), (e, i) => {
194
+ let a = he, o = ee, d = me, p = ie, h = R, _ = ge, y = ye, S = oe;
195
+ return n(), m("div", Ve, [
196
+ v("div", He, [
197
+ v("label", Ue, r(e.$t("views.settings.assistant_provider_label")), 1),
198
+ C(a, {
199
+ modelValue: u(w),
200
+ "onUpdate:modelValue": i[0] ||= (e) => l(w) ? w.value = e : null,
161
201
  "input-id": "assistantModelProvider",
162
- options: u(Ae),
202
+ options: u(ce),
163
203
  "option-label": "label",
164
204
  "option-value": "value",
165
205
  fluid: "",
166
- onChange: fe
206
+ onChange: we
167
207
  }, null, 8, ["modelValue", "options"]),
168
- S(o, {
208
+ C(o, {
169
209
  severity: "secondary",
170
210
  variant: "simple",
171
211
  size: "small",
172
212
  class: "cui-input-hint"
173
213
  }, {
174
- default: f(() => [y(r(e.$t(`views.settings.assistant_provider_hint_${u(v).replace("-", "_")}`)), 1)]),
214
+ default: f(() => [b(r(u(fe)), 1)]),
175
215
  _: 1
176
216
  })
177
217
  ]),
178
- u(j) ? (n(), m("div", Ue, [_("label", We, r(e.$t("views.settings.assistant_base_url_label")), 1), S(d, {
218
+ u(F) ? (n(), m("div", We, [v("label", Ge, r(e.$t("views.settings.assistant_base_url_label")), 1), C(d, {
179
219
  id: "assistantModelBaseUrl",
180
- modelValue: u(b),
181
- "onUpdate:modelValue": i[1] ||= (e) => l(b) ? b.value = e : null,
220
+ modelValue: u(T),
221
+ "onUpdate:modelValue": i[1] ||= (e) => l(T) ? T.value = e : null,
182
222
  modelModifiers: { trim: !0 },
183
- placeholder: u(L)[u(v)],
223
+ placeholder: u(z)[u(w)],
184
224
  fluid: "",
185
225
  autocomplete: "off"
186
226
  }, null, 8, ["modelValue", "placeholder"])])) : c("", !0),
187
- u(A) || u(v) === "openai-compatible" ? (n(), m("div", Ge, [
188
- _("label", W, r(e.$t("views.settings.assistant_api_key_label")), 1),
189
- u(se).length ? (n(), s(a, {
227
+ u(pe) || u(w) === "openai-compatible" ? (n(), m("div", W, [
228
+ v("label", G, r(e.$t("views.settings.assistant_api_key_label")), 1),
229
+ u(_e).length ? (n(), s(a, {
190
230
  key: 0,
191
- modelValue: u(D),
192
- "onUpdate:modelValue": i[2] ||= (e) => l(D) ? D.value = e : null,
193
- options: u(ce),
231
+ modelValue: u(j),
232
+ "onUpdate:modelValue": i[2] ||= (e) => l(j) ? j.value = e : null,
233
+ options: u(ve),
194
234
  "option-label": "label",
195
235
  "option-value": "value",
196
236
  fluid: ""
197
237
  }, null, 8, ["modelValue", "options"])) : c("", !0),
198
- u(D) === u("new") ? (n(), m(h, { key: 1 }, [S(p, {
199
- modelValue: u(C),
200
- "onUpdate:modelValue": i[3] ||= (e) => l(C) ? C.value = e : null,
238
+ u(j) === u("new") ? (n(), m(g, { key: 1 }, [C(p, {
239
+ modelValue: u(E),
240
+ "onUpdate:modelValue": i[3] ||= (e) => l(E) ? E.value = e : null,
201
241
  "input-id": "assistantModelKey",
202
242
  feedback: !1,
203
243
  "toggle-mask": "",
204
244
  fluid: "",
205
245
  autocomplete: "new-password",
206
- invalid: u(k) && u(le),
207
- placeholder: u(M) ? "••••••••" : ""
246
+ invalid: u(se) && u(be),
247
+ placeholder: u(L) ? "••••••••" : ""
208
248
  }, null, 8, [
209
249
  "modelValue",
210
250
  "invalid",
211
251
  "placeholder"
212
- ]), u(M) ? (n(), s(o, {
252
+ ]), u(L) ? (n(), s(o, {
213
253
  key: 0,
214
254
  severity: "secondary",
215
255
  variant: "simple",
216
256
  size: "small",
217
257
  class: "cui-input-hint"
218
258
  }, {
219
- default: f(() => [y(r(e.$t("views.settings.assistant_api_key_keep_hint")), 1)]),
259
+ default: f(() => [b(r(e.$t("views.settings.assistant_api_key_keep_hint")), 1)]),
220
260
  _: 1
221
- })) : u(A) ? c("", !0) : (n(), s(o, {
261
+ })) : u(pe) ? c("", !0) : (n(), s(o, {
222
262
  key: 1,
223
263
  severity: "secondary",
224
264
  variant: "simple",
225
265
  size: "small",
226
266
  class: "cui-input-hint"
227
267
  }, {
228
- default: f(() => [y(r(e.$t("views.settings.assistant_api_key_optional")), 1)]),
268
+ default: f(() => [b(r(e.$t("views.settings.assistant_api_key_optional")), 1)]),
229
269
  _: 1
230
270
  }))], 64)) : c("", !0)
231
271
  ])) : c("", !0),
232
- _("div", G, [
233
- _("label", K, r(e.$t("views.settings.assistant_model_label")), 1),
234
- S(ee, {
235
- modelValue: u(w),
236
- "onUpdate:modelValue": i[4] ||= (e) => l(w) ? w.value = e : null,
272
+ u(N) ? (n(), m("div", K, [
273
+ v("label", q, r(e.$t("views.settings.assistant_model_label")), 1),
274
+ u(P).length ? (n(), s(a, {
275
+ key: 0,
276
+ modelValue: u(D),
277
+ "onUpdate:modelValue": i[4] ||= (e) => l(D) ? D.value = e : null,
278
+ "input-id": "assistantModelPluginModel",
279
+ options: u(P),
280
+ "option-label": "name",
281
+ "option-value": "id",
282
+ fluid: "",
283
+ invalid: u(se) && !u(D).trim()
284
+ }, null, 8, [
285
+ "modelValue",
286
+ "options",
287
+ "invalid"
288
+ ])) : u(ue) === void 0 ? c("", !0) : (n(), s(h, {
289
+ key: 1,
290
+ value: u(ue),
291
+ "show-value": !1,
292
+ class: "!h-1"
293
+ }, null, 8, ["value"])),
294
+ C(o, {
295
+ severity: "secondary",
296
+ variant: "simple",
297
+ size: "small",
298
+ class: "cui-input-hint"
299
+ }, {
300
+ default: f(() => [b(r(u(de)), 1)]),
301
+ _: 1
302
+ })
303
+ ])) : (n(), m("div", Ke, [
304
+ v("label", J, r(e.$t("views.settings.assistant_model_label")), 1),
305
+ C(_, {
306
+ modelValue: u(D),
307
+ "onUpdate:modelValue": i[5] ||= (e) => l(D) ? D.value = e : null,
237
308
  "input-id": "assistantModelModel",
238
- suggestions: u(O),
239
- loading: u(g).isPending.value,
240
- invalid: u(k) && !u(w).trim(),
309
+ suggestions: u(ae),
310
+ loading: u(x).isPending.value,
311
+ invalid: u(se) && !u(D).trim(),
241
312
  dropdown: "",
242
313
  fluid: "",
243
314
  placeholder: e.$t("views.settings.assistant_model_placeholder"),
244
- onComplete: pe,
245
- onDropdownClick: N
315
+ onComplete: Te,
316
+ onDropdownClick: Ee
246
317
  }, null, 8, [
247
318
  "modelValue",
248
319
  "suggestions",
@@ -250,173 +321,213 @@ var Be = o({
250
321
  "invalid",
251
322
  "placeholder"
252
323
  ]),
253
- S(o, {
324
+ C(o, {
254
325
  severity: "secondary",
255
326
  variant: "simple",
256
327
  size: "small",
257
328
  class: "cui-input-hint"
258
329
  }, {
259
- default: f(() => [y(r(e.$t("views.settings.assistant_model_info")), 1)]),
330
+ default: f(() => [b(r(e.$t("views.settings.assistant_model_info")), 1)]),
260
331
  _: 1
261
332
  })
262
- ]),
263
- _("div", q, [_("label", Ke, r(e.$t("views.settings.assistant_model_name_label")), 1), S(d, {
333
+ ])),
334
+ u(N) ? c("", !0) : (n(), m("div", Y, [
335
+ v("label", qe, r(e.$t("views.settings.assistant_model_context_label")), 1),
336
+ C(y, {
337
+ modelValue: u(ne),
338
+ "onUpdate:modelValue": i[6] ||= (e) => l(ne) ? ne.value = e : null,
339
+ "input-id": "assistantModelContext",
340
+ min: 1e3,
341
+ max: 4e5,
342
+ step: 1e3,
343
+ "use-grouping": !1,
344
+ placeholder: e.$t("views.settings.assistant_model_context_placeholder"),
345
+ fluid: ""
346
+ }, null, 8, ["modelValue", "placeholder"]),
347
+ C(o, {
348
+ severity: "secondary",
349
+ variant: "simple",
350
+ size: "small",
351
+ class: "cui-input-hint"
352
+ }, {
353
+ default: f(() => [b(r(e.$t("views.settings.assistant_model_context_info")), 1)]),
354
+ _: 1
355
+ })
356
+ ])),
357
+ v("div", Je, [v("label", X, r(e.$t("views.settings.assistant_model_name_label")), 1), C(d, {
264
358
  id: "assistantModelName",
265
- modelValue: u(T),
266
- "onUpdate:modelValue": i[5] ||= (e) => l(T) ? T.value = e : null,
359
+ modelValue: u(te),
360
+ "onUpdate:modelValue": i[7] ||= (e) => l(te) ? te.value = e : null,
267
361
  modelModifiers: { trim: !0 },
268
- placeholder: u(w).trim() || e.$t("views.settings.assistant_model_name_placeholder"),
362
+ placeholder: u(D).trim() || e.$t("views.settings.assistant_model_name_placeholder"),
269
363
  maxlength: "40",
270
364
  fluid: ""
271
365
  }, null, 8, ["modelValue", "placeholder"])]),
272
- _("div", J, [_("div", Y, [_("label", qe, r(e.$t("views.settings.assistant_model_users")), 1), S(o, {
366
+ v("div", Ye, [v("div", Xe, [v("label", Ze, r(e.$t("views.settings.assistant_model_users")), 1), C(o, {
273
367
  severity: "secondary",
274
368
  variant: "simple",
275
369
  size: "small",
276
370
  class: "cui-input-switch-hint"
277
371
  }, {
278
- default: f(() => [y(r(e.$t("views.settings.assistant_model_users_info")), 1)]),
372
+ default: f(() => [b(r(e.$t("views.settings.assistant_model_users_info")), 1)]),
279
373
  _: 1
280
- })]), S(x, {
281
- modelValue: u(E),
282
- "onUpdate:modelValue": i[6] ||= (e) => l(E) ? E.value = e : null,
374
+ })]), C(S, {
375
+ modelValue: u(A),
376
+ "onUpdate:modelValue": i[8] ||= (e) => l(A) ? A.value = e : null,
283
377
  "input-id": "assistantModelUsers",
284
378
  class: "ml-auto shrink-0"
285
379
  }, null, 8, ["modelValue"])]),
286
- t.entry ? (n(), m("div", Je, [_("div", X, [_("label", Ye, r(e.$t("views.settings.assistant_send_images")), 1), S(o, {
380
+ v("div", Qe, [v("div", Z, [v("label", $e, r(e.$t("views.settings.assistant_model_routing")), 1), C(o, {
287
381
  severity: "secondary",
288
382
  variant: "simple",
289
383
  size: "small",
290
384
  class: "cui-input-switch-hint"
291
385
  }, {
292
- default: f(() => [y(r(t.entry.capabilities?.vision === !1 ? e.$t("views.settings.assistant_send_images_no_vision") : e.$t("views.settings.assistant_send_images_info")), 1)]),
386
+ default: f(() => [b(r(e.$t("views.settings.assistant_model_routing_info")), 1)]),
293
387
  _: 1
294
- })]), S(x, {
295
- modelValue: u(ne),
296
- "onUpdate:modelValue": i[7] ||= (e) => l(ne) ? ne.value = e : null,
388
+ })]), C(S, {
389
+ modelValue: u(k),
390
+ "onUpdate:modelValue": i[9] ||= (e) => l(k) ? k.value = e : null,
391
+ "input-id": "assistantModelRouting",
392
+ class: "ml-auto shrink-0"
393
+ }, null, 8, ["modelValue"])]),
394
+ t.entry ? (n(), m("div", et, [v("div", tt, [v("label", nt, r(e.$t("views.settings.assistant_send_images")), 1), C(o, {
395
+ severity: "secondary",
396
+ variant: "simple",
397
+ size: "small",
398
+ class: "cui-input-switch-hint"
399
+ }, {
400
+ default: f(() => [b(r(t.entry.capabilities?.vision === !1 ? e.$t("views.settings.assistant_send_images_no_vision") : e.$t("views.settings.assistant_send_images_info")), 1)]),
401
+ _: 1
402
+ })]), C(S, {
403
+ modelValue: u(O),
404
+ "onUpdate:modelValue": i[10] ||= (e) => l(O) ? O.value = e : null,
297
405
  "input-id": "assistantModelImages",
298
406
  class: "ml-auto shrink-0"
299
407
  }, null, 8, ["modelValue"])])) : c("", !0)
300
408
  ]);
301
409
  };
302
410
  }
303
- }), Ze = { class: "w-full h-full" }, Qe = {
411
+ }), rt = { class: "w-full h-full" }, it = {
304
412
  key: 0,
305
413
  class: "w-full h-full flex items-center justify-center"
306
- }, $e = {
414
+ }, at = {
307
415
  key: 1,
308
416
  class: "flex flex-col w-full gap-6"
309
- }, et = { class: "card-title" }, tt = { class: "flex items-center gap-4" }, nt = { class: "flex flex-col field-switch-gap min-w-0" }, rt = { class: "text-sm font-bold text-color" }, it = { class: "card-title" }, at = { class: "flex flex-col gap-6" }, ot = { class: "flex items-center gap-4 cui-toggle-switch" }, st = { class: "flex flex-col field-switch-gap" }, ct = {
417
+ }, ot = { class: "card-title" }, st = { class: "flex items-center gap-4" }, ct = { class: "flex flex-col field-switch-gap min-w-0" }, lt = { class: "text-sm font-bold text-color" }, ut = { class: "card-title" }, dt = { class: "flex flex-col gap-6" }, ft = { class: "flex items-center gap-4 cui-toggle-switch" }, pt = { class: "flex flex-col field-switch-gap" }, mt = {
310
418
  for: "enabled",
311
419
  class: "cui-label-switch"
312
- }, lt = {
420
+ }, ht = {
313
421
  key: 0,
314
422
  class: "flex flex-col divide-y divide-(--border-color)"
315
- }, ut = { class: "flex min-w-0 flex-1 flex-wrap items-center gap-x-2 gap-y-1" }, dt = { class: "max-w-full basis-full truncate font-medium text-color md:basis-auto" }, ft = { class: "order-3 mt-1 flex flex-wrap items-center gap-1.5 md:order-2 md:mt-0" }, pt = { class: "order-2 basis-full truncate text-muted md:order-3" }, mt = {
423
+ }, gt = { class: "flex min-w-0 flex-1 flex-wrap items-center gap-x-2 gap-y-1" }, _t = { class: "max-w-full basis-full truncate font-medium text-color md:basis-auto" }, vt = { class: "order-3 mt-1 flex flex-wrap items-center gap-1.5 md:order-2 md:mt-0" }, yt = { class: "order-2 basis-full truncate text-muted md:order-3" }, bt = {
316
424
  key: 0,
317
425
  class: "order-4 basis-full text-xs text-danger line-clamp-2"
318
- }, ht = { class: "hidden shrink-0 items-center gap-1 md:flex" }, gt = { class: "shrink-0 md:hidden" }, _t = {
426
+ }, xt = {
427
+ key: 1,
428
+ class: "order-4 basis-full text-xs text-muted line-clamp-2"
429
+ }, St = { class: "hidden shrink-0 items-center gap-1 md:flex" }, Ct = { class: "shrink-0 md:hidden" }, wt = {
319
430
  key: 1,
320
431
  class: "text-sm text-muted"
321
- }, vt = { class: "flex" }, yt = { class: "card-title" }, bt = { class: "flex flex-col gap-6" }, xt = { class: "flex min-w-0 items-center gap-2" }, St = ["for"], Ct = {
432
+ }, Tt = { class: "flex" }, Et = { class: "card-title" }, Dt = { class: "flex flex-col gap-6" }, Ot = { class: "flex min-w-0 items-center gap-2" }, kt = ["for"], At = {
322
433
  key: 1,
323
434
  class: "text-sm text-muted"
324
- }, wt = { class: "flex" }, Tt = { class: "card-title" }, Et = { class: "flex flex-col gap-6" }, Dt = { class: "flex items-center gap-4 cui-toggle-switch" }, Ot = { class: "flex flex-col field-switch-gap" }, kt = {
435
+ }, jt = { class: "flex" }, Mt = { class: "card-title" }, Nt = { class: "flex flex-col gap-6" }, Pt = { class: "flex items-center gap-4 cui-toggle-switch" }, Ft = { class: "flex flex-col field-switch-gap" }, It = {
325
436
  for: "memoryEnabled",
326
437
  class: "cui-label-switch"
327
- }, At = { class: "flex items-center gap-4 cui-toggle-switch" }, jt = { class: "flex flex-col field-switch-gap" }, Mt = {
438
+ }, Lt = { class: "flex items-center gap-4 cui-toggle-switch" }, Rt = { class: "flex flex-col field-switch-gap" }, zt = {
328
439
  for: "terminalEnabled",
329
440
  class: "cui-label-switch"
330
- }, Nt = { class: "flex flex-col field-gap" }, Pt = {
441
+ }, Bt = { class: "flex flex-col field-gap" }, Vt = {
331
442
  for: "language",
332
443
  class: "cui-label"
333
- }, Ft = { class: "flex flex-col field-gap" }, It = {
444
+ }, Ht = { class: "flex flex-col field-gap" }, Ut = {
334
445
  for: "reasoning",
335
446
  class: "cui-label"
336
- }, Lt = { class: "flex flex-col md:flex-row gap-6" }, Rt = { class: "flex flex-col field-gap flex-1" }, zt = {
447
+ }, Wt = { class: "flex flex-col md:flex-row gap-6" }, Gt = { class: "flex flex-col field-gap flex-1" }, Kt = {
337
448
  for: "maxIterations",
338
449
  class: "cui-label"
339
- }, Bt = { class: "flex flex-col field-gap flex-1" }, Vt = {
450
+ }, qt = { class: "flex flex-col field-gap flex-1" }, Jt = {
340
451
  for: "maxToolCalls",
341
452
  class: "cui-label"
342
- }, Ht = { class: "flex flex-col field-gap" }, Ut = {
453
+ }, Yt = { class: "flex flex-col field-gap" }, Xt = {
343
454
  for: "contextTokens",
344
455
  class: "cui-label"
345
- }, Wt = { class: "flex flex-col md:flex-row gap-4" }, Gt = { class: "flex flex-col field-gap flex-1" }, Kt = {
456
+ }, Zt = { class: "flex flex-col md:flex-row gap-4" }, Qt = { class: "flex flex-col field-gap flex-1" }, $t = {
346
457
  for: "historyThreads",
347
458
  class: "cui-label"
348
- }, qt = { class: "flex flex-col field-gap flex-1" }, Jt = {
459
+ }, en = { class: "flex flex-col field-gap flex-1" }, tn = {
349
460
  for: "historyImages",
350
461
  class: "cui-label"
351
- }, Yt = { class: "flex flex-col field-gap" }, Xt = {
462
+ }, nn = { class: "flex flex-col field-gap" }, rn = {
352
463
  for: "systemPromptExtra",
353
464
  class: "cui-label"
354
- }, Zt = { class: "flex items-center gap-2" }, Qt = { class: "card-title" }, $t = { class: "flex flex-col gap-6" }, en = { class: "flex flex-col gap-4" }, tn = { class: "flex items-center justify-between gap-4" }, nn = { class: "flex flex-col" }, rn = { class: "text-sm font-medium text-color" }, an = { class: "text-xs text-muted" }, on = { class: "flex items-center justify-between gap-4" }, sn = { class: "flex flex-col" }, cn = { class: "text-sm font-medium text-color" }, ln = { class: "text-xs text-muted" }, un = {
465
+ }, an = { class: "flex items-center gap-2" }, on = { class: "card-title" }, sn = { class: "flex flex-col gap-6" }, cn = { class: "flex flex-col gap-4" }, ln = { class: "flex items-center justify-between gap-4" }, un = { class: "flex flex-col" }, dn = { class: "text-sm font-medium text-color" }, fn = { class: "text-xs text-muted" }, pn = { class: "flex items-center justify-between gap-4" }, mn = { class: "flex flex-col" }, hn = { class: "text-sm font-medium text-color" }, gn = { class: "text-xs text-muted" }, _n = {
355
466
  key: 0,
356
467
  class: "flex flex-col gap-6"
357
- }, dn = { class: "flex flex-col field-gap" }, fn = {
468
+ }, vn = { class: "flex flex-col field-gap" }, yn = {
358
469
  for: "mcpEndpoint",
359
470
  class: "cui-label"
360
- }, pn = { class: "flex flex-col field-gap" }, mn = {
471
+ }, bn = { class: "flex flex-col field-gap" }, xn = {
361
472
  for: "mcpClient",
362
473
  class: "cui-label"
363
- }, hn = { class: "flex" }, gn = { class: "card-title" }, _n = { class: "flex flex-col gap-6" }, vn = ["aria-expanded", "onClick"], yn = { class: "flex min-w-0 flex-1 flex-col gap-0.5" }, bn = { class: "truncate text-sm font-medium text-color" }, xn = ["inert"], Sn = { class: "flex flex-col gap-4 px-4 pb-4" }, Cn = { class: "flex items-center gap-4 cui-toggle-switch" }, wn = { class: "flex flex-col field-switch-gap" }, Tn = ["for"], En = { class: "flex flex-col md:flex-row gap-4" }, Dn = { class: "flex flex-col field-gap md:w-56" }, On = ["for"], kn = { class: "flex flex-col field-gap flex-1" }, An = ["for"], jn = { class: "flex flex-col field-gap" }, Mn = ["for"], Nn = { class: "flex items-center gap-4 cui-toggle-switch" }, Pn = { class: "flex flex-col field-switch-gap" }, Fn = ["for"], In = { class: "flex" }, Ln = { class: "flex items-center gap-2" }, Rn = { class: "card-title" }, zn = { class: "flex flex-col gap-6" }, Bn = {
474
+ }, Sn = { class: "flex" }, Cn = { class: "card-title" }, wn = { class: "flex flex-col gap-6" }, Tn = ["aria-expanded", "onClick"], En = { class: "flex min-w-0 flex-1 flex-col gap-0.5" }, Dn = { class: "truncate text-sm font-medium text-color" }, On = ["inert"], kn = { class: "flex flex-col gap-4 px-4 pb-4" }, An = { class: "flex items-center gap-4 cui-toggle-switch" }, jn = { class: "flex flex-col field-switch-gap" }, Mn = ["for"], Nn = { class: "flex flex-col md:flex-row gap-4" }, Pn = { class: "flex flex-col field-gap md:w-56" }, Fn = ["for"], In = { class: "flex flex-col field-gap flex-1" }, Ln = ["for"], Rn = { class: "flex flex-col field-gap" }, zn = ["for"], Bn = { class: "flex items-center gap-4 cui-toggle-switch" }, Vn = { class: "flex flex-col field-switch-gap" }, Hn = ["for"], Un = { class: "flex" }, Wn = { class: "flex items-center gap-2" }, Gn = { class: "card-title" }, Kn = { class: "flex flex-col gap-6" }, qn = {
364
475
  key: 0,
365
476
  class: "flex flex-col divide-y divide-(--border-color)"
366
- }, Vn = { class: "max-w-full basis-full truncate font-medium text-color md:basis-auto" }, Hn = { class: "flex flex-wrap items-center gap-1.5" }, Un = { class: "basis-full text-muted line-clamp-2" }, Wn = { class: "basis-full text-xs text-muted" }, Gn = { key: 0 }, Kn = { key: 1 }, qn = {
477
+ }, Jn = { class: "max-w-full basis-full truncate font-medium text-color md:basis-auto" }, Yn = { class: "flex flex-wrap items-center gap-1.5" }, Xn = { class: "basis-full text-muted line-clamp-2" }, Zn = { class: "basis-full text-xs text-muted" }, Qn = { key: 0 }, $n = { key: 1 }, er = {
367
478
  key: 0,
368
479
  class: "basis-full text-xs text-danger line-clamp-2"
369
- }, Jn = { class: "shrink-0" }, Yn = { class: "hidden items-center gap-1 md:flex" }, Xn = { class: "md:hidden" }, Zn = { class: "flex flex-col md:flex-row gap-6" }, Qn = { class: "flex flex-col field-gap flex-1" }, $n = {
480
+ }, tr = { class: "shrink-0" }, nr = { class: "hidden items-center gap-1 md:flex" }, rr = { class: "md:hidden" }, ir = { class: "flex flex-col md:flex-row gap-6" }, ar = { class: "flex flex-col field-gap flex-1" }, or = {
370
481
  for: "scheduleTitle",
371
482
  class: "cui-label"
372
- }, er = { class: "flex flex-col field-gap w-full md:w-52 shrink-0" }, tr = {
483
+ }, sr = { class: "flex flex-col field-gap w-full md:w-52 shrink-0" }, cr = {
373
484
  for: "scheduleDeliver",
374
485
  class: "cui-label"
375
- }, nr = { class: "flex flex-col field-gap" }, rr = {
486
+ }, lr = { class: "flex flex-col field-gap" }, ur = {
376
487
  for: "schedulePrompt",
377
488
  class: "cui-label"
378
- }, ir = {
489
+ }, dr = {
379
490
  key: 0,
380
491
  class: "flex flex-col field-gap"
381
- }, ar = {
492
+ }, fr = {
382
493
  for: "scheduleProfile",
383
494
  class: "cui-label"
384
- }, or = { class: "flex flex-col md:flex-row gap-6" }, sr = { class: "flex flex-col field-gap flex-1" }, cr = {
495
+ }, pr = { class: "flex flex-col md:flex-row gap-6" }, mr = { class: "flex flex-col field-gap flex-1" }, hr = {
385
496
  for: "schedulePreset",
386
497
  class: "cui-label"
387
- }, lr = {
498
+ }, gr = {
388
499
  key: 0,
389
500
  class: "flex flex-col field-gap w-full md:w-40 shrink-0"
390
- }, ur = {
501
+ }, _r = {
391
502
  for: "scheduleTime",
392
503
  class: "cui-label"
393
- }, dr = {
504
+ }, vr = {
394
505
  key: 1,
395
506
  class: "flex flex-col field-gap flex-1"
396
- }, fr = {
507
+ }, yr = {
397
508
  for: "scheduleCron",
398
509
  class: "cui-label"
399
- }, pr = { class: "flex" }, mr = { class: "card-title" }, hr = { class: "flex flex-col gap-3" }, gr = { class: "text-sm text-muted" }, _r = { class: "truncate" }, vr = { class: "truncate" }, yr = { class: "card-title" }, br = {
510
+ }, br = { class: "flex" }, xr = { class: "card-title" }, Sr = { class: "flex flex-col gap-3" }, Cr = { class: "text-sm text-muted" }, wr = { class: "truncate" }, Tr = { class: "truncate" }, Er = { class: "card-title" }, Dr = {
400
511
  key: 0,
401
512
  class: "text-sm text-muted"
402
- }, xr = {
513
+ }, Or = {
403
514
  key: 1,
404
515
  class: "flex flex-col gap-6"
405
- }, Sr = {
516
+ }, kr = {
406
517
  key: 0,
407
518
  class: "mb-4 flex flex-col field-gap"
408
- }, Cr = ["for"], wr = { class: "flex max-h-96 flex-col divide-y divide-(--border-color) overflow-y-auto pr-2" }, Tr = { class: "min-w-0 flex-1" }, Er = { class: "flex flex-wrap items-center gap-2" }, Dr = { class: "font-medium text-color" }, Or = { class: "text-muted" }, kr = {
519
+ }, Ar = ["for"], jr = { class: "flex max-h-96 flex-col divide-y divide-(--border-color) overflow-y-auto pr-2" }, Mr = { class: "min-w-0 flex-1" }, Nr = { class: "flex flex-wrap items-center gap-2" }, Pr = { class: "font-medium text-color" }, Fr = { class: "text-muted" }, Ir = {
409
520
  key: 0,
410
521
  class: "flex"
411
- }, Z = "none", Ar = /*#__PURE__*/ N(/* @__PURE__ */ b({
522
+ }, Lr = "none", Rr = /*#__PURE__*/ O(/* @__PURE__ */ x({
412
523
  __name: "SettingsAssistant",
413
524
  setup(e) {
414
525
  let o = {
415
- icon: O,
526
+ icon: A,
416
527
  iconProps: { class: "text-red-500" },
417
528
  labelProps: { class: "text-red-500" },
418
529
  buttonProps: { severity: "danger" }
419
- }, b = {
530
+ }, x = {
420
531
  memoryEnabled: !0,
421
532
  terminalEnabled: !1,
422
533
  language: null,
@@ -426,10 +537,10 @@ var Be = o({
426
537
  contextTokens: 48e3,
427
538
  historyThreads: 50,
428
539
  historyImages: 24
429
- }, N = { columnHeaderContent: { class: "justify-end" } }, ve = {
540
+ }, O = { columnHeaderContent: { class: "justify-end" } }, ge = {
430
541
  bodyRow: { class: "text-sm text-secondary" },
431
542
  column: { columnTitle: { class: "text-sm" } }
432
- }, L = new I(), ke = ie(), Fe = A(), { t: B, locale: V } = F(), { data: Le, isLoading: ze } = L.usageAllQuery(), { data: H } = L.getAssistantInfoQuery(), U = L.patchAssistantInfoMutation(), { data: Ve } = L.listProfilesQuery(), { data: He } = L.listSchedulesQuery(), Ue = L.createScheduleMutation(), We = L.patchScheduleMutation(), Ge = L.deleteScheduleMutation(), W = L.runScheduleMutation(), G = x(null), K = x({
543
+ }, R = new Se(), z = re(), ke = j(), { t: B, locale: V } = I(), { data: Le, isLoading: Re } = R.usageAllQuery(), { data: H } = R.getAssistantInfoQuery(), U = R.patchAssistantInfoMutation(), { data: Ve } = R.listProfilesQuery(), { data: He } = R.listSchedulesQuery(), Ue = R.createScheduleMutation(), We = R.patchScheduleMutation(), Ge = R.deleteScheduleMutation(), W = R.runScheduleMutation(), G = S(null), K = S({
433
544
  title: "",
434
545
  prompt: "",
435
546
  preset: "daily",
@@ -437,13 +548,13 @@ var Be = o({
437
548
  cron: "",
438
549
  deliver: "push",
439
550
  profileId: null
440
- }), q = x({}), Ke = x([]), J = x([]), Y = x("claude-code"), qe = x("core"), Je = g("rowMenuRef"), X = d(() => H.value?.settings.models ?? []), Ye = d(() => H.value ? R(H.value.settings) : void 0), Ar = d(() => [{
551
+ }), q = S({}), Ke = S([]), J = S([]), Y = S("claude-code"), qe = S("core"), Je = _("rowMenuRef"), X = d(() => H.value?.settings.models ?? []), Ye = d(() => H.value ? Oe(H.value.settings) : void 0), Xe = d(() => [{
441
552
  label: B("views.settings.assistant_plugin_no_access"),
442
- value: Z
553
+ value: Lr
443
554
  }, ...X.value.map((e) => ({
444
555
  label: e.name,
445
556
  value: e._id
446
- }))]), jr = d(() => {
557
+ }))]), Ze = d(() => {
447
558
  let e = /* @__PURE__ */ new Map();
448
559
  for (let t of H.value?.tools ?? []) {
449
560
  let n = t.source.kind === "plugin" ? t.source.pluginId : t.source.kind === "external" ? t.source.serverId : "core", r = t.source.kind === "plugin" ? t.source.pluginName : t.source.kind === "external" ? t.source.serverName : "camera.ui", i = e.get(n) ?? {
@@ -455,11 +566,11 @@ var Be = o({
455
566
  i.tools.push(t), e.set(n, i);
456
567
  }
457
568
  return Array.from(e.values());
458
- }), Mr = d(() => Le.value?.map((e) => ({
569
+ }), Qe = d(() => Le.value?.map((e) => ({
459
570
  ...e,
460
571
  key: `${e.userId}-${e.month}-${e.provider}-${e.model}`
461
- }))), Q = d(() => H.value?.status), Nr = d(() => {
462
- let e = new Intl.DisplayNames([V.value], { type: "language" }), t = P.map((t) => ({
572
+ }))), Z = d(() => H.value?.status), $e = d(() => {
573
+ let e = new Intl.DisplayNames([V.value], { type: "language" }), t = F.map((t) => ({
463
574
  label: e.of(t) ?? t,
464
575
  value: t
465
576
  })).sort((e, t) => e.label.localeCompare(t.label, V.value));
@@ -467,7 +578,7 @@ var Be = o({
467
578
  label: B("views.settings.assistant_language_auto"),
468
579
  value: null
469
580
  }, ...t];
470
- }), Pr = d(() => [
581
+ }), et = d(() => [
471
582
  "default",
472
583
  "off",
473
584
  "low",
@@ -475,7 +586,7 @@ var Be = o({
475
586
  ].map((e) => ({
476
587
  label: B(`views.settings.assistant_reasoning_${e}`),
477
588
  value: e
478
- }))), Fr = d(() => new URL(`${k.defaults.baseURL ?? "/api"}/assistant/mcp`.replace(/\/{2,}/g, "/"), window.location.origin).toString()), Ir = d(() => [
589
+ }))), tt = d(() => new URL(`${D.defaults.baseURL ?? "/api"}/assistant/mcp`.replace(/\/{2,}/g, "/"), window.location.origin).toString()), nt = d(() => [
479
590
  {
480
591
  label: "Claude Code",
481
592
  value: "claude-code"
@@ -488,8 +599,8 @@ var Be = o({
488
599
  label: "Claude Desktop",
489
600
  value: "claude-desktop"
490
601
  }
491
- ]), Lr = d(() => {
492
- let e = Fr.value;
602
+ ]), Rr = d(() => {
603
+ let e = tt.value;
493
604
  return Y.value === "claude-code" ? `claude mcp add --transport http camera-ui ${e} --header "Authorization: Bearer <api token>"` : Y.value === "cursor" ? JSON.stringify({ mcpServers: { "camera-ui": {
494
605
  url: e,
495
606
  headers: { Authorization: "Bearer <api token>" }
@@ -503,14 +614,14 @@ var Be = o({
503
614
  "Authorization: Bearer <api token>"
504
615
  ]
505
616
  } } }, null, 2);
506
- }), Rr = d(() => [
617
+ }), zr = d(() => [
507
618
  "push",
508
619
  "thread",
509
620
  "both"
510
621
  ].map((e) => ({
511
622
  label: B(`views.settings.assistant_schedule_deliver_${e}`),
512
623
  value: e
513
- }))), zr = d(() => [
624
+ }))), Br = d(() => [
514
625
  "daily",
515
626
  "weekdays",
516
627
  "weekends",
@@ -520,26 +631,26 @@ var Be = o({
520
631
  ].map((e) => ({
521
632
  label: B(`views.settings.assistant_schedule_preset_${e}`),
522
633
  value: e
523
- }))), Br = d(() => {
634
+ }))), Vr = d(() => {
524
635
  let { preset: e, time: t, cron: n } = K.value, [r, i] = t.split(":").map((e) => Number.parseInt(e, 10));
525
636
  return e === "custom" ? n.trim() : e === "hourly" ? "0 * * * *" : Number.isNaN(r) || Number.isNaN(i) ? "" : `${i} ${r} * * ${e === "weekdays" ? "1-5" : e === "weekends" ? "0,6" : e === "weekly" ? "0" : "*"}`;
526
- }), Vr = d(() => {
527
- switch (Q.value?.state) {
637
+ }), Hr = d(() => {
638
+ switch (Z.value?.state) {
528
639
  case "ready": return "success";
529
640
  case "unconfigured": return "warn";
530
641
  default: return "secondary";
531
642
  }
532
- }), Hr = d(() => B(`views.settings.assistant_state_${Q.value?.state ?? "disabled"}`)), Ur = d(() => Q.value ? Q.value.state === "ready" ? B("views.settings.assistant_status_ready", { model: Q.value.model }) : B("views.settings.assistant_status_info") : "");
533
- function Wr(e) {
643
+ }), Ur = d(() => B(`views.settings.assistant_state_${Z.value?.state ?? "disabled"}`)), Wr = d(() => Z.value ? Z.value.state === "ready" ? B("views.settings.assistant_status_ready", { model: Z.value.model }) : B("views.settings.assistant_status_info") : "");
644
+ function Gr(e) {
534
645
  let t = /^(\d+) (\d+) \* \* (\*|1-5|0,6|0)$/.exec(e);
535
646
  if (!t) return e;
536
647
  let n = `${t[2].padStart(2, "0")}:${t[1].padStart(2, "0")}`, r = t[3] === "*" ? "daily" : t[3] === "1-5" ? "weekdays" : t[3] === "0" ? "weekly" : "weekends";
537
648
  return `${B(`views.settings.assistant_schedule_preset_${r}`)} ${n}`;
538
649
  }
539
- function Gr(e) {
650
+ function Kr(e) {
540
651
  return e === "push" ? "info" : e === "thread" ? "secondary" : "success";
541
652
  }
542
- function Kr(e) {
653
+ function qr(e) {
543
654
  return new Date(e).toLocaleString(V.value, {
544
655
  day: "2-digit",
545
656
  month: "2-digit",
@@ -547,11 +658,11 @@ var Be = o({
547
658
  minute: "2-digit"
548
659
  });
549
660
  }
550
- async function qr() {
661
+ async function Jr() {
551
662
  await Ue.mutateAsync({
552
663
  title: K.value.title,
553
664
  prompt: K.value.prompt,
554
- cron: Br.value,
665
+ cron: Vr.value,
555
666
  timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,
556
667
  language: V.value,
557
668
  deliver: K.value.deliver,
@@ -565,44 +676,44 @@ var Be = o({
565
676
  profileId: null
566
677
  };
567
678
  }
568
- function Jr(e) {
679
+ function Yr(e) {
569
680
  return e.replace(/^\[[^\]]+\]\s*/, "");
570
681
  }
571
- function Yr(e) {
682
+ function Xr(e) {
572
683
  if (e.source.kind !== "external") return e.approval;
573
684
  let { serverId: t, toolName: n } = e.source;
574
685
  return G.value?.mcpServers.find((e) => e.id === t)?.toolApproval[n] ?? e.approval;
575
686
  }
576
- function Xr(e) {
687
+ function Zr(e) {
577
688
  return e.tools.flatMap((e) => e.source.kind === "external" ? [{
578
- label: Oe(e.name),
689
+ label: De(e.name),
579
690
  value: e.source.toolName
580
691
  }] : []);
581
692
  }
582
- function Zr(e) {
583
- return e.tools.flatMap((e) => e.source.kind === "external" && !Yr(e) ? [e.source.toolName] : []);
693
+ function Qr(e) {
694
+ return e.tools.flatMap((e) => e.source.kind === "external" && !Xr(e) ? [e.source.toolName] : []);
584
695
  }
585
- function Qr(e, t) {
696
+ function $r(e, t) {
586
697
  let n = G.value?.mcpServers.find((t) => t.id === e.serverId);
587
- n && (n.toolApproval = Object.fromEntries(Xr(e).map((e) => [e.value, !t.includes(e.value)])));
698
+ n && (n.toolApproval = Object.fromEntries(Zr(e).map((e) => [e.value, !t.includes(e.value)])));
588
699
  }
589
- function $r(e) {
700
+ function ei(e) {
590
701
  return e < 1e3 ? String(e) : e < 1e6 ? `${(e / 1e3).toFixed(+(e < 1e4))}k` : `${(e / 1e6).toFixed(2)}M`;
591
702
  }
592
- function ei(e) {
703
+ function ti(e) {
593
704
  return H.value?.external.find((t) => t.id === e);
594
705
  }
595
- function ti(e) {
596
- let t = ei(e);
706
+ function ni(e) {
707
+ let t = ti(e);
597
708
  return t ? t.state === "connected" ? B("views.settings.assistant_external_state_connected", { n: t.toolCount }) : t.state === "error" ? B("views.settings.assistant_external_state_error", { message: t.error ?? "" }) : B(`views.settings.assistant_external_state_${t.state}`) : "";
598
709
  }
599
- function ni(e) {
600
- let t = ei(e)?.state;
710
+ function ri(e) {
711
+ let t = ti(e)?.state;
601
712
  return t === "connected" ? "text-success" : t === "error" ? "text-danger" : "text-muted";
602
713
  }
603
- function ri() {
714
+ function ii() {
604
715
  if (!G.value) return;
605
- let e = ue();
716
+ let e = P();
606
717
  G.value.mcpServers.push({
607
718
  id: e,
608
719
  name: "",
@@ -613,14 +724,14 @@ var Be = o({
613
724
  toolApproval: {}
614
725
  }), J.value.push(e);
615
726
  }
616
- function ii(e) {
727
+ function ai(e) {
617
728
  J.value = J.value.includes(e) ? J.value.filter((t) => t !== e) : [...J.value, e];
618
729
  }
619
- function ai(e) {
730
+ function oi(e) {
620
731
  G.value && (G.value.mcpServers = G.value.mcpServers.filter((t) => t.id !== e), J.value = J.value.filter((t) => t !== e), delete q.value[e]);
621
732
  }
622
- function oi() {
623
- let e = j(G.value);
733
+ function si() {
734
+ let e = M(G.value);
624
735
  return {
625
736
  language: e.language,
626
737
  maxIterations: e.maxIterations,
@@ -649,60 +760,70 @@ var Be = o({
649
760
  }))
650
761
  };
651
762
  }
652
- function si() {
653
- G.value && Object.assign(G.value, b);
763
+ function ci() {
764
+ G.value && Object.assign(G.value, x);
765
+ }
766
+ async function li() {
767
+ G.value && (await U.mutateAsync(si()), q.value = {});
654
768
  }
655
- async function ci() {
656
- G.value && (await U.mutateAsync(oi()), q.value = {});
769
+ function ui(e) {
770
+ let t = H.value?.modelProviders.find((t) => t.provider === e);
771
+ return t ? B("views.settings.assistant_provider_plugin", { name: t.pluginName }) : Ae.find((t) => t.value === e)?.label ?? e;
657
772
  }
658
- function li(e) {
659
- return Ae.find((t) => t.value === e)?.label ?? e;
773
+ function di(e) {
774
+ return H.value?.modelProviders.find((t) => t.provider === e.provider)?.models.find((t) => t.id === e.model)?.name ?? e.model;
660
775
  }
661
- async function ui(e) {
776
+ function fi(e) {
777
+ let t = H.value?.modelProviders.find((t) => t.provider === e)?.status;
778
+ if (!t || t.ready) return;
779
+ let n = typeof t.progress == "number" ? ` (${Math.round(t.progress * 100)}%)` : "";
780
+ return `${t.message || B("views.settings.assistant_model_plugin_loading")}${n}`;
781
+ }
782
+ async function pi(e) {
662
783
  return U.mutateAsync({ models: e });
663
784
  }
664
- function di(e, t) {
785
+ function mi(e, t) {
665
786
  Ke.value = [
666
787
  {
667
788
  label: B("views.settings.assistant_model_make_default"),
668
789
  icon: Be,
669
790
  hide: t._id === Ye.value?._id,
670
791
  disabled: U.isPending.value,
671
- onClick: () => _i(t)
792
+ onClick: () => bi(t)
672
793
  },
673
794
  {
674
795
  label: B("views.settings.assistant_model_edit"),
675
- icon: Pe,
676
- onClick: () => mi(t)
796
+ icon: Fe,
797
+ onClick: () => _i(t)
677
798
  },
678
799
  {
679
800
  ...o,
680
801
  label: B("views.settings.assistant_model_delete"),
681
- onClick: () => gi(t)
802
+ onClick: () => yi(t)
682
803
  }
683
804
  ], Je.value?.toggleMenu(e);
684
805
  }
685
- function fi(e) {
806
+ function hi(e) {
686
807
  We.mutate({
687
808
  scheduleId: e._id,
688
809
  patch: { enabled: !e.enabled }
689
810
  });
690
811
  }
691
- function pi(e, t) {
812
+ function gi(e, t) {
692
813
  Ke.value = [
693
814
  {
694
815
  label: B("views.settings.assistant_schedule_run"),
695
- icon: Re,
816
+ icon: ze,
696
817
  onClick: () => W.mutate(t._id)
697
818
  },
698
819
  t.enabled ? {
699
820
  label: B("views.settings.assistant_schedule_pause"),
700
- icon: je,
701
- onClick: () => fi(t)
821
+ icon: Me,
822
+ onClick: () => hi(t)
702
823
  } : {
703
824
  label: B("views.settings.assistant_schedule_resume"),
704
- icon: De,
705
- onClick: () => fi(t)
825
+ icon: Ee,
826
+ onClick: () => hi(t)
706
827
  },
707
828
  {
708
829
  ...o,
@@ -711,35 +832,36 @@ var Be = o({
711
832
  }
712
833
  ], Je.value?.toggleMenu(e);
713
834
  }
714
- function mi(e) {
835
+ function _i(e) {
715
836
  let t = new Set(X.value.map((e) => e._id));
716
- Fe.openComponentDialog(Xe, {
837
+ ke.openComponentDialog(Q, {
717
838
  data: {
718
839
  title: B(e ? "views.settings.assistant_model_edit" : "views.settings.assistant_model_add"),
719
840
  confirmText: B("components.form.button.save"),
720
841
  awaitConfirm: !0,
721
842
  contentProps: {
722
843
  entry: e ? i(e) : void 0,
723
- models: i(X.value)
844
+ models: i(X.value),
845
+ modelProviders: i(H.value?.modelProviders ?? [])
724
846
  }
725
847
  },
726
848
  onConfirm: async (n) => {
727
- hi((await ui(e ? X.value.map((t) => t._id === e._id ? n : z(t)) : [...X.value.map(z), n])).settings.models.find((n) => e ? n._id === e._id : !t.has(n._id)));
849
+ vi((await pi(e ? X.value.map((t) => t._id === e._id ? n : je(t)) : [...X.value.map(je), n])).settings.models.find((n) => e ? n._id === e._id : !t.has(n._id)));
728
850
  }
729
851
  });
730
852
  }
731
- function hi(e) {
853
+ function vi(e) {
732
854
  let t = e?.capabilities;
733
855
  if (!t) return;
734
- let n = t.error ? B("views.settings.assistant_test_failed", { message: t.error }) : t.toolCalling ? t.vision === !1 ? B("views.settings.assistant_test_vision_missing") : "" : B("views.settings.assistant_test_tools_missing");
735
- n && ke.add({
856
+ let n = H.value?.modelProviders.find((t) => t.provider === e.provider)?.models.find((t) => t.id === e.model), r = t.error ? B("views.settings.assistant_test_failed", { message: t.error }) : t.toolCalling ? t.vision === !1 ? B("views.settings.assistant_test_vision_missing") : "" : B(n?.toolCalling === !1 ? "views.settings.assistant_test_tools_declared" : "views.settings.assistant_test_tools_missing");
857
+ r && z.add({
736
858
  severity: t.error ? "error" : "warn",
737
- detail: n,
859
+ detail: r,
738
860
  life: 8e3
739
861
  });
740
862
  }
741
- function gi(e) {
742
- Fe.openTextDialog({
863
+ function yi(e) {
864
+ ke.openTextDialog({
743
865
  data: {
744
866
  title: B("views.settings.assistant_model_delete"),
745
867
  contentText: B("views.settings.assistant_model_delete_confirm", { name: e.name }),
@@ -747,87 +869,87 @@ var Be = o({
747
869
  confirmButtonProps: { severity: "danger" }
748
870
  },
749
871
  onConfirm: async () => {
750
- await ui(X.value.filter((t) => t._id !== e._id).map(z));
872
+ await pi(X.value.filter((t) => t._id !== e._id).map(je));
751
873
  }
752
874
  });
753
875
  }
754
- async function _i(e) {
876
+ async function bi(e) {
755
877
  await U.mutateAsync({ defaultModelId: e._id });
756
878
  }
757
- function vi(e) {
758
- return G.value?.plugins.find((t) => t.pluginId === e)?.modelId ?? Z;
879
+ function xi(e) {
880
+ return G.value?.plugins.find((t) => t.pluginId === e)?.modelId ?? Lr;
759
881
  }
760
- function yi(e) {
761
- return X.value.find((t) => t._id === vi(e));
882
+ function Si(e) {
883
+ return X.value.find((t) => t._id === xi(e));
762
884
  }
763
- function bi(e, t) {
885
+ function Ci(e, t) {
764
886
  if (!G.value) return;
765
887
  let n = G.value.plugins.filter((t) => t.pluginId !== e);
766
- G.value.plugins = t === Z ? n : [...n, {
888
+ G.value.plugins = t === Lr ? n : [...n, {
767
889
  pluginId: e,
768
890
  modelId: t
769
891
  }];
770
892
  }
771
- function xi(e) {
893
+ function wi(e) {
772
894
  return X.value.find((t) => t.provider === e.provider && t.model === e.model)?.name ?? e.model;
773
895
  }
774
- function Si(e) {
896
+ function Ti(e) {
775
897
  return Ve.value?.find((t) => t._id === e)?.name;
776
898
  }
777
899
  return p(H, (e) => {
778
- e && !G.value && (G.value = j(e.settings));
900
+ e && !G.value && (G.value = M(e.settings));
779
901
  }, { immediate: !0 }), (e, i) => {
780
- let o = re, d = te, p = T, g = me, b = oe, x = Be, k = he, A = Pe, j = O, ie = Ne, ue = Te, P = _e, F = xe, I = Ce, L = Me, R = ge, ke = ne, Ae = D, z = se, Fe = ee("RouterLink"), B = w, V = ae, Le = Re, We = je, Xe = De, Z = ye, Q = be, ei = M, oi = pe, ui = Se, hi = Ie, Ci = le, wi = de, Ti = ce, $ = C;
781
- return n(), m("div", Ze, [u(G) ? (n(), m("div", $e, [
782
- _("div", null, [_("span", et, r(e.$t("views.settings.status")), 1), S(g, { class: "cui-card" }, {
783
- content: f(() => [_("div", tt, [_("div", nt, [_("span", rt, r(e.$t("views.settings.assistant_title")), 1), S(d, {
902
+ let o = fe, d = ee, p = E, _ = pe, x = oe, S = Be, D = L, re = Fe, j = A, M = Pe, P = we, F = he, I = ye, R = xe, Se = Ne, z = me, Oe = te, ke = k, Ae = se, je = h("RouterLink"), B = T, V = ie, Le = ze, We = Me, Z = Ee, Q = _e, Lr = ve, ti = ae, si = de, pi = be, vi = Ie, Ei = N, Di = le, Oi = ce, $ = w;
903
+ return n(), m("div", rt, [u(G) ? (n(), m("div", at, [
904
+ v("div", null, [v("span", ot, r(e.$t("views.settings.status")), 1), C(_, { class: "cui-card" }, {
905
+ content: f(() => [v("div", st, [v("div", ct, [v("span", lt, r(e.$t("views.settings.assistant_title")), 1), C(d, {
784
906
  severity: "secondary",
785
907
  variant: "simple",
786
908
  size: "small",
787
909
  class: "cui-input-switch-hint truncate"
788
910
  }, {
789
- default: f(() => [y(r(u(Ur)), 1)]),
911
+ default: f(() => [b(r(u(Wr)), 1)]),
790
912
  _: 1
791
- })]), S(p, {
913
+ })]), C(p, {
792
914
  class: "ml-auto shrink-0",
793
- severity: u(Vr),
794
- value: u(Hr)
915
+ severity: u(Hr),
916
+ value: u(Ur)
795
917
  }, null, 8, ["severity", "value"])])]),
796
918
  _: 1
797
919
  })]),
798
- _("div", null, [_("span", it, r(e.$t("views.settings.assistant_model")), 1), S(g, { class: "cui-card" }, {
799
- content: f(() => [_("div", at, [
800
- _("div", ot, [_("div", st, [_("label", ct, r(e.$t("components.form.label.enabled")), 1), S(d, {
920
+ v("div", null, [v("span", ut, r(e.$t("views.settings.assistant_model")), 1), C(_, { class: "cui-card" }, {
921
+ content: f(() => [v("div", dt, [
922
+ v("div", ft, [v("div", pt, [v("label", mt, r(e.$t("components.form.label.enabled")), 1), C(d, {
801
923
  severity: "secondary",
802
924
  variant: "simple",
803
925
  size: "small",
804
926
  class: "cui-input-switch-hint"
805
927
  }, {
806
- default: f(() => [y(r(e.$t("views.settings.assistant_enabled_info")), 1)]),
928
+ default: f(() => [b(r(e.$t("views.settings.assistant_enabled_info")), 1)]),
807
929
  _: 1
808
- })]), S(b, {
930
+ })]), C(x, {
809
931
  "model-value": u(H)?.settings.enabled ?? !1,
810
932
  "input-id": "enabled",
811
933
  disabled: u(U).isPending.value,
812
934
  class: "ml-auto shrink-0",
813
935
  "onUpdate:modelValue": i[0] ||= (e) => u(U).mutate({ enabled: e })
814
936
  }, null, 8, ["model-value", "disabled"])]),
815
- S(d, {
937
+ C(d, {
816
938
  severity: "secondary",
817
939
  variant: "simple",
818
940
  size: "small",
819
941
  class: "cui-input-hint"
820
942
  }, {
821
- default: f(() => [y(r(e.$t("views.settings.assistant_models_info")), 1)]),
943
+ default: f(() => [b(r(e.$t("views.settings.assistant_models_info")), 1)]),
822
944
  _: 1
823
945
  }),
824
- u(X).length ? (n(), m("div", lt, [(n(!0), m(h, null, t(u(X), (i) => (n(), m("div", {
946
+ u(X).length ? (n(), m("div", ht, [(n(!0), m(g, null, t(u(X), (i) => (n(), m("div", {
825
947
  key: i._id,
826
948
  class: "flex items-start gap-3 py-3 text-sm"
827
949
  }, [
828
- _("div", ut, [
829
- _("span", dt, r(i.name), 1),
830
- _("div", ft, [
950
+ v("div", gt, [
951
+ v("span", _t, r(i.name), 1),
952
+ v("div", vt, [
831
953
  i._id === u(Ye)?._id ? (n(), s(p, {
832
954
  key: 0,
833
955
  severity: "info",
@@ -840,18 +962,19 @@ var Be = o({
840
962
  value: e.$t("views.settings.assistant_model_admins_only"),
841
963
  class: "text-[10px]"
842
964
  }, null, 8, ["value"])) : c("", !0),
843
- (n(!0), m(h, null, t(u(Ee)(i), (t) => (n(), s(p, {
965
+ (n(!0), m(g, null, t(u(Te)(i), (t) => (n(), s(p, {
844
966
  key: t.key,
845
967
  severity: t.severity,
846
968
  value: e.$t(`views.settings.assistant_capability_${t.key}`),
847
969
  class: "text-[10px]"
848
970
  }, null, 8, ["severity", "value"]))), 128))
849
971
  ]),
850
- _("div", pt, r(li(i.provider)) + " · " + r(i.model), 1),
851
- i.capabilities?.error ? (n(), m("div", mt, r(i.capabilities.error), 1)) : c("", !0)
972
+ v("div", yt, r(ui(i.provider)) + " · " + r(di(i)), 1),
973
+ i.capabilities?.error ? (n(), m("div", bt, r(i.capabilities.error), 1)) : c("", !0),
974
+ fi(i.provider) ? (n(), m("div", xt, r(fi(i.provider)), 1)) : c("", !0)
852
975
  ]),
853
- _("div", ht, [
854
- i._id === u(Ye)?._id ? c("", !0) : v((n(), s(k, {
976
+ v("div", St, [
977
+ i._id === u(Ye)?._id ? c("", !0) : y((n(), s(D, {
855
978
  key: 0,
856
979
  type: "button",
857
980
  severity: "secondary",
@@ -859,9 +982,9 @@ var Be = o({
859
982
  rounded: "",
860
983
  class: "cui-icon-md",
861
984
  disabled: u(U).isPending.value,
862
- onClick: (e) => _i(i)
985
+ onClick: (e) => bi(i)
863
986
  }, {
864
- icon: f(() => [S(x, {
987
+ icon: f(() => [C(S, {
865
988
  width: "100%",
866
989
  height: "100%"
867
990
  })]),
@@ -872,15 +995,15 @@ var Be = o({
872
995
  void 0,
873
996
  { top: !0 }
874
997
  ]]),
875
- v((n(), s(k, {
998
+ y((n(), s(D, {
876
999
  type: "button",
877
1000
  severity: "secondary",
878
1001
  text: "",
879
1002
  rounded: "",
880
1003
  class: "cui-icon-md",
881
- onClick: (e) => mi(i)
1004
+ onClick: (e) => _i(i)
882
1005
  }, {
883
- icon: f(() => [S(A, {
1006
+ icon: f(() => [C(re, {
884
1007
  width: "100%",
885
1008
  height: "100%"
886
1009
  })]),
@@ -891,15 +1014,15 @@ var Be = o({
891
1014
  void 0,
892
1015
  { top: !0 }
893
1016
  ]]),
894
- v((n(), s(k, {
1017
+ y((n(), s(D, {
895
1018
  type: "button",
896
1019
  severity: "danger",
897
1020
  text: "",
898
1021
  rounded: "",
899
1022
  class: "cui-icon-md",
900
- onClick: (e) => gi(i)
1023
+ onClick: (e) => yi(i)
901
1024
  }, {
902
- icon: f(() => [S(j, {
1025
+ icon: f(() => [C(j, {
903
1026
  width: "100%",
904
1027
  height: "100%"
905
1028
  })]),
@@ -911,158 +1034,158 @@ var Be = o({
911
1034
  { top: !0 }
912
1035
  ]])
913
1036
  ]),
914
- _("div", gt, [S(k, {
1037
+ v("div", Ct, [C(D, {
915
1038
  type: "button",
916
1039
  severity: "secondary",
917
1040
  text: "",
918
1041
  rounded: "",
919
1042
  class: "cui-icon-md",
920
- onClick: (e) => di(e, i)
1043
+ onClick: (e) => mi(e, i)
921
1044
  }, {
922
- icon: f(() => [S(ie, {
1045
+ icon: f(() => [C(M, {
923
1046
  width: "100%",
924
1047
  height: "100%"
925
1048
  })]),
926
1049
  _: 1
927
1050
  }, 8, ["onClick"])])
928
- ]))), 128))])) : (n(), m("div", _t, r(e.$t("views.settings.assistant_models_empty")), 1)),
929
- _("div", vt, [S(k, {
1051
+ ]))), 128))])) : (n(), m("div", wt, r(e.$t("views.settings.assistant_models_empty")), 1)),
1052
+ v("div", Tt, [C(D, {
930
1053
  type: "button",
931
1054
  severity: "secondary",
932
1055
  outlined: "",
933
1056
  class: "cui-button-medium ml-auto",
934
1057
  label: e.$t("views.settings.assistant_model_add"),
935
1058
  disabled: u(X).length >= 20,
936
- onClick: i[1] ||= (e) => mi()
1059
+ onClick: i[1] ||= (e) => _i()
937
1060
  }, {
938
- icon: f(() => [S(ue, { class: "w-4 h-4" })]),
1061
+ icon: f(() => [C(P, { class: "w-4 h-4" })]),
939
1062
  _: 1
940
1063
  }, 8, ["label", "disabled"])])
941
1064
  ])]),
942
1065
  _: 1
943
1066
  })]),
944
- _("div", null, [_("span", yt, r(e.$t("views.settings.assistant_plugins")), 1), S(g, { class: "cui-card" }, {
945
- content: f(() => [_("div", bt, [
946
- S(d, {
1067
+ v("div", null, [v("span", Et, r(e.$t("views.settings.assistant_plugins")), 1), C(_, { class: "cui-card" }, {
1068
+ content: f(() => [v("div", Dt, [
1069
+ C(d, {
947
1070
  severity: "secondary",
948
1071
  variant: "simple",
949
1072
  size: "small",
950
1073
  class: "cui-input-hint"
951
1074
  }, {
952
- default: f(() => [y(r(e.$t("views.settings.assistant_plugins_info")), 1)]),
1075
+ default: f(() => [b(r(e.$t("views.settings.assistant_plugins_info")), 1)]),
953
1076
  _: 1
954
1077
  }),
955
- u(H)?.plugins.length ? (n(!0), m(h, { key: 0 }, t(u(H).plugins, (t) => (n(), m("div", {
1078
+ u(H)?.plugins.length ? (n(!0), m(g, { key: 0 }, t(u(H).plugins, (t) => (n(), m("div", {
956
1079
  key: t.id,
957
1080
  class: "flex flex-col field-gap"
958
- }, [_("div", xt, [_("label", {
1081
+ }, [v("div", Ot, [v("label", {
959
1082
  for: `plugin-${t.id}`,
960
1083
  class: "cui-label truncate"
961
- }, r(t.name), 9, St), yi(t.id)?.capabilities?.vision === !1 ? (n(), s(p, {
1084
+ }, r(t.name), 9, kt), Si(t.id)?.capabilities?.vision === !1 ? (n(), s(p, {
962
1085
  key: 0,
963
1086
  severity: "warn",
964
1087
  value: e.$t("views.settings.assistant_capability_no_vision"),
965
1088
  class: "shrink-0 text-[10px]"
966
- }, null, 8, ["value"])) : c("", !0)]), S(P, {
967
- "model-value": vi(t.id),
1089
+ }, null, 8, ["value"])) : c("", !0)]), C(F, {
1090
+ "model-value": xi(t.id),
968
1091
  "input-id": `plugin-${t.id}`,
969
- options: u(Ar),
1092
+ options: u(Xe),
970
1093
  "option-label": "label",
971
1094
  "option-value": "value",
972
1095
  fluid: "",
973
- "onUpdate:modelValue": (e) => bi(t.id, e)
1096
+ "onUpdate:modelValue": (e) => Ci(t.id, e)
974
1097
  }, null, 8, [
975
1098
  "model-value",
976
1099
  "input-id",
977
1100
  "options",
978
1101
  "onUpdate:modelValue"
979
- ])]))), 128)) : (n(), m("div", Ct, r(e.$t("views.settings.assistant_plugins_empty")), 1)),
980
- _("div", wt, [S(k, {
1102
+ ])]))), 128)) : (n(), m("div", At, r(e.$t("views.settings.assistant_plugins_empty")), 1)),
1103
+ v("div", jt, [C(D, {
981
1104
  type: "button",
982
1105
  loading: u(U).isPending.value,
983
1106
  class: "cui-button-medium ml-auto",
984
1107
  label: e.$t("components.form.button.save"),
985
- onClick: ci
1108
+ onClick: li
986
1109
  }, null, 8, ["loading", "label"])])
987
1110
  ])]),
988
1111
  _: 1
989
1112
  })]),
990
- _("div", null, [_("span", Tt, r(e.$t("views.settings.assistant_behavior")), 1), S(g, { class: "cui-card" }, {
991
- content: f(() => [_("div", Et, [
992
- _("div", Dt, [_("div", Ot, [_("label", kt, r(e.$t("views.settings.assistant_memory")), 1), S(d, {
1113
+ v("div", null, [v("span", Mt, r(e.$t("views.settings.assistant_behavior")), 1), C(_, { class: "cui-card" }, {
1114
+ content: f(() => [v("div", Nt, [
1115
+ v("div", Pt, [v("div", Ft, [v("label", It, r(e.$t("views.settings.assistant_memory")), 1), C(d, {
993
1116
  severity: "secondary",
994
1117
  variant: "simple",
995
1118
  size: "small",
996
1119
  class: "cui-input-switch-hint"
997
1120
  }, {
998
- default: f(() => [y(r(e.$t("views.settings.assistant_memory_info")), 1)]),
1121
+ default: f(() => [b(r(e.$t("views.settings.assistant_memory_info")), 1)]),
999
1122
  _: 1
1000
- })]), S(b, {
1123
+ })]), C(x, {
1001
1124
  modelValue: u(G).memoryEnabled,
1002
1125
  "onUpdate:modelValue": i[2] ||= (e) => u(G).memoryEnabled = e,
1003
1126
  "input-id": "memoryEnabled",
1004
1127
  class: "ml-auto shrink-0"
1005
1128
  }, null, 8, ["modelValue"])]),
1006
- _("div", At, [_("div", jt, [_("label", Mt, r(e.$t("views.settings.assistant_terminal")), 1), S(d, {
1129
+ v("div", Lt, [v("div", Rt, [v("label", zt, r(e.$t("views.settings.assistant_terminal")), 1), C(d, {
1007
1130
  severity: "secondary",
1008
1131
  variant: "simple",
1009
1132
  size: "small",
1010
1133
  class: "cui-input-switch-hint"
1011
1134
  }, {
1012
- default: f(() => [y(r(e.$t("views.settings.assistant_terminal_info")), 1)]),
1135
+ default: f(() => [b(r(e.$t("views.settings.assistant_terminal_info")), 1)]),
1013
1136
  _: 1
1014
- })]), S(b, {
1137
+ })]), C(x, {
1015
1138
  modelValue: u(G).terminalEnabled,
1016
1139
  "onUpdate:modelValue": i[3] ||= (e) => u(G).terminalEnabled = e,
1017
1140
  "input-id": "terminalEnabled",
1018
1141
  class: "ml-auto shrink-0"
1019
1142
  }, null, 8, ["modelValue"])]),
1020
- _("div", Nt, [
1021
- _("label", Pt, r(e.$t("views.settings.assistant_language_label")), 1),
1022
- S(P, {
1143
+ v("div", Bt, [
1144
+ v("label", Vt, r(e.$t("views.settings.assistant_language_label")), 1),
1145
+ C(F, {
1023
1146
  modelValue: u(G).language,
1024
1147
  "onUpdate:modelValue": i[4] ||= (e) => u(G).language = e,
1025
1148
  "input-id": "language",
1026
- options: u(Nr),
1149
+ options: u($e),
1027
1150
  "option-label": "label",
1028
1151
  "option-value": "value",
1029
1152
  filter: "",
1030
1153
  fluid: ""
1031
1154
  }, null, 8, ["modelValue", "options"]),
1032
- S(d, {
1155
+ C(d, {
1033
1156
  severity: "secondary",
1034
1157
  variant: "simple",
1035
1158
  size: "small",
1036
1159
  class: "cui-input-hint"
1037
1160
  }, {
1038
- default: f(() => [y(r(e.$t("views.settings.assistant_language_info")), 1)]),
1161
+ default: f(() => [b(r(e.$t("views.settings.assistant_language_info")), 1)]),
1039
1162
  _: 1
1040
1163
  })
1041
1164
  ]),
1042
- _("div", Ft, [
1043
- _("label", It, r(e.$t("views.settings.assistant_reasoning_label")), 1),
1044
- S(P, {
1165
+ v("div", Ht, [
1166
+ v("label", Ut, r(e.$t("views.settings.assistant_reasoning_label")), 1),
1167
+ C(F, {
1045
1168
  modelValue: u(G).reasoning,
1046
1169
  "onUpdate:modelValue": i[5] ||= (e) => u(G).reasoning = e,
1047
1170
  "input-id": "reasoning",
1048
- options: u(Pr),
1171
+ options: u(et),
1049
1172
  "option-label": "label",
1050
1173
  "option-value": "value",
1051
1174
  fluid: ""
1052
1175
  }, null, 8, ["modelValue", "options"]),
1053
- S(d, {
1176
+ C(d, {
1054
1177
  severity: "secondary",
1055
1178
  variant: "simple",
1056
1179
  size: "small",
1057
1180
  class: "cui-input-hint"
1058
1181
  }, {
1059
- default: f(() => [y(r(e.$t("views.settings.assistant_reasoning_info")), 1)]),
1182
+ default: f(() => [b(r(e.$t("views.settings.assistant_reasoning_info")), 1)]),
1060
1183
  _: 1
1061
1184
  })
1062
1185
  ]),
1063
- _("div", Lt, [_("div", Rt, [
1064
- _("label", zt, r(e.$t("views.settings.assistant_max_iterations_label")), 1),
1065
- S(F, {
1186
+ v("div", Wt, [v("div", Gt, [
1187
+ v("label", Kt, r(e.$t("views.settings.assistant_max_iterations_label")), 1),
1188
+ C(I, {
1066
1189
  modelValue: u(G).maxIterations,
1067
1190
  "onUpdate:modelValue": i[6] ||= (e) => u(G).maxIterations = e,
1068
1191
  min: 1,
@@ -1070,18 +1193,18 @@ var Be = o({
1070
1193
  "use-grouping": !1,
1071
1194
  fluid: ""
1072
1195
  }, null, 8, ["modelValue"]),
1073
- S(d, {
1196
+ C(d, {
1074
1197
  severity: "secondary",
1075
1198
  variant: "simple",
1076
1199
  size: "small",
1077
1200
  class: "cui-input-hint"
1078
1201
  }, {
1079
- default: f(() => [y(r(e.$t("views.settings.assistant_max_iterations_info")), 1)]),
1202
+ default: f(() => [b(r(e.$t("views.settings.assistant_max_iterations_info")), 1)]),
1080
1203
  _: 1
1081
1204
  })
1082
- ]), _("div", Bt, [
1083
- _("label", Vt, r(e.$t("views.settings.assistant_max_tool_calls_label")), 1),
1084
- S(F, {
1205
+ ]), v("div", qt, [
1206
+ v("label", Jt, r(e.$t("views.settings.assistant_max_tool_calls_label")), 1),
1207
+ C(I, {
1085
1208
  modelValue: u(G).maxToolCalls,
1086
1209
  "onUpdate:modelValue": i[7] ||= (e) => u(G).maxToolCalls = e,
1087
1210
  min: 1,
@@ -1089,19 +1212,19 @@ var Be = o({
1089
1212
  "use-grouping": !1,
1090
1213
  fluid: ""
1091
1214
  }, null, 8, ["modelValue"]),
1092
- S(d, {
1215
+ C(d, {
1093
1216
  severity: "secondary",
1094
1217
  variant: "simple",
1095
1218
  size: "small",
1096
1219
  class: "cui-input-hint"
1097
1220
  }, {
1098
- default: f(() => [y(r(e.$t("views.settings.assistant_max_tool_calls_info")), 1)]),
1221
+ default: f(() => [b(r(e.$t("views.settings.assistant_max_tool_calls_info")), 1)]),
1099
1222
  _: 1
1100
1223
  })
1101
1224
  ])]),
1102
- _("div", Ht, [
1103
- _("label", Ut, r(e.$t("views.settings.assistant_context_tokens_label")), 1),
1104
- S(F, {
1225
+ v("div", Yt, [
1226
+ v("label", Xt, r(e.$t("views.settings.assistant_context_tokens_label")), 1),
1227
+ C(I, {
1105
1228
  id: "contextTokens",
1106
1229
  modelValue: u(G).contextTokens,
1107
1230
  "onUpdate:modelValue": i[8] ||= (e) => u(G).contextTokens = e,
@@ -1111,19 +1234,19 @@ var Be = o({
1111
1234
  "use-grouping": !1,
1112
1235
  fluid: ""
1113
1236
  }, null, 8, ["modelValue"]),
1114
- S(d, {
1237
+ C(d, {
1115
1238
  severity: "secondary",
1116
1239
  variant: "simple",
1117
1240
  size: "small",
1118
1241
  class: "cui-input-hint"
1119
1242
  }, {
1120
- default: f(() => [y(r(e.$t("views.settings.assistant_context_tokens_info")), 1)]),
1243
+ default: f(() => [b(r(e.$t("views.settings.assistant_context_tokens_info")), 1)]),
1121
1244
  _: 1
1122
1245
  })
1123
1246
  ]),
1124
- _("div", Wt, [_("div", Gt, [
1125
- _("label", Kt, r(e.$t("views.settings.assistant_history_threads_label")), 1),
1126
- S(F, {
1247
+ v("div", Zt, [v("div", Qt, [
1248
+ v("label", $t, r(e.$t("views.settings.assistant_history_threads_label")), 1),
1249
+ C(I, {
1127
1250
  id: "historyThreads",
1128
1251
  modelValue: u(G).historyThreads,
1129
1252
  "onUpdate:modelValue": i[9] ||= (e) => u(G).historyThreads = e,
@@ -1132,18 +1255,18 @@ var Be = o({
1132
1255
  "use-grouping": !1,
1133
1256
  fluid: ""
1134
1257
  }, null, 8, ["modelValue"]),
1135
- S(d, {
1258
+ C(d, {
1136
1259
  severity: "secondary",
1137
1260
  variant: "simple",
1138
1261
  size: "small",
1139
1262
  class: "cui-input-hint"
1140
1263
  }, {
1141
- default: f(() => [y(r(e.$t("views.settings.assistant_history_threads_info")), 1)]),
1264
+ default: f(() => [b(r(e.$t("views.settings.assistant_history_threads_info")), 1)]),
1142
1265
  _: 1
1143
1266
  })
1144
- ]), _("div", qt, [
1145
- _("label", Jt, r(e.$t("views.settings.assistant_history_images_label")), 1),
1146
- S(F, {
1267
+ ]), v("div", en, [
1268
+ v("label", tn, r(e.$t("views.settings.assistant_history_images_label")), 1),
1269
+ C(I, {
1147
1270
  id: "historyImages",
1148
1271
  modelValue: u(G).historyImages,
1149
1272
  "onUpdate:modelValue": i[10] ||= (e) => u(G).historyImages = e,
@@ -1152,202 +1275,202 @@ var Be = o({
1152
1275
  "use-grouping": !1,
1153
1276
  fluid: ""
1154
1277
  }, null, 8, ["modelValue"]),
1155
- S(d, {
1278
+ C(d, {
1156
1279
  severity: "secondary",
1157
1280
  variant: "simple",
1158
1281
  size: "small",
1159
1282
  class: "cui-input-hint"
1160
1283
  }, {
1161
- default: f(() => [y(r(e.$t("views.settings.assistant_history_images_info")), 1)]),
1284
+ default: f(() => [b(r(e.$t("views.settings.assistant_history_images_info")), 1)]),
1162
1285
  _: 1
1163
1286
  })
1164
1287
  ])]),
1165
- _("div", Yt, [
1166
- _("label", Xt, r(e.$t("views.settings.assistant_extra_prompt_label")), 1),
1167
- S(I, {
1288
+ v("div", nn, [
1289
+ v("label", rn, r(e.$t("views.settings.assistant_extra_prompt_label")), 1),
1290
+ C(R, {
1168
1291
  modelValue: u(G).systemPromptExtra,
1169
1292
  "onUpdate:modelValue": i[11] ||= (e) => u(G).systemPromptExtra = e,
1170
1293
  rows: "3",
1171
1294
  "auto-resize": "",
1172
1295
  placeholder: e.$t("views.settings.assistant_extra_prompt_placeholder")
1173
1296
  }, null, 8, ["modelValue", "placeholder"]),
1174
- S(d, {
1297
+ C(d, {
1175
1298
  severity: "secondary",
1176
1299
  variant: "simple",
1177
1300
  size: "small",
1178
1301
  class: "cui-input-hint"
1179
1302
  }, {
1180
- default: f(() => [y(r(e.$t("views.settings.assistant_extra_prompt_info")), 1)]),
1303
+ default: f(() => [b(r(e.$t("views.settings.assistant_extra_prompt_info")), 1)]),
1181
1304
  _: 1
1182
1305
  })
1183
1306
  ]),
1184
- _("div", Zt, [S(k, {
1307
+ v("div", an, [C(D, {
1185
1308
  type: "button",
1186
1309
  severity: "secondary",
1187
1310
  outlined: "",
1188
1311
  class: "cui-button-medium ml-auto",
1189
1312
  label: e.$t("components.form.button.reset_defaults"),
1190
- onClick: si
1313
+ onClick: ci
1191
1314
  }, {
1192
- icon: f(() => [S(L, { class: "w-4 h-4" })]),
1315
+ icon: f(() => [C(Se, { class: "w-4 h-4" })]),
1193
1316
  _: 1
1194
- }, 8, ["label"]), S(k, {
1317
+ }, 8, ["label"]), C(D, {
1195
1318
  type: "button",
1196
1319
  loading: u(U).isPending.value,
1197
1320
  class: "cui-button-medium",
1198
1321
  label: e.$t("components.form.button.save"),
1199
- onClick: ci
1322
+ onClick: li
1200
1323
  }, null, 8, ["loading", "label"])])
1201
1324
  ])]),
1202
1325
  _: 1
1203
1326
  })]),
1204
- _("div", null, [_("span", Qt, r(e.$t("views.settings.assistant_mcp")), 1), S(g, { class: "cui-card" }, {
1205
- content: f(() => [_("div", $t, [
1206
- S(d, {
1327
+ v("div", null, [v("span", on, r(e.$t("views.settings.assistant_mcp")), 1), C(_, { class: "cui-card" }, {
1328
+ content: f(() => [v("div", sn, [
1329
+ C(d, {
1207
1330
  severity: "secondary",
1208
1331
  variant: "simple",
1209
1332
  size: "small",
1210
1333
  class: "cui-input-hint"
1211
1334
  }, {
1212
- default: f(() => [y(r(e.$t("views.settings.assistant_mcp_info")), 1)]),
1335
+ default: f(() => [b(r(e.$t("views.settings.assistant_mcp_info")), 1)]),
1213
1336
  _: 1
1214
1337
  }),
1215
- _("div", en, [_("div", tn, [_("div", nn, [_("span", rn, r(e.$t("views.settings.assistant_mcp_enabled_label")), 1), _("span", an, r(e.$t("views.settings.assistant_mcp_enabled_info")), 1)]), S(b, {
1338
+ v("div", cn, [v("div", ln, [v("div", un, [v("span", dn, r(e.$t("views.settings.assistant_mcp_enabled_label")), 1), v("span", fn, r(e.$t("views.settings.assistant_mcp_enabled_info")), 1)]), C(x, {
1216
1339
  modelValue: u(G).mcpEnabled,
1217
1340
  "onUpdate:modelValue": i[12] ||= (e) => u(G).mcpEnabled = e
1218
- }, null, 8, ["modelValue"])]), _("div", on, [_("div", sn, [_("span", cn, r(e.$t("views.settings.assistant_mcp_writes_label")), 1), _("span", ln, r(e.$t("views.settings.assistant_mcp_writes_info")), 1)]), S(b, {
1341
+ }, null, 8, ["modelValue"])]), v("div", pn, [v("div", mn, [v("span", hn, r(e.$t("views.settings.assistant_mcp_writes_label")), 1), v("span", gn, r(e.$t("views.settings.assistant_mcp_writes_info")), 1)]), C(x, {
1219
1342
  modelValue: u(G).mcpWrites,
1220
1343
  "onUpdate:modelValue": i[13] ||= (e) => u(G).mcpWrites = e,
1221
1344
  disabled: !u(G).mcpEnabled
1222
1345
  }, null, 8, ["modelValue", "disabled"])])]),
1223
- u(G).mcpEnabled ? (n(), m("div", un, [_("div", dn, [
1224
- _("label", fn, r(e.$t("views.settings.assistant_mcp_endpoint_label")), 1),
1225
- S(z, null, {
1226
- default: f(() => [S(R, {
1346
+ u(G).mcpEnabled ? (n(), m("div", _n, [v("div", vn, [
1347
+ v("label", yn, r(e.$t("views.settings.assistant_mcp_endpoint_label")), 1),
1348
+ C(Ae, null, {
1349
+ default: f(() => [C(z, {
1227
1350
  id: "mcpEndpoint",
1228
- "model-value": u(Fr),
1351
+ "model-value": u(tt),
1229
1352
  readonly: "",
1230
1353
  class: "font-mono text-sm"
1231
- }, null, 8, ["model-value"]), S(Ae, null, {
1232
- default: f(() => [S(ke, {
1354
+ }, null, 8, ["model-value"]), C(ke, null, {
1355
+ default: f(() => [C(Oe, {
1233
1356
  "action-text": e.$t("components.form.tooltip.copied"),
1234
- icon: u(we),
1357
+ icon: u(Ce),
1235
1358
  "button-props": {
1236
1359
  severity: "secondary",
1237
1360
  text: !0
1238
1361
  },
1239
- onAction: i[14] ||= (e) => u(fe)(u(Fr))
1362
+ onAction: i[14] ||= (e) => u(ue)(u(tt))
1240
1363
  }, null, 8, ["action-text", "icon"])]),
1241
1364
  _: 1
1242
1365
  })]),
1243
1366
  _: 1
1244
1367
  }),
1245
- S(d, {
1368
+ C(d, {
1246
1369
  severity: "secondary",
1247
1370
  variant: "simple",
1248
1371
  size: "small",
1249
1372
  class: "cui-input-hint"
1250
1373
  }, {
1251
- default: f(() => [y(r(e.$t("views.settings.assistant_mcp_token_info")) + " ", 1), S(Fe, {
1374
+ default: f(() => [b(r(e.$t("views.settings.assistant_mcp_token_info")) + " ", 1), C(je, {
1252
1375
  to: { name: "SettingsAccount" },
1253
1376
  class: "underline"
1254
1377
  }, {
1255
- default: f(() => [y(r(e.$t("views.settings.assistant_mcp_token_link")), 1)]),
1378
+ default: f(() => [b(r(e.$t("views.settings.assistant_mcp_token_link")), 1)]),
1256
1379
  _: 1
1257
1380
  })]),
1258
1381
  _: 1
1259
1382
  })
1260
- ]), _("div", pn, [
1261
- _("label", mn, r(e.$t("views.settings.assistant_mcp_client_label")), 1),
1262
- S(P, {
1383
+ ]), v("div", bn, [
1384
+ v("label", xn, r(e.$t("views.settings.assistant_mcp_client_label")), 1),
1385
+ C(F, {
1263
1386
  modelValue: u(Y),
1264
1387
  "onUpdate:modelValue": i[15] ||= (e) => l(Y) ? Y.value = e : null,
1265
1388
  "input-id": "mcpClient",
1266
- options: u(Ir),
1389
+ options: u(nt),
1267
1390
  "option-label": "label",
1268
1391
  "option-value": "value",
1269
1392
  class: "w-full"
1270
1393
  }, null, 8, ["modelValue", "options"]),
1271
- S(z, null, {
1272
- default: f(() => [S(I, {
1394
+ C(Ae, null, {
1395
+ default: f(() => [C(R, {
1273
1396
  id: "mcpSnippet",
1274
- "model-value": u(Lr),
1397
+ "model-value": u(Rr),
1275
1398
  readonly: "",
1276
1399
  "auto-resize": "",
1277
1400
  rows: "3",
1278
1401
  class: "font-mono text-xs"
1279
- }, null, 8, ["model-value"]), S(Ae, null, {
1280
- default: f(() => [S(ke, {
1402
+ }, null, 8, ["model-value"]), C(ke, null, {
1403
+ default: f(() => [C(Oe, {
1281
1404
  "action-text": e.$t("components.form.tooltip.copied"),
1282
- icon: u(we),
1405
+ icon: u(Ce),
1283
1406
  "button-props": {
1284
1407
  severity: "secondary",
1285
1408
  text: !0
1286
1409
  },
1287
- onAction: i[16] ||= (e) => u(fe)(u(Lr))
1410
+ onAction: i[16] ||= (e) => u(ue)(u(Rr))
1288
1411
  }, null, 8, ["action-text", "icon"])]),
1289
1412
  _: 1
1290
1413
  })]),
1291
1414
  _: 1
1292
1415
  }),
1293
- S(d, {
1416
+ C(d, {
1294
1417
  severity: "secondary",
1295
1418
  variant: "simple",
1296
1419
  size: "small",
1297
1420
  class: "cui-input-hint"
1298
1421
  }, {
1299
- default: f(() => [y(r(e.$t("views.settings.assistant_mcp_snippet_info")), 1)]),
1422
+ default: f(() => [b(r(e.$t("views.settings.assistant_mcp_snippet_info")), 1)]),
1300
1423
  _: 1
1301
1424
  })
1302
1425
  ])])) : c("", !0),
1303
- _("div", hn, [S(k, {
1426
+ v("div", Sn, [C(D, {
1304
1427
  type: "button",
1305
1428
  loading: u(U).isPending.value,
1306
1429
  class: "cui-button-medium ml-auto",
1307
1430
  label: e.$t("components.form.button.save"),
1308
- onClick: ci
1431
+ onClick: li
1309
1432
  }, null, 8, ["loading", "label"])])
1310
1433
  ])]),
1311
1434
  _: 1
1312
1435
  })]),
1313
- _("div", null, [_("span", gn, r(e.$t("views.settings.assistant_external")), 1), S(g, { class: "cui-card" }, {
1314
- content: f(() => [_("div", _n, [
1315
- S(d, {
1436
+ v("div", null, [v("span", Cn, r(e.$t("views.settings.assistant_external")), 1), C(_, { class: "cui-card" }, {
1437
+ content: f(() => [v("div", wn, [
1438
+ C(d, {
1316
1439
  severity: "secondary",
1317
1440
  variant: "simple",
1318
1441
  size: "small",
1319
1442
  class: "cui-input-hint"
1320
1443
  }, {
1321
- default: f(() => [y(r(e.$t("views.settings.assistant_external_info")), 1)]),
1444
+ default: f(() => [b(r(e.$t("views.settings.assistant_external_info")), 1)]),
1322
1445
  _: 1
1323
1446
  }),
1324
- (n(!0), m(h, null, t(u(G).mcpServers, (t) => (n(), m("div", {
1447
+ (n(!0), m(g, null, t(u(G).mcpServers, (t) => (n(), m("div", {
1325
1448
  key: t.id,
1326
1449
  class: "cui-assistant-server overflow-hidden rounded-xl"
1327
- }, [_("button", {
1450
+ }, [v("button", {
1328
1451
  type: "button",
1329
1452
  class: "flex w-full cursor-pointer items-center gap-3 p-4 text-left",
1330
1453
  "aria-expanded": u(J).includes(t.id),
1331
- onClick: (e) => ii(t.id)
1332
- }, [_("div", yn, [_("span", bn, r(t.name || e.$t("views.settings.assistant_external_new")), 1), ti(t.id) ? (n(), m("span", {
1454
+ onClick: (e) => ai(t.id)
1455
+ }, [v("div", En, [v("span", Dn, r(t.name || e.$t("views.settings.assistant_external_new")), 1), ni(t.id) ? (n(), m("span", {
1333
1456
  key: 0,
1334
- class: a(["truncate text-xs", ni(t.id)])
1335
- }, r(ti(t.id)), 3)) : c("", !0)]), S(B, { class: a(["h-5 w-5 shrink-0 text-muted transition-transform duration-200", { "rotate-180": u(J).includes(t.id) }]) }, null, 8, ["class"])], 8, vn), _("div", { class: a(["cui-assistant-server-body grid", { "cui-assistant-server-open": u(J).includes(t.id) }]) }, [_("div", {
1457
+ class: a(["truncate text-xs", ri(t.id)])
1458
+ }, r(ni(t.id)), 3)) : c("", !0)]), C(B, { class: a(["h-5 w-5 shrink-0 text-muted transition-transform duration-200", { "rotate-180": u(J).includes(t.id) }]) }, null, 8, ["class"])], 8, Tn), v("div", { class: a(["cui-assistant-server-body grid", { "cui-assistant-server-open": u(J).includes(t.id) }]) }, [v("div", {
1336
1459
  class: "min-h-0 overflow-hidden",
1337
1460
  inert: !u(J).includes(t.id)
1338
- }, [_("div", Sn, [
1339
- _("div", Cn, [_("div", wn, [_("label", {
1461
+ }, [v("div", kn, [
1462
+ v("div", An, [v("div", jn, [v("label", {
1340
1463
  for: `server-enabled-${t.id}`,
1341
1464
  class: "cui-label-switch"
1342
- }, r(e.$t("components.form.label.enabled")), 9, Tn), S(d, {
1465
+ }, r(e.$t("components.form.label.enabled")), 9, Mn), C(d, {
1343
1466
  severity: "secondary",
1344
1467
  variant: "simple",
1345
1468
  size: "small",
1346
1469
  class: "cui-input-switch-hint"
1347
1470
  }, {
1348
- default: f(() => [y(r(e.$t("views.settings.assistant_external_enabled_info")), 1)]),
1471
+ default: f(() => [b(r(e.$t("views.settings.assistant_external_enabled_info")), 1)]),
1349
1472
  _: 1
1350
- })]), S(b, {
1473
+ })]), C(x, {
1351
1474
  modelValue: t.enabled,
1352
1475
  "onUpdate:modelValue": (e) => t.enabled = e,
1353
1476
  "input-id": `server-enabled-${t.id}`,
@@ -1357,10 +1480,10 @@ var Be = o({
1357
1480
  "onUpdate:modelValue",
1358
1481
  "input-id"
1359
1482
  ])]),
1360
- _("div", En, [_("div", Dn, [_("label", {
1483
+ v("div", Nn, [v("div", Pn, [v("label", {
1361
1484
  for: `server-name-${t.id}`,
1362
1485
  class: "cui-label"
1363
- }, r(e.$t("views.settings.assistant_external_name")), 9, On), S(R, {
1486
+ }, r(e.$t("views.settings.assistant_external_name")), 9, Fn), C(z, {
1364
1487
  id: `server-name-${t.id}`,
1365
1488
  modelValue: t.name,
1366
1489
  "onUpdate:modelValue": (e) => t.name = e,
@@ -1370,10 +1493,10 @@ var Be = o({
1370
1493
  "id",
1371
1494
  "modelValue",
1372
1495
  "onUpdate:modelValue"
1373
- ])]), _("div", kn, [_("label", {
1496
+ ])]), v("div", In, [v("label", {
1374
1497
  for: `server-url-${t.id}`,
1375
1498
  class: "cui-label"
1376
- }, r(e.$t("views.settings.assistant_external_url")), 9, An), S(R, {
1499
+ }, r(e.$t("views.settings.assistant_external_url")), 9, Ln), C(z, {
1377
1500
  id: `server-url-${t.id}`,
1378
1501
  modelValue: t.url,
1379
1502
  "onUpdate:modelValue": (e) => t.url = e,
@@ -1384,12 +1507,12 @@ var Be = o({
1384
1507
  "modelValue",
1385
1508
  "onUpdate:modelValue"
1386
1509
  ])])]),
1387
- _("div", jn, [
1388
- _("label", {
1510
+ v("div", Rn, [
1511
+ v("label", {
1389
1512
  for: `server-token-${t.id}`,
1390
1513
  class: "cui-label"
1391
- }, r(e.$t("views.settings.assistant_external_token")), 9, Mn),
1392
- S(V, {
1514
+ }, r(e.$t("views.settings.assistant_external_token")), 9, zn),
1515
+ C(V, {
1393
1516
  id: `server-token-${t.id}`,
1394
1517
  modelValue: u(q)[t.id],
1395
1518
  "onUpdate:modelValue": (e) => u(q)[t.id] = e,
@@ -1404,28 +1527,28 @@ var Be = o({
1404
1527
  "onUpdate:modelValue",
1405
1528
  "placeholder"
1406
1529
  ]),
1407
- S(d, {
1530
+ C(d, {
1408
1531
  severity: "secondary",
1409
1532
  variant: "simple",
1410
1533
  size: "small",
1411
1534
  class: "cui-input-hint"
1412
1535
  }, {
1413
- default: f(() => [y(r(t.tokenSet ? e.$t("views.settings.assistant_external_token_set") : e.$t("views.settings.assistant_external_token_info")), 1)]),
1536
+ default: f(() => [b(r(t.tokenSet ? e.$t("views.settings.assistant_external_token_set") : e.$t("views.settings.assistant_external_token_info")), 1)]),
1414
1537
  _: 2
1415
1538
  }, 1024)
1416
1539
  ]),
1417
- _("div", Nn, [_("div", Pn, [_("label", {
1540
+ v("div", Bn, [v("div", Vn, [v("label", {
1418
1541
  for: `server-insecure-${t.id}`,
1419
1542
  class: "cui-label-switch"
1420
- }, r(e.$t("views.settings.assistant_external_insecure")), 9, Fn), S(d, {
1543
+ }, r(e.$t("views.settings.assistant_external_insecure")), 9, Hn), C(d, {
1421
1544
  severity: "secondary",
1422
1545
  variant: "simple",
1423
1546
  size: "small",
1424
1547
  class: "cui-input-switch-hint"
1425
1548
  }, {
1426
- default: f(() => [y(r(e.$t("views.settings.assistant_external_insecure_info")), 1)]),
1549
+ default: f(() => [b(r(e.$t("views.settings.assistant_external_insecure_info")), 1)]),
1427
1550
  _: 1
1428
- })]), S(b, {
1551
+ })]), C(x, {
1429
1552
  "input-id": `server-insecure-${t.id}`,
1430
1553
  modelValue: t.insecure,
1431
1554
  "onUpdate:modelValue": (e) => t.insecure = e,
@@ -1435,81 +1558,81 @@ var Be = o({
1435
1558
  "modelValue",
1436
1559
  "onUpdate:modelValue"
1437
1560
  ])]),
1438
- _("div", In, [S(k, {
1561
+ v("div", Un, [C(D, {
1439
1562
  type: "button",
1440
1563
  severity: "danger",
1441
1564
  outlined: "",
1442
1565
  class: "cui-button-medium ml-auto",
1443
1566
  label: e.$t("views.settings.assistant_external_remove"),
1444
- onClick: (e) => ai(t.id)
1567
+ onClick: (e) => oi(t.id)
1445
1568
  }, {
1446
- icon: f(() => [S(j, { class: "w-4 h-4" })]),
1569
+ icon: f(() => [C(j, { class: "w-4 h-4" })]),
1447
1570
  _: 1
1448
1571
  }, 8, ["label", "onClick"])])
1449
- ])], 8, xn)], 2)]))), 128)),
1450
- _("div", Ln, [S(k, {
1572
+ ])], 8, On)], 2)]))), 128)),
1573
+ v("div", Wn, [C(D, {
1451
1574
  type: "button",
1452
1575
  severity: "secondary",
1453
1576
  outlined: "",
1454
1577
  class: "cui-button-medium",
1455
1578
  label: e.$t("views.settings.assistant_external_add"),
1456
1579
  disabled: u(G).mcpServers.length >= 10,
1457
- onClick: ri
1580
+ onClick: ii
1458
1581
  }, {
1459
- icon: f(() => [S(ue, { class: "w-4 h-4" })]),
1582
+ icon: f(() => [C(P, { class: "w-4 h-4" })]),
1460
1583
  _: 1
1461
- }, 8, ["label", "disabled"]), S(k, {
1584
+ }, 8, ["label", "disabled"]), C(D, {
1462
1585
  type: "button",
1463
1586
  loading: u(U).isPending.value,
1464
1587
  class: "cui-button-medium ml-auto",
1465
1588
  label: e.$t("components.form.button.save"),
1466
- onClick: ci
1589
+ onClick: li
1467
1590
  }, null, 8, ["loading", "label"])])
1468
1591
  ])]),
1469
1592
  _: 1
1470
1593
  })]),
1471
- _("div", null, [_("span", Rn, r(e.$t("views.settings.assistant_schedules")), 1), S(g, { class: "cui-card" }, {
1472
- content: f(() => [_("div", zn, [
1473
- S(d, {
1594
+ v("div", null, [v("span", Gn, r(e.$t("views.settings.assistant_schedules")), 1), C(_, { class: "cui-card" }, {
1595
+ content: f(() => [v("div", Kn, [
1596
+ C(d, {
1474
1597
  severity: "secondary",
1475
1598
  variant: "simple",
1476
1599
  size: "small",
1477
1600
  class: "cui-input-hint"
1478
1601
  }, {
1479
- default: f(() => [y(r(e.$t("views.settings.assistant_schedules_info")), 1)]),
1602
+ default: f(() => [b(r(e.$t("views.settings.assistant_schedules_info")), 1)]),
1480
1603
  _: 1
1481
1604
  }),
1482
- u(He)?.length ? (n(), m("div", Bn, [(n(!0), m(h, null, t(u(He), (t) => (n(), m("div", {
1605
+ u(He)?.length ? (n(), m("div", qn, [(n(!0), m(g, null, t(u(He), (t) => (n(), m("div", {
1483
1606
  key: t._id,
1484
1607
  class: "flex items-start gap-3 py-3 text-sm"
1485
- }, [_("div", { class: a(["flex min-w-0 flex-1 flex-wrap items-center gap-x-2 gap-y-1", { "opacity-60": !t.enabled }]) }, [
1486
- _("span", Vn, r(t.title), 1),
1487
- _("div", Hn, [
1488
- S(p, {
1608
+ }, [v("div", { class: a(["flex min-w-0 flex-1 flex-wrap items-center gap-x-2 gap-y-1", { "opacity-60": !t.enabled }]) }, [
1609
+ v("span", Jn, r(t.title), 1),
1610
+ v("div", Yn, [
1611
+ C(p, {
1489
1612
  severity: "secondary",
1490
- value: Wr(t.cron),
1613
+ value: Gr(t.cron),
1491
1614
  class: "text-[10px]"
1492
1615
  }, null, 8, ["value"]),
1493
- S(p, {
1494
- severity: Gr(t.deliver),
1616
+ C(p, {
1617
+ severity: Kr(t.deliver),
1495
1618
  value: e.$t(`views.settings.assistant_schedule_deliver_${t.deliver}`),
1496
1619
  class: "text-[10px]"
1497
1620
  }, null, 8, ["severity", "value"]),
1498
1621
  t.profileId ? (n(), s(p, {
1499
1622
  key: 0,
1500
- severity: Si(t.profileId) ? "secondary" : "warn",
1501
- value: Si(t.profileId) ?? e.$t("views.settings.assistant_schedule_profile_missing"),
1623
+ severity: Ti(t.profileId) ? "secondary" : "warn",
1624
+ value: Ti(t.profileId) ?? e.$t("views.settings.assistant_schedule_profile_missing"),
1502
1625
  class: "text-[10px]"
1503
1626
  }, null, 8, ["severity", "value"])) : c("", !0)
1504
1627
  ]),
1505
- _("div", Un, r(t.prompt), 1),
1506
- _("div", Wn, [t.enabled && t.nextRun ? (n(), m("span", Gn, r(e.$t("views.settings.assistant_schedule_next", { time: Kr(t.nextRun) })), 1)) : t.enabled ? c("", !0) : (n(), m("span", Kn, r(e.$t("views.settings.assistant_schedule_paused")), 1)), t.lastRun ? (n(), m("span", {
1628
+ v("div", Xn, r(t.prompt), 1),
1629
+ v("div", Zn, [t.enabled && t.nextRun ? (n(), m("span", Qn, r(e.$t("views.settings.assistant_schedule_next", { time: qr(t.nextRun) })), 1)) : t.enabled ? c("", !0) : (n(), m("span", $n, r(e.$t("views.settings.assistant_schedule_paused")), 1)), t.lastRun ? (n(), m("span", {
1507
1630
  key: 2,
1508
1631
  class: a({ "text-danger": t.lastRun.status === "error" })
1509
- }, " · " + r(e.$t(`views.settings.assistant_schedule_last_${t.lastRun.status}`, { time: Kr(t.lastRun.at) })), 3)) : c("", !0)]),
1510
- t.lastRun?.status === "error" && t.lastRun.message ? (n(), m("div", qn, r(t.lastRun.message), 1)) : c("", !0)
1511
- ], 2), _("div", Jn, [_("div", Yn, [
1512
- v((n(), s(k, {
1632
+ }, " · " + r(e.$t(`views.settings.assistant_schedule_last_${t.lastRun.status}`, { time: qr(t.lastRun.at) })), 3)) : c("", !0)]),
1633
+ t.lastRun?.status === "error" && t.lastRun.message ? (n(), m("div", er, r(t.lastRun.message), 1)) : c("", !0)
1634
+ ], 2), v("div", tr, [v("div", nr, [
1635
+ y((n(), s(D, {
1513
1636
  type: "button",
1514
1637
  severity: "secondary",
1515
1638
  text: "",
@@ -1518,7 +1641,7 @@ var Be = o({
1518
1641
  loading: u(W).isPending.value && u(W).variables.value === t._id,
1519
1642
  onClick: (e) => u(W).mutate(t._id)
1520
1643
  }, {
1521
- icon: f(() => [S(Le, {
1644
+ icon: f(() => [C(Le, {
1522
1645
  width: "100%",
1523
1646
  height: "100%"
1524
1647
  })]),
@@ -1529,19 +1652,19 @@ var Be = o({
1529
1652
  void 0,
1530
1653
  { top: !0 }
1531
1654
  ]]),
1532
- v((n(), s(k, {
1655
+ y((n(), s(D, {
1533
1656
  type: "button",
1534
1657
  severity: "secondary",
1535
1658
  text: "",
1536
1659
  rounded: "",
1537
1660
  class: "cui-icon-md",
1538
- onClick: (e) => fi(t)
1661
+ onClick: (e) => hi(t)
1539
1662
  }, {
1540
1663
  icon: f(() => [t.enabled ? (n(), s(We, {
1541
1664
  key: 0,
1542
1665
  width: "100%",
1543
1666
  height: "100%"
1544
- })) : (n(), s(Xe, {
1667
+ })) : (n(), s(Z, {
1545
1668
  key: 1,
1546
1669
  width: "100%",
1547
1670
  height: "100%"
@@ -1553,7 +1676,7 @@ var Be = o({
1553
1676
  void 0,
1554
1677
  { top: !0 }
1555
1678
  ]]),
1556
- v((n(), s(k, {
1679
+ y((n(), s(D, {
1557
1680
  type: "button",
1558
1681
  severity: "danger",
1559
1682
  text: "",
@@ -1561,7 +1684,7 @@ var Be = o({
1561
1684
  class: "cui-icon-md",
1562
1685
  onClick: (e) => u(Ge).mutate(t._id)
1563
1686
  }, {
1564
- icon: f(() => [S(j, {
1687
+ icon: f(() => [C(j, {
1565
1688
  width: "100%",
1566
1689
  height: "100%"
1567
1690
  })]),
@@ -1572,45 +1695,45 @@ var Be = o({
1572
1695
  void 0,
1573
1696
  { top: !0 }
1574
1697
  ]])
1575
- ]), _("div", Xn, [S(k, {
1698
+ ]), v("div", rr, [C(D, {
1576
1699
  type: "button",
1577
1700
  severity: "secondary",
1578
1701
  text: "",
1579
1702
  rounded: "",
1580
1703
  class: "cui-icon-md",
1581
1704
  loading: u(W).isPending.value && u(W).variables.value === t._id,
1582
- onClick: (e) => pi(e, t)
1705
+ onClick: (e) => gi(e, t)
1583
1706
  }, {
1584
- icon: f(() => [S(ie, {
1707
+ icon: f(() => [C(M, {
1585
1708
  width: "100%",
1586
1709
  height: "100%"
1587
1710
  })]),
1588
1711
  _: 1
1589
1712
  }, 8, ["loading", "onClick"])])])]))), 128))])) : c("", !0),
1590
- _("div", { class: a(["flex flex-col gap-6", { "cui-assistant-schedule-form": u(He)?.length }]) }, [
1591
- _("div", Zn, [_("div", Qn, [_("label", $n, r(e.$t("views.settings.assistant_schedule_title_label")), 1), S(R, {
1713
+ v("div", { class: a(["flex flex-col gap-6", { "cui-assistant-schedule-form": u(He)?.length }]) }, [
1714
+ v("div", ir, [v("div", ar, [v("label", or, r(e.$t("views.settings.assistant_schedule_title_label")), 1), C(z, {
1592
1715
  modelValue: u(K).title,
1593
1716
  "onUpdate:modelValue": i[17] ||= (e) => u(K).title = e,
1594
1717
  modelModifiers: { trim: !0 },
1595
1718
  type: "text",
1596
1719
  placeholder: e.$t("views.settings.assistant_schedule_title_placeholder"),
1597
1720
  class: "w-full"
1598
- }, null, 8, ["modelValue", "placeholder"])]), _("div", er, [_("label", tr, r(e.$t("views.settings.assistant_schedule_deliver_label")), 1), S(P, {
1721
+ }, null, 8, ["modelValue", "placeholder"])]), v("div", sr, [v("label", cr, r(e.$t("views.settings.assistant_schedule_deliver_label")), 1), C(F, {
1599
1722
  modelValue: u(K).deliver,
1600
1723
  "onUpdate:modelValue": i[18] ||= (e) => u(K).deliver = e,
1601
- options: u(Rr),
1724
+ options: u(zr),
1602
1725
  "option-label": "label",
1603
1726
  "option-value": "value",
1604
1727
  fluid: ""
1605
1728
  }, null, 8, ["modelValue", "options"])])]),
1606
- _("div", nr, [_("label", rr, r(e.$t("views.settings.assistant_schedule_prompt_label")), 1), S(I, {
1729
+ v("div", lr, [v("label", ur, r(e.$t("views.settings.assistant_schedule_prompt_label")), 1), C(R, {
1607
1730
  modelValue: u(K).prompt,
1608
1731
  "onUpdate:modelValue": i[19] ||= (e) => u(K).prompt = e,
1609
1732
  rows: "2",
1610
1733
  "auto-resize": "",
1611
1734
  placeholder: e.$t("views.settings.assistant_schedule_prompt_placeholder")
1612
1735
  }, null, 8, ["modelValue", "placeholder"])]),
1613
- u(Ve)?.length ? (n(), m("div", ir, [_("label", ar, r(e.$t("views.settings.assistant_schedule_profile_label")), 1), S(P, {
1736
+ u(Ve)?.length ? (n(), m("div", dr, [v("label", fr, r(e.$t("views.settings.assistant_schedule_profile_label")), 1), C(F, {
1614
1737
  modelValue: u(K).profileId,
1615
1738
  "onUpdate:modelValue": i[20] ||= (e) => u(K).profileId = e,
1616
1739
  "input-id": "scheduleProfile",
@@ -1625,22 +1748,22 @@ var Be = o({
1625
1748
  "options",
1626
1749
  "placeholder"
1627
1750
  ])])) : c("", !0),
1628
- _("div", or, [
1629
- _("div", sr, [_("label", cr, r(e.$t("views.settings.assistant_schedule_when_label")), 1), S(P, {
1751
+ v("div", pr, [
1752
+ v("div", mr, [v("label", hr, r(e.$t("views.settings.assistant_schedule_when_label")), 1), C(F, {
1630
1753
  modelValue: u(K).preset,
1631
1754
  "onUpdate:modelValue": i[21] ||= (e) => u(K).preset = e,
1632
- options: u(zr),
1755
+ options: u(Br),
1633
1756
  "option-label": "label",
1634
1757
  "option-value": "value",
1635
1758
  fluid: ""
1636
1759
  }, null, 8, ["modelValue", "options"])]),
1637
- u(K).preset !== "hourly" && u(K).preset !== "custom" ? (n(), m("div", lr, [_("label", ur, r(e.$t("views.settings.assistant_schedule_time_label")), 1), S(R, {
1760
+ u(K).preset !== "hourly" && u(K).preset !== "custom" ? (n(), m("div", gr, [v("label", _r, r(e.$t("views.settings.assistant_schedule_time_label")), 1), C(z, {
1638
1761
  modelValue: u(K).time,
1639
1762
  "onUpdate:modelValue": i[22] ||= (e) => u(K).time = e,
1640
1763
  type: "time",
1641
1764
  class: "cui-time-input w-full"
1642
1765
  }, null, 8, ["modelValue"])])) : c("", !0),
1643
- u(K).preset === "custom" ? (n(), m("div", dr, [_("label", fr, r(e.$t("views.settings.assistant_schedule_cron_label")), 1), S(R, {
1766
+ u(K).preset === "custom" ? (n(), m("div", vr, [v("label", yr, r(e.$t("views.settings.assistant_schedule_cron_label")), 1), C(z, {
1644
1767
  modelValue: u(K).cron,
1645
1768
  "onUpdate:modelValue": i[23] ||= (e) => u(K).cron = e,
1646
1769
  modelModifiers: { trim: !0 },
@@ -1649,13 +1772,13 @@ var Be = o({
1649
1772
  class: "w-full font-mono text-sm"
1650
1773
  }, null, 8, ["modelValue"])])) : c("", !0)
1651
1774
  ]),
1652
- _("div", pr, [S(k, {
1775
+ v("div", br, [C(D, {
1653
1776
  type: "button",
1654
1777
  loading: u(Ue).isPending.value,
1655
- disabled: !u(K).title || !u(K).prompt || !u(Br),
1778
+ disabled: !u(K).title || !u(K).prompt || !u(Vr),
1656
1779
  class: "cui-button-medium ml-auto",
1657
1780
  label: e.$t("views.settings.assistant_schedule_add"),
1658
- onClick: qr
1781
+ onClick: Jr
1659
1782
  }, null, 8, [
1660
1783
  "loading",
1661
1784
  "disabled",
@@ -1665,88 +1788,88 @@ var Be = o({
1665
1788
  ])]),
1666
1789
  _: 1
1667
1790
  })]),
1668
- _("div", null, [_("span", mr, r(e.$t("views.settings.assistant_usage")), 1), S(g, { class: "cui-card" }, {
1669
- content: f(() => [_("div", hr, [S(d, {
1791
+ v("div", null, [v("span", xr, r(e.$t("views.settings.assistant_usage")), 1), C(_, { class: "cui-card" }, {
1792
+ content: f(() => [v("div", Sr, [C(d, {
1670
1793
  severity: "secondary",
1671
1794
  variant: "simple",
1672
1795
  size: "small",
1673
1796
  class: "cui-input-hint"
1674
1797
  }, {
1675
- default: f(() => [y(r(e.$t("views.settings.assistant_usage_info")), 1)]),
1798
+ default: f(() => [b(r(e.$t("views.settings.assistant_usage_info")), 1)]),
1676
1799
  _: 1
1677
- }), S(Q, {
1678
- value: u(Mr) ?? [],
1800
+ }), C(Lr, {
1801
+ value: u(Qe) ?? [],
1679
1802
  "data-key": "key",
1680
- loading: u(ze),
1681
- pt: ve,
1803
+ loading: u(Re),
1804
+ pt: ge,
1682
1805
  "striped-rows": "",
1683
1806
  scrollable: ""
1684
1807
  }, {
1685
- loading: f(() => [S(o, {
1808
+ loading: f(() => [C(o, {
1686
1809
  class: "w-[30px] h-[30px] m-0",
1687
1810
  "stroke-width": "5"
1688
1811
  })]),
1689
- empty: f(() => [_("span", gr, r(e.$t("views.settings.assistant_usage_empty")), 1)]),
1812
+ empty: f(() => [v("span", Cr, r(e.$t("views.settings.assistant_usage_empty")), 1)]),
1690
1813
  default: f(() => [
1691
- S(Z, {
1814
+ C(Q, {
1692
1815
  field: "month",
1693
1816
  header: e.$t("views.settings.assistant_usage_month"),
1694
1817
  "header-class": "p-2",
1695
1818
  class: "p-2 tabular-nums"
1696
1819
  }, null, 8, ["header"]),
1697
- S(Z, {
1820
+ C(Q, {
1698
1821
  field: "username",
1699
1822
  header: e.$t("views.settings.assistant_usage_user"),
1700
1823
  "header-class": "p-2",
1701
1824
  class: "p-2"
1702
1825
  }, {
1703
- body: f(({ data: e }) => [_("span", _r, r(e.pluginName ?? e.username ?? e.userId), 1)]),
1826
+ body: f(({ data: e }) => [v("span", wr, r(e.pluginName ?? e.username ?? e.userId), 1)]),
1704
1827
  _: 1
1705
1828
  }, 8, ["header"]),
1706
- S(Z, {
1829
+ C(Q, {
1707
1830
  field: "model",
1708
1831
  header: e.$t("views.settings.assistant_usage_model"),
1709
1832
  "header-class": "p-2",
1710
1833
  class: "p-2"
1711
1834
  }, {
1712
- body: f(({ data: e }) => [_("span", vr, r(xi(e)), 1)]),
1835
+ body: f(({ data: e }) => [v("span", Tr, r(wi(e)), 1)]),
1713
1836
  _: 1
1714
1837
  }, 8, ["header"]),
1715
- S(Z, {
1838
+ C(Q, {
1716
1839
  field: "runs",
1717
1840
  header: e.$t("views.settings.assistant_usage_runs"),
1718
1841
  "header-class": "p-2",
1719
1842
  class: "p-2 text-right tabular-nums",
1720
- pt: N
1843
+ pt: O
1721
1844
  }, null, 8, ["header"]),
1722
- S(Z, {
1845
+ C(Q, {
1723
1846
  field: "promptTokens",
1724
1847
  header: e.$t("views.settings.assistant_usage_in"),
1725
1848
  "header-class": "p-2",
1726
1849
  class: "p-2 text-right tabular-nums",
1727
- pt: N
1850
+ pt: O
1728
1851
  }, {
1729
- body: f(({ data: e }) => [y(r($r(e.promptTokens)), 1)]),
1852
+ body: f(({ data: e }) => [b(r(ei(e.promptTokens)), 1)]),
1730
1853
  _: 1
1731
1854
  }, 8, ["header"]),
1732
- S(Z, {
1855
+ C(Q, {
1733
1856
  field: "completionTokens",
1734
1857
  header: e.$t("views.settings.assistant_usage_out"),
1735
1858
  "header-class": "p-2",
1736
1859
  class: "p-2 text-right tabular-nums",
1737
- pt: N
1860
+ pt: O
1738
1861
  }, {
1739
- body: f(({ data: e }) => [y(r($r(e.completionTokens)), 1)]),
1862
+ body: f(({ data: e }) => [b(r(ei(e.completionTokens)), 1)]),
1740
1863
  _: 1
1741
1864
  }, 8, ["header"]),
1742
- S(Z, {
1865
+ C(Q, {
1743
1866
  field: "costUsd",
1744
1867
  header: e.$t("views.settings.assistant_usage_cost"),
1745
1868
  "header-class": "p-2",
1746
1869
  class: "p-2 text-right tabular-nums",
1747
- pt: N
1870
+ pt: O
1748
1871
  }, {
1749
- body: f(({ data: e }) => [y(r(e.costUsd ? `$${e.costUsd.toFixed(e.costUsd < 1 ? 3 : 2)}` : "–"), 1)]),
1872
+ body: f(({ data: e }) => [b(r(e.costUsd ? `$${e.costUsd.toFixed(e.costUsd < 1 ? 3 : 2)}` : "–"), 1)]),
1750
1873
  _: 1
1751
1874
  }, 8, ["header"])
1752
1875
  ]),
@@ -1754,44 +1877,44 @@ var Be = o({
1754
1877
  }, 8, ["value", "loading"])])]),
1755
1878
  _: 1
1756
1879
  })]),
1757
- _("div", null, [_("span", yr, r(e.$t("views.settings.assistant_tools")), 1), S(g, { class: "cui-card" }, {
1758
- content: f(() => [u(jr).length ? (n(), m("div", xr, [S(Ti, {
1880
+ v("div", null, [v("span", Er, r(e.$t("views.settings.assistant_tools")), 1), C(_, { class: "cui-card" }, {
1881
+ content: f(() => [u(Ze).length ? (n(), m("div", Or, [C(Oi, {
1759
1882
  value: u(qe),
1760
1883
  "onUpdate:value": i[24] ||= (e) => l(qe) ? qe.value = e : null,
1761
1884
  scrollable: ""
1762
1885
  }, {
1763
- default: f(() => [S(oi, { class: "mb-3" }, {
1764
- default: f(() => [(n(!0), m(h, null, t(u(jr), (e) => (n(), s(ei, {
1886
+ default: f(() => [C(si, { class: "mb-3" }, {
1887
+ default: f(() => [(n(!0), m(g, null, t(u(Ze), (e) => (n(), s(ti, {
1765
1888
  key: e.key,
1766
1889
  value: e.key,
1767
1890
  class: "text-sm"
1768
1891
  }, {
1769
- default: f(() => [y(r(e.label) + " (" + r(e.tools.length) + ")", 1)]),
1892
+ default: f(() => [b(r(e.label) + " (" + r(e.tools.length) + ")", 1)]),
1770
1893
  _: 2
1771
1894
  }, 1032, ["value"]))), 128))]),
1772
1895
  _: 1
1773
- }), S(wi, { class: "!p-0 !bg-transparent" }, {
1774
- default: f(() => [(n(!0), m(h, null, t(u(jr), (i) => (n(), s(Ci, {
1896
+ }), C(Di, { class: "!p-0 !bg-transparent" }, {
1897
+ default: f(() => [(n(!0), m(g, null, t(u(Ze), (i) => (n(), s(Ei, {
1775
1898
  key: i.key,
1776
1899
  value: i.key
1777
1900
  }, {
1778
- default: f(() => [i.serverId ? (n(), m("div", Sr, [
1779
- _("label", {
1901
+ default: f(() => [i.serverId ? (n(), m("div", kr, [
1902
+ v("label", {
1780
1903
  for: `trusted-${i.key}`,
1781
1904
  class: "cui-label"
1782
- }, r(e.$t("views.settings.assistant_tools_trusted_label")), 9, Cr),
1783
- S(ui, {
1784
- "model-value": Zr(i),
1905
+ }, r(e.$t("views.settings.assistant_tools_trusted_label")), 9, Ar),
1906
+ C(pi, {
1907
+ "model-value": Qr(i),
1785
1908
  "input-id": `trusted-${i.key}`,
1786
- options: Xr(i),
1909
+ options: Zr(i),
1787
1910
  "option-label": "label",
1788
1911
  "option-value": "value",
1789
1912
  "max-selected-labels": 3,
1790
- "selected-items-label": e.$t("views.settings.assistant_tools_trusted_selected", { n: Zr(i).length }),
1913
+ "selected-items-label": e.$t("views.settings.assistant_tools_trusted_selected", { n: Qr(i).length }),
1791
1914
  placeholder: e.$t("views.settings.assistant_tools_trusted_none"),
1792
1915
  filter: "",
1793
1916
  fluid: "",
1794
- "onUpdate:modelValue": (e) => Qr(i, e)
1917
+ "onUpdate:modelValue": (e) => $r(i, e)
1795
1918
  }, null, 8, [
1796
1919
  "model-value",
1797
1920
  "input-id",
@@ -1800,21 +1923,21 @@ var Be = o({
1800
1923
  "placeholder",
1801
1924
  "onUpdate:modelValue"
1802
1925
  ]),
1803
- S(d, {
1926
+ C(d, {
1804
1927
  severity: "secondary",
1805
1928
  variant: "simple",
1806
1929
  size: "small",
1807
1930
  class: "cui-input-hint"
1808
1931
  }, {
1809
- default: f(() => [y(r(e.$t("views.settings.assistant_tools_trusted_info")), 1)]),
1932
+ default: f(() => [b(r(e.$t("views.settings.assistant_tools_trusted_info")), 1)]),
1810
1933
  _: 1
1811
1934
  })
1812
- ])) : c("", !0), _("div", wr, [(n(!0), m(h, null, t(i.tools, (t) => (n(), m("div", {
1935
+ ])) : c("", !0), v("div", jr, [(n(!0), m(g, null, t(i.tools, (t) => (n(), m("div", {
1813
1936
  key: t.name,
1814
1937
  class: "flex items-start gap-3 py-2 text-sm"
1815
- }, [S(hi, { class: "w-4 h-4 mt-0.5 shrink-0 text-muted" }), _("div", Tr, [_("div", Er, [
1816
- _("span", Dr, r(u(Oe)(t.name)), 1),
1817
- Yr(t) ? (n(), s(p, {
1938
+ }, [C(vi, { class: "w-4 h-4 mt-0.5 shrink-0 text-muted" }), v("div", Mr, [v("div", Nr, [
1939
+ v("span", Pr, r(u(De)(t.name)), 1),
1940
+ Xr(t) ? (n(), s(p, {
1818
1941
  key: 0,
1819
1942
  severity: "warn",
1820
1943
  value: e.$t("views.settings.assistant_tool_approval"),
@@ -1826,25 +1949,25 @@ var Be = o({
1826
1949
  value: e.$t("views.settings.assistant_tool_admin"),
1827
1950
  class: "text-[10px]"
1828
1951
  }, null, 8, ["value"])) : c("", !0)
1829
- ]), _("div", Or, r(Jr(t.description)), 1)])]))), 128))])]),
1952
+ ]), v("div", Fr, r(Yr(t.description)), 1)])]))), 128))])]),
1830
1953
  _: 2
1831
1954
  }, 1032, ["value"]))), 128))]),
1832
1955
  _: 1
1833
1956
  })]),
1834
1957
  _: 1
1835
- }, 8, ["value"]), u(jr).some((e) => e.serverId) ? (n(), m("div", kr, [S(k, {
1958
+ }, 8, ["value"]), u(Ze).some((e) => e.serverId) ? (n(), m("div", Ir, [C(D, {
1836
1959
  type: "button",
1837
1960
  loading: u(U).isPending.value,
1838
1961
  class: "cui-button-medium ml-auto",
1839
1962
  label: e.$t("components.form.button.save"),
1840
- onClick: ci
1841
- }, null, 8, ["loading", "label"])])) : c("", !0)])) : (n(), m("div", br, r(e.$t("views.settings.assistant_tools_empty")), 1))]),
1963
+ onClick: li
1964
+ }, null, 8, ["loading", "label"])])) : c("", !0)])) : (n(), m("div", Dr, r(e.$t("views.settings.assistant_tools_empty")), 1))]),
1842
1965
  _: 1
1843
1966
  })])
1844
- ])) : (n(), m("div", Qe, [S(o, {
1967
+ ])) : (n(), m("div", it, [C(o, {
1845
1968
  class: "w-[30px] h-[30px] m-0",
1846
1969
  "stroke-width": "5"
1847
- })])), S(E, {
1970
+ })])), C(ne, {
1848
1971
  ref_key: "rowMenuRef",
1849
1972
  ref: Je,
1850
1973
  items: u(Ke),
@@ -1852,6 +1975,6 @@ var Be = o({
1852
1975
  }, null, 8, ["items"])]);
1853
1976
  };
1854
1977
  }
1855
- }), [["__scopeId", "data-v-69f75eeb"]]);
1978
+ }), [["__scopeId", "data-v-353cba4e"]]);
1856
1979
  //#endregion
1857
- export { Ar as default };
1980
+ export { Rr as default };