@camera.ui/server 2.2.2 → 2.2.4

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 (441) hide show
  1. package/dist/interface/assets/{404-bSMSPWcp.js → 404-Bdbp69ox.js} +1 -1
  2. package/dist/interface/assets/{About-DqMxC4AO.js → About-DmtCok-y.js} +1 -1
  3. package/dist/interface/assets/{Assistant-CIHF-bHs.js → Assistant-D-Lv6JtY.js} +1 -1
  4. package/dist/interface/assets/{Automation-CUDypjZw.js → Automation-LQ3TssrU.js} +3 -3
  5. package/dist/interface/assets/{AutomationImport-Cr14tF-Q.js → AutomationImport-B_ra3G3_.js} +2 -2
  6. package/dist/interface/assets/{AutomationStore-BnZgfI9i.js → AutomationStore-DSXSaQjp.js} +2 -2
  7. package/dist/interface/assets/AutomationStoreDetail-B5_Meb6R.js +2 -0
  8. package/dist/interface/assets/Automations-DHfPRe8W.js +2 -0
  9. package/dist/interface/assets/Camera-B4ojNnKb.css +1 -0
  10. package/dist/interface/assets/Camera-CDbfvtJv.js +2 -0
  11. package/dist/interface/assets/{CameraConsole-BK8TqHgA.js → CameraConsole-DX-IRmd_.js} +1 -1
  12. package/dist/interface/assets/Cameras-D9m2bxWj.js +651 -0
  13. package/dist/interface/assets/Camview-DKOYY6TI.js +1 -0
  14. package/dist/interface/assets/{CertificateUpload-PfgVZa4M.js → CertificateUpload-B8ccb3n-.js} +1 -1
  15. package/dist/interface/assets/{Config-DapgreIX.js → Config-DCIUUWCv.js} +1 -1
  16. package/dist/interface/assets/{ConfigActionAssistant-v0w4E-mE.js → ConfigActionAssistant-6IUzZeNW.js} +1 -1
  17. package/dist/interface/assets/{ConfigActionCameraControl-fdrsnRyE.js → ConfigActionCameraControl-EXuiNMuG.js} +1 -1
  18. package/dist/interface/assets/{ConfigActionDelay-C_dq3ozL.js → ConfigActionDelay-Cs4sYEk-.js} +1 -1
  19. package/dist/interface/assets/{ConfigActionHttp-1hDI-38w.js → ConfigActionHttp-gUM6RQ6Y.js} +1 -1
  20. package/dist/interface/assets/{ConfigActionImageInput-DCF8qeg9.js → ConfigActionImageInput-CPl5kVgO.js} +1 -1
  21. package/dist/interface/assets/{ConfigActionMqtt-XpVD7lFg.js → ConfigActionMqtt-BeBMCOJ-.js} +1 -1
  22. package/dist/interface/assets/{ConfigActionNotification-CB1ymMRz.js → ConfigActionNotification-DJFHdFDN.js} +1 -1
  23. package/dist/interface/assets/{ConfigActionNotificationControl-BfDtLS5h.js → ConfigActionNotificationControl-BXoztPTs.js} +1 -1
  24. package/dist/interface/assets/{ConfigActionOutput-CMfXI1b3.js → ConfigActionOutput-BGrFWqZ1.js} +1 -1
  25. package/dist/interface/assets/{ConfigActionPlugin-CZo6SudQ.js → ConfigActionPlugin-CdIIMcJZ.js} +1 -1
  26. package/dist/interface/assets/{ConfigActionSensor-CetFuASa.js → ConfigActionSensor-MRVGJ22A.js} +1 -1
  27. package/dist/interface/assets/{ConfigActionSnapshot-BpPhHpIk.js → ConfigActionSnapshot-CxA4f5ag.js} +1 -1
  28. package/dist/interface/assets/{ConfigActionVariable-SJomTISn.js → ConfigActionVariable-DmU4seLh.js} +1 -1
  29. package/dist/interface/assets/{ConfigConditionIfElse-ClTxvZJz.js → ConfigConditionIfElse-Tgdrk7lo.js} +1 -1
  30. package/dist/interface/assets/{ConfigConditionSensorState-FbLmmHyP.js → ConfigConditionSensorState-CyyzoL6Q.js} +1 -1
  31. package/dist/interface/assets/{ConfigConditionSwitch--qAHkOdE.js → ConfigConditionSwitch-DprK5AbR.js} +1 -1
  32. package/dist/interface/assets/{ConfigConditionTime-BqjDUPVR.js → ConfigConditionTime-CDruEvBp.js} +1 -1
  33. package/dist/interface/assets/{ConfigSensorValueInput-B1dLcmSO.js → ConfigSensorValueInput-BhlgTOW9.js} +1 -1
  34. package/dist/interface/assets/{ConfigTriggerDetection-CMZyEWui.js → ConfigTriggerDetection-4vdEST9Y.js} +1 -1
  35. package/dist/interface/assets/{ConfigTriggerGeofence-B9JPVvhP.js → ConfigTriggerGeofence-1B0BdCOw.js} +1 -1
  36. package/dist/interface/assets/{ConfigTriggerManual-CSdF69jM.js → ConfigTriggerManual-BQLDqwZh.js} +1 -1
  37. package/dist/interface/assets/{ConfigTriggerMqtt-BzN7_xVm.js → ConfigTriggerMqtt-B3YNOB6U.js} +1 -1
  38. package/dist/interface/assets/{ConfigTriggerSchedule-BK_Ogvxn.js → ConfigTriggerSchedule-DhbJGOT7.js} +1 -1
  39. package/dist/interface/assets/{ConfigTriggerSensor-BaQklhHP.js → ConfigTriggerSensor-iMPg_Pmb.js} +1 -1
  40. package/dist/interface/assets/{ConfigTriggerSystem-DIX95l0X.js → ConfigTriggerSystem-MaNZTO3h.js} +1 -1
  41. package/dist/interface/assets/{ConfigTriggerWebhook-_EOJAgNk.js → ConfigTriggerWebhook-B3WfXjPv.js} +1 -1
  42. package/dist/interface/assets/Console-BQLINPCG.js +1 -0
  43. package/dist/interface/assets/{CuiAssistantConversation-CWCLLi3b.css → CuiAssistantConversation-DmSdiv1b.css} +1 -1
  44. package/dist/interface/assets/CuiAssistantConversation-yCRlgjtr.js +5 -0
  45. package/dist/interface/assets/{CuiAutomationRunsDialog-DpskKeEe.js → CuiAutomationRunsDialog-CJ0mzDLL.js} +1 -1
  46. package/dist/interface/assets/{CuiBottomSheet-Bg_AIuGY.js → CuiBottomSheet-BbP0T2v3.js} +1 -1
  47. package/dist/interface/assets/CuiBottomSheet-BpMMQhmJ.js +1 -0
  48. package/dist/interface/assets/CuiCameraPipCard-1EhYM5kQ.js +1 -0
  49. package/dist/interface/assets/CuiCameraRecordings-CkkHbNyY.css +1 -0
  50. package/dist/interface/assets/CuiCameraRecordings-D2jG47AV.js +1 -0
  51. package/dist/interface/assets/CuiCameraShares-IpkomKkl.js +1 -0
  52. package/dist/interface/assets/CuiCameraTable-CNclH1KS.js +1 -0
  53. package/dist/interface/assets/{CuiCameraTable-CyAYYPvd.js → CuiCameraTable-DlL-z_na.js} +2 -2
  54. package/dist/interface/assets/{CuiChartTable-BklHSjRr.js → CuiChartTable-B0EPcrgv.js} +1 -1
  55. package/dist/interface/assets/CuiChartTable-DXY7rY3O.css +1 -0
  56. package/dist/interface/assets/{CuiConsole-4rDfDj0a.js → CuiConsole-D8Xk2LXY.js} +2 -2
  57. package/dist/interface/assets/CuiDataTable-DPIbKnvU.css +1 -0
  58. package/dist/interface/assets/CuiDataTable-DtRTB560.js +1 -0
  59. package/dist/interface/assets/CuiLightControl-CtL3sA8k.js +1 -0
  60. package/dist/interface/assets/{CuiList-BafzuN0H.js → CuiList-Bn7DT_Ao.js} +1 -1
  61. package/dist/interface/assets/CuiPluginCard-B-4x6Mno.js +2 -0
  62. package/dist/interface/assets/{CuiPluginCategoryChip-B4w2DH_j.js → CuiPluginCategoryChip-Dih4zKtO.js} +1 -1
  63. package/dist/interface/assets/{CuiPluginOAuthButton-C_jxPrPQ.js → CuiPluginOAuthButton-D-Y9KYJz.js} +2 -2
  64. package/dist/interface/assets/{CuiPluginTrustBadge-pLnF2Ggn.js → CuiPluginTrustBadge-_g3Ctrg4.js} +1 -1
  65. package/dist/interface/assets/{CuiQRCode-8Q6cFdfs.js → CuiQRCode-D6hzmPzV.js} +1 -1
  66. package/dist/interface/assets/CuiSchema-Dh8Mu4BK.js +1 -0
  67. package/dist/interface/assets/{CuiTopNavbarItem-BZXzuV42.js → CuiTopNavbarItem-CgX21E5K.js} +1 -1
  68. package/dist/interface/assets/Faces-CgDoKVkp.js +1 -0
  69. package/dist/interface/assets/{FirstSteps-BNcAFp2c.js → FirstSteps-CZSTX7Ot.js} +1 -1
  70. package/dist/interface/assets/Floorplan-CRvmaf45.js +1 -0
  71. package/dist/interface/assets/{Instances-DUWWy-El.js → Instances-DRkhTQKC.js} +1 -1
  72. package/dist/interface/assets/{Logs-7CxXc2Re.js → Logs-CIDJSpdH.js} +2 -2
  73. package/dist/interface/assets/Menu-CM_F1jfd.js +1 -0
  74. package/dist/interface/assets/Metrics-DgJEg-ZK.js +9 -0
  75. package/dist/interface/assets/Metrics-Ebv4qK2a.css +1 -0
  76. package/dist/interface/assets/OAuthDeviceFlow-BZ9LcgmJ.js +1 -0
  77. package/dist/interface/assets/Plugin-BBDpg6U_.js +1 -0
  78. package/dist/interface/assets/{PluginConsole-BOaU7Ey0.js → PluginConsole-DxVlTuNy.js} +1 -1
  79. package/dist/interface/assets/PluginDetail-fLGD3R-u.js +2 -0
  80. package/dist/interface/assets/PluginSchema-CewD2H-K.js +1 -0
  81. package/dist/interface/assets/PluginSearch-5wX7WEcz.js +2 -0
  82. package/dist/interface/assets/PluginSearch-rDbuXm2z.js +1 -0
  83. package/dist/interface/assets/{PluginUpdateProgress-DFg14vV8.js → PluginUpdateProgress-B7Lj0ttd.js} +1 -1
  84. package/dist/interface/assets/Plugins-DVQ476iL.js +1 -0
  85. package/dist/interface/assets/{RecentEventsFilter-B6Ph-pxb.js → RecentEventsFilter-CWNBI2Ge.js} +1 -1
  86. package/dist/interface/assets/Recordings-DSRgRVhN.js +1 -0
  87. package/dist/interface/assets/{SensorEdit-DEenjJ8S.js → SensorEdit-B1mYmxDV.js} +1 -1
  88. package/dist/interface/assets/{SensorHistory-CU1Uwf5f.js → SensorHistory-D1kKroxp.js} +1 -1
  89. package/dist/interface/assets/{Sensors-LnVLPDWf.js → Sensors-yAc1M-oO.js} +2 -2
  90. package/dist/interface/assets/{Settings-uk3RVXCS.js → Settings-DBKgECRK.js} +1 -1
  91. package/dist/interface/assets/SettingsAccount-CM3XGNL6.js +1 -0
  92. package/dist/interface/assets/SettingsAccount-i2nzGFdV.js +1 -0
  93. package/dist/interface/assets/{SettingsAppearance-CRYcal9v.js → SettingsAppearance-C-nllv3m.js} +1 -1
  94. package/dist/interface/assets/SettingsAppearance-DCgu01FJ.js +1 -0
  95. package/dist/interface/assets/SettingsAssistant-BESab92C.css +1 -0
  96. package/dist/interface/assets/SettingsAssistant-ClRO04fv.js +1 -0
  97. package/dist/interface/assets/{SettingsBackup-CSvGqsru.js → SettingsBackup-Cq_eLVCR.js} +1 -1
  98. package/dist/interface/assets/{SettingsList-BQR6jnP-.js → SettingsList-Bklt3TQO.js} +1 -1
  99. package/dist/interface/assets/SettingsMqtt-BLkP0en6.js +1 -0
  100. package/dist/interface/assets/{SettingsNotifications-8sSoP-8S.js → SettingsNotifications-CeUKfEnH.js} +1 -1
  101. package/dist/interface/assets/{SettingsPermissions-D7kYdjfw.js → SettingsPermissions-Cpka-k3Q.js} +1 -1
  102. package/dist/interface/assets/{SettingsRecordings-DjLYqbKo.js → SettingsRecordings-k20qTe7K.js} +1 -1
  103. package/dist/interface/assets/SettingsRemote-CdUj0nZ1.js +2 -0
  104. package/dist/interface/assets/{SettingsSystem-BxQNJc8n.js → SettingsSystem-6OChvWL7.js} +2 -2
  105. package/dist/interface/assets/SettingsUsers-B57uZ8jn.js +1 -0
  106. package/dist/interface/assets/{Terminal-Bsnvs8gs.js → Terminal-WMgVSORW.js} +2 -2
  107. package/dist/interface/assets/Training-BkWlywj_.js +1 -0
  108. package/dist/interface/assets/Training-Dwf5rXyC.css +1 -0
  109. package/dist/interface/assets/{Updates-Dsn_fJ-N.js → Updates-Dwrd6PQl.js} +1 -1
  110. package/dist/interface/assets/{VariableInput-DCWiIgaZ.js → VariableInput-CDJXnzEV.js} +1 -1
  111. package/dist/interface/assets/{VariableSuggestions-BhIlXJ6r.js → VariableSuggestions-CNq7O1o-.js} +1 -1
  112. package/dist/interface/assets/{VersionsHandler-DM_Jf4EA.js → VersionsHandler-C0A8Ryhn.js} +1 -1
  113. package/dist/interface/assets/{VirtualSensorCreate-Q4kd0dfE.js → VirtualSensorCreate-zEehu8Fg.js} +1 -1
  114. package/dist/interface/assets/Workers-Be7q2vOK.js +2 -0
  115. package/dist/interface/assets/{api-LjAY3aa3.js → api-CSl3-BNZ.js} +1 -1
  116. package/dist/interface/assets/api-DcaDMCnj.css +2 -0
  117. package/dist/interface/assets/api-vegsDz6n.js +4 -0
  118. package/dist/interface/assets/{assistant-BFc44oq-.js → assistant-jARIkvB1.js} +1 -1
  119. package/dist/interface/assets/{auth-CUPvHARA.js → auth-Bov4B1jy.js} +1 -1
  120. package/dist/interface/assets/{automations-Dw4L5sT0.js → automations-CJe7TvLk.js} +1 -1
  121. package/dist/interface/assets/{cameraSources-CzENFiZx.js → cameraSources-CDiYtBzG.js} +1 -1
  122. package/dist/interface/assets/cloudHandoff-BoV37fDI.js +1 -0
  123. package/dist/interface/assets/{config-EBcNBZkb.js → config-iO2vrtak.js} +1 -1
  124. package/dist/interface/assets/{flowSchema-CdzBw69a.js → flowSchema-B0vIoy4y.js} +1 -1
  125. package/dist/interface/assets/{intercomService-DIfdcsXc.js → intercomService-IAAXcRPG.js} +1 -1
  126. package/dist/interface/assets/main-DQgH1fon.js +3 -0
  127. package/dist/interface/assets/{mqtt-D_wH18eJ.js → mqtt-DfpSLxes.js} +1 -1
  128. package/dist/interface/assets/{notifications-wLsrlI9N.js → notifications-jTSwwN1i.js} +1 -1
  129. package/dist/interface/assets/pause-B7ud2O8d.js +1 -0
  130. package/dist/interface/assets/{plugins-DwmkpOPJ.js → plugins-ChyJXprl.js} +1 -1
  131. package/dist/interface/assets/rooms-BMWJpAXC.js +1 -0
  132. package/dist/interface/assets/{sensorIcons-BY853M0u.js → sensorIcons-dUp8Tone.js} +1 -1
  133. package/dist/interface/assets/{sensorSlots-DnRJdaTG.js → sensorSlots-CosoVMys.js} +1 -1
  134. package/dist/interface/assets/{sensors-B9etOqBI.js → sensors-DLdbNuoj.js} +1 -1
  135. package/dist/interface/assets/{server-BTKgKMye.js → server-D-qkU2-U.js} +1 -1
  136. package/dist/interface/assets/{theme-CbtGvohq.js → theme-DhneHMji.js} +1 -1
  137. package/dist/interface/assets/types-CngwbyEy.js +1 -0
  138. package/dist/interface/assets/{types-CEhVWRYD.js → types-DDpq8alD.js} +1 -1
  139. package/dist/interface/assets/{types-COlvVtDn.js → types-DdyAGRju.js} +1 -1
  140. package/dist/interface/assets/{ungrouped-Dbr16vFt.css → ungrouped-DBRZ-Ori.css} +1 -1
  141. package/dist/interface/assets/ungrouped-e2tQIZD2.js +1 -0
  142. package/dist/interface/assets/{updates-BQ6Ugcup.js → updates-DnVisGT3.js} +1 -1
  143. package/dist/interface/assets/{useAppVersion-BO-3jbup.js → useAppVersion-gtzMlM4b.js} +1 -1
  144. package/dist/interface/assets/{useAssistantActions-CRVHZw4o.js → useAssistantActions-BIHVky9T.js} +1 -1
  145. package/dist/interface/assets/useBackupRestore-DfgufKp3.js +1 -0
  146. package/dist/interface/assets/{useCameraOptions-C7tgceJ1.js → useCameraOptions-B9yEPgGd.js} +1 -1
  147. package/dist/interface/assets/{useKeyboardInset-yu3BVnj7.js → useKeyboardInset-1sUlRSeV.js} +1 -1
  148. package/dist/interface/assets/{useLogsSocket-B4wTnSno.js → useLogsSocket-C2QUQqkZ.js} +1 -1
  149. package/dist/interface/assets/{useNavLayout-Z61-OsIG.js → useNavLayout-Br4MtSjQ.js} +1 -1
  150. package/dist/interface/assets/{usePermissions-Bjx4t0x3.js → usePermissions-B8pw9jk1.js} +1 -1
  151. package/dist/interface/assets/{usePluginUpdates-Dv3_XJTK.js → usePluginUpdates-Cx9PwENn.js} +1 -1
  152. package/dist/interface/assets/{usePushRegistration-CHNMZ94f.js → usePushRegistration-CLEyagJM.js} +1 -1
  153. package/dist/interface/assets/{useServerRestart-C-AsOdJP.js → useServerRestart-BBp4cko_.js} +1 -1
  154. package/dist/interface/assets/{useStreamStatus-BJoJF68x.js → useStreamStatus-BrPjpyzs.js} +1 -1
  155. package/dist/interface/assets/{useTabSwipe-b_K3BIkW.js → useTabSwipe-B4edrv6o.js} +1 -1
  156. package/dist/interface/assets/{useUpdateChannel-Cc4IrrDy.js → useUpdateChannel-DugwYo8J.js} +1 -1
  157. package/dist/interface/assets/{useUpdatesSocket-Cz9lN4Bc.js → useUpdatesSocket-CgCXGGVg.js} +1 -1
  158. package/dist/interface/assets/{useUserOptions-DrNB17kY.js → useUserOptions-DTlKtp_u.js} +1 -1
  159. package/dist/interface/assets/vendor-cameraui-D0VXSxSF.js +2326 -0
  160. package/dist/interface/assets/{vendor-core-BTkC8NzR.js → vendor-core-Ba81bBNM.js} +1 -1
  161. package/dist/interface/assets/{vendor-primevue-DQz5Qnqu.js → vendor-primevue-LZEE4d1W.js} +1 -1
  162. package/dist/interface/assets/{vendor-zod-BigRv4ty.js → vendor-zod-CBbC1rE7.js} +2 -2
  163. package/dist/interface/ha/{404-Bg2Vlt5S.js → 404-CkAIe5nc.js} +1 -1
  164. package/dist/interface/ha/{About-C6u2wgUi.js → About-C7HxP7hM.js} +6 -6
  165. package/dist/interface/ha/{Assistant-BCyiVnwD.js → Assistant-DJYxiCOY.js} +207 -192
  166. package/dist/interface/ha/{Automation-DU_qv5xD.js → Automation-CfNHCeIm.js} +191 -191
  167. package/dist/interface/ha/{AutomationImport-BpDyhabF.js → AutomationImport-Dn3C1604.js} +6 -6
  168. package/dist/interface/ha/{AutomationStore-DPQsunpH.js → AutomationStore-D63G9w2Y.js} +5 -5
  169. package/dist/interface/ha/{AutomationStoreDetail-CASMQ-mD.js → AutomationStoreDetail-HoUC8cSY.js} +13 -13
  170. package/dist/interface/ha/{Automations-DSHVzwX4.js → Automations-BOlE1Evb.js} +104 -117
  171. package/dist/interface/ha/{Camera-ESmteicm.js → Camera-6Vvo7nee.js} +234 -222
  172. package/dist/interface/ha/{CameraConsole-BE_jl4Co.js → CameraConsole-DYSNDW4P.js} +5 -5
  173. package/dist/interface/ha/{Cameras-otaj2xZO.js → Cameras-CxgwXUaG.js} +307 -307
  174. package/dist/interface/ha/{Camview-BU1027if.js → Camview-DPjoUMSP.js} +513 -513
  175. package/dist/interface/ha/{Config-BlEvHYVP.js → Config-BzBFIWVF.js} +110 -110
  176. package/dist/interface/ha/{ConfigActionAssistant-uDf5fgoJ.js → ConfigActionAssistant-BpHf4Pdi.js} +4 -4
  177. package/dist/interface/ha/{ConfigActionCameraControl-BAQsXVLz.js → ConfigActionCameraControl-CmbCTwZ8.js} +3 -3
  178. package/dist/interface/ha/{ConfigActionHttp-Dy2MZHSm.js → ConfigActionHttp-BxN2KOA6.js} +2 -2
  179. package/dist/interface/ha/{ConfigActionImageInput-B5kyV3Un.js → ConfigActionImageInput-CrXUZ-cM.js} +1 -1
  180. package/dist/interface/ha/{ConfigActionMqtt-DHCgh1xx.js → ConfigActionMqtt-DYq-6_S6.js} +4 -4
  181. package/dist/interface/ha/{ConfigActionNotification-mbA5PfcJ.js → ConfigActionNotification-DPUSAVLI.js} +3 -3
  182. package/dist/interface/ha/{ConfigActionNotificationControl-TLaL7tYm.js → ConfigActionNotificationControl-h4zta4Db.js} +2 -2
  183. package/dist/interface/ha/{ConfigActionOutput-CJ40Fniw.js → ConfigActionOutput-Dwa0-7cq.js} +1 -1
  184. package/dist/interface/ha/{ConfigActionPlugin-BwTd-mdQ.js → ConfigActionPlugin-DXx1a-Hr.js} +5 -5
  185. package/dist/interface/ha/{ConfigActionSensor-BI438ihg.js → ConfigActionSensor-CfLIHqS8.js} +5 -5
  186. package/dist/interface/ha/{ConfigActionSnapshot-DJ4zI2a0.js → ConfigActionSnapshot-O0OBVq-R.js} +2 -2
  187. package/dist/interface/ha/{ConfigActionVariable-Bhy5jf_w.js → ConfigActionVariable-CbaIxRRe.js} +1 -1
  188. package/dist/interface/ha/{ConfigConditionIfElse-I7Qq8nfN.js → ConfigConditionIfElse-B7ax92bG.js} +3 -3
  189. package/dist/interface/ha/{ConfigConditionSensorState-CTLP3ppx.js → ConfigConditionSensorState-B5XIrEGU.js} +4 -4
  190. package/dist/interface/ha/{ConfigConditionSwitch-UUupXf1b.js → ConfigConditionSwitch-DJSz6bI5.js} +5 -5
  191. package/dist/interface/ha/{ConfigSensorValueInput-CoHheDT0.js → ConfigSensorValueInput-fE2SBn1B.js} +4 -4
  192. package/dist/interface/ha/{ConfigTriggerDetection-Cg_jKNed.js → ConfigTriggerDetection-BuShu78G.js} +2 -2
  193. package/dist/interface/ha/{ConfigTriggerGeofence-WlJbu3sC.js → ConfigTriggerGeofence-pBgXBkb6.js} +5 -5
  194. package/dist/interface/ha/{ConfigTriggerMqtt-BeRJoceK.js → ConfigTriggerMqtt-Dyf_TLfU.js} +1 -1
  195. package/dist/interface/ha/{ConfigTriggerSensor-k58gVKdG.js → ConfigTriggerSensor-C5YUm9ff.js} +1 -1
  196. package/dist/interface/ha/{ConfigTriggerSystem-Ckm5yoUm.js → ConfigTriggerSystem-CylHWw4i.js} +2 -2
  197. package/dist/interface/ha/{ConfigTriggerWebhook-D425z-p1.js → ConfigTriggerWebhook-ZlHsaLu4.js} +6 -6
  198. package/dist/interface/ha/{Console-C1Ub4Rji.js → Console-PNAQjW_1.js} +100 -100
  199. package/dist/interface/ha/{CuiAutomationRunsDialog-opy5qXwE.js → CuiAutomationRunsDialog-D_q8K7QO.js} +2 -2
  200. package/dist/interface/ha/{CuiBottomSheet-DbCwVXl1.js → CuiBottomSheet-BbJG-998.js} +1 -1
  201. package/dist/interface/ha/{CuiCameraRecordings-CifJLj7G.js → CuiCameraRecordings-BSI8Yn3v.js} +14 -15
  202. package/dist/interface/ha/{CuiCameraShares-Xty8LRcn.js → CuiCameraShares-DKHZJT-z.js} +6 -6
  203. package/dist/interface/ha/{CuiCameraTable-CqfxX0Yn.js → CuiCameraTable-BTdP1pEP.js} +9 -9
  204. package/dist/interface/ha/{CuiChartTable-ABHnLdR0.js → CuiChartTable-aFRfsewt.js} +46 -44
  205. package/dist/interface/ha/{CuiConsole-3JwbeUYD.js → CuiConsole-BD9jYvrD.js} +4 -4
  206. package/dist/interface/ha/{CuiDataTable-BwE7D2h5.js → CuiDataTable-C2lOduPV.js} +16 -10
  207. package/dist/interface/ha/{CuiPluginCard-bzxiy1yb.js → CuiPluginCard-C-gpcLCH.js} +78 -78
  208. package/dist/interface/ha/{CuiPluginOAuthButton-DSxrzDmg.js → CuiPluginOAuthButton-B763Rz1n.js} +6 -6
  209. package/dist/interface/ha/{CuiPluginTrustBadge-g0XkvDt8.js → CuiPluginTrustBadge-j5PKYI-V.js} +1 -1
  210. package/dist/interface/ha/{CuiQRCode-uyRFbzd6.js → CuiQRCode-D7WV4czh.js} +6 -6
  211. package/dist/interface/ha/{CuiSchema-DZIrlY8R.js → CuiSchema-BfsT0mAh.js} +155 -155
  212. package/dist/interface/ha/{CuiTopNavbarItem-C3a5NA7u.js → CuiTopNavbarItem-BwpXgGJ-.js} +1 -1
  213. package/dist/interface/ha/{Faces-D2eca8MN.js → Faces-C0e-m9EY.js} +109 -109
  214. package/dist/interface/ha/{FirstSteps-CdTE1cvw.js → FirstSteps-DsDmM44G.js} +8 -8
  215. package/dist/interface/ha/{Floorplan-BrEC2Au5.js → Floorplan-Bei9kIhS.js} +288 -288
  216. package/dist/interface/ha/{Instances-ClOsPOi8.js → Instances-BY5G1zFD.js} +70 -70
  217. package/dist/interface/ha/{Logs-DnY1gTnb.js → Logs-DDycObDv.js} +12 -12
  218. package/dist/interface/ha/{Menu-cLDE76XZ.js → Menu-9r_oFG_-.js} +15 -20
  219. package/dist/interface/ha/{Metrics-pMQX_0m1.js → Metrics-BMTIXqn6.js} +296 -292
  220. package/dist/interface/ha/{OAuthDeviceFlow-D1PGQ8r9.js → OAuthDeviceFlow-Dee5fynX.js} +9 -9
  221. package/dist/interface/ha/{Plugin-DiC23P97.js → Plugin-B5o4pLyu.js} +106 -106
  222. package/dist/interface/ha/{PluginConsole-B-lX5KJu.js → PluginConsole-REtxP1Wi.js} +4 -4
  223. package/dist/interface/ha/{PluginDetail-B_tVJf6y.js → PluginDetail-BHrKifvP.js} +6 -6
  224. package/dist/interface/ha/{PluginSearch-n8nfjx9q.js → PluginSearch-oNHMMeJD.js} +32 -32
  225. package/dist/interface/ha/{PluginUpdateProgress-BjsYyrRk.js → PluginUpdateProgress-CqllA4eR.js} +3 -3
  226. package/dist/interface/ha/{Plugins-CFhOUaqq.js → Plugins-B6y7z5yD.js} +55 -55
  227. package/dist/interface/ha/{Recordings-B07eUJwH.js → Recordings-CyhOVNoM.js} +250 -275
  228. package/dist/interface/ha/{SensorEdit-DFPiBXQD.js → SensorEdit-CnUU2PEv.js} +58 -58
  229. package/dist/interface/ha/{SensorHistory-B2FOK4Qa.js → SensorHistory-z5hDuybW.js} +2 -2
  230. package/dist/interface/ha/{Sensors-DtzmTc-L.js → Sensors-wpoB-X4r.js} +519 -519
  231. package/dist/interface/ha/{Settings-ClqSoFjT.js → Settings-C6wTksxb.js} +22 -22
  232. package/dist/interface/ha/{SettingsAccount-Bh8FfH7J.js → SettingsAccount-DByg5uzj.js} +175 -175
  233. package/dist/interface/ha/{SettingsAppearance--FJgY8cj.js → SettingsAppearance-QgPo4M8O.js} +6 -6
  234. package/dist/interface/ha/{SettingsAssistant-ClDfxd_d.js → SettingsAssistant-Bg4BhUgb.js} +603 -496
  235. package/dist/interface/ha/{SettingsBackup-BYM55pQ7.js → SettingsBackup-BgtZSRub.js} +41 -41
  236. package/dist/interface/ha/{SettingsList-CMSEKVCD.js → SettingsList-DB3j7buh.js} +1 -1
  237. package/dist/interface/ha/{SettingsMqtt-CFpgJ-E5.js → SettingsMqtt-DVx0z8vf.js} +149 -149
  238. package/dist/interface/ha/{SettingsNotifications-CzgsBNtW.js → SettingsNotifications-osO2kMMO.js} +4 -4
  239. package/dist/interface/ha/{SettingsRecordings-Bz686yU7.js → SettingsRecordings-BFEp160g.js} +4 -4
  240. package/dist/interface/ha/{SettingsRemote-DT4ZMjJO.js → SettingsRemote-DQW4FhFn.js} +303 -303
  241. package/dist/interface/ha/{SettingsSystem-CHctt06D.js → SettingsSystem-Cs1MHOTi.js} +9 -9
  242. package/dist/interface/ha/{SettingsUsers-C_hvntON.js → SettingsUsers-BtbuHlRZ.js} +31 -31
  243. package/dist/interface/ha/{Terminal-B5FXq4-Z.js → Terminal-BuXCoMle.js} +8 -8
  244. package/dist/interface/ha/Training-CnsWyeaJ.js +1505 -0
  245. package/dist/interface/ha/{Updates-D0osNjqS.js → Updates-BxU1Jpru.js} +13 -13
  246. package/dist/interface/ha/{VariableInput-BK0qqMc7.js → VariableInput-DgENnHvk.js} +1 -1
  247. package/dist/interface/ha/{VersionsHandler-B-vpKHJN.js → VersionsHandler-DQTSSqti.js} +10 -10
  248. package/dist/interface/ha/{VirtualSensorCreate-Bp2201iM.js → VirtualSensorCreate-Bsr6zTQp.js} +2 -2
  249. package/dist/interface/ha/{Workers-BQ_luGWk.js → Workers-0jZDuLbP.js} +93 -93
  250. package/dist/interface/ha/{api-BufZW7-A.js → api-B8xb-N_g.js} +1 -1
  251. package/dist/interface/ha/{api-JPS8NpNG.js → api-VnpXqKYj.js} +11331 -10921
  252. package/dist/interface/ha/{assistant-BXVGCw2q.js → assistant-DDwonneA.js} +11 -11
  253. package/dist/interface/ha/{auth-CJC9G9BA.js → auth-CXX7ago-.js} +38 -38
  254. package/dist/interface/ha/{automationBlueprint-DWuBiu_Q.js → automationBlueprint-BUkXOKb1.js} +3 -3
  255. package/dist/interface/ha/cameraui-cards.js +1 -1
  256. package/dist/interface/ha/{cards-CGP6dWjy.js → cards-CMel6uVq.js} +641 -639
  257. package/dist/interface/ha/{config-BVURO_DZ.js → config-9vwosYC8.js} +5 -5
  258. package/dist/interface/ha/{dist-Ca4K4HIm.js → dist-jxJIsKjm.js} +307 -283
  259. package/dist/interface/ha/{mqtt-DY6EvMC9.js → mqtt-Fm_GzbBi.js} +5 -5
  260. package/dist/interface/ha/{notifications-BdIqgnrC.js → notifications-CwSeoLx0.js} +7 -7
  261. package/dist/interface/ha/pause-Ch6v65wA.js +19 -0
  262. package/dist/interface/ha/{pinia-CqffEnzx.js → pinia-D2fpp6nV.js} +161 -150
  263. package/dist/interface/ha/{plugins-Bnq2Iw00.js → plugins-CgqO91Hg.js} +18 -18
  264. package/dist/interface/ha/{rooms-AiJ5Tfir.js → rooms-DGnhPCGr.js} +1 -1
  265. package/dist/interface/ha/{server-BHhFn2RZ.js → server-BqNJbXKJ.js} +8 -8
  266. package/dist/interface/ha/{types-7oMK8VO-.js → types-Ca-1kOA9.js} +32 -18
  267. package/dist/interface/ha/{ungrouped-hib17Nvu.js → ungrouped-B1RIFH36.js} +109 -127
  268. package/dist/interface/ha/{updates-DvnEEUsx.js → updates-Dn9WR43I.js} +10 -10
  269. package/dist/interface/ha/{useAppVersion-BmWXr96y.js → useAppVersion-FMZfQhEd.js} +1 -1
  270. package/dist/interface/ha/{useLogsSocket-BKlJKGCB.js → useLogsSocket-Ch8C8inE.js} +1 -1
  271. package/dist/interface/ha/{useNavLayout-Dt0NH-G5.js → useNavLayout-DPjjtXVR.js} +2 -2
  272. package/dist/interface/ha/{useServerRestart-DWs2dqQc.js → useServerRestart-DoozgL8o.js} +1 -1
  273. package/dist/interface/ha/{useTabSwipe-vX79p6V_.js → useTabSwipe-CxXAmZNc.js} +1 -1
  274. package/dist/interface/ha/{useUpdateChannel-CHlRp8uj.js → useUpdateChannel-CBwS4cI2.js} +2 -2
  275. package/dist/interface/ha/{useUpdatesSocket-B40Cx-2L.js → useUpdatesSocket-GrlBqyU4.js} +1 -1
  276. package/dist/interface/ha/{useUserOptions-hXz79rIV.js → useUserOptions-54hnf6hX.js} +1 -1
  277. package/dist/interface/index.html +34 -34
  278. package/dist/interface/sw.js +1 -1
  279. package/dist/server/package.json +10 -11
  280. package/dist/server/requirements.txt +1 -1
  281. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/__init__.py +2 -0
  282. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/__init__.py +2 -0
  283. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/frames.py +9 -5
  284. package/dist/server/src/api/controllers/assistant.controller.js +2 -1
  285. package/dist/server/src/api/controllers/assistant.controller.js.map +1 -1
  286. package/dist/server/src/api/controllers/plugins.controller.js +3 -3
  287. package/dist/server/src/api/controllers/plugins.controller.js.map +1 -1
  288. package/dist/server/src/api/database/index.d.ts +1 -1
  289. package/dist/server/src/api/database/index.js +1 -1
  290. package/dist/server/src/api/database/index.js.map +1 -1
  291. package/dist/server/src/api/database/migrations/v2-2-3.d.ts +3 -0
  292. package/dist/server/src/api/database/migrations/v2-2-3.js +22 -0
  293. package/dist/server/src/api/database/migrations/v2-2-3.js.map +1 -0
  294. package/dist/server/src/api/database/record-schemas.d.ts +10 -10
  295. package/dist/server/src/api/schemas/cameras.schema.d.ts +54 -38
  296. package/dist/server/src/api/schemas/cameras.schema.js +5 -5
  297. package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
  298. package/dist/server/src/api/schemas/users.schema.d.ts +70 -70
  299. package/dist/server/src/api/websocket/nsp/logs.d.ts +5 -2
  300. package/dist/server/src/api/websocket/nsp/logs.js +20 -5
  301. package/dist/server/src/api/websocket/nsp/logs.js.map +1 -1
  302. package/dist/server/src/api/websocket/nsp/metrics.d.ts +0 -1
  303. package/dist/server/src/api/websocket/nsp/metrics.js +2 -48
  304. package/dist/server/src/api/websocket/nsp/metrics.js.map +1 -1
  305. package/dist/server/src/api/websocket/nsp/training.d.ts +1 -1
  306. package/dist/server/src/api/websocket/nsp/training.js +3 -2
  307. package/dist/server/src/api/websocket/nsp/training.js.map +1 -1
  308. package/dist/server/src/api/websocket/nsp/worker-perf.d.ts +3 -0
  309. package/dist/server/src/api/websocket/nsp/worker-perf.js +58 -0
  310. package/dist/server/src/api/websocket/nsp/worker-perf.js.map +1 -0
  311. package/dist/server/src/api/websocket/types.d.ts +1 -0
  312. package/dist/server/src/assistant/manager.d.ts +1 -0
  313. package/dist/server/src/assistant/manager.js +24 -2
  314. package/dist/server/src/assistant/manager.js.map +1 -1
  315. package/dist/server/src/assistant/reasoning.d.ts +1 -1
  316. package/dist/server/src/assistant/reasoning.js +6 -3
  317. package/dist/server/src/assistant/reasoning.js.map +1 -1
  318. package/dist/server/src/assistant/retry.d.ts +4 -0
  319. package/dist/server/src/assistant/retry.js +3 -0
  320. package/dist/server/src/assistant/retry.js.map +1 -1
  321. package/dist/server/src/assistant/search.d.ts +11 -11
  322. package/dist/server/src/assistant/tool-names.d.ts +2 -0
  323. package/dist/server/src/assistant/tool-names.js +23 -0
  324. package/dist/server/src/assistant/tool-names.js.map +1 -0
  325. package/dist/server/src/assistant/tools/api.js +2 -0
  326. package/dist/server/src/assistant/tools/api.js.map +1 -1
  327. package/dist/server/src/assistant/tools/docs.js +1 -0
  328. package/dist/server/src/assistant/tools/docs.js.map +1 -1
  329. package/dist/server/src/assistant/tools/memory.js +1 -0
  330. package/dist/server/src/assistant/tools/memory.js.map +1 -1
  331. package/dist/server/src/assistant/tools/settings.js +1 -0
  332. package/dist/server/src/assistant/tools/settings.js.map +1 -1
  333. package/dist/server/src/automations/utilities/imageInput.js +4 -2
  334. package/dist/server/src/automations/utilities/imageInput.js.map +1 -1
  335. package/dist/server/src/camera/controller.d.ts +3 -0
  336. package/dist/server/src/camera/controller.js +41 -28
  337. package/dist/server/src/camera/controller.js.map +1 -1
  338. package/dist/server/src/camera/decoder/detection-coordinator.d.ts +6 -0
  339. package/dist/server/src/camera/decoder/detection-coordinator.js +117 -20
  340. package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
  341. package/dist/server/src/camera/decoder/detection-pipeline.d.ts +3 -1
  342. package/dist/server/src/camera/decoder/detection-pipeline.js +4 -0
  343. package/dist/server/src/camera/decoder/detection-pipeline.js.map +1 -1
  344. package/dist/server/src/camera/decoder/event-manager.d.ts +1 -0
  345. package/dist/server/src/camera/decoder/event-manager.js +5 -2
  346. package/dist/server/src/camera/decoder/event-manager.js.map +1 -1
  347. package/dist/server/src/camera/decoder/event-thumbnailer.d.ts +4 -0
  348. package/dist/server/src/camera/decoder/event-thumbnailer.js +3 -0
  349. package/dist/server/src/camera/decoder/event-thumbnailer.js.map +1 -1
  350. package/dist/server/src/camera/decoder/event-trace.d.ts +2 -0
  351. package/dist/server/src/camera/decoder/event-trace.js +9 -5
  352. package/dist/server/src/camera/decoder/event-trace.js.map +1 -1
  353. package/dist/server/src/camera/decoder/perf-tracker.d.ts +5 -1
  354. package/dist/server/src/camera/decoder/perf-tracker.js +10 -2
  355. package/dist/server/src/camera/decoder/perf-tracker.js.map +1 -1
  356. package/dist/server/src/camera/decoder/types.d.ts +5 -1
  357. package/dist/server/src/camera/decoder/types.js.map +1 -1
  358. package/dist/server/src/camera/index.d.ts +1 -7
  359. package/dist/server/src/camera/index.js +0 -13
  360. package/dist/server/src/camera/index.js.map +1 -1
  361. package/dist/server/src/camera/privacy/snapshot.js +4 -2
  362. package/dist/server/src/camera/privacy/snapshot.js.map +1 -1
  363. package/dist/server/src/camera/snapshot-store.d.ts +22 -0
  364. package/dist/server/src/camera/snapshot-store.js +78 -0
  365. package/dist/server/src/camera/snapshot-store.js.map +1 -0
  366. package/dist/server/src/camera/streaming/fmp4-session.d.ts +2 -1
  367. package/dist/server/src/camera/streaming/fmp4-session.js +4 -0
  368. package/dist/server/src/camera/streaming/fmp4-session.js.map +1 -1
  369. package/dist/server/src/camera/streaming/rtp-session.js +1 -0
  370. package/dist/server/src/camera/streaming/rtp-session.js.map +1 -1
  371. package/dist/server/src/manager/trainingCandidateManager.js +17 -13
  372. package/dist/server/src/manager/trainingCandidateManager.js.map +1 -1
  373. package/dist/server/src/manager/types.d.ts +4 -0
  374. package/dist/server/src/rpc/interfaces/detection.d.ts +1 -0
  375. package/dist/server/src/rpc/interfaces/device.d.ts +1 -0
  376. package/dist/server/src/sensors/registry.d.ts +1 -0
  377. package/dist/server/src/sensors/registry.js +11 -5
  378. package/dist/server/src/sensors/registry.js.map +1 -1
  379. package/dist/server/src/sensors/sensor.js +2 -3
  380. package/dist/server/src/sensors/sensor.js.map +1 -1
  381. package/dist/server/src/sensors/types.d.ts +2 -1
  382. package/dist/server/src/sensors/types.js +7 -1
  383. package/dist/server/src/sensors/types.js.map +1 -1
  384. package/dist/server/src/utils/image.d.ts +1 -0
  385. package/dist/server/src/utils/image.js +95 -0
  386. package/dist/server/src/utils/image.js.map +1 -0
  387. package/package.json +10 -11
  388. package/dist/interface/assets/AutomationStoreDetail-btcIglkw.js +0 -2
  389. package/dist/interface/assets/Automations-CKpwXTyc.js +0 -2
  390. package/dist/interface/assets/Camera-BEP_HAQm.js +0 -2
  391. package/dist/interface/assets/Camera-gYRy6ECP.css +0 -1
  392. package/dist/interface/assets/Cameras-DJreIgtW.js +0 -651
  393. package/dist/interface/assets/Camview-D4VNMv_l.js +0 -1
  394. package/dist/interface/assets/Console-Y1IutnkC.js +0 -1
  395. package/dist/interface/assets/CuiAssistantConversation-C4RYcMAM.js +0 -5
  396. package/dist/interface/assets/CuiBottomSheet-S8bM23jj.js +0 -1
  397. package/dist/interface/assets/CuiCameraPipCard-HTjvF3yG.js +0 -1
  398. package/dist/interface/assets/CuiCameraRecordings-B7BhgPpP.css +0 -1
  399. package/dist/interface/assets/CuiCameraRecordings-Cx6FYz3Y.js +0 -1
  400. package/dist/interface/assets/CuiCameraShares-J728G9wF.js +0 -1
  401. package/dist/interface/assets/CuiCameraTable-CKur0qLE.js +0 -1
  402. package/dist/interface/assets/CuiChartTable-DCGY-zVy.css +0 -1
  403. package/dist/interface/assets/CuiDataTable-BLyeEEAp.js +0 -1
  404. package/dist/interface/assets/CuiDataTable-DbkFXZeg.css +0 -1
  405. package/dist/interface/assets/CuiLightControl-C1YSJSWd.js +0 -1
  406. package/dist/interface/assets/CuiPluginCard-enc00hbc.js +0 -2
  407. package/dist/interface/assets/CuiSchema-CRHUMY0B.js +0 -1
  408. package/dist/interface/assets/Faces-fMMd6-PY.js +0 -1
  409. package/dist/interface/assets/Floorplan-BQbOWCCf.js +0 -1
  410. package/dist/interface/assets/Menu-B3VA0LMx.js +0 -1
  411. package/dist/interface/assets/Metrics-C0q2BdKH.js +0 -9
  412. package/dist/interface/assets/Metrics-DX59XXDc.css +0 -1
  413. package/dist/interface/assets/OAuthDeviceFlow-ZiCl4400.js +0 -1
  414. package/dist/interface/assets/Plugin-C0CPlt4f.js +0 -1
  415. package/dist/interface/assets/PluginDetail-DDh6PfMd.js +0 -2
  416. package/dist/interface/assets/PluginSchema-BWlRMPo6.js +0 -1
  417. package/dist/interface/assets/PluginSearch-BR_ei8Pa.js +0 -1
  418. package/dist/interface/assets/PluginSearch-C2AXz2KG.js +0 -2
  419. package/dist/interface/assets/Plugins-CN1YIfNk.js +0 -1
  420. package/dist/interface/assets/Recordings-jhxwdrQY.js +0 -1
  421. package/dist/interface/assets/SettingsAccount-CJ_fPrT-.js +0 -1
  422. package/dist/interface/assets/SettingsAccount-CYn81m0Z.js +0 -1
  423. package/dist/interface/assets/SettingsAppearance-DFe8JsT5.js +0 -1
  424. package/dist/interface/assets/SettingsAssistant-CDyI6fee.css +0 -1
  425. package/dist/interface/assets/SettingsAssistant-Dm4oINqB.js +0 -1
  426. package/dist/interface/assets/SettingsMqtt-ByQYIRkm.js +0 -1
  427. package/dist/interface/assets/SettingsRemote-7iDccnV9.js +0 -2
  428. package/dist/interface/assets/SettingsUsers-yYobKcPv.js +0 -1
  429. package/dist/interface/assets/Training-BUhrkDzA.css +0 -1
  430. package/dist/interface/assets/Training-SOWa6Ay1.js +0 -1
  431. package/dist/interface/assets/Workers-D7mXpfvC.js +0 -2
  432. package/dist/interface/assets/api-BKiE8A_V.css +0 -2
  433. package/dist/interface/assets/api-Cl7JjXOQ.js +0 -4
  434. package/dist/interface/assets/cloudHandoff-CGMLCwMb.js +0 -1
  435. package/dist/interface/assets/main-W8WcKa2g.js +0 -3
  436. package/dist/interface/assets/rooms-D_7As09p.js +0 -1
  437. package/dist/interface/assets/types-BEy4uGJ0.js +0 -1
  438. package/dist/interface/assets/ungrouped-BJyBDv5e.js +0 -1
  439. package/dist/interface/assets/useBackupRestore-D305pYHT.js +0 -1
  440. package/dist/interface/assets/vendor-cameraui-CqKq4Yeo.js +0 -2326
  441. package/dist/interface/ha/Training-BgvpsKPM.js +0 -1469
@@ -6,9 +6,9 @@ import { t as N } from "./message-BExXUXHN.js";
6
6
  import { t as ne } from "./chevron-down-CN3LNAsG.js";
7
7
  import { t as P } from "./tag-Bko2QYOK.js";
8
8
  import { t as F } from "./history-Bm6QaZ6b.js";
9
- import { Dn as I, Dr as re, Et as L, J as R, Jn as z, Or as B, Q as V, Rr as ie, Tt as ae, V as oe, Yt as se, Zi as H, ar as ce, g as U, hr as W, it as G, li as K, mr as le, mt as ue, p as q, r as J, rr as de, vi as fe, vr as Y, wt as pe, yr as me, zr as he } from "./api-JPS8NpNG.js";
9
+ import { $i as I, Br as re, Dt as L, Et as R, Hn as z, J as ie, On as B, Or as ae, Q as oe, Tt as V, V as se, Xt as H, at as ce, bi as le, br as U, g as W, gr as G, hr as K, ht as ue, ir as de, kr as fe, or as q, p as J, r as pe, ui as me, yr as Y, zr as he } from "./api-VnpXqKYj.js";
10
10
  import { A as ge, b as _e, u as ve } from "./intercomService-Dwd0bhSN.js";
11
- import { G as ye, U as be, W as xe, r as Se } from "./pinia-CqffEnzx.js";
11
+ import { G as ye, U as be, W as xe, r as Se } from "./pinia-D2fpp6nV.js";
12
12
  import { n as Ce } from "./vue-i18n-BBObX4QY.js";
13
13
  import { i as we } from "./alert-outline-BssBb-kV.js";
14
14
  import { p as Te, s as Ee } from "./eventIcons-DrjNuTS2.js";
@@ -21,12 +21,12 @@ import { t as Ne } from "./multiselect-B0fAnW75.js";
21
21
  import { t as Pe } from "./textarea-DrKQ6YMZ.js";
22
22
  import { t as Fe } from "./clock-outline-CLOrwuhP.js";
23
23
  import { t as Ie } from "./source-branch-CimaS9J1.js";
24
- import { a as Le, i as Re, n as ze, o as Be, r as Ve, t as He } from "./assistant-BXVGCw2q.js";
24
+ import { a as Le, i as Re, n as ze, o as Be, r as Ve, t as He } from "./assistant-DDwonneA.js";
25
25
  import { t as Ue } from "./search-DMJuYUDF.js";
26
26
  import { t as We } from "./content-copy-ChfuNPUb.js";
27
27
  import { t as Ge } from "./CuiMarkdownContent-CU4eGw6l.js";
28
28
  import { t as Ke } from "./brain-DBagansp.js";
29
- import { u as qe } from "./cards-CGP6dWjy.js";
29
+ import { u as qe } from "./cards-CMel6uVq.js";
30
30
  import { c as Je, d as Ye, i as Xe, l as Ze, n as Qe, r as $e, t as et, u as tt } from "./types-B9Rna2FN.js";
31
31
  import { t as nt } from "./pencil-outline-3AYc7WXi.js";
32
32
  import { t as rt } from "./back-filled-B-jI6Dqb.js";
@@ -309,9 +309,9 @@ var Ht = d({
309
309
  //#endregion
310
310
  //#region src/composables/useAssistantReferences.ts
311
311
  function Ut() {
312
- let e = he(), { t } = Ce(), n = fe(), r = ue(), { openEpisodePlayer: i } = V(), a = z("@camera.ui/camera-ui-nvr"), { download: o } = le(), s = j(null);
312
+ let e = re(), { t } = Ce(), n = le(), r = ue(), { openEpisodePlayer: i } = oe(), a = z("@camera.ui/camera-ui-nvr"), { download: o } = K(), s = j(null);
313
313
  async function c() {
314
- let e = await se({
314
+ let e = await H({
315
315
  parameter: {
316
316
  page: 1,
317
317
  pageSize: -1
@@ -321,7 +321,7 @@ function Ut() {
321
321
  return new Map(e.result.map((e) => [e._id, e]));
322
322
  }
323
323
  function l(e, t) {
324
- r.openComponentDialog(G, {
324
+ r.openComponentDialog(ce, {
325
325
  data: {
326
326
  title: e.name,
327
327
  dedupeKey: `camera-event:${e._id}:${t}`,
@@ -445,7 +445,7 @@ var Wt = { class: "flex flex-wrap gap-1.5" }, Gt = ["disabled", "onClick"], Kt =
445
445
  modelId: {}
446
446
  },
447
447
  setup(e) {
448
- let t = new He(), n = e, r = U(), { user: a } = Se(r), { data: o } = t.getAssistantInfoQuery(), s = t.patchAssistantInfoMutation(), c = _(() => a.value?.role === "admin" || a.value?.role === "master"), l = _(() => o.value?.settings.models ?? []), u = _(() => l.value.find((e) => e._id === n.modelId) ?? (o.value ? Ze(o.value.settings) : void 0)), d = _(() => n.setting === "sendImages" ? u.value?.sendImages === !0 : o.value?.settings[n.setting] === !0);
448
+ let t = new He(), n = e, r = W(), { user: a } = Se(r), { data: o } = t.getAssistantInfoQuery(), s = t.patchAssistantInfoMutation(), c = _(() => a.value?.role === "admin" || a.value?.role === "master"), l = _(() => o.value?.settings.models ?? []), u = _(() => l.value.find((e) => e._id === n.modelId) ?? (o.value ? Ze(o.value.settings) : void 0)), d = _(() => n.setting === "sendImages" ? u.value?.sendImages === !0 : o.value?.settings[n.setting] === !0);
449
449
  async function f(e) {
450
450
  if (n.setting !== "sendImages") {
451
451
  await s.mutateAsync({ [n.setting]: e });
@@ -458,7 +458,7 @@ var Wt = { class: "flex flex-wrap gap-1.5" }, Gt = ["disabled", "onClick"], Kt =
458
458
  })) });
459
459
  }
460
460
  return (t, n) => {
461
- let r = I, a = Qt;
461
+ let r = B, a = Qt;
462
462
  return i(), p(a, {
463
463
  severity: g(d) ? "success" : "warn",
464
464
  title: t.$t(`views.assistant.setting_${e.setting}_title`),
@@ -555,7 +555,7 @@ var ln = d({
555
555
  return e === "ok" ? "bg-success" : e === "warn" ? "bg-warning" : e === "error" ? "bg-danger" : "cui-assistant-card-dot-plain";
556
556
  }
557
557
  return (t, d) => {
558
- let f = ln, h = on, _ = nn, y = ce;
558
+ let f = ln, h = on, _ = nn, y = q;
559
559
  return i(), x("div", un, [
560
560
  T("div", dn, [e.card.kind === "system_health" ? (i(), p(f, {
561
561
  key: 0,
@@ -683,7 +683,7 @@ var wn = d({
683
683
  } });
684
684
  }
685
685
  return (t, n) => {
686
- let a = me, l = Te, _ = Ee, S = wn, D = ot, k = st, A = ne, j = xn, ee = $t, te = Qt, N = qt;
686
+ let a = U, l = Te, _ = Ee, S = wn, D = ot, k = st, A = ne, j = xn, ee = $t, te = Qt, N = qt;
687
687
  return i(), x("div", Tn, [
688
688
  T("button", {
689
689
  type: "button",
@@ -931,17 +931,17 @@ var Yn = {
931
931
  function z(e) {
932
932
  return `$${e.toFixed(e < .01 ? 4 : 3)}`;
933
933
  }
934
- function B(e) {
934
+ function ie(e) {
935
935
  return !!s.busy && e.items.some((e) => !e.result && y.includes(e.part.state));
936
936
  }
937
- async function V() {
937
+ async function B() {
938
938
  O.value = k.value, S.value = !0, await c(), b.value?.$el.focus();
939
939
  }
940
- function ie() {
940
+ function ae() {
941
941
  let e = O.value.trim();
942
942
  e && (S.value = !1, e !== k.value && u("edit", e));
943
943
  }
944
- function ae(e) {
944
+ function oe(e) {
945
945
  f({ data: {
946
946
  title: e.alt,
947
947
  src: e.src,
@@ -949,11 +949,11 @@ var Yn = {
949
949
  hideCancelButton: !0
950
950
  } });
951
951
  }
952
- async function se() {
953
- await J(P.value);
952
+ async function H() {
953
+ await pe(P.value);
954
954
  }
955
955
  return (a, s) => {
956
- let c = Pe, d = De, f = Gn, _ = Ht, y = nt, w = Ie, j = oe, N = Ge, R = Hn, z = me, H = ot, ce = xn, U = $t, W = Qt, G = qt, K = Ye, le = pe, ue = at, q = te;
956
+ let c = Pe, d = De, f = Gn, _ = Ht, y = nt, w = Ie, j = se, N = Ge, R = Hn, z = U, ce = ot, le = xn, W = $t, G = Qt, K = qt, ue = Ye, de = V, fe = at, q = te;
957
957
  return e.message.role === "user" ? (i(), x("div", Yn, [g(S) ? (i(), x("div", Xn, [M(c, {
958
958
  ref_key: "editRef",
959
959
  ref: b,
@@ -962,7 +962,7 @@ var Yn = {
962
962
  "auto-resize": "",
963
963
  rows: "2",
964
964
  class: "w-full text-[15px] leading-relaxed",
965
- onKeydown: [n(t(ie, ["exact", "prevent"]), ["enter"]), s[1] ||= n(t((e) => S.value = !1, ["prevent"]), ["esc"])]
965
+ onKeydown: [n(t(ae, ["exact", "prevent"]), ["enter"]), s[1] ||= n(t((e) => S.value = !1, ["prevent"]), ["esc"])]
966
966
  }, null, 8, ["modelValue", "onKeydown"]), T("div", Zn, [M(d, {
967
967
  type: "button",
968
968
  size: "small",
@@ -975,7 +975,7 @@ var Yn = {
975
975
  size: "small",
976
976
  label: a.$t("views.assistant.edit_send"),
977
977
  disabled: !g(O).trim(),
978
- onClick: ie
978
+ onClick: ae
979
979
  }, null, 8, ["label", "disabled"])])])) : (i(), x("div", Qn, [
980
980
  D(o(g(k)) + " ", 1),
981
981
  g(A).length ? (i(), x("div", $n, [(i(!0), x(C, null, r(g(A), (e) => (i(), x("img", {
@@ -1001,7 +1001,7 @@ var Yn = {
1001
1001
  text: "",
1002
1002
  rounded: "",
1003
1003
  class: "cui-icon-md text-muted",
1004
- onClick: V
1004
+ onClick: B
1005
1005
  }, {
1006
1006
  icon: v(() => [M(y, { class: "w-3.5 h-3.5" })]),
1007
1007
  _: 1
@@ -1077,11 +1077,11 @@ var Yn = {
1077
1077
  class: "cui-assistant-steps rounded-xl text-sm",
1078
1078
  open: e.streaming
1079
1079
  }, [T("summary", lr, [
1080
- B(t) ? (i(), p(z, {
1080
+ ie(t) ? (i(), p(z, {
1081
1081
  key: 0,
1082
1082
  class: "w-4 h-4 m-0 shrink-0",
1083
1083
  "stroke-width": "6"
1084
- })) : (i(), p(H, {
1084
+ })) : (i(), p(ce, {
1085
1085
  key: 1,
1086
1086
  class: "w-4 h-4 shrink-0 text-success"
1087
1087
  })),
@@ -1120,29 +1120,29 @@ var Yn = {
1120
1120
  key: e.src,
1121
1121
  type: "button",
1122
1122
  class: "cui-assistant-thumb cursor-pointer overflow-hidden rounded-lg",
1123
- onClick: (t) => ae(e)
1123
+ onClick: (t) => oe(e)
1124
1124
  }, [T("img", {
1125
1125
  src: e.src,
1126
1126
  alt: e.alt,
1127
1127
  class: "h-32 w-auto object-cover",
1128
1128
  loading: "lazy"
1129
1129
  }, null, 8, br)], 8, yr))), 128))])) : m("", !0),
1130
- (i(!0), x(C, null, r(g(F).cards, (e, t) => (i(), p(ce, {
1130
+ (i(!0), x(C, null, r(g(F).cards, (e, t) => (i(), p(le, {
1131
1131
  key: t,
1132
1132
  card: e,
1133
1133
  references: g(F).all
1134
1134
  }, null, 8, ["card", "references"]))), 128)),
1135
- (i(!0), x(C, null, r(g(F).settings, (t) => (i(), p(U, {
1135
+ (i(!0), x(C, null, r(g(F).settings, (t) => (i(), p(W, {
1136
1136
  key: t,
1137
1137
  setting: t,
1138
1138
  "model-id": e.modelId
1139
1139
  }, null, 8, ["setting", "model-id"]))), 128)),
1140
- (i(!0), x(C, null, r(g(F).notices, (e) => (i(), p(W, {
1140
+ (i(!0), x(C, null, r(g(F).notices, (e) => (i(), p(G, {
1141
1141
  key: `${e.capability}:${e.model}`,
1142
1142
  title: a.$t(`views.assistant.notice_${e.capability}_title`, { model: e.model }),
1143
1143
  text: a.$t(`views.assistant.notice_${e.capability}_text`)
1144
1144
  }, null, 8, ["title", "text"]))), 128)),
1145
- g(F).references.length ? (i(), p(G, {
1145
+ g(F).references.length ? (i(), p(K, {
1146
1146
  key: 1,
1147
1147
  references: g(F).references
1148
1148
  }, null, 8, ["references"])) : m("", !0)
@@ -1157,7 +1157,7 @@ var Yn = {
1157
1157
  disabled: e.busy,
1158
1158
  onClick: s[5] ||= (e) => u("continue")
1159
1159
  }, {
1160
- icon: v(() => [M(K, { class: "w-3.5 h-3.5" })]),
1160
+ icon: v(() => [M(ue, { class: "w-3.5 h-3.5" })]),
1161
1161
  _: 1
1162
1162
  }, 8, ["label", "disabled"])])) : m("", !0),
1163
1163
  !e.streaming && (g(P) || e.stopped) ? (i(), x("div", Sr, [g(re) ? E((i(), x("span", Cr, [D(o(g(re)), 1)])), [[
@@ -1166,7 +1166,7 @@ var Yn = {
1166
1166
  void 0,
1167
1167
  { top: !0 }
1168
1168
  ]]) : m("", !0), T("div", wr, [
1169
- g(P) ? E((i(), p(le, {
1169
+ g(P) ? E((i(), p(de, {
1170
1170
  key: 0,
1171
1171
  "action-text": a.$t("views.assistant.copied"),
1172
1172
  icon: g(We),
@@ -1177,7 +1177,7 @@ var Yn = {
1177
1177
  rounded: !0,
1178
1178
  class: "cui-icon-md text-muted"
1179
1179
  },
1180
- onAction: se
1180
+ onAction: H
1181
1181
  }, null, 8, ["action-text", "icon"])), [[
1182
1182
  q,
1183
1183
  { value: a.$t("views.assistant.copy_answer") },
@@ -1193,7 +1193,7 @@ var Yn = {
1193
1193
  disabled: e.busy,
1194
1194
  onClick: s[6] ||= (e) => u("regenerate")
1195
1195
  }, {
1196
- icon: v(() => [M(ue, { class: "w-3.5 h-3.5" })]),
1196
+ icon: v(() => [M(fe, { class: "w-3.5 h-3.5" })]),
1197
1197
  _: 1
1198
1198
  }, 8, ["disabled"])), [[
1199
1199
  q,
@@ -1333,27 +1333,27 @@ var Fr = d({
1333
1333
  },
1334
1334
  emits: ["send", "stop"],
1335
1335
  setup(e, { expose: u, emit: d }) {
1336
- let f = e, _ = d, { smBreakpoint: y } = re(), { t: S, locale: O } = Ce(), k = window.SpeechRecognition ?? window.webkitSpeechRecognition, A = !!k && window.isSecureContext, ee = w("inputRef"), ne = w("fileInput"), P = j(""), F = j(!1), I = j([]), L = j(""), R = null, z;
1337
- function B() {
1336
+ let f = e, _ = d, { smBreakpoint: y } = ae(), { t: S, locale: O } = Ce(), k = window.SpeechRecognition ?? window.webkitSpeechRecognition, A = !!k && window.isSecureContext, ee = w("inputRef"), ne = w("fileInput"), P = j(""), F = j(!1), I = j([]), re = j(""), L = null, R;
1337
+ function z() {
1338
1338
  let e = ee.value?.$el;
1339
1339
  return e?.tagName === "TEXTAREA" ? e : e?.querySelector("textarea");
1340
1340
  }
1341
- function V() {
1342
- B()?.focus();
1343
- }
1344
1341
  function ie() {
1345
- let e = B();
1342
+ z()?.focus();
1343
+ }
1344
+ function B() {
1345
+ let e = z();
1346
1346
  e && (e.style.height = "auto", e.style.height = `${e.scrollHeight}px`);
1347
1347
  }
1348
- function ae() {
1348
+ function oe() {
1349
1349
  let e = P.value.trim();
1350
1350
  !e && !I.value.length || f.disabled || (_("send", {
1351
1351
  text: e,
1352
1352
  attachments: I.value
1353
1353
  }), P.value = "", I.value = []);
1354
1354
  }
1355
- function oe(e) {
1356
- L.value = e, clearTimeout(z), z = setTimeout(() => L.value = "", 4e3);
1355
+ function V(e) {
1356
+ re.value = e, clearTimeout(R), R = setTimeout(() => re.value = "", 4e3);
1357
1357
  }
1358
1358
  function se(e) {
1359
1359
  let t = e.type.split("/")[0];
@@ -1368,24 +1368,24 @@ var Fr = d({
1368
1368
  r.onload = () => t(String(r.result)), r.onerror = () => n(r.error), r.readAsDataURL(e);
1369
1369
  });
1370
1370
  }
1371
- async function U(e) {
1371
+ async function le(e) {
1372
1372
  for (let t of e) {
1373
1373
  let e = se(t);
1374
1374
  if (!e) {
1375
- oe(S("views.assistant.attach_unsupported"));
1375
+ V(S("views.assistant.attach_unsupported"));
1376
1376
  continue;
1377
1377
  }
1378
1378
  if (t.size > Ir[e]) {
1379
- oe(S("views.assistant.attach_too_large", { max: Math.round(Ir[e] / 1024 / 1024) }));
1379
+ V(S("views.assistant.attach_too_large", { max: Math.round(Ir[e] / 1024 / 1024) }));
1380
1380
  continue;
1381
1381
  }
1382
1382
  if (I.value.length >= 8) {
1383
- oe(S("views.assistant.attach_too_many", { max: 8 }));
1383
+ V(S("views.assistant.attach_too_many", { max: 8 }));
1384
1384
  break;
1385
1385
  }
1386
1386
  let n = await ce(t);
1387
1387
  I.value.push({
1388
- id: q(),
1388
+ id: J(),
1389
1389
  name: t.name || e,
1390
1390
  kind: e,
1391
1391
  mimeType: t.type,
@@ -1395,20 +1395,20 @@ var Fr = d({
1395
1395
  });
1396
1396
  }
1397
1397
  }
1398
- async function W(e) {
1398
+ async function U(e) {
1399
1399
  let t = e.target;
1400
- t.files?.length && await U(Array.from(t.files)), t.value = "";
1400
+ t.files?.length && await le(Array.from(t.files)), t.value = "";
1401
1401
  }
1402
- async function G(e) {
1402
+ async function W(e) {
1403
1403
  let t = Array.from(e.clipboardData?.files ?? []);
1404
- t.length && (e.preventDefault(), await U(t));
1404
+ t.length && (e.preventDefault(), await le(t));
1405
1405
  }
1406
- function K(e) {
1406
+ function G(e) {
1407
1407
  I.value = I.value.filter((t) => t.id !== e);
1408
1408
  }
1409
- function le() {
1409
+ function K() {
1410
1410
  if (F.value) {
1411
- R?.stop();
1411
+ L?.stop();
1412
1412
  return;
1413
1413
  }
1414
1414
  if (!k) return;
@@ -1418,15 +1418,15 @@ var Fr = d({
1418
1418
  for (let e = 0; e < t.results.length; e += 1) n += t.results[e][0]?.transcript ?? "";
1419
1419
  P.value = e ? `${e} ${n.trim()}` : n.trim();
1420
1420
  }, t.onend = () => {
1421
- F.value = !1, R = null, V();
1422
- }, t.onerror = () => {
1423
- F.value = !1, R = null;
1424
- }, R = t, F.value = !0, t.start();
1425
- }
1426
- return b(P, () => c(ie)), a(() => {
1427
- R?.abort(), clearTimeout(z);
1428
- }), u({ focus: V }), (a, c) => {
1429
- let u = Pe, d = Qt, f = Gn, b = Ht, S = je, w = De, O = N, k = Fr, j = ct, re = Mr, R = kr, z = te;
1421
+ F.value = !1, L = null, ie();
1422
+ }, t.onerror = (e) => {
1423
+ F.value = !1, L = null, e.error !== "no-speech" && e.error !== "aborted" && V(e.error === "not-allowed" || e.error === "service-not-allowed" ? S("views.assistant.voice_denied") : S("views.assistant.voice_failed", { error: e.error }));
1424
+ }, L = t, F.value = !0, t.start();
1425
+ }
1426
+ return b(P, () => c(B)), a(() => {
1427
+ L?.abort(), clearTimeout(R);
1428
+ }), u({ focus: ie }), (a, c) => {
1429
+ let u = Pe, d = Qt, f = Gn, b = Ht, S = je, w = De, O = N, k = Fr, j = ct, L = Mr, R = kr, z = te;
1430
1430
  return i(), x("div", zr, [
1431
1431
  M(u, {
1432
1432
  ref_key: "inputRef",
@@ -1438,8 +1438,8 @@ var Fr = d({
1438
1438
  "auto-resize": "",
1439
1439
  rows: "1",
1440
1440
  class: "cui-assistant-input block w-full max-h-52 resize-none px-4 pt-3.5 pb-1 text-[15px] leading-relaxed",
1441
- onKeydown: n(t(ae, ["exact", "prevent"]), ["enter"]),
1442
- onPaste: G
1441
+ onKeydown: n(t(oe, ["exact", "prevent"]), ["enter"]),
1442
+ onPaste: W
1443
1443
  }, null, 8, [
1444
1444
  "modelValue",
1445
1445
  "placeholder",
@@ -1473,7 +1473,7 @@ var Fr = d({
1473
1473
  severity: "secondary",
1474
1474
  rounded: "",
1475
1475
  class: "cui-assistant-attachment-remove cui-icon-sm absolute -top-1.5 -right-1.5",
1476
- onClick: (t) => K(e.id)
1476
+ onClick: (t) => G(e.id)
1477
1477
  }, {
1478
1478
  icon: v(() => [M(S, { class: "w-3 h-3" })]),
1479
1479
  _: 1
@@ -1483,14 +1483,14 @@ var Fr = d({
1483
1483
  void 0,
1484
1484
  { top: !0 }
1485
1485
  ]])]))), 128))])) : m("", !0),
1486
- g(L) ? (i(), p(O, {
1486
+ g(re) ? (i(), p(O, {
1487
1487
  key: 2,
1488
1488
  severity: "warn",
1489
1489
  variant: "simple",
1490
1490
  size: "small",
1491
1491
  class: "px-3 pb-1"
1492
1492
  }, {
1493
- default: v(() => [D(o(g(L)), 1)]),
1493
+ default: v(() => [D(o(g(re)), 1)]),
1494
1494
  _: 1
1495
1495
  })) : m("", !0),
1496
1496
  T("div", { class: l(["flex items-center px-2 pb-2 pl-3", e.compact ? "gap-0.5" : "gap-2"]) }, [
@@ -1519,7 +1519,7 @@ var Fr = d({
1519
1519
  class: "hidden",
1520
1520
  multiple: "",
1521
1521
  accept: g(Lr),
1522
- onChange: W
1522
+ onChange: U
1523
1523
  }, null, 40, Kr),
1524
1524
  g(A) ? E((i(), p(w, {
1525
1525
  key: 0,
@@ -1529,7 +1529,7 @@ var Fr = d({
1529
1529
  rounded: "",
1530
1530
  class: l(["cui-assistant-voice shrink-0", { "cui-assistant-voice-active": g(F) }]),
1531
1531
  disabled: e.disabled || e.busy,
1532
- onClick: le
1532
+ onClick: K
1533
1533
  }, {
1534
1534
  icon: v(() => [M(j, { class: "w-4 h-4" })]),
1535
1535
  _: 1
@@ -1553,7 +1553,7 @@ var Fr = d({
1553
1553
  class: "cui-assistant-send shrink-0",
1554
1554
  onClick: c[2] ||= (e) => _("stop")
1555
1555
  }, {
1556
- icon: v(() => [M(re, { class: "w-4 h-4" })]),
1556
+ icon: v(() => [M(L, { class: "w-4 h-4" })]),
1557
1557
  _: 1
1558
1558
  })), [[
1559
1559
  z,
@@ -1565,7 +1565,7 @@ var Fr = d({
1565
1565
  type: "button",
1566
1566
  class: "cui-assistant-send shrink-0",
1567
1567
  disabled: e.disabled || !g(P).trim() && !g(I).length,
1568
- onClick: ae
1568
+ onClick: oe
1569
1569
  }, {
1570
1570
  icon: v(() => [M(R, { class: "w-4 h-4" })]),
1571
1571
  _: 1
@@ -1574,7 +1574,7 @@ var Fr = d({
1574
1574
  ]);
1575
1575
  };
1576
1576
  }
1577
- }), [["__scopeId", "data-v-59b0a765"]]), Xr = {
1577
+ }), [["__scopeId", "data-v-1b2f48d6"]]), Xr = {
1578
1578
  viewBox: "0 0 24 24",
1579
1579
  width: "1.2em",
1580
1580
  height: "1.2em"
@@ -7694,14 +7694,14 @@ function Jc(e) {
7694
7694
  }
7695
7695
  async function Yc(e, t) {
7696
7696
  let n = new Headers(t?.headers ?? {});
7697
- for (let [e, t] of Object.entries(await W())) n.set(e, t);
7697
+ for (let [e, t] of Object.entries(await G())) n.set(e, t);
7698
7698
  return n.set("X-Cui-Timezone", Intl.DateTimeFormat().resolvedOptions().timeZone), fetch(e, {
7699
7699
  ...t,
7700
7700
  headers: n
7701
7701
  });
7702
7702
  }
7703
7703
  function Xc() {
7704
- return `${(H().target.value?.endpoint.url ?? window.location.origin).replace(/\/+$/, "")}/api/assistant/chat`;
7704
+ return `${(I().target.value?.endpoint.url ?? window.location.origin).replace(/\/+$/, "")}/api/assistant/chat`;
7705
7705
  }
7706
7706
  function Zc(e, t) {
7707
7707
  try {
@@ -7780,7 +7780,7 @@ async function Qc(e, t, n, r) {
7780
7780
  }
7781
7781
  }
7782
7782
  function $c(e) {
7783
- let t = he(), n = lt(), r = [...(e.approvalTools ?? []).filter((e) => e.approval && e.inputSchema).map((e) => uo({
7783
+ let t = re(), n = lt(), r = [...(e.approvalTools ?? []).filter((e) => e.approval && e.inputSchema).map((e) => uo({
7784
7784
  name: e.name,
7785
7785
  description: e.description,
7786
7786
  inputSchema: e.inputSchema,
@@ -7793,8 +7793,8 @@ function $c(e) {
7793
7793
  language: e.language.value,
7794
7794
  timezone: Intl.DateTimeFormat().resolvedOptions().timeZone
7795
7795
  }, a = j({}), o = j({}), s = j({}), c = j({}), l = j({}), u = j({}), d = j(null);
7796
- function f() {
7797
- i.disabledGroups = [...e.disabledGroups?.value ?? []], i.instructions = e.instructions?.value?.trim() || void 0, i.modelId = e.modelId?.value ?? void 0;
7796
+ function f(t = !1) {
7797
+ i.regenerate = t, i.disabledGroups = [...e.disabledGroups?.value ?? []], i.instructions = e.instructions?.value?.trim() || void 0, i.modelId = e.modelId?.value ?? void 0;
7798
7798
  }
7799
7799
  function p(e) {
7800
7800
  for (let [t, n] of Object.entries(e)) n.images.length && (a.value[t] = n.images.map((e) => ({
@@ -7883,7 +7883,7 @@ function $c(e) {
7883
7883
  d.value = null, f(), await m.sendMessage(e);
7884
7884
  }
7885
7885
  async function x() {
7886
- d.value = null, f(), await m.reload();
7886
+ d.value = null, f(!0), await m.reload();
7887
7887
  }
7888
7888
  function S() {
7889
7889
  let e = m.runId.value;
@@ -7939,7 +7939,7 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
7939
7939
  class: "cui-assistant-note pl-3 text-[13.5px] text-muted"
7940
7940
  }, ml = { class: "font-medium text-color-faded" }, hl = {
7941
7941
  key: 0,
7942
- class: "cui-assistant-dock relative px-4 pb-3 pt-6"
7942
+ class: "relative px-4 pb-3 pt-6"
7943
7943
  }, gl = { class: "mx-auto w-full max-w-[720px]" }, _l = {
7944
7944
  key: 0,
7945
7945
  class: "mb-2 flex flex-col gap-1"
@@ -7997,7 +7997,7 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
7997
7997
  "emptied"
7998
7998
  ],
7999
7999
  setup(e, { expose: a, emit: s }) {
8000
- let u = new He(), d = e, f = s, { t: y, locale: S } = Ce(), O = fe(), { data: k } = u.listProfilesQuery(), A = u.createProfileMutation(), N = u.patchProfileMutation(), F = u.deleteProfileMutation(), { data: I, refetch: re } = u.memoryQuery(), R = u.deleteMemoryFactMutation(), z = u.deleteMemoryMutation(), { data: B } = u.getAssistantInfoQuery(), V = w("scrollRef"), ie = w("contentRef"), se = w("composerRef"), H = w("toolsPopover"), ce = w("memoryPopover"), U = j(!0), W = j([]), G = j(""), K = j(null), le = j(!1), ue = j(""), q = j(null), J = $c({
8000
+ let u = new He(), d = e, f = s, { t: y, locale: S } = Ce(), O = le(), { data: k } = u.listProfilesQuery(), A = u.createProfileMutation(), N = u.patchProfileMutation(), F = u.deleteProfileMutation(), { data: I, refetch: re } = u.memoryQuery(), z = u.deleteMemoryFactMutation(), ie = u.deleteMemoryMutation(), { data: B } = u.getAssistantInfoQuery(), ae = w("scrollRef"), oe = w("contentRef"), V = w("composerRef"), H = w("toolsPopover"), ce = w("memoryPopover"), U = j(!0), W = j([]), G = j(""), K = j(null), ue = j(!1), fe = j(""), q = j(null), J = $c({
8001
8001
  threadId: _(() => d.threadId),
8002
8002
  initialMessages: d.initialMessages,
8003
8003
  initialAttachments: d.initialAttachments,
@@ -8007,12 +8007,8 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8007
8007
  modelId: q,
8008
8008
  approvalTools: d.approvalTools,
8009
8009
  onFinish: () => f("finished"),
8010
- onError: (e) => O.add({
8011
- severity: "error",
8012
- detail: e.message,
8013
- life: 5e3
8014
- })
8015
- }), Y = _(() => J.messages.value.length === 0), pe = _(() => B.value?.settings.models ?? []), me = _(() => B.value ? Ze(B.value.settings) : void 0), he = _(() => pe.value.find((e) => e._id === q.value) ?? me.value), ve = _(() => he.value?.capabilities?.vision === !1 ? he.value.name : void 0), ye = _(() => J.busy.value && !J.approvals.value.length && !J.questions.value.length && !J.pausedElsewhere.value), be = _(() => ye.value && J.messages.value.at(-1)?.role !== "assistant"), xe = _(() => {
8010
+ onError: ot
8011
+ }), pe = _(() => J.messages.value.length === 0), me = _(() => B.value?.settings.models ?? []), Y = _(() => B.value ? Ze(B.value.settings) : void 0), he = _(() => me.value.find((e) => e._id === q.value) ?? Y.value), ve = _(() => he.value?.capabilities?.vision === !1 ? he.value.name : void 0), ye = _(() => J.busy.value && !J.approvals.value.length && !J.questions.value.length && !J.pausedElsewhere.value), be = _(() => ye.value && J.messages.value.at(-1)?.role !== "assistant"), xe = _(() => {
8016
8012
  let e = J.messages.value, t = [];
8017
8013
  return e.forEach((n, r) => {
8018
8014
  if (Jn(n)) return;
@@ -8057,31 +8053,31 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8057
8053
  for (let t of e.ids) if (J.usage.value[t]) return J.usage.value[t];
8058
8054
  }
8059
8055
  function ke() {
8060
- let e = V.value;
8056
+ let e = ae.value;
8061
8057
  e && (U.value = e.scrollHeight - e.scrollTop - e.clientHeight < 120);
8062
8058
  }
8063
8059
  function Ie() {
8064
8060
  U.value = !0, Le();
8065
8061
  }
8066
8062
  function Le() {
8067
- let e = V.value;
8063
+ let e = ae.value;
8068
8064
  e && (e.scrollTop = e.scrollHeight);
8069
8065
  }
8070
- function Re(e) {
8071
- ce.value?.toggle(e), re();
8072
- }
8073
8066
  function Ve(e) {
8074
- let t = k.value?.find((t) => t._id === e);
8075
- t && (W.value = [...t.disabledGroups], G.value = t.instructions, q.value = pe.value.some((e) => e._id === t.modelId) ? t.modelId : null);
8067
+ ce.value?.toggle(e), re();
8076
8068
  }
8077
8069
  function Ue(e) {
8078
- return pe.value.find((t) => t._id === e.modelId) ?? me.value;
8070
+ let t = k.value?.find((t) => t._id === e);
8071
+ t && (W.value = [...t.disabledGroups], G.value = t.instructions, q.value = me.value.some((e) => e._id === t.modelId) ? t.modelId : null);
8079
8072
  }
8080
8073
  function We(e) {
8074
+ return me.value.find((t) => t._id === e.modelId) ?? Y.value;
8075
+ }
8076
+ function Ge(e) {
8081
8077
  return e ? Je(e).filter((e) => e.severity !== "success") : [];
8082
8078
  }
8083
- async function Ge() {
8084
- let e = ue.value.trim();
8079
+ async function qe() {
8080
+ let e = fe.value.trim();
8085
8081
  if (!e) return;
8086
8082
  let t = await A.mutateAsync({
8087
8083
  name: e,
@@ -8089,9 +8085,9 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8089
8085
  disabledGroups: [...W.value],
8090
8086
  instructions: G.value.trim()
8091
8087
  });
8092
- K.value = t._id, le.value = !1, ue.value = "";
8088
+ K.value = t._id, ue.value = !1, fe.value = "";
8093
8089
  }
8094
- async function qe() {
8090
+ async function Ye() {
8095
8091
  K.value && await N.mutateAsync({
8096
8092
  profileId: K.value,
8097
8093
  patch: {
@@ -8101,26 +8097,26 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8101
8097
  }
8102
8098
  });
8103
8099
  }
8104
- async function Ye() {
8100
+ async function Xe() {
8105
8101
  K.value &&= (await F.mutateAsync(K.value), null);
8106
8102
  }
8107
- function Xe() {
8103
+ function Qe() {
8108
8104
  for (let e of [H.value, ce.value]) e?.visible && e.alignOverlay();
8109
8105
  }
8110
- function Qe(e) {
8106
+ function $e(e) {
8111
8107
  let t = J.messages.value, n = e + 1;
8112
8108
  for (; n < t.length && (t[n].role !== "user" || Jn(t[n]));) n++;
8113
8109
  return n;
8114
8110
  }
8115
- function $e(e) {
8111
+ function et(e) {
8116
8112
  let t = J.messages.value, n = e;
8117
8113
  for (; n > 0 && (t[n].role !== "user" || Jn(t[n]));) n--;
8118
8114
  return n;
8119
8115
  }
8120
- async function et(e) {
8116
+ async function tt(e) {
8121
8117
  U.value = !0, J.setMessages(J.messages.value.slice(0, e)), await J.reload();
8122
8118
  }
8123
- async function tt(e, t) {
8119
+ async function nt(e, t) {
8124
8120
  U.value = !0;
8125
8121
  let n = J.messages.value[e].parts.filter((e) => e.type === "image" || e.type === "audio" || e.type === "video");
8126
8122
  J.setMessages(J.messages.value.slice(0, e)), n.length ? await J.sendMessage({ content: [{
@@ -8128,8 +8124,8 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8128
8124
  content: t
8129
8125
  }, ...n] }) : await J.sendMessage(t);
8130
8126
  }
8131
- async function nt(e) {
8132
- let t = J.messages.value, n = [...t.slice(0, $e(e)), ...t.slice(Qe(e))];
8127
+ async function rt(e) {
8128
+ let t = J.messages.value, n = [...t.slice(0, et(e)), ...t.slice($e(e))];
8133
8129
  if (J.setMessages(n), !n.length) {
8134
8130
  f("emptied");
8135
8131
  return;
@@ -8144,9 +8140,9 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8144
8140
  });
8145
8141
  }
8146
8142
  }
8147
- async function rt(e) {
8143
+ async function it(e) {
8148
8144
  try {
8149
- let t = await ze(d.threadId, Qe(e) - 1);
8145
+ let t = await ze(d.threadId, $e(e) - 1);
8150
8146
  f("branched", t);
8151
8147
  } catch (e) {
8152
8148
  O.add({
@@ -8156,7 +8152,7 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8156
8152
  });
8157
8153
  }
8158
8154
  }
8159
- async function it(e) {
8155
+ async function at(e) {
8160
8156
  if (U.value = !0, !e.attachments.length) {
8161
8157
  await J.sendMessage(e.text);
8162
8158
  return;
@@ -8175,34 +8171,53 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8175
8171
  });
8176
8172
  await J.sendMessage({ content: t });
8177
8173
  }
8178
- function at(e) {
8174
+ function ot(e) {
8175
+ if (e.message.includes("status: 409")) {
8176
+ st();
8177
+ return;
8178
+ }
8179
+ O.add({
8180
+ severity: "error",
8181
+ detail: e.message,
8182
+ life: 5e3
8183
+ });
8184
+ }
8185
+ async function st() {
8186
+ let e = await Re(d.threadId).catch(() => void 0);
8187
+ e && (J.replaceFromStore(e.messages, e.attachments), O.add({
8188
+ severity: "info",
8189
+ detail: y("views.assistant.thread_reloaded"),
8190
+ life: 5e3
8191
+ }));
8192
+ }
8193
+ function ct(e) {
8179
8194
  return !J.busy.value && (J.replaceFromStore(e.messages, e.attachments), !0);
8180
8195
  }
8181
8196
  return b(() => J.messages.value, async () => {
8182
8197
  U.value && (await c(), Le());
8183
8198
  }, { deep: !0 }), b(() => J.approvals.value.length + J.questions.value.length, async (e, t) => {
8184
8199
  e <= t || (U.value = !0, await c(), Le());
8185
- }), b(Y, async () => {
8186
- await c(), se.value?.focus();
8187
- }), _e(window, "scroll", Xe, {
8200
+ }), b(pe, async () => {
8201
+ await c(), V.value?.focus();
8202
+ }), _e(window, "scroll", Qe, {
8188
8203
  capture: !0,
8189
8204
  passive: !0
8190
- }), ge(ie, () => {
8205
+ }), ge([ae, oe], () => {
8191
8206
  U.value && Le();
8192
8207
  }), ee(async () => {
8193
- await c(), Le(), se.value?.focus(), d.initialPrompt && await it({
8208
+ await c(), Le(), V.value?.focus(), d.initialPrompt && await at({
8194
8209
  text: d.initialPrompt,
8195
8210
  attachments: []
8196
8211
  });
8197
- }), a({ refreshFromStore: at }), (a, s) => {
8198
- let c = we, u = Qt, d = Qr, f = De, _ = Ke, y = Yr, b = Er, S = Nt, w = wt, O = ne, j = Fe, ee = je, re = Pe, B = Ne, fe = P, ge = Me, _e = ft, Ce = ae, Le = oe, ze = L, Be = Ae, He = de, Je = te;
8212
+ }), a({ refreshFromStore: ct }), (a, s) => {
8213
+ let c = we, u = Qt, d = Qr, f = De, _ = Ke, y = Yr, b = Er, S = Nt, w = wt, O = ne, j = Fe, ee = je, re = Pe, B = Ne, le = P, ge = Me, _e = ft, Ce = R, Le = se, Re = L, ze = Ae, Be = de, He = te;
8199
8214
  return i(), x("div", el, [
8200
8215
  T("div", {
8201
8216
  ref_key: "scrollRef",
8202
- ref: V,
8203
- class: l(["flex-1 min-h-0 overflow-y-auto px-4", { "flex items-center justify-center pb-[8vh]": g(Y) }]),
8217
+ ref: ae,
8218
+ class: l(["flex-1 min-h-0 overflow-y-auto px-4", { "flex items-center justify-center pb-[8vh]": g(pe) }]),
8204
8219
  onScrollPassive: ke
8205
- }, [g(Y) ? (i(), x("div", tl, [
8220
+ }, [g(pe) ? (i(), x("div", tl, [
8206
8221
  T("div", nl, [T("div", rl, [M(c, { class: "w-6 h-6 text-color" })]), T("h1", il, [D(o(g(Ee)) + " ", 1), T("span", al, o(a.$t("views.assistant.greeting_sub")), 1)])]),
8207
8222
  g(he)?.capabilities?.toolCalling === !1 ? (i(), p(u, {
8208
8223
  key: 0,
@@ -8212,12 +8227,12 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8212
8227
  }, null, 8, ["title", "text"])) : m("", !0),
8213
8228
  M(y, {
8214
8229
  ref_key: "composerRef",
8215
- ref: se,
8230
+ ref: V,
8216
8231
  busy: g(J).busy.value,
8217
8232
  "vision-missing": g(ve),
8218
8233
  compact: e.compact,
8219
8234
  placeholder: a.$t("views.assistant.composer_placeholder"),
8220
- onSend: it,
8235
+ onSend: at,
8221
8236
  onStop: s[2] ||= (e) => g(J).stop()
8222
8237
  }, {
8223
8238
  tools: v(() => [T("span", ol, [E((i(), p(f, {
@@ -8231,7 +8246,7 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8231
8246
  icon: v(() => [M(d, { class: "w-4 h-4" })]),
8232
8247
  _: 1
8233
8248
  }, 8, ["disabled"])), [[
8234
- Je,
8249
+ He,
8235
8250
  { value: a.$t("views.assistant.tools_title") },
8236
8251
  void 0,
8237
8252
  { top: !0 }
@@ -8240,12 +8255,12 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8240
8255
  severity: "secondary",
8241
8256
  text: "",
8242
8257
  rounded: "",
8243
- onClick: s[1] ||= (e) => Re(e)
8258
+ onClick: s[1] ||= (e) => Ve(e)
8244
8259
  }, {
8245
8260
  icon: v(() => [M(_, { class: "w-4 h-4" })]),
8246
8261
  _: 1
8247
8262
  })), [[
8248
- Je,
8263
+ He,
8249
8264
  { value: a.$t("views.assistant.memory_title") },
8250
8265
  void 0,
8251
8266
  { top: !0 }
@@ -8261,7 +8276,7 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8261
8276
  key: e,
8262
8277
  type: "button",
8263
8278
  class: "cui-assistant-chip cursor-pointer rounded-full px-3.5 py-1.5 text-[13px]",
8264
- onClick: (t) => it({
8279
+ onClick: (t) => at({
8265
8280
  text: e,
8266
8281
  attachments: []
8267
8282
  })
@@ -8269,7 +8284,7 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8269
8284
  ])) : (i(), x("div", {
8270
8285
  key: 1,
8271
8286
  ref_key: "contentRef",
8272
- ref: ie,
8287
+ ref: oe,
8273
8288
  class: "mx-auto flex w-full max-w-[720px] flex-col gap-7 pt-6 pb-4"
8274
8289
  }, [
8275
8290
  (i(!0), x(C, null, r(g(xe), (e) => (i(), p(b, {
@@ -8288,10 +8303,10 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8288
8303
  "model-id": g(he)?._id,
8289
8304
  usage: Oe(e),
8290
8305
  class: l({ "-mt-5": e.continuation }),
8291
- onRegenerate: (t) => et(e.index),
8292
- onEdit: (t) => tt(e.index, t),
8293
- onDelete: (t) => nt(e.index),
8294
- onBranch: (t) => rt(e.index),
8306
+ onRegenerate: (t) => tt(e.index),
8307
+ onEdit: (t) => nt(e.index, t),
8308
+ onDelete: (t) => rt(e.index),
8309
+ onBranch: (t) => it(e.index),
8295
8310
  onContinue: s[3] ||= (e) => g(J).continueAnswer()
8296
8311
  }, null, 8, [
8297
8312
  "message",
@@ -8362,7 +8377,7 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8362
8377
  g(J).pausedElsewhere.value ? (i(), x("div", fl, o(a.$t("views.assistant.paused_elsewhere")), 1)) : m("", !0),
8363
8378
  g(J).error.value ? (i(), x("div", pl, [T("strong", ml, o(g(J).error.value.message), 1)])) : m("", !0)
8364
8379
  ], 512))], 34),
8365
- g(Y) ? m("", !0) : (i(), x("div", hl, [g(U) ? m("", !0) : E((i(), p(f, {
8380
+ g(pe) ? m("", !0) : (i(), x("div", hl, [g(U) ? m("", !0) : E((i(), p(f, {
8366
8381
  key: 0,
8367
8382
  type: "button",
8368
8383
  rounded: "",
@@ -8373,7 +8388,7 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8373
8388
  icon: v(() => [M(O, { class: "w-4 h-4" })]),
8374
8389
  _: 1
8375
8390
  })), [[
8376
- Je,
8391
+ He,
8377
8392
  { value: a.$t("views.assistant.scroll_to_latest") },
8378
8393
  void 0,
8379
8394
  { top: !0 }
@@ -8395,7 +8410,7 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8395
8410
  icon: v(() => [M(ee, { class: "w-3.5 h-3.5" })]),
8396
8411
  _: 1
8397
8412
  }, 8, ["onClick"])), [[
8398
- Je,
8413
+ He,
8399
8414
  { value: a.$t("views.assistant.queue_cancel") },
8400
8415
  void 0,
8401
8416
  { top: !0 }
@@ -8403,12 +8418,12 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8403
8418
  ]))), 128))])) : m("", !0),
8404
8419
  M(y, {
8405
8420
  ref_key: "composerRef",
8406
- ref: se,
8421
+ ref: V,
8407
8422
  busy: g(J).busy.value,
8408
8423
  "vision-missing": g(ve),
8409
8424
  compact: e.compact,
8410
8425
  placeholder: a.$t("views.assistant.composer_placeholder"),
8411
- onSend: it,
8426
+ onSend: at,
8412
8427
  onStop: s[6] ||= (e) => g(J).stop()
8413
8428
  }, {
8414
8429
  tools: v(() => [T("span", yl, [E((i(), p(f, {
@@ -8422,7 +8437,7 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8422
8437
  icon: v(() => [M(d, { class: "w-4 h-4" })]),
8423
8438
  _: 1
8424
8439
  }, 8, ["disabled"])), [[
8425
- Je,
8440
+ He,
8426
8441
  { value: a.$t("views.assistant.tools_title") },
8427
8442
  void 0,
8428
8443
  { top: !0 }
@@ -8431,12 +8446,12 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8431
8446
  severity: "secondary",
8432
8447
  text: "",
8433
8448
  rounded: "",
8434
- onClick: s[5] ||= (e) => Re(e)
8449
+ onClick: s[5] ||= (e) => Ve(e)
8435
8450
  }, {
8436
8451
  icon: v(() => [M(_, { class: "w-4 h-4" })]),
8437
8452
  _: 1
8438
8453
  })), [[
8439
- Je,
8454
+ He,
8440
8455
  { value: a.$t("views.assistant.memory_title") },
8441
8456
  void 0,
8442
8457
  { top: !0 }
@@ -8450,7 +8465,7 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8450
8465
  ]),
8451
8466
  T("div", Cl, o(a.$t("views.assistant.disclaimer")), 1)
8452
8467
  ])])),
8453
- M(He, {
8468
+ M(Be, {
8454
8469
  ref_key: "toolsPopover",
8455
8470
  ref: H
8456
8471
  }, {
@@ -8485,17 +8500,17 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8485
8500
  "selected-items-label",
8486
8501
  "placeholder"
8487
8502
  ])]),
8488
- g(pe).length > 1 ? (i(), x("div", Nl, [T("label", Pl, o(a.$t("views.assistant.model_label")), 1), M(ge, {
8503
+ g(me).length > 1 ? (i(), x("div", Nl, [T("label", Pl, o(a.$t("views.assistant.model_label")), 1), M(ge, {
8489
8504
  modelValue: g(q),
8490
8505
  "onUpdate:modelValue": s[9] ||= (e) => h(q) ? q.value = e : null,
8491
8506
  "input-id": "assistantModel",
8492
- options: g(pe),
8507
+ options: g(me),
8493
8508
  "option-label": "name",
8494
8509
  "option-value": "_id",
8495
8510
  class: "min-w-0",
8496
- placeholder: g(me)?.name
8511
+ placeholder: g(Y)?.name
8497
8512
  }, {
8498
- option: v(({ option: e }) => [T("div", Fl, [T("span", Il, o(e.name), 1), T("span", Ll, [(i(!0), x(C, null, r(We(e), (e) => (i(), p(fe, {
8513
+ option: v(({ option: e }) => [T("div", Fl, [T("span", Il, o(e.name), 1), T("span", Ll, [(i(!0), x(C, null, r(Ge(e), (e) => (i(), p(le, {
8499
8514
  key: e.key,
8500
8515
  severity: e.severity,
8501
8516
  value: a.$t(`views.settings.assistant_capability_${e.key}`),
@@ -8509,11 +8524,11 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8509
8524
  ])])) : m("", !0),
8510
8525
  T("div", Rl, [
8511
8526
  T("label", zl, o(a.$t("views.assistant.profiles_label")), 1),
8512
- M(ze, null, {
8527
+ M(Re, null, {
8513
8528
  default: v(() => [
8514
8529
  M(ge, {
8515
8530
  modelValue: g(K),
8516
- "onUpdate:modelValue": [s[10] ||= (e) => h(K) ? K.value = e : null, Ve],
8531
+ "onUpdate:modelValue": [s[10] ||= (e) => h(K) ? K.value = e : null, Ue],
8517
8532
  "input-id": "assistantProfile",
8518
8533
  options: g(k) ?? [],
8519
8534
  "option-label": "name",
@@ -8522,7 +8537,7 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8522
8537
  class: "min-w-0",
8523
8538
  placeholder: a.$t("views.assistant.profile_none")
8524
8539
  }, {
8525
- option: v(({ option: e }) => [T("div", Bl, [T("span", Vl, o(e.name), 1), T("span", Hl, [(i(!0), x(C, null, r(We(Ue(e)), (e) => (i(), p(fe, {
8540
+ option: v(({ option: e }) => [T("div", Bl, [T("span", Vl, o(e.name), 1), T("span", Hl, [(i(!0), x(C, null, r(Ge(We(e)), (e) => (i(), p(le, {
8526
8541
  key: e.key,
8527
8542
  severity: e.severity,
8528
8543
  value: a.$t(`views.settings.assistant_capability_${e.key}`),
@@ -8541,12 +8556,12 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8541
8556
  text: "",
8542
8557
  class: "h-full rounded-none",
8543
8558
  loading: g(A).isPending.value || g(N).isPending.value,
8544
- onClick: s[11] ||= (e) => g(K) ? qe() : le.value = !0
8559
+ onClick: s[11] ||= (e) => g(K) ? Ye() : ue.value = !0
8545
8560
  }, {
8546
8561
  icon: v(() => [M(_e, { class: "w-4 h-4" })]),
8547
8562
  _: 1
8548
8563
  }, 8, ["loading"])), [[
8549
- Je,
8564
+ He,
8550
8565
  { value: g(K) ? a.$t("views.assistant.profile_update") : a.$t("views.assistant.profile_save") },
8551
8566
  void 0,
8552
8567
  { top: !0 }
@@ -8563,12 +8578,12 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8563
8578
  text: "",
8564
8579
  class: "h-full rounded-none",
8565
8580
  loading: g(F).isPending.value,
8566
- onClick: Ye
8581
+ onClick: Xe
8567
8582
  }, {
8568
8583
  icon: v(() => [M(Le, { class: "w-4 h-4" })]),
8569
8584
  _: 1
8570
8585
  }, 8, ["loading"])), [[
8571
- Je,
8586
+ He,
8572
8587
  { value: a.$t("views.assistant.profile_delete") },
8573
8588
  void 0,
8574
8589
  { top: !0 }
@@ -8578,13 +8593,13 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8578
8593
  ]),
8579
8594
  _: 1
8580
8595
  }),
8581
- g(le) ? (i(), x("div", Ul, [M(Be, {
8582
- modelValue: g(ue),
8583
- "onUpdate:modelValue": s[12] ||= (e) => h(ue) ? ue.value = e : null,
8596
+ g(ue) ? (i(), x("div", Ul, [M(ze, {
8597
+ modelValue: g(fe),
8598
+ "onUpdate:modelValue": s[12] ||= (e) => h(fe) ? fe.value = e : null,
8584
8599
  class: "flex-1 min-w-0",
8585
8600
  size: "small",
8586
8601
  placeholder: a.$t("views.assistant.profile_name_placeholder"),
8587
- onKeydown: [n(t(Ge, ["prevent"]), ["enter"]), s[13] ||= n((e) => le.value = !1, ["esc"])]
8602
+ onKeydown: [n(t(qe, ["prevent"]), ["enter"]), s[13] ||= n((e) => ue.value = !1, ["esc"])]
8588
8603
  }, null, 8, [
8589
8604
  "modelValue",
8590
8605
  "placeholder",
@@ -8593,14 +8608,14 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8593
8608
  type: "button",
8594
8609
  size: "small",
8595
8610
  label: a.$t("components.form.button.save"),
8596
- disabled: !g(ue).trim(),
8597
- onClick: Ge
8611
+ disabled: !g(fe).trim(),
8612
+ onClick: qe
8598
8613
  }, null, 8, ["label", "disabled"])])) : m("", !0)
8599
8614
  ])
8600
8615
  ])]),
8601
8616
  _: 1
8602
8617
  }, 512),
8603
- M(He, {
8618
+ M(Be, {
8604
8619
  ref_key: "memoryPopover",
8605
8620
  ref: ce
8606
8621
  }, {
@@ -8615,13 +8630,13 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8615
8630
  text: "",
8616
8631
  rounded: "",
8617
8632
  class: "cui-icon-md shrink-0 text-muted",
8618
- loading: g(R).isPending.value,
8619
- onClick: (t) => g(R).mutate(e._id)
8633
+ loading: g(z).isPending.value,
8634
+ onClick: (t) => g(z).mutate(e._id)
8620
8635
  }, {
8621
8636
  icon: v(() => [M(ee, { class: "w-3 h-3" })]),
8622
8637
  _: 1
8623
8638
  }, 8, ["loading", "onClick"])), [[
8624
- Je,
8639
+ He,
8625
8640
  { value: a.$t("views.assistant.memory_forget") },
8626
8641
  void 0,
8627
8642
  { top: !0 }
@@ -8634,8 +8649,8 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8634
8649
  outlined: "",
8635
8650
  class: "w-full",
8636
8651
  label: a.$t("views.assistant.memory_forget_all"),
8637
- loading: g(z).isPending.value,
8638
- onClick: s[14] ||= (e) => g(z).mutate()
8652
+ loading: g(ie).isPending.value,
8653
+ onClick: s[14] ||= (e) => g(ie).mutate()
8639
8654
  }, null, 8, ["label", "loading"])) : m("", !0)
8640
8655
  ])]),
8641
8656
  _: 1
@@ -8643,7 +8658,7 @@ var el = { class: "relative flex h-full min-h-0 flex-col" }, tl = {
8643
8658
  ]);
8644
8659
  };
8645
8660
  }
8646
- }), [["__scopeId", "data-v-98a9b392"]]), Ql = {
8661
+ }), [["__scopeId", "data-v-e50ce56d"]]), Ql = {
8647
8662
  viewBox: "0 0 24 24",
8648
8663
  width: "1.2em",
8649
8664
  height: "1.2em"
@@ -8693,7 +8708,7 @@ var eu = d({
8693
8708
  "close"
8694
8709
  ],
8695
8710
  setup(e, { emit: n }) {
8696
- let a = e, s = n, { topbarOffset: c, bottombarHeight: u } = B(), d = w("sidebarRef"), f = j(""), y = _(() => a.isOpen ? 288 : 0), b = _(() => {
8711
+ let a = e, s = n, { topbarOffset: c, bottombarHeight: u } = fe(), d = w("sidebarRef"), f = j(""), y = _(() => a.isOpen ? 288 : 0), b = _(() => {
8697
8712
  let e = f.value.trim().toLowerCase(), t = a.threads.filter((t) => !e || t.title.toLowerCase().includes(e)).sort((e, t) => t.updatedAt - e.updatedAt), n = [
8698
8713
  "today",
8699
8714
  "yesterday",
@@ -8717,7 +8732,7 @@ var eu = d({
8717
8732
  return ve(d, (e) => {
8718
8733
  a.isOpen && a.isOverlay && (e.target.closest("#assistant-sidebar-toggle") || s("close"));
8719
8734
  }), (n, a) => {
8720
- let _ = eu, w = De, O = qe, k = Ue, A = ke, j = Ae, ee = Oe, N = me, ne = oe, P = te;
8735
+ let _ = eu, w = De, O = qe, k = Ue, A = ke, j = Ae, ee = Oe, N = U, ne = se, P = te;
8721
8736
  return i(), x("nav", {
8722
8737
  ref_key: "sidebarRef",
8723
8738
  ref: d,
@@ -8823,33 +8838,33 @@ var eu = d({
8823
8838
  }, yu = { class: "cui-assistant-hero-icon flex h-16 w-16 items-center justify-center rounded-full" }, bu = { class: "max-w-md" }, xu = { class: "text-lg font-semibold text-color" }, Su = { class: "mt-1 text-sm text-muted" }, Cu = /*#__PURE__*/ Y(/* @__PURE__ */ A({
8824
8839
  __name: "Assistant",
8825
8840
  setup(e) {
8826
- let t = new He(), n = ie(), r = he(), { t: a } = Ce(), { smBreakpoint: s, mdBreakpoint: u, xlBreakpoint: d } = re(), { openTextDialog: f } = ue(), h = K("/notifications"), C = U(), { user: D } = Se(C), { data: O, isLoading: k } = t.getAssistantInfoQuery(), { data: A, isLoading: N } = t.listThreadsQuery(), ne = t.deleteThreadMutation(), P = t.deleteAllThreadsMutation(), I = w("conversationRef"), L = j(Y()), z = j([]), B = j({}), V = j(typeof n.query.prompt == "string" ? n.query.prompt : void 0), ae = j(!1), oe = j(d.value ? "opened" : "closed"), se = j(!1), H = _(() => O.value?.status.state ?? "disabled"), ce = _(() => D.value?.role === "admin" || D.value?.role === "master"), W = _(() => (O.value?.tools ?? []).filter((e) => e.approval)), G = _(() => oe.value === "opened"), le = _(() => A.value?.find((e) => e.id === L.value)?.title ?? ""), J = _(() => u.value), de = _(() => u.value || H.value !== "ready" ? "0px" : G.value ? "288px" : "0px"), fe = _(() => [
8841
+ let t = new He(), n = he(), r = re(), { t: a } = Ce(), { smBreakpoint: s, mdBreakpoint: u, xlBreakpoint: d } = ae(), { openTextDialog: f } = ue(), h = me("/notifications"), C = W(), { user: D } = Se(C), { data: O, isLoading: k } = t.getAssistantInfoQuery(), { data: A, isLoading: N } = t.listThreadsQuery(), ne = t.deleteThreadMutation(), P = t.deleteAllThreadsMutation(), I = w("conversationRef"), L = j(pe()), R = j([]), z = j({}), B = j(typeof n.query.prompt == "string" ? n.query.prompt : void 0), oe = j(!1), V = j(d.value ? "opened" : "closed"), se = j(!1), H = _(() => O.value?.status.state ?? "disabled"), ce = _(() => D.value?.role === "admin" || D.value?.role === "master"), le = _(() => (O.value?.tools ?? []).filter((e) => e.approval)), G = _(() => V.value === "opened"), K = _(() => A.value?.find((e) => e.id === L.value)?.title ?? ""), de = _(() => u.value), fe = _(() => u.value || H.value !== "ready" ? "0px" : G.value ? "288px" : "0px"), q = _(() => [
8827
8842
  a("views.assistant.suggestion_today"),
8828
8843
  a("views.assistant.suggestion_week"),
8829
8844
  a("views.assistant.suggestion_offline"),
8830
8845
  a("views.assistant.suggestion_sensors"),
8831
8846
  a("views.assistant.suggestion_tools")
8832
8847
  ]);
8833
- function Y() {
8834
- return q();
8835
- }
8836
8848
  function pe() {
8837
- oe.value = oe.value === "opened" ? "closed" : "opened";
8849
+ return J();
8850
+ }
8851
+ function Y() {
8852
+ V.value = V.value === "opened" ? "closed" : "opened";
8838
8853
  }
8839
8854
  function ge() {
8840
- oe.value = "closed";
8855
+ V.value = "closed";
8841
8856
  }
8842
8857
  function _e() {
8843
- z.value = [], B.value = {}, V.value = void 0, L.value = Y(), J.value && ge();
8858
+ R.value = [], z.value = {}, B.value = void 0, L.value = pe(), de.value && ge();
8844
8859
  }
8845
8860
  async function ve(e) {
8846
- if (J.value && ge(), e !== L.value) {
8847
- ae.value = !0;
8861
+ if (de.value && ge(), e !== L.value) {
8862
+ oe.value = !0;
8848
8863
  try {
8849
8864
  let t = await Re(e);
8850
- z.value = t.messages, B.value = t.attachments, V.value = void 0, L.value = e;
8865
+ R.value = t.messages, z.value = t.attachments, B.value = void 0, L.value = e;
8851
8866
  } finally {
8852
- ae.value = !1;
8867
+ oe.value = !1;
8853
8868
  }
8854
8869
  }
8855
8870
  }
@@ -8857,7 +8872,7 @@ var eu = d({
8857
8872
  await ne.mutateAsync(e).catch(() => void 0), e === L.value && _e();
8858
8873
  }
8859
8874
  async function be(e) {
8860
- z.value = e.messages, B.value = e.attachments, V.value = void 0, L.value = e._id, await t.queryClient.refetchQueries({
8875
+ R.value = e.messages, z.value = e.attachments, B.value = void 0, L.value = e._id, await t.queryClient.refetchQueries({
8861
8876
  queryKey: ["assistant", "threads"],
8862
8877
  exact: !0
8863
8878
  });
@@ -8909,9 +8924,9 @@ var eu = d({
8909
8924
  n.query.prompt !== void 0 && r.replace({ query: {
8910
8925
  ...n.query,
8911
8926
  prompt: void 0
8912
- } }), e && !V.value && await Te(e), await c(), se.value = !0;
8927
+ } }), e && !B.value && await Te(e), await c(), se.value = !0;
8913
8928
  }), (e, t) => {
8914
- let n = R, r = rt, a = De, c = F, u = qe, d = uu, f = eu, h = me, _ = we, b = Zl, C = te;
8929
+ let n = ie, r = rt, a = De, c = F, u = qe, d = uu, f = eu, h = U, _ = we, b = Zl, C = te;
8915
8930
  return i(), x("div", null, [
8916
8931
  M(n, { position: "center" }, {
8917
8932
  default: v(() => [T("span", du, o(e.$t("views.assistant.title")), 1)]),
@@ -8932,7 +8947,7 @@ var eu = d({
8932
8947
  class: "cui-button p-2 text-color",
8933
8948
  text: "",
8934
8949
  rounded: "",
8935
- onClick: pe
8950
+ onClick: Y
8936
8951
  }, {
8937
8952
  icon: v(() => [M(c, {
8938
8953
  width: "100%",
@@ -8965,7 +8980,7 @@ var eu = d({
8965
8980
  "active-id": g(L),
8966
8981
  loading: g(N),
8967
8982
  "is-open": g(G),
8968
- "is-overlay": g(J),
8983
+ "is-overlay": g(de),
8969
8984
  onSelect: ve,
8970
8985
  onCreate: _e,
8971
8986
  onDelete: ye,
@@ -8981,7 +8996,7 @@ var eu = d({
8981
8996
  (i(), p(y, {
8982
8997
  to: "#container",
8983
8998
  defer: ""
8984
- }, [g(G) && g(J) ? (i(), x("div", {
8999
+ }, [g(G) && g(de) ? (i(), x("div", {
8985
9000
  key: 0,
8986
9001
  class: "fixed top-0 left-0 right-0 bottom-0 w-full h-full bg-black/50 z-1",
8987
9002
  onClick: ge
@@ -8989,7 +9004,7 @@ var eu = d({
8989
9004
  T("main", {
8990
9005
  class: "relative w-full h-full",
8991
9006
  style: S({
8992
- paddingLeft: g(de),
9007
+ paddingLeft: g(fe),
8993
9008
  transition: g(se) ? "padding-left 200ms" : void 0
8994
9009
  })
8995
9010
  }, [T("div", fu, [
@@ -9002,7 +9017,7 @@ var eu = d({
9002
9017
  class: "mr-2 cui-icon-lg relative z-2",
9003
9018
  text: "",
9004
9019
  rounded: "",
9005
- onClick: pe
9020
+ onClick: Y
9006
9021
  }, {
9007
9022
  icon: v(() => [M(f, {
9008
9023
  width: "100%",
@@ -9016,7 +9031,7 @@ var eu = d({
9016
9031
  { bottom: !0 }
9017
9032
  ]]) : m("", !0),
9018
9033
  T("h1", mu, o(e.$t("views.assistant.title")), 1),
9019
- g(le) ? (i(), x("span", hu, o(g(le)), 1)) : m("", !0),
9034
+ g(K) ? (i(), x("span", hu, o(g(K)), 1)) : m("", !0),
9020
9035
  t[4] ||= T("div", { class: "gradient-blur rotate-180 !h-[70px]" }, [
9021
9036
  T("div"),
9022
9037
  T("div"),
@@ -9047,7 +9062,7 @@ var eu = d({
9047
9062
  T("div", { class: l(["h-full w-full flex flex-col", {
9048
9063
  "pt-2": g(s),
9049
9064
  "pt-[calc(40px+2rem)]": !g(s)
9050
- }]) }, [g(k) || g(ae) ? (i(), x("div", _u, [M(h, {
9065
+ }]) }, [g(k) || g(oe) ? (i(), x("div", _u, [M(h, {
9051
9066
  class: "w-[30px] h-[30px] m-0",
9052
9067
  "stroke-width": "5"
9053
9068
  })])) : g(H) === "ready" ? (i(), p(b, {
@@ -9055,11 +9070,11 @@ var eu = d({
9055
9070
  ref: I,
9056
9071
  key: g(L),
9057
9072
  "thread-id": g(L),
9058
- "initial-messages": g(z),
9059
- "initial-attachments": g(B),
9060
- "initial-prompt": g(V),
9061
- suggestions: g(fe),
9062
- "approval-tools": g(W),
9073
+ "initial-messages": g(R),
9074
+ "initial-attachments": g(z),
9075
+ "initial-prompt": g(B),
9076
+ suggestions: g(q),
9077
+ "approval-tools": g(le),
9063
9078
  tools: g(O)?.tools ?? [],
9064
9079
  class: "flex-1 min-h-0",
9065
9080
  onFinished: Ee,