@camera.ui/server 0.0.22-alpha.1 → 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.CBoqAk51.0.0.22-alpha.1.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.20m7Hn_5.0.0.22-alpha.1.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.BoQ_EpL5.0.0.22-alpha.1.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.GNWBVG5S.0.0.22-alpha.1.js → ace-builds.CYuWji3-.0.0.22-alpha.2.js} +27 -27
  31. package/dist/interface/{apexcharts.BMrxVPFF.0.0.22-alpha.1.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.1.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.1.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.DMTh_43Y.0.0.22-alpha.1.js → dnd-core.CInfibuN.0.0.22-alpha.2.js} +1 -1
  48. package/dist/interface/{draggabilly.Bp5rpROY.0.0.22-alpha.1.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.D9A4-Zp4.0.0.22-alpha.1.js → ev-emitter.Dc-aWf7P.0.0.22-alpha.2.js} +1 -1
  51. package/dist/interface/{fast-deep-equal.CynR0Ykh.0.0.22-alpha.1.js → fast-deep-equal.B5b3SrkT.0.0.22-alpha.2.js} +1 -1
  52. package/dist/interface/{highlight.js.BcAmtPT9.0.0.22-alpha.1.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.zJgnXBKD.0.0.22-alpha.1.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.DSn07YT-.0.0.22-alpha.1.js → markdown-it.DJgGU14J.0.0.22-alpha.2.js} +1 -1
  58. package/dist/interface/{nprogress.B-sfF0qV.0.0.22-alpha.1.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.BcJHYbhe.0.0.22-alpha.1.js → qrcode.9XoqawvO.0.0.22-alpha.2.js} +1 -1
  64. package/dist/interface/{react-dnd-touch-backend.B9_17rX-.0.0.22-alpha.1.js → react-dnd-touch-backend.C6RhMT4L.0.0.22-alpha.2.js} +1 -1
  65. package/dist/interface/{rxjs.BlwZeIMX.0.0.22-alpha.1.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.DbDzb_0x.0.0.22-alpha.1.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.BfsybYBO.0.0.22-alpha.1.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.Br_paQwQ.0.0.22-alpha.1.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.DpYuZy8Q.0.0.22-alpha.1.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 +21 -29
  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 +5 -0
  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 +4 -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.1.js +0 -15
  286. package/dist/interface/@mdi.DnMbZhUH.0.0.22-alpha.1.js +0 -1
  287. package/dist/interface/@popperjs.BQBsAJpH.0.0.22-alpha.1.js +0 -1
  288. package/dist/interface/@tanstack.DlheOlVk.0.0.22-alpha.1.js +0 -1
  289. package/dist/interface/@vue.CvjRlaU6.0.0.22-alpha.1.js +0 -17
  290. package/dist/interface/@vueuse.-m94veKi.0.0.22-alpha.1.js +0 -1
  291. package/dist/interface/Account.CvNGInZy.0.0.22-alpha.1.js +0 -1
  292. package/dist/interface/Adminpanel.B38rrP4P.0.0.22-alpha.1.js +0 -2
  293. package/dist/interface/Appearance.kFVBM4J9.0.0.22-alpha.1.js +0 -1
  294. package/dist/interface/Backup.lo3nC5DR.0.0.22-alpha.1.js +0 -1
  295. package/dist/interface/Camera.BukjTYOy.0.0.22-alpha.1.js +0 -1
  296. package/dist/interface/Cameras.HNjLEphi.0.0.22-alpha.1.js +0 -1
  297. package/dist/interface/Camview.BXcJwv3e.0.0.22-alpha.1.js +0 -1
  298. package/dist/interface/Config.Bwtjrsr9.0.0.22-alpha.1.js +0 -1
  299. package/dist/interface/Console.DOkTKmKh.0.0.22-alpha.1.js +0 -4
  300. package/dist/interface/FirstSteps.BXQqfdBY.0.0.22-alpha.1.js +0 -1
  301. package/dist/interface/Plugin.DlATvyTj.0.0.22-alpha.1.js +0 -1
  302. package/dist/interface/Plugins.BekJdBK8.0.0.22-alpha.1.js +0 -1
  303. package/dist/interface/Recordings.B4YRWWi3.0.0.22-alpha.1.js +0 -1
  304. package/dist/interface/Recordings.U1858KpO.0.0.22-alpha.1.js +0 -1
  305. package/dist/interface/Settings.CiF0fVqP.0.0.22-alpha.1.js +0 -1
  306. package/dist/interface/System.Ca9T8x4i.0.0.22-alpha.1.js +0 -4
  307. package/dist/interface/User.C_3ugpqz.0.0.22-alpha.1.js +0 -1
  308. package/dist/interface/VConfigEditor.vue_vue_type_script_setup_true_lang.EB4E_zDr.0.0.22-alpha.1.js +0 -2
  309. package/dist/interface/VConsole.DJWV6CZ9.0.0.22-alpha.1.js +0 -1
  310. package/dist/interface/VPlayer.CpZzx0nW.0.0.22-alpha.1.js +0 -1
  311. package/dist/interface/VPluginCard.Cm4M7xYg.0.0.22-alpha.1.js +0 -4
  312. package/dist/interface/assets/Adminpanel.0.0.22-alpha.1.CXsTAXPL.css +0 -1
  313. package/dist/interface/assets/Camera.0.0.22-alpha.1.BDtUJ-lA.css +0 -1
  314. package/dist/interface/assets/Cameras.0.0.22-alpha.1.Djx0F2MM.css +0 -1
  315. package/dist/interface/assets/Camview.0.0.22-alpha.1.Ce_V-Nxj.css +0 -1
  316. package/dist/interface/assets/Config.0.0.22-alpha.1.k4QpWumg.css +0 -1
  317. package/dist/interface/assets/Console.0.0.22-alpha.1.DWrfRWs9.css +0 -1
  318. package/dist/interface/assets/FirstSteps.0.0.22-alpha.1.B3-pv8-a.css +0 -1
  319. package/dist/interface/assets/NewCamera.0.0.22-alpha.1.DJ3tUBT_.css +0 -1
  320. package/dist/interface/assets/VConsole.0.0.22-alpha.1.BZT1WyS-.css +0 -1
  321. package/dist/interface/assets/VPlayer.0.0.22-alpha.1.CZXlTn4I.css +0 -1
  322. package/dist/interface/assets/VPluginCard.0.0.22-alpha.1.CIL48ca_.css +0 -1
  323. package/dist/interface/assets/main.0.0.22-alpha.1.BOf8IWhK.css +0 -1
  324. package/dist/interface/assets/v-calendar.0.0.22-alpha.1.CtSuDYZU.css +0 -1
  325. package/dist/interface/engine.io-client.CY7UpWto.0.0.22-alpha.1.js +0 -1
  326. package/dist/interface/main.D-V5Qegn.0.0.22-alpha.1.js +0 -4
  327. package/dist/interface/pinia.Dn9R-5lV.0.0.22-alpha.1.js +0 -5
  328. package/dist/interface/plugins.9yif7gTi.0.0.22-alpha.1.js +0 -1
  329. package/dist/interface/socket.io-client.ZxUZ7LHn.0.0.22-alpha.1.js +0 -1
  330. package/dist/interface/system.D_1Xg-Sy.0.0.22-alpha.1.js +0 -1
  331. package/dist/interface/ui.BA2qa-Pn.0.0.22-alpha.1.js +0 -1
  332. package/dist/interface/utils.BvINh1mj.0.0.22-alpha.1.js +0 -1
  333. package/dist/interface/uuid.DvF23Exx.0.0.22-alpha.1.js +0 -1
  334. package/dist/interface/v-calendar.CemaWgJz.0.0.22-alpha.1.js +0 -1
  335. package/dist/interface/vee-validate.CpAAwmyb.0.0.22-alpha.1.js +0 -5
  336. package/dist/interface/vue-i18n.mw20Rif9.0.0.22-alpha.1.js +0 -5
  337. package/dist/interface/vue-router.BchJROVt.0.0.22-alpha.1.js +0 -5
  338. package/dist/interface/vue3-apexcharts.BiZhZbF2.0.0.22-alpha.1.js +0 -1
  339. package/dist/interface/vue3-toastify.DdCHHmXT.0.0.22-alpha.1.js +0 -1
  340. package/dist/interface/vuetify.red0JsnZ.0.0.22-alpha.1.js +0 -5
  341. package/dist/interface/zod.BaF2dDCd.0.0.22-alpha.1.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.1.js → @babel.l0sNRNKZ.0.0.22-alpha.2.js} +0 -0
  539. /package/dist/interface/{@react-dnd.CcwRs9xb.0.0.22-alpha.1.js → @react-dnd.CcwRs9xb.0.0.22-alpha.2.js} +0 -0
  540. /package/dist/interface/{@socket.io.Dkula2eQ.0.0.22-alpha.1.js → @socket.io.Dkula2eQ.0.0.22-alpha.2.js} +0 -0
  541. /package/dist/interface/{vue.l0sNRNKZ.0.0.22-alpha.1.js → @turf.l0sNRNKZ.0.0.22-alpha.2.js} +0 -0
  542. /package/dist/interface/{@xterm.DV-IE8JS.0.0.22-alpha.1.js → @xterm.CRKo0AGB.0.0.22-alpha.2.js} +0 -0
  543. /package/dist/interface/assets/{@vueform.0.0.22-alpha.1.h7tNX9p6.css → @vueform.0.0.22-alpha.2.CroAHJs8.css} +0 -0
  544. /package/dist/interface/assets/{@xterm.0.0.22-alpha.1.CGrrDQr5.css → @xterm.0.0.22-alpha.2.CFbL2ovg.css} +0 -0
  545. /package/dist/interface/assets/{Account.0.0.22-alpha.1.Ce3OmKrC.css → Account.0.0.22-alpha.2.J7oAjogS.css} +0 -0
  546. /package/dist/interface/assets/{Backup.0.0.22-alpha.1.BIwaSlv3.css → Backup.0.0.22-alpha.2.CX0rT0QJ.css} +0 -0
  547. /package/dist/interface/assets/{Plugin.0.0.22-alpha.1.BtRA6zDt.css → Plugin.0.0.22-alpha.2.DJbgaQc1.css} +0 -0
  548. /package/dist/interface/assets/{Plugins.0.0.22-alpha.1.Cwu0aGUO.css → Plugins.0.0.22-alpha.2.DXSoO9M1.css} +0 -0
  549. /package/dist/interface/assets/{User.0.0.22-alpha.1.DPDcJbx8.css → User.0.0.22-alpha.2.BiGtIFqt.css} +0 -0
  550. /package/dist/interface/assets/{highlight.0.0.22-alpha.1.DgoK_Xib.css → highlight.0.0.22-alpha.2.Ch2EwETz.css} +0 -0
  551. /package/dist/interface/assets/{logo-256.0.0.22-alpha.1.BCQk9H1-.png → logo-256.0.0.22-alpha.2.BCQk9H1-.png} +0 -0
  552. /package/dist/interface/assets/{logo-512.0.0.22-alpha.1.DLKVOU2S.png → logo-512.0.0.22-alpha.2.DLKVOU2S.png} +0 -0
  553. /package/dist/interface/assets/{logo.0.0.22-alpha.1.DmEiRk0z.png → logo.0.0.22-alpha.2.DmEiRk0z.png} +0 -0
  554. /package/dist/interface/assets/{mode-json.0.0.22-alpha.1.Br7xisR1.js → mode-json.0.0.22-alpha.2.Br7xisR1.js} +0 -0
  555. /package/dist/interface/assets/{mode-yaml.0.0.22-alpha.1.CIYL8U3d.js → mode-yaml.0.0.22-alpha.2.CIYL8U3d.js} +0 -0
  556. /package/dist/interface/assets/{vue3-toastify.0.0.22-alpha.1.DTY1DMRs.css → vue3-toastify.0.0.22-alpha.2.DHXAGmwn.css} +0 -0
  557. /package/dist/interface/{axios.C-n2IhIP.0.0.22-alpha.1.js → axios.C-n2IhIP.0.0.22-alpha.2.js} +0 -0
  558. /package/dist/interface/{compare-versions.DqEOhma6.0.0.22-alpha.1.js → compare-versions.DqEOhma6.0.0.22-alpha.2.js} +0 -0
  559. /package/dist/interface/{dijkstrajs.D_NXgYpA.0.0.22-alpha.1.js → dijkstrajs.D_NXgYpA.0.0.22-alpha.2.js} +0 -0
  560. /package/dist/interface/{engine.io-parser.BiEtp6m2.0.0.22-alpha.1.js → engine.io-parser.BiEtp6m2.0.0.22-alpha.2.js} +0 -0
  561. /package/dist/interface/{entities.C20TfXL6.0.0.22-alpha.1.js → entities.C20TfXL6.0.0.22-alpha.2.js} +0 -0
  562. /package/dist/interface/{get-size.D1dS-IaP.0.0.22-alpha.1.js → get-size.D1dS-IaP.0.0.22-alpha.2.js} +0 -0
  563. /package/dist/interface/{mdurl.k9Sl0PQj.0.0.22-alpha.1.js → mdurl.k9Sl0PQj.0.0.22-alpha.2.js} +0 -0
  564. /package/dist/interface/{punycode.js.Dj65hjkv.0.0.22-alpha.1.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.1.js → react-dnd-html5-backend.1HQjlkwI.0.0.22-alpha.2.js} +0 -0
  566. /package/dist/interface/{redux.CuxFRhX_.0.0.22-alpha.1.js → redux.CuxFRhX_.0.0.22-alpha.2.js} +0 -0
  567. /package/dist/interface/{tslib.9k7AwCpt.0.0.22-alpha.1.js → tslib.9k7AwCpt.0.0.22-alpha.2.js} +0 -0
  568. /package/dist/interface/{uc.micro.kMc2yuuw.0.0.22-alpha.1.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,107 +0,0 @@
1
- import type { RootDatabase } from 'lmdb';
2
- import type { JsonSchema, JsonSchemaForm, SchemaConfig } from '../../../plugins/types.js';
3
- import type { API } from './pluginApi.js';
4
- export declare class CameraStorage<T extends Record<string, any> = Record<string, any>> {
5
- private cameraId;
6
- private instance;
7
- private api;
8
- private pluginDb;
9
- schema: JsonSchemaForm;
10
- values: T;
11
- constructor(api: API, pluginDb: RootDatabase<Record<string, any>, 'config'>, instance: any, cameraId: string, schema?: JsonSchemaForm);
12
- /**
13
- * Initialize the storage.
14
- * This will load the configuration from the database.
15
- */
16
- initializeStorage(): void;
17
- /**
18
- * Get a value from the configuration by its key/path.
19
- * If the schema has an onGet function, the onGet function will be called.
20
- * If the onGet functions is undefined, the value from the configuration will be returned.
21
- * If the schema has a default value, and the configuration value is undefined, the default value will be returned.
22
- *
23
- * @param path - The path to the configuration value.
24
- * @returns The value from the configuration.
25
- */
26
- getValue<T = string>(path: string): Promise<T> | undefined;
27
- getValue<T = string>(path: string, defaultValue: T): Promise<T>;
28
- /**
29
- * Set a new value for a given key/path in the configuration.
30
- * If the schema of the value has an onSet function, and the value has changed, the onSet function will be called.
31
- * If the schema of the value is declared as storable, the value will be saved to the database.
32
- *
33
- * @param path - The path to the configuration value.
34
- * @param newValue - The new value to set.
35
- */
36
- setValue<T = string>(path: string, newValue: T): Promise<void>;
37
- /**
38
- * Check if a value exists by its config path/key.
39
- *
40
- * @param path - The path to the value to check.
41
- * @returns True if the value exists, false otherwise.
42
- */
43
- hasValue(path: string): boolean;
44
- /**
45
- * Get the root schema and configuration.
46
- * This will also call the onGet functions for the schema.
47
- *
48
- * @returns The root schema and configuration.
49
- */
50
- getConfig(): Promise<SchemaConfig>;
51
- /**
52
- * Set a new configuration.
53
- * If the schema of a value which has been changed has an onSet function, the onSet function will be called.
54
- *
55
- * @param newConfig - The new configuration to set.
56
- */
57
- setConfig(newConfig: T): Promise<void>;
58
- /**
59
- * Add a new schema to the existing schema.
60
- * It will also add the value to the configuration.
61
- * If the schema is declared as storable, the value will be saved to the database.
62
- *
63
- * @param schema - The new schema to add.
64
- * @param path - The path to the schema to add.
65
- */
66
- addSchema(schema: JsonSchemaForm): Promise<void>;
67
- addSchema(path: string, schema: JsonSchema): Promise<void>;
68
- /**
69
- * Remove a schema by its config path/key from the existing schema.
70
- * It will also remove the value from the configuration.
71
- * If the schema is declared as storable, the value will be removed from the database.
72
- *
73
- * @param path - The path to the schema to remove.
74
- */
75
- removeSchema(path: string): void;
76
- /**
77
- * Change a schema by its config path/key from the existing schema.
78
- * It will also change the value from the configuration.
79
- * If the schema is declared as storable, the value will be saved to the database.
80
- *
81
- * @param path - The path to the schema to change.
82
- * @param schema - The new schema to set.
83
- */
84
- changeSchema(path: string, newSchema: Partial<JsonSchema>): Promise<void>;
85
- /**
86
- * Get a schema by its config path/key.
87
- *
88
- * @param path - The path to the schema to get.
89
- * @returns The schema.
90
- */
91
- getSchema<T>(path: string): T | undefined;
92
- /**
93
- * Check if a schema exists by its config path/key.
94
- *
95
- * @param path - The path to the schema to check.
96
- * @returns True if the schema exists, false otherwise.
97
- */
98
- hasSchema(path: string): boolean;
99
- private resolveOnGetFunctions;
100
- private resolveOnGetFunctionsForObject;
101
- private resolveOnGetFunctionsForSchema;
102
- private triggerOnSetForChanges;
103
- private filterStorableValues;
104
- private containsStorableSchema;
105
- private saveDb;
106
- private close;
107
- }
@@ -1,292 +0,0 @@
1
- import objectPath from 'object-path';
2
- import { API_EVENT } from '../../../api.js';
3
- import { isEqual, mergeWith, structuredClone } from '../../../utils/utils.js';
4
- import { configPathToSchemaPath, generateJsonFromRootSchema, getValueByPath, isArrayType, isObjectType, isPrimitiveType, removeFunctionsFromSchemaForm, schemaPathToConfigPath, } from './schema.js';
5
- export class CameraStorage {
6
- cameraId;
7
- instance;
8
- api;
9
- pluginDb;
10
- schema;
11
- values = {};
12
- constructor(api, pluginDb, instance, cameraId, schema = {}) {
13
- this.api = api;
14
- this.pluginDb = pluginDb;
15
- this.instance = instance;
16
- this.cameraId = cameraId;
17
- this.schema = schema;
18
- this.api.once(API_EVENT.SHUTDOWN, this.close.bind(this));
19
- }
20
- /**
21
- * Initialize the storage.
22
- * This will load the configuration from the database.
23
- */
24
- initializeStorage() {
25
- const config = this.pluginDb.get('config') || {};
26
- const cameraConfig = config[this.cameraId] || {};
27
- const schemaConfig = generateJsonFromRootSchema({ schema: this.schema });
28
- this.values = mergeWith(schemaConfig, cameraConfig, (objValue, srcValue) => {
29
- if (Array.isArray(objValue)) {
30
- return srcValue;
31
- }
32
- });
33
- this.saveDb();
34
- // await this.resolveOnGetFunctions(this.schema);
35
- }
36
- getValue(path, defaultValue) {
37
- const schemaPath = configPathToSchemaPath(path);
38
- const schema = objectPath.get(this.schema, schemaPath);
39
- const configValue = objectPath.get(this.values, path);
40
- return schema?.onGet?.call(this.instance) ?? configValue ?? schema?.defaultValue ?? defaultValue;
41
- }
42
- /**
43
- * Set a new value for a given key/path in the configuration.
44
- * If the schema of the value has an onSet function, and the value has changed, the onSet function will be called.
45
- * If the schema of the value is declared as storable, the value will be saved to the database.
46
- *
47
- * @param path - The path to the configuration value.
48
- * @param newValue - The new value to set.
49
- */
50
- async setValue(path, newValue) {
51
- const schemaPath = configPathToSchemaPath(path);
52
- const schema = objectPath.get(this.schema, schemaPath);
53
- if (schema) {
54
- const oldValue = objectPath.get(this.values, path);
55
- objectPath.set(this.values, path, newValue);
56
- await schema.onSet?.call(this.instance, newValue, oldValue);
57
- if (this.containsStorableSchema(schema)) {
58
- this.saveDb();
59
- }
60
- }
61
- }
62
- /**
63
- * Check if a value exists by its config path/key.
64
- *
65
- * @param path - The path to the value to check.
66
- * @returns True if the value exists, false otherwise.
67
- */
68
- hasValue(path) {
69
- const configValue = objectPath.get(this.values, path);
70
- return configValue !== undefined;
71
- }
72
- /**
73
- * Get the root schema and configuration.
74
- * This will also call the onGet functions for the schema.
75
- *
76
- * @returns The root schema and configuration.
77
- */
78
- async getConfig() {
79
- const filteredSchema = removeFunctionsFromSchemaForm(this.schema);
80
- const rootSchema = { schema: filteredSchema };
81
- await this.resolveOnGetFunctions(this.schema);
82
- return { rootSchema, config: this.values };
83
- }
84
- /**
85
- * Set a new configuration.
86
- * If the schema of a value which has been changed has an onSet function, the onSet function will be called.
87
- *
88
- * @param newConfig - The new configuration to set.
89
- */
90
- async setConfig(newConfig) {
91
- const oldConfig = structuredClone(this.values);
92
- this.values = newConfig;
93
- await this.triggerOnSetForChanges(oldConfig, this.values);
94
- this.saveDb();
95
- }
96
- async addSchema(schemaOrPath, schema) {
97
- let shouldSave = false;
98
- if (typeof schemaOrPath === 'string' && schema) {
99
- const path = schemaOrPath;
100
- const schemaPath = configPathToSchemaPath(path);
101
- objectPath.set(this.schema, schemaPath, schema);
102
- await this.resolveOnGetFunctions(schema, schemaPath);
103
- if (this.containsStorableSchema(schema)) {
104
- shouldSave = true;
105
- }
106
- }
107
- else if (typeof schemaOrPath === 'object' && !schema) {
108
- const newSchema = schemaOrPath;
109
- mergeWith(this.schema, newSchema, (objValue, srcValue) => {
110
- if (Array.isArray(objValue)) {
111
- return srcValue;
112
- }
113
- });
114
- await this.resolveOnGetFunctions(newSchema);
115
- if (this.containsStorableSchema(newSchema)) {
116
- shouldSave = true;
117
- }
118
- }
119
- else {
120
- throw new Error('Invalid arguments for addSchema');
121
- }
122
- if (shouldSave) {
123
- this.saveDb();
124
- }
125
- }
126
- /**
127
- * Remove a schema by its config path/key from the existing schema.
128
- * It will also remove the value from the configuration.
129
- * If the schema is declared as storable, the value will be removed from the database.
130
- *
131
- * @param path - The path to the schema to remove.
132
- */
133
- removeSchema(path) {
134
- const schemaPath = configPathToSchemaPath(path);
135
- const schema = objectPath.get(this.schema, schemaPath);
136
- if (schema) {
137
- objectPath.del(this.schema, schemaPath);
138
- objectPath.del(this.values, path);
139
- if (this.containsStorableSchema(schema)) {
140
- this.saveDb();
141
- }
142
- }
143
- }
144
- /**
145
- * Change a schema by its config path/key from the existing schema.
146
- * It will also change the value from the configuration.
147
- * If the schema is declared as storable, the value will be saved to the database.
148
- *
149
- * @param path - The path to the schema to change.
150
- * @param schema - The new schema to set.
151
- */
152
- async changeSchema(path, newSchema) {
153
- const schemaPath = configPathToSchemaPath(path);
154
- const schema = objectPath.get(this.schema, schemaPath);
155
- if (schema) {
156
- mergeWith(schema, newSchema, (objValue, srcValue) => {
157
- if (Array.isArray(objValue)) {
158
- return srcValue;
159
- }
160
- });
161
- objectPath.set(this.schema, schemaPath, schema);
162
- await this.resolveOnGetFunctions(schema, schemaPath);
163
- if (this.containsStorableSchema(schema)) {
164
- this.saveDb();
165
- }
166
- }
167
- }
168
- /**
169
- * Get a schema by its config path/key.
170
- *
171
- * @param path - The path to the schema to get.
172
- * @returns The schema.
173
- */
174
- getSchema(path) {
175
- const schemaPath = configPathToSchemaPath(path);
176
- const schema = objectPath.get(this.schema, schemaPath);
177
- return schema;
178
- }
179
- /**
180
- * Check if a schema exists by its config path/key.
181
- *
182
- * @param path - The path to the schema to check.
183
- * @returns True if the schema exists, false otherwise.
184
- */
185
- hasSchema(path) {
186
- const schemaPath = configPathToSchemaPath(path);
187
- const schema = objectPath.get(this.schema, schemaPath);
188
- return !!schema;
189
- }
190
- async resolveOnGetFunctions(schema, baseSchemaPath = '') {
191
- if (isPrimitiveType(schema)) {
192
- await this.resolveOnGetFunctionsForSchema(baseSchemaPath);
193
- }
194
- else if (isObjectType(schema)) {
195
- if (schema.properties) {
196
- await this.resolveOnGetFunctionsForObject(schema.properties, baseSchemaPath);
197
- }
198
- }
199
- else {
200
- for (const [key, value] of Object.entries(schema)) {
201
- const schemaPath = baseSchemaPath ? `${baseSchemaPath}.${key}` : key;
202
- if (isObjectType(value)) {
203
- if (value.properties) {
204
- await this.resolveOnGetFunctionsForObject(value.properties, schemaPath);
205
- }
206
- }
207
- else {
208
- await this.resolveOnGetFunctionsForSchema(schemaPath);
209
- }
210
- }
211
- }
212
- }
213
- async resolveOnGetFunctionsForObject(schema, baseSchemaPath) {
214
- for (const key of Object.keys(schema)) {
215
- const schemaPath = baseSchemaPath ? `${baseSchemaPath}.${key}` : key;
216
- await this.resolveOnGetFunctionsForSchema(schemaPath);
217
- }
218
- }
219
- async resolveOnGetFunctionsForSchema(schemaPath) {
220
- const configPath = schemaPathToConfigPath(schemaPath);
221
- const schemaValue = await this.getValue(configPath);
222
- if (schemaValue !== undefined && schemaValue !== null) {
223
- objectPath.set(this.values, configPath, schemaValue);
224
- }
225
- }
226
- async triggerOnSetForChanges(oldConfig, newConfig, path = '') {
227
- for (const key in newConfig) {
228
- const newPath = path ? `${path}.${key}` : key;
229
- const oldValue = getValueByPath(oldConfig, key);
230
- const newValue = newConfig[key];
231
- if (!isEqual(oldValue, newValue, true)) {
232
- const schemaPath = configPathToSchemaPath(newPath);
233
- const schemaItem = getValueByPath(this.schema, schemaPath);
234
- if (schemaItem && schemaItem.type !== 'button' && typeof schemaItem.onSet === 'function') {
235
- await schemaItem.onSet.call(this.instance, newValue, oldValue);
236
- }
237
- }
238
- if (newValue && typeof newValue === 'object' && !Array.isArray(newValue)) {
239
- await this.triggerOnSetForChanges(oldValue || {}, newValue, newPath);
240
- }
241
- }
242
- }
243
- filterStorableValues(schema, baseSchemaPath = '', result = {}) {
244
- for (const [key, value] of Object.entries(schema)) {
245
- if (value.type === 'button') {
246
- continue;
247
- }
248
- if (isObjectType(value)) {
249
- if (value.properties) {
250
- this.filterStorableValues(value.properties, baseSchemaPath ? `${baseSchemaPath}.${key}` : key, result);
251
- }
252
- }
253
- else if (value.store) {
254
- const schemaPath = baseSchemaPath ? `${baseSchemaPath}.${key}` : key;
255
- const configPath = schemaPathToConfigPath(schemaPath);
256
- const configValue = getValueByPath(this.values, configPath);
257
- objectPath.set(result, configPath, configValue);
258
- }
259
- }
260
- return result;
261
- }
262
- containsStorableSchema(schema) {
263
- if (schema.type === 'button') {
264
- return false;
265
- }
266
- if (schema.store) {
267
- return true;
268
- }
269
- if (isObjectType(schema) && schema.properties) {
270
- return Object.values(schema.properties).some((subSchema) => this.containsStorableSchema(subSchema));
271
- }
272
- else if (isArrayType(schema) && schema.items) {
273
- return this.containsStorableSchema(schema.items);
274
- }
275
- return false;
276
- }
277
- saveDb() {
278
- const config = this.pluginDb.get('config') || {};
279
- const storableConfig = this.filterStorableValues(this.schema);
280
- config[this.cameraId] = storableConfig;
281
- this.pluginDb.putSync('config', config);
282
- }
283
- async close() {
284
- try {
285
- this.saveDb();
286
- }
287
- catch {
288
- //
289
- }
290
- }
291
- }
292
- //# sourceMappingURL=cameraStorage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cameraStorage.js","sourceRoot":"","sources":["../../../../../../src/polyglot/node/plugins/cameraStorage.ts"],"names":[],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- export declare class PluginChild {
2
- private displayName;
3
- private api?;
4
- private plugin?;
5
- private logger;
6
- private pluginDb?;
7
- private publisher?;
8
- private subscriber?;
9
- private pluginSubscriber?;
10
- private subject;
11
- private pluginSubject;
12
- private targetSubject;
13
- private auth;
14
- private proxyEndpoints;
15
- private messageQueue?;
16
- private stopped;
17
- constructor();
18
- private init;
19
- private start;
20
- private stop;
21
- private loadPlugin;
22
- private sendMessage;
23
- private requestHandler;
24
- private onWorkerMessage;
25
- private isPluginMessage;
26
- private isStorageMessage;
27
- private signalHander;
28
- }
@@ -1,222 +0,0 @@
1
- process.title = `camera.ui - ${process.argv[2]}`;
2
- import { open } from 'lmdb';
3
- import { fileURLToPath, pathToFileURL } from 'node:url';
4
- import { API_EVENT } from '../../../api.js';
5
- import { Database } from '../../../api/database/index.js';
6
- import { ProxyConnection } from '../../../nats/connection.js';
7
- import { MessageQueue } from '../../../nats/messageQueue.js';
8
- import { PLUGIN_COMMAND, PLUGIN_STATUS } from '../../../plugins/types.js';
9
- import { unpack } from '../../../utils/packer.js';
10
- import { sleep } from '../../../utils/utils.js';
11
- import { API } from './pluginApi.js';
12
- import { PluginLogger } from './pluginLogger.js';
13
- import { CameraDeviceProxy } from './proxy/cameraDevice.js';
14
- export class PluginChild {
15
- displayName = process.argv[2];
16
- api;
17
- plugin;
18
- logger;
19
- pluginDb;
20
- publisher;
21
- subscriber;
22
- pluginSubscriber;
23
- subject;
24
- pluginSubject;
25
- targetSubject;
26
- auth;
27
- proxyEndpoints;
28
- messageQueue;
29
- stopped = false;
30
- constructor() {
31
- this.proxyEndpoints = process.env.PROXY_ENDPOINTS.split(',');
32
- this.auth = { user: process.env.PROXY_USER, password: process.env.PROXY_PASSWORD };
33
- delete process.env.PROXY_USER;
34
- delete process.env.PROXY_PASSWORD;
35
- delete process.env.PROXY_ENDPOINTS;
36
- this.logger = new PluginLogger(this.displayName, process.env.LOGGER_DISABLE_TIMESTAMPS === '1');
37
- this.subject = `${process.env.WORKER_ID}.ipc.subscriber`;
38
- this.pluginSubject = `${process.env.PLUGIN_ID}.child`;
39
- this.targetSubject = `${process.env.WORKER_ID}.ipc.publisher`;
40
- this.signalHander();
41
- this.init();
42
- }
43
- async init() {
44
- const servers = this.proxyEndpoints.filter((endpoint) => endpoint.startsWith('nats://'));
45
- this.publisher = new ProxyConnection(this.subject, servers, this.auth);
46
- await this.publisher.connect();
47
- this.subscriber = this.publisher.subscribe(this.subject);
48
- this.subscriber.on('message', this.onWorkerMessage.bind(this));
49
- this.pluginSubscriber = this.publisher.subscribe(this.pluginSubject);
50
- this.messageQueue = new MessageQueue('client', this.publisher, this.pluginSubscriber, this.logger, this.requestHandler.bind(this));
51
- this.sendMessage({ type: PLUGIN_STATUS.READY });
52
- }
53
- async start(data) {
54
- try {
55
- const storagePath = data.storage.storagePath;
56
- const configFile = data.storage.configFile;
57
- const pluginInfo = data.plugin;
58
- const cameras = data.cameras;
59
- this.pluginDb = open(`${storagePath}/volume`, {
60
- name: Database.PLUGINS_ID,
61
- });
62
- const pluginConfig = this.pluginDb.get('config');
63
- if (!pluginConfig) {
64
- await this.pluginDb.put('config', {});
65
- }
66
- this.api = new API(pluginInfo, storagePath, configFile, this.logger, this.proxyEndpoints, this.auth, this.pluginDb);
67
- const pluginConstructor = await this.loadPlugin();
68
- this.plugin = new pluginConstructor(this.logger, this.api);
69
- const coreManager = this.api.coreManager;
70
- const deviceManager = this.api.deviceManager;
71
- await Promise.all([deviceManager.init(), coreManager.init()]);
72
- const camerasDevices = cameras.map((camera) => new CameraDeviceProxy(this.api, this.logger, camera, data.plugin, this.proxyEndpoints, this.auth));
73
- await Promise.all(camerasDevices.map((cameraDevice) => cameraDevice.init()));
74
- deviceManager.configureCameras(camerasDevices);
75
- this.plugin.configureCameras(camerasDevices);
76
- this.sendMessage({ type: PLUGIN_STATUS.STARTED });
77
- this.api.emit(API_EVENT.FINISH_LAUNCHING);
78
- }
79
- catch (error) {
80
- this.logger.error('Starting plugin failed:', error);
81
- this.sendMessage({ type: PLUGIN_STATUS.ERROR, data: error.message });
82
- }
83
- }
84
- async stop() {
85
- if (this.stopped) {
86
- return;
87
- }
88
- this.stopped = true;
89
- this.api?.emit(API_EVENT.SHUTDOWN);
90
- this.messageQueue?.abortQueue();
91
- await this.publisher?.close();
92
- await sleep(500);
93
- await this.pluginDb?.close();
94
- }
95
- async loadPlugin() {
96
- const moduleUrl = pathToFileURL(process.env.MODULE_PATH).href;
97
- const { default: pluginConstructor } = await import(moduleUrl);
98
- if (typeof pluginConstructor === 'function') {
99
- return pluginConstructor;
100
- }
101
- else if (pluginConstructor && typeof pluginConstructor.default === 'function') {
102
- return pluginConstructor.default;
103
- }
104
- else {
105
- throw new Error(`Plugin ${process.env.MODULE_PATH} does not export a initializer function from main.`);
106
- }
107
- }
108
- sendMessage(message) {
109
- if (!this.publisher) {
110
- throw new Error('Publisher is not initialized');
111
- }
112
- this.publisher.publish(this.targetSubject, message);
113
- }
114
- async requestHandler(message) {
115
- if (!this.messageQueue) {
116
- throw new Error('Message queue not initialized');
117
- }
118
- const reply = {
119
- ...message,
120
- type: 'reply',
121
- };
122
- try {
123
- if (!this.plugin || !this.api) {
124
- throw new Error('Plugin not initialized');
125
- }
126
- if (this.isPluginMessage(message.fn)) {
127
- const fn = message.fn;
128
- reply.response = await this.plugin[fn].apply(this.plugin, message.args);
129
- }
130
- else if (message.cameraId && this.isStorageMessage(message.fn, this.api?.storageController.getCameraStorage(message.cameraId))) {
131
- const fn = message.fn;
132
- const cameraStorage = this.api.storageController.getCameraStorage(message.cameraId);
133
- reply.response = await cameraStorage[fn].apply(cameraStorage, message.args);
134
- }
135
- else {
136
- throw new Error(`Unknown function: ${message.fn}`);
137
- }
138
- }
139
- catch (error) {
140
- reply.error = {
141
- name: error.name,
142
- message: error.message,
143
- stack: error.stack,
144
- };
145
- }
146
- if (message.timeout === 0) {
147
- return;
148
- }
149
- else {
150
- this.messageQueue.enqueue(reply);
151
- }
152
- }
153
- async onWorkerMessage(msg) {
154
- if (this.stopped) {
155
- return;
156
- }
157
- const message = unpack(msg.data);
158
- switch (message.type) {
159
- case PLUGIN_COMMAND.START:
160
- this.start(message.data);
161
- break;
162
- case PLUGIN_COMMAND.STOP:
163
- this.stop();
164
- break;
165
- }
166
- }
167
- isPluginMessage(fn) {
168
- return Boolean(this.plugin && typeof this.plugin[fn] === 'function');
169
- }
170
- isStorageMessage(fn, storage) {
171
- return Boolean(storage && fn in storage && typeof storage[fn] === 'function');
172
- }
173
- signalHander() {
174
- let closePromise;
175
- const gracefullyClose = async (signal, reason, error, promise) => {
176
- if (closePromise) {
177
- return closePromise;
178
- }
179
- if (error || (promise && reason)) {
180
- this.logger.log(`${this.displayName} is ungracefully closing from signal="${signal}" reason="${reason || 'unknown'}"...`);
181
- if (error) {
182
- if (typeof error === 'string') {
183
- this.logger.error(error);
184
- }
185
- else {
186
- this.logger.error(`${signal}`, error);
187
- }
188
- }
189
- else {
190
- this.logger.error(`${signal}: Unhandled promise rejection:`, reason || promise);
191
- }
192
- }
193
- else {
194
- this.logger.log(`${this.displayName} is gracefully closing from signal="${signal}" reason="${reason || 'unknown'}"...`);
195
- }
196
- const shutdown = setTimeout(() => {
197
- this.logger.warn('Failed to gracefully close before timeout, force quit!');
198
- process.kill(process.pid, 'SIGKILL');
199
- }, 2000);
200
- closePromise = this.stop();
201
- await closePromise;
202
- clearTimeout(shutdown);
203
- process.exit(0);
204
- };
205
- process.on('uncaughtException', (error) => gracefullyClose('uncaughtException', undefined, error));
206
- process.on('unhandledRejection', (reason, promise) => gracefullyClose('unhandledRejection', reason, undefined, promise));
207
- process.on('SIGTERM', gracefullyClose);
208
- process.on('SIGINT', gracefullyClose);
209
- setInterval(() => {
210
- if (!process.connected) {
211
- process.exit(1);
212
- }
213
- }, 10000);
214
- process.on('disconnect', () => {
215
- process.exit();
216
- });
217
- }
218
- }
219
- if (process.argv[1] === fileURLToPath(import.meta.url)) {
220
- new PluginChild();
221
- }
222
- //# sourceMappingURL=child.js.map