@camera.ui/server 2.2.0 → 2.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (413) hide show
  1. package/dist/interface/assets/{404-0R6IdIDK.js → 404-bSMSPWcp.js} +1 -1
  2. package/dist/interface/assets/{About-DMpFqnl5.js → About-DqMxC4AO.js} +1 -1
  3. package/dist/interface/assets/Assistant-CIHF-bHs.js +1 -0
  4. package/dist/interface/assets/Automation-CUDypjZw.js +3 -0
  5. package/dist/interface/assets/AutomationImport-Cr14tF-Q.js +2 -0
  6. package/dist/interface/assets/AutomationStore-BnZgfI9i.js +2 -0
  7. package/dist/interface/assets/AutomationStoreDetail-btcIglkw.js +2 -0
  8. package/dist/interface/assets/Automations-CKpwXTyc.js +2 -0
  9. package/dist/interface/assets/Camera-BEP_HAQm.js +2 -0
  10. package/dist/interface/assets/{CameraConsole-CUDLuW5x.js → CameraConsole-BK8TqHgA.js} +1 -1
  11. package/dist/interface/assets/{Cameras-CTF5buln.js → Cameras-DJreIgtW.js} +2 -2
  12. package/dist/interface/assets/Camview-D4VNMv_l.js +1 -0
  13. package/dist/interface/assets/{CertificateUpload-_VQx5fjA.js → CertificateUpload-PfgVZa4M.js} +1 -1
  14. package/dist/interface/assets/{Config-B0SEAh17.js → Config-DapgreIX.js} +1 -1
  15. package/dist/interface/assets/{ConfigActionAssistant-Ug-C-Cx8.js → ConfigActionAssistant-v0w4E-mE.js} +1 -1
  16. package/dist/interface/assets/{ConfigActionCameraControl-D0BTPk1r.js → ConfigActionCameraControl-fdrsnRyE.js} +1 -1
  17. package/dist/interface/assets/{ConfigActionDelay-C6u-CHFE.js → ConfigActionDelay-C_dq3ozL.js} +1 -1
  18. package/dist/interface/assets/{ConfigActionHttp-CxbJVkf2.js → ConfigActionHttp-1hDI-38w.js} +1 -1
  19. package/dist/interface/assets/{ConfigActionImageInput-BpDXjbnf.js → ConfigActionImageInput-DCF8qeg9.js} +1 -1
  20. package/dist/interface/assets/{ConfigActionMqtt-m_fOoTcf.js → ConfigActionMqtt-XpVD7lFg.js} +1 -1
  21. package/dist/interface/assets/{ConfigActionNotification-Dwpm67Cr.js → ConfigActionNotification-CB1ymMRz.js} +1 -1
  22. package/dist/interface/assets/{ConfigActionNotificationControl-CxlpMc7I.js → ConfigActionNotificationControl-BfDtLS5h.js} +1 -1
  23. package/dist/interface/assets/{ConfigActionOutput-WVe74xXz.js → ConfigActionOutput-CMfXI1b3.js} +1 -1
  24. package/dist/interface/assets/{ConfigActionPlugin-C1R8SkM3.js → ConfigActionPlugin-CZo6SudQ.js} +1 -1
  25. package/dist/interface/assets/{ConfigActionSensor-CN-KmQKx.js → ConfigActionSensor-CetFuASa.js} +1 -1
  26. package/dist/interface/assets/{ConfigActionSnapshot-uIsJGPwz.js → ConfigActionSnapshot-BpPhHpIk.js} +1 -1
  27. package/dist/interface/assets/{ConfigActionVariable-Due14Kwt.js → ConfigActionVariable-SJomTISn.js} +1 -1
  28. package/dist/interface/assets/{ConfigConditionIfElse-mIXw954j.js → ConfigConditionIfElse-ClTxvZJz.js} +1 -1
  29. package/dist/interface/assets/{ConfigConditionSensorState-BvS-fd36.js → ConfigConditionSensorState-FbLmmHyP.js} +1 -1
  30. package/dist/interface/assets/{ConfigConditionSwitch-CYRUg-Uo.js → ConfigConditionSwitch--qAHkOdE.js} +1 -1
  31. package/dist/interface/assets/{ConfigConditionTime-WkevpYaO.js → ConfigConditionTime-BqjDUPVR.js} +1 -1
  32. package/dist/interface/assets/{ConfigSensorValueInput-BDz5olLY.js → ConfigSensorValueInput-B1dLcmSO.js} +1 -1
  33. package/dist/interface/assets/{ConfigTriggerDetection-BKIh59B7.js → ConfigTriggerDetection-CMZyEWui.js} +1 -1
  34. package/dist/interface/assets/{ConfigTriggerGeofence-kWjR7mlR.js → ConfigTriggerGeofence-B9JPVvhP.js} +1 -1
  35. package/dist/interface/assets/{ConfigTriggerManual-D7w6C58j.js → ConfigTriggerManual-CSdF69jM.js} +1 -1
  36. package/dist/interface/assets/{ConfigTriggerMqtt-DjDopQHT.js → ConfigTriggerMqtt-BzN7_xVm.js} +1 -1
  37. package/dist/interface/assets/{ConfigTriggerSchedule-1UcaRD5S.js → ConfigTriggerSchedule-BK_Ogvxn.js} +1 -1
  38. package/dist/interface/assets/{ConfigTriggerSensor-DbP-61eW.js → ConfigTriggerSensor-BaQklhHP.js} +1 -1
  39. package/dist/interface/assets/{ConfigTriggerSystem-CsSWt2u_.js → ConfigTriggerSystem-DIX95l0X.js} +1 -1
  40. package/dist/interface/assets/{ConfigTriggerWebhook-TU4l4Tgx.js → ConfigTriggerWebhook-_EOJAgNk.js} +1 -1
  41. package/dist/interface/assets/Console-Y1IutnkC.js +1 -0
  42. package/dist/interface/assets/CuiAssistantConversation-C4RYcMAM.js +5 -0
  43. package/dist/interface/assets/{CuiAssistantConversation-CImeuG1m.css → CuiAssistantConversation-CWCLLi3b.css} +1 -1
  44. package/dist/interface/assets/{CuiAutomationRunsDialog-Bez4F56I.js → CuiAutomationRunsDialog-DpskKeEe.js} +1 -1
  45. package/dist/interface/assets/{CuiBottomSheet-Daxo4Mlc.js → CuiBottomSheet-Bg_AIuGY.js} +1 -1
  46. package/dist/interface/assets/CuiBottomSheet-S8bM23jj.js +1 -0
  47. package/dist/interface/assets/{CuiCameraPipCard-Z2PrIFdi.js → CuiCameraPipCard-HTjvF3yG.js} +1 -1
  48. package/dist/interface/assets/CuiCameraRecordings-Cx6FYz3Y.js +1 -0
  49. package/dist/interface/assets/CuiCameraShares-J728G9wF.js +1 -0
  50. package/dist/interface/assets/CuiCameraTable-CKur0qLE.js +1 -0
  51. package/dist/interface/assets/{CuiCameraTable-DDjhotD1.js → CuiCameraTable-CyAYYPvd.js} +2 -2
  52. package/dist/interface/assets/{CuiChartTable-CBVtsiJG.js → CuiChartTable-BklHSjRr.js} +1 -1
  53. package/dist/interface/assets/{CuiConsole-Cb22vO0N.js → CuiConsole-4rDfDj0a.js} +1 -1
  54. package/dist/interface/assets/{CuiDataTable-DCCXx-KT.js → CuiDataTable-BLyeEEAp.js} +1 -1
  55. package/dist/interface/assets/CuiLightControl-C1YSJSWd.js +1 -0
  56. package/dist/interface/assets/{CuiList-Dfklll0h.js → CuiList-BafzuN0H.js} +1 -1
  57. package/dist/interface/assets/CuiPluginCard-enc00hbc.js +2 -0
  58. package/dist/interface/assets/CuiPluginCategoryChip-B4w2DH_j.js +1 -0
  59. package/dist/interface/assets/CuiPluginOAuthButton-C_jxPrPQ.js +2 -0
  60. package/dist/interface/assets/{CuiPluginTrustBadge-DU-SN0LX.js → CuiPluginTrustBadge-pLnF2Ggn.js} +1 -1
  61. package/dist/interface/assets/{CuiQRCode-CE5p3ucc.js → CuiQRCode-8Q6cFdfs.js} +1 -1
  62. package/dist/interface/assets/CuiSchema-CRHUMY0B.js +1 -0
  63. package/dist/interface/assets/{CuiTopNavbarItem-DloEl6H2.js → CuiTopNavbarItem-BZXzuV42.js} +1 -1
  64. package/dist/interface/assets/Faces-fMMd6-PY.js +1 -0
  65. package/dist/interface/assets/FirstSteps-BNcAFp2c.js +1 -0
  66. package/dist/interface/assets/Floorplan-BQbOWCCf.js +1 -0
  67. package/dist/interface/assets/{Instances-BCs2bvFK.js → Instances-DUWWy-El.js} +1 -1
  68. package/dist/interface/assets/{Logs-Bc8Vw1LC.js → Logs-7CxXc2Re.js} +2 -2
  69. package/dist/interface/assets/{Menu-CxyTrCpO.js → Menu-B3VA0LMx.js} +1 -1
  70. package/dist/interface/assets/Metrics-C0q2BdKH.js +9 -0
  71. package/dist/interface/assets/OAuthDeviceFlow-ZiCl4400.js +1 -0
  72. package/dist/interface/assets/Plugin-C0CPlt4f.js +1 -0
  73. package/dist/interface/assets/{PluginConsole-C-OYBgoX.js → PluginConsole-BOaU7Ey0.js} +1 -1
  74. package/dist/interface/assets/PluginDetail-DDh6PfMd.js +2 -0
  75. package/dist/interface/assets/{PluginSchema-DWvIHRcH.js → PluginSchema-BWlRMPo6.js} +1 -1
  76. package/dist/interface/assets/PluginSearch-BR_ei8Pa.js +1 -0
  77. package/dist/interface/assets/PluginSearch-C2AXz2KG.js +2 -0
  78. package/dist/interface/assets/{PluginUpdateProgress-Co2Q3sTn.js → PluginUpdateProgress-DFg14vV8.js} +1 -1
  79. package/dist/interface/assets/Plugins-CN1YIfNk.js +1 -0
  80. package/dist/interface/assets/RecentEventsFilter-B6Ph-pxb.js +1 -0
  81. package/dist/interface/assets/Recordings-jhxwdrQY.js +1 -0
  82. package/dist/interface/assets/{SensorEdit-B_23v49k.js → SensorEdit-DEenjJ8S.js} +1 -1
  83. package/dist/interface/assets/{SensorHistory-CoMfC6Fx.js → SensorHistory-CU1Uwf5f.js} +1 -1
  84. package/dist/interface/assets/Sensors-LnVLPDWf.js +2 -0
  85. package/dist/interface/assets/{Settings-BH-IbtGi.js → Settings-uk3RVXCS.js} +1 -1
  86. package/dist/interface/assets/SettingsAccount-CJ_fPrT-.js +1 -0
  87. package/dist/interface/assets/SettingsAccount-CYn81m0Z.js +1 -0
  88. package/dist/interface/assets/{SettingsAppearance-JbKDfSiu.js → SettingsAppearance-CRYcal9v.js} +1 -1
  89. package/dist/interface/assets/SettingsAppearance-DFe8JsT5.js +1 -0
  90. package/dist/interface/assets/SettingsAssistant-CDyI6fee.css +1 -0
  91. package/dist/interface/assets/SettingsAssistant-Dm4oINqB.js +1 -0
  92. package/dist/interface/assets/{SettingsBackup-DNDyM2p5.js → SettingsBackup-CSvGqsru.js} +1 -1
  93. package/dist/interface/assets/{SettingsList-C9cI0Flx.js → SettingsList-BQR6jnP-.js} +1 -1
  94. package/dist/interface/assets/SettingsMqtt-ByQYIRkm.js +1 -0
  95. package/dist/interface/assets/SettingsNotifications-8sSoP-8S.js +1 -0
  96. package/dist/interface/assets/{SettingsPermissions-B6vNyFvJ.js → SettingsPermissions-D7kYdjfw.js} +1 -1
  97. package/dist/interface/assets/SettingsRecordings-DjLYqbKo.js +1 -0
  98. package/dist/interface/assets/SettingsRemote-7iDccnV9.js +2 -0
  99. package/dist/interface/assets/SettingsSystem-BxQNJc8n.js +2 -0
  100. package/dist/interface/assets/SettingsUsers-yYobKcPv.js +1 -0
  101. package/dist/interface/assets/{Terminal-DlJD6leH.js → Terminal-Bsnvs8gs.js} +2 -2
  102. package/dist/interface/assets/Training-BUhrkDzA.css +1 -0
  103. package/dist/interface/assets/Training-SOWa6Ay1.js +1 -0
  104. package/dist/interface/assets/{Updates-BV7OHWjC.js → Updates-Dsn_fJ-N.js} +1 -1
  105. package/dist/interface/assets/{VariableInput-Ds5NaShw.js → VariableInput-DCWiIgaZ.js} +1 -1
  106. package/dist/interface/assets/{VariableSuggestions-B0Y5QsCw.js → VariableSuggestions-BhIlXJ6r.js} +1 -1
  107. package/dist/interface/assets/{VersionsHandler-DYZDc3SX.js → VersionsHandler-DM_Jf4EA.js} +1 -1
  108. package/dist/interface/assets/VirtualSensorCreate-Q4kd0dfE.js +1 -0
  109. package/dist/interface/assets/Workers-D7mXpfvC.js +2 -0
  110. package/dist/interface/assets/api-BKiE8A_V.css +2 -0
  111. package/dist/interface/assets/api-Cl7JjXOQ.js +4 -0
  112. package/dist/interface/assets/{api-BA88nyEF.js → api-LjAY3aa3.js} +1 -1
  113. package/dist/interface/assets/{assistant-Ba5Ac9Nh.js → assistant-BFc44oq-.js} +1 -1
  114. package/dist/interface/assets/{auth-YWWYJni-.js → auth-CUPvHARA.js} +1 -1
  115. package/dist/interface/assets/automations-Dw4L5sT0.js +1 -0
  116. package/dist/interface/assets/cameraSources-CzENFiZx.js +1 -0
  117. package/dist/interface/assets/cloudHandoff-CGMLCwMb.js +1 -0
  118. package/dist/interface/assets/{config-BfTF54hH.js → config-EBcNBZkb.js} +1 -1
  119. package/dist/interface/assets/dots-vertical-C4DlXZyp.js +1 -0
  120. package/dist/interface/assets/eventIcons-BPQ-zSnz.js +1 -0
  121. package/dist/interface/assets/{flowSchema-ZMBzlKJI.js → flowSchema-CdzBw69a.js} +1 -1
  122. package/dist/interface/assets/{intercomService-DQ4LZJfW.js → intercomService-DIfdcsXc.js} +1 -1
  123. package/dist/interface/assets/main-W8WcKa2g.js +3 -0
  124. package/dist/interface/assets/{main-CbPa_jky.css → main-XHFrBKKz.css} +1 -1
  125. package/dist/interface/assets/mqtt-D_wH18eJ.js +1 -0
  126. package/dist/interface/assets/{notifications-D2QwzHwL.js → notifications-wLsrlI9N.js} +1 -1
  127. package/dist/interface/assets/plugins-DwmkpOPJ.js +1 -0
  128. package/dist/interface/assets/rooms-D_7As09p.js +1 -0
  129. package/dist/interface/assets/sensorIcons-BY853M0u.js +1 -0
  130. package/dist/interface/assets/{sensorSlots-CUWphRrL.js → sensorSlots-DnRJdaTG.js} +1 -1
  131. package/dist/interface/assets/{sensors-KDhClJkT.js → sensors-B9etOqBI.js} +1 -1
  132. package/dist/interface/assets/{server-BZUgxc3a.js → server-BTKgKMye.js} +1 -1
  133. package/dist/interface/assets/{theme-BPfSpHbW.js → theme-CbtGvohq.js} +1 -1
  134. package/dist/interface/assets/types-BEy4uGJ0.js +1 -0
  135. package/dist/interface/assets/{types-BxQYBZ2c.js → types-CEhVWRYD.js} +1 -1
  136. package/dist/interface/assets/types-COlvVtDn.js +1 -0
  137. package/dist/interface/assets/ungrouped-BJyBDv5e.js +1 -0
  138. package/dist/interface/assets/{updates-DBcWStos.js → updates-BQ6Ugcup.js} +1 -1
  139. package/dist/interface/assets/{useAppVersion-CnkrpDgi.js → useAppVersion-BO-3jbup.js} +1 -1
  140. package/dist/interface/assets/{useAssistantActions-BeXqj2-6.js → useAssistantActions-CRVHZw4o.js} +1 -1
  141. package/dist/interface/assets/{useBackupRestore-DMO3YoI3.js → useBackupRestore-D305pYHT.js} +1 -1
  142. package/dist/interface/assets/{useCameraOptions-Dka0PweD.js → useCameraOptions-C7tgceJ1.js} +1 -1
  143. package/dist/interface/assets/{useKeyboardInset--YIaX3ui.js → useKeyboardInset-yu3BVnj7.js} +1 -1
  144. package/dist/interface/assets/{useLogsSocket-CuBhuz2x.js → useLogsSocket-B4wTnSno.js} +1 -1
  145. package/dist/interface/assets/{useNavLayout-DqfVqch5.js → useNavLayout-Z61-OsIG.js} +1 -1
  146. package/dist/interface/assets/{usePermissions-CsWQ7pWp.js → usePermissions-Bjx4t0x3.js} +1 -1
  147. package/dist/interface/assets/{usePluginUpdates-Bd9aG0m4.js → usePluginUpdates-Dv3_XJTK.js} +1 -1
  148. package/dist/interface/assets/{usePushRegistration-CRfLAqg_.js → usePushRegistration-CHNMZ94f.js} +1 -1
  149. package/dist/interface/assets/{useServerRestart-dZl5kp-p.js → useServerRestart-C-AsOdJP.js} +1 -1
  150. package/dist/interface/assets/{useStreamStatus-CUhV9eYE.js → useStreamStatus-BJoJF68x.js} +1 -1
  151. package/dist/interface/assets/{useTabSwipe-CygERn8O.js → useTabSwipe-b_K3BIkW.js} +1 -1
  152. package/dist/interface/assets/{useUpdateChannel-DWFsxlIH.js → useUpdateChannel-Cc4IrrDy.js} +1 -1
  153. package/dist/interface/assets/{useUpdatesSocket-DrvP72pd.js → useUpdatesSocket-Cz9lN4Bc.js} +1 -1
  154. package/dist/interface/assets/{useUserOptions-RG_d0mku.js → useUserOptions-DrNB17kY.js} +1 -1
  155. package/dist/interface/assets/{vendor-cameraui-zaB6gIk1.js → vendor-cameraui-CqKq4Yeo.js} +1 -1
  156. package/dist/interface/assets/{vendor-core-CfoDuMvj.js → vendor-core-BTkC8NzR.js} +1 -1
  157. package/dist/interface/assets/{vendor-primevue-5HrOunkM.js → vendor-primevue-DQz5Qnqu.js} +1 -1
  158. package/dist/interface/assets/vendor-zod-BigRv4ty.js +109 -0
  159. package/dist/interface/ha/{404-BhFXBx4d.js → 404-Bg2Vlt5S.js} +1 -1
  160. package/dist/interface/ha/{About-D2u_8ssN.js → About-C6u2wgUi.js} +6 -6
  161. package/dist/interface/ha/{Assistant-DlUU6WbS.js → Assistant-BCyiVnwD.js} +1127 -1081
  162. package/dist/interface/ha/{Automation-Dddvbd8Y.js → Automation-DU_qv5xD.js} +176 -176
  163. package/dist/interface/ha/{AutomationImport-C8QyqnLL.js → AutomationImport-BpDyhabF.js} +7 -7
  164. package/dist/interface/ha/{AutomationStore-BbcWkMlV.js → AutomationStore-DPQsunpH.js} +52 -51
  165. package/dist/interface/ha/{AutomationStoreDetail-C6wqQI8t.js → AutomationStoreDetail-CASMQ-mD.js} +23 -23
  166. package/dist/interface/ha/{Automations-BL3XKISI.js → Automations-DSHVzwX4.js} +90 -90
  167. package/dist/interface/ha/{Camera-DjdtVIDf.js → Camera-ESmteicm.js} +42 -42
  168. package/dist/interface/ha/{CameraConsole-D_9KgIy6.js → CameraConsole-BE_jl4Co.js} +5 -5
  169. package/dist/interface/ha/{Cameras-BRKa0gO0.js → Cameras-otaj2xZO.js} +279 -279
  170. package/dist/interface/ha/{Camview-ugcvjRhF.js → Camview-BU1027if.js} +464 -463
  171. package/dist/interface/ha/{Config-GkoXI3ND.js → Config-BlEvHYVP.js} +11 -11
  172. package/dist/interface/ha/{ConfigActionAssistant-FdyhQC1g.js → ConfigActionAssistant-uDf5fgoJ.js} +4 -4
  173. package/dist/interface/ha/{ConfigActionCameraControl-CfM81AXm.js → ConfigActionCameraControl-BAQsXVLz.js} +5 -5
  174. package/dist/interface/ha/{ConfigActionHttp-DwPoY52J.js → ConfigActionHttp-Dy2MZHSm.js} +2 -2
  175. package/dist/interface/ha/{ConfigActionImageInput-Bgcc8iTW.js → ConfigActionImageInput-B5kyV3Un.js} +1 -1
  176. package/dist/interface/ha/{ConfigActionMqtt-Do3Lc6-c.js → ConfigActionMqtt-DHCgh1xx.js} +4 -4
  177. package/dist/interface/ha/{ConfigActionNotification-B_0IACMJ.js → ConfigActionNotification-mbA5PfcJ.js} +4 -4
  178. package/dist/interface/ha/{ConfigActionNotificationControl-dC7lQqHI.js → ConfigActionNotificationControl-TLaL7tYm.js} +2 -2
  179. package/dist/interface/ha/{ConfigActionOutput-BCQUuCL3.js → ConfigActionOutput-CJ40Fniw.js} +1 -1
  180. package/dist/interface/ha/{ConfigActionPlugin-ClGszpNQ.js → ConfigActionPlugin-BwTd-mdQ.js} +5 -5
  181. package/dist/interface/ha/{ConfigActionSensor-DuQR6Yu4.js → ConfigActionSensor-BI438ihg.js} +6 -6
  182. package/dist/interface/ha/{ConfigActionSnapshot-E7Hp07Q0.js → ConfigActionSnapshot-DJ4zI2a0.js} +2 -2
  183. package/dist/interface/ha/{ConfigActionVariable-CHkWJ76e.js → ConfigActionVariable-Bhy5jf_w.js} +1 -1
  184. package/dist/interface/ha/{ConfigConditionIfElse-BBgNDLpw.js → ConfigConditionIfElse-I7Qq8nfN.js} +3 -3
  185. package/dist/interface/ha/{ConfigConditionSensorState-BiFmpbMg.js → ConfigConditionSensorState-CTLP3ppx.js} +4 -4
  186. package/dist/interface/ha/{ConfigConditionSwitch-BZp4hCmz.js → ConfigConditionSwitch-UUupXf1b.js} +10 -10
  187. package/dist/interface/ha/{ConfigConditionTime-CcZFjBil.js → ConfigConditionTime-CRn4k6uE.js} +2 -2
  188. package/dist/interface/ha/{ConfigSensorValueInput-CI_4-6-o.js → ConfigSensorValueInput-CoHheDT0.js} +5 -4
  189. package/dist/interface/ha/{ConfigTriggerDetection-D5Yfd6nh.js → ConfigTriggerDetection-Cg_jKNed.js} +4 -4
  190. package/dist/interface/ha/{ConfigTriggerGeofence-BuadOROr.js → ConfigTriggerGeofence-WlJbu3sC.js} +6 -6
  191. package/dist/interface/ha/{ConfigTriggerMqtt-DKr9Lje8.js → ConfigTriggerMqtt-BeRJoceK.js} +1 -1
  192. package/dist/interface/ha/{ConfigTriggerSensor-DGYJoRq9.js → ConfigTriggerSensor-k58gVKdG.js} +2 -2
  193. package/dist/interface/ha/{ConfigTriggerSystem-HXnm4_7F.js → ConfigTriggerSystem-Ckm5yoUm.js} +2 -2
  194. package/dist/interface/ha/{ConfigTriggerWebhook-DBxcAAJI.js → ConfigTriggerWebhook-D425z-p1.js} +6 -6
  195. package/dist/interface/ha/{Console-BMvw2vXY.js → Console-C1Ub4Rji.js} +100 -100
  196. package/dist/interface/ha/{CuiAutomationRunsDialog-QNvLMPna.js → CuiAutomationRunsDialog-opy5qXwE.js} +2 -2
  197. package/dist/interface/ha/{CuiBottomSheet-CnDN0_Tp.js → CuiBottomSheet-DbCwVXl1.js} +1 -1
  198. package/dist/interface/ha/{CuiCameraRecordings-B4yap0Gu.js → CuiCameraRecordings-CifJLj7G.js} +20 -19
  199. package/dist/interface/ha/{CuiCameraShares-nPodkk2P.js → CuiCameraShares-Xty8LRcn.js} +7 -7
  200. package/dist/interface/ha/{CuiCameraTable-IsutvZcy.js → CuiCameraTable-CqfxX0Yn.js} +9 -9
  201. package/dist/interface/ha/{CuiChartTable-Dd0_sAge.js → CuiChartTable-ABHnLdR0.js} +36 -36
  202. package/dist/interface/ha/{CuiConsole-BZVHMf0M.js → CuiConsole-3JwbeUYD.js} +5 -5
  203. package/dist/interface/ha/{CuiDataTable--yJTTWKH.js → CuiDataTable-BwE7D2h5.js} +7 -6
  204. package/dist/interface/ha/{CuiPluginCard-D3hHRaFf.js → CuiPluginCard-bzxiy1yb.js} +53 -53
  205. package/dist/interface/ha/{CuiPluginOAuthButton-Dv9K7ZbU.js → CuiPluginOAuthButton-DSxrzDmg.js} +6 -6
  206. package/dist/interface/ha/{CuiPluginTrustBadge-8HRs2vnR.js → CuiPluginTrustBadge-g0XkvDt8.js} +3 -3
  207. package/dist/interface/ha/{CuiQRCode-CfLMS7k7.js → CuiQRCode-uyRFbzd6.js} +6 -6
  208. package/dist/interface/ha/{CuiSchema-CCrY2Lx-.js → CuiSchema-DZIrlY8R.js} +148 -148
  209. package/dist/interface/ha/{CuiTopNavbarItem-CRls6-wE.js → CuiTopNavbarItem-C3a5NA7u.js} +1 -1
  210. package/dist/interface/ha/{Faces-DRaKBXFa.js → Faces-D2eca8MN.js} +109 -108
  211. package/dist/interface/ha/{FirstSteps-Dyq-VE0F.js → FirstSteps-CdTE1cvw.js} +64 -64
  212. package/dist/interface/ha/{Floorplan-euEQQ_Wp.js → Floorplan-BrEC2Au5.js} +379 -378
  213. package/dist/interface/ha/{Instances-DRLfaxS6.js → Instances-ClOsPOi8.js} +20 -20
  214. package/dist/interface/ha/{Logs-CCK0wJOu.js → Logs-DnY1gTnb.js} +12 -12
  215. package/dist/interface/ha/{Menu-DUlknRU8.js → Menu-cLDE76XZ.js} +16 -16
  216. package/dist/interface/ha/{Metrics-R6cm39jI.js → Metrics-pMQX_0m1.js} +97 -96
  217. package/dist/interface/ha/{OAuthDeviceFlow-qpAW51DL.js → OAuthDeviceFlow-D1PGQ8r9.js} +9 -9
  218. package/dist/interface/ha/{Plugin-C_ucUCim.js → Plugin-DiC23P97.js} +83 -82
  219. package/dist/interface/ha/{PluginConsole-B3biAENv.js → PluginConsole-B-lX5KJu.js} +6 -6
  220. package/dist/interface/ha/{PluginDetail-tIUv1KCl.js → PluginDetail-B_tVJf6y.js} +10 -10
  221. package/dist/interface/ha/{PluginSearch-BoqtcJfg.js → PluginSearch-n8nfjx9q.js} +35 -34
  222. package/dist/interface/ha/{PluginUpdateProgress-Ci0J6dHX.js → PluginUpdateProgress-BjsYyrRk.js} +3 -3
  223. package/dist/interface/ha/{Plugins-LE7-xUCl.js → Plugins-CFhOUaqq.js} +178 -191
  224. package/dist/interface/ha/RecentEventsFilter-C1deXNIS.js +79 -0
  225. package/dist/interface/ha/{Recordings-DbvAT7YJ.js → Recordings-B07eUJwH.js} +332 -361
  226. package/dist/interface/ha/{SensorEdit-BqEjosUi.js → SensorEdit-DFPiBXQD.js} +362 -360
  227. package/dist/interface/ha/{SensorHistory-DXV4mdTs.js → SensorHistory-B2FOK4Qa.js} +2 -2
  228. package/dist/interface/ha/{Sensors-Bcs1GBQJ.js → Sensors-DtzmTc-L.js} +525 -523
  229. package/dist/interface/ha/{Settings-BwomsDjK.js → Settings-ClqSoFjT.js} +25 -25
  230. package/dist/interface/ha/{SettingsAccount-0onAlHuN.js → SettingsAccount-Bh8FfH7J.js} +263 -262
  231. package/dist/interface/ha/{SettingsAppearance-DBOsOLUc.js → SettingsAppearance--FJgY8cj.js} +20 -20
  232. package/dist/interface/ha/{SettingsAssistant-Cfsd5Uw6.js → SettingsAssistant-ClDfxd_d.js} +664 -613
  233. package/dist/interface/ha/{SettingsBackup-hj8iLx0k.js → SettingsBackup-BYM55pQ7.js} +39 -39
  234. package/dist/interface/ha/{SettingsList-B3ri6DQ2.js → SettingsList-CMSEKVCD.js} +2 -2
  235. package/dist/interface/ha/{SettingsMqtt-BjsuWyUa.js → SettingsMqtt-CFpgJ-E5.js} +149 -149
  236. package/dist/interface/ha/{SettingsNotifications-DVgF5Rri.js → SettingsNotifications-CzgsBNtW.js} +5 -5
  237. package/dist/interface/ha/{SettingsRecordings-BFhs0muG.js → SettingsRecordings-Bz686yU7.js} +10 -9
  238. package/dist/interface/ha/{SettingsRemote-B2Ei9dR1.js → SettingsRemote-DT4ZMjJO.js} +358 -358
  239. package/dist/interface/ha/{SettingsSystem-CXTNGd2y.js → SettingsSystem-CHctt06D.js} +9 -9
  240. package/dist/interface/ha/{SettingsUsers-CgPnsdzW.js → SettingsUsers-C_hvntON.js} +39 -39
  241. package/dist/interface/ha/{Terminal-Dwmdp2vt.js → Terminal-B5FXq4-Z.js} +41 -41
  242. package/dist/interface/ha/{Training-CdzQ1WtN.js → Training-BgvpsKPM.js} +469 -469
  243. package/dist/interface/ha/{Updates-CTU4JiFI.js → Updates-D0osNjqS.js} +13 -13
  244. package/dist/interface/ha/{VariableInput-C2qGWTPn.js → VariableInput-BK0qqMc7.js} +1 -1
  245. package/dist/interface/ha/{VersionsHandler-Z7RAUdO5.js → VersionsHandler-B-vpKHJN.js} +9 -9
  246. package/dist/interface/ha/{VirtualSensorCreate-BsRO9E1F.js → VirtualSensorCreate-Bp2201iM.js} +3 -3
  247. package/dist/interface/ha/{Workers-D_jtMnzt.js → Workers-BQ_luGWk.js} +86 -86
  248. package/dist/interface/ha/{accordion-DdpJ2jcK.js → accordion-X9Wa7KVq.js} +1 -1
  249. package/dist/interface/ha/{api-i97kvGtZ.js → api-BufZW7-A.js} +3 -3
  250. package/dist/interface/ha/{api-DRr9pyiA.js → api-JPS8NpNG.js} +9133 -9618
  251. package/dist/interface/ha/{assistant-DT5mH0IU.js → assistant-BXVGCw2q.js} +54 -54
  252. package/dist/interface/ha/{auth-Dd-U6Sx5.js → auth-CJC9G9BA.js} +38 -38
  253. package/dist/interface/ha/{automationBlueprint-Bp5haBxv.js → automationBlueprint-DWuBiu_Q.js} +4 -3
  254. package/dist/interface/ha/cameraui-cards.js +1 -1
  255. package/dist/interface/ha/{cards-B_qaT-id.js → cards-CGP6dWjy.js} +558 -557
  256. package/dist/interface/ha/checkbox-D012nd17.js +279 -0
  257. package/dist/interface/ha/{config-Cdjp82J6.js → config-BVURO_DZ.js} +15 -15
  258. package/dist/interface/ha/{datepicker-DpDmhDeD.js → datepicker-44Ub2Hx0.js} +329 -604
  259. package/dist/interface/ha/dist-BTp4AyuI.js +287 -0
  260. package/dist/interface/ha/{dist-aGnBxAoZ.js → dist-Ca4K4HIm.js} +763 -1048
  261. package/dist/interface/ha/dots-vertical-BEPlUtxU.js +19 -0
  262. package/dist/interface/ha/eventIcons-DrjNuTS2.js +676 -0
  263. package/dist/interface/ha/{mqtt--xCEEs7T.js → mqtt-DY6EvMC9.js} +11 -11
  264. package/dist/interface/ha/{multiselect-Cedfen4P.js → multiselect-B0fAnW75.js} +1 -1
  265. package/dist/interface/ha/{notifications-ByL47yWP.js → notifications-BdIqgnrC.js} +21 -21
  266. package/dist/interface/ha/{pinia-Dk3LfWcE.js → pinia-CqffEnzx.js} +2283 -2268
  267. package/dist/interface/ha/{plugins-OikBHddG.js → plugins-Bnq2Iw00.js} +67 -67
  268. package/dist/interface/ha/pwa/favicon-16.ico +0 -0
  269. package/dist/interface/ha/pwa/favicon-32.ico +0 -0
  270. package/dist/interface/ha/pwa/favicon-48.ico +0 -0
  271. package/dist/interface/ha/pwa/pwa-120x120.png +0 -0
  272. package/dist/interface/ha/pwa/pwa-24x24.png +0 -0
  273. package/dist/interface/ha/pwa/pwa-36x36.png +0 -0
  274. package/dist/interface/ha/pwa/pwa-48x48.png +0 -0
  275. package/dist/interface/ha/pwa/pwa-50x50.png +0 -0
  276. package/dist/interface/ha/pwa/pwa-64x64.png +0 -0
  277. package/dist/interface/ha/pwa/pwa-72x72.png +0 -0
  278. package/dist/interface/ha/pwa/pwa-88x88.png +0 -0
  279. package/dist/interface/ha/pwa/pwa-96x96.png +0 -0
  280. package/dist/interface/ha/{rooms-CMwrVqJO.js → rooms-AiJ5Tfir.js} +8 -8
  281. package/dist/interface/ha/{server-Byevi9ww.js → server-BHhFn2RZ.js} +30 -30
  282. package/dist/interface/ha/{types-D1-pD0Vp.js → types-7oMK8VO-.js} +26 -26
  283. package/dist/interface/ha/{ungrouped-a_k9QFxB.js → ungrouped-hib17Nvu.js} +29 -28
  284. package/dist/interface/ha/{updates-DapEyqmr.js → updates-DvnEEUsx.js} +36 -36
  285. package/dist/interface/ha/{useAppVersion-CBK74lkV.js → useAppVersion-BmWXr96y.js} +1 -1
  286. package/dist/interface/ha/{useLogsSocket-DsxXBViV.js → useLogsSocket-BKlJKGCB.js} +1 -1
  287. package/dist/interface/ha/{useNavLayout-D24L7VNu.js → useNavLayout-Dt0NH-G5.js} +11 -11
  288. package/dist/interface/ha/{useServerRestart-qTNapyIx.js → useServerRestart-DWs2dqQc.js} +1 -1
  289. package/dist/interface/ha/{useTabSwipe-DEha11Zv.js → useTabSwipe-vX79p6V_.js} +1 -1
  290. package/dist/interface/ha/{useUpdateChannel-DI-Ki0yH.js → useUpdateChannel-CHlRp8uj.js} +2 -2
  291. package/dist/interface/ha/{useUpdatesSocket-CKUgku1R.js → useUpdatesSocket-B40Cx-2L.js} +1 -1
  292. package/dist/interface/ha/{useUserOptions-BY-pcxd_.js → useUserOptions-hXz79rIV.js} +1 -1
  293. package/dist/interface/index.html +35 -34
  294. package/dist/interface/pwa/favicon-16.ico +0 -0
  295. package/dist/interface/pwa/favicon-32.ico +0 -0
  296. package/dist/interface/pwa/favicon-48.ico +0 -0
  297. package/dist/interface/pwa/pwa-120x120.png +0 -0
  298. package/dist/interface/pwa/pwa-24x24.png +0 -0
  299. package/dist/interface/pwa/pwa-36x36.png +0 -0
  300. package/dist/interface/pwa/pwa-48x48.png +0 -0
  301. package/dist/interface/pwa/pwa-50x50.png +0 -0
  302. package/dist/interface/pwa/pwa-64x64.png +0 -0
  303. package/dist/interface/pwa/pwa-72x72.png +0 -0
  304. package/dist/interface/pwa/pwa-88x88.png +0 -0
  305. package/dist/interface/pwa/pwa-96x96.png +0 -0
  306. package/dist/interface/sw.js +1 -1
  307. package/dist/server/package.json +4 -4
  308. package/dist/server/src/api/controllers/users.controller.d.ts +3 -1
  309. package/dist/server/src/api/controllers/users.controller.js +38 -0
  310. package/dist/server/src/api/controllers/users.controller.js.map +1 -1
  311. package/dist/server/src/api/database/record-schemas.d.ts +44 -1
  312. package/dist/server/src/api/database/record-schemas.js +3 -3
  313. package/dist/server/src/api/database/record-schemas.js.map +1 -1
  314. package/dist/server/src/api/database/types.d.ts +4 -2
  315. package/dist/server/src/api/routes/users.routes.js +24 -1
  316. package/dist/server/src/api/routes/users.routes.js.map +1 -1
  317. package/dist/server/src/api/schemas/assistant.schema.d.ts +43 -1
  318. package/dist/server/src/api/schemas/assistant.schema.js +2 -1
  319. package/dist/server/src/api/schemas/assistant.schema.js.map +1 -1
  320. package/dist/server/src/api/schemas/users.schema.d.ts +8 -0
  321. package/dist/server/src/api/schemas/users.schema.js +45 -0
  322. package/dist/server/src/api/schemas/users.schema.js.map +1 -1
  323. package/dist/server/src/api/services/users.service.d.ts +3 -1
  324. package/dist/server/src/api/services/users.service.js +33 -0
  325. package/dist/server/src/api/services/users.service.js.map +1 -1
  326. package/dist/server/src/api/types/index.d.ts +4 -1
  327. package/dist/server/src/api/types/index.js.map +1 -1
  328. package/dist/server/src/assistant/manager.js +23 -4
  329. package/dist/server/src/assistant/manager.js.map +1 -1
  330. package/dist/server/src/assistant/prompt.d.ts +1 -0
  331. package/dist/server/src/assistant/prompt.js +10 -1
  332. package/dist/server/src/assistant/prompt.js.map +1 -1
  333. package/dist/server/src/assistant/search.js +4 -2
  334. package/dist/server/src/assistant/search.js.map +1 -1
  335. package/dist/server/src/assistant/skills.js +3 -2
  336. package/dist/server/src/assistant/skills.js.map +1 -1
  337. package/dist/server/src/assistant/tools/index.js +2 -2
  338. package/dist/server/src/assistant/tools/index.js.map +1 -1
  339. package/dist/server/src/assistant/tools/notifications.d.ts +2 -1
  340. package/dist/server/src/assistant/tools/notifications.js +69 -35
  341. package/dist/server/src/assistant/tools/notifications.js.map +1 -1
  342. package/dist/server/src/assistant/tools/plugins.d.ts +7 -1
  343. package/dist/server/src/assistant/tools/plugins.js +13 -9
  344. package/dist/server/src/assistant/tools/plugins.js.map +1 -1
  345. package/dist/server/src/assistant/uploads.js +29 -2
  346. package/dist/server/src/assistant/uploads.js.map +1 -1
  347. package/dist/server/src/manager/downloadManager.d.ts +1 -0
  348. package/dist/server/src/manager/downloadManager.js +3 -0
  349. package/dist/server/src/manager/downloadManager.js.map +1 -1
  350. package/dist/server/src/manager/notificationManager.d.ts +1 -0
  351. package/dist/server/src/manager/notificationManager.js +13 -2
  352. package/dist/server/src/manager/notificationManager.js.map +1 -1
  353. package/package.json +4 -4
  354. package/dist/interface/assets/Assistant-DiL48qbB.js +0 -1
  355. package/dist/interface/assets/Automation-B0hMNSAw.js +0 -3
  356. package/dist/interface/assets/AutomationImport-BSb9krZ4.js +0 -2
  357. package/dist/interface/assets/AutomationStore-B0CoLiA8.js +0 -2
  358. package/dist/interface/assets/AutomationStoreDetail-CBolb08V.js +0 -2
  359. package/dist/interface/assets/Automations-kqWnqU6P.js +0 -2
  360. package/dist/interface/assets/Camera-vyc9F0HE.js +0 -2
  361. package/dist/interface/assets/Camview-DVs7NJlA.js +0 -1
  362. package/dist/interface/assets/Console-BCKOiAw3.js +0 -1
  363. package/dist/interface/assets/CuiAssistantConversation-DcPtJCQY.js +0 -5
  364. package/dist/interface/assets/CuiBottomSheet-DSf4fJTK.js +0 -1
  365. package/dist/interface/assets/CuiCameraRecordings-BIPlJiZL.js +0 -1
  366. package/dist/interface/assets/CuiCameraShares-DAlZyr-0.js +0 -1
  367. package/dist/interface/assets/CuiCameraTable-BgKbs8gK.js +0 -1
  368. package/dist/interface/assets/CuiLightControl-BdgBiaE3.js +0 -1
  369. package/dist/interface/assets/CuiPluginCard-ACM-8XiS.js +0 -2
  370. package/dist/interface/assets/CuiPluginCategoryChip-C5EQGJ3M.js +0 -1
  371. package/dist/interface/assets/CuiPluginOAuthButton-DzLXHOoU.js +0 -2
  372. package/dist/interface/assets/CuiSchema-BGDsFg7E.js +0 -1
  373. package/dist/interface/assets/Faces-4IZtM2h6.js +0 -1
  374. package/dist/interface/assets/FirstSteps-CNONDDmE.js +0 -1
  375. package/dist/interface/assets/Floorplan-BibtwoH-.js +0 -1
  376. package/dist/interface/assets/Metrics-C8EucBD8.js +0 -9
  377. package/dist/interface/assets/OAuthDeviceFlow-BPl8Ol0d.js +0 -1
  378. package/dist/interface/assets/Plugin-DGXAz6ID.js +0 -1
  379. package/dist/interface/assets/PluginDetail-jnxv0aEv.js +0 -2
  380. package/dist/interface/assets/PluginSearch-4DArZA-1.js +0 -2
  381. package/dist/interface/assets/PluginSearch-oQ7-vW_I.js +0 -1
  382. package/dist/interface/assets/Plugins-CX35AoGP.js +0 -1
  383. package/dist/interface/assets/Recordings-edUqNrNY.js +0 -1
  384. package/dist/interface/assets/Sensors-CFJX3XaI.js +0 -2
  385. package/dist/interface/assets/SettingsAccount-B665agGW.js +0 -1
  386. package/dist/interface/assets/SettingsAccount-CXMp3Jle.js +0 -1
  387. package/dist/interface/assets/SettingsAppearance-CHerioe-.js +0 -1
  388. package/dist/interface/assets/SettingsAssistant-BpTwRGXe.css +0 -1
  389. package/dist/interface/assets/SettingsAssistant-CcjD56Pd.js +0 -1
  390. package/dist/interface/assets/SettingsMqtt-Bh6bhYa0.js +0 -1
  391. package/dist/interface/assets/SettingsNotifications-B6wReKt5.js +0 -1
  392. package/dist/interface/assets/SettingsRecordings-CVdOQF8g.js +0 -1
  393. package/dist/interface/assets/SettingsRemote-CEUmUMfH.js +0 -2
  394. package/dist/interface/assets/SettingsSystem-BoPBhsJr.js +0 -2
  395. package/dist/interface/assets/SettingsUsers-DsBxZ-Tq.js +0 -1
  396. package/dist/interface/assets/Training-CfSPxQgA.js +0 -1
  397. package/dist/interface/assets/Training-DMNjB3uX.css +0 -1
  398. package/dist/interface/assets/VirtualSensorCreate-B1B2frUr.js +0 -1
  399. package/dist/interface/assets/Workers-BBIGwhRS.js +0 -2
  400. package/dist/interface/assets/api-C85p0Dk3.css +0 -2
  401. package/dist/interface/assets/api-DgcK7TwB.js +0 -4
  402. package/dist/interface/assets/automations-BPmaAqhX.js +0 -1
  403. package/dist/interface/assets/cameraSources-B5dOcB7w.js +0 -1
  404. package/dist/interface/assets/cloudHandoff-Bk25i74p.js +0 -1
  405. package/dist/interface/assets/main-Ceiwp3VL.js +0 -3
  406. package/dist/interface/assets/mqtt-DHY_na1K.js +0 -1
  407. package/dist/interface/assets/plugins-EdSbk-EV.js +0 -1
  408. package/dist/interface/assets/rooms-Cg8aq9k9.js +0 -1
  409. package/dist/interface/assets/sensorIcons-DJTgAwaE.js +0 -1
  410. package/dist/interface/assets/types-BZz-3rol.js +0 -1
  411. package/dist/interface/assets/types-zwRUIzRx.js +0 -1
  412. package/dist/interface/assets/ungrouped-IUmtQN_P.js +0 -1
  413. package/dist/interface/assets/vendor-zod-BMOt_yT8.js +0 -109
@@ -260,11 +260,18 @@ export class AssistantManager {
260
260
  const pending = await persistence.stores.interrupts.listPending(threadId);
261
261
  const live = active ? this.runs.get(active.runId) : undefined;
262
262
  const alive = live ? live.finishedAt === undefined : false;
263
+ const open = [];
264
+ for (const record of pending) {
265
+ if (!alive && isClientToolInterrupt(record.payload))
266
+ await persistence.stores.interrupts.cancel(record.interruptId);
267
+ else
268
+ open.push(record);
269
+ }
263
270
  return {
264
271
  messages: (thread?.messages ?? []),
265
272
  attachments: thread?.attachments ?? {},
266
273
  activeRun: active && alive ? { runId: active.runId } : null,
267
- interrupts: pending[0] ? { runId: pending[0].runId, pending: pending.map((record) => record.payload) } : null,
274
+ interrupts: open[0] ? { runId: open[0].runId, pending: open.map((record) => record.payload) } : null,
268
275
  };
269
276
  }
270
277
  runningRun(threadId) {
@@ -429,12 +436,20 @@ export class AssistantManager {
429
436
  ctx.instructions = pickString(forwarded.instructions)?.slice(0, 2000);
430
437
  ctx.answers = new Map();
431
438
  ctx.calledTools = [];
439
+ const persistence = lmdbPersistence(this.dbs, this.threads, ctx.userId);
440
+ const openInterrupts = new Set();
441
+ for (const item of params.resume ?? []) {
442
+ const record = await persistence.stores.interrupts.get(item.interruptId);
443
+ if (record?.status === 'pending')
444
+ openInterrupts.add(item.interruptId);
445
+ }
446
+ const resume = (params.resume ?? []).filter((item) => openInterrupts.has(item.interruptId));
432
447
  const adapter = withEmptyTurnRetry(createAdapter(model, this.decryptKey(entry)), () => this.logger.debug(EMPTY_TURN_LOG));
433
448
  const disabledGroups = new Set(Array.isArray(forwarded.disabledGroups) ? forwarded.disabledGroups.filter((group) => typeof group === 'string') : []);
434
449
  if (!settings.terminalEnabled)
435
450
  disabledGroups.add(TERMINAL_GROUP);
436
451
  const available = entry.capabilities?.toolCalling === false ? [] : this.registry.toolsFor(ctx.role).filter((tool) => !disabledGroups.has(toolGroup(tool)));
437
- const tools = params.resume ? available.map((tool) => (tool.lazy ? { ...tool, lazy: false } : tool)) : available;
452
+ const tools = resume.length ? available.map((tool) => (tool.lazy ? { ...tool, lazy: false } : tool)) : available;
438
453
  const thread = await this.threads.ensure(request.user._id, params.threadId || randomUUID(), params.messages);
439
454
  ctx.threadId = thread._id;
440
455
  await this.storeUploads(ctx, thread._id, params.messages.length - 1);
@@ -450,7 +465,7 @@ export class AssistantManager {
450
465
  threadId: thread._id,
451
466
  runId,
452
467
  parentRunId: params.parentRunId,
453
- ...(params.resume ? { resume: params.resume } : {}),
468
+ ...(resume.length ? { resume } : {}),
454
469
  tools,
455
470
  interrupts: [ASK_USER_INTERRUPT],
456
471
  context: ctx,
@@ -459,7 +474,7 @@ export class AssistantManager {
459
474
  lazyToolsConfig: { includeDescription: 'first-sentence' },
460
475
  modelOptions: modelOptionsFor(model),
461
476
  middleware: [
462
- withPersistence(lmdbPersistence(this.dbs, this.threads, ctx.userId)),
477
+ withPersistence(persistence),
463
478
  settings.memoryEnabled ? this.memoryMiddleware : NO_MIDDLEWARE,
464
479
  withCompaction({
465
480
  maxTokens: settings.contextTokens,
@@ -919,6 +934,10 @@ function cachedPrompts(prompts, provider) {
919
934
  function modelsFor(models, role) {
920
935
  return role === 'user' ? models.filter((entry) => entry.userAccess !== false) : models;
921
936
  }
937
+ function isClientToolInterrupt(payload) {
938
+ const reason = payload?.reason;
939
+ return typeof reason === 'string' && reason.includes('client_tool');
940
+ }
922
941
  function defaultEntry(record) {
923
942
  return record.models.find((entry) => entry._id === record.defaultModelId) ?? record.models[0];
924
943
  }
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../../src/assistant/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../../src/assistant/manager.ts"],"names":[],"mappings":"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"}
@@ -14,3 +14,4 @@ export interface PromptFacts {
14
14
  terminal: boolean;
15
15
  }
16
16
  export declare function buildSystemPrompt(ctx: AssistantRunContext, facts: PromptFacts): string[];
17
+ export declare function languageName(code: string): string;
@@ -1,4 +1,5 @@
1
1
  import { skillsPrompt } from './skills.js';
2
+ const LANGUAGE_NAMES = new Intl.DisplayNames(['en'], { type: 'language' });
2
3
  // prettier-ignore
3
4
  const CAPABILITIES = [
4
5
  '- Cameras: added by network discovery or manually with a stream URL on the Cameras page; a camera has sources with roles, a room, ' +
@@ -30,7 +31,7 @@ export function buildSystemPrompt(ctx, facts) {
30
31
  'that have nothing to do with this instance. Answer those from your own knowledge and say so when you are unsure. Everything about ' +
31
32
  'camera.ui itself (how a feature works, where a setting lives) comes from docs_search first, not from memory. The tools are for camera.ui only.',
32
33
  'Relative dates like "yesterday" refer to the time zone given below. Pass times to tools as ISO 8601 with offset.',
33
- `Answer in the language ${ctx.language}. Keep answers short and concrete, name cameras and times. Use markdown sparingly: short lists, no headings.`,
34
+ `Answer in ${languageName(ctx.language)}. Keep answers short and concrete, name cameras and times. Use markdown sparingly: short lists, no headings.`,
34
35
  '',
35
36
  'Rules:',
36
37
  '- Everything you say about events, people, vehicles or sensor states must come from a tool result. Never invent or guess an observation.',
@@ -99,4 +100,12 @@ export function buildSystemPrompt(ctx, facts) {
99
100
  }
100
101
  return [lines.join('\n'), dynamic.filter((line) => line !== undefined).join('\n')];
101
102
  }
103
+ export function languageName(code) {
104
+ try {
105
+ return LANGUAGE_NAMES.of(code) ?? code;
106
+ }
107
+ catch {
108
+ return code;
109
+ }
110
+ }
102
111
  //# sourceMappingURL=prompt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../../src/assistant/prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../../src/assistant/prompt.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { BASE_AUDIO_LABELS, DETECTION_ATTRIBUTES, EVENT_TRIGGER_TYPES, OBJECT_DETECTION_LABELS } from '@camera.ui/sdk';
2
2
  import * as zod from 'zod';
3
+ import { languageName } from './prompt.js';
3
4
  const OTHER_EVENT_TYPE = '__other__';
4
5
  export const SEARCH_SCHEMA = zod.object({
5
6
  contentKind: zod.enum(['all', 'events', 'episodes']),
@@ -21,7 +22,7 @@ export function searchPrompt(cameras, language, timezone) {
21
22
  // prettier-ignore
22
23
  return [
23
24
  'You translate a wish about recorded camera events into the filters of the recordings page. Answer only with the filter object.',
24
- `Current time: ${now.toLocaleString('en-GB', { timeZone: timezone, hour12: false })} (${timezone}). The user writes in ${language}.`,
25
+ `Current time: ${now.toLocaleString('en-GB', { timeZone: timezone, hour12: false })} (${timezone}). The user writes in ${languageName(language)}.`,
25
26
  '',
26
27
  `Cameras (name, room): ${cameras.map((camera) => `${camera.name}${camera.room ? ` (${camera.room})` : ''}`).join('; ') || 'none'}.`,
27
28
  `Rooms: ${rooms.join(', ') || 'none'}.`,
@@ -37,7 +38,8 @@ export function searchPrompt(cameras, language, timezone) {
37
38
  '- semanticQuery: when the wish describes a scene beyond the labels above (a color, an action, an object like a parcel), ' +
38
39
  'an English scene description ("a blue car in the driveway"), empty otherwise.',
39
40
  '- favoritesOnly: only when the wish asks for favorites or starred recordings.',
40
- `- note: one short sentence in ${language} about the part of the wish the filters cannot express (an exact day, a name of a person unknown here), empty otherwise.`,
41
+ `- note: one short sentence in ${languageName(language)} about the part of the wish the filters cannot express ` +
42
+ '(an exact day, a name of a person unknown here), empty otherwise.',
41
43
  ].join('\n');
42
44
  }
43
45
  export function toSearchResult(output, cameras) {
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../src/assistant/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../src/assistant/search.ts"],"names":[],"mappings":"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"}
@@ -63,8 +63,9 @@ const SKILLS = [
63
63
  '',
64
64
  'For "send me the clip" or "give me the video of that moment" find the event first (query_events, get_episode or search_events_by_text),',
65
65
  'then call export_clip with its eventId, or with one camera and a range of at most 5 minutes. The user gets a download button by',
66
- 'itself, never write the downloadUrl or a link into the answer. When they want it on their phone, call send_notification afterwards',
67
- 'with videoUrl set to the downloadUrl of the export.',
66
+ 'itself, never write the downloadUrl or a link into the answer. When they want it on their phone, call export_clip with the eventId',
67
+ 'and push true, then send_notification with videoUrl set to that downloadUrl and the same eventId, so clip and picture show one moment.',
68
+ 'A picture of a moment already found goes out with send_notification and its eventId, camera only takes a new picture right now.',
68
69
  '',
69
70
  'Faces: list_unknown_faces shows the strangers with pictures and ids. name_face enrolls one under a name, ignore_faces drops ones the',
70
71
  'user never wants to see again, reassign_event_face corrects the name an event shows. Every change is confirmed by the user.',
@@ -1 +1 @@
1
- {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../../../src/assistant/skills.ts"],"names":[],"mappings":"AAEA,kBAAkB;AAClB,MAAM,MAAM,GAAwB;IAClC;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,iIAAiI;QAC9I,YAAY,EAAE;YACZ,oCAAoC;YACpC,EAAE;YACF,6IAA6I;YAC7I,iJAAiJ;YACjJ,4IAA4I;YAC5I,+GAA+G;YAC/G,EAAE;YACF,qIAAqI;YACrI,oIAAoI;YACpI,sFAAsF;YACtF,EAAE;YACF,wIAAwI;YACxI,yEAAyE;SAC1E,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,qHAAqH;QAClI,YAAY,EAAE;YACZ,eAAe;YACf,EAAE;YACF,uIAAuI;YACvI,kHAAkH;YAClH,EAAE;YACF,+HAA+H;YAC/H,qHAAqH;YACrH,EAAE;YACF,6HAA6H;SAC9H,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,8GAA8G;QAC3H,YAAY,EAAE;YACZ,sBAAsB;YACtB,EAAE;YACF,2IAA2I;YAC3I,iEAAiE;YACjE,EAAE;YACF,wIAAwI;YACxI,yIAAyI;YACzI,2IAA2I;YAC3I,kJAAkJ;YAClJ,EAAE;YACF,oGAAoG;YACpG,EAAE;YACF,gHAAgH;YAChH,EAAE;YACF,uHAAuH;SACxH,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,oJAAoJ;QACjK,YAAY,EAAE;YACZ,qCAAqC;YACrC,EAAE;YACF,yIAAyI;YACzI,iIAAiI;YACjI,oIAAoI;YACpI,qDAAqD;YACrD,EAAE;YACF,sIAAsI;YACtI,6HAA6H;YAC7H,EAAE;YACF,mHAAmH;YACnH,gIAAgI;YAChI,qFAAqF;SACtF,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,6HAA6H;QAC1I,YAAY,EAAE;YACZ,kBAAkB;YAClB,EAAE;YACF,+HAA+H;YAC/H,mIAAmI;YACnI,2BAA2B;YAC3B,EAAE;YACF,2HAA2H;YAC3H,8GAA8G;SAC/G,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,qHAAqH;QAClI,YAAY,EAAE;YACZ,mBAAmB;YACnB,EAAE;YACF,+HAA+H;YAC/H,iHAAiH;YACjH,EAAE;YACF,kIAAkI;YAClI,gCAAgC;SACjC,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;CACF,CAAC;AAEF,MAAM,UAAU,YAAY;IAC1B,OAAO,CAAC,2DAA2D,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAClI,CAAC"}
1
+ {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../../../src/assistant/skills.ts"],"names":[],"mappings":"AAEA,kBAAkB;AAClB,MAAM,MAAM,GAAwB;IAClC;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,iIAAiI;QAC9I,YAAY,EAAE;YACZ,oCAAoC;YACpC,EAAE;YACF,6IAA6I;YAC7I,iJAAiJ;YACjJ,4IAA4I;YAC5I,+GAA+G;YAC/G,EAAE;YACF,qIAAqI;YACrI,oIAAoI;YACpI,sFAAsF;YACtF,EAAE;YACF,wIAAwI;YACxI,yEAAyE;SAC1E,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,qHAAqH;QAClI,YAAY,EAAE;YACZ,eAAe;YACf,EAAE;YACF,uIAAuI;YACvI,kHAAkH;YAClH,EAAE;YACF,+HAA+H;YAC/H,qHAAqH;YACrH,EAAE;YACF,6HAA6H;SAC9H,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,8GAA8G;QAC3H,YAAY,EAAE;YACZ,sBAAsB;YACtB,EAAE;YACF,2IAA2I;YAC3I,iEAAiE;YACjE,EAAE;YACF,wIAAwI;YACxI,yIAAyI;YACzI,2IAA2I;YAC3I,kJAAkJ;YAClJ,EAAE;YACF,oGAAoG;YACpG,EAAE;YACF,gHAAgH;YAChH,EAAE;YACF,uHAAuH;SACxH,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,oJAAoJ;QACjK,YAAY,EAAE;YACZ,qCAAqC;YACrC,EAAE;YACF,yIAAyI;YACzI,iIAAiI;YACjI,oIAAoI;YACpI,wIAAwI;YACxI,iIAAiI;YACjI,EAAE;YACF,sIAAsI;YACtI,6HAA6H;YAC7H,EAAE;YACF,mHAAmH;YACnH,gIAAgI;YAChI,qFAAqF;SACtF,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,6HAA6H;QAC1I,YAAY,EAAE;YACZ,kBAAkB;YAClB,EAAE;YACF,+HAA+H;YAC/H,mIAAmI;YACnI,2BAA2B;YAC3B,EAAE;YACF,2HAA2H;YAC3H,8GAA8G;SAC/G,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,qHAAqH;QAClI,YAAY,EAAE;YACZ,mBAAmB;YACnB,EAAE;YACF,+HAA+H;YAC/H,iHAAiH;YACjH,EAAE;YACF,kIAAkI;YAClI,gCAAgC;SACjC,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;CACF,CAAC;AAEF,MAAM,UAAU,YAAY;IAC1B,OAAO,CAAC,2DAA2D,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAClI,CAAC"}
@@ -8,7 +8,7 @@ import { createDocsTools } from './docs.js';
8
8
  import { instanceTools } from './instance.js';
9
9
  import { memoryTools } from './memory.js';
10
10
  import { metricsTools } from './metrics.js';
11
- import { notificationTools } from './notifications.js';
11
+ import { createNotificationTools } from './notifications.js';
12
12
  import { createPluginTools } from './plugins.js';
13
13
  import { reportTools } from './report.js';
14
14
  import { scheduleTools } from './schedules.js';
@@ -24,7 +24,7 @@ export function coreTools(registry, api, docs) {
24
24
  ...metricsTools,
25
25
  ...automationTools,
26
26
  ...scheduleTools,
27
- ...notificationTools,
27
+ ...createNotificationTools(registry),
28
28
  ...instanceTools,
29
29
  ...terminalTools,
30
30
  ...createApiTools(api),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/assistant/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAQ9C,MAAM,UAAU,SAAS,CAAC,QAA+B,EAAE,GAAe,EAAE,IAAe;IACzF,OAAO;QACL,GAAG,WAAW;QACd,GAAG,WAAW;QACd,GAAG,WAAW;QACd,GAAG,YAAY;QACf,GAAG,eAAe;QAClB,GAAG,aAAa;QAChB,GAAG,iBAAiB;QACpB,GAAG,aAAa;QAChB,GAAG,aAAa;QAChB,GAAG,cAAc,CAAC,GAAG,CAAC;QACtB,GAAG,eAAe,CAAC,IAAI,CAAC;QACxB,GAAG,iBAAiB,CAAC,QAAQ,CAAC;QAC9B,mBAAmB,CAAC,QAAQ,CAAC;QAC7B,GAAG,QAAQ;QACX,GAAG,WAAW;QACd,GAAG,YAAY;QACf,GAAG,WAAW;QACd,GAAG,WAAW,EAAE;KACjB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAgC;IAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,QAAmE,CAAC;IACtF,OAAO,IAAI,EAAE,MAAM,KAAK,IAAI,IAAI,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAgC;IAC7D,OAAQ,IAAI,CAAC,QAA+C,EAAE,QAAQ,KAAK,IAAI,CAAC;AAClF,CAAC;AAED,SAAS,WAAW;IAClB,OAAO,sBAAsB,CAAC,GAAG,CAC/B,CAAC,IAAI,EAAE,EAAE,CACP,cAAc,CAAC;QACb,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,WAAW,EAAE,IAAI,CAAC,WAAoC;QACtD,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;KAC3B,CAAwB,CAC5B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/assistant/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAQ9C,MAAM,UAAU,SAAS,CAAC,QAA+B,EAAE,GAAe,EAAE,IAAe;IACzF,OAAO;QACL,GAAG,WAAW;QACd,GAAG,WAAW;QACd,GAAG,WAAW;QACd,GAAG,YAAY;QACf,GAAG,eAAe;QAClB,GAAG,aAAa;QAChB,GAAG,uBAAuB,CAAC,QAAQ,CAAC;QACpC,GAAG,aAAa;QAChB,GAAG,aAAa;QAChB,GAAG,cAAc,CAAC,GAAG,CAAC;QACtB,GAAG,eAAe,CAAC,IAAI,CAAC;QACxB,GAAG,iBAAiB,CAAC,QAAQ,CAAC;QAC9B,mBAAmB,CAAC,QAAQ,CAAC;QAC7B,GAAG,QAAQ;QACX,GAAG,WAAW;QACd,GAAG,YAAY;QACf,GAAG,WAAW;QACd,GAAG,WAAW,EAAE;KACjB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAgC;IAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,QAAmE,CAAC;IACtF,OAAO,IAAI,EAAE,MAAM,KAAK,IAAI,IAAI,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAgC;IAC7D,OAAQ,IAAI,CAAC,QAA+C,EAAE,QAAQ,KAAK,IAAI,CAAC;AAClF,CAAC;AAED,SAAS,WAAW;IAClB,OAAO,sBAAsB,CAAC,GAAG,CAC/B,CAAC,IAAI,EAAE,EAAE,CACP,cAAc,CAAC;QACb,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,WAAW,EAAE,IAAI,CAAC,WAAoC;QACtD,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;KAC3B,CAAwB,CAC5B,CAAC;AACJ,CAAC"}
@@ -1,2 +1,3 @@
1
+ import type { AssistantToolRegistry } from '../registry.js';
1
2
  import type { CoreTool } from './shared.js';
2
- export declare const notificationTools: CoreTool[];
3
+ export declare function createNotificationTools(registry: AssistantToolRegistry): CoreTool[];
@@ -1,52 +1,86 @@
1
1
  import { Severity } from '@camera.ui/sdk';
2
2
  import { toolDefinition } from '@tanstack/ai';
3
+ import { stat } from 'node:fs/promises';
3
4
  import { container } from 'tsyringe';
4
5
  import * as zod from 'zod';
5
6
  import { takeSnapshot } from './cameras.js';
7
+ import { eventPicture } from './plugins.js';
6
8
  import { approvalSchema, DOWNLOAD_PATH, toolError } from './shared.js';
9
+ const PUSH_VIDEO_MAX_BYTES = 5 * 1024 * 1024;
7
10
  const sendNotificationInput = zod.object({
8
11
  title: zod.string().min(1).max(120),
9
12
  body: zod.string().max(1000).optional(),
10
13
  severity: zod.enum(['info', 'warn', 'error']).optional().describe('Default info'),
11
- camera: zod.string().optional().describe('Attach a fresh snapshot of this camera (name as returned by list_cameras)'),
14
+ eventId: zod
15
+ .string()
16
+ .optional()
17
+ .describe('Attach the picture of this event, the id from query_events or get_event_image. Use it for a moment already found in the conversation.'),
18
+ camera: zod
19
+ .string()
20
+ .optional()
21
+ .describe('Attach a picture of this camera taken right now (name as returned by list_cameras). Only for the live picture, never for a past moment.'),
12
22
  videoUrl: zod
13
23
  .string()
14
24
  .regex(DOWNLOAD_PATH, 'videoUrl must be a downloadUrl from export_clip')
15
25
  .optional()
16
- .describe('Attach a clip: the downloadUrl of an export_clip result. Phones show it as a video attachment.'),
26
+ .describe('Attach a clip: the downloadUrl of export_clip called with push true. Pass the same eventId, so the push shows the picture of that moment.'),
17
27
  });
18
- const sendNotification = toolDefinition({
19
- name: 'send_notification',
20
- lazy: true,
21
- description: 'Send a push notification to the devices of the user you are talking to, for example a summary they asked to receive on their phone. ' +
22
- 'Pass camera to attach a fresh picture of it, or videoUrl from export_clip to attach a clip. Requires user confirmation.',
23
- needsApproval: true,
24
- inputSchema: approvalSchema(sendNotificationInput),
25
- }).server(async (args, ctx) => {
26
- const parsed = sendNotificationInput.safeParse(args);
27
- if (!parsed.success)
28
- return toolError(`Invalid arguments: ${parsed.error.issues.map((i) => i.message).join(', ')}`);
29
- const { title, body, severity, camera, videoUrl } = parsed.data;
30
- const proxy = container.resolve('proxy');
31
- const manager = proxy.notificationManager;
32
- let thumbnail;
33
- if (camera) {
34
- const snapshot = await takeSnapshot(camera);
35
- if ('error' in snapshot)
36
- return toolError(snapshot.error);
37
- thumbnail = new Uint8Array(snapshot.data);
38
- }
39
- const devices = await manager.listAllDevices(ctx.context.userId, ctx.context.role);
40
- const own = devices.filter((d) => d.ownerUserId === ctx.context.userId).map((d) => d.id);
41
- if (own.length === 0)
42
- return toolError('The user has no registered notification devices.');
43
- const results = await manager.notify({
44
- notification: { title, body, thumbnail, videoUrl, severity: severity === 'warn' ? Severity.Warn : severity === 'error' ? Severity.Error : Severity.Info },
45
- source: { kind: 'system', id: 'assistant' },
46
- targets: own,
28
+ export function createNotificationTools(registry) {
29
+ const sendNotification = toolDefinition({
30
+ name: 'send_notification',
31
+ lazy: true,
32
+ description: 'Send a push notification to the devices of the user you are talking to, for example a summary they asked to receive on their phone. ' +
33
+ 'Pass eventId to attach the picture of a moment, camera for a picture taken right now, or videoUrl from export_clip for a short clip. Requires user confirmation.',
34
+ needsApproval: true,
35
+ inputSchema: approvalSchema(sendNotificationInput),
36
+ }).server(async (args, ctx) => {
37
+ const parsed = sendNotificationInput.safeParse(args);
38
+ if (!parsed.success)
39
+ return toolError(`Invalid arguments: ${parsed.error.issues.map((i) => i.message).join(', ')}`);
40
+ const { title, body, severity, eventId, camera, videoUrl } = parsed.data;
41
+ const proxy = container.resolve('proxy');
42
+ const manager = proxy.notificationManager;
43
+ const videoToken = videoUrl?.slice(videoUrl.lastIndexOf('/') + 1);
44
+ if (videoToken) {
45
+ const file = proxy.downloadManager.resolveLocalFile(videoToken);
46
+ const size = file ? (await stat(file).catch(() => undefined))?.size : undefined;
47
+ if (size !== undefined && size > PUSH_VIDEO_MAX_BYTES) {
48
+ // prettier-ignore
49
+ return toolError(`The clip has ${Math.ceil(size / 1024 / 1024)} MB, a phone cannot load that in a push. ` +
50
+ 'Call export_clip with the eventId and push true for a short clip and send that one.');
51
+ }
52
+ }
53
+ let thumbnail;
54
+ if (eventId) {
55
+ const picture = await eventPicture(registry, eventId, ctx);
56
+ if ('error' in picture)
57
+ return toolError(picture.error);
58
+ thumbnail = new Uint8Array(picture.data);
59
+ }
60
+ else if (camera) {
61
+ const snapshot = await takeSnapshot(camera);
62
+ if ('error' in snapshot)
63
+ return toolError(snapshot.error);
64
+ thumbnail = new Uint8Array(snapshot.data);
65
+ }
66
+ const devices = await manager.listAllDevices(ctx.context.userId, ctx.context.role);
67
+ const own = devices.filter((d) => d.ownerUserId === ctx.context.userId).map((d) => d.id);
68
+ if (own.length === 0)
69
+ return toolError('The user has no registered notification devices.');
70
+ const results = await manager.notify({
71
+ notification: {
72
+ title,
73
+ body,
74
+ thumbnail,
75
+ videoUrl: videoToken ? proxy.downloadManager.publicUrl(videoToken) || videoUrl : undefined,
76
+ severity: severity === 'warn' ? Severity.Warn : severity === 'error' ? Severity.Error : Severity.Info,
77
+ },
78
+ source: { kind: 'system', id: 'assistant' },
79
+ targets: own,
80
+ });
81
+ const delivered = results.filter((r) => r.ok).length;
82
+ return { ok: delivered > 0, devices: own.length, delivered, image: eventId ?? camera, video: Boolean(videoUrl) };
47
83
  });
48
- const delivered = results.filter((r) => r.ok).length;
49
- return { ok: delivered > 0, devices: own.length, delivered, image: thumbnail ? camera : undefined, video: Boolean(videoUrl) };
50
- });
51
- export const notificationTools = [sendNotification];
84
+ return [sendNotification];
85
+ }
52
86
  //# sourceMappingURL=notifications.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"notifications.js","sourceRoot":"","sources":["../../../../../src/assistant/tools/notifications.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"notifications.js","sourceRoot":"","sources":["../../../../../src/assistant/tools/notifications.ts"],"names":[],"mappings":"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"}