@camera.ui/server 2.1.7 → 2.1.8

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 (283) hide show
  1. package/dist/interface/assets/{404-D0lfw52Y.js → 404-vRjJVgl4.js} +1 -1
  2. package/dist/interface/assets/{About-DaaVZ9Cn.js → About-CO9cx5Gp.js} +1 -1
  3. package/dist/interface/assets/Automation-DDNhcjDg.js +3 -0
  4. package/dist/interface/assets/AutomationImport-DAeFd-SZ.js +2 -0
  5. package/dist/interface/assets/{AutomationStore-CeRF0iz6.js → AutomationStore-NyXuw3tI.js} +2 -2
  6. package/dist/interface/assets/{AutomationStoreDetail-DcCFUBJf.js → AutomationStoreDetail-Dz9Y8j8g.js} +2 -2
  7. package/dist/interface/assets/{Automations-GMWeSNQv.js → Automations-BeGe7iQE.js} +2 -2
  8. package/dist/interface/assets/Camera-C0sNg85L.js +2 -0
  9. package/dist/interface/assets/{CameraConsole-B0crXI59.js → CameraConsole-S9Il0g0K.js} +1 -1
  10. package/dist/interface/assets/{Cameras-V_twilcC.js → Cameras-lDMBkoUW.js} +2 -2
  11. package/dist/interface/assets/{Camview-DxxONfeK.css → Camview-CS7PIBMz.css} +1 -1
  12. package/dist/interface/assets/Camview-DzMmXQvW.js +1 -0
  13. package/dist/interface/assets/Config-B0cy1RIU.js +2 -0
  14. package/dist/interface/assets/ConfigActionCameraControl-BMlRbdRM.js +1 -0
  15. package/dist/interface/assets/{ConfigActionDelay-DjFp5qpw.js → ConfigActionDelay-DrzMP_7q.js} +1 -1
  16. package/dist/interface/assets/{ConfigActionHttp-Cmjz4iAV.js → ConfigActionHttp-BUANm5zh.js} +1 -1
  17. package/dist/interface/assets/{ConfigActionImageInput-B0Hll2M3.js → ConfigActionImageInput-CKvnzs_4.js} +1 -1
  18. package/dist/interface/assets/{ConfigActionMqtt-D2boY4u0.js → ConfigActionMqtt-Cz-fMzXH.js} +1 -1
  19. package/dist/interface/assets/{ConfigActionNotification-7iRd0L5l.js → ConfigActionNotification-exxG4m-k.js} +1 -1
  20. package/dist/interface/assets/ConfigActionNotificationControl-BMFbm9lJ.js +1 -0
  21. package/dist/interface/assets/{ConfigActionOutput-BTGUzNQW.js → ConfigActionOutput-js-UUBci.js} +1 -1
  22. package/dist/interface/assets/{ConfigActionPlugin-CzspRdJx.js → ConfigActionPlugin-B5hrC_B6.js} +1 -1
  23. package/dist/interface/assets/{ConfigActionSensor-CPK-s1E2.js → ConfigActionSensor-BESCtedA.js} +1 -1
  24. package/dist/interface/assets/{ConfigActionSnapshot-CcSw9Yw-.js → ConfigActionSnapshot-Uxz9dCqh.js} +1 -1
  25. package/dist/interface/assets/{ConfigActionVariable-BCDtM13I.js → ConfigActionVariable-CsiC6bgF.js} +1 -1
  26. package/dist/interface/assets/{ConfigConditionIfElse-DZJkBeHI.js → ConfigConditionIfElse-CiScJB42.js} +1 -1
  27. package/dist/interface/assets/{ConfigConditionSensorState-CxWutq1T.js → ConfigConditionSensorState-CbDfsuOl.js} +1 -1
  28. package/dist/interface/assets/{ConfigConditionSwitch-DBRR9cW4.js → ConfigConditionSwitch-B7E5DAoC.js} +1 -1
  29. package/dist/interface/assets/{ConfigConditionTime-B-5s6QW2.js → ConfigConditionTime-BmeGYmwH.js} +1 -1
  30. package/dist/interface/assets/{ConfigSensorValueInput-B9MmHF-E.js → ConfigSensorValueInput-CNTToTaw.js} +1 -1
  31. package/dist/interface/assets/{ConfigTriggerDetection-DlY8ne3V.js → ConfigTriggerDetection-ijTkd_SS.js} +1 -1
  32. package/dist/interface/assets/ConfigTriggerGeofence-Q7LQpVoM.js +1 -0
  33. package/dist/interface/assets/{ConfigTriggerManual-BSxA9fGt.js → ConfigTriggerManual-Z1_1wUUM.js} +1 -1
  34. package/dist/interface/assets/{ConfigTriggerMqtt-C7sFSgYi.js → ConfigTriggerMqtt-BBvD0ow9.js} +1 -1
  35. package/dist/interface/assets/{ConfigTriggerSchedule-fqVY5k3V.js → ConfigTriggerSchedule-B0rMjsZL.js} +1 -1
  36. package/dist/interface/assets/{ConfigTriggerSensor-BMZ74d8e.js → ConfigTriggerSensor-B1p15KGD.js} +1 -1
  37. package/dist/interface/assets/{ConfigTriggerSystem-B8zwJpaY.js → ConfigTriggerSystem-Du-AkCKy.js} +1 -1
  38. package/dist/interface/assets/{ConfigTriggerWebhook-SklqcrZq.js → ConfigTriggerWebhook-Debqt-nw.js} +1 -1
  39. package/dist/interface/assets/Console-Gu1eu82G.js +1 -0
  40. package/dist/interface/assets/{CuiAutomationRunsDialog-N6NFABq2.js → CuiAutomationRunsDialog-CxcWpqrI.js} +1 -1
  41. package/dist/interface/assets/CuiBottomSheet-BkmkKf1u.js +1 -0
  42. package/dist/interface/assets/{CuiBottomSheet-BuK_lFkK.js → CuiBottomSheet-DECWGdrp.js} +1 -1
  43. package/dist/interface/assets/CuiCameraPipCard-CuZZZ7Cv.js +1 -0
  44. package/dist/interface/assets/{CuiCameraRecordings-z4WblFJ9.js → CuiCameraRecordings-BxEA_Vhd.js} +1 -1
  45. package/dist/interface/assets/CuiCameraShares-D32cM63m.js +1 -0
  46. package/dist/interface/assets/CuiCameraTable-67Itb7my.js +1 -0
  47. package/dist/interface/assets/{CuiCameraTable-DOPSHZ28.js → CuiCameraTable-Bk9N-Oc6.js} +1 -1
  48. package/dist/interface/assets/{CuiConsole-BOfQ5I3b.js → CuiConsole-De9JpSLz.js} +2 -2
  49. package/dist/interface/assets/{CuiDataTable-DBNU5MJ_.js → CuiDataTable-P8bWN0ZK.js} +1 -1
  50. package/dist/interface/assets/{CuiLightControl-CCwkaMEn.js → CuiLightControl-D5Z1AqWH.js} +1 -1
  51. package/dist/interface/assets/{CuiList-BOMdGNXj.js → CuiList-w69dERIq.js} +1 -1
  52. package/dist/interface/assets/CuiPluginCard-D3x9FPb6.js +2 -0
  53. package/dist/interface/assets/CuiPluginCategoryChip-CQ2FJafE.js +1 -0
  54. package/dist/interface/assets/{CuiPluginOAuthButton-6HQLdlfg.js → CuiPluginOAuthButton-CNxj7cuf.js} +2 -2
  55. package/dist/interface/assets/{CuiPluginTrustBadge-BS9iEcZr.js → CuiPluginTrustBadge-DYsEz6WI.js} +1 -1
  56. package/dist/interface/assets/CuiQRCode-CZnspFFw.js +1 -0
  57. package/dist/interface/assets/{CuiRecordingsGrid-Sv3uyj9a.css → CuiRecordingsGrid-Q4C3aeLo.css} +1 -1
  58. package/dist/interface/assets/CuiRecordingsGrid-wEaU6-3c.js +1 -0
  59. package/dist/interface/assets/CuiSchema-DLV1lIiB.js +1 -0
  60. package/dist/interface/assets/{CuiTopNavbarItem-MCdYsYHh.js → CuiTopNavbarItem-7yu9c68R.js} +1 -1
  61. package/dist/interface/assets/{Faces-DDTbgPtz.js → Faces-BlPQek1-.js} +1 -1
  62. package/dist/interface/assets/FirstSteps-C-DKv_P2.js +1 -0
  63. package/dist/interface/assets/Instances-Bmb-yWM-.js +1 -0
  64. package/dist/interface/assets/{Logs-DEQlc2WM.js → Logs-DxHqkMpx.js} +1 -1
  65. package/dist/interface/assets/{Menu-0EVo1-xs.js → Menu-DceReBlq.js} +1 -1
  66. package/dist/interface/assets/Metrics-Cw_Z_e0C.js +1 -0
  67. package/dist/interface/assets/{OAuthDeviceFlow--YqcKa9u.js → OAuthDeviceFlow-CLi6l8jS.js} +1 -1
  68. package/dist/interface/assets/Plugin-BBVxbQeT.js +1 -0
  69. package/dist/interface/assets/{PluginConsole-BB_dbd25.js → PluginConsole-xOY_kwz_.js} +1 -1
  70. package/dist/interface/assets/{PluginDetail-Y_jg8hAX.js → PluginDetail-D2RncxpL.js} +2 -2
  71. package/dist/interface/assets/{PluginSchema-C4dQGJOV.js → PluginSchema-DG3ou73v.js} +1 -1
  72. package/dist/interface/assets/PluginSearch-CBhloRm6.js +1 -0
  73. package/dist/interface/assets/PluginSearch-RGhSeM1T.js +2 -0
  74. package/dist/interface/assets/{PluginUpdateProgress-BjeH5abL.js → PluginUpdateProgress-Bx0MXwAk.js} +1 -1
  75. package/dist/interface/assets/{Plugins-Kz1A-VUA.js → Plugins-COHwVV0A.js} +1 -1
  76. package/dist/interface/assets/Recordings-H5qOm_rD.js +1 -0
  77. package/dist/interface/assets/Recordings-zdTzwv7C.css +1 -0
  78. package/dist/interface/assets/{SensorEdit-CZyv_BYp.js → SensorEdit-C-H_3ap8.js} +1 -1
  79. package/dist/interface/assets/{SensorHistory-Mr03IqiL.js → SensorHistory-CTIUwIWN.js} +1 -1
  80. package/dist/interface/assets/Sensors-BUpob7LU.css +1 -0
  81. package/dist/interface/assets/Sensors-lPcOdHJN.js +2 -0
  82. package/dist/interface/assets/{Settings-CIv_iZ_m.js → Settings-BUoXoFiH.js} +1 -1
  83. package/dist/interface/assets/{Settings-B1MnGPuf.css → Settings-jQIhZFRY.css} +1 -1
  84. package/dist/interface/assets/SettingsAccount-CudWgknL.js +1 -0
  85. package/dist/interface/assets/SettingsAccount-DUy_W02_.js +1 -0
  86. package/dist/interface/assets/{SettingsAppearance-DEQyCR5b.js → SettingsAppearance-CoTdsIwM.js} +1 -1
  87. package/dist/interface/assets/SettingsAppearance-eZsdWWp3.js +1 -0
  88. package/dist/interface/assets/{SettingsBackup-4y9MuseJ.js → SettingsBackup-ibb5I5Jv.js} +1 -1
  89. package/dist/interface/assets/{SettingsList-DqyvUuS3.js → SettingsList-W5FvbkXm.js} +1 -1
  90. package/dist/interface/assets/SettingsMqtt-Ct42icAW.js +1 -0
  91. package/dist/interface/assets/SettingsNotifications-B4lyMlLR.js +1 -0
  92. package/dist/interface/assets/{SettingsPermissions-C_8g_nff.js → SettingsPermissions-Bsv293ri.js} +1 -1
  93. package/dist/interface/assets/{SettingsRecordings-r9AwjQZX.js → SettingsRecordings-COUi9BQg.js} +1 -1
  94. package/dist/interface/assets/SettingsRemote-Dq_BD0fk.js +1 -0
  95. package/dist/interface/assets/SettingsSystem-C5xROdA0.js +2 -0
  96. package/dist/interface/assets/SettingsUsers-Cjk6mevW.js +1 -0
  97. package/dist/interface/assets/{Terminal-Xo2uy0RX.js → Terminal-BIdBrL4g.js} +1 -1
  98. package/dist/interface/assets/{VariableInput-C3Jbe-vC.js → VariableInput-DhAhhfsm.js} +1 -1
  99. package/dist/interface/assets/{VariableSuggestions-pOrYkqys.js → VariableSuggestions-q0Jd1DVI.js} +1 -1
  100. package/dist/interface/assets/{VersionsHandler-BhBynPF8.js → VersionsHandler-XEn3uFy7.js} +1 -1
  101. package/dist/interface/assets/{VirtualSensorCreate-B3bwlAJz.js → VirtualSensorCreate-_E5E0U7E.js} +1 -1
  102. package/dist/interface/assets/Workers-DVABUc39.js +2 -0
  103. package/dist/interface/assets/api-AVHJeggR.css +2 -0
  104. package/dist/interface/assets/{api-B7yg8bdk.js → api-C7Yv5Scr.js} +1 -1
  105. package/dist/interface/assets/api-CmdQlVDD.js +2 -0
  106. package/dist/interface/assets/{auth-y-X5RKO6.js → auth-BixzEnBM.js} +1 -1
  107. package/dist/interface/assets/{automations-h1Wvnh36.js → automations-K8XPcP3U.js} +1 -1
  108. package/dist/interface/assets/cameras.schema-A_6JklLs.js +1 -0
  109. package/dist/interface/assets/cloudHandoff-D0ytFfHK.js +1 -0
  110. package/dist/interface/assets/{config-BZTZOfxI.js → config-CURuT8_k.js} +1 -1
  111. package/dist/interface/assets/{flowSchema-Dxxlrn77.js → flowSchema-szT9B0sA.js} +1 -1
  112. package/dist/interface/assets/intercomService-BjB4QQiX.js +1 -0
  113. package/dist/interface/assets/{main-kdyR9bI7.css → main-B1ryIyTr.css} +1 -1
  114. package/dist/interface/assets/main-BdIdmDhs.js +3 -0
  115. package/dist/interface/assets/mqtt-uItF3Vd7.js +1 -0
  116. package/dist/interface/assets/{nodeDefinitions-DQQlFmPN.js → nodeDefinitions-c5rXs9EW.js} +1 -1
  117. package/dist/interface/assets/{notifications-C8eyTPRM.js → notifications-CuZPzI4-.js} +1 -1
  118. package/dist/interface/assets/{plugins-D0Txz0BA.js → plugins-QEqfAk0G.js} +1 -1
  119. package/dist/interface/assets/round-alt-arrow-left-bold-CfccdiWp.js +1 -0
  120. package/dist/interface/assets/{round-restart-alt-Bw-T1H6w.js → round-restart-alt-B_7HR24a.js} +1 -1
  121. package/dist/interface/assets/{sensorIcons-r5wmAxeD.js → sensorIcons-BujySw0j.js} +1 -1
  122. package/dist/interface/assets/{sensors-MIbrTUSa.js → sensors-BxvL01cB.js} +1 -1
  123. package/dist/interface/assets/{server-alwZXRo-.js → server-CDm6FwHH.js} +1 -1
  124. package/dist/interface/assets/{theme-qmnHJ2WT.js → theme-CRw47tnu.js} +1 -1
  125. package/dist/interface/assets/{types-DBWHsh0W.js → types-DtdpTPfZ.js} +1 -1
  126. package/dist/interface/assets/types-R10eIequ.js +1 -0
  127. package/dist/interface/assets/types-p_uC0rfp.js +1 -0
  128. package/dist/interface/assets/useAppVersion-BxTTVLKg.js +1 -0
  129. package/dist/interface/assets/useBackupRestore-DLieDBFC.js +1 -0
  130. package/dist/interface/assets/{useCameraOptions-DYZKQx7X.js → useCameraOptions-DMC2KjMS.js} +1 -1
  131. package/dist/interface/assets/{useLogsSocket-DvwkpzT2.js → useLogsSocket-CmyalQi8.js} +1 -1
  132. package/dist/interface/assets/{useNavLayout-CTX4KBkz.js → useNavLayout-BacPxpZv.js} +1 -1
  133. package/dist/interface/assets/usePermissions-C2wQBWmH.js +1 -0
  134. package/dist/interface/assets/{usePluginUpdates-CiqRTrjF.js → usePluginUpdates-CyjxFTTi.js} +1 -1
  135. package/dist/interface/assets/usePushRegistration-BPSfvI_w.js +2 -0
  136. package/dist/interface/assets/{useServerRestart-Bqpn8N4T.js → useServerRestart-x8p2rFqn.js} +1 -1
  137. package/dist/interface/assets/{useStreamStatus-BWCnwuaj.js → useStreamStatus-PMpl519O.js} +1 -1
  138. package/dist/interface/assets/{useUpdateChannel-Cxm4QR-6.js → useUpdateChannel-ChscS5KW.js} +1 -1
  139. package/dist/interface/assets/{useUserOptions-B2LNsU9C.js → useUserOptions-YiEj2ox6.js} +1 -1
  140. package/dist/interface/assets/{vendor-cameraui-C6beJsya.js → vendor-cameraui-Cf0XVNQ7.js} +1 -1
  141. package/dist/interface/assets/{vendor-core-_ft7qIgH.js → vendor-core-u4xNQ-aF.js} +1 -1
  142. package/dist/interface/assets/{vendor-primevue-DfyAPSov.js → vendor-primevue-BDu2BpXv.js} +1 -1
  143. package/dist/interface/index.html +26 -27
  144. package/dist/interface/sw.js +1 -1
  145. package/dist/server/package.json +3 -3
  146. package/dist/server/requirements.txt +1 -1
  147. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/__init__.py +8 -2
  148. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/__init__.py +10 -2
  149. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/config.py +4 -10
  150. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/detection.py +77 -10
  151. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/device.py +7 -13
  152. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/events.py +2 -0
  153. package/dist/server/src/api/controllers/cameras.controller.d.ts +2 -7
  154. package/dist/server/src/api/controllers/cameras.controller.js +2 -94
  155. package/dist/server/src/api/controllers/cameras.controller.js.map +1 -1
  156. package/dist/server/src/api/database/index.d.ts +1 -1
  157. package/dist/server/src/api/database/index.js +1 -1
  158. package/dist/server/src/api/database/migrations/v2-1-6.d.ts +3 -0
  159. package/dist/server/src/api/database/migrations/v2-1-6.js +62 -0
  160. package/dist/server/src/api/database/migrations/v2-1-6.js.map +1 -0
  161. package/dist/server/src/api/database/migrations/v2-1-7.d.ts +3 -0
  162. package/dist/server/src/api/database/migrations/v2-1-7.js +44 -0
  163. package/dist/server/src/api/database/migrations/v2-1-7.js.map +1 -0
  164. package/dist/server/src/api/database/types.d.ts +1 -0
  165. package/dist/server/src/api/routes/cameras.routes.js +5 -62
  166. package/dist/server/src/api/routes/cameras.routes.js.map +1 -1
  167. package/dist/server/src/api/schemas/cameras.schema.d.ts +365 -152
  168. package/dist/server/src/api/schemas/cameras.schema.js +47 -38
  169. package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
  170. package/dist/server/src/api/services/cameras.service.d.ts +2 -4
  171. package/dist/server/src/api/services/cameras.service.js +2 -32
  172. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  173. package/dist/server/src/api/types/index.d.ts +3 -9
  174. package/dist/server/src/automations/actions/cameraControl.js +15 -1
  175. package/dist/server/src/automations/actions/cameraControl.js.map +1 -1
  176. package/dist/server/src/automations/actions/notificationControl.js +10 -1
  177. package/dist/server/src/automations/actions/notificationControl.js.map +1 -1
  178. package/dist/server/src/camera/controller.d.ts +1 -0
  179. package/dist/server/src/camera/controller.js +21 -8
  180. package/dist/server/src/camera/controller.js.map +1 -1
  181. package/dist/server/src/camera/decoder/child.d.ts +2 -4
  182. package/dist/server/src/camera/decoder/child.js +4 -22
  183. package/dist/server/src/camera/decoder/child.js.map +1 -1
  184. package/dist/server/src/camera/decoder/detection-coordinator.d.ts +5 -8
  185. package/dist/server/src/camera/decoder/detection-coordinator.js +53 -38
  186. package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
  187. package/dist/server/src/camera/decoder/detection-pipeline.d.ts +11 -3
  188. package/dist/server/src/camera/decoder/detection-pipeline.js +72 -14
  189. package/dist/server/src/camera/decoder/detection-pipeline.js.map +1 -1
  190. package/dist/server/src/camera/decoder/event-manager.d.ts +2 -0
  191. package/dist/server/src/camera/decoder/event-manager.js +14 -0
  192. package/dist/server/src/camera/decoder/event-manager.js.map +1 -1
  193. package/dist/server/src/camera/decoder/event-thumbnailer.d.ts +2 -0
  194. package/dist/server/src/camera/decoder/event-thumbnailer.js +1 -1
  195. package/dist/server/src/camera/decoder/event-thumbnailer.js.map +1 -1
  196. package/dist/server/src/camera/decoder/frame-scaler.d.ts +8 -2
  197. package/dist/server/src/camera/decoder/frame-scaler.js +56 -5
  198. package/dist/server/src/camera/decoder/frame-scaler.js.map +1 -1
  199. package/dist/server/src/camera/decoder/ptz/autotracker.d.ts +4 -0
  200. package/dist/server/src/camera/decoder/ptz/autotracker.js +97 -18
  201. package/dist/server/src/camera/decoder/ptz/autotracker.js.map +1 -1
  202. package/dist/server/src/camera/decoder/sources/buffered-source.d.ts +2 -0
  203. package/dist/server/src/camera/decoder/sources/buffered-source.js +1 -1
  204. package/dist/server/src/camera/decoder/sources/buffered-source.js.map +1 -1
  205. package/dist/server/src/camera/decoder/types.d.ts +1 -0
  206. package/dist/server/src/camera/decoder/types.js +3 -0
  207. package/dist/server/src/camera/decoder/types.js.map +1 -1
  208. package/dist/server/src/camera/decoder/worker.js +4 -24
  209. package/dist/server/src/camera/decoder/worker.js.map +1 -1
  210. package/dist/server/src/camera/index.d.ts +2 -4
  211. package/dist/server/src/camera/index.js +3 -8
  212. package/dist/server/src/camera/index.js.map +1 -1
  213. package/dist/server/src/camera/privacy/mask.d.ts +27 -0
  214. package/dist/server/src/camera/privacy/mask.js +204 -0
  215. package/dist/server/src/camera/privacy/mask.js.map +1 -0
  216. package/dist/server/src/camera/privacy/snapshot.d.ts +13 -0
  217. package/dist/server/src/camera/privacy/snapshot.js +126 -0
  218. package/dist/server/src/camera/privacy/snapshot.js.map +1 -0
  219. package/dist/server/src/camera/utils/filter.d.ts +3 -3
  220. package/dist/server/src/camera/utils/filter.js.map +1 -1
  221. package/dist/server/src/camera/zones.d.ts +2 -0
  222. package/dist/server/src/camera/zones.js +11 -0
  223. package/dist/server/src/camera/zones.js.map +1 -0
  224. package/dist/server/src/manager/notificationManager.d.ts +2 -0
  225. package/dist/server/src/manager/notificationManager.js +21 -2
  226. package/dist/server/src/manager/notificationManager.js.map +1 -1
  227. package/dist/server/src/plugins/runtime/python/proxy/camera_device.py +8 -13
  228. package/dist/server/src/plugins/schema.js +1 -1
  229. package/dist/server/src/plugins/schema.js.map +1 -1
  230. package/dist/server/src/rpc/interfaces/frameworker.d.ts +2 -4
  231. package/package.json +3 -3
  232. package/dist/interface/assets/Automation-DQyPNAzK.js +0 -3
  233. package/dist/interface/assets/AutomationImport-BDD_LuC1.js +0 -2
  234. package/dist/interface/assets/Camera-CYxRoESX.js +0 -2
  235. package/dist/interface/assets/Camview-CSb2iVBf.js +0 -1
  236. package/dist/interface/assets/Config-BKuXgZxF.js +0 -2
  237. package/dist/interface/assets/ConfigActionCameraControl-TFe1_K6j.js +0 -1
  238. package/dist/interface/assets/ConfigActionNotificationControl-DI_t2wHh.js +0 -1
  239. package/dist/interface/assets/ConfigTriggerGeofence-DJt-3FpV.js +0 -1
  240. package/dist/interface/assets/Console-BZB3MZKj.js +0 -1
  241. package/dist/interface/assets/CuiBottomSheet-BnKYWBBA.js +0 -1
  242. package/dist/interface/assets/CuiCameraPipCard-DaJlFY1g.js +0 -1
  243. package/dist/interface/assets/CuiCameraShares-CvKMe_kX.js +0 -1
  244. package/dist/interface/assets/CuiCameraTable-_7KwbPyM.js +0 -1
  245. package/dist/interface/assets/CuiPluginCard-CvNfBRhG.js +0 -2
  246. package/dist/interface/assets/CuiPluginCategoryChip-JG_8D7Wt.js +0 -1
  247. package/dist/interface/assets/CuiQRCode-Vd-1ssJK.js +0 -1
  248. package/dist/interface/assets/CuiRecordingsGrid-skKnK074.js +0 -1
  249. package/dist/interface/assets/CuiSchema-DvY3Bdnz.js +0 -1
  250. package/dist/interface/assets/FirstSteps-T4ra4jxE.js +0 -1
  251. package/dist/interface/assets/Instances-D_Td0oJ-.js +0 -1
  252. package/dist/interface/assets/Metrics-FFvFP2kR.js +0 -1
  253. package/dist/interface/assets/Plugin-CKcptqV9.js +0 -1
  254. package/dist/interface/assets/PluginSearch-D2efYsof.js +0 -1
  255. package/dist/interface/assets/PluginSearch-gY-PHMyu.js +0 -2
  256. package/dist/interface/assets/Recordings-80Xd1V3L.css +0 -1
  257. package/dist/interface/assets/Recordings-BlBmyZlM.js +0 -1
  258. package/dist/interface/assets/Sensors-B-Qhfr5i.css +0 -1
  259. package/dist/interface/assets/Sensors-CHbtecpf.js +0 -2
  260. package/dist/interface/assets/SettingsAccount-DA67jXmp.js +0 -1
  261. package/dist/interface/assets/SettingsAccount-DPPwXOlM.js +0 -1
  262. package/dist/interface/assets/SettingsAppearance-C92Nlobb.js +0 -1
  263. package/dist/interface/assets/SettingsMqtt-CuTZBTrA.js +0 -1
  264. package/dist/interface/assets/SettingsNotifications-D7Vs6NoU.js +0 -1
  265. package/dist/interface/assets/SettingsRemote-oDVzvhmy.js +0 -1
  266. package/dist/interface/assets/SettingsSystem-QfBIPq4i.js +0 -2
  267. package/dist/interface/assets/SettingsUsers-CqRJ8-7H.js +0 -1
  268. package/dist/interface/assets/Workers-tgzMqP3o.js +0 -2
  269. package/dist/interface/assets/api-1K2Gzz8B.js +0 -2
  270. package/dist/interface/assets/api-Bj4QRftG.css +0 -2
  271. package/dist/interface/assets/cameras.schema-CKnsFYBP.js +0 -1
  272. package/dist/interface/assets/cctv-BA5DvNlE.js +0 -1
  273. package/dist/interface/assets/cloudHandoff-qezHiAZI.js +0 -1
  274. package/dist/interface/assets/main-Ei2ORV9y.js +0 -3
  275. package/dist/interface/assets/mqtt-CCq5JGGk.js +0 -1
  276. package/dist/interface/assets/round-alt-arrow-left-bold-BxX4ufd0.js +0 -1
  277. package/dist/interface/assets/types-BTVMzSuj.js +0 -1
  278. package/dist/interface/assets/types-vaT6wuY0.js +0 -1
  279. package/dist/interface/assets/useAppVersion-BRc6OWZP.js +0 -1
  280. package/dist/interface/assets/useBackupRestore-DCO_Pw9q.js +0 -1
  281. package/dist/interface/assets/useElectron-CtslU_0f.js +0 -1
  282. package/dist/interface/assets/usePermissions-DpsfFydh.js +0 -1
  283. package/dist/interface/assets/usePushRegistration-Coz8RZob.js +0 -2
@@ -32,6 +32,7 @@ export declare class CameraController extends CameraDevice implements CameraDevi
32
32
  private closeProxy?;
33
33
  private detectionEventUnsub?;
34
34
  private autoRefreshInterval?;
35
+ private snapshotPrivacy;
35
36
  constructor(camera: Camera, logger: Logger);
36
37
  get logPath(): string;
37
38
  get streamSource(): CameraDeviceSource;
@@ -18,6 +18,7 @@ import { buildSnapshotUrl, buildTargetUrl, createSourceName } from '../utils/cam
18
18
  import { getSourceCodecInfo, setSourceCodecInfo } from './codecCache.js';
19
19
  import { FrameWorker } from './decoder/worker.js';
20
20
  import { CameraDevice } from './index.js';
21
+ import { SnapshotPrivacy } from './privacy/snapshot.js';
21
22
  import { SensorController } from './sensors/controller.js';
22
23
  import { Fmp4Session } from './streaming/fmp4-session.js';
23
24
  import { RtpSession } from './streaming/rtp-session.js';
@@ -40,8 +41,11 @@ let CameraController = class CameraController extends CameraDevice {
40
41
  closeProxy;
41
42
  detectionEventUnsub;
42
43
  autoRefreshInterval;
44
+ snapshotPrivacy;
43
45
  constructor(camera, logger) {
44
46
  super(camera, logger);
47
+ this.snapshotPrivacy = new SnapshotPrivacy(logger);
48
+ this.snapshotPrivacy.update(camera.zones);
45
49
  this.api = container.resolve('api');
46
50
  this.go2rtcApi = container.resolve('go2rtcApi');
47
51
  this.loggerService = container.resolve('logger');
@@ -156,14 +160,21 @@ let CameraController = class CameraController extends CameraDevice {
156
160
  if (!source) {
157
161
  throw new Error('Source not found');
158
162
  }
163
+ const storeSnapshot = async (s, data) => {
164
+ const masked = await this.snapshotPrivacy.apply(data);
165
+ if (masked && masked.byteLength > 0) {
166
+ this.snapshotCache.set(s._id, { data: masked, fetchedAt: Date.now() });
167
+ }
168
+ return masked;
169
+ };
159
170
  const fetchSnapshotFromSource = async (s) => {
160
171
  try {
161
172
  const sourceName = createSourceName(this.name, s.name);
162
173
  const snapshot = await this.go2rtcApi.snapshotRoute.jpeg({ src: sourceName, ...(forceNew ? { gop: 0 } : {}) });
163
- if (snapshot.byteLength > 0) {
164
- this.snapshotCache.set(s._id, { data: snapshot, fetchedAt: Date.now() });
174
+ if (snapshot.byteLength === 0) {
175
+ return snapshot;
165
176
  }
166
- return snapshot;
177
+ return await storeSnapshot(s, snapshot);
167
178
  }
168
179
  catch (error) {
169
180
  if (error.name === 'AbortError' || error.message?.includes('aborted')) {
@@ -178,8 +189,7 @@ let CameraController = class CameraController extends CameraDevice {
178
189
  try {
179
190
  const pluginSnapshot = await this.cameraDeviceProxy?.snapshot?.(s._id, forceNew);
180
191
  if (pluginSnapshot && pluginSnapshot.byteLength > 0) {
181
- this.snapshotCache.set(s._id, { data: pluginSnapshot, fetchedAt: Date.now() });
182
- return pluginSnapshot;
192
+ return await storeSnapshot(s, pluginSnapshot);
183
193
  }
184
194
  }
185
195
  catch {
@@ -299,6 +309,7 @@ let CameraController = class CameraController extends CameraDevice {
299
309
  async cleanup() {
300
310
  this.stopAutoRefresh();
301
311
  this.detectionEventUnsub?.();
312
+ this.snapshotPrivacy.dispose();
302
313
  await this.frameWorker.close();
303
314
  await this.sensorController.destroy();
304
315
  this.removeAllListeners();
@@ -513,9 +524,7 @@ let CameraController = class CameraController extends CameraDevice {
513
524
  'detectionSettings',
514
525
  'ptzAutotrack',
515
526
  'recordingSettings',
516
- 'detectionZones',
517
- 'alertZones',
518
- 'detectionLines',
527
+ 'zones',
519
528
  'frameWorkerSettings',
520
529
  'interfaceSettings',
521
530
  ];
@@ -528,6 +537,10 @@ let CameraController = class CameraController extends CameraDevice {
528
537
  catch {
529
538
  // ignore
530
539
  }
540
+ if (!isEqual(oldCamera.zones?.privacy, newCamera.zones?.privacy, true) || oldCamera.zones?.privacyFallback !== newCamera.zones?.privacyFallback) {
541
+ this.snapshotPrivacy.update(newCamera.zones);
542
+ this.snapshotCache.clear();
543
+ }
531
544
  if (oldCamera.name !== newCamera.name) {
532
545
  this.logger.prefix = newCamera.name;
533
546
  }
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../../src/camera/controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../../src/camera/controller.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { Logger } from '@camera.ui/common/logger';
2
2
  import type { RPCClient } from '@camera.ui/rpc';
3
- import type { AlertZone, CameraDetectionSettings, CameraFrameWorkerSettings, CameraUiSettings, DetectionLine, DetectionZone, PtzAutotrackSettings } from '@camera.ui/sdk';
3
+ import type { CameraDetectionSettings, CameraFrameWorkerSettings, CameraUiSettings, CameraZones, PtzAutotrackSettings } from '@camera.ui/sdk';
4
4
  import type { CoreManagerNamespaces, FrameWorkerNamespaces } from '../../rpc/namespaces.js';
5
5
  import type { DetectionCoordinatorConfig } from './detection-coordinator.js';
6
6
  import type { FrameWorkerPerfSnapshot } from './types.js';
@@ -16,9 +16,7 @@ export declare class FrameWorkerChild {
16
16
  constructor();
17
17
  run(): Promise<void>;
18
18
  initialize(config: DetectionCoordinatorConfig): Promise<void>;
19
- updateZones(zones: DetectionZone[]): void;
20
- updateAlertZones(zones: AlertZone[]): void;
21
- updateLines(lines: DetectionLine[]): void;
19
+ updateZoneConfig(zones: CameraZones): void;
22
20
  updateDetectionSettings(settings: CameraDetectionSettings): void;
23
21
  updatePtzAutotrackSettings(settings: PtzAutotrackSettings): void;
24
22
  updateFrameWorkerSettings(settings: CameraFrameWorkerSettings): void;
@@ -92,14 +92,8 @@ let FrameWorkerChild = class FrameWorkerChild {
92
92
  isolatedConnection: true,
93
93
  });
94
94
  }
95
- updateZones(zones) {
96
- this.detectionCoordinator?.updateZones(zones);
97
- }
98
- updateAlertZones(zones) {
99
- this.detectionCoordinator?.updateAlertZones(zones);
100
- }
101
- updateLines(lines) {
102
- this.detectionCoordinator?.updateLines(lines);
95
+ updateZoneConfig(zones) {
96
+ this.detectionCoordinator?.updateZoneConfig(zones);
103
97
  }
104
98
  updateDetectionSettings(settings) {
105
99
  this.detectionCoordinator?.updateDetectionSettings(settings);
@@ -150,21 +144,9 @@ __decorate([
150
144
  __decorate([
151
145
  RPCMethod,
152
146
  __metadata("design:type", Function),
153
- __metadata("design:paramtypes", [Array]),
154
- __metadata("design:returntype", void 0)
155
- ], FrameWorkerChild.prototype, "updateZones", null);
156
- __decorate([
157
- RPCMethod,
158
- __metadata("design:type", Function),
159
- __metadata("design:paramtypes", [Array]),
160
- __metadata("design:returntype", void 0)
161
- ], FrameWorkerChild.prototype, "updateAlertZones", null);
162
- __decorate([
163
- RPCMethod,
164
- __metadata("design:type", Function),
165
- __metadata("design:paramtypes", [Array]),
147
+ __metadata("design:paramtypes", [Object]),
166
148
  __metadata("design:returntype", void 0)
167
- ], FrameWorkerChild.prototype, "updateLines", null);
149
+ ], FrameWorkerChild.prototype, "updateZoneConfig", null);
168
150
  __decorate([
169
151
  RPCMethod,
170
152
  __metadata("design:type", Function),
@@ -1 +1 @@
1
- {"version":3,"file":"child.js","sourceRoot":"","sources":["../../../../../src/camera/decoder/child.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"child.js","sourceRoot":"","sources":["../../../../../src/camera/decoder/child.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { SensorType } from '@camera.ui/sdk';
2
2
  import type { Logger } from '@camera.ui/common/logger';
3
3
  import type { RPCClient } from '@camera.ui/rpc';
4
- import type { AlertZone, CameraDetectionSettings, CameraFrameWorkerSettings, CameraUiSettings, DetectionLine, DetectionZone, PtzAutotrackSettings } from '@camera.ui/sdk';
4
+ import type { CameraDetectionSettings, CameraFrameWorkerSettings, CameraUiSettings, CameraZones, PtzAutotrackSettings } from '@camera.ui/sdk';
5
5
  import type { CoordinatorSensorInfo } from '../../rpc/interfaces/detection.js';
6
6
  import type { CoordinatorSourceUrl, FrameWorkerPerfSnapshot } from './types.js';
7
7
  export interface DetectionCoordinatorConfig {
@@ -11,9 +11,7 @@ export interface DetectionCoordinatorConfig {
11
11
  audioStreamUrl: string;
12
12
  controllerSnapshotSourceId?: string;
13
13
  availableSources?: CoordinatorSourceUrl[];
14
- zones: DetectionZone[];
15
- alertZones?: AlertZone[];
16
- lines: DetectionLine[];
14
+ zones: CameraZones;
17
15
  detectionSettings: CameraDetectionSettings;
18
16
  ptzAutotrack: PtzAutotrackSettings;
19
17
  frameWorkerSettings: CameraFrameWorkerSettings;
@@ -42,6 +40,7 @@ export declare class DetectionCoordinator {
42
40
  private readonly classifierLabels;
43
41
  private readonly feedingSensors;
44
42
  private readonly dwell;
43
+ private readonly privacy;
45
44
  private readonly videoBackoff;
46
45
  private readonly perf;
47
46
  private hqUpgrade?;
@@ -64,9 +63,7 @@ export declare class DetectionCoordinator {
64
63
  get running(): boolean;
65
64
  get detectionSettings(): CameraDetectionSettings;
66
65
  getPerfSnapshot(): FrameWorkerPerfSnapshot;
67
- updateZones(zones: DetectionZone[]): void;
68
- updateAlertZones(zones: AlertZone[]): void;
69
- updateLines(lines: DetectionLine[]): void;
66
+ updateZoneConfig(zones: CameraZones): void;
70
67
  updateDetectionSettings(settings: CameraDetectionSettings): void;
71
68
  updatePtzAutotrackSettings(settings: PtzAutotrackSettings): void;
72
69
  updateFrameWorkerSettings(settings: CameraFrameWorkerSettings): void;
@@ -91,8 +88,8 @@ export declare class DetectionCoordinator {
91
88
  private handleAudioLoopResult;
92
89
  private writeSensorProperties;
93
90
  private buildSnapshot;
91
+ private pipelineZones;
94
92
  private getNormalizedDetectionZones;
95
- private filterAllowedObjectLabels;
96
93
  private applyExternalDetectionFilters;
97
94
  private applyAudioConfidence;
98
95
  private ingestDetectionResult;
@@ -12,7 +12,9 @@ import { isNoRespondersError, RPCClass, RPCMethod } from '@camera.ui/rpc';
12
12
  import { SensorType } from '@camera.ui/sdk';
13
13
  import { NamespaceManager } from '../../rpc/namespaces.js';
14
14
  import { DETECTION_SENSOR_TYPES } from '../../sensors/types.js';
15
- import { normalizePolygon, normalizeZone } from '../utils/filter.js';
15
+ import { PrivacyMask } from '../privacy/mask.js';
16
+ import { normalizePolygon } from '../utils/filter.js';
17
+ import { normalizeZones } from '../zones.js';
16
18
  import { AudioDetectionLoop } from './audio-loop.js';
17
19
  import { CascadeManager } from './cascade-manager.js';
18
20
  import { detectionRecord } from './debug/detection-record.js';
@@ -29,7 +31,7 @@ import { PtzAutotracker } from './ptz/autotracker.js';
29
31
  import { ReconnectBackoff } from './reconnect-backoff.js';
30
32
  import { SecondaryStage } from './secondary-stage.js';
31
33
  import { FrameSource } from './sources/frame-source.js';
32
- import { DETECT_TIMEOUT_MS, ensureDetectionBoxes, MOTION_WIDTH_MAP } from './types.js';
34
+ import { DETECT_TIMEOUT_MS, ensureDetectionBoxes, isFullFrameBox, MOTION_WIDTH_MAP } from './types.js';
33
35
  const MOMENT_EVENTS = new Set(['objectEntered', 'objectWoke', 'objectRecovered', 'bestShotUpdated']);
34
36
  const MOMENT_MOVING_SPEED = 0.05;
35
37
  const MOMENT_ATTRIBUTE_MIN_AREA = 600;
@@ -66,6 +68,7 @@ let DetectionCoordinator = class DetectionCoordinator {
66
68
  classifierLabels = new Map();
67
69
  feedingSensors = new Map();
68
70
  dwell = new DwellManager();
71
+ privacy;
69
72
  videoBackoff = new ReconnectBackoff();
70
73
  // debugging
71
74
  perf = new PerfTracker();
@@ -105,11 +108,14 @@ let DetectionCoordinator = class DetectionCoordinator {
105
108
  };
106
109
  }
107
110
  this.frameSource = new FrameSource(frameSourceConfig, logger);
108
- this.frameScaler = new FrameScaler(null, logger);
109
- this.pipeline = new DetectionPipeline(config.zones, config.detectionSettings);
111
+ this.config.zones = normalizeZones(config.zones);
112
+ this.privacy = new PrivacyMask(logger);
113
+ this.privacy.update(this.config.zones);
114
+ this.frameScaler = new FrameScaler(null, logger, this.privacy);
115
+ this.pipeline = new DetectionPipeline(this.pipelineZones(), config.detectionSettings);
110
116
  this.secondaries = new SecondaryStage(this, this.plugins, this.pipeline, this.frameScaler, this.proxy, logger);
111
- if (config.lines.length > 0) {
112
- this.pipeline.updateLines(config.lines, this.videoAspectRatio);
117
+ if (config.zones.lines.length > 0) {
118
+ this.pipeline.updateLines(config.zones.lines, this.videoAspectRatio);
113
119
  }
114
120
  this.eventManager = new DetectionEventManager(config.cameraId, this.proxy, this.logger);
115
121
  this.eventManager.updateNvrRpc(config.nvrRpc);
@@ -122,6 +128,7 @@ let DetectionCoordinator = class DetectionCoordinator {
122
128
  this.thumbnailer = new EventThumbnailer({
123
129
  frameSource: this.frameSource,
124
130
  frameScaler: this.frameScaler,
131
+ privacy: this.privacy,
125
132
  eventManager: this.eventManager,
126
133
  logger,
127
134
  decoder: this.config.frameWorkerSettings.decoder,
@@ -196,16 +203,12 @@ let DetectionCoordinator = class DetectionCoordinator {
196
203
  getPerfSnapshot() {
197
204
  return { ...this.perf.snapshot(), mainStreamEnabled: this.mainStreamAvailable, frameAnalysis: this.plugins.shouldVideoBeActive() };
198
205
  }
199
- updateZones(zones) {
206
+ updateZoneConfig(zones) {
207
+ zones = normalizeZones(zones);
200
208
  this.config.zones = zones;
201
- this.pipeline.updateZones(zones);
202
- }
203
- updateAlertZones(zones) {
204
- this.config.alertZones = zones;
205
- }
206
- updateLines(lines) {
207
- this.config.lines = lines;
208
- this.pipeline.updateLines(lines, this.videoAspectRatio);
209
+ this.pipeline.updateZones(this.pipelineZones());
210
+ this.privacy.update(zones);
211
+ this.pipeline.updateLines(zones.lines, this.videoAspectRatio);
209
212
  }
210
213
  updateDetectionSettings(settings) {
211
214
  this.config.detectionSettings = settings;
@@ -225,8 +228,8 @@ let DetectionCoordinator = class DetectionCoordinator {
225
228
  }
226
229
  updateInterfaceSettings(settings) {
227
230
  this.config.interfaceSettings = settings;
228
- if (this.config.lines.length > 0) {
229
- this.pipeline.updateLines(this.config.lines, this.videoAspectRatio);
231
+ if (this.config.zones.lines.length > 0) {
232
+ this.pipeline.updateLines(this.config.zones.lines, this.videoAspectRatio);
230
233
  }
231
234
  }
232
235
  async dispose() {
@@ -557,57 +560,69 @@ let DetectionCoordinator = class DetectionCoordinator {
557
560
  detectionZones: this.getNormalizedDetectionZones(),
558
561
  };
559
562
  }
563
+ pipelineZones() {
564
+ return { motion: this.config.zones.motion, object: this.config.zones.object, privacy: this.config.zones.privacy };
565
+ }
560
566
  getNormalizedDetectionZones() {
561
567
  const result = [];
562
- for (const zone of this.config.zones ?? []) {
563
- if (zone.isPrivacyMask)
564
- continue;
568
+ for (const zone of this.config.zones.object) {
565
569
  if (!zone.name)
566
570
  continue;
567
- result.push({ name: zone.name, points: normalizeZone(zone).points });
571
+ result.push({ name: zone.name, points: normalizePolygon(zone.points) });
568
572
  }
569
- for (const zone of this.config.alertZones ?? []) {
573
+ for (const zone of this.config.zones.alert) {
570
574
  if (!zone.name)
571
575
  continue;
572
- result.push({ name: zone.name, points: normalizePolygon(zone.points), match: zone.match ?? 'contain' });
576
+ result.push({
577
+ name: zone.name,
578
+ points: normalizePolygon(zone.points),
579
+ match: zone.match ?? 'contain',
580
+ alertLabels: zone.labels.map((label) => label.toLowerCase()),
581
+ });
573
582
  }
574
583
  return result;
575
584
  }
576
- filterAllowedObjectLabels(detections) {
577
- const allowed = this.config.detectionSettings.object.labels;
578
- if (!allowed || allowed.length === 0 || detections.length === 0)
579
- return detections;
580
- const set = new Set(allowed.map((label) => label.toLowerCase()));
581
- return detections.filter((detection) => set.has(detection.label.toLowerCase()));
582
- }
583
585
  applyExternalDetectionFilters(sensorType, properties) {
584
586
  const raw = properties.detections;
585
587
  if (!Array.isArray(raw) || raw.length === 0)
586
588
  return properties;
587
589
  // the zone filter and the rust merge assume a box on every detection
588
590
  const detections = ensureDetectionBoxes(raw);
591
+ // a camera that reports a label without coordinates gives no position, a
592
+ // zone cannot judge it and the object assist has not run yet
593
+ const positioned = detections.filter((detection) => !isFullFrameBox(detection.box));
594
+ const boxless = detections.filter((detection) => isFullFrameBox(detection.box));
589
595
  let filtered;
596
+ let boxlessLabel;
590
597
  switch (sensorType) {
591
598
  case SensorType.Face:
592
- filtered = this.pipeline.runZoneFilterWithLabel(detections, 'person');
599
+ boxlessLabel = 'person';
600
+ filtered = this.pipeline.runZoneFilterWithLabel(positioned, 'person');
593
601
  break;
594
602
  case SensorType.LicensePlate:
595
- filtered = this.pipeline.runZoneFilterWithLabel(detections, 'vehicle');
603
+ boxlessLabel = 'vehicle';
604
+ filtered = this.pipeline.runZoneFilterWithLabel(positioned, 'vehicle');
596
605
  break;
597
606
  case SensorType.Object:
598
- filtered = this.pipeline.runZoneFilter(this.filterAllowedObjectLabels(detections));
607
+ filtered = this.pipeline.runZoneFilter(positioned);
599
608
  break;
600
609
  case SensorType.Classifier:
601
610
  case SensorType.Motion:
602
- filtered = this.pipeline.runZoneFilter(detections);
611
+ filtered = this.pipeline.runZoneFilter(positioned);
603
612
  break;
604
613
  default:
605
614
  return { ...properties, detections }; // audio etc, no zone filter
606
615
  }
616
+ const survivors = new Set(filtered);
617
+ for (const detection of boxless) {
618
+ if (this.pipeline.objectLabelAllowed(boxlessLabel ?? detection.label))
619
+ survivors.add(detection);
620
+ }
621
+ const kept = detections.filter((detection) => survivors.has(detection));
607
622
  return {
608
623
  ...properties,
609
- detections: filtered,
610
- detected: filtered.length > 0,
624
+ detections: kept,
625
+ detected: kept.length > 0,
611
626
  };
612
627
  }
613
628
  applyAudioConfidence(properties) {
@@ -1119,7 +1134,7 @@ let DetectionCoordinator = class DetectionCoordinator {
1119
1134
  // run the pipeline even on empty frames so Norfair advances its
1120
1135
  // Kalman state; the pose delta keeps predictions stable across pans
1121
1136
  const poseDelta = this.ptzAutotracker.consumePoseDelta();
1122
- const detected = this.filterAllowedObjectLabels(FrameScaler.undoLetterbox(ensureDetectionBoxes(result.detections), objectFrame.geometry));
1137
+ const detected = FrameScaler.undoLetterbox(ensureDetectionBoxes(result.detections), objectFrame.geometry);
1123
1138
  const pipelineResult = this.pipeline.process(detected, poseDelta);
1124
1139
  // the tick that opens a span analysed the low stream (the switch lands
1125
1140
  // next tick), its picture work is worth a one-off HQ decode
@@ -1581,7 +1596,7 @@ let DetectionCoordinator = class DetectionCoordinator {
1581
1596
  this.perf.inferMs += Date.now() - inferStart;
1582
1597
  this.perf.inferCount++;
1583
1598
  const reportedLabels = new Set(reported.map((d) => d.label.toLowerCase()));
1584
- const boxed = this.filterAllowedObjectLabels(FrameScaler.undoLetterbox(ensureDetectionBoxes(result?.detections ?? []), scaled.geometry));
1599
+ const boxed = FrameScaler.undoLetterbox(ensureDetectionBoxes(result?.detections ?? []), scaled.geometry);
1585
1600
  const found = boxed.filter((d) => reportedLabels.size === 0 || reportedLabels.has(d.label.toLowerCase()));
1586
1601
  if (found.length === 0)
1587
1602
  return { detections: reported, assisted: false };