@camera.ui/server 2.0.11 → 2.0.12

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 (292) hide show
  1. package/dist/interface/assets/{404-COkoHYdK.js → 404-Dfyzm8bF.js} +1 -1
  2. package/dist/interface/assets/{About-qJICwbGH.js → About-B4Y3WP7T.js} +1 -1
  3. package/dist/interface/assets/{Adminpanel-D58GDcYK.js → Adminpanel-DSk1uh2x.js} +1 -1
  4. package/dist/interface/assets/Automation-CTSfLcmF.js +2 -0
  5. package/dist/interface/assets/{AutomationImport-jG2DzCAw.js → AutomationImport-B1P0T0Pe.js} +2 -2
  6. package/dist/interface/assets/AutomationStore-ZaaXPPbd.js +2 -0
  7. package/dist/interface/assets/AutomationStoreDetail-B2vc7mTZ.js +2 -0
  8. package/dist/interface/assets/Automations-Bvw-jTKi.js +2 -0
  9. package/dist/interface/assets/Camera-BxmJXk11.js +2 -0
  10. package/dist/interface/assets/{CameraConsole-BjtK8-Jv.js → CameraConsole-CVqgED5u.js} +1 -1
  11. package/dist/interface/assets/Cameras-DT62fcZK.js +652 -0
  12. package/dist/interface/assets/Camview-CqSckgLr.js +1 -0
  13. package/dist/interface/assets/Config-p9t9zgly.js +2 -0
  14. package/dist/interface/assets/{ConfigActionCameraControl-DjD6pSYf.js → ConfigActionCameraControl-BLROOU0q.js} +1 -1
  15. package/dist/interface/assets/{ConfigActionDelay-DGZlBe84.js → ConfigActionDelay-q0pOTOzh.js} +1 -1
  16. package/dist/interface/assets/{ConfigActionHttp-h5zpYYny.js → ConfigActionHttp-DiMXKRGz.js} +1 -1
  17. package/dist/interface/assets/ConfigActionImageInput-u5xX9t3-.js +1 -0
  18. package/dist/interface/assets/{ConfigActionMqtt-BnNmQUNe.js → ConfigActionMqtt-BkZl3uYq.js} +1 -1
  19. package/dist/interface/assets/ConfigActionNotification-DIkFNlKe.js +1 -0
  20. package/dist/interface/assets/{ConfigActionOutput-h2IebNMX.js → ConfigActionOutput-CJF0F4cT.js} +1 -1
  21. package/dist/interface/assets/{ConfigActionPlugin-B6pIqGWe.js → ConfigActionPlugin-rQeJ4umG.js} +1 -1
  22. package/dist/interface/assets/ConfigActionSensor-BWHpkoMs.js +1 -0
  23. package/dist/interface/assets/{ConfigActionSnapshot-Cs2TG5fZ.js → ConfigActionSnapshot-BlvQZl1R.js} +1 -1
  24. package/dist/interface/assets/{ConfigActionVariable-BPK-FHZ-.js → ConfigActionVariable-BMV-BDAk.js} +1 -1
  25. package/dist/interface/assets/{ConfigConditionIfElse-BNfUIXNh.js → ConfigConditionIfElse-C5geCT1S.js} +1 -1
  26. package/dist/interface/assets/ConfigConditionSensorState-8bIGEhQd.js +1 -0
  27. package/dist/interface/assets/{ConfigConditionSwitch-C7_-2l4Z.js → ConfigConditionSwitch-PwrCSnTQ.js} +1 -1
  28. package/dist/interface/assets/{ConfigConditionTime-DCTdB9RZ.js → ConfigConditionTime-DUt_dsr9.js} +1 -1
  29. package/dist/interface/assets/{ConfigSensorValueInput-Dt09C19b.js → ConfigSensorValueInput-CgZWxOMu.js} +1 -1
  30. package/dist/interface/assets/{ConfigTriggerDetection-CVTb6TEu.js → ConfigTriggerDetection-D4UitpXI.js} +1 -1
  31. package/dist/interface/assets/{ConfigTriggerGeofence-Cb62v6rf.js → ConfigTriggerGeofence-Ci-gkmjS.js} +1 -1
  32. package/dist/interface/assets/{ConfigTriggerManual-agJhIaCy.js → ConfigTriggerManual-_PAVLJxz.js} +1 -1
  33. package/dist/interface/assets/{ConfigTriggerMqtt-DWZ79tPv.js → ConfigTriggerMqtt-BtfXQ_Bh.js} +1 -1
  34. package/dist/interface/assets/{ConfigTriggerSchedule-C38lrm2R.js → ConfigTriggerSchedule-CHyW4YQ1.js} +1 -1
  35. package/dist/interface/assets/{ConfigTriggerSensor-BKXoFFFT.js → ConfigTriggerSensor-CZMplCYs.js} +1 -1
  36. package/dist/interface/assets/{ConfigTriggerSystem-DqoMfULb.js → ConfigTriggerSystem-OOffe8rK.js} +1 -1
  37. package/dist/interface/assets/{ConfigTriggerWebhook-DunygdEo.js → ConfigTriggerWebhook-Baul6M1Y.js} +1 -1
  38. package/dist/interface/assets/Console-MXiL0z_X.js +1 -0
  39. package/dist/interface/assets/{CuiActionButton-iaZkXylf.js → CuiActionButton-WFz5I80P.js} +1 -1
  40. package/dist/interface/assets/{CuiAvatar--d4yBFev.js → CuiAvatar-BUwQnIaI.js} +1 -1
  41. package/dist/interface/assets/{CuiBBoxPlayground-BuDfU2lQ.js → CuiBBoxPlayground-J7_8dCvo.js} +1 -1
  42. package/dist/interface/assets/CuiBottomSheet-BA-u9UtN.js +1 -0
  43. package/dist/interface/assets/{CuiBottomSheet-o1iNIub8.js → CuiBottomSheet-CzG0n4Oa.js} +1 -1
  44. package/dist/interface/assets/CuiCameraCard-GH-DR5_s.js +1 -0
  45. package/dist/interface/assets/{CuiCameraPipCard-NA4CctaN.js → CuiCameraPipCard-CL_wj05b.js} +1 -1
  46. package/dist/interface/assets/CuiCameraRecordings-BjErk9Gl.js +1 -0
  47. package/dist/interface/assets/CuiCameraShares-qrJhZMEt.js +1 -0
  48. package/dist/interface/assets/{CuiCameraSnapshot-Dp6cLkMa.js → CuiCameraSnapshot-Dn1QSGrr.js} +1 -1
  49. package/dist/interface/assets/CuiCameraTable-or8VpE34.js +2 -0
  50. package/dist/interface/assets/{CuiDataTable-BDb1Qvzm.js → CuiDataTable-CjXiUFiJ.js} +1 -1
  51. package/dist/interface/assets/CuiFloatingButton-BjpU1EHv.js +1 -0
  52. package/dist/interface/assets/CuiImage-BM4g6edi.css +1 -0
  53. package/dist/interface/assets/CuiImage-Bq3bxOOL.js +1 -0
  54. package/dist/interface/assets/CuiMenu-DtnIPhcr.js +1 -0
  55. package/dist/interface/assets/CuiPluginCard-DKNWUFpR.js +2 -0
  56. package/dist/interface/assets/{CuiPluginCategoryChip-R5WUBAUw.js → CuiPluginCategoryChip-cmfKx-dU.js} +1 -1
  57. package/dist/interface/assets/CuiPluginOAuthButton-C6FQiVkt.js +2 -0
  58. package/dist/interface/assets/CuiPluginTrustBadge-PVZMP1rI.js +1 -0
  59. package/dist/interface/assets/{CuiQRCode-CsxVDVaU.js → CuiQRCode-uQygC1dP.js} +1 -1
  60. package/dist/interface/assets/CuiRecordingsGrid-Cuwd4L67.js +1 -0
  61. package/dist/interface/assets/CuiSchema-CH0GXMWV.js +1 -0
  62. package/dist/interface/assets/{CuiTopNavbarItem-CIO_h1T0.js → CuiTopNavbarItem-nGcC2em4.js} +1 -1
  63. package/dist/interface/assets/{CuiTopbarSlot-C6t4NmW-.js → CuiTopbarSlot-B6UMqYZl.js} +1 -1
  64. package/dist/interface/assets/Faces-cpO5vJbp.js +1 -0
  65. package/dist/interface/assets/{FirstSteps-CP26tE1m.js → FirstSteps-BHTcbs9O.js} +1 -1
  66. package/dist/interface/assets/{Instances-Bdy0n3fB.js → Instances-BXiVG2Dm.js} +1 -1
  67. package/dist/interface/assets/Logs-hMg2QOGj.js +6 -0
  68. package/dist/interface/assets/{Menu-DX0KhBBs.js → Menu-BiPBCi8Z.js} +1 -1
  69. package/dist/interface/assets/{OAuthDeviceFlow-Cci9ex4G.js → OAuthDeviceFlow-Bia9UA3I.js} +1 -1
  70. package/dist/interface/assets/Plugin-DfRaHAsi.js +1 -0
  71. package/dist/interface/assets/{PluginConsole-Fffl7Yh_.js → PluginConsole-CRw4zTRM.js} +1 -1
  72. package/dist/interface/assets/PluginDetail-BYqji8yN.css +1 -0
  73. package/dist/interface/assets/PluginDetail-BqRoLZc7.js +2 -0
  74. package/dist/interface/assets/{PluginSchema-BNEfEDJU.js → PluginSchema-TtBJPR_R.js} +1 -1
  75. package/dist/interface/assets/PluginSearch-B_NYpJi3.js +2 -0
  76. package/dist/interface/assets/{PluginSearch-NuKgD1r3.css → PluginSearch-Bbp8D7BJ.css} +1 -1
  77. package/dist/interface/assets/PluginSearch-DnJgg6-6.js +1 -0
  78. package/dist/interface/assets/Plugins-DVFEGtj3.js +1 -0
  79. package/dist/interface/assets/Recordings-dwm6lAoJ.js +1 -0
  80. package/dist/interface/assets/{Settings-TkiQG2I9.js → Settings-BpBmrGpS.js} +1 -1
  81. package/dist/interface/assets/SettingsAccount-8Kh1uQqn.js +1 -0
  82. package/dist/interface/assets/SettingsAccount-CjgYe5mF.js +1 -0
  83. package/dist/interface/assets/SettingsAppearance-3i3Ix7j-.js +1 -0
  84. package/dist/interface/assets/{SettingsAppearance-CWWSQkIY.js → SettingsAppearance-EoBxclgt.js} +1 -1
  85. package/dist/interface/assets/SettingsBackup-Bpsbg6Pm.js +1 -0
  86. package/dist/interface/assets/{SettingsMqtt-CeurNe8m.js → SettingsMqtt-ZQolc9lR.js} +1 -1
  87. package/dist/interface/assets/SettingsNotifications-BOoMt1Er.js +2 -0
  88. package/dist/interface/assets/SettingsRecordings-BQhxLCgM.js +1 -0
  89. package/dist/interface/assets/SettingsRemote-Cvcmpdgb.js +1 -0
  90. package/dist/interface/assets/SettingsSystem-B-yhq40t.js +2 -0
  91. package/dist/interface/assets/SettingsUsers-CezygBk8.js +1 -0
  92. package/dist/interface/assets/Terminal-CDQJGwb_.js +4 -0
  93. package/dist/interface/assets/{VariableInput-BuXTKXXC.js → VariableInput-CnmqCHf7.js} +1 -1
  94. package/dist/interface/assets/{VariableSuggestions-BIPtw8GW.js → VariableSuggestions-D6IlwBqV.js} +1 -1
  95. package/dist/interface/assets/VersionsHandler-BHR1k9zz.js +7 -0
  96. package/dist/interface/assets/Workers-Bv-bWBC-.js +2 -0
  97. package/dist/interface/assets/{api-DudQz5TK.js → api-BhOwzvxK.js} +1 -1
  98. package/dist/interface/assets/api-Cea16mc8.js +2 -0
  99. package/dist/interface/assets/api-GMfqGYqQ.css +2 -0
  100. package/dist/interface/assets/{auth-BKlPnLfY.js → auth-CNPkdTXX.js} +1 -1
  101. package/dist/interface/assets/{automations-eQnuQOEs.js → automations-CHengR-B.js} +1 -1
  102. package/dist/interface/assets/{automations-Dtp3-KSy.js → automations-DhLADBhd.js} +1 -1
  103. package/dist/interface/assets/{cameras-BySMxwdP.js → cameras-DyF2T0be.js} +1 -1
  104. package/dist/interface/assets/{cameras.schema-DVnsQl9j.js → cameras.schema-DBzgU4m6.js} +1 -1
  105. package/dist/interface/assets/cloudHandoff-LxdvSi1a.js +1 -0
  106. package/dist/interface/assets/{config-CDCKrp2V.js → config-c7o4sJrQ.js} +1 -1
  107. package/dist/interface/assets/{circular-connection-Fq-Vqe3X.js → delete-outline-CbGU9XWz.js} +1 -1
  108. package/dist/interface/assets/{deviceId-O-kfs3nO.js → deviceId-BYu9Q8Ay.js} +1 -1
  109. package/dist/interface/assets/{hasPermission-DADXQ_dj.js → hasPermission-CgyWyOhQ.js} +1 -1
  110. package/dist/interface/assets/{instances-DVk8sRuN.js → instances-CRYtaTQS.js} +1 -1
  111. package/dist/interface/assets/main-CgXkx5UO.js +3 -0
  112. package/dist/interface/assets/{notifications-Dnh_ylVF.js → notifications-sejZCb0L.js} +1 -1
  113. package/dist/interface/assets/{plugins-CHRZiPTq.js → plugins-CCLFcD4c.js} +1 -1
  114. package/dist/interface/assets/round-restart-alt-PDSZur-0.js +1 -0
  115. package/dist/interface/assets/{router-M08TaIji.css → router-C7b6u3Zu.css} +1 -1
  116. package/dist/interface/assets/router-DkMUvvnP.js +2 -0
  117. package/dist/interface/assets/{routerState-CencmCOo.js → routerState-BR88YV1H.js} +1 -1
  118. package/dist/interface/assets/{server-zkNDKqjz.js → server-C7SETTy9.js} +1 -1
  119. package/dist/interface/assets/{shares-DooKpXt5.js → shares-Cy1SLL98.js} +1 -1
  120. package/dist/interface/assets/{theme-Dlx1uc6I.js → theme-DqbhRu7y.js} +1 -1
  121. package/dist/interface/assets/{types-DwLgLlNL.js → types-v8L66UlA.js} +1 -1
  122. package/dist/interface/assets/{ui-BajsbwJJ.js → ui-g5rCwxUE.js} +1 -1
  123. package/dist/interface/assets/{useAppVersion-Vx2rWjdR.js → useAppVersion-WfdoG9Ji.js} +1 -1
  124. package/dist/interface/assets/{useBackupRestore-CtDDTNYM.js → useBackupRestore-ootsFhdF.js} +1 -1
  125. package/dist/interface/assets/{useBiometricCredentials-DnEuKj2Y.js → useBiometricCredentials-Ca75xEru.js} +1 -1
  126. package/dist/interface/assets/{useCameraOptions-CurEfrEs.js → useCameraOptions-BpL2zbfV.js} +1 -1
  127. package/dist/interface/assets/{useCuiCameraDrawer-eH0m75Mk.js → useCuiCameraDrawer-BHUHw6W6.js} +1 -1
  128. package/dist/interface/assets/useCuiDialog-yVh5UWKF.js +2 -0
  129. package/dist/interface/assets/{useFileDownload-CaB5Myfa.js → useFileDownload-BcaNWndS.js} +1 -1
  130. package/dist/interface/assets/useLogsSocket-BRSsUNqv.js +5 -0
  131. package/dist/interface/assets/{useServerRestart-COGxcO4B.js → useServerRestart-PZhND5H_.js} +1 -1
  132. package/dist/interface/assets/{useSharedComposables-DC7dAxBt.js → useSharedComposables-USqd05AG.js} +1 -1
  133. package/dist/interface/assets/{useStreamStatus-Cr_bBYAe.js → useStreamStatus-nCx5ux1-.js} +1 -1
  134. package/dist/interface/assets/{useUpdateChannel-D_SN9IPN.js → useUpdateChannel-3eHk3KXZ.js} +1 -1
  135. package/dist/interface/assets/{useUserOptions-CtgFdv3y.js → useUserOptions-DVC4k8Zs.js} +1 -1
  136. package/dist/interface/assets/{users.schema-vs5FAhpT.js → users.schema-B4fEuoKZ.js} +1 -1
  137. package/dist/interface/assets/{vendor-cameraui-D5fd9Ars.js → vendor-cameraui-QuTJKoXE.js} +84 -23
  138. package/dist/interface/assets/vendor-core-CCcu_nmz.js +1 -0
  139. package/dist/interface/assets/{vendor-primevue-Ba4LruKV.js → vendor-primevue-BdB7McKg.js} +84 -145
  140. package/dist/interface/assets/view-grid-BWJS0bBD.js +1 -0
  141. package/dist/interface/index.html +47 -47
  142. package/dist/interface/sw.js +1 -1
  143. package/dist/server/package.json +6 -6
  144. package/dist/server/requirements.txt +1 -1
  145. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/__init__.py +2 -0
  146. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/detection.py +3 -0
  147. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/__init__.py +2 -0
  148. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/ptz.py +45 -2
  149. package/dist/server/src/api/database/backfill.d.ts +5 -0
  150. package/dist/server/src/api/database/backfill.js +89 -0
  151. package/dist/server/src/api/database/backfill.js.map +1 -0
  152. package/dist/server/src/api/database/index.d.ts +1 -0
  153. package/dist/server/src/api/database/index.js +29 -43
  154. package/dist/server/src/api/database/index.js.map +1 -1
  155. package/dist/server/src/api/database/record-schemas.d.ts +231 -0
  156. package/dist/server/src/api/database/record-schemas.js +194 -0
  157. package/dist/server/src/api/database/record-schemas.js.map +1 -0
  158. package/dist/server/src/api/schemas/cameras.schema.d.ts +265 -1
  159. package/dist/server/src/api/schemas/cameras.schema.js +10 -0
  160. package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
  161. package/dist/server/src/api/schemas/remote.schema.d.ts +1 -1
  162. package/dist/server/src/api/services/cameras.service.d.ts +1 -0
  163. package/dist/server/src/api/services/cameras.service.js +18 -1
  164. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  165. package/dist/server/src/api/services/plugins.service.js +15 -4
  166. package/dist/server/src/api/services/plugins.service.js.map +1 -1
  167. package/dist/server/src/api/websocket/nsp/main.js +3 -0
  168. package/dist/server/src/api/websocket/nsp/main.js.map +1 -1
  169. package/dist/server/src/camera/controller.js +1 -12
  170. package/dist/server/src/camera/controller.js.map +1 -1
  171. package/dist/server/src/camera/decoder/audio-loop.d.ts +25 -0
  172. package/dist/server/src/camera/decoder/audio-loop.js +163 -0
  173. package/dist/server/src/camera/decoder/audio-loop.js.map +1 -0
  174. package/dist/server/src/camera/decoder/cascade-manager.js +1 -4
  175. package/dist/server/src/camera/decoder/cascade-manager.js.map +1 -1
  176. package/dist/server/src/camera/decoder/detection-coordinator.d.ts +36 -97
  177. package/dist/server/src/camera/decoder/detection-coordinator.js +479 -1387
  178. package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
  179. package/dist/server/src/camera/decoder/detection-pipeline.d.ts +4 -0
  180. package/dist/server/src/camera/decoder/detection-pipeline.js +14 -24
  181. package/dist/server/src/camera/decoder/detection-pipeline.js.map +1 -1
  182. package/dist/server/src/camera/decoder/dwell-manager.js +1 -1
  183. package/dist/server/src/camera/decoder/dwell-manager.js.map +1 -1
  184. package/dist/server/src/camera/decoder/event-manager.js +15 -28
  185. package/dist/server/src/camera/decoder/event-manager.js.map +1 -1
  186. package/dist/server/src/camera/decoder/event-thumbnailer.d.ts +38 -0
  187. package/dist/server/src/camera/decoder/event-thumbnailer.js +192 -0
  188. package/dist/server/src/camera/decoder/event-thumbnailer.js.map +1 -0
  189. package/dist/server/src/camera/decoder/plugin-registry.d.ts +31 -0
  190. package/dist/server/src/camera/decoder/plugin-registry.js +114 -0
  191. package/dist/server/src/camera/decoder/plugin-registry.js.map +1 -0
  192. package/dist/server/src/camera/decoder/{ptz-autotracker.d.ts → ptz/autotracker.d.ts} +19 -0
  193. package/dist/server/src/camera/decoder/ptz/autotracker.js +537 -0
  194. package/dist/server/src/camera/decoder/ptz/autotracker.js.map +1 -0
  195. package/dist/server/src/camera/decoder/reconnect-backoff.d.ts +6 -0
  196. package/dist/server/src/camera/decoder/reconnect-backoff.js +17 -0
  197. package/dist/server/src/camera/decoder/reconnect-backoff.js.map +1 -0
  198. package/dist/server/src/camera/decoder/secondary-stage.d.ts +37 -0
  199. package/dist/server/src/camera/decoder/secondary-stage.js +445 -0
  200. package/dist/server/src/camera/decoder/secondary-stage.js.map +1 -0
  201. package/dist/server/src/camera/decoder/{audio-source.js → sources/audio-source.js} +2 -2
  202. package/dist/server/src/camera/decoder/sources/audio-source.js.map +1 -0
  203. package/dist/server/src/camera/decoder/{frame-source.js → sources/frame-source.js} +8 -11
  204. package/dist/server/src/camera/decoder/sources/frame-source.js.map +1 -0
  205. package/dist/server/src/camera/decoder/{snapshot-source.d.ts → sources/snapshot-source.d.ts} +2 -5
  206. package/dist/server/src/camera/decoder/{snapshot-source.js → sources/snapshot-source.js} +11 -15
  207. package/dist/server/src/camera/decoder/sources/snapshot-source.js.map +1 -0
  208. package/dist/server/src/camera/decoder/stationary-suppressor.d.ts +21 -0
  209. package/dist/server/src/camera/decoder/stationary-suppressor.js +141 -0
  210. package/dist/server/src/camera/decoder/stationary-suppressor.js.map +1 -0
  211. package/dist/server/src/camera/decoder/types.d.ts +6 -1
  212. package/dist/server/src/camera/decoder/types.js +1 -0
  213. package/dist/server/src/camera/decoder/types.js.map +1 -1
  214. package/dist/server/src/camera/decoder/worker.js +4 -7
  215. package/dist/server/src/camera/decoder/worker.js.map +1 -1
  216. package/dist/server/src/go2rtc/api/routes/discover.js +2 -1
  217. package/dist/server/src/go2rtc/api/routes/discover.js.map +1 -1
  218. package/dist/server/src/main.js +26 -3
  219. package/dist/server/src/main.js.map +1 -1
  220. package/dist/server/src/manager/downloadManager.js +0 -2
  221. package/dist/server/src/manager/downloadManager.js.map +1 -1
  222. package/dist/server/src/utils/npm/index.d.ts +10 -1
  223. package/dist/server/src/utils/npm/index.js +11 -1
  224. package/dist/server/src/utils/npm/index.js.map +1 -1
  225. package/dist/server/src/workers/capabilities/plugin-host.js +4 -1
  226. package/dist/server/src/workers/capabilities/plugin-host.js.map +1 -1
  227. package/package.json +6 -6
  228. package/dist/interface/assets/Automation-Dp_xaEqJ.js +0 -2
  229. package/dist/interface/assets/AutomationStore-4JFCinMU.js +0 -2
  230. package/dist/interface/assets/AutomationStoreDetail-yBtpTcZc.js +0 -2
  231. package/dist/interface/assets/Automations-BGsRPCnO.js +0 -2
  232. package/dist/interface/assets/Camera-C1_jdI_c.js +0 -2
  233. package/dist/interface/assets/Cameras-BmjWXAZ8.js +0 -652
  234. package/dist/interface/assets/Camview-wGaYaDmi.js +0 -1
  235. package/dist/interface/assets/Config-CuF6eGTD.js +0 -2
  236. package/dist/interface/assets/ConfigActionImageInput-xab5Mae-.js +0 -1
  237. package/dist/interface/assets/ConfigActionNotification-DGwL1eKM.js +0 -1
  238. package/dist/interface/assets/ConfigActionSensor-DBf7_RrD.js +0 -1
  239. package/dist/interface/assets/ConfigConditionSensorState-D1IWa7jK.js +0 -1
  240. package/dist/interface/assets/Console-DL4o8TCN.js +0 -1
  241. package/dist/interface/assets/CuiBottomSheet-DluJK839.js +0 -1
  242. package/dist/interface/assets/CuiCameraCard-CNkJcJNk.js +0 -1
  243. package/dist/interface/assets/CuiCameraRecordings-Dg_xNATQ.js +0 -1
  244. package/dist/interface/assets/CuiCameraShares-BSdoTLlP.js +0 -1
  245. package/dist/interface/assets/CuiCameraTable-16e0lAA5.js +0 -2
  246. package/dist/interface/assets/CuiFloatingButton-B64PYWE2.js +0 -1
  247. package/dist/interface/assets/CuiImage-Bxf7z2N4.css +0 -1
  248. package/dist/interface/assets/CuiImage-D_DDxN1t.js +0 -1
  249. package/dist/interface/assets/CuiMenu-BmgnEZun.js +0 -1
  250. package/dist/interface/assets/CuiPluginCard-C0GXkGJ3.js +0 -2
  251. package/dist/interface/assets/CuiPluginOAuthButton-CY3c3HRs.js +0 -2
  252. package/dist/interface/assets/CuiPluginTrustBadge-QRsixP01.js +0 -1
  253. package/dist/interface/assets/CuiRecordingsGrid-DycYYi7W.js +0 -1
  254. package/dist/interface/assets/CuiSchema-D1-Z2sTy.js +0 -1
  255. package/dist/interface/assets/Faces-QSA5E6EG.js +0 -1
  256. package/dist/interface/assets/Logs-Bs0C7Yu1.js +0 -6
  257. package/dist/interface/assets/Plugin-CG02A29i.js +0 -1
  258. package/dist/interface/assets/PluginDetail-BsIkPUY8.css +0 -1
  259. package/dist/interface/assets/PluginDetail-CRCMotvN.js +0 -2
  260. package/dist/interface/assets/PluginSearch-CwNCQedL.js +0 -2
  261. package/dist/interface/assets/PluginSearch-GD7qtALl.js +0 -1
  262. package/dist/interface/assets/Plugins-BNiQus_y.js +0 -1
  263. package/dist/interface/assets/Recordings-dY0k4i3E.js +0 -1
  264. package/dist/interface/assets/SettingsAccount-Cln0bZPI.js +0 -1
  265. package/dist/interface/assets/SettingsAccount-DvrdANbI.js +0 -1
  266. package/dist/interface/assets/SettingsAppearance-CVMAyxFr.js +0 -1
  267. package/dist/interface/assets/SettingsBackup-CZEKi84z.js +0 -1
  268. package/dist/interface/assets/SettingsNotifications-BBYcFlOe.js +0 -2
  269. package/dist/interface/assets/SettingsRecordings-8JRnUwvv.js +0 -1
  270. package/dist/interface/assets/SettingsRemote-BXLy9grM.js +0 -1
  271. package/dist/interface/assets/SettingsSystem-BwVJ2-Ws.js +0 -2
  272. package/dist/interface/assets/SettingsUsers-CMsX8YO6.js +0 -1
  273. package/dist/interface/assets/Terminal-CNAaV5h5.js +0 -4
  274. package/dist/interface/assets/VersionsHandler-0Ol7oxfg.js +0 -7
  275. package/dist/interface/assets/Workers-BYGXvih8.js +0 -2
  276. package/dist/interface/assets/api-BEwr0GLC.css +0 -2
  277. package/dist/interface/assets/api-CeJqvqFj.js +0 -2
  278. package/dist/interface/assets/cloudHandoff-DOYq2IS2.js +0 -1
  279. package/dist/interface/assets/main-DHUUsPUM.js +0 -3
  280. package/dist/interface/assets/round-restart-alt-BRh54UpI.js +0 -1
  281. package/dist/interface/assets/router-B6AZz5fb.js +0 -2
  282. package/dist/interface/assets/useCuiDialog-CGak2kyV.js +0 -2
  283. package/dist/interface/assets/useLogsSocket-B47qvN41.js +0 -5
  284. package/dist/interface/assets/vendor-core-D9amXF-u.js +0 -1
  285. package/dist/interface/assets/view-grid-jcP3VugM.js +0 -1
  286. package/dist/server/src/camera/decoder/audio-source.js.map +0 -1
  287. package/dist/server/src/camera/decoder/frame-source.js.map +0 -1
  288. package/dist/server/src/camera/decoder/ptz-autotracker.js +0 -342
  289. package/dist/server/src/camera/decoder/ptz-autotracker.js.map +0 -1
  290. package/dist/server/src/camera/decoder/snapshot-source.js.map +0 -1
  291. /package/dist/server/src/camera/decoder/{audio-source.d.ts → sources/audio-source.d.ts} +0 -0
  292. /package/dist/server/src/camera/decoder/{frame-source.d.ts → sources/frame-source.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backfill.js","sourceRoot":"","sources":["../../../../../src/api/database/backfill.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,7 @@ export declare class Database {
33
33
  close(): Promise<void>;
34
34
  updateCameras(): Promise<void>;
35
35
  syncCamerasToGo2RtcConfig(): void;
36
+ private backfillSchemaDefaults;
36
37
  private checkOldVersion;
37
38
  private ensureDatabases;
38
39
  private resetRestoredIdentity;
@@ -7,9 +7,16 @@ import semver from 'semver';
7
7
  import { container } from 'tsyringe';
8
8
  import { DEFAULT_CONFIG_SSL } from '../../services/config/defaults.js';
9
9
  import { applySourceUrlFlags, createSourceName } from '../../utils/camera.js';
10
+ import { createAutomationSchema } from '../schemas/automations.schema.js';
11
+ import { createCameraBaseSchema } from '../schemas/cameras.schema.js';
12
+ import { notificationSettingsSchema } from '../schemas/notifications.schema.js';
13
+ import { createShareSchema } from '../schemas/shares.schema.js';
14
+ import { createVirtualSensorSchema } from '../schemas/virtualsensors.schema.js';
10
15
  import { REGEX_ESCAPE } from '../utils/regex.js';
16
+ import { backfillDefaults, backfillSingletonDefaults } from './backfill.js';
11
17
  import { AUTOMATIONS_ID, CAMERAS_ID, CLOUD_ID, DATABASE_ID, DOWNLOADS_ID, INSTANCES_CONFIG_ID, INSTANCES_ID, MQTT_ID, NOTIFICATION_HISTORY_ID, NOTIFICATIONS_ID, PLUGINS_ID, REMOTE_ID, SERVER_ID, SETTINGS_ID, SHARES_ID, TOKENS_ID, USERS_ID, VIRTUAL_SENSORS_ID, WORKER_STATE_ID, } from './constants.js';
12
18
  import { MigrationRunner } from './migration.js';
19
+ import { dbCloudSchema, dbInstanceSchema, dbInstancesConfigSchema, dbMqttSchema, dbRemoteSchema, dbServerSchema, dbSettingsSchema, dbUserSchema, } from './record-schemas.js';
13
20
  import { SelfCheck } from './selfcheck.js';
14
21
  export class Database {
15
22
  workerMode;
@@ -87,6 +94,7 @@ export class Database {
87
94
  await this.prepareDatabases();
88
95
  await this.ensureMaster();
89
96
  await this.migrationRunner.migrate();
97
+ await this.backfillSchemaDefaults();
90
98
  this.syncCamerasToGo2RtcConfig();
91
99
  this.logger.debug('Database initialized!');
92
100
  }
@@ -158,7 +166,8 @@ export class Database {
158
166
  }
159
167
  streams[sourceName] = go2rtcUrls;
160
168
  }
161
- if (source.hotMode) {
169
+ // a disabled camera must not be preloaded by go2rtc at its own startup
170
+ if (source.hotMode && !camera.disabled) {
162
171
  preload[sourceName] = source.muted ? 'video&microphone' : 'video&audio&microphone';
163
172
  }
164
173
  else {
@@ -178,6 +187,21 @@ export class Database {
178
187
  }
179
188
  this.configService.writeGo2RtcConfigFile();
180
189
  }
190
+ async backfillSchemaDefaults() {
191
+ await backfillDefaults(this.camerasDB, createCameraBaseSchema.strip(), this.logger, CAMERAS_ID);
192
+ await backfillDefaults(this.automationsDB, createAutomationSchema.strip(), this.logger, AUTOMATIONS_ID);
193
+ await backfillDefaults(this.virtualSensorsDB, createVirtualSensorSchema.strip(), this.logger, VIRTUAL_SENSORS_ID);
194
+ await backfillDefaults(this.sharesDB, createShareSchema.strip(), this.logger, SHARES_ID);
195
+ await backfillDefaults(this.notificationsDB, notificationSettingsSchema.strip(), this.logger, NOTIFICATIONS_ID);
196
+ await backfillDefaults(this.usersDB, dbUserSchema, this.logger, USERS_ID);
197
+ await backfillDefaults(this.instancesDB, dbInstanceSchema, this.logger, INSTANCES_ID);
198
+ await backfillSingletonDefaults(this.settingsDB, 'settings', dbSettingsSchema, this.logger, SETTINGS_ID);
199
+ await backfillSingletonDefaults(this.serverDB, 'server', dbServerSchema, this.logger, SERVER_ID);
200
+ await backfillSingletonDefaults(this.remoteDB, 'remote', dbRemoteSchema, this.logger, REMOTE_ID);
201
+ await backfillSingletonDefaults(this.mqttDB, 'mqtt', dbMqttSchema, this.logger, MQTT_ID);
202
+ await backfillSingletonDefaults(this.cloudDB, 'cloud', dbCloudSchema, this.logger, CLOUD_ID);
203
+ await backfillSingletonDefaults(this.instancesConfigDB, 'instancesConfig', dbInstancesConfigSchema, this.logger, INSTANCES_CONFIG_ID);
204
+ }
181
205
  async checkOldVersion() {
182
206
  const settingsDB = this.settingsDB.get('settings');
183
207
  const oldVersion = settingsDB?.version ?? Database.VERSION;
@@ -198,49 +222,11 @@ export class Database {
198
222
  if (!this.serverDB.get('server')) {
199
223
  await this.serverDB.put('server', { serverAddresses: [] });
200
224
  }
201
- const existingRemote = this.remoteDB.get('remote');
202
- if (!existingRemote) {
203
- await this.remoteDB.put('remote', {
204
- enabled: false,
205
- directEnabled: false,
206
- directMode: 'cloudflare',
207
- customDomain: { url: null },
208
- cloudflare: { mode: 'quick', hostname: null, token: null, tunnelId: null },
209
- });
210
- }
211
- else if (existingRemote.directMode === undefined || existingRemote.customDomain === undefined || existingRemote.cloudflare === undefined) {
212
- await this.remoteDB.put('remote', {
213
- enabled: existingRemote.enabled ?? false,
214
- directEnabled: existingRemote.directEnabled ?? false,
215
- directMode: existingRemote.directMode ?? 'cloudflare',
216
- customDomain: existingRemote.customDomain ?? { url: null },
217
- cloudflare: existingRemote.cloudflare ?? { mode: 'quick', hostname: null, token: null, tunnelId: null },
218
- });
225
+ if (!this.remoteDB.get('remote')) {
226
+ await this.remoteDB.put('remote', dbRemoteSchema.parse({}));
219
227
  }
220
- const existingMqtt = this.mqttDB.get('mqtt');
221
- if (!existingMqtt) {
222
- await this.mqttDB.put('mqtt', {
223
- enabled: false,
224
- mode: 'external',
225
- broker: { port: 1883, username: 'cameraui', password: randomBytes(16).toString('hex') },
226
- host: null,
227
- port: 1883,
228
- protocol: 'mqtt',
229
- username: null,
230
- password: null,
231
- clientId: 'cameraui',
232
- topicPrefix: 'cameraui',
233
- tls: { rejectUnauthorized: true, ca: null, cert: null, key: null },
234
- haDiscovery: { enabled: false, prefix: 'homeassistant' },
235
- });
236
- }
237
- else if (existingMqtt.haDiscovery === undefined || existingMqtt.mode === undefined) {
238
- await this.mqttDB.put('mqtt', {
239
- ...existingMqtt,
240
- mode: existingMqtt.mode ?? 'external',
241
- broker: existingMqtt.broker ?? { port: 1883, username: 'cameraui', password: randomBytes(16).toString('hex') },
242
- haDiscovery: existingMqtt.haDiscovery ?? { enabled: false, prefix: 'homeassistant' },
243
- });
228
+ if (!this.mqttDB.get('mqtt')) {
229
+ await this.mqttDB.put('mqtt', dbMqttSchema.parse({}));
244
230
  }
245
231
  if (!this.cloudDB.get('cloud')) {
246
232
  await this.cloudDB.put('cloud', {});
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/api/database/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/api/database/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,231 @@
1
+ import * as zod from 'zod';
2
+ export declare const dbUserSchema: zod.ZodObject<{
3
+ _id: zod.ZodString;
4
+ avatar: zod.ZodOptional<zod.ZodString>;
5
+ username: zod.ZodString;
6
+ password: zod.ZodString;
7
+ role: zod.ZodEnum<{
8
+ admin: "admin";
9
+ master: "master";
10
+ user: "user";
11
+ }>;
12
+ firstLogin: zod.ZodDefault<zod.ZodBoolean>;
13
+ preferences: zod.ZodDefault<zod.ZodObject<{
14
+ language: zod.ZodDefault<zod.ZodEnum<{
15
+ auto: "auto";
16
+ de: "de";
17
+ en: "en";
18
+ }>>;
19
+ camview: zod.ZodDefault<zod.ZodObject<{
20
+ views: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
21
+ _id: zod.ZodString;
22
+ name: zod.ZodString;
23
+ viewSize: zod.ZodUnion<readonly [zod.ZodLiteral<1>, zod.ZodLiteral<4>, zod.ZodLiteral<6>, zod.ZodLiteral<7>, zod.ZodLiteral<9>, zod.ZodLiteral<10>, zod.ZodLiteral<12>, zod.ZodLiteral<13>, zod.ZodLiteral<15>, zod.ZodLiteral<16>, zod.ZodLiteral<20>, zod.ZodLiteral<26>]>;
24
+ cameras: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
25
+ index: zod.ZodNumber;
26
+ cameraId: zod.ZodString;
27
+ colSpan: zod.ZodOptional<zod.ZodNumber>;
28
+ rowSpan: zod.ZodOptional<zod.ZodNumber>;
29
+ x: zod.ZodOptional<zod.ZodNumber>;
30
+ y: zod.ZodOptional<zod.ZodNumber>;
31
+ }, zod.z.core.$strip>>>;
32
+ type: zod.ZodUnion<readonly [zod.ZodLiteral<"dnd">, zod.ZodLiteral<"view">]>;
33
+ }, zod.z.core.$strip>>>;
34
+ }, zod.z.core.$strip>>;
35
+ cameras: zod.ZodDefault<zod.ZodRecord<zod.ZodString, zod.ZodObject<{
36
+ shortcuts: zod.ZodDefault<zod.ZodArray<zod.ZodDiscriminatedUnion<[zod.ZodObject<{
37
+ _id: zod.ZodString;
38
+ type: zod.ZodLiteral<"camera">;
39
+ cameraId: zod.ZodString;
40
+ points: zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>;
41
+ }, zod.z.core.$strip>, zod.ZodObject<{
42
+ _id: zod.ZodString;
43
+ type: zod.ZodLiteral<"sensor">;
44
+ sensorType: zod.ZodEnum<{
45
+ contact: "contact";
46
+ light: "light";
47
+ siren: "siren";
48
+ switch: "switch";
49
+ lock: "lock";
50
+ securitySystem: "securitySystem";
51
+ doorbell: "doorbell";
52
+ temperature: "temperature";
53
+ humidity: "humidity";
54
+ occupancy: "occupancy";
55
+ smoke: "smoke";
56
+ leak: "leak";
57
+ garage: "garage";
58
+ battery: "battery";
59
+ }>;
60
+ sensorName: zod.ZodString;
61
+ sensorPluginId: zod.ZodString;
62
+ sensorCameraId: zod.ZodString;
63
+ points: zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>;
64
+ }, zod.z.core.$strip>], "type">>>;
65
+ }, zod.z.core.$strip>>>;
66
+ discovery: zod.ZodOptional<zod.ZodObject<{
67
+ hiddenDevices: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
68
+ id: zod.ZodString;
69
+ name: zod.ZodString;
70
+ model: zod.ZodOptional<zod.ZodString>;
71
+ }, zod.z.core.$strip>>>;
72
+ }, zod.z.core.$strip>>;
73
+ }, zod.z.core.$strip>>;
74
+ twoFactor: zod.ZodOptional<zod.ZodObject<{
75
+ enabled: zod.ZodBoolean;
76
+ secret: zod.ZodOptional<zod.ZodString>;
77
+ backupCodes: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
78
+ verifiedAt: zod.ZodOptional<zod.ZodAny>;
79
+ }, zod.z.core.$strip>>;
80
+ }, zod.z.core.$strip>;
81
+ export declare const dbInstanceSchema: zod.ZodObject<{
82
+ id: zod.ZodString;
83
+ name: zod.ZodString;
84
+ url: zod.ZodString;
85
+ remoteHomeId: zod.ZodOptional<zod.ZodString>;
86
+ credentials: zod.ZodOptional<zod.ZodObject<{
87
+ username: zod.ZodString;
88
+ encryptedPassword: zod.ZodString;
89
+ iv: zod.ZodString;
90
+ }, zod.z.core.$strip>>;
91
+ tokenCache: zod.ZodOptional<zod.ZodObject<{
92
+ accessToken: zod.ZodString;
93
+ refreshToken: zod.ZodString;
94
+ cachedAt: zod.ZodNumber;
95
+ user: zod.ZodOptional<zod.ZodObject<{
96
+ _id: zod.ZodString;
97
+ username: zod.ZodString;
98
+ role: zod.ZodEnum<{
99
+ admin: "admin";
100
+ master: "master";
101
+ user: "user";
102
+ }>;
103
+ avatar: zod.ZodOptional<zod.ZodString>;
104
+ }, zod.z.core.$strip>>;
105
+ }, zod.z.core.$strip>>;
106
+ favorite: zod.ZodOptional<zod.ZodBoolean>;
107
+ addedAt: zod.ZodNumber;
108
+ addedBy: zod.ZodString;
109
+ pending2fa: zod.ZodOptional<zod.ZodNumber>;
110
+ }, zod.z.core.$strip>;
111
+ export declare const dbSettingsSchema: zod.ZodObject<{
112
+ version: zod.ZodString;
113
+ knownWorkers: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
114
+ agentId: zod.ZodString;
115
+ name: zod.ZodString;
116
+ lastSeen: zod.ZodNumber;
117
+ }, zod.z.core.$strip>>>;
118
+ workerCredentials: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
119
+ agentId: zod.ZodString;
120
+ name: zod.ZodString;
121
+ user: zod.ZodString;
122
+ secret: zod.ZodString;
123
+ createdAt: zod.ZodNumber;
124
+ }, zod.z.core.$strip>>>;
125
+ workerPairings: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
126
+ code: zod.ZodString;
127
+ expiresAt: zod.ZodNumber;
128
+ }, zod.z.core.$strip>>>;
129
+ backupScheduler: zod.ZodOptional<zod.ZodObject<{
130
+ enabled: zod.ZodDefault<zod.ZodBoolean>;
131
+ interval: zod.ZodDefault<zod.ZodEnum<{
132
+ daily: "daily";
133
+ weekly: "weekly";
134
+ monthly: "monthly";
135
+ }>>;
136
+ time: zod.ZodDefault<zod.ZodString>;
137
+ weekday: zod.ZodDefault<zod.ZodNumber>;
138
+ dayOfMonth: zod.ZodDefault<zod.ZodNumber>;
139
+ retention: zod.ZodDefault<zod.ZodNumber>;
140
+ destinationPath: zod.ZodDefault<zod.ZodString>;
141
+ lastRun: zod.ZodOptional<zod.ZodObject<{
142
+ timestamp: zod.ZodNumber;
143
+ status: zod.ZodEnum<{
144
+ error: "error";
145
+ success: "success";
146
+ }>;
147
+ message: zod.ZodOptional<zod.ZodString>;
148
+ filename: zod.ZodOptional<zod.ZodString>;
149
+ durationMs: zod.ZodOptional<zod.ZodNumber>;
150
+ }, zod.z.core.$strip>>;
151
+ }, zod.z.core.$strip>>;
152
+ }, zod.z.core.$strip>;
153
+ export declare const dbServerSchema: zod.ZodObject<{
154
+ serverAddresses: zod.ZodDefault<zod.ZodArray<zod.ZodString>>;
155
+ }, zod.z.core.$strip>;
156
+ export declare const dbRemoteSchema: zod.ZodObject<{
157
+ enabled: zod.ZodDefault<zod.ZodBoolean>;
158
+ directEnabled: zod.ZodDefault<zod.ZodBoolean>;
159
+ directMode: zod.ZodDefault<zod.ZodEnum<{
160
+ cloudflare: "cloudflare";
161
+ customDomain: "customDomain";
162
+ }>>;
163
+ customDomain: zod.ZodDefault<zod.ZodObject<{
164
+ url: zod.ZodDefault<zod.ZodNullable<zod.ZodString>>;
165
+ }, zod.z.core.$strip>>;
166
+ cloudflare: zod.ZodDefault<zod.ZodObject<{
167
+ mode: zod.ZodDefault<zod.ZodEnum<{
168
+ token: "token";
169
+ quick: "quick";
170
+ managed: "managed";
171
+ }>>;
172
+ hostname: zod.ZodDefault<zod.ZodNullable<zod.ZodString>>;
173
+ token: zod.ZodDefault<zod.ZodNullable<zod.ZodString>>;
174
+ tunnelId: zod.ZodDefault<zod.ZodNullable<zod.ZodString>>;
175
+ }, zod.z.core.$strip>>;
176
+ }, zod.z.core.$strip>;
177
+ export declare const dbMqttSchema: zod.ZodObject<{
178
+ enabled: zod.ZodDefault<zod.ZodBoolean>;
179
+ mode: zod.ZodDefault<zod.ZodEnum<{
180
+ external: "external";
181
+ embedded: "embedded";
182
+ }>>;
183
+ broker: zod.ZodDefault<zod.ZodObject<{
184
+ port: zod.ZodDefault<zod.ZodNumber>;
185
+ username: zod.ZodDefault<zod.ZodNullable<zod.ZodString>>;
186
+ password: zod.ZodDefault<zod.ZodNullable<zod.ZodString>>;
187
+ }, zod.z.core.$strip>>;
188
+ host: zod.ZodDefault<zod.ZodNullable<zod.ZodString>>;
189
+ port: zod.ZodDefault<zod.ZodNumber>;
190
+ protocol: zod.ZodDefault<zod.ZodEnum<{
191
+ mqtt: "mqtt";
192
+ mqtts: "mqtts";
193
+ }>>;
194
+ username: zod.ZodDefault<zod.ZodNullable<zod.ZodString>>;
195
+ password: zod.ZodDefault<zod.ZodNullable<zod.ZodString>>;
196
+ clientId: zod.ZodDefault<zod.ZodString>;
197
+ topicPrefix: zod.ZodDefault<zod.ZodString>;
198
+ tls: zod.ZodDefault<zod.ZodObject<{
199
+ rejectUnauthorized: zod.ZodDefault<zod.ZodBoolean>;
200
+ ca: zod.ZodDefault<zod.ZodNullable<zod.ZodString>>;
201
+ cert: zod.ZodDefault<zod.ZodNullable<zod.ZodString>>;
202
+ key: zod.ZodDefault<zod.ZodNullable<zod.ZodString>>;
203
+ }, zod.z.core.$strip>>;
204
+ haDiscovery: zod.ZodDefault<zod.ZodObject<{
205
+ enabled: zod.ZodDefault<zod.ZodBoolean>;
206
+ prefix: zod.ZodDefault<zod.ZodString>;
207
+ }, zod.z.core.$strip>>;
208
+ }, zod.z.core.$strip>;
209
+ export declare const dbCloudSchema: zod.ZodObject<{
210
+ name: zod.ZodOptional<zod.ZodString>;
211
+ oauth: zod.ZodOptional<zod.ZodObject<{
212
+ access_token: zod.ZodString;
213
+ refresh_token: zod.ZodString;
214
+ expires_at: zod.ZodNumber;
215
+ scopes: zod.ZodArray<zod.ZodString>;
216
+ grant_id: zod.ZodString;
217
+ server_id: zod.ZodString;
218
+ needs_reauth: zod.ZodOptional<zod.ZodBoolean>;
219
+ }, zod.z.core.$strip>>;
220
+ pending_pair: zod.ZodOptional<zod.ZodObject<{
221
+ device_code: zod.ZodString;
222
+ user_code: zod.ZodString;
223
+ interval: zod.ZodNumber;
224
+ expires_at: zod.ZodNumber;
225
+ }, zod.z.core.$strip>>;
226
+ push: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
227
+ registrationId: zod.ZodOptional<zod.ZodString>;
228
+ }, zod.z.core.$strip>;
229
+ export declare const dbInstancesConfigSchema: zod.ZodObject<{
230
+ homeId: zod.ZodString;
231
+ }, zod.z.core.$strip>;
@@ -0,0 +1,194 @@
1
+ import { randomBytes } from 'node:crypto';
2
+ import * as zod from 'zod';
3
+ import { pointsSchema } from '../schemas/cameras.schema.js';
4
+ import { camviewViewSizeSchema, camviewViewTypeSchema, sensorShortcutTypeSchema, userLanguageSchema, userPreferencesCamviewViewsLayoutCameras, } from '../schemas/users.schema.js';
5
+ const dbRolesSchema = zod.enum(['master', 'admin', 'user']);
6
+ const dbCamviewLayoutSchema = zod.object({
7
+ _id: zod.string(),
8
+ name: zod.string(),
9
+ viewSize: camviewViewSizeSchema,
10
+ cameras: userPreferencesCamviewViewsLayoutCameras.array().default([]),
11
+ type: camviewViewTypeSchema,
12
+ });
13
+ const dbCameraShortcutSchema = zod.object({
14
+ _id: zod.string(),
15
+ type: zod.literal('camera'),
16
+ cameraId: zod.string(),
17
+ points: pointsSchema,
18
+ });
19
+ const dbSensorShortcutSchema = zod.object({
20
+ _id: zod.string(),
21
+ type: zod.literal('sensor'),
22
+ sensorType: sensorShortcutTypeSchema,
23
+ sensorName: zod.string(),
24
+ sensorPluginId: zod.string(),
25
+ sensorCameraId: zod.string(),
26
+ points: pointsSchema,
27
+ });
28
+ const dbShortcutSchema = zod.discriminatedUnion('type', [dbCameraShortcutSchema, dbSensorShortcutSchema]);
29
+ export const dbUserSchema = zod.object({
30
+ _id: zod.string(),
31
+ avatar: zod.string().optional(),
32
+ username: zod.string(),
33
+ password: zod.string(),
34
+ role: dbRolesSchema,
35
+ firstLogin: zod.boolean().default(false),
36
+ preferences: zod
37
+ .object({
38
+ language: userLanguageSchema.default('auto'),
39
+ camview: zod.object({ views: dbCamviewLayoutSchema.array().default([]) }).default({ views: [] }),
40
+ cameras: zod.record(zod.string(), zod.object({ shortcuts: dbShortcutSchema.array().default([]) })).default({}),
41
+ discovery: zod
42
+ .object({
43
+ hiddenDevices: zod.object({ id: zod.string(), name: zod.string(), model: zod.string().optional() }).array().default([]),
44
+ })
45
+ .optional(),
46
+ })
47
+ .default({ language: 'auto', camview: { views: [] }, cameras: {} }),
48
+ twoFactor: zod
49
+ .object({
50
+ enabled: zod.boolean(),
51
+ secret: zod.string().optional(),
52
+ backupCodes: zod.string().array().optional(),
53
+ verifiedAt: zod.any().optional(),
54
+ })
55
+ .optional(),
56
+ });
57
+ export const dbInstanceSchema = zod.object({
58
+ id: zod.string(),
59
+ name: zod.string(),
60
+ url: zod.string(),
61
+ remoteHomeId: zod.string().optional(),
62
+ credentials: zod
63
+ .object({
64
+ username: zod.string(),
65
+ encryptedPassword: zod.string(),
66
+ iv: zod.string(),
67
+ })
68
+ .optional(),
69
+ tokenCache: zod
70
+ .object({
71
+ accessToken: zod.string(),
72
+ refreshToken: zod.string(),
73
+ cachedAt: zod.number(),
74
+ user: zod
75
+ .object({
76
+ _id: zod.string(),
77
+ username: zod.string(),
78
+ role: dbRolesSchema,
79
+ avatar: zod.string().optional(),
80
+ })
81
+ .optional(),
82
+ })
83
+ .optional(),
84
+ favorite: zod.boolean().optional(),
85
+ addedAt: zod.number(),
86
+ addedBy: zod.string(),
87
+ pending2fa: zod.number().optional(),
88
+ });
89
+ export const dbSettingsSchema = zod.object({
90
+ version: zod.string(),
91
+ knownWorkers: zod.object({ agentId: zod.string(), name: zod.string(), lastSeen: zod.number() }).array().optional(),
92
+ workerCredentials: zod.object({ agentId: zod.string(), name: zod.string(), user: zod.string(), secret: zod.string(), createdAt: zod.number() }).array().optional(),
93
+ workerPairings: zod.object({ code: zod.string(), expiresAt: zod.number() }).array().optional(),
94
+ backupScheduler: zod
95
+ .object({
96
+ enabled: zod.boolean().default(false),
97
+ interval: zod.enum(['daily', 'weekly', 'monthly']).default('daily'),
98
+ time: zod.string().default('03:00'),
99
+ weekday: zod.number().default(0),
100
+ dayOfMonth: zod.number().default(1),
101
+ retention: zod.number().default(5),
102
+ destinationPath: zod.string().default(''),
103
+ lastRun: zod
104
+ .object({
105
+ timestamp: zod.number(),
106
+ status: zod.enum(['success', 'error']),
107
+ message: zod.string().optional(),
108
+ filename: zod.string().optional(),
109
+ durationMs: zod.number().optional(),
110
+ })
111
+ .optional(),
112
+ })
113
+ .optional(),
114
+ });
115
+ export const dbServerSchema = zod.object({
116
+ serverAddresses: zod.string().array().default([]),
117
+ });
118
+ export const dbRemoteSchema = zod.object({
119
+ enabled: zod.boolean().default(false),
120
+ directEnabled: zod.boolean().default(false),
121
+ directMode: zod.enum(['cloudflare', 'customDomain']).default('cloudflare'),
122
+ customDomain: zod.object({ url: zod.string().nullable().default(null) }).default({ url: null }),
123
+ cloudflare: zod
124
+ .object({
125
+ mode: zod.enum(['quick', 'token', 'managed']).default('quick'),
126
+ hostname: zod.string().nullable().default(null),
127
+ token: zod.string().nullable().default(null),
128
+ tunnelId: zod.string().nullable().default(null),
129
+ })
130
+ .default({ mode: 'quick', hostname: null, token: null, tunnelId: null }),
131
+ });
132
+ export const dbMqttSchema = zod.object({
133
+ enabled: zod.boolean().default(false),
134
+ mode: zod.enum(['external', 'embedded']).default('external'),
135
+ broker: zod
136
+ .object({
137
+ port: zod.number().default(1883),
138
+ username: zod.string().nullable().default('cameraui'),
139
+ password: zod
140
+ .string()
141
+ .nullable()
142
+ .default(() => randomBytes(16).toString('hex')),
143
+ })
144
+ .default(() => ({ port: 1883, username: 'cameraui', password: randomBytes(16).toString('hex') })),
145
+ host: zod.string().nullable().default(null),
146
+ port: zod.number().default(1883),
147
+ protocol: zod.enum(['mqtt', 'mqtts']).default('mqtt'),
148
+ username: zod.string().nullable().default(null),
149
+ password: zod.string().nullable().default(null),
150
+ clientId: zod.string().default('cameraui'),
151
+ topicPrefix: zod.string().default('cameraui'),
152
+ tls: zod
153
+ .object({
154
+ rejectUnauthorized: zod.boolean().default(true),
155
+ ca: zod.string().nullable().default(null),
156
+ cert: zod.string().nullable().default(null),
157
+ key: zod.string().nullable().default(null),
158
+ })
159
+ .default({ rejectUnauthorized: true, ca: null, cert: null, key: null }),
160
+ haDiscovery: zod
161
+ .object({
162
+ enabled: zod.boolean().default(false),
163
+ prefix: zod.string().default('homeassistant'),
164
+ })
165
+ .default({ enabled: false, prefix: 'homeassistant' }),
166
+ });
167
+ export const dbCloudSchema = zod.object({
168
+ name: zod.string().optional(),
169
+ oauth: zod
170
+ .object({
171
+ access_token: zod.string(),
172
+ refresh_token: zod.string(),
173
+ expires_at: zod.number(),
174
+ scopes: zod.string().array(),
175
+ grant_id: zod.string(),
176
+ server_id: zod.string(),
177
+ needs_reauth: zod.boolean().optional(),
178
+ })
179
+ .optional(),
180
+ pending_pair: zod
181
+ .object({
182
+ device_code: zod.string(),
183
+ user_code: zod.string(),
184
+ interval: zod.number(),
185
+ expires_at: zod.number(),
186
+ })
187
+ .optional(),
188
+ push: zod.record(zod.string(), zod.unknown()).optional(),
189
+ registrationId: zod.string().optional(),
190
+ });
191
+ export const dbInstancesConfigSchema = zod.object({
192
+ homeId: zod.string(),
193
+ });
194
+ //# sourceMappingURL=record-schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record-schemas.js","sourceRoot":"","sources":["../../../../../src/api/database/record-schemas.ts"],"names":[],"mappings":"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"}