@camera.ui/server 0.0.22-alpha.0 → 0.0.22-alpha.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 (569) hide show
  1. package/dist/interface/@intlify.DXtFJcML.0.0.22-alpha.2.js +15 -0
  2. package/dist/interface/@mdi.C1UTQKuc.0.0.22-alpha.2.js +1 -0
  3. package/dist/interface/@tanstack.B6ZKNODP.0.0.22-alpha.2.js +1 -0
  4. package/dist/interface/{@vee-validate.BgtYefC2.0.0.22-alpha.0.js → @vee-validate.BLOXgupV.0.0.22-alpha.2.js} +2 -2
  5. package/dist/interface/@vue.DYBoJLkm.0.0.22-alpha.2.js +17 -0
  6. package/dist/interface/{@vueform.BbHIRROu.0.0.22-alpha.0.js → @vueform.BNEdNEfe.0.0.22-alpha.2.js} +1 -1
  7. package/dist/interface/@vueuse.DLeXr990.0.0.22-alpha.2.js +1 -0
  8. package/dist/interface/Account.CJmkOolZ.0.0.22-alpha.2.js +1 -0
  9. package/dist/interface/Adminpanel.Tg7HwSe9.0.0.22-alpha.2.js +2 -0
  10. package/dist/interface/Appearance.Bu1bU0wi.0.0.22-alpha.2.js +1 -0
  11. package/dist/interface/Backup.8VdHTNcr.0.0.22-alpha.2.js +1 -0
  12. package/dist/interface/Camera.Dg8hy2Yt.0.0.22-alpha.2.js +1 -0
  13. package/dist/interface/Cameras.BIlZs0XL.0.0.22-alpha.2.js +1 -0
  14. package/dist/interface/Camview.BOntwhuV.0.0.22-alpha.2.js +1 -0
  15. package/dist/interface/Config.jsnOhEqZ.0.0.22-alpha.2.js +1 -0
  16. package/dist/interface/Console.D9pK-qBL.0.0.22-alpha.2.js +4 -0
  17. package/dist/interface/FirstSteps.Cb5a8AUL.0.0.22-alpha.2.js +1 -0
  18. package/dist/interface/{NewCamera.CB2ARQ7q.0.0.22-alpha.0.js → NewCamera.Dz60UmLc.0.0.22-alpha.2.js} +2 -2
  19. package/dist/interface/Plugin.DsAb_cep.0.0.22-alpha.2.js +1 -0
  20. package/dist/interface/Plugins.bxGkXmVc.0.0.22-alpha.2.js +1 -0
  21. package/dist/interface/Recordings.BTkAhv1T.0.0.22-alpha.2.js +1 -0
  22. package/dist/interface/Recordings.C_TDdsbp.0.0.22-alpha.2.js +1 -0
  23. package/dist/interface/Settings.Br20f1vP.0.0.22-alpha.2.js +1 -0
  24. package/dist/interface/System.WdQgcjx6.0.0.22-alpha.2.js +4 -0
  25. package/dist/interface/User.BUO6E9hO.0.0.22-alpha.2.js +1 -0
  26. package/dist/interface/VConfigEditor.vue_vue_type_script_setup_true_lang.V-YCJXF9.0.0.22-alpha.2.js +2 -0
  27. package/dist/interface/VConsole.efu2RLE4.0.0.22-alpha.2.js +1 -0
  28. package/dist/interface/VPlayer.7xACf1AA.0.0.22-alpha.2.js +4 -0
  29. package/dist/interface/VPluginCard.DObvo0pi.0.0.22-alpha.2.js +4 -0
  30. package/dist/interface/{ace-builds.BJA55oyY.0.0.22-alpha.0.js → ace-builds.CYuWji3-.0.0.22-alpha.2.js} +27 -27
  31. package/dist/interface/{apexcharts.CDIQ8dOe.0.0.22-alpha.0.js → apexcharts.BjVuUwvF.0.0.22-alpha.2.js} +1 -1
  32. package/dist/interface/assets/Adminpanel.0.0.22-alpha.2.a3t1v3MB.css +1 -0
  33. package/dist/interface/assets/Camera.0.0.22-alpha.2.D1I-fW4q.css +1 -0
  34. package/dist/interface/assets/Cameras.0.0.22-alpha.2.Buf1Dgce.css +1 -0
  35. package/dist/interface/assets/Camview.0.0.22-alpha.2.B7Cja2ry.css +1 -0
  36. package/dist/interface/assets/Config.0.0.22-alpha.2.DNGo2krN.css +1 -0
  37. package/dist/interface/assets/Console.0.0.22-alpha.2.Bh8l9QnM.css +1 -0
  38. package/dist/interface/assets/FirstSteps.0.0.22-alpha.2.sPEcItZ6.css +1 -0
  39. package/dist/interface/assets/NewCamera.0.0.22-alpha.2.Cq8GzeJ7.css +1 -0
  40. package/dist/interface/assets/{Settings.0.0.22-alpha.0.DC_-E3CR.css → Settings.0.0.22-alpha.2.CVmui2kE.css} +1 -1
  41. package/dist/interface/assets/VConsole.0.0.22-alpha.2.BCqKHpmJ.css +1 -0
  42. package/dist/interface/assets/VPlayer.0.0.22-alpha.2.DNtDNhfg.css +1 -0
  43. package/dist/interface/assets/VPluginCard.0.0.22-alpha.2.C8Lj6X-J.css +1 -0
  44. package/dist/interface/assets/main.0.0.22-alpha.2.DNhh__S1.css +1 -0
  45. package/dist/interface/assets/{vuetify.0.0.22-alpha.0.Cd1awv3t.css → vuetify.0.0.22-alpha.2.CgGsw6iO.css} +2 -2
  46. package/dist/interface/birpc.l0sNRNKZ.0.0.22-alpha.2.js +1 -0
  47. package/dist/interface/{dnd-core.BOxrARjV.0.0.22-alpha.0.js → dnd-core.CInfibuN.0.0.22-alpha.2.js} +1 -1
  48. package/dist/interface/{draggabilly.BEF5LqAH.0.0.22-alpha.0.js → draggabilly.D1IWfp_b.0.0.22-alpha.2.js} +1 -1
  49. package/dist/interface/engine.io-client.DefPnTEq.0.0.22-alpha.2.js +1 -0
  50. package/dist/interface/{ev-emitter.CsrKKb5x.0.0.22-alpha.0.js → ev-emitter.Dc-aWf7P.0.0.22-alpha.2.js} +1 -1
  51. package/dist/interface/{fast-deep-equal.CU36Z4X8.0.0.22-alpha.0.js → fast-deep-equal.B5b3SrkT.0.0.22-alpha.2.js} +1 -1
  52. package/dist/interface/{highlight.js.Cj98Ckpw.0.0.22-alpha.0.js → highlight.js.UlfE9jpO.0.0.22-alpha.2.js} +1 -1
  53. package/dist/interface/hookable.B8xFkYCm.0.0.22-alpha.2.js +1 -0
  54. package/dist/interface/index.html +34 -36
  55. package/dist/interface/{linkify-it.DIkWfPNS.0.0.22-alpha.0.js → linkify-it.Fi_bpuck.0.0.22-alpha.2.js} +1 -1
  56. package/dist/interface/main.oy2O2TRy.0.0.22-alpha.2.js +5 -0
  57. package/dist/interface/{markdown-it.DZ_JRYr5.0.0.22-alpha.0.js → markdown-it.DJgGU14J.0.0.22-alpha.2.js} +1 -1
  58. package/dist/interface/{nprogress.BKgW3YbN.0.0.22-alpha.0.js → nprogress.tJ-b_-wu.0.0.22-alpha.2.js} +1 -1
  59. package/dist/interface/perfect-debounce.Cp2ysxOb.0.0.22-alpha.2.js +1 -0
  60. package/dist/interface/pinia.yZCOO45u.0.0.22-alpha.2.js +5 -0
  61. package/dist/interface/plugins.Cfyqqots.0.0.22-alpha.2.js +1 -0
  62. package/dist/interface/point-in-polygon-hao.l0sNRNKZ.0.0.22-alpha.2.js +1 -0
  63. package/dist/interface/{qrcode.EjmMHZZR.0.0.22-alpha.0.js → qrcode.9XoqawvO.0.0.22-alpha.2.js} +1 -1
  64. package/dist/interface/{react-dnd-touch-backend.CU5Ax-9G.0.0.22-alpha.0.js → react-dnd-touch-backend.C6RhMT4L.0.0.22-alpha.2.js} +1 -1
  65. package/dist/interface/{rxjs.Cj9LQ_6u.0.0.22-alpha.0.js → rxjs.1CAxveb4.0.0.22-alpha.2.js} +1 -1
  66. package/dist/interface/socket.io-client.e8QnYieU.0.0.22-alpha.2.js +1 -0
  67. package/dist/interface/{socket.io-parser.CjxGsMQx.0.0.22-alpha.0.js → socket.io-parser.BLk6IoUZ.0.0.22-alpha.2.js} +1 -1
  68. package/dist/interface/sw.js +1 -1
  69. package/dist/interface/sweepline-intersections.l0sNRNKZ.0.0.22-alpha.2.js +1 -0
  70. package/dist/interface/system.CxMAOYjs.0.0.22-alpha.2.js +1 -0
  71. package/dist/interface/types.Cz9TaZAP.0.0.22-alpha.2.js +1 -0
  72. package/dist/interface/{unidragger.DTWO4kXE.0.0.22-alpha.0.js → unidragger.D9uoooG_.0.0.22-alpha.2.js} +1 -1
  73. package/dist/interface/utils.mAKpSMLY.0.0.22-alpha.2.js +1 -0
  74. package/dist/interface/uuid.Ch9TGLTe.0.0.22-alpha.2.js +1 -0
  75. package/dist/interface/vee-validate.DnRu3xAR.0.0.22-alpha.2.js +5 -0
  76. package/dist/interface/vue-i18n.DNPn_WN3.0.0.22-alpha.2.js +5 -0
  77. package/dist/interface/{vue-inline-svg.DF4jsptY.0.0.22-alpha.0.js → vue-inline-svg.BxDq9WpB.0.0.22-alpha.2.js} +1 -1
  78. package/dist/interface/vue-router.Ci1GIRoh.0.0.22-alpha.2.js +5 -0
  79. package/dist/interface/vue.l0sNRNKZ.0.0.22-alpha.2.js +1 -0
  80. package/dist/interface/vue3-apexcharts.4RpZv9AC.0.0.22-alpha.2.js +1 -0
  81. package/dist/interface/{vue3-dnd.CsLnkm-l.0.0.22-alpha.0.js → vue3-dnd.CyNbBiuS.0.0.22-alpha.2.js} +1 -1
  82. package/dist/interface/vue3-toastify.Jtf1C0Kw.0.0.22-alpha.2.js +1 -0
  83. package/dist/interface/vuetify.D4io05br.0.0.22-alpha.2.js +5 -0
  84. package/dist/interface/zod.DnW1_kUe.0.0.22-alpha.2.js +1 -0
  85. package/dist/server/bin/cameraui-server.js +8 -0
  86. package/dist/server/bin/cameraui-server.js.map +1 -0
  87. package/dist/server/package.json +44 -70
  88. package/dist/server/requirements.txt +6 -5
  89. package/dist/server/src/api/controllers/auth.controller.js +1 -1
  90. package/dist/server/src/api/controllers/auth.controller.js.map +1 -1
  91. package/dist/server/src/api/controllers/backup.controller.js +2 -2
  92. package/dist/server/src/api/controllers/backup.controller.js.map +1 -1
  93. package/dist/server/src/api/controllers/cameras.controller.d.ts +4 -2
  94. package/dist/server/src/api/controllers/cameras.controller.js +88 -42
  95. package/dist/server/src/api/controllers/cameras.controller.js.map +1 -1
  96. package/dist/server/src/api/controllers/files.controller.js.map +1 -1
  97. package/dist/server/src/api/controllers/frameWorkers.controller.d.ts +1 -1
  98. package/dist/server/src/api/controllers/frameWorkers.controller.js +15 -7
  99. package/dist/server/src/api/controllers/frameWorkers.controller.js.map +1 -1
  100. package/dist/server/src/api/controllers/plugins.controller.d.ts +3 -4
  101. package/dist/server/src/api/controllers/plugins.controller.js +141 -202
  102. package/dist/server/src/api/controllers/plugins.controller.js.map +1 -1
  103. package/dist/server/src/api/controllers/system.controller.d.ts +9 -3
  104. package/dist/server/src/api/controllers/system.controller.js +73 -53
  105. package/dist/server/src/api/controllers/system.controller.js.map +1 -1
  106. package/dist/server/src/api/controllers/users.controller.js +12 -10
  107. package/dist/server/src/api/controllers/users.controller.js.map +1 -1
  108. package/dist/server/src/api/database/checks.d.ts +55 -0
  109. package/dist/server/src/api/database/checks.js +183 -0
  110. package/dist/server/src/api/database/checks.js.map +1 -0
  111. package/dist/server/src/api/database/constants.d.ts +8 -0
  112. package/dist/server/src/api/database/constants.js +9 -0
  113. package/dist/server/src/api/database/constants.js.map +1 -0
  114. package/dist/server/src/api/database/index.d.ts +4 -13
  115. package/dist/server/src/api/database/index.js +61 -39
  116. package/dist/server/src/api/database/index.js.map +1 -1
  117. package/dist/server/src/api/database/migration.d.ts +1 -0
  118. package/dist/server/src/api/database/migration.js +73 -7
  119. package/dist/server/src/api/database/migration.js.map +1 -1
  120. package/dist/server/src/api/database/selfcheck.d.ts +48 -0
  121. package/dist/server/src/api/database/selfcheck.js +398 -0
  122. package/dist/server/src/api/database/selfcheck.js.map +1 -0
  123. package/dist/server/src/api/database/types.d.ts +15 -141
  124. package/dist/server/src/api/go2rtc/api/application.js +3 -2
  125. package/dist/server/src/api/go2rtc/api/application.js.map +1 -1
  126. package/dist/server/src/api/go2rtc/api/index.js +3 -2
  127. package/dist/server/src/api/go2rtc/api/index.js.map +1 -1
  128. package/dist/server/src/api/go2rtc/api/streams.d.ts +1 -1
  129. package/dist/server/src/api/go2rtc/api/streams.js +4 -2
  130. package/dist/server/src/api/go2rtc/api/streams.js.map +1 -1
  131. package/dist/server/src/api/go2rtc/index.d.ts +1 -0
  132. package/dist/server/src/api/go2rtc/index.js +6 -1
  133. package/dist/server/src/api/go2rtc/index.js.map +1 -1
  134. package/dist/server/src/api/go2rtc/types.d.ts +2 -18
  135. package/dist/server/src/api/index.d.ts +1 -0
  136. package/dist/server/src/api/index.js +23 -31
  137. package/dist/server/src/api/index.js.map +1 -1
  138. package/dist/server/src/api/middlewares/authPermission.middleware.d.ts +3 -3
  139. package/dist/server/src/api/middlewares/authPermission.middleware.js.map +1 -1
  140. package/dist/server/src/api/middlewares/authValidation.middleware.d.ts +2 -2
  141. package/dist/server/src/api/middlewares/authValidation.middleware.js +3 -3
  142. package/dist/server/src/api/middlewares/authValidation.middleware.js.map +1 -1
  143. package/dist/server/src/api/middlewares/socketAuth.middleware.d.ts +1 -1
  144. package/dist/server/src/api/middlewares/socketAuth.middleware.js +1 -1
  145. package/dist/server/src/api/plugins/header.plugin.d.ts +2 -0
  146. package/dist/server/src/api/plugins/header.plugin.js +13 -0
  147. package/dist/server/src/api/plugins/header.plugin.js.map +1 -0
  148. package/dist/server/src/api/plugins/logger.plugin.js +1 -1
  149. package/dist/server/src/api/plugins/logger.plugin.js.map +1 -1
  150. package/dist/server/src/api/plugins/system.plugin.d.ts +3 -1
  151. package/dist/server/src/api/plugins/system.plugin.js +6 -1
  152. package/dist/server/src/api/plugins/system.plugin.js.map +1 -1
  153. package/dist/server/src/api/plugins/useragent.plugin.d.ts +1 -1
  154. package/dist/server/src/api/plugins/useragent.plugin.js +1 -1
  155. package/dist/server/src/api/plugins/useragent.plugin.js.map +1 -1
  156. package/dist/server/src/api/routes/cameras.routes.js +12 -0
  157. package/dist/server/src/api/routes/cameras.routes.js.map +1 -1
  158. package/dist/server/src/api/routes/plugins.routes.js +24 -0
  159. package/dist/server/src/api/routes/plugins.routes.js.map +1 -1
  160. package/dist/server/src/api/routes/system.routes.js +3 -6
  161. package/dist/server/src/api/routes/system.routes.js.map +1 -1
  162. package/dist/server/src/api/schemas/backup.schema.js.map +1 -1
  163. package/dist/server/src/api/schemas/cameras.schema.d.ts +227 -187
  164. package/dist/server/src/api/schemas/cameras.schema.js +25 -6
  165. package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
  166. package/dist/server/src/api/schemas/config.schema.d.ts +12 -20
  167. package/dist/server/src/api/schemas/config.schema.js +0 -2
  168. package/dist/server/src/api/schemas/config.schema.js.map +1 -1
  169. package/dist/server/src/api/schemas/go2rtc.schema.d.ts +143 -143
  170. package/dist/server/src/api/schemas/plugins.schema.d.ts +5 -5
  171. package/dist/server/src/api/schemas/plugins.schema.js +1 -1
  172. package/dist/server/src/api/schemas/plugins.schema.js.map +1 -1
  173. package/dist/server/src/api/schemas/system.schema.d.ts +8 -0
  174. package/dist/server/src/api/schemas/system.schema.js +6 -1
  175. package/dist/server/src/api/schemas/system.schema.js.map +1 -1
  176. package/dist/server/src/api/schemas/users.schema.d.ts +170 -170
  177. package/dist/server/src/api/schemas/users.schema.js.map +1 -1
  178. package/dist/server/src/api/services/auth.service.js +17 -17
  179. package/dist/server/src/api/services/auth.service.js.map +1 -1
  180. package/dist/server/src/api/services/backup.service.js.map +1 -1
  181. package/dist/server/src/api/services/cameras.service.d.ts +10 -5
  182. package/dist/server/src/api/services/cameras.service.js +166 -89
  183. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  184. package/dist/server/src/api/services/plugins.service.d.ts +1 -0
  185. package/dist/server/src/api/services/plugins.service.js +16 -11
  186. package/dist/server/src/api/services/plugins.service.js.map +1 -1
  187. package/dist/server/src/api/services/system.service.js +5 -4
  188. package/dist/server/src/api/services/system.service.js.map +1 -1
  189. package/dist/server/src/api/services/users.service.js +29 -29
  190. package/dist/server/src/api/services/users.service.js.map +1 -1
  191. package/dist/server/src/api/types/index.d.ts +127 -129
  192. package/dist/server/src/api/types/index.js.map +1 -1
  193. package/dist/server/src/api/utils/cameraSource.d.ts +2 -0
  194. package/dist/server/src/api/utils/cameraSource.js +34 -0
  195. package/dist/server/src/api/utils/cameraSource.js.map +1 -0
  196. package/dist/server/src/api/utils/cert.d.ts +7 -7
  197. package/dist/server/src/api/utils/cert.js +178 -385
  198. package/dist/server/src/api/utils/cert.js.map +1 -1
  199. package/dist/server/src/api/utils/constants.d.ts +0 -2
  200. package/dist/server/src/api/utils/constants.js +4 -7
  201. package/dist/server/src/api/utils/constants.js.map +1 -1
  202. package/dist/server/src/api/websocket/index.js +2 -1
  203. package/dist/server/src/api/websocket/index.js.map +1 -1
  204. package/dist/server/src/api/websocket/nsp/logs.d.ts +10 -2
  205. package/dist/server/src/api/websocket/nsp/logs.js +110 -76
  206. package/dist/server/src/api/websocket/nsp/logs.js.map +1 -1
  207. package/dist/server/src/api/websocket/nsp/metrics.d.ts +1 -1
  208. package/dist/server/src/api/websocket/nsp/metrics.js +19 -16
  209. package/dist/server/src/api/websocket/nsp/metrics.js.map +1 -1
  210. package/dist/server/src/api/websocket/nsp/notifications.js +1 -1
  211. package/dist/server/src/api/websocket/nsp/notifications.js.map +1 -1
  212. package/dist/server/src/api/websocket/nsp/plugins.d.ts +1 -1
  213. package/dist/server/src/api/websocket/nsp/plugins.js +3 -4
  214. package/dist/server/src/api/websocket/nsp/plugins.js.map +1 -1
  215. package/dist/server/src/api/websocket/nsp/server.d.ts +9 -4
  216. package/dist/server/src/api/websocket/nsp/server.js +57 -20
  217. package/dist/server/src/api/websocket/nsp/server.js.map +1 -1
  218. package/dist/server/src/api/websocket/nsp/status.d.ts +1 -1
  219. package/dist/server/src/api/websocket/nsp/status.js +9 -7
  220. package/dist/server/src/api/websocket/nsp/status.js.map +1 -1
  221. package/dist/server/src/api/websocket/types.d.ts +7 -13
  222. package/dist/server/src/api.d.ts +8 -23
  223. package/dist/server/src/api.js +43 -24
  224. package/dist/server/src/api.js.map +1 -1
  225. package/dist/server/src/camera/controller.d.ts +31 -14
  226. package/dist/server/src/camera/controller.js +371 -68
  227. package/dist/server/src/camera/controller.js.map +1 -1
  228. package/dist/server/src/{decoder/worker.d.ts → camera/frameWorker.d.ts} +11 -8
  229. package/dist/server/src/camera/frameWorker.js +305 -0
  230. package/dist/server/src/camera/frameWorker.js.map +1 -0
  231. package/dist/server/src/camera/types.d.ts +1 -199
  232. package/dist/server/src/camera/types.js +1 -6
  233. package/dist/server/src/camera/types.js.map +1 -1
  234. package/dist/server/src/go2rtc/index.js +23 -11
  235. package/dist/server/src/go2rtc/index.js.map +1 -1
  236. package/dist/server/src/main.d.ts +21 -0
  237. package/dist/server/src/main.js +130 -74
  238. package/dist/server/src/main.js.map +1 -1
  239. package/dist/server/src/nats/index.d.ts +5 -5
  240. package/dist/server/src/nats/index.js +5 -6
  241. package/dist/server/src/nats/index.js.map +1 -1
  242. package/dist/server/src/nats/proxy/cameraDevice.d.ts +4 -4
  243. package/dist/server/src/nats/proxy/cameraDevice.js +41 -58
  244. package/dist/server/src/nats/proxy/cameraDevice.js.map +1 -1
  245. package/dist/server/src/nats/proxy/coreManager.d.ts +4 -4
  246. package/dist/server/src/nats/proxy/coreManager.js +6 -1
  247. package/dist/server/src/nats/proxy/coreManager.js.map +1 -1
  248. package/dist/server/src/nats/proxy/deviceManager.d.ts +5 -7
  249. package/dist/server/src/nats/proxy/deviceManager.js +4 -2
  250. package/dist/server/src/nats/proxy/deviceManager.js.map +1 -1
  251. package/dist/server/src/nats/server.js +33 -22
  252. package/dist/server/src/nats/server.js.map +1 -1
  253. package/dist/server/src/nats/types.d.ts +3 -121
  254. package/dist/server/src/nats/utils.d.ts +1 -1
  255. package/dist/server/src/nats/websocket.d.ts +2 -2
  256. package/dist/server/src/nats/websocket.js +7 -6
  257. package/dist/server/src/nats/websocket.js.map +1 -1
  258. package/dist/server/src/plugins/index.d.ts +3 -4
  259. package/dist/server/src/plugins/index.js +39 -38
  260. package/dist/server/src/plugins/index.js.map +1 -1
  261. package/dist/server/src/plugins/plugin.d.ts +6 -3
  262. package/dist/server/src/plugins/plugin.js +59 -23
  263. package/dist/server/src/plugins/plugin.js.map +1 -1
  264. package/dist/server/src/plugins/types.d.ts +1 -148
  265. package/dist/server/src/plugins/types.js +0 -15
  266. package/dist/server/src/plugins/types.js.map +1 -1
  267. package/dist/server/src/plugins/worker.d.ts +22 -3
  268. package/dist/server/src/plugins/worker.js +201 -59
  269. package/dist/server/src/plugins/worker.js.map +1 -1
  270. package/dist/server/src/services/config/constants.d.ts +3 -1
  271. package/dist/server/src/services/config/constants.js +12 -8
  272. package/dist/server/src/services/config/constants.js.map +1 -1
  273. package/dist/server/src/services/config/index.d.ts +15 -9
  274. package/dist/server/src/services/config/index.js +135 -46
  275. package/dist/server/src/services/config/index.js.map +1 -1
  276. package/dist/server/src/services/config/types.d.ts +10 -15
  277. package/dist/server/src/services/config/types.js.map +1 -1
  278. package/dist/server/src/services/logger/index.d.ts +10 -17
  279. package/dist/server/src/services/logger/index.js +44 -91
  280. package/dist/server/src/services/logger/index.js.map +1 -1
  281. package/dist/server/src/types.d.ts +24 -0
  282. package/eslint.config.js +89 -0
  283. package/localdeps.txt +6 -0
  284. package/package.json +44 -70
  285. package/dist/interface/@intlify.YW_pt133.0.0.22-alpha.0.js +0 -15
  286. package/dist/interface/@mdi.DnMbZhUH.0.0.22-alpha.0.js +0 -1
  287. package/dist/interface/@popperjs.BQBsAJpH.0.0.22-alpha.0.js +0 -1
  288. package/dist/interface/@tanstack.Dk7F0Vz0.0.0.22-alpha.0.js +0 -1
  289. package/dist/interface/@vue.CvjRlaU6.0.0.22-alpha.0.js +0 -17
  290. package/dist/interface/@vueuse.XquUZgtp.0.0.22-alpha.0.js +0 -1
  291. package/dist/interface/Account.Bv7AmbuK.0.0.22-alpha.0.js +0 -1
  292. package/dist/interface/Adminpanel.DsGsXBHH.0.0.22-alpha.0.js +0 -2
  293. package/dist/interface/Appearance.C6Qj2C_l.0.0.22-alpha.0.js +0 -1
  294. package/dist/interface/Backup.BlSlgkpW.0.0.22-alpha.0.js +0 -1
  295. package/dist/interface/Camera.CC08IZ17.0.0.22-alpha.0.js +0 -1
  296. package/dist/interface/Cameras.BqEpCuCR.0.0.22-alpha.0.js +0 -1
  297. package/dist/interface/Camview.u79SRE7s.0.0.22-alpha.0.js +0 -1
  298. package/dist/interface/Config.CE50Q8KG.0.0.22-alpha.0.js +0 -1
  299. package/dist/interface/Console.DDlXS_WH.0.0.22-alpha.0.js +0 -4
  300. package/dist/interface/FirstSteps.CHLswquo.0.0.22-alpha.0.js +0 -1
  301. package/dist/interface/Plugin.CtrAxCQv.0.0.22-alpha.0.js +0 -1
  302. package/dist/interface/Plugins.CunIvSJv.0.0.22-alpha.0.js +0 -1
  303. package/dist/interface/Recordings.Bsbb3cLA.0.0.22-alpha.0.js +0 -1
  304. package/dist/interface/Recordings.CnclYToJ.0.0.22-alpha.0.js +0 -1
  305. package/dist/interface/Settings.CnMXEIf2.0.0.22-alpha.0.js +0 -1
  306. package/dist/interface/System.BnPrdvN0.0.0.22-alpha.0.js +0 -4
  307. package/dist/interface/User.DBaos4b8.0.0.22-alpha.0.js +0 -1
  308. package/dist/interface/VConfigEditor.vue_vue_type_script_setup_true_lang.CFukh5l5.0.0.22-alpha.0.js +0 -2
  309. package/dist/interface/VConsole.BgptXj79.0.0.22-alpha.0.js +0 -1
  310. package/dist/interface/VPlayer.C5vExb2M.0.0.22-alpha.0.js +0 -1
  311. package/dist/interface/VPluginCard.B-Rum4A2.0.0.22-alpha.0.js +0 -4
  312. package/dist/interface/assets/Adminpanel.0.0.22-alpha.0.CXsTAXPL.css +0 -1
  313. package/dist/interface/assets/Camera.0.0.22-alpha.0.BDtUJ-lA.css +0 -1
  314. package/dist/interface/assets/Cameras.0.0.22-alpha.0.Djx0F2MM.css +0 -1
  315. package/dist/interface/assets/Camview.0.0.22-alpha.0.Ce_V-Nxj.css +0 -1
  316. package/dist/interface/assets/Config.0.0.22-alpha.0.k4QpWumg.css +0 -1
  317. package/dist/interface/assets/Console.0.0.22-alpha.0.DWrfRWs9.css +0 -1
  318. package/dist/interface/assets/FirstSteps.0.0.22-alpha.0.B3-pv8-a.css +0 -1
  319. package/dist/interface/assets/NewCamera.0.0.22-alpha.0.DJ3tUBT_.css +0 -1
  320. package/dist/interface/assets/VConsole.0.0.22-alpha.0.BZT1WyS-.css +0 -1
  321. package/dist/interface/assets/VPlayer.0.0.22-alpha.0.CZXlTn4I.css +0 -1
  322. package/dist/interface/assets/VPluginCard.0.0.22-alpha.0.CIL48ca_.css +0 -1
  323. package/dist/interface/assets/main.0.0.22-alpha.0.BOf8IWhK.css +0 -1
  324. package/dist/interface/assets/v-calendar.0.0.22-alpha.0.CtSuDYZU.css +0 -1
  325. package/dist/interface/engine.io-client.BMIamAQC.0.0.22-alpha.0.js +0 -1
  326. package/dist/interface/main.BdLkotV4.0.0.22-alpha.0.js +0 -4
  327. package/dist/interface/pinia.DA4R8TFr.0.0.22-alpha.0.js +0 -5
  328. package/dist/interface/plugins.BcX2DDRp.0.0.22-alpha.0.js +0 -1
  329. package/dist/interface/socket.io-client.C9LJ1Zls.0.0.22-alpha.0.js +0 -1
  330. package/dist/interface/system.-IyAtje9.0.0.22-alpha.0.js +0 -1
  331. package/dist/interface/ui.Cu_G5h1z.0.0.22-alpha.0.js +0 -1
  332. package/dist/interface/utils.BvINh1mj.0.0.22-alpha.0.js +0 -1
  333. package/dist/interface/uuid.DvF23Exx.0.0.22-alpha.0.js +0 -1
  334. package/dist/interface/v-calendar.CmvG-vVL.0.0.22-alpha.0.js +0 -1
  335. package/dist/interface/vee-validate.DTObZ862.0.0.22-alpha.0.js +0 -5
  336. package/dist/interface/vue-i18n.CGodlogN.0.0.22-alpha.0.js +0 -5
  337. package/dist/interface/vue-router.CxSRaAvj.0.0.22-alpha.0.js +0 -5
  338. package/dist/interface/vue3-apexcharts.DAlcrhmw.0.0.22-alpha.0.js +0 -1
  339. package/dist/interface/vue3-toastify.CEJWJskm.0.0.22-alpha.0.js +0 -1
  340. package/dist/interface/vuetify.Cn9UEwpM.0.0.22-alpha.0.js +0 -5
  341. package/dist/interface/zod.BaF2dDCd.0.0.22-alpha.0.js +0 -1
  342. package/dist/server/bin/cameraui.d.ts +0 -54
  343. package/dist/server/bin/cameraui.js +0 -622
  344. package/dist/server/bin/cameraui.js.map +0 -1
  345. package/dist/server/bin/fork.js +0 -13
  346. package/dist/server/bin/fork.js.map +0 -1
  347. package/dist/server/bin/installer/base.d.ts +0 -17
  348. package/dist/server/bin/installer/base.js +0 -45
  349. package/dist/server/bin/installer/base.js.map +0 -1
  350. package/dist/server/bin/installer/darwin.d.ts +0 -61
  351. package/dist/server/bin/installer/darwin.js +0 -249
  352. package/dist/server/bin/installer/darwin.js.map +0 -1
  353. package/dist/server/bin/installer/freebsd.d.ts +0 -64
  354. package/dist/server/bin/installer/freebsd.js +0 -254
  355. package/dist/server/bin/installer/freebsd.js.map +0 -1
  356. package/dist/server/bin/installer/linux.d.ts +0 -103
  357. package/dist/server/bin/installer/linux.js +0 -482
  358. package/dist/server/bin/installer/linux.js.map +0 -1
  359. package/dist/server/bin/installer/win32.d.ts +0 -45
  360. package/dist/server/bin/installer/win32.js +0 -178
  361. package/dist/server/bin/installer/win32.js.map +0 -1
  362. package/dist/server/src/api/plugins/cameraui.plugin.d.ts +0 -11
  363. package/dist/server/src/api/plugins/cameraui.plugin.js +0 -6
  364. package/dist/server/src/api/plugins/cameraui.plugin.js.map +0 -1
  365. package/dist/server/src/api/plugins/database.plugin.d.ts +0 -11
  366. package/dist/server/src/api/plugins/database.plugin.js +0 -12
  367. package/dist/server/src/api/plugins/database.plugin.js.map +0 -1
  368. package/dist/server/src/api/plugins/go2rtc.plugin.d.ts +0 -11
  369. package/dist/server/src/api/plugins/go2rtc.plugin.js +0 -11
  370. package/dist/server/src/api/plugins/go2rtc.plugin.js.map +0 -1
  371. package/dist/server/src/camera/device.d.ts +0 -29
  372. package/dist/server/src/camera/device.js +0 -20
  373. package/dist/server/src/camera/device.js.map +0 -1
  374. package/dist/server/src/camera/index.d.ts +0 -94
  375. package/dist/server/src/camera/index.js +0 -620
  376. package/dist/server/src/camera/index.js.map +0 -1
  377. package/dist/server/src/camera/interfaces/camera.d.ts +0 -10
  378. package/dist/server/src/camera/interfaces/camera.js +0 -23
  379. package/dist/server/src/camera/interfaces/camera.js.map +0 -1
  380. package/dist/server/src/camera/interfaces/prebuffer.d.ts +0 -11
  381. package/dist/server/src/camera/interfaces/prebuffer.js +0 -26
  382. package/dist/server/src/camera/interfaces/prebuffer.js.map +0 -1
  383. package/dist/server/src/camera/interfaces/ptz.d.ts +0 -13
  384. package/dist/server/src/camera/interfaces/ptz.js +0 -47
  385. package/dist/server/src/camera/interfaces/ptz.js.map +0 -1
  386. package/dist/server/src/camera/iou.d.ts +0 -2
  387. package/dist/server/src/camera/iou.js +0 -53
  388. package/dist/server/src/camera/iou.js.map +0 -1
  389. package/dist/server/src/camera/polygon.d.ts +0 -6
  390. package/dist/server/src/camera/polygon.js +0 -151
  391. package/dist/server/src/camera/polygon.js.map +0 -1
  392. package/dist/server/src/camera/streaming/peer-connection.d.ts +0 -55
  393. package/dist/server/src/camera/streaming/peer-connection.js +0 -203
  394. package/dist/server/src/camera/streaming/peer-connection.js.map +0 -1
  395. package/dist/server/src/camera/streaming/webrtc-connection.d.ts +0 -35
  396. package/dist/server/src/camera/streaming/webrtc-connection.js +0 -170
  397. package/dist/server/src/camera/streaming/webrtc-connection.js.map +0 -1
  398. package/dist/server/src/camera/streaming/werift-session.d.ts +0 -41
  399. package/dist/server/src/camera/streaming/werift-session.js +0 -179
  400. package/dist/server/src/camera/streaming/werift-session.js.map +0 -1
  401. package/dist/server/src/camera/videoFrame.d.ts +0 -24
  402. package/dist/server/src/camera/videoFrame.js +0 -104
  403. package/dist/server/src/camera/videoFrame.js.map +0 -1
  404. package/dist/server/src/decoder/index.d.ts +0 -11
  405. package/dist/server/src/decoder/index.js +0 -32
  406. package/dist/server/src/decoder/index.js.map +0 -1
  407. package/dist/server/src/decoder/types.d.ts +0 -151
  408. package/dist/server/src/decoder/types.js +0 -2
  409. package/dist/server/src/decoder/types.js.map +0 -1
  410. package/dist/server/src/decoder/worker.js +0 -245
  411. package/dist/server/src/decoder/worker.js.map +0 -1
  412. package/dist/server/src/index.d.ts +0 -18
  413. package/dist/server/src/index.js +0 -5
  414. package/dist/server/src/index.js.map +0 -1
  415. package/dist/server/src/nats/connection.d.ts +0 -17
  416. package/dist/server/src/nats/connection.js +0 -66
  417. package/dist/server/src/nats/connection.js.map +0 -1
  418. package/dist/server/src/nats/constants.d.ts +0 -1
  419. package/dist/server/src/nats/constants.js +0 -2
  420. package/dist/server/src/nats/constants.js.map +0 -1
  421. package/dist/server/src/nats/error.d.ts +0 -9
  422. package/dist/server/src/nats/error.js +0 -11
  423. package/dist/server/src/nats/error.js.map +0 -1
  424. package/dist/server/src/nats/messageQueue.d.ts +0 -20
  425. package/dist/server/src/nats/messageQueue.js +0 -132
  426. package/dist/server/src/nats/messageQueue.js.map +0 -1
  427. package/dist/server/src/nats/subscription.d.ts +0 -12
  428. package/dist/server/src/nats/subscription.js +0 -21
  429. package/dist/server/src/nats/subscription.js.map +0 -1
  430. package/dist/server/src/plugins/interfaces/audioDetection.d.ts +0 -7
  431. package/dist/server/src/plugins/interfaces/audioDetection.js +0 -4
  432. package/dist/server/src/plugins/interfaces/audioDetection.js.map +0 -1
  433. package/dist/server/src/plugins/interfaces/base.d.ts +0 -6
  434. package/dist/server/src/plugins/interfaces/base.js +0 -3
  435. package/dist/server/src/plugins/interfaces/base.js.map +0 -1
  436. package/dist/server/src/plugins/interfaces/motionDetection.d.ts +0 -6
  437. package/dist/server/src/plugins/interfaces/motionDetection.js +0 -4
  438. package/dist/server/src/plugins/interfaces/motionDetection.js.map +0 -1
  439. package/dist/server/src/plugins/interfaces/objectDetection.d.ts +0 -7
  440. package/dist/server/src/plugins/interfaces/objectDetection.js +0 -4
  441. package/dist/server/src/plugins/interfaces/objectDetection.js.map +0 -1
  442. package/dist/server/src/polyglot/node/decoder/child.d.ts +0 -1
  443. package/dist/server/src/polyglot/node/decoder/child.js +0 -644
  444. package/dist/server/src/polyglot/node/decoder/child.js.map +0 -1
  445. package/dist/server/src/polyglot/node/decoder/imageUtils.d.ts +0 -24
  446. package/dist/server/src/polyglot/node/decoder/imageUtils.js +0 -205
  447. package/dist/server/src/polyglot/node/decoder/imageUtils.js.map +0 -1
  448. package/dist/server/src/polyglot/node/decoder/wasm/build/decoder.d.ts +0 -144
  449. package/dist/server/src/polyglot/node/decoder/wasm/build/decoder.js +0 -65
  450. package/dist/server/src/polyglot/node/decoder/wasm/build/decoder.wasm +0 -0
  451. package/dist/server/src/polyglot/node/decoder/wasm/test/imageUtils.py +0 -106
  452. package/dist/server/src/polyglot/node/plugins/cameraStorage.d.ts +0 -107
  453. package/dist/server/src/polyglot/node/plugins/cameraStorage.js +0 -292
  454. package/dist/server/src/polyglot/node/plugins/cameraStorage.js.map +0 -1
  455. package/dist/server/src/polyglot/node/plugins/child.d.ts +0 -28
  456. package/dist/server/src/polyglot/node/plugins/child.js +0 -222
  457. package/dist/server/src/polyglot/node/plugins/child.js.map +0 -1
  458. package/dist/server/src/polyglot/node/plugins/configService.d.ts +0 -104
  459. package/dist/server/src/polyglot/node/plugins/configService.js +0 -213
  460. package/dist/server/src/polyglot/node/plugins/configService.js.map +0 -1
  461. package/dist/server/src/polyglot/node/plugins/pluginApi.d.ts +0 -35
  462. package/dist/server/src/polyglot/node/plugins/pluginApi.js +0 -23
  463. package/dist/server/src/polyglot/node/plugins/pluginApi.js.map +0 -1
  464. package/dist/server/src/polyglot/node/plugins/pluginLogger.d.ts +0 -18
  465. package/dist/server/src/polyglot/node/plugins/pluginLogger.js +0 -89
  466. package/dist/server/src/polyglot/node/plugins/pluginLogger.js.map +0 -1
  467. package/dist/server/src/polyglot/node/plugins/proxy/cameraDevice.d.ts +0 -69
  468. package/dist/server/src/polyglot/node/plugins/proxy/cameraDevice.js +0 -432
  469. package/dist/server/src/polyglot/node/plugins/proxy/cameraDevice.js.map +0 -1
  470. package/dist/server/src/polyglot/node/plugins/proxy/coreManager.d.ts +0 -40
  471. package/dist/server/src/polyglot/node/plugins/proxy/coreManager.js +0 -105
  472. package/dist/server/src/polyglot/node/plugins/proxy/coreManager.js.map +0 -1
  473. package/dist/server/src/polyglot/node/plugins/proxy/deviceManager.d.ts +0 -47
  474. package/dist/server/src/polyglot/node/plugins/proxy/deviceManager.js +0 -164
  475. package/dist/server/src/polyglot/node/plugins/proxy/deviceManager.js.map +0 -1
  476. package/dist/server/src/polyglot/node/plugins/schema.d.ts +0 -293
  477. package/dist/server/src/polyglot/node/plugins/schema.js +0 -740
  478. package/dist/server/src/polyglot/node/plugins/schema.js.map +0 -1
  479. package/dist/server/src/polyglot/node/plugins/storageController.d.ts +0 -30
  480. package/dist/server/src/polyglot/node/plugins/storageController.js +0 -40
  481. package/dist/server/src/polyglot/node/plugins/storageController.js.map +0 -1
  482. package/dist/server/src/polyglot/python/camera/interfaces/camera.py +0 -20
  483. package/dist/server/src/polyglot/python/camera/interfaces/prebuffer.py +0 -25
  484. package/dist/server/src/polyglot/python/camera/interfaces/ptz.py +0 -38
  485. package/dist/server/src/polyglot/python/camera/iou.py +0 -80
  486. package/dist/server/src/polyglot/python/camera/polygon.py +0 -173
  487. package/dist/server/src/polyglot/python/camera/video_frame.py +0 -188
  488. package/dist/server/src/polyglot/python/camera_ui_types/__init__.py +0 -1196
  489. package/dist/server/src/polyglot/python/decoder/child.py +0 -882
  490. package/dist/server/src/polyglot/python/decoder/image_utils.py +0 -149
  491. package/dist/server/src/polyglot/python/decoder/typings.py +0 -99
  492. package/dist/server/src/polyglot/python/plugins/camera_storage.py +0 -391
  493. package/dist/server/src/polyglot/python/plugins/child.py +0 -394
  494. package/dist/server/src/polyglot/python/plugins/config_service.py +0 -187
  495. package/dist/server/src/polyglot/python/plugins/constants.py +0 -1
  496. package/dist/server/src/polyglot/python/plugins/message_queue.py +0 -182
  497. package/dist/server/src/polyglot/python/plugins/plugin_api.py +0 -34
  498. package/dist/server/src/polyglot/python/plugins/plugin_logger.py +0 -111
  499. package/dist/server/src/polyglot/python/plugins/proxy/camera_device.py +0 -1677
  500. package/dist/server/src/polyglot/python/plugins/proxy/core_manager.py +0 -145
  501. package/dist/server/src/polyglot/python/plugins/proxy/device_manager.py +0 -226
  502. package/dist/server/src/polyglot/python/plugins/schema.py +0 -181
  503. package/dist/server/src/polyglot/python/plugins/storage_controller.py +0 -58
  504. package/dist/server/src/polyglot/python/plugins/typings.py +0 -253
  505. package/dist/server/src/polyglot/python/utilities/connection.py +0 -86
  506. package/dist/server/src/polyglot/python/utilities/json_lmdb.py +0 -19
  507. package/dist/server/src/polyglot/python/utilities/object_path.py +0 -195
  508. package/dist/server/src/polyglot/python/utilities/packer.py +0 -11
  509. package/dist/server/src/polyglot/python/utilities/subscriptions.py +0 -22
  510. package/dist/server/src/polyglot/python/utilities/task.py +0 -35
  511. package/dist/server/src/polyglot/python/utilities/thread.py +0 -10
  512. package/dist/server/src/polyglot/python/utilities/utils.py +0 -73
  513. package/dist/server/src/utils/ffmpeg.d.ts +0 -2
  514. package/dist/server/src/utils/ffmpeg.js +0 -61
  515. package/dist/server/src/utils/ffmpeg.js.map +0 -1
  516. package/dist/server/src/utils/network.d.ts +0 -12
  517. package/dist/server/src/utils/network.js +0 -92
  518. package/dist/server/src/utils/network.js.map +0 -1
  519. package/dist/server/src/utils/npm.d.ts +0 -4
  520. package/dist/server/src/utils/npm.js +0 -128
  521. package/dist/server/src/utils/npm.js.map +0 -1
  522. package/dist/server/src/utils/packer.d.ts +0 -2
  523. package/dist/server/src/utils/packer.js +0 -17
  524. package/dist/server/src/utils/packer.js.map +0 -1
  525. package/dist/server/src/utils/pythonInstaller.d.ts +0 -48
  526. package/dist/server/src/utils/pythonInstaller.js +0 -494
  527. package/dist/server/src/utils/pythonInstaller.js.map +0 -1
  528. package/dist/server/src/utils/reader.d.ts +0 -5
  529. package/dist/server/src/utils/reader.js +0 -41
  530. package/dist/server/src/utils/reader.js.map +0 -1
  531. package/dist/server/src/utils/subscribed.d.ts +0 -9
  532. package/dist/server/src/utils/subscribed.js +0 -17
  533. package/dist/server/src/utils/subscribed.js.map +0 -1
  534. package/dist/server/src/utils/utils.d.ts +0 -10
  535. package/dist/server/src/utils/utils.js +0 -165
  536. package/dist/server/src/utils/utils.js.map +0 -1
  537. package/upgrade-server.sh +0 -205
  538. /package/dist/interface/{@babel.l0sNRNKZ.0.0.22-alpha.0.js → @babel.l0sNRNKZ.0.0.22-alpha.2.js} +0 -0
  539. /package/dist/interface/{@react-dnd.CcwRs9xb.0.0.22-alpha.0.js → @react-dnd.CcwRs9xb.0.0.22-alpha.2.js} +0 -0
  540. /package/dist/interface/{@socket.io.Dkula2eQ.0.0.22-alpha.0.js → @socket.io.Dkula2eQ.0.0.22-alpha.2.js} +0 -0
  541. /package/dist/interface/{vue.l0sNRNKZ.0.0.22-alpha.0.js → @turf.l0sNRNKZ.0.0.22-alpha.2.js} +0 -0
  542. /package/dist/interface/{@xterm.DBtVaaEV.0.0.22-alpha.0.js → @xterm.CRKo0AGB.0.0.22-alpha.2.js} +0 -0
  543. /package/dist/interface/assets/{@vueform.0.0.22-alpha.0.h7tNX9p6.css → @vueform.0.0.22-alpha.2.CroAHJs8.css} +0 -0
  544. /package/dist/interface/assets/{@xterm.0.0.22-alpha.0.CGrrDQr5.css → @xterm.0.0.22-alpha.2.CFbL2ovg.css} +0 -0
  545. /package/dist/interface/assets/{Account.0.0.22-alpha.0.Ce3OmKrC.css → Account.0.0.22-alpha.2.J7oAjogS.css} +0 -0
  546. /package/dist/interface/assets/{Backup.0.0.22-alpha.0.BIwaSlv3.css → Backup.0.0.22-alpha.2.CX0rT0QJ.css} +0 -0
  547. /package/dist/interface/assets/{Plugin.0.0.22-alpha.0.BtRA6zDt.css → Plugin.0.0.22-alpha.2.DJbgaQc1.css} +0 -0
  548. /package/dist/interface/assets/{Plugins.0.0.22-alpha.0.Cwu0aGUO.css → Plugins.0.0.22-alpha.2.DXSoO9M1.css} +0 -0
  549. /package/dist/interface/assets/{User.0.0.22-alpha.0.DPDcJbx8.css → User.0.0.22-alpha.2.BiGtIFqt.css} +0 -0
  550. /package/dist/interface/assets/{highlight.0.0.22-alpha.0.DgoK_Xib.css → highlight.0.0.22-alpha.2.Ch2EwETz.css} +0 -0
  551. /package/dist/interface/assets/{logo-256.0.0.22-alpha.0.BCQk9H1-.png → logo-256.0.0.22-alpha.2.BCQk9H1-.png} +0 -0
  552. /package/dist/interface/assets/{logo-512.0.0.22-alpha.0.DLKVOU2S.png → logo-512.0.0.22-alpha.2.DLKVOU2S.png} +0 -0
  553. /package/dist/interface/assets/{logo.0.0.22-alpha.0.DmEiRk0z.png → logo.0.0.22-alpha.2.DmEiRk0z.png} +0 -0
  554. /package/dist/interface/assets/{mode-json.0.0.22-alpha.0.Br7xisR1.js → mode-json.0.0.22-alpha.2.Br7xisR1.js} +0 -0
  555. /package/dist/interface/assets/{mode-yaml.0.0.22-alpha.0.CIYL8U3d.js → mode-yaml.0.0.22-alpha.2.CIYL8U3d.js} +0 -0
  556. /package/dist/interface/assets/{vue3-toastify.0.0.22-alpha.0.DTY1DMRs.css → vue3-toastify.0.0.22-alpha.2.DHXAGmwn.css} +0 -0
  557. /package/dist/interface/{axios.C-n2IhIP.0.0.22-alpha.0.js → axios.C-n2IhIP.0.0.22-alpha.2.js} +0 -0
  558. /package/dist/interface/{compare-versions.DqEOhma6.0.0.22-alpha.0.js → compare-versions.DqEOhma6.0.0.22-alpha.2.js} +0 -0
  559. /package/dist/interface/{dijkstrajs.D_NXgYpA.0.0.22-alpha.0.js → dijkstrajs.D_NXgYpA.0.0.22-alpha.2.js} +0 -0
  560. /package/dist/interface/{engine.io-parser.BiEtp6m2.0.0.22-alpha.0.js → engine.io-parser.BiEtp6m2.0.0.22-alpha.2.js} +0 -0
  561. /package/dist/interface/{entities.C20TfXL6.0.0.22-alpha.0.js → entities.C20TfXL6.0.0.22-alpha.2.js} +0 -0
  562. /package/dist/interface/{get-size.D1dS-IaP.0.0.22-alpha.0.js → get-size.D1dS-IaP.0.0.22-alpha.2.js} +0 -0
  563. /package/dist/interface/{mdurl.k9Sl0PQj.0.0.22-alpha.0.js → mdurl.k9Sl0PQj.0.0.22-alpha.2.js} +0 -0
  564. /package/dist/interface/{punycode.js.Dj65hjkv.0.0.22-alpha.0.js → punycode.js.Dj65hjkv.0.0.22-alpha.2.js} +0 -0
  565. /package/dist/interface/{react-dnd-html5-backend.1HQjlkwI.0.0.22-alpha.0.js → react-dnd-html5-backend.1HQjlkwI.0.0.22-alpha.2.js} +0 -0
  566. /package/dist/interface/{redux.CuxFRhX_.0.0.22-alpha.0.js → redux.CuxFRhX_.0.0.22-alpha.2.js} +0 -0
  567. /package/dist/interface/{tslib.9k7AwCpt.0.0.22-alpha.0.js → tslib.9k7AwCpt.0.0.22-alpha.2.js} +0 -0
  568. /package/dist/interface/{uc.micro.kMc2yuuw.0.0.22-alpha.0.js → uc.micro.kMc2yuuw.0.0.22-alpha.2.js} +0 -0
  569. /package/dist/server/bin/{fork.d.ts → cameraui-server.d.ts} +0 -0
@@ -1,7 +1,7 @@
1
- import { PLUGIN_STATUS } from '../plugins/types.js';
2
- import { Subscribed } from '../utils/subscribed.js';
3
- import type { CameraController } from '../camera/controller.js';
4
- import type { AuthConfig } from './types.js';
1
+ import { Subscribed } from '@camera.ui/common';
2
+ import { PLUGIN_STATUS } from '@camera.ui/plugineer';
3
+ import type { AuthConfig } from '@camera.ui/common';
4
+ import type { CameraController } from './controller.js';
5
5
  export declare class FrameWorker extends Subscribed {
6
6
  readonly frameWorkerId: string;
7
7
  name: string;
@@ -10,10 +10,12 @@ export declare class FrameWorker extends Subscribed {
10
10
  private ipcSubject;
11
11
  private publisher?;
12
12
  private subscriber?;
13
- private logger;
13
+ private coreManager;
14
+ private frameWorkerLogger;
15
+ private processLogger;
14
16
  private configService;
15
17
  private socketService;
16
- private cameraDevice;
18
+ private cameraController;
17
19
  private frameWorker?;
18
20
  private initialized;
19
21
  private stopped;
@@ -24,16 +26,17 @@ export declare class FrameWorker extends Subscribed {
24
26
  private py;
25
27
  private _status;
26
28
  get status(): PLUGIN_STATUS;
27
- constructor(cameraDevice: CameraController, proxyEndpoints: string[], auth: AuthConfig);
29
+ constructor(cameraController: CameraController, proxyEndpoints: string[], auth: AuthConfig);
28
30
  start(): Promise<void>;
29
31
  close(): Promise<void>;
30
32
  restart(): Promise<void>;
31
33
  getPID(): number;
32
34
  private startWorker;
33
35
  private restartWorker;
36
+ private reset;
34
37
  private killWorker;
35
38
  private sendMessage;
36
39
  private onChildMessage;
37
40
  private setStatus;
38
- private getLogPrefix;
41
+ private createPythonPath;
39
42
  }
@@ -0,0 +1,305 @@
1
+ import { ProxyConnection, Subscribed, pack, unpack } from '@camera.ui/common';
2
+ import { PLUGIN_STATUS, PythonInstaller } from '@camera.ui/plugineer';
3
+ import { nodeDecoderPath, pythonDecoderPath, pythonPath } from '@camera.ui/plugineer/path';
4
+ import { fork, spawn } from 'node:child_process';
5
+ import { platform } from 'node:os';
6
+ import { container } from 'tsyringe';
7
+ import { v4 as uuidv4 } from 'uuid';
8
+ export class FrameWorker extends Subscribed {
9
+ frameWorkerId;
10
+ name;
11
+ clients = new Map();
12
+ subject;
13
+ ipcSubject;
14
+ publisher;
15
+ subscriber;
16
+ coreManager;
17
+ frameWorkerLogger;
18
+ processLogger;
19
+ configService;
20
+ socketService;
21
+ cameraController;
22
+ frameWorker;
23
+ initialized = false;
24
+ stopped = false;
25
+ restarting = false;
26
+ auth;
27
+ proxyEndpoints;
28
+ ffmpegArgs;
29
+ py;
30
+ _status = PLUGIN_STATUS.UNKNOWN;
31
+ get status() {
32
+ return this._status;
33
+ }
34
+ constructor(cameraController, proxyEndpoints, auth) {
35
+ super();
36
+ this.configService = container.resolve('configService');
37
+ this.socketService = container.resolve('socketService');
38
+ this.coreManager = container.resolve('coreManagerProxy');
39
+ this.auth = auth;
40
+ this.proxyEndpoints = proxyEndpoints;
41
+ this.cameraController = cameraController;
42
+ this.name = cameraController.name;
43
+ this.processLogger = cameraController.logger.createLogger({ disablePrefix: true, disableTimestamps: true, prefix: undefined, suffix: undefined });
44
+ this.frameWorkerLogger = cameraController.logger.createLogger({
45
+ prefix: 'Frame Worker',
46
+ suffix: this.cameraController.name,
47
+ logStream: this.cameraController.logStream,
48
+ });
49
+ this.py = new PythonInstaller(this.configService.HOME_PATH, this.frameWorkerLogger);
50
+ this.frameWorkerId = uuidv4();
51
+ this.subject = `${this.frameWorkerId}.frameWorker`;
52
+ this.ipcSubject = `${this.frameWorkerId}.frameWorkerChild`;
53
+ this.cameraController.onPropertyChange(['name', 'frameWorkerSettings', 'sources']).subscribe(({ property, newData }) => {
54
+ if (property === 'name') {
55
+ this.name = newData;
56
+ this.sendMessage('setCameraName', { cameraName: newData });
57
+ }
58
+ else if (this.cameraController.connected) {
59
+ this.restartWorker();
60
+ }
61
+ });
62
+ }
63
+ async start() {
64
+ if (this.initialized) {
65
+ return;
66
+ }
67
+ this.initialized = true;
68
+ const servers = this.proxyEndpoints.filter((endpoint) => endpoint.startsWith('nats://'));
69
+ this.publisher = new ProxyConnection(this.subject, servers, this.auth);
70
+ await this.publisher.connect();
71
+ this.ffmpegArgs = await this.coreManager.getHwaccelInfo('h264');
72
+ await this.startWorker();
73
+ }
74
+ async close() {
75
+ this.stopped = true;
76
+ this.clients.clear();
77
+ await this.killWorker();
78
+ await this.publisher?.close();
79
+ this.unsubscribe();
80
+ }
81
+ async restart() {
82
+ await this.restartWorker();
83
+ }
84
+ getPID() {
85
+ return this.frameWorker?.pid ?? -1;
86
+ }
87
+ startWorker() {
88
+ return new Promise(async (_resolve, _reject) => {
89
+ if (!this.publisher) {
90
+ _reject(new Error('Publisher not initialized'));
91
+ return;
92
+ }
93
+ const selectedFrameWorker = this.cameraController.camera.frameWorkerSettings.decoder;
94
+ const workerPath = selectedFrameWorker == 'pillow' ? pythonDecoderPath : nodeDecoderPath;
95
+ this.frameWorkerLogger.debug(`Starting Frame Worker (${selectedFrameWorker})`);
96
+ this.reset();
97
+ this.setStatus(PLUGIN_STATUS.STARTING);
98
+ const frameWorkerEnv = {
99
+ FRAME_WORKER_ID: this.frameWorkerId,
100
+ CAMERA_ID: this.cameraController.id,
101
+ CAMERA_NAME: this.cameraController.name,
102
+ FFMPEG_PATH: this.configService.go2rtcConfig.ffmpeg.bin,
103
+ PROXY_USER: this.auth.user,
104
+ PROXY_PASSWORD: this.auth.password,
105
+ PROXY_ENDPOINTS: this.proxyEndpoints.join(','),
106
+ FPS: this.cameraController.camera.frameWorkerSettings.fps.toString(),
107
+ RESOLUTION: this.cameraController.camera.frameWorkerSettings.resolution,
108
+ DECODER: selectedFrameWorker,
109
+ LOGGER_LEVEL: this.configService.config.logger.level,
110
+ LOGGER_DISABLE_TIMESTAMPS: this.configService.config.logger.disableTimestamps ? '1' : '0',
111
+ };
112
+ let command;
113
+ const args = [];
114
+ const processName = `camera.ui - Frame Worker (${selectedFrameWorker})`;
115
+ if (selectedFrameWorker !== 'pillow') {
116
+ command = process.execPath;
117
+ args.push(workerPath, processName);
118
+ this.frameWorker = fork(workerPath, [processName], {
119
+ env: {
120
+ ...process.env,
121
+ ...frameWorkerEnv,
122
+ },
123
+ silent: true,
124
+ });
125
+ }
126
+ else {
127
+ command = this.py.serverPythonPath;
128
+ args.push('-u', workerPath, processName);
129
+ this.frameWorker = spawn(this.py.serverPythonPath, ['-u', workerPath, processName], {
130
+ env: {
131
+ ...frameWorkerEnv,
132
+ PYTHONUNBUFFERED: '1',
133
+ PYTHONPATH: this.createPythonPath(),
134
+ },
135
+ });
136
+ }
137
+ let frameWorkerPID = undefined;
138
+ this.frameWorker.on('spawn', () => {
139
+ this.frameWorkerLogger.log(`Initializing Frame Worker process with PID: ${this.frameWorker?.pid}`);
140
+ frameWorkerPID = this.frameWorker?.pid;
141
+ if (frameWorkerPID) {
142
+ this.configService.addProc({
143
+ pid: frameWorkerPID,
144
+ startTime: Date.now(),
145
+ command,
146
+ args,
147
+ titles: [processName, 'camera.ui - Frame Worker'],
148
+ });
149
+ }
150
+ });
151
+ this.frameWorker.on('error', (error) => {
152
+ this.setStatus(PLUGIN_STATUS.ERROR);
153
+ this.frameWorkerLogger.error('Frame Worker Error:', error);
154
+ });
155
+ this.frameWorker.on('exit', () => {
156
+ this.setStatus(PLUGIN_STATUS.STOPPED);
157
+ this.configService.removeProcByPID(frameWorkerPID);
158
+ if (!this.stopped && !this.restarting) {
159
+ this.frameWorkerLogger.debug('Restarting Frame Worker in 5s');
160
+ setTimeout(() => {
161
+ if (!this.stopped && !this.restarting) {
162
+ this.restartWorker();
163
+ }
164
+ }, 5000);
165
+ }
166
+ });
167
+ this.frameWorker.stdout?.on('data', (data) => {
168
+ const lines = data
169
+ .toString()
170
+ .split(/\r?\n/)
171
+ .filter((line) => line && line.length > 0)
172
+ .join('\n');
173
+ this.processLogger.log(lines);
174
+ this.cameraController.writeLog(lines);
175
+ });
176
+ this.frameWorker.stderr?.on('data', (data) => {
177
+ const lines = data
178
+ .toString()
179
+ .split(/\r?\n/)
180
+ .filter((line) => line && line.length > 0)
181
+ .join('\n');
182
+ this.processLogger.log(lines);
183
+ this.cameraController.writeLog(lines);
184
+ });
185
+ if (this.subscriber) {
186
+ this.subscriber.close();
187
+ this.subscriber = undefined;
188
+ }
189
+ this.subscriber = this.publisher.subscribe(this.subject);
190
+ this.subscriber.on('message', this.onChildMessage.bind(this, _resolve));
191
+ });
192
+ }
193
+ async restartWorker() {
194
+ if (this.restarting) {
195
+ return;
196
+ }
197
+ this.restarting = true;
198
+ this.frameWorkerLogger.debug('Restarting Frame Worker');
199
+ await this.killWorker();
200
+ await this.startWorker();
201
+ if (this.clients.size > 0 && Array.from(this.clients.values()).some((client) => client.requestIds.length > 0)) {
202
+ await this.sendMessage('recoverClients', { clients: Array.from(this.clients.values()) });
203
+ }
204
+ this.restarting = false;
205
+ }
206
+ reset() {
207
+ try {
208
+ this.frameWorker?.removeAllListeners();
209
+ this.frameWorker?.stdout?.removeAllListeners();
210
+ this.frameWorker?.stderr?.removeAllListeners();
211
+ this.frameWorker = undefined;
212
+ }
213
+ catch {
214
+ //
215
+ }
216
+ }
217
+ killWorker() {
218
+ return new Promise(async (_resolve) => {
219
+ if (!this.frameWorker) {
220
+ this.reset();
221
+ _resolve();
222
+ return;
223
+ }
224
+ this.cameraController.updateState('motion', { state: false, detections: [] });
225
+ this.cameraController.updateState('object', { detections: [] });
226
+ const killTimeout = setTimeout(() => {
227
+ this.frameWorkerLogger.warn(`Frame Worker for camera ${this.cameraController.name} did not terminate gracefully. Forcing closure.`);
228
+ this.frameWorker?.kill('SIGKILL');
229
+ _resolve();
230
+ }, 1500);
231
+ this.frameWorker.once('close', (code, signal) => {
232
+ clearTimeout(killTimeout);
233
+ this.frameWorkerLogger.debug(`Frame Worker for camera ${this.cameraController.name} closed. Code: ${code}, Signal: ${signal}`);
234
+ this.reset();
235
+ _resolve();
236
+ });
237
+ this.frameWorker.kill('SIGTERM');
238
+ });
239
+ }
240
+ async sendMessage(message, data = {}) {
241
+ try {
242
+ if (!this.frameWorker || !this.publisher) {
243
+ return;
244
+ }
245
+ const workerMessage = { message, data };
246
+ const response = await this.publisher.request(this.ipcSubject, workerMessage, { timeout: 20000 });
247
+ return response.response;
248
+ }
249
+ catch (error) {
250
+ const workerMessage = { message, data };
251
+ this.frameWorkerLogger.error('Error sending request to Frame Worker:', error, workerMessage);
252
+ return undefined;
253
+ }
254
+ }
255
+ async onChildMessage(_resolve, msg) {
256
+ if (this.stopped) {
257
+ return;
258
+ }
259
+ const message = unpack(msg.data);
260
+ const workerResponse = {};
261
+ switch (message.message) {
262
+ case 'started':
263
+ this.setStatus(PLUGIN_STATUS.STARTED);
264
+ this.frameWorkerLogger.debug('Frame Worker ready');
265
+ _resolve();
266
+ break;
267
+ case 'getFFmpegArgs':
268
+ let source = this.cameraController.lowResolutionSource;
269
+ if (!source) {
270
+ const streamSource = this.cameraController.streamSource;
271
+ this.frameWorkerLogger.warn('No low-resolution source found! Switching to stream source:', streamSource.name);
272
+ this.frameWorkerLogger.warn('Please make sure to configure a low-resolution source for better performance!');
273
+ source = streamSource;
274
+ }
275
+ workerResponse.response = {
276
+ cameraSource: source.urls.rtsp.default,
277
+ ffmpegArgs: this.ffmpegArgs,
278
+ };
279
+ break;
280
+ case 'updateClient':
281
+ this.clients.set(message.data.pluginId, message.data);
282
+ break;
283
+ case 'removeClient':
284
+ this.clients.delete(message.data.pluginId);
285
+ break;
286
+ }
287
+ msg.respond(pack(workerResponse));
288
+ }
289
+ setStatus(status) {
290
+ this._status = status;
291
+ const runtimeInfo = {
292
+ [this.name]: {
293
+ name: this.name,
294
+ status: status,
295
+ },
296
+ };
297
+ this.socketService.io.of('/status').emit('frameworker-process-status', runtimeInfo);
298
+ }
299
+ createPythonPath() {
300
+ const separator = platform() === 'win32' ? ';' : ':';
301
+ const pathes = [this.py.serverPackagesPath, pythonPath];
302
+ return pathes.join(separator);
303
+ }
304
+ }
305
+ //# sourceMappingURL=frameWorker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frameWorker.js","sourceRoot":"","sources":["../../../../src/camera/frameWorker.ts"],"names":[],"mappings":"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"}
@@ -1,209 +1,11 @@
1
- import type { BehaviorSubject, Observable } from 'rxjs';
2
- import type { CameraInformation, CameraInput, CameraInputSettings, Point, ZoneFilter, ZoneType } from '../api/database/types.js';
3
- import type { FrameData, FrameMetadata } from '../decoder/types.js';
4
- import type { CameraInterface } from './interfaces/camera.js';
5
- import type { CameraPrebufferInterface } from './interfaces/prebuffer.js';
6
- import type { CameraPTZInterface } from './interfaces/ptz.js';
7
- export interface BaseLogger {
8
- log: (...args: any[]) => void;
9
- error: (...args: any[]) => void;
10
- warn: (...args: any[]) => void;
11
- debug: (...args: any[]) => void;
12
- trace: (...args: any[]) => void;
13
- attention: (...args: any[]) => void;
14
- }
15
- export type SpawnInput = string | number;
16
- export interface FfmpegOptions {
17
- ffmpegPath: string;
18
- input?: SpawnInput[];
19
- video?: SpawnInput[];
20
- audio?: SpawnInput[];
21
- output: SpawnInput[];
22
- }
23
- export type Container = 'mp4' | 'mpegts';
24
- export interface BasePrebufferState {
25
- duration: number;
26
- }
27
- export interface PrebufferStateTrue extends BasePrebufferState {
28
- state: true;
29
- url: string;
30
- }
31
- export interface PrebufferStateFalse extends BasePrebufferState {
32
- state: false;
33
- }
34
- export type PrebufferState = PrebufferStateTrue | PrebufferStateFalse;
35
- export interface CameraSource extends CameraInput {
36
- updatePrebufferingState(container: Container, state: PrebufferState): Promise<void>;
37
- getPrebufferingState(container: Container): PrebufferState;
38
- onPrebuffering(container: Container): Observable<PrebufferState>;
39
- getStreamInfo(): Promise<StreamInfo | undefined>;
40
- }
41
- export interface StreamInfo {
42
- audio: AudioStreamOptions;
43
- video: VideoStreamOptions;
44
- }
45
- export interface AudioStreamOptions {
46
- enabled?: boolean;
47
- codec?: string;
48
- bitrate?: number;
49
- sampleRate?: number;
50
- }
51
- export interface VideoStreamOptions {
52
- codec?: string;
53
- width?: number;
54
- height?: number;
55
- bitrate?: number;
56
- fps?: number;
57
- idrInterval?: number;
58
- }
59
- export type Sdp = string;
60
- export type IceCandiate = string;
61
- export interface Go2RtcOfferMessage {
62
- type: 'webrtc/offer';
63
- value: Sdp;
64
- }
65
- export interface Go2RtcAnswerMessage {
66
- type: 'webrtc/answer';
67
- value: Sdp;
68
- }
69
- export interface Go2RtcIceCandidateMessage {
70
- type: 'webrtc/candidate';
71
- value: IceCandiate;
72
- }
73
- export interface ErrorMessage {
74
- type: 'error';
75
- value: string;
76
- }
77
- export type Go2RtcIncomingMessage = Go2RtcAnswerMessage | Go2RtcIceCandidateMessage | ErrorMessage;
78
- export type Go2RtcOutgoingMessage = Go2RtcOfferMessage | Go2RtcIceCandidateMessage;
79
- export interface BaseCameraConfig {
80
- name: string;
81
- nativeId?: string;
82
- isCloud?: boolean;
83
- hasLight?: boolean;
84
- hasSiren?: boolean;
85
- hasBinarySensor?: boolean;
86
- hasBattery?: boolean;
87
- disabled?: boolean;
88
- info?: Partial<CameraInformation>;
89
- }
90
- export interface CameraConfigInputSettings extends Omit<CameraInputSettings, '_id'> {
91
- }
92
- export type CameraConfig = BaseCameraConfig & {
93
- sources: CameraConfigInputSettings[];
94
- };
95
- export type BoundingBox = [number, number, number, number];
96
- export interface Detection {
97
- id?: string;
98
- label: ObjectClass;
99
- confidence: number;
100
- boundingBox: BoundingBox;
101
- inputWidth: number;
102
- inputHeight: number;
103
- origWidth: number;
104
- origHeight: number;
105
- }
106
- export interface DetectionZone {
107
- name: string;
108
- points: Point[];
109
- type: ZoneType;
110
- filter: ZoneFilter;
111
- classes: ObjectClass[];
112
- isPrivacyMask: boolean;
113
- }
114
- export type ObjectClass = 'person' | 'bicycle' | 'car' | 'motorcycle' | 'airplane' | 'bus' | 'train' | 'truck' | 'boat' | 'traffic light' | 'fire hydrant' | 'stop sign' | 'parking meter' | 'bench' | 'bird' | 'cat' | 'dog' | 'horse' | 'sheep' | 'cow' | 'elephant' | 'bear' | 'zebra' | 'giraffe' | 'backpack' | 'umbrella' | 'handbag' | 'tie' | 'suitcase' | 'frisbee' | 'skis' | 'snowboard' | 'sports ball' | 'kite' | 'baseball bat' | 'baseball glove' | 'skateboard' | 'surfboard' | 'tennis racket' | 'bottle' | 'wine glass' | 'cup' | 'fork' | 'knife' | 'spoon' | 'bowl' | 'banana' | 'apple' | 'sandwich' | 'orange' | 'broccoli' | 'carrot' | 'hot dog' | 'pizza' | 'donut' | 'cake' | 'chair' | 'couch' | 'potted plant' | 'bed' | 'dining table' | 'toilet' | 'tv' | 'laptop' | 'mouse' | 'remote' | 'keyboard' | 'cell phone' | 'microwave' | 'oven' | 'toaster' | 'sink' | 'refrigerator' | 'book' | 'clock' | 'vase' | 'scissors' | 'teddy bear' | 'hair drier' | 'toothbrush' | 'motion';
115
- export interface BaseState<T extends LightState | AudioState | MotionState | ObjectState | SirenState | BatteryState | DoorbellState> {
116
- timestamp: number;
117
- lastEvent?: Omit<T, 'lastEvent'>;
118
- }
119
- export interface MotionSetEvent {
120
- state?: boolean;
121
- detections: Detection[];
122
- }
123
- export interface AudioSetEvent {
124
- state: boolean;
125
- db?: number;
126
- }
127
- export interface ObjectSetEvent {
128
- detections: Detection[];
129
- }
130
- export interface LightSetEvent {
131
- state: boolean;
132
- }
133
- export interface DoorbellSetEvent {
134
- state: boolean;
135
- }
136
- export interface SirenSetEvent {
137
- state: boolean;
138
- level?: number;
139
- }
140
- export interface BatterySetEvent {
141
- level: number;
142
- lowBattery?: boolean;
143
- charging?: boolean;
144
- }
145
- export type LightState = BaseState<LightState> & LightSetEvent;
146
- export type MotionState = BaseState<MotionState> & MotionSetEvent;
147
- export type AudioState = BaseState<AudioState> & AudioSetEvent;
148
- export type DoorbellState = BaseState<DoorbellState> & DoorbellSetEvent;
149
- export type SirenState = BaseState<SirenState> & SirenSetEvent;
150
- export type ObjectState = BaseState<ObjectState> & ObjectSetEvent;
151
- export type BatteryState = BaseState<BatteryState> & BatterySetEvent;
1
+ import type { FrameData, FrameMetadata, MotionState, SetValues, StateValues } from '@camera.ui/types';
152
2
  export interface FrameState extends MotionState {
153
3
  frameData: FrameData;
154
4
  metadata: FrameMetadata;
155
5
  }
156
- export type States = LightState | MotionState | AudioState | ObjectState | DoorbellState | SirenState | BatteryState;
157
- export type Sets = LightSetEvent | MotionSetEvent | AudioSetEvent | ObjectSetEvent | DoorbellSetEvent | SirenSetEvent | BatterySetEvent;
158
- export interface StateValues {
159
- light: LightState;
160
- motion: MotionState;
161
- audio: AudioState;
162
- object: ObjectState;
163
- doorbell: DoorbellState;
164
- siren: SirenState;
165
- battery: BatteryState;
166
- }
167
- export interface SetValues {
168
- light: LightSetEvent;
169
- motion: MotionSetEvent;
170
- audio: AudioSetEvent;
171
- object: ObjectSetEvent;
172
- doorbell: DoorbellSetEvent;
173
- siren: SirenSetEvent;
174
- battery: BatterySetEvent;
175
- }
176
- export interface PrebufferSubject {
177
- [sourceId: string]: {
178
- mp4: BehaviorSubject<PrebufferState>;
179
- mpegts: BehaviorSubject<PrebufferState>;
180
- };
181
- }
182
6
  export type CameraStateCallbacks = {
183
7
  [K in keyof StateValues]: (event: StateValues[K]) => void;
184
8
  };
185
9
  export type StateValue<T extends keyof StateValues> = StateValues[T];
186
10
  export type SetValue<T extends keyof SetValues> = SetValues[T];
187
11
  export type OnChangeCallback<T extends keyof StateValues> = (newEvent: StateValues[T], oldEvent: StateValues[T]) => void;
188
- export declare abstract class CameraDelegate {
189
- abstract snapshot(): Promise<ArrayBuffer | undefined>;
190
- }
191
- export declare abstract class CameraPrebufferDelegate {
192
- abstract getStreamInfo(sourceName: string): Promise<StreamInfo | undefined>;
193
- }
194
- export declare abstract class CameraPTZDelegate {
195
- abstract moveAbsolute(pan: number, tilt: number, zoom: number): Promise<void>;
196
- abstract moveRelative(pan: number, tilt: number, zoom: number): Promise<void>;
197
- abstract moveContinuous(pan: number, tilt: number, zoom: number): Promise<void>;
198
- abstract stop(): Promise<void>;
199
- }
200
- export interface CameraInterfaces {
201
- readonly cameraDelegate: CameraInterface;
202
- readonly prebufferDelegate: CameraPrebufferInterface;
203
- readonly ptzDelegate: CameraPTZInterface;
204
- }
205
- export interface CameraDelegates {
206
- readonly cameraDelegate: CameraDelegate;
207
- readonly prebufferDelegate: CameraPrebufferDelegate;
208
- readonly ptzDelegate: CameraPTZDelegate;
209
- }
@@ -1,7 +1,2 @@
1
- export class CameraDelegate {
2
- }
3
- export class CameraPrebufferDelegate {
4
- }
5
- export class CameraPTZDelegate {
6
- }
1
+ export {};
7
2
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/camera/types.ts"],"names":[],"mappings":"AAwTA,MAAM,OAAgB,cAAc;CAEnC;AAED,MAAM,OAAgB,uBAAuB;CAE5C;AAED,MAAM,OAAgB,iBAAiB;CAKtC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/camera/types.ts"],"names":[],"mappings":""}