@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.
- package/dist/interface/@intlify.DXtFJcML.0.0.22-alpha.2.js +15 -0
- package/dist/interface/@mdi.C1UTQKuc.0.0.22-alpha.2.js +1 -0
- package/dist/interface/@tanstack.B6ZKNODP.0.0.22-alpha.2.js +1 -0
- package/dist/interface/{@vee-validate.CBoqAk51.0.0.22-alpha.1.js → @vee-validate.BLOXgupV.0.0.22-alpha.2.js} +2 -2
- package/dist/interface/@vue.DYBoJLkm.0.0.22-alpha.2.js +17 -0
- package/dist/interface/{@vueform.20m7Hn_5.0.0.22-alpha.1.js → @vueform.BNEdNEfe.0.0.22-alpha.2.js} +1 -1
- package/dist/interface/@vueuse.DLeXr990.0.0.22-alpha.2.js +1 -0
- package/dist/interface/Account.CJmkOolZ.0.0.22-alpha.2.js +1 -0
- package/dist/interface/Adminpanel.Tg7HwSe9.0.0.22-alpha.2.js +2 -0
- package/dist/interface/Appearance.Bu1bU0wi.0.0.22-alpha.2.js +1 -0
- package/dist/interface/Backup.8VdHTNcr.0.0.22-alpha.2.js +1 -0
- package/dist/interface/Camera.Dg8hy2Yt.0.0.22-alpha.2.js +1 -0
- package/dist/interface/Cameras.BIlZs0XL.0.0.22-alpha.2.js +1 -0
- package/dist/interface/Camview.BOntwhuV.0.0.22-alpha.2.js +1 -0
- package/dist/interface/Config.jsnOhEqZ.0.0.22-alpha.2.js +1 -0
- package/dist/interface/Console.D9pK-qBL.0.0.22-alpha.2.js +4 -0
- package/dist/interface/FirstSteps.Cb5a8AUL.0.0.22-alpha.2.js +1 -0
- package/dist/interface/{NewCamera.BoQ_EpL5.0.0.22-alpha.1.js → NewCamera.Dz60UmLc.0.0.22-alpha.2.js} +2 -2
- package/dist/interface/Plugin.DsAb_cep.0.0.22-alpha.2.js +1 -0
- package/dist/interface/Plugins.bxGkXmVc.0.0.22-alpha.2.js +1 -0
- package/dist/interface/Recordings.BTkAhv1T.0.0.22-alpha.2.js +1 -0
- package/dist/interface/Recordings.C_TDdsbp.0.0.22-alpha.2.js +1 -0
- package/dist/interface/Settings.Br20f1vP.0.0.22-alpha.2.js +1 -0
- package/dist/interface/System.WdQgcjx6.0.0.22-alpha.2.js +4 -0
- package/dist/interface/User.BUO6E9hO.0.0.22-alpha.2.js +1 -0
- package/dist/interface/VConfigEditor.vue_vue_type_script_setup_true_lang.V-YCJXF9.0.0.22-alpha.2.js +2 -0
- package/dist/interface/VConsole.efu2RLE4.0.0.22-alpha.2.js +1 -0
- package/dist/interface/VPlayer.7xACf1AA.0.0.22-alpha.2.js +4 -0
- package/dist/interface/VPluginCard.DObvo0pi.0.0.22-alpha.2.js +4 -0
- package/dist/interface/{ace-builds.GNWBVG5S.0.0.22-alpha.1.js → ace-builds.CYuWji3-.0.0.22-alpha.2.js} +27 -27
- package/dist/interface/{apexcharts.BMrxVPFF.0.0.22-alpha.1.js → apexcharts.BjVuUwvF.0.0.22-alpha.2.js} +1 -1
- package/dist/interface/assets/Adminpanel.0.0.22-alpha.2.a3t1v3MB.css +1 -0
- package/dist/interface/assets/Camera.0.0.22-alpha.2.D1I-fW4q.css +1 -0
- package/dist/interface/assets/Cameras.0.0.22-alpha.2.Buf1Dgce.css +1 -0
- package/dist/interface/assets/Camview.0.0.22-alpha.2.B7Cja2ry.css +1 -0
- package/dist/interface/assets/Config.0.0.22-alpha.2.DNGo2krN.css +1 -0
- package/dist/interface/assets/Console.0.0.22-alpha.2.Bh8l9QnM.css +1 -0
- package/dist/interface/assets/FirstSteps.0.0.22-alpha.2.sPEcItZ6.css +1 -0
- package/dist/interface/assets/NewCamera.0.0.22-alpha.2.Cq8GzeJ7.css +1 -0
- package/dist/interface/assets/{Settings.0.0.22-alpha.1.DC_-E3CR.css → Settings.0.0.22-alpha.2.CVmui2kE.css} +1 -1
- package/dist/interface/assets/VConsole.0.0.22-alpha.2.BCqKHpmJ.css +1 -0
- package/dist/interface/assets/VPlayer.0.0.22-alpha.2.DNtDNhfg.css +1 -0
- package/dist/interface/assets/VPluginCard.0.0.22-alpha.2.C8Lj6X-J.css +1 -0
- package/dist/interface/assets/main.0.0.22-alpha.2.DNhh__S1.css +1 -0
- package/dist/interface/assets/{vuetify.0.0.22-alpha.1.Cd1awv3t.css → vuetify.0.0.22-alpha.2.CgGsw6iO.css} +2 -2
- package/dist/interface/birpc.l0sNRNKZ.0.0.22-alpha.2.js +1 -0
- package/dist/interface/{dnd-core.DMTh_43Y.0.0.22-alpha.1.js → dnd-core.CInfibuN.0.0.22-alpha.2.js} +1 -1
- package/dist/interface/{draggabilly.Bp5rpROY.0.0.22-alpha.1.js → draggabilly.D1IWfp_b.0.0.22-alpha.2.js} +1 -1
- package/dist/interface/engine.io-client.DefPnTEq.0.0.22-alpha.2.js +1 -0
- 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
- 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
- package/dist/interface/{highlight.js.BcAmtPT9.0.0.22-alpha.1.js → highlight.js.UlfE9jpO.0.0.22-alpha.2.js} +1 -1
- package/dist/interface/hookable.B8xFkYCm.0.0.22-alpha.2.js +1 -0
- package/dist/interface/index.html +34 -36
- package/dist/interface/{linkify-it.zJgnXBKD.0.0.22-alpha.1.js → linkify-it.Fi_bpuck.0.0.22-alpha.2.js} +1 -1
- package/dist/interface/main.oy2O2TRy.0.0.22-alpha.2.js +5 -0
- package/dist/interface/{markdown-it.DSn07YT-.0.0.22-alpha.1.js → markdown-it.DJgGU14J.0.0.22-alpha.2.js} +1 -1
- package/dist/interface/{nprogress.B-sfF0qV.0.0.22-alpha.1.js → nprogress.tJ-b_-wu.0.0.22-alpha.2.js} +1 -1
- package/dist/interface/perfect-debounce.Cp2ysxOb.0.0.22-alpha.2.js +1 -0
- package/dist/interface/pinia.yZCOO45u.0.0.22-alpha.2.js +5 -0
- package/dist/interface/plugins.Cfyqqots.0.0.22-alpha.2.js +1 -0
- package/dist/interface/point-in-polygon-hao.l0sNRNKZ.0.0.22-alpha.2.js +1 -0
- package/dist/interface/{qrcode.BcJHYbhe.0.0.22-alpha.1.js → qrcode.9XoqawvO.0.0.22-alpha.2.js} +1 -1
- 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
- package/dist/interface/{rxjs.BlwZeIMX.0.0.22-alpha.1.js → rxjs.1CAxveb4.0.0.22-alpha.2.js} +1 -1
- package/dist/interface/socket.io-client.e8QnYieU.0.0.22-alpha.2.js +1 -0
- 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
- package/dist/interface/sw.js +1 -1
- package/dist/interface/sweepline-intersections.l0sNRNKZ.0.0.22-alpha.2.js +1 -0
- package/dist/interface/system.CxMAOYjs.0.0.22-alpha.2.js +1 -0
- package/dist/interface/types.Cz9TaZAP.0.0.22-alpha.2.js +1 -0
- package/dist/interface/{unidragger.BfsybYBO.0.0.22-alpha.1.js → unidragger.D9uoooG_.0.0.22-alpha.2.js} +1 -1
- package/dist/interface/utils.mAKpSMLY.0.0.22-alpha.2.js +1 -0
- package/dist/interface/uuid.Ch9TGLTe.0.0.22-alpha.2.js +1 -0
- package/dist/interface/vee-validate.DnRu3xAR.0.0.22-alpha.2.js +5 -0
- package/dist/interface/vue-i18n.DNPn_WN3.0.0.22-alpha.2.js +5 -0
- 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
- package/dist/interface/vue-router.Ci1GIRoh.0.0.22-alpha.2.js +5 -0
- package/dist/interface/vue.l0sNRNKZ.0.0.22-alpha.2.js +1 -0
- package/dist/interface/vue3-apexcharts.4RpZv9AC.0.0.22-alpha.2.js +1 -0
- package/dist/interface/{vue3-dnd.DpYuZy8Q.0.0.22-alpha.1.js → vue3-dnd.CyNbBiuS.0.0.22-alpha.2.js} +1 -1
- package/dist/interface/vue3-toastify.Jtf1C0Kw.0.0.22-alpha.2.js +1 -0
- package/dist/interface/vuetify.D4io05br.0.0.22-alpha.2.js +5 -0
- package/dist/interface/zod.DnW1_kUe.0.0.22-alpha.2.js +1 -0
- package/dist/server/bin/cameraui-server.js +8 -0
- package/dist/server/bin/cameraui-server.js.map +1 -0
- package/dist/server/package.json +44 -70
- package/dist/server/requirements.txt +6 -5
- package/dist/server/src/api/controllers/auth.controller.js +1 -1
- package/dist/server/src/api/controllers/auth.controller.js.map +1 -1
- package/dist/server/src/api/controllers/backup.controller.js +2 -2
- package/dist/server/src/api/controllers/backup.controller.js.map +1 -1
- package/dist/server/src/api/controllers/cameras.controller.d.ts +4 -2
- package/dist/server/src/api/controllers/cameras.controller.js +88 -42
- package/dist/server/src/api/controllers/cameras.controller.js.map +1 -1
- package/dist/server/src/api/controllers/files.controller.js.map +1 -1
- package/dist/server/src/api/controllers/frameWorkers.controller.d.ts +1 -1
- package/dist/server/src/api/controllers/frameWorkers.controller.js +15 -7
- package/dist/server/src/api/controllers/frameWorkers.controller.js.map +1 -1
- package/dist/server/src/api/controllers/plugins.controller.d.ts +3 -4
- package/dist/server/src/api/controllers/plugins.controller.js +141 -202
- package/dist/server/src/api/controllers/plugins.controller.js.map +1 -1
- package/dist/server/src/api/controllers/system.controller.d.ts +9 -3
- package/dist/server/src/api/controllers/system.controller.js +73 -53
- package/dist/server/src/api/controllers/system.controller.js.map +1 -1
- package/dist/server/src/api/controllers/users.controller.js +12 -10
- package/dist/server/src/api/controllers/users.controller.js.map +1 -1
- package/dist/server/src/api/database/checks.d.ts +55 -0
- package/dist/server/src/api/database/checks.js +183 -0
- package/dist/server/src/api/database/checks.js.map +1 -0
- package/dist/server/src/api/database/constants.d.ts +8 -0
- package/dist/server/src/api/database/constants.js +9 -0
- package/dist/server/src/api/database/constants.js.map +1 -0
- package/dist/server/src/api/database/index.d.ts +4 -13
- package/dist/server/src/api/database/index.js +61 -39
- package/dist/server/src/api/database/index.js.map +1 -1
- package/dist/server/src/api/database/migration.d.ts +1 -0
- package/dist/server/src/api/database/migration.js +73 -7
- package/dist/server/src/api/database/migration.js.map +1 -1
- package/dist/server/src/api/database/selfcheck.d.ts +48 -0
- package/dist/server/src/api/database/selfcheck.js +398 -0
- package/dist/server/src/api/database/selfcheck.js.map +1 -0
- package/dist/server/src/api/database/types.d.ts +15 -141
- package/dist/server/src/api/go2rtc/api/application.js +3 -2
- package/dist/server/src/api/go2rtc/api/application.js.map +1 -1
- package/dist/server/src/api/go2rtc/api/index.js +3 -2
- package/dist/server/src/api/go2rtc/api/index.js.map +1 -1
- package/dist/server/src/api/go2rtc/api/streams.d.ts +1 -1
- package/dist/server/src/api/go2rtc/api/streams.js +4 -2
- package/dist/server/src/api/go2rtc/api/streams.js.map +1 -1
- package/dist/server/src/api/go2rtc/index.d.ts +1 -0
- package/dist/server/src/api/go2rtc/index.js +6 -1
- package/dist/server/src/api/go2rtc/index.js.map +1 -1
- package/dist/server/src/api/go2rtc/types.d.ts +2 -18
- package/dist/server/src/api/index.d.ts +1 -0
- package/dist/server/src/api/index.js +21 -29
- package/dist/server/src/api/index.js.map +1 -1
- package/dist/server/src/api/middlewares/authPermission.middleware.d.ts +3 -3
- package/dist/server/src/api/middlewares/authPermission.middleware.js.map +1 -1
- package/dist/server/src/api/middlewares/authValidation.middleware.d.ts +2 -2
- package/dist/server/src/api/middlewares/authValidation.middleware.js +3 -3
- package/dist/server/src/api/middlewares/authValidation.middleware.js.map +1 -1
- package/dist/server/src/api/middlewares/socketAuth.middleware.d.ts +1 -1
- package/dist/server/src/api/middlewares/socketAuth.middleware.js +1 -1
- package/dist/server/src/api/plugins/header.plugin.d.ts +2 -0
- package/dist/server/src/api/plugins/header.plugin.js +13 -0
- package/dist/server/src/api/plugins/header.plugin.js.map +1 -0
- package/dist/server/src/api/plugins/logger.plugin.js +1 -1
- package/dist/server/src/api/plugins/logger.plugin.js.map +1 -1
- package/dist/server/src/api/plugins/system.plugin.d.ts +3 -1
- package/dist/server/src/api/plugins/system.plugin.js +6 -1
- package/dist/server/src/api/plugins/system.plugin.js.map +1 -1
- package/dist/server/src/api/plugins/useragent.plugin.d.ts +1 -1
- package/dist/server/src/api/plugins/useragent.plugin.js +1 -1
- package/dist/server/src/api/plugins/useragent.plugin.js.map +1 -1
- package/dist/server/src/api/routes/cameras.routes.js +12 -0
- package/dist/server/src/api/routes/cameras.routes.js.map +1 -1
- package/dist/server/src/api/routes/plugins.routes.js +24 -0
- package/dist/server/src/api/routes/plugins.routes.js.map +1 -1
- package/dist/server/src/api/routes/system.routes.js +3 -6
- package/dist/server/src/api/routes/system.routes.js.map +1 -1
- package/dist/server/src/api/schemas/backup.schema.js.map +1 -1
- package/dist/server/src/api/schemas/cameras.schema.d.ts +227 -187
- package/dist/server/src/api/schemas/cameras.schema.js +25 -6
- package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
- package/dist/server/src/api/schemas/config.schema.d.ts +12 -20
- package/dist/server/src/api/schemas/config.schema.js +0 -2
- package/dist/server/src/api/schemas/config.schema.js.map +1 -1
- package/dist/server/src/api/schemas/go2rtc.schema.d.ts +143 -143
- package/dist/server/src/api/schemas/plugins.schema.d.ts +5 -5
- package/dist/server/src/api/schemas/plugins.schema.js +1 -1
- package/dist/server/src/api/schemas/plugins.schema.js.map +1 -1
- package/dist/server/src/api/schemas/system.schema.d.ts +8 -0
- package/dist/server/src/api/schemas/system.schema.js +5 -0
- package/dist/server/src/api/schemas/system.schema.js.map +1 -1
- package/dist/server/src/api/schemas/users.schema.d.ts +170 -170
- package/dist/server/src/api/schemas/users.schema.js.map +1 -1
- package/dist/server/src/api/services/auth.service.js +17 -17
- package/dist/server/src/api/services/auth.service.js.map +1 -1
- package/dist/server/src/api/services/backup.service.js.map +1 -1
- package/dist/server/src/api/services/cameras.service.d.ts +10 -5
- package/dist/server/src/api/services/cameras.service.js +166 -89
- package/dist/server/src/api/services/cameras.service.js.map +1 -1
- package/dist/server/src/api/services/plugins.service.d.ts +1 -0
- package/dist/server/src/api/services/plugins.service.js +16 -11
- package/dist/server/src/api/services/plugins.service.js.map +1 -1
- package/dist/server/src/api/services/system.service.js +4 -4
- package/dist/server/src/api/services/system.service.js.map +1 -1
- package/dist/server/src/api/services/users.service.js +29 -29
- package/dist/server/src/api/services/users.service.js.map +1 -1
- package/dist/server/src/api/types/index.d.ts +127 -129
- package/dist/server/src/api/types/index.js.map +1 -1
- package/dist/server/src/api/utils/cameraSource.d.ts +2 -0
- package/dist/server/src/api/utils/cameraSource.js +34 -0
- package/dist/server/src/api/utils/cameraSource.js.map +1 -0
- package/dist/server/src/api/utils/cert.d.ts +7 -7
- package/dist/server/src/api/utils/cert.js +178 -385
- package/dist/server/src/api/utils/cert.js.map +1 -1
- package/dist/server/src/api/utils/constants.d.ts +0 -2
- package/dist/server/src/api/utils/constants.js +4 -7
- package/dist/server/src/api/utils/constants.js.map +1 -1
- package/dist/server/src/api/websocket/index.js +2 -1
- package/dist/server/src/api/websocket/index.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/logs.d.ts +10 -2
- package/dist/server/src/api/websocket/nsp/logs.js +110 -76
- package/dist/server/src/api/websocket/nsp/logs.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/metrics.d.ts +1 -1
- package/dist/server/src/api/websocket/nsp/metrics.js +19 -16
- package/dist/server/src/api/websocket/nsp/metrics.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/notifications.js +1 -1
- package/dist/server/src/api/websocket/nsp/notifications.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/plugins.d.ts +1 -1
- package/dist/server/src/api/websocket/nsp/plugins.js +3 -4
- package/dist/server/src/api/websocket/nsp/plugins.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/server.d.ts +9 -4
- package/dist/server/src/api/websocket/nsp/server.js +57 -20
- package/dist/server/src/api/websocket/nsp/server.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/status.d.ts +1 -1
- package/dist/server/src/api/websocket/nsp/status.js +9 -7
- package/dist/server/src/api/websocket/nsp/status.js.map +1 -1
- package/dist/server/src/api/websocket/types.d.ts +7 -13
- package/dist/server/src/api.d.ts +8 -23
- package/dist/server/src/api.js +43 -24
- package/dist/server/src/api.js.map +1 -1
- package/dist/server/src/camera/controller.d.ts +31 -14
- package/dist/server/src/camera/controller.js +371 -68
- package/dist/server/src/camera/controller.js.map +1 -1
- package/dist/server/src/{decoder/worker.d.ts → camera/frameWorker.d.ts} +11 -8
- package/dist/server/src/camera/frameWorker.js +305 -0
- package/dist/server/src/camera/frameWorker.js.map +1 -0
- package/dist/server/src/camera/types.d.ts +1 -199
- package/dist/server/src/camera/types.js +1 -6
- package/dist/server/src/camera/types.js.map +1 -1
- package/dist/server/src/go2rtc/index.js +23 -11
- package/dist/server/src/go2rtc/index.js.map +1 -1
- package/dist/server/src/main.d.ts +21 -0
- package/dist/server/src/main.js +130 -74
- package/dist/server/src/main.js.map +1 -1
- package/dist/server/src/nats/index.d.ts +5 -5
- package/dist/server/src/nats/index.js +5 -6
- package/dist/server/src/nats/index.js.map +1 -1
- package/dist/server/src/nats/proxy/cameraDevice.d.ts +4 -4
- package/dist/server/src/nats/proxy/cameraDevice.js +41 -58
- package/dist/server/src/nats/proxy/cameraDevice.js.map +1 -1
- package/dist/server/src/nats/proxy/coreManager.d.ts +4 -4
- package/dist/server/src/nats/proxy/coreManager.js +6 -1
- package/dist/server/src/nats/proxy/coreManager.js.map +1 -1
- package/dist/server/src/nats/proxy/deviceManager.d.ts +5 -7
- package/dist/server/src/nats/proxy/deviceManager.js +4 -2
- package/dist/server/src/nats/proxy/deviceManager.js.map +1 -1
- package/dist/server/src/nats/server.js +33 -22
- package/dist/server/src/nats/server.js.map +1 -1
- package/dist/server/src/nats/types.d.ts +3 -121
- package/dist/server/src/nats/utils.d.ts +1 -1
- package/dist/server/src/nats/websocket.d.ts +2 -2
- package/dist/server/src/nats/websocket.js +7 -6
- package/dist/server/src/nats/websocket.js.map +1 -1
- package/dist/server/src/plugins/index.d.ts +3 -4
- package/dist/server/src/plugins/index.js +39 -38
- package/dist/server/src/plugins/index.js.map +1 -1
- package/dist/server/src/plugins/plugin.d.ts +6 -3
- package/dist/server/src/plugins/plugin.js +59 -23
- package/dist/server/src/plugins/plugin.js.map +1 -1
- package/dist/server/src/plugins/types.d.ts +1 -148
- package/dist/server/src/plugins/types.js +0 -15
- package/dist/server/src/plugins/types.js.map +1 -1
- package/dist/server/src/plugins/worker.d.ts +22 -3
- package/dist/server/src/plugins/worker.js +201 -59
- package/dist/server/src/plugins/worker.js.map +1 -1
- package/dist/server/src/services/config/constants.d.ts +3 -1
- package/dist/server/src/services/config/constants.js +12 -8
- package/dist/server/src/services/config/constants.js.map +1 -1
- package/dist/server/src/services/config/index.d.ts +15 -9
- package/dist/server/src/services/config/index.js +135 -46
- package/dist/server/src/services/config/index.js.map +1 -1
- package/dist/server/src/services/config/types.d.ts +10 -15
- package/dist/server/src/services/config/types.js.map +1 -1
- package/dist/server/src/services/logger/index.d.ts +10 -17
- package/dist/server/src/services/logger/index.js +44 -91
- package/dist/server/src/services/logger/index.js.map +1 -1
- package/dist/server/src/types.d.ts +24 -0
- package/eslint.config.js +89 -0
- package/localdeps.txt +6 -0
- package/package.json +44 -70
- package/dist/interface/@intlify.YW_pt133.0.0.22-alpha.1.js +0 -15
- package/dist/interface/@mdi.DnMbZhUH.0.0.22-alpha.1.js +0 -1
- package/dist/interface/@popperjs.BQBsAJpH.0.0.22-alpha.1.js +0 -1
- package/dist/interface/@tanstack.DlheOlVk.0.0.22-alpha.1.js +0 -1
- package/dist/interface/@vue.CvjRlaU6.0.0.22-alpha.1.js +0 -17
- package/dist/interface/@vueuse.-m94veKi.0.0.22-alpha.1.js +0 -1
- package/dist/interface/Account.CvNGInZy.0.0.22-alpha.1.js +0 -1
- package/dist/interface/Adminpanel.B38rrP4P.0.0.22-alpha.1.js +0 -2
- package/dist/interface/Appearance.kFVBM4J9.0.0.22-alpha.1.js +0 -1
- package/dist/interface/Backup.lo3nC5DR.0.0.22-alpha.1.js +0 -1
- package/dist/interface/Camera.BukjTYOy.0.0.22-alpha.1.js +0 -1
- package/dist/interface/Cameras.HNjLEphi.0.0.22-alpha.1.js +0 -1
- package/dist/interface/Camview.BXcJwv3e.0.0.22-alpha.1.js +0 -1
- package/dist/interface/Config.Bwtjrsr9.0.0.22-alpha.1.js +0 -1
- package/dist/interface/Console.DOkTKmKh.0.0.22-alpha.1.js +0 -4
- package/dist/interface/FirstSteps.BXQqfdBY.0.0.22-alpha.1.js +0 -1
- package/dist/interface/Plugin.DlATvyTj.0.0.22-alpha.1.js +0 -1
- package/dist/interface/Plugins.BekJdBK8.0.0.22-alpha.1.js +0 -1
- package/dist/interface/Recordings.B4YRWWi3.0.0.22-alpha.1.js +0 -1
- package/dist/interface/Recordings.U1858KpO.0.0.22-alpha.1.js +0 -1
- package/dist/interface/Settings.CiF0fVqP.0.0.22-alpha.1.js +0 -1
- package/dist/interface/System.Ca9T8x4i.0.0.22-alpha.1.js +0 -4
- package/dist/interface/User.C_3ugpqz.0.0.22-alpha.1.js +0 -1
- package/dist/interface/VConfigEditor.vue_vue_type_script_setup_true_lang.EB4E_zDr.0.0.22-alpha.1.js +0 -2
- package/dist/interface/VConsole.DJWV6CZ9.0.0.22-alpha.1.js +0 -1
- package/dist/interface/VPlayer.CpZzx0nW.0.0.22-alpha.1.js +0 -1
- package/dist/interface/VPluginCard.Cm4M7xYg.0.0.22-alpha.1.js +0 -4
- package/dist/interface/assets/Adminpanel.0.0.22-alpha.1.CXsTAXPL.css +0 -1
- package/dist/interface/assets/Camera.0.0.22-alpha.1.BDtUJ-lA.css +0 -1
- package/dist/interface/assets/Cameras.0.0.22-alpha.1.Djx0F2MM.css +0 -1
- package/dist/interface/assets/Camview.0.0.22-alpha.1.Ce_V-Nxj.css +0 -1
- package/dist/interface/assets/Config.0.0.22-alpha.1.k4QpWumg.css +0 -1
- package/dist/interface/assets/Console.0.0.22-alpha.1.DWrfRWs9.css +0 -1
- package/dist/interface/assets/FirstSteps.0.0.22-alpha.1.B3-pv8-a.css +0 -1
- package/dist/interface/assets/NewCamera.0.0.22-alpha.1.DJ3tUBT_.css +0 -1
- package/dist/interface/assets/VConsole.0.0.22-alpha.1.BZT1WyS-.css +0 -1
- package/dist/interface/assets/VPlayer.0.0.22-alpha.1.CZXlTn4I.css +0 -1
- package/dist/interface/assets/VPluginCard.0.0.22-alpha.1.CIL48ca_.css +0 -1
- package/dist/interface/assets/main.0.0.22-alpha.1.BOf8IWhK.css +0 -1
- package/dist/interface/assets/v-calendar.0.0.22-alpha.1.CtSuDYZU.css +0 -1
- package/dist/interface/engine.io-client.CY7UpWto.0.0.22-alpha.1.js +0 -1
- package/dist/interface/main.D-V5Qegn.0.0.22-alpha.1.js +0 -4
- package/dist/interface/pinia.Dn9R-5lV.0.0.22-alpha.1.js +0 -5
- package/dist/interface/plugins.9yif7gTi.0.0.22-alpha.1.js +0 -1
- package/dist/interface/socket.io-client.ZxUZ7LHn.0.0.22-alpha.1.js +0 -1
- package/dist/interface/system.D_1Xg-Sy.0.0.22-alpha.1.js +0 -1
- package/dist/interface/ui.BA2qa-Pn.0.0.22-alpha.1.js +0 -1
- package/dist/interface/utils.BvINh1mj.0.0.22-alpha.1.js +0 -1
- package/dist/interface/uuid.DvF23Exx.0.0.22-alpha.1.js +0 -1
- package/dist/interface/v-calendar.CemaWgJz.0.0.22-alpha.1.js +0 -1
- package/dist/interface/vee-validate.CpAAwmyb.0.0.22-alpha.1.js +0 -5
- package/dist/interface/vue-i18n.mw20Rif9.0.0.22-alpha.1.js +0 -5
- package/dist/interface/vue-router.BchJROVt.0.0.22-alpha.1.js +0 -5
- package/dist/interface/vue3-apexcharts.BiZhZbF2.0.0.22-alpha.1.js +0 -1
- package/dist/interface/vue3-toastify.DdCHHmXT.0.0.22-alpha.1.js +0 -1
- package/dist/interface/vuetify.red0JsnZ.0.0.22-alpha.1.js +0 -5
- package/dist/interface/zod.BaF2dDCd.0.0.22-alpha.1.js +0 -1
- package/dist/server/bin/cameraui.d.ts +0 -54
- package/dist/server/bin/cameraui.js +0 -622
- package/dist/server/bin/cameraui.js.map +0 -1
- package/dist/server/bin/fork.js +0 -13
- package/dist/server/bin/fork.js.map +0 -1
- package/dist/server/bin/installer/base.d.ts +0 -17
- package/dist/server/bin/installer/base.js +0 -45
- package/dist/server/bin/installer/base.js.map +0 -1
- package/dist/server/bin/installer/darwin.d.ts +0 -61
- package/dist/server/bin/installer/darwin.js +0 -249
- package/dist/server/bin/installer/darwin.js.map +0 -1
- package/dist/server/bin/installer/freebsd.d.ts +0 -64
- package/dist/server/bin/installer/freebsd.js +0 -254
- package/dist/server/bin/installer/freebsd.js.map +0 -1
- package/dist/server/bin/installer/linux.d.ts +0 -103
- package/dist/server/bin/installer/linux.js +0 -482
- package/dist/server/bin/installer/linux.js.map +0 -1
- package/dist/server/bin/installer/win32.d.ts +0 -45
- package/dist/server/bin/installer/win32.js +0 -178
- package/dist/server/bin/installer/win32.js.map +0 -1
- package/dist/server/src/api/plugins/cameraui.plugin.d.ts +0 -11
- package/dist/server/src/api/plugins/cameraui.plugin.js +0 -6
- package/dist/server/src/api/plugins/cameraui.plugin.js.map +0 -1
- package/dist/server/src/api/plugins/database.plugin.d.ts +0 -11
- package/dist/server/src/api/plugins/database.plugin.js +0 -12
- package/dist/server/src/api/plugins/database.plugin.js.map +0 -1
- package/dist/server/src/api/plugins/go2rtc.plugin.d.ts +0 -11
- package/dist/server/src/api/plugins/go2rtc.plugin.js +0 -11
- package/dist/server/src/api/plugins/go2rtc.plugin.js.map +0 -1
- package/dist/server/src/camera/device.d.ts +0 -29
- package/dist/server/src/camera/device.js +0 -20
- package/dist/server/src/camera/device.js.map +0 -1
- package/dist/server/src/camera/index.d.ts +0 -94
- package/dist/server/src/camera/index.js +0 -620
- package/dist/server/src/camera/index.js.map +0 -1
- package/dist/server/src/camera/interfaces/camera.d.ts +0 -10
- package/dist/server/src/camera/interfaces/camera.js +0 -23
- package/dist/server/src/camera/interfaces/camera.js.map +0 -1
- package/dist/server/src/camera/interfaces/prebuffer.d.ts +0 -11
- package/dist/server/src/camera/interfaces/prebuffer.js +0 -26
- package/dist/server/src/camera/interfaces/prebuffer.js.map +0 -1
- package/dist/server/src/camera/interfaces/ptz.d.ts +0 -13
- package/dist/server/src/camera/interfaces/ptz.js +0 -47
- package/dist/server/src/camera/interfaces/ptz.js.map +0 -1
- package/dist/server/src/camera/iou.d.ts +0 -2
- package/dist/server/src/camera/iou.js +0 -53
- package/dist/server/src/camera/iou.js.map +0 -1
- package/dist/server/src/camera/polygon.d.ts +0 -6
- package/dist/server/src/camera/polygon.js +0 -151
- package/dist/server/src/camera/polygon.js.map +0 -1
- package/dist/server/src/camera/streaming/peer-connection.d.ts +0 -55
- package/dist/server/src/camera/streaming/peer-connection.js +0 -203
- package/dist/server/src/camera/streaming/peer-connection.js.map +0 -1
- package/dist/server/src/camera/streaming/webrtc-connection.d.ts +0 -35
- package/dist/server/src/camera/streaming/webrtc-connection.js +0 -170
- package/dist/server/src/camera/streaming/webrtc-connection.js.map +0 -1
- package/dist/server/src/camera/streaming/werift-session.d.ts +0 -41
- package/dist/server/src/camera/streaming/werift-session.js +0 -179
- package/dist/server/src/camera/streaming/werift-session.js.map +0 -1
- package/dist/server/src/camera/videoFrame.d.ts +0 -24
- package/dist/server/src/camera/videoFrame.js +0 -104
- package/dist/server/src/camera/videoFrame.js.map +0 -1
- package/dist/server/src/decoder/index.d.ts +0 -11
- package/dist/server/src/decoder/index.js +0 -32
- package/dist/server/src/decoder/index.js.map +0 -1
- package/dist/server/src/decoder/types.d.ts +0 -151
- package/dist/server/src/decoder/types.js +0 -2
- package/dist/server/src/decoder/types.js.map +0 -1
- package/dist/server/src/decoder/worker.js +0 -245
- package/dist/server/src/decoder/worker.js.map +0 -1
- package/dist/server/src/index.d.ts +0 -18
- package/dist/server/src/index.js +0 -5
- package/dist/server/src/index.js.map +0 -1
- package/dist/server/src/nats/connection.d.ts +0 -17
- package/dist/server/src/nats/connection.js +0 -66
- package/dist/server/src/nats/connection.js.map +0 -1
- package/dist/server/src/nats/constants.d.ts +0 -1
- package/dist/server/src/nats/constants.js +0 -2
- package/dist/server/src/nats/constants.js.map +0 -1
- package/dist/server/src/nats/error.d.ts +0 -9
- package/dist/server/src/nats/error.js +0 -11
- package/dist/server/src/nats/error.js.map +0 -1
- package/dist/server/src/nats/messageQueue.d.ts +0 -20
- package/dist/server/src/nats/messageQueue.js +0 -132
- package/dist/server/src/nats/messageQueue.js.map +0 -1
- package/dist/server/src/nats/subscription.d.ts +0 -12
- package/dist/server/src/nats/subscription.js +0 -21
- package/dist/server/src/nats/subscription.js.map +0 -1
- package/dist/server/src/plugins/interfaces/audioDetection.d.ts +0 -7
- package/dist/server/src/plugins/interfaces/audioDetection.js +0 -4
- package/dist/server/src/plugins/interfaces/audioDetection.js.map +0 -1
- package/dist/server/src/plugins/interfaces/base.d.ts +0 -6
- package/dist/server/src/plugins/interfaces/base.js +0 -3
- package/dist/server/src/plugins/interfaces/base.js.map +0 -1
- package/dist/server/src/plugins/interfaces/motionDetection.d.ts +0 -6
- package/dist/server/src/plugins/interfaces/motionDetection.js +0 -4
- package/dist/server/src/plugins/interfaces/motionDetection.js.map +0 -1
- package/dist/server/src/plugins/interfaces/objectDetection.d.ts +0 -7
- package/dist/server/src/plugins/interfaces/objectDetection.js +0 -4
- package/dist/server/src/plugins/interfaces/objectDetection.js.map +0 -1
- package/dist/server/src/polyglot/node/decoder/child.d.ts +0 -1
- package/dist/server/src/polyglot/node/decoder/child.js +0 -644
- package/dist/server/src/polyglot/node/decoder/child.js.map +0 -1
- package/dist/server/src/polyglot/node/decoder/imageUtils.d.ts +0 -24
- package/dist/server/src/polyglot/node/decoder/imageUtils.js +0 -205
- package/dist/server/src/polyglot/node/decoder/imageUtils.js.map +0 -1
- package/dist/server/src/polyglot/node/decoder/wasm/build/decoder.d.ts +0 -144
- package/dist/server/src/polyglot/node/decoder/wasm/build/decoder.js +0 -65
- package/dist/server/src/polyglot/node/decoder/wasm/build/decoder.wasm +0 -0
- package/dist/server/src/polyglot/node/decoder/wasm/test/imageUtils.py +0 -106
- package/dist/server/src/polyglot/node/plugins/cameraStorage.d.ts +0 -107
- package/dist/server/src/polyglot/node/plugins/cameraStorage.js +0 -292
- package/dist/server/src/polyglot/node/plugins/cameraStorage.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/child.d.ts +0 -28
- package/dist/server/src/polyglot/node/plugins/child.js +0 -222
- package/dist/server/src/polyglot/node/plugins/child.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/configService.d.ts +0 -104
- package/dist/server/src/polyglot/node/plugins/configService.js +0 -213
- package/dist/server/src/polyglot/node/plugins/configService.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/pluginApi.d.ts +0 -35
- package/dist/server/src/polyglot/node/plugins/pluginApi.js +0 -23
- package/dist/server/src/polyglot/node/plugins/pluginApi.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/pluginLogger.d.ts +0 -18
- package/dist/server/src/polyglot/node/plugins/pluginLogger.js +0 -89
- package/dist/server/src/polyglot/node/plugins/pluginLogger.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/proxy/cameraDevice.d.ts +0 -69
- package/dist/server/src/polyglot/node/plugins/proxy/cameraDevice.js +0 -432
- package/dist/server/src/polyglot/node/plugins/proxy/cameraDevice.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/proxy/coreManager.d.ts +0 -40
- package/dist/server/src/polyglot/node/plugins/proxy/coreManager.js +0 -105
- package/dist/server/src/polyglot/node/plugins/proxy/coreManager.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/proxy/deviceManager.d.ts +0 -47
- package/dist/server/src/polyglot/node/plugins/proxy/deviceManager.js +0 -164
- package/dist/server/src/polyglot/node/plugins/proxy/deviceManager.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/schema.d.ts +0 -293
- package/dist/server/src/polyglot/node/plugins/schema.js +0 -740
- package/dist/server/src/polyglot/node/plugins/schema.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/storageController.d.ts +0 -30
- package/dist/server/src/polyglot/node/plugins/storageController.js +0 -40
- package/dist/server/src/polyglot/node/plugins/storageController.js.map +0 -1
- package/dist/server/src/polyglot/python/camera/interfaces/camera.py +0 -20
- package/dist/server/src/polyglot/python/camera/interfaces/prebuffer.py +0 -25
- package/dist/server/src/polyglot/python/camera/interfaces/ptz.py +0 -38
- package/dist/server/src/polyglot/python/camera/iou.py +0 -80
- package/dist/server/src/polyglot/python/camera/polygon.py +0 -173
- package/dist/server/src/polyglot/python/camera/video_frame.py +0 -188
- package/dist/server/src/polyglot/python/camera_ui_types/__init__.py +0 -1196
- package/dist/server/src/polyglot/python/decoder/child.py +0 -882
- package/dist/server/src/polyglot/python/decoder/image_utils.py +0 -149
- package/dist/server/src/polyglot/python/decoder/typings.py +0 -99
- package/dist/server/src/polyglot/python/plugins/camera_storage.py +0 -391
- package/dist/server/src/polyglot/python/plugins/child.py +0 -394
- package/dist/server/src/polyglot/python/plugins/config_service.py +0 -187
- package/dist/server/src/polyglot/python/plugins/constants.py +0 -1
- package/dist/server/src/polyglot/python/plugins/message_queue.py +0 -182
- package/dist/server/src/polyglot/python/plugins/plugin_api.py +0 -34
- package/dist/server/src/polyglot/python/plugins/plugin_logger.py +0 -111
- package/dist/server/src/polyglot/python/plugins/proxy/camera_device.py +0 -1677
- package/dist/server/src/polyglot/python/plugins/proxy/core_manager.py +0 -145
- package/dist/server/src/polyglot/python/plugins/proxy/device_manager.py +0 -226
- package/dist/server/src/polyglot/python/plugins/schema.py +0 -181
- package/dist/server/src/polyglot/python/plugins/storage_controller.py +0 -58
- package/dist/server/src/polyglot/python/plugins/typings.py +0 -253
- package/dist/server/src/polyglot/python/utilities/connection.py +0 -86
- package/dist/server/src/polyglot/python/utilities/json_lmdb.py +0 -19
- package/dist/server/src/polyglot/python/utilities/object_path.py +0 -195
- package/dist/server/src/polyglot/python/utilities/packer.py +0 -11
- package/dist/server/src/polyglot/python/utilities/subscriptions.py +0 -22
- package/dist/server/src/polyglot/python/utilities/task.py +0 -35
- package/dist/server/src/polyglot/python/utilities/thread.py +0 -10
- package/dist/server/src/polyglot/python/utilities/utils.py +0 -73
- package/dist/server/src/utils/ffmpeg.d.ts +0 -2
- package/dist/server/src/utils/ffmpeg.js +0 -61
- package/dist/server/src/utils/ffmpeg.js.map +0 -1
- package/dist/server/src/utils/network.d.ts +0 -12
- package/dist/server/src/utils/network.js +0 -92
- package/dist/server/src/utils/network.js.map +0 -1
- package/dist/server/src/utils/npm.d.ts +0 -4
- package/dist/server/src/utils/npm.js +0 -128
- package/dist/server/src/utils/npm.js.map +0 -1
- package/dist/server/src/utils/packer.d.ts +0 -2
- package/dist/server/src/utils/packer.js +0 -17
- package/dist/server/src/utils/packer.js.map +0 -1
- package/dist/server/src/utils/pythonInstaller.d.ts +0 -48
- package/dist/server/src/utils/pythonInstaller.js +0 -494
- package/dist/server/src/utils/pythonInstaller.js.map +0 -1
- package/dist/server/src/utils/reader.d.ts +0 -5
- package/dist/server/src/utils/reader.js +0 -41
- package/dist/server/src/utils/reader.js.map +0 -1
- package/dist/server/src/utils/subscribed.d.ts +0 -9
- package/dist/server/src/utils/subscribed.js +0 -17
- package/dist/server/src/utils/subscribed.js.map +0 -1
- package/dist/server/src/utils/utils.d.ts +0 -10
- package/dist/server/src/utils/utils.js +0 -165
- package/dist/server/src/utils/utils.js.map +0 -1
- package/upgrade-server.sh +0 -205
- /package/dist/interface/{@babel.l0sNRNKZ.0.0.22-alpha.1.js → @babel.l0sNRNKZ.0.0.22-alpha.2.js} +0 -0
- /package/dist/interface/{@react-dnd.CcwRs9xb.0.0.22-alpha.1.js → @react-dnd.CcwRs9xb.0.0.22-alpha.2.js} +0 -0
- /package/dist/interface/{@socket.io.Dkula2eQ.0.0.22-alpha.1.js → @socket.io.Dkula2eQ.0.0.22-alpha.2.js} +0 -0
- /package/dist/interface/{vue.l0sNRNKZ.0.0.22-alpha.1.js → @turf.l0sNRNKZ.0.0.22-alpha.2.js} +0 -0
- /package/dist/interface/{@xterm.DV-IE8JS.0.0.22-alpha.1.js → @xterm.CRKo0AGB.0.0.22-alpha.2.js} +0 -0
- /package/dist/interface/assets/{@vueform.0.0.22-alpha.1.h7tNX9p6.css → @vueform.0.0.22-alpha.2.CroAHJs8.css} +0 -0
- /package/dist/interface/assets/{@xterm.0.0.22-alpha.1.CGrrDQr5.css → @xterm.0.0.22-alpha.2.CFbL2ovg.css} +0 -0
- /package/dist/interface/assets/{Account.0.0.22-alpha.1.Ce3OmKrC.css → Account.0.0.22-alpha.2.J7oAjogS.css} +0 -0
- /package/dist/interface/assets/{Backup.0.0.22-alpha.1.BIwaSlv3.css → Backup.0.0.22-alpha.2.CX0rT0QJ.css} +0 -0
- /package/dist/interface/assets/{Plugin.0.0.22-alpha.1.BtRA6zDt.css → Plugin.0.0.22-alpha.2.DJbgaQc1.css} +0 -0
- /package/dist/interface/assets/{Plugins.0.0.22-alpha.1.Cwu0aGUO.css → Plugins.0.0.22-alpha.2.DXSoO9M1.css} +0 -0
- /package/dist/interface/assets/{User.0.0.22-alpha.1.DPDcJbx8.css → User.0.0.22-alpha.2.BiGtIFqt.css} +0 -0
- /package/dist/interface/assets/{highlight.0.0.22-alpha.1.DgoK_Xib.css → highlight.0.0.22-alpha.2.Ch2EwETz.css} +0 -0
- /package/dist/interface/assets/{logo-256.0.0.22-alpha.1.BCQk9H1-.png → logo-256.0.0.22-alpha.2.BCQk9H1-.png} +0 -0
- /package/dist/interface/assets/{logo-512.0.0.22-alpha.1.DLKVOU2S.png → logo-512.0.0.22-alpha.2.DLKVOU2S.png} +0 -0
- /package/dist/interface/assets/{logo.0.0.22-alpha.1.DmEiRk0z.png → logo.0.0.22-alpha.2.DmEiRk0z.png} +0 -0
- /package/dist/interface/assets/{mode-json.0.0.22-alpha.1.Br7xisR1.js → mode-json.0.0.22-alpha.2.Br7xisR1.js} +0 -0
- /package/dist/interface/assets/{mode-yaml.0.0.22-alpha.1.CIYL8U3d.js → mode-yaml.0.0.22-alpha.2.CIYL8U3d.js} +0 -0
- /package/dist/interface/assets/{vue3-toastify.0.0.22-alpha.1.DTY1DMRs.css → vue3-toastify.0.0.22-alpha.2.DHXAGmwn.css} +0 -0
- /package/dist/interface/{axios.C-n2IhIP.0.0.22-alpha.1.js → axios.C-n2IhIP.0.0.22-alpha.2.js} +0 -0
- /package/dist/interface/{compare-versions.DqEOhma6.0.0.22-alpha.1.js → compare-versions.DqEOhma6.0.0.22-alpha.2.js} +0 -0
- /package/dist/interface/{dijkstrajs.D_NXgYpA.0.0.22-alpha.1.js → dijkstrajs.D_NXgYpA.0.0.22-alpha.2.js} +0 -0
- /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
- /package/dist/interface/{entities.C20TfXL6.0.0.22-alpha.1.js → entities.C20TfXL6.0.0.22-alpha.2.js} +0 -0
- /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
- /package/dist/interface/{mdurl.k9Sl0PQj.0.0.22-alpha.1.js → mdurl.k9Sl0PQj.0.0.22-alpha.2.js} +0 -0
- /package/dist/interface/{punycode.js.Dj65hjkv.0.0.22-alpha.1.js → punycode.js.Dj65hjkv.0.0.22-alpha.2.js} +0 -0
- /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
- /package/dist/interface/{redux.CuxFRhX_.0.0.22-alpha.1.js → redux.CuxFRhX_.0.0.22-alpha.2.js} +0 -0
- /package/dist/interface/{tslib.9k7AwCpt.0.0.22-alpha.1.js → tslib.9k7AwCpt.0.0.22-alpha.2.js} +0 -0
- /package/dist/interface/{uc.micro.kMc2yuuw.0.0.22-alpha.1.js → uc.micro.kMc2yuuw.0.0.22-alpha.2.js} +0 -0
- /package/dist/server/bin/{fork.d.ts → cameraui-server.d.ts} +0 -0
|
@@ -7,14 +7,17 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
9
|
};
|
|
10
|
+
import { createSourceName, isEqual, mergeWith } from '@camera.ui/common/utils';
|
|
11
|
+
import TTLCache from '@isaacs/ttlcache';
|
|
10
12
|
import { container, delay, registry } from 'tsyringe';
|
|
11
13
|
import { CAMERA_EXTENSIONS } from '../../plugins/types.js';
|
|
12
14
|
import { ConfigService } from '../../services/config/index.js';
|
|
13
|
-
import { createSourceName, isEqual, mergeWith } from '../../utils/utils.js';
|
|
14
15
|
import { Database } from '../database/index.js';
|
|
15
16
|
import { cameraZonesSchema } from '../schemas/cameras.schema.js';
|
|
17
|
+
import { generateInternalCameraSources } from '../utils/cameraSource.js';
|
|
16
18
|
import { PluginsService } from './plugins.service.js';
|
|
17
19
|
import { UsersService } from './users.service.js';
|
|
20
|
+
const cameraSourceProbeCache = new TTLCache({ max: 100, ttl: Infinity });
|
|
18
21
|
let CamerasService = class CamerasService {
|
|
19
22
|
configService;
|
|
20
23
|
api;
|
|
@@ -31,7 +34,7 @@ let CamerasService = class CamerasService {
|
|
|
31
34
|
this.pluginsService = new PluginsService();
|
|
32
35
|
}
|
|
33
36
|
async createCamera(cameraData) {
|
|
34
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
37
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
35
38
|
const plugin = this.pluginsService.getPluginById(cameraData.pluginId);
|
|
36
39
|
if (plugin?.contract.builtIns) {
|
|
37
40
|
plugin.contract.builtIns.forEach((extensionType) => {
|
|
@@ -41,15 +44,16 @@ let CamerasService = class CamerasService {
|
|
|
41
44
|
});
|
|
42
45
|
}
|
|
43
46
|
cameraData.activityZones = [this.defaultZone()];
|
|
47
|
+
this.addInternalSources(cameraData);
|
|
48
|
+
await this.addCameraSourcesToConfig(cameraData.name, cameraData.sources);
|
|
44
49
|
cameras.push(cameraData);
|
|
45
|
-
const transformedCamera = this.transformCamera(cameraData);
|
|
46
50
|
await this.dbs.camerasDB.put('cameras', cameras);
|
|
47
|
-
|
|
51
|
+
const transformedCamera = this.transformCamera(cameraData);
|
|
48
52
|
await this.api.addCamera(transformedCamera);
|
|
49
53
|
return cameraData;
|
|
50
54
|
}
|
|
51
55
|
async createZone(cameraname, zoneData) {
|
|
52
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
56
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
53
57
|
const camera = cameras.find((camera) => camera.name === cameraname);
|
|
54
58
|
if (camera) {
|
|
55
59
|
camera.activityZones.push(zoneData);
|
|
@@ -59,14 +63,14 @@ let CamerasService = class CamerasService {
|
|
|
59
63
|
return camera;
|
|
60
64
|
}
|
|
61
65
|
async patchZoneByName(cameraname, zonename, zoneData) {
|
|
62
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
66
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
63
67
|
const camera = cameras.find((camera) => camera.name === cameraname);
|
|
64
68
|
if (camera) {
|
|
65
69
|
const zone = camera.activityZones.find((zone) => zone.name === zonename);
|
|
66
70
|
if (zone) {
|
|
67
|
-
mergeWith(zone, zoneData, (
|
|
68
|
-
if (Array.isArray(
|
|
69
|
-
return
|
|
71
|
+
mergeWith(zone, zoneData, (source, target) => {
|
|
72
|
+
if (Array.isArray(source)) {
|
|
73
|
+
return target;
|
|
70
74
|
}
|
|
71
75
|
});
|
|
72
76
|
await this.dbs.camerasDB.put('cameras', cameras);
|
|
@@ -76,7 +80,7 @@ let CamerasService = class CamerasService {
|
|
|
76
80
|
return camera;
|
|
77
81
|
}
|
|
78
82
|
async removeZoneByName(cameraname, zonename) {
|
|
79
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
83
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
80
84
|
const camera = cameras.find((cameraObj) => cameraObj.name === cameraname);
|
|
81
85
|
if (camera) {
|
|
82
86
|
const zoneExists = camera.activityZones.some((zone) => zone.name === zonename);
|
|
@@ -115,30 +119,30 @@ let CamerasService = class CamerasService {
|
|
|
115
119
|
}
|
|
116
120
|
}
|
|
117
121
|
list() {
|
|
118
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
122
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
119
123
|
return cameras;
|
|
120
124
|
}
|
|
121
125
|
listTransformed() {
|
|
122
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
126
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
123
127
|
const transformedCameras = cameras.map((camera) => this.transformCamera(camera));
|
|
124
128
|
return transformedCameras;
|
|
125
129
|
}
|
|
126
130
|
listByPluginId(pluginId) {
|
|
127
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
131
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
128
132
|
return cameras.filter((camera) => camera.pluginId === pluginId);
|
|
129
133
|
}
|
|
130
134
|
listTransformedByPluginId(pluginId) {
|
|
131
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
135
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
132
136
|
const filteredCameras = cameras.filter((camera) => camera.pluginId === pluginId);
|
|
133
137
|
const transformedCameras = filteredCameras.map((camera) => this.transformCamera(camera));
|
|
134
138
|
return transformedCameras;
|
|
135
139
|
}
|
|
136
140
|
listByExtension(pluginName) {
|
|
137
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
141
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
138
142
|
return cameras.filter((camera) => camera.extensions.plugins.includes(pluginName));
|
|
139
143
|
}
|
|
140
144
|
listTransformedByExtension(pluginName, extensions) {
|
|
141
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
145
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
142
146
|
const camerasMap = new Map();
|
|
143
147
|
for (const type of extensions) {
|
|
144
148
|
let dbCameras = [];
|
|
@@ -153,76 +157,82 @@ let CamerasService = class CamerasService {
|
|
|
153
157
|
return Array.from(camerasMap.values());
|
|
154
158
|
}
|
|
155
159
|
findById(id) {
|
|
156
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
160
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
157
161
|
return cameras?.find((cameraObj) => cameraObj._id === id);
|
|
158
162
|
}
|
|
159
163
|
findTransformedById(id) {
|
|
160
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
164
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
161
165
|
const camera = cameras?.find((cameraObj) => cameraObj._id === id);
|
|
162
166
|
if (camera) {
|
|
163
167
|
return this.transformCamera(camera);
|
|
164
168
|
}
|
|
165
169
|
}
|
|
166
170
|
findByName(cameraname) {
|
|
167
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
171
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
168
172
|
return cameras?.find((cameraObj) => cameraObj.name === cameraname);
|
|
169
173
|
}
|
|
170
174
|
findTransformedByName(cameraname) {
|
|
171
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
175
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
172
176
|
const camera = cameras?.find((cameraObj) => cameraObj.name === cameraname);
|
|
173
177
|
if (camera) {
|
|
174
178
|
return this.transformCamera(camera);
|
|
175
179
|
}
|
|
176
180
|
}
|
|
177
181
|
findByPluginAndName(cameraname, pluginId) {
|
|
178
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
182
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
179
183
|
return cameras?.find((cameraObj) => cameraObj.name === cameraname && cameraObj.pluginId === pluginId);
|
|
180
184
|
}
|
|
181
185
|
findTransformedByPluginAndName(cameraname, pluginId) {
|
|
182
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
186
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
183
187
|
const camera = cameras?.find((cameraObj) => cameraObj.name === cameraname && cameraObj.pluginId === pluginId);
|
|
184
188
|
if (camera) {
|
|
185
189
|
return this.transformCamera(camera);
|
|
186
190
|
}
|
|
187
191
|
}
|
|
188
192
|
async patchCameraByName(cameraname, cameraData) {
|
|
189
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
193
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
190
194
|
const camera = cameras.find((camera) => camera.name === cameraname);
|
|
195
|
+
const cameraController = this.api.getCamera(camera?._id ?? '');
|
|
191
196
|
const cameraOld = structuredClone(camera);
|
|
192
|
-
if (camera && cameraOld) {
|
|
193
|
-
mergeWith(camera, cameraData, (
|
|
197
|
+
if (camera && cameraOld && cameraController) {
|
|
198
|
+
mergeWith(camera, cameraData, (source, target, key) => {
|
|
194
199
|
if (key === 'sources') {
|
|
195
|
-
return
|
|
196
|
-
const objItem =
|
|
197
|
-
const sourceId = objItem?._id
|
|
200
|
+
return target.map((srcItem) => {
|
|
201
|
+
const objItem = source.find((o) => o.name === srcItem.name);
|
|
202
|
+
const sourceId = objItem?._id ?? srcItem._id;
|
|
198
203
|
return objItem ? { ...objItem, ...srcItem, _id: sourceId, name: objItem.name } : srcItem;
|
|
199
204
|
});
|
|
200
205
|
}
|
|
201
206
|
if (key === 'extensions') {
|
|
202
207
|
return cameraOld.extensions;
|
|
203
208
|
}
|
|
204
|
-
if (Array.isArray(
|
|
205
|
-
return
|
|
209
|
+
if (Array.isArray(source)) {
|
|
210
|
+
return target;
|
|
206
211
|
}
|
|
207
212
|
});
|
|
208
|
-
await this.dbs.camerasDB.put('cameras', cameras);
|
|
209
213
|
if (!isEqual(cameraOld, camera, true)) {
|
|
210
214
|
if (cameraOld.name !== camera.name) {
|
|
211
|
-
await this.
|
|
215
|
+
await this.removeCameraSourcesFromConfig(cameraOld.name, cameraOld.sources);
|
|
212
216
|
}
|
|
213
217
|
const orphanedSources = cameraOld.sources.filter((source) => !camera.sources.find((s) => s.name === source.name));
|
|
214
218
|
if (orphanedSources.length) {
|
|
215
|
-
|
|
219
|
+
orphanedSources.forEach((source) => {
|
|
220
|
+
cameraController.streamInfos.delete(source._id);
|
|
221
|
+
cameraController.streamInfos.delete(source._id);
|
|
222
|
+
});
|
|
223
|
+
await this.removeCameraSourcesFromConfig(camera.name, orphanedSources);
|
|
216
224
|
}
|
|
217
|
-
|
|
225
|
+
this.addInternalSources(camera);
|
|
226
|
+
await this.addCameraSourcesToConfig(camera.name, camera.sources);
|
|
218
227
|
}
|
|
228
|
+
await this.dbs.camerasDB.put('cameras', cameras);
|
|
219
229
|
this.api.updateCamera(this.transformCamera(camera));
|
|
220
230
|
}
|
|
221
231
|
return camera;
|
|
222
232
|
}
|
|
223
233
|
async enableExtensionByName(cameraname, pluginNameOrId, extensionType) {
|
|
224
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
225
|
-
const plugin = this.pluginsService.getPluginByName(pluginNameOrId)
|
|
234
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
235
|
+
const plugin = this.pluginsService.getPluginByName(pluginNameOrId) ?? this.pluginsService.getPluginById(pluginNameOrId);
|
|
226
236
|
const camera = cameras.find((camera) => camera.name === cameraname);
|
|
227
237
|
const cameraOld = structuredClone(camera);
|
|
228
238
|
if (camera && cameraOld && plugin) {
|
|
@@ -245,8 +255,8 @@ let CamerasService = class CamerasService {
|
|
|
245
255
|
return camera;
|
|
246
256
|
}
|
|
247
257
|
async disableExtensionByName(cameraname, pluginNameOrId, extensionType) {
|
|
248
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
249
|
-
const plugin = this.pluginsService.getPluginByName(pluginNameOrId)
|
|
258
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
259
|
+
const plugin = this.pluginsService.getPluginByName(pluginNameOrId) ?? this.pluginsService.getPluginById(pluginNameOrId);
|
|
250
260
|
const camera = cameras.find((camera) => camera.name === cameraname);
|
|
251
261
|
const cameraOld = structuredClone(camera);
|
|
252
262
|
if (camera && cameraOld && plugin) {
|
|
@@ -264,8 +274,8 @@ let CamerasService = class CamerasService {
|
|
|
264
274
|
return camera;
|
|
265
275
|
}
|
|
266
276
|
async addExtensionByName(cameraname, pluginNameOrId) {
|
|
267
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
268
|
-
const plugin = this.pluginsService.getPluginByName(pluginNameOrId)
|
|
277
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
278
|
+
const plugin = this.pluginsService.getPluginByName(pluginNameOrId) ?? this.pluginsService.getPluginById(pluginNameOrId);
|
|
269
279
|
const camera = cameras.find((camera) => camera.name === cameraname);
|
|
270
280
|
const cameraOld = structuredClone(camera);
|
|
271
281
|
if (camera && cameraOld && (plugin?.contract.extension || plugin?.contract.supportAdditionalCameras) && !camera.extensions.plugins.includes(plugin.pluginName)) {
|
|
@@ -306,8 +316,8 @@ let CamerasService = class CamerasService {
|
|
|
306
316
|
return camera;
|
|
307
317
|
}
|
|
308
318
|
async removeExtensionByName(cameraname, pluginNameOrId) {
|
|
309
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
310
|
-
const plugin = this.pluginsService.getPluginByName(pluginNameOrId)
|
|
319
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
320
|
+
const plugin = this.pluginsService.getPluginByName(pluginNameOrId) ?? this.pluginsService.getPluginById(pluginNameOrId);
|
|
311
321
|
const camera = cameras.find((camera) => camera.name === cameraname);
|
|
312
322
|
const cameraOld = structuredClone(camera);
|
|
313
323
|
if (camera && cameraOld && (plugin?.contract.extension || plugin?.contract.supportAdditionalCameras) && camera.extensions.plugins.includes(plugin.pluginName)) {
|
|
@@ -348,9 +358,9 @@ let CamerasService = class CamerasService {
|
|
|
348
358
|
return camera;
|
|
349
359
|
}
|
|
350
360
|
async removeExtension(pluginNameOrId) {
|
|
351
|
-
const cameras = this.dbs.camerasDB.get('cameras')
|
|
361
|
+
const cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
352
362
|
for (const camera of cameras) {
|
|
353
|
-
const plugin = this.pluginsService.getPluginByName(pluginNameOrId)
|
|
363
|
+
const plugin = this.pluginsService.getPluginByName(pluginNameOrId) ?? this.pluginsService.getPluginById(pluginNameOrId);
|
|
354
364
|
if ((plugin?.contract.extension || plugin?.contract.supportAdditionalCameras) && camera.extensions.plugins.includes(plugin.pluginName)) {
|
|
355
365
|
camera.extensions.plugins = camera.extensions.plugins.filter((extension) => extension !== plugin.pluginName);
|
|
356
366
|
const removedExtensions = new Set();
|
|
@@ -389,24 +399,30 @@ let CamerasService = class CamerasService {
|
|
|
389
399
|
}
|
|
390
400
|
}
|
|
391
401
|
async removeByName(cameraname) {
|
|
392
|
-
let cameras = this.dbs.camerasDB.get('cameras')
|
|
402
|
+
let cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
393
403
|
const camera = cameras.find((cameraObj) => cameraObj.name === cameraname);
|
|
394
404
|
if (camera) {
|
|
395
405
|
cameras = cameras.filter((cameraObj) => cameraObj.name !== camera.name);
|
|
406
|
+
for (const source of camera.sources) {
|
|
407
|
+
cameraSourceProbeCache.delete(source._id);
|
|
408
|
+
}
|
|
396
409
|
await this.usersService.removeCameraFromPreferences(camera._id);
|
|
397
410
|
await this.dbs.camerasDB.put('cameras', cameras);
|
|
398
|
-
await this.
|
|
411
|
+
await this.removeCameraSourcesFromConfig(camera.name, camera.sources);
|
|
399
412
|
await this.api.removeCamera(this.transformCamera(camera), camera.extensions);
|
|
400
413
|
}
|
|
401
414
|
}
|
|
402
415
|
async removeById(id) {
|
|
403
|
-
let cameras = this.dbs.camerasDB.get('cameras')
|
|
416
|
+
let cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
404
417
|
const camera = cameras.find((cameraObj) => cameraObj._id === id);
|
|
405
418
|
if (camera) {
|
|
406
419
|
cameras = cameras.filter((cameraObj) => cameraObj.name !== camera.name);
|
|
420
|
+
for (const source of camera.sources) {
|
|
421
|
+
cameraSourceProbeCache.delete(source._id);
|
|
422
|
+
}
|
|
407
423
|
await this.usersService.removeCameraFromPreferences(camera._id);
|
|
408
424
|
await this.dbs.camerasDB.put('cameras', cameras);
|
|
409
|
-
await this.
|
|
425
|
+
await this.removeCameraSourcesFromConfig(camera.name, camera.sources);
|
|
410
426
|
await this.api.removeCamera(this.transformCamera(camera), camera.extensions);
|
|
411
427
|
}
|
|
412
428
|
}
|
|
@@ -417,39 +433,57 @@ let CamerasService = class CamerasService {
|
|
|
417
433
|
}
|
|
418
434
|
}
|
|
419
435
|
async removeByPluginId(pluginId) {
|
|
420
|
-
let cameras = this.dbs.camerasDB.get('cameras')
|
|
436
|
+
let cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
421
437
|
const camera = cameras.find((cameraObj) => cameraObj.pluginId === pluginId);
|
|
422
438
|
if (camera) {
|
|
423
439
|
cameras = cameras.filter((cameraObj) => cameraObj._id !== camera._id);
|
|
440
|
+
for (const source of camera.sources) {
|
|
441
|
+
cameraSourceProbeCache.delete(source._id);
|
|
442
|
+
}
|
|
424
443
|
await this.usersService.removeCameraFromPreferences(camera._id);
|
|
425
444
|
await this.dbs.camerasDB.put('cameras', cameras);
|
|
426
|
-
await this.
|
|
445
|
+
await this.removeCameraSourcesFromConfig(camera.name, camera.sources);
|
|
427
446
|
await this.api.removeCamera(this.transformCamera(camera), camera.extensions);
|
|
428
447
|
}
|
|
429
448
|
}
|
|
430
449
|
async removeByPluginIdAndName(cameraname, pluginId) {
|
|
431
|
-
let cameras = this.dbs.camerasDB.get('cameras')
|
|
450
|
+
let cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
432
451
|
const camera = cameras.find((cameraObj) => cameraObj.name === cameraname && cameraObj.pluginId === pluginId);
|
|
433
452
|
if (camera) {
|
|
434
453
|
cameras = cameras.filter((cameraObj) => cameraObj._id !== camera._id);
|
|
454
|
+
for (const source of camera.sources) {
|
|
455
|
+
cameraSourceProbeCache.delete(source._id);
|
|
456
|
+
}
|
|
435
457
|
await this.usersService.removeCameraFromPreferences(camera._id);
|
|
436
458
|
await this.dbs.camerasDB.put('cameras', cameras);
|
|
437
|
-
await this.
|
|
459
|
+
await this.removeCameraSourcesFromConfig(camera.name, camera.sources);
|
|
438
460
|
await this.api.removeCamera(this.transformCamera(camera), camera.extensions);
|
|
439
461
|
}
|
|
440
462
|
}
|
|
441
463
|
async removeAll() {
|
|
442
|
-
let cameras = this.dbs.camerasDB.get('cameras')
|
|
464
|
+
let cameras = this.dbs.camerasDB.get('cameras') ?? [];
|
|
443
465
|
const camerasToRemove = [];
|
|
444
466
|
cameras.forEach((camera) => camerasToRemove.push(camera));
|
|
445
467
|
cameras = [];
|
|
468
|
+
cameraSourceProbeCache.clear();
|
|
446
469
|
await this.usersService.resetAllPreferences();
|
|
447
470
|
await this.dbs.camerasDB.put('cameras', cameras);
|
|
448
471
|
for (const camera of camerasToRemove) {
|
|
449
|
-
await this.
|
|
472
|
+
await this.removeCameraSourcesFromConfig(camera.name, camera.sources);
|
|
450
473
|
}
|
|
451
474
|
await Promise.all(camerasToRemove.map((camera) => this.api.removeCamera(this.transformCamera(camera), camera.extensions)));
|
|
452
475
|
}
|
|
476
|
+
async probeCameraSource(camera, source) {
|
|
477
|
+
cameraSourceProbeCache.purgeStale();
|
|
478
|
+
const inCache = cameraSourceProbeCache.get(source._id);
|
|
479
|
+
if (inCache) {
|
|
480
|
+
return inCache;
|
|
481
|
+
}
|
|
482
|
+
const src = createSourceName(camera.name, source.name);
|
|
483
|
+
const probe = await this.go2rtcApi.streamsApi.probeStreamSource({ src });
|
|
484
|
+
cameraSourceProbeCache.set(source._id, probe);
|
|
485
|
+
return probe;
|
|
486
|
+
}
|
|
453
487
|
transformCamera(camera) {
|
|
454
488
|
const transformedCamera = {
|
|
455
489
|
_id: camera._id,
|
|
@@ -459,6 +493,7 @@ let CamerasService = class CamerasService {
|
|
|
459
493
|
disabled: camera.disabled,
|
|
460
494
|
info: camera.info,
|
|
461
495
|
type: camera.type,
|
|
496
|
+
snapshotTTL: camera.snapshotTTL,
|
|
462
497
|
isCloud: camera.isCloud,
|
|
463
498
|
hasLight: camera.hasLight,
|
|
464
499
|
hasSiren: camera.hasSiren,
|
|
@@ -466,6 +501,7 @@ let CamerasService = class CamerasService {
|
|
|
466
501
|
hasBattery: camera.hasBattery,
|
|
467
502
|
hasAudioDetector: this.extensionIsEnabled(camera.extensions.audioDetection, 'audioDetection'),
|
|
468
503
|
hasMotionDetector: this.extensionIsEnabled(camera.extensions.motionDetection, 'motionDetection'),
|
|
504
|
+
extendedMotionDetector: this.isExtendedMotionDetector(camera.extensions.motionDetection),
|
|
469
505
|
hasObjectDetector: this.extensionIsEnabled(camera.extensions.objectDetection, 'objectDetection'),
|
|
470
506
|
hasPtz: this.extensionIsEnabled(camera.extensions.ptz, 'ptz'),
|
|
471
507
|
hasPrebuffer: this.extensionIsEnabled(camera.extensions.prebuffer, 'prebuffer'),
|
|
@@ -479,26 +515,54 @@ let CamerasService = class CamerasService {
|
|
|
479
515
|
urls: {
|
|
480
516
|
ws: this.generateWsUrls(camera, source),
|
|
481
517
|
rtsp: this.generateRTSPUrls(camera, source),
|
|
482
|
-
transcoded: this.generateFFmpegUrls(camera, source),
|
|
483
518
|
www: this.generateWWWUrls(camera, source),
|
|
484
519
|
},
|
|
520
|
+
internal: this.isInternalSource(source.name),
|
|
485
521
|
})),
|
|
486
522
|
};
|
|
487
523
|
return transformedCamera;
|
|
488
524
|
}
|
|
489
|
-
|
|
525
|
+
addInternalSources(camera) {
|
|
526
|
+
const sourcesToAdd = [];
|
|
527
|
+
camera.sources = camera.sources.filter((source) => !source.internal && !this.isInternalSource(source.name));
|
|
528
|
+
for (const source of camera.sources) {
|
|
529
|
+
if (source.internal) {
|
|
530
|
+
continue;
|
|
531
|
+
}
|
|
532
|
+
const defaultInternalSources = generateInternalCameraSources(camera.name, source.name, source.roles);
|
|
533
|
+
defaultInternalSources.forEach((internalSource) => {
|
|
534
|
+
sourcesToAdd.push(internalSource);
|
|
535
|
+
});
|
|
536
|
+
}
|
|
537
|
+
camera.sources.push(...sourcesToAdd);
|
|
538
|
+
}
|
|
539
|
+
async addCameraSourcesToConfig(cameraname, sources) {
|
|
490
540
|
for (const source of sources) {
|
|
541
|
+
if (source.internal) {
|
|
542
|
+
continue;
|
|
543
|
+
}
|
|
491
544
|
const sourceName = createSourceName(cameraname, source.name);
|
|
545
|
+
const ffmpegSourceNameAAC = `${sourceName}_aac`;
|
|
546
|
+
const ffmpegSourceNameOPUS = `${sourceName}_opus`;
|
|
547
|
+
const ffmpegSourceNamePCMA = `${sourceName}_pcma`;
|
|
548
|
+
const ffmpegSourceUrlAAC = `ffmpeg:${sourceName}#video=copy#audio=aac`;
|
|
549
|
+
const ffmpegSourceUrlOPUS = `ffmpeg:${sourceName}#video=copy#audio=opus`;
|
|
550
|
+
const ffmpegSourceUrlPCMA = `ffmpeg:${sourceName}#video=copy#audio=pcma`;
|
|
492
551
|
const ffmpegAACSource = {
|
|
493
|
-
name:
|
|
494
|
-
src: [
|
|
552
|
+
name: ffmpegSourceNameAAC,
|
|
553
|
+
src: [ffmpegSourceUrlAAC],
|
|
495
554
|
// src: Array.from(new Set([`ffmpeg:${sourceName}#video=copy#audio=aac`, ...source.urls.filter((url) => !url.startsWith('ffmpeg'))])),
|
|
496
555
|
};
|
|
497
556
|
const ffmpegOPUSSource = {
|
|
498
|
-
name:
|
|
499
|
-
src: [
|
|
557
|
+
name: ffmpegSourceNameOPUS,
|
|
558
|
+
src: [ffmpegSourceUrlOPUS],
|
|
500
559
|
// src: Array.from(new Set([`ffmpeg:${sourceName}#video=copy#audio=opus`, ...source.urls.filter((url) => !url.startsWith('ffmpeg'))])),
|
|
501
560
|
};
|
|
561
|
+
const ffmpegPCMAAudioSource = {
|
|
562
|
+
name: ffmpegSourceNamePCMA,
|
|
563
|
+
src: [ffmpegSourceUrlPCMA],
|
|
564
|
+
// src: Array.from(new Set([`ffmpeg:${sourceName}#video=copy#audio=pcma`, ...source.urls.filter((url) => !url.startsWith('ffmpeg'))])),
|
|
565
|
+
};
|
|
502
566
|
const cameraSources = [];
|
|
503
567
|
if (!this.sourceExistAndEqual(sourceName, source.urls)) {
|
|
504
568
|
cameraSources.push({ name: sourceName, src: source.urls });
|
|
@@ -511,6 +575,9 @@ let CamerasService = class CamerasService {
|
|
|
511
575
|
if (!this.configService.go2rtcConfig.streams?.[ffmpegOPUSSource.name]) {
|
|
512
576
|
cameraSources.push(ffmpegOPUSSource);
|
|
513
577
|
}
|
|
578
|
+
if (!this.configService.go2rtcConfig.streams?.[ffmpegPCMAAudioSource.name]) {
|
|
579
|
+
cameraSources.push(ffmpegPCMAAudioSource);
|
|
580
|
+
}
|
|
514
581
|
}
|
|
515
582
|
for (const sourceData of cameraSources) {
|
|
516
583
|
// fix after go2rtc update
|
|
@@ -538,11 +605,15 @@ let CamerasService = class CamerasService {
|
|
|
538
605
|
});
|
|
539
606
|
}
|
|
540
607
|
}
|
|
541
|
-
async
|
|
542
|
-
for (const source of
|
|
608
|
+
async removeCameraSourcesFromConfig(cameraname, oldSources) {
|
|
609
|
+
for (const source of oldSources) {
|
|
610
|
+
if (source.internal) {
|
|
611
|
+
continue;
|
|
612
|
+
}
|
|
543
613
|
const sourceName = createSourceName(cameraname, source.name);
|
|
544
614
|
const ffmpegSourceNameAAC = `${sourceName}_aac`;
|
|
545
615
|
const ffmpegSourceNameOPUS = `${sourceName}_opus`;
|
|
616
|
+
const ffmpegSourceNamePCMA = `${sourceName}_pcma`;
|
|
546
617
|
const sourcesToRemove = [];
|
|
547
618
|
if (this.configService.go2rtcConfig.streams?.[sourceName]) {
|
|
548
619
|
sourcesToRemove.push(sourceName);
|
|
@@ -553,6 +624,9 @@ let CamerasService = class CamerasService {
|
|
|
553
624
|
if (this.configService.go2rtcConfig.streams?.[ffmpegSourceNameOPUS]) {
|
|
554
625
|
sourcesToRemove.push(ffmpegSourceNameOPUS);
|
|
555
626
|
}
|
|
627
|
+
if (this.configService.go2rtcConfig.streams?.[ffmpegSourceNamePCMA]) {
|
|
628
|
+
sourcesToRemove.push(ffmpegSourceNamePCMA);
|
|
629
|
+
}
|
|
556
630
|
for (const src of sourcesToRemove) {
|
|
557
631
|
await this.go2rtcApi.streamsApi.deleteStream({ src });
|
|
558
632
|
}
|
|
@@ -578,47 +652,28 @@ let CamerasService = class CamerasService {
|
|
|
578
652
|
}
|
|
579
653
|
generateWsUrls(camera, source) {
|
|
580
654
|
const sourceName = createSourceName(camera.name, source.name);
|
|
581
|
-
const baseWebRtcUrl = `ws://${this.
|
|
655
|
+
const baseWebRtcUrl = `ws://${this.go2rtcAddress()}/api/ws?src=${sourceName}`;
|
|
582
656
|
return {
|
|
583
657
|
webrtc: baseWebRtcUrl,
|
|
584
658
|
};
|
|
585
659
|
}
|
|
586
660
|
generateRTSPUrls(camera, source) {
|
|
587
661
|
const sourceName = createSourceName(camera.name, source.name);
|
|
588
|
-
const baseRtspUrl = `rtsp://${this.
|
|
662
|
+
const baseRtspUrl = `rtsp://${this.go2rtcAddress('rtsp')}/${sourceName}`;
|
|
589
663
|
return {
|
|
590
664
|
single: baseRtspUrl,
|
|
591
665
|
default: `${baseRtspUrl}?video=all&audio=all`,
|
|
592
666
|
mp4: `${baseRtspUrl}?mp4`,
|
|
593
667
|
};
|
|
594
668
|
}
|
|
595
|
-
generateFFmpegUrls(camera, source) {
|
|
596
|
-
const sourceName = createSourceName(camera.name, source.name);
|
|
597
|
-
const ffmpegSourceNameAAC = `${sourceName}_aac`;
|
|
598
|
-
const ffmpegSourceNameOPUS = `${sourceName}_opus`;
|
|
599
|
-
const baseRtspFFmpegAACUrl = `rtsp://${this.configService.go2rtcConfig.rtsp.listen}/${ffmpegSourceNameAAC}`;
|
|
600
|
-
const baseRtspFFmpegOPUSUrl = `rtsp://${this.configService.go2rtcConfig.rtsp.listen}/${ffmpegSourceNameOPUS}`;
|
|
601
|
-
return {
|
|
602
|
-
aac: {
|
|
603
|
-
name: ffmpegSourceNameAAC,
|
|
604
|
-
src: `${baseRtspFFmpegAACUrl}?video&audio=aac`,
|
|
605
|
-
ws: `ws://${this.configService.go2rtcConfig.api.listen}/api/ws?src=${ffmpegSourceNameAAC}`,
|
|
606
|
-
},
|
|
607
|
-
opus: {
|
|
608
|
-
name: ffmpegSourceNameOPUS,
|
|
609
|
-
src: `${baseRtspFFmpegOPUSUrl}?video&audio=opus`,
|
|
610
|
-
ws: `ws://${this.configService.go2rtcConfig.api.listen}/api/ws?src=${ffmpegSourceNameOPUS}`,
|
|
611
|
-
},
|
|
612
|
-
};
|
|
613
|
-
}
|
|
614
669
|
generateWWWUrls(camera, source) {
|
|
615
670
|
const sourceName = createSourceName(camera.name, source.name);
|
|
616
|
-
const baseStreamUrl = `http://${this.
|
|
617
|
-
const baseMjpegStreamUrl = `http://${this.
|
|
618
|
-
const baseMp4StreamUrl = `http://${this.
|
|
619
|
-
const baseFrameMp4StreamUrl = `http://${this.
|
|
620
|
-
const baseFrameJpegStreamUrl = `http://${this.
|
|
621
|
-
const baseHlsStreamUrl = `http://${this.
|
|
671
|
+
const baseStreamUrl = `http://${this.go2rtcAddress()}/stream.html?src=${sourceName}`;
|
|
672
|
+
const baseMjpegStreamUrl = `http://${this.go2rtcAddress()}/api/stream.mjpeg?src=${sourceName}`;
|
|
673
|
+
const baseMp4StreamUrl = `http://${this.go2rtcAddress()}/api/stream.mp4?src=${sourceName}`;
|
|
674
|
+
const baseFrameMp4StreamUrl = `http://${this.go2rtcAddress()}/api/frame.mp4?src=${sourceName}`;
|
|
675
|
+
const baseFrameJpegStreamUrl = `http://${this.go2rtcAddress()}/api/frame.jpeg?src=${sourceName}`;
|
|
676
|
+
const baseHlsStreamUrl = `http://${this.go2rtcAddress()}/api/stream.m3u8?src=${sourceName}`;
|
|
622
677
|
return {
|
|
623
678
|
webrtc: `${baseStreamUrl}&mode=webrtc`,
|
|
624
679
|
mse: `${baseStreamUrl}&mode=mse`,
|
|
@@ -644,6 +699,16 @@ let CamerasService = class CamerasService {
|
|
|
644
699
|
}
|
|
645
700
|
return false;
|
|
646
701
|
}
|
|
702
|
+
isExtendedMotionDetector(extension) {
|
|
703
|
+
if (!extension) {
|
|
704
|
+
return false;
|
|
705
|
+
}
|
|
706
|
+
const plugin = this.pluginsService.getPluginByName(extension);
|
|
707
|
+
if (plugin && !plugin.disabled && (plugin.contract.extension === 'motionDetection' || plugin.contract.builtIns?.includes('motionDetection'))) {
|
|
708
|
+
return plugin.contract.options?.extendedMotionDetection ?? false;
|
|
709
|
+
}
|
|
710
|
+
return false;
|
|
711
|
+
}
|
|
647
712
|
defaultZone() {
|
|
648
713
|
return cameraZonesSchema.parse({
|
|
649
714
|
name: 'Default',
|
|
@@ -699,6 +764,18 @@ let CamerasService = class CamerasService {
|
|
|
699
764
|
}
|
|
700
765
|
return zones;
|
|
701
766
|
}
|
|
767
|
+
isInternalSource(sourceName) {
|
|
768
|
+
return (sourceName.endsWith(' AAC') ||
|
|
769
|
+
sourceName.endsWith(' OPUS') ||
|
|
770
|
+
sourceName.endsWith(' PCMA') ||
|
|
771
|
+
sourceName.endsWith('_aac') ||
|
|
772
|
+
sourceName.endsWith('_opus') ||
|
|
773
|
+
sourceName.endsWith('_pcma'));
|
|
774
|
+
}
|
|
775
|
+
go2rtcAddress(mod = 'api') {
|
|
776
|
+
const go2rtcPort = parseInt(this.configService.go2rtcConfig[mod].listen.split(':')[1], 10);
|
|
777
|
+
return `127.0.0.1:${go2rtcPort}`;
|
|
778
|
+
}
|
|
702
779
|
};
|
|
703
780
|
CamerasService = __decorate([
|
|
704
781
|
registry([
|