camera.ui3 0.0.34-alpha.1 → 0.0.34-alpha.3

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 (264) hide show
  1. package/dist/interface/@tanstack.CKjDZ58q.0.0.34-alpha.3.js +1 -0
  2. package/dist/interface/{@vee-validate.BYAqeMXW.0.0.34-alpha.1.js → @vee-validate.D-Deq0c3.0.0.34-alpha.3.js} +2 -2
  3. package/dist/interface/@vue.DLAsVqT0.0.0.34-alpha.3.js +17 -0
  4. package/dist/interface/{@vueform.BsJeH1VL.0.0.34-alpha.1.js → @vueform.qn9IITTz.0.0.34-alpha.3.js} +1 -1
  5. package/dist/interface/{@vueuse.C89QVsKq.0.0.34-alpha.1.js → @vueuse.DjSeeuC8.0.0.34-alpha.3.js} +1 -1
  6. package/dist/interface/Account.DvvXyN4T.0.0.34-alpha.3.js +1 -0
  7. package/dist/interface/Adminpanel.BJr3r0Mz.0.0.34-alpha.3.js +2 -0
  8. package/dist/interface/Appearance.uXdE85qT.0.0.34-alpha.3.js +1 -0
  9. package/dist/interface/Backup.BOpdR87Y.0.0.34-alpha.3.js +1 -0
  10. package/dist/interface/Camera.Ea4lzNkY.0.0.34-alpha.3.js +1 -0
  11. package/dist/interface/Cameras.DReUzJFC.0.0.34-alpha.3.js +1 -0
  12. package/dist/interface/Camview.C-lHMDIW.0.0.34-alpha.3.js +1 -0
  13. package/dist/interface/Config.DmARP8un.0.0.34-alpha.3.js +1 -0
  14. package/dist/interface/Console.BQON6fJL.0.0.34-alpha.3.js +4 -0
  15. package/dist/interface/FirstSteps.eKqamXQr.0.0.34-alpha.3.js +1 -0
  16. package/dist/interface/{NewCamera.DXZTbw6t.0.0.34-alpha.1.js → NewCamera.BtPDCsHx.0.0.34-alpha.3.js} +2 -2
  17. package/dist/interface/Plugin.BVXV2PUf.0.0.34-alpha.3.js +1 -0
  18. package/dist/interface/Plugins.-l2XhEap.0.0.34-alpha.3.js +1 -0
  19. package/dist/interface/Recordings.BsYf9qT2.0.0.34-alpha.3.js +1 -0
  20. package/dist/interface/Recordings.D4DiPFO4.0.0.34-alpha.3.js +1 -0
  21. package/dist/interface/Settings.TaefKvyW.0.0.34-alpha.3.js +1 -0
  22. package/dist/interface/System.D5b8zuRP.0.0.34-alpha.3.js +4 -0
  23. package/dist/interface/User.CJDkU1R1.0.0.34-alpha.3.js +1 -0
  24. package/dist/interface/{VConfigEditor.vue_vue_type_script_setup_true_lang.DaPxq8EI.0.0.34-alpha.1.js → VConfigEditor.vue_vue_type_script_setup_true_lang.C38KT5jm.0.0.34-alpha.3.js} +2 -2
  25. package/dist/interface/{VConsole.sVPWAfNY.0.0.34-alpha.1.js → VConsole.L8yV4Z6L.0.0.34-alpha.3.js} +1 -1
  26. package/dist/interface/VPlayer.wmdOYvtC.0.0.34-alpha.3.js +4 -0
  27. package/dist/interface/VPluginCard.BrBIome8.0.0.34-alpha.3.js +4 -0
  28. package/dist/interface/{ace-builds.Cnj3uJ-i.0.0.34-alpha.1.js → ace-builds.CBtTJX9v.0.0.34-alpha.3.js} +1 -1
  29. package/dist/interface/{apexcharts.CMLplPnj.0.0.34-alpha.1.js → apexcharts.QzX23ho7.0.0.34-alpha.3.js} +1 -1
  30. package/dist/interface/assets/Cameras.0.0.34-alpha.3.CF0l3cIy.css +1 -0
  31. package/dist/interface/assets/Console.0.0.34-alpha.3.DN77xjuI.css +1 -0
  32. package/dist/interface/assets/{VPlayer.0.0.34-alpha.1.DmbaAA_3.css → VPlayer.0.0.34-alpha.3.BeQb7Ux_.css} +1 -1
  33. package/dist/interface/assets/VPluginCard.0.0.34-alpha.3.CIc7UhBH.css +1 -0
  34. package/dist/interface/assets/main.0.0.34-alpha.3.D6i_pncP.css +1 -0
  35. package/dist/interface/{dnd-core.DXuprW1u.0.0.34-alpha.1.js → dnd-core.771H3Rf1.0.0.34-alpha.3.js} +1 -1
  36. package/dist/interface/{draggabilly.B4gt8cuQ.0.0.34-alpha.1.js → draggabilly.BdAQGCqc.0.0.34-alpha.3.js} +1 -1
  37. package/dist/interface/{engine.io-client.C6Wzx_jT.0.0.34-alpha.1.js → engine.io-client.GcLFdYsX.0.0.34-alpha.3.js} +1 -1
  38. package/dist/interface/{ev-emitter.CCoflQaJ.0.0.34-alpha.1.js → ev-emitter.bnizdbg-.0.0.34-alpha.3.js} +1 -1
  39. package/dist/interface/{fast-deep-equal.A6REbYuf.0.0.34-alpha.1.js → fast-deep-equal.Bu1IfRX2.0.0.34-alpha.3.js} +1 -1
  40. package/dist/interface/{highlight.js.ChQi-SWt.0.0.34-alpha.1.js → highlight.js.CxHcdONQ.0.0.34-alpha.3.js} +1 -1
  41. package/dist/interface/hookable.B8xFkYCm.0.0.34-alpha.3.js +1 -0
  42. package/dist/interface/index.html +33 -31
  43. package/dist/interface/{linkify-it.V_1DZtim.0.0.34-alpha.1.js → linkify-it.CDXhbjwq.0.0.34-alpha.3.js} +1 -1
  44. package/dist/interface/main.BU_T9HhF.0.0.34-alpha.3.js +5 -0
  45. package/dist/interface/{markdown-it.BSp5IUES.0.0.34-alpha.1.js → markdown-it.C9bb3p1r.0.0.34-alpha.3.js} +1 -1
  46. package/dist/interface/{nprogress.BMn57QX7.0.0.34-alpha.1.js → nprogress.C7HQcvim.0.0.34-alpha.3.js} +1 -1
  47. package/dist/interface/perfect-debounce.Cp2ysxOb.0.0.34-alpha.3.js +1 -0
  48. package/dist/interface/{pinia.C5B5h5W-.0.0.34-alpha.1.js → pinia.CToajcrk.0.0.34-alpha.3.js} +1 -1
  49. package/dist/interface/plugins.Dliq_mwd.0.0.34-alpha.3.js +1 -0
  50. package/dist/interface/{qrcode.CoLGEQa3.0.0.34-alpha.1.js → qrcode.BamWRxas.0.0.34-alpha.3.js} +1 -1
  51. package/dist/interface/{react-dnd-touch-backend.CC-llxq1.0.0.34-alpha.1.js → react-dnd-touch-backend.DYJMTAO8.0.0.34-alpha.3.js} +1 -1
  52. package/dist/interface/{rxjs.DhS72WZW.0.0.34-alpha.1.js → rxjs.DAJXKhLO.0.0.34-alpha.3.js} +1 -1
  53. package/dist/interface/{socket.io-client.DA70sIzA.0.0.34-alpha.1.js → socket.io-client.Dh8ucO0x.0.0.34-alpha.3.js} +1 -1
  54. package/dist/interface/{socket.io-parser.Lr_NuxFX.0.0.34-alpha.1.js → socket.io-parser.C5DZRITr.0.0.34-alpha.3.js} +1 -1
  55. package/dist/interface/sw.js +1 -1
  56. package/dist/interface/system.BqbFQtZT.0.0.34-alpha.3.js +1 -0
  57. package/dist/interface/{unidragger.B5ZpJ0o9.0.0.34-alpha.1.js → unidragger.C5CtdjHU.0.0.34-alpha.3.js} +1 -1
  58. package/dist/interface/{v-calendar.BP5jhivB.0.0.34-alpha.1.js → v-calendar.Cp8k6zLg.0.0.34-alpha.3.js} +1 -1
  59. package/dist/interface/vee-validate.C1QNHqqo.0.0.34-alpha.3.js +5 -0
  60. package/dist/interface/{vue-i18n.CISOas5G.0.0.34-alpha.1.js → vue-i18n.IXPpf7jY.0.0.34-alpha.3.js} +1 -1
  61. package/dist/interface/{vue-inline-svg.DY4V2SdK.0.0.34-alpha.1.js → vue-inline-svg.B3vDJvZ4.0.0.34-alpha.3.js} +1 -1
  62. package/dist/interface/{vue-router.CA6UHABl.0.0.34-alpha.1.js → vue-router.vVhn0OJa.0.0.34-alpha.3.js} +1 -1
  63. package/dist/interface/vue.l0sNRNKZ.0.0.34-alpha.3.js +1 -0
  64. package/dist/interface/vue3-apexcharts.RiQO9rLM.0.0.34-alpha.3.js +1 -0
  65. package/dist/interface/{vue3-dnd.CcvZ77YQ.0.0.34-alpha.1.js → vue3-dnd.1gSj6i6M.0.0.34-alpha.3.js} +1 -1
  66. package/dist/interface/{vue3-toastify.BnsRFQgq.0.0.34-alpha.1.js → vue3-toastify.CnxcYI1f.0.0.34-alpha.3.js} +1 -1
  67. package/dist/interface/vuetify.B9I8IgR0.0.0.34-alpha.3.js +5 -0
  68. package/dist/server/bin/cameraui.d.ts +3 -2
  69. package/dist/server/bin/cameraui.js +59 -76
  70. package/dist/server/bin/cameraui.js.map +1 -1
  71. package/dist/server/bin/fork.js +1 -4
  72. package/dist/server/bin/fork.js.map +1 -1
  73. package/dist/server/bin/installer/win32.js +3 -3
  74. package/dist/server/bin/installer/win32.js.map +1 -1
  75. package/dist/server/bin/logger.d.ts +3 -2
  76. package/dist/server/bin/logger.js +34 -21
  77. package/dist/server/bin/logger.js.map +1 -1
  78. package/dist/server/package.json +14 -11
  79. package/dist/server/requirements.txt +6 -5
  80. package/dist/server/src/api/controllers/cameras.controller.d.ts +2 -0
  81. package/dist/server/src/api/controllers/cameras.controller.js +67 -11
  82. package/dist/server/src/api/controllers/cameras.controller.js.map +1 -1
  83. package/dist/server/src/api/controllers/frameWorkers.controller.d.ts +1 -1
  84. package/dist/server/src/api/controllers/frameWorkers.controller.js +14 -6
  85. package/dist/server/src/api/controllers/frameWorkers.controller.js.map +1 -1
  86. package/dist/server/src/api/controllers/plugins.controller.d.ts +2 -0
  87. package/dist/server/src/api/controllers/plugins.controller.js +92 -33
  88. package/dist/server/src/api/controllers/plugins.controller.js.map +1 -1
  89. package/dist/server/src/api/controllers/system.controller.d.ts +2 -2
  90. package/dist/server/src/api/controllers/system.controller.js +18 -40
  91. package/dist/server/src/api/controllers/system.controller.js.map +1 -1
  92. package/dist/server/src/api/database/checks.d.ts +55 -0
  93. package/dist/server/src/api/database/checks.js +183 -0
  94. package/dist/server/src/api/database/checks.js.map +1 -0
  95. package/dist/server/src/api/database/index.d.ts +2 -1
  96. package/dist/server/src/api/database/index.js +6 -2
  97. package/dist/server/src/api/database/index.js.map +1 -1
  98. package/dist/server/src/api/database/migration.d.ts +1 -0
  99. package/dist/server/src/api/database/migration.js +30 -0
  100. package/dist/server/src/api/database/migration.js.map +1 -1
  101. package/dist/server/src/api/database/selfcheck.d.ts +48 -0
  102. package/dist/server/src/api/database/selfcheck.js +397 -0
  103. package/dist/server/src/api/database/selfcheck.js.map +1 -0
  104. package/dist/server/src/api/routes/cameras.routes.js +12 -0
  105. package/dist/server/src/api/routes/cameras.routes.js.map +1 -1
  106. package/dist/server/src/api/routes/plugins.routes.js +24 -0
  107. package/dist/server/src/api/routes/plugins.routes.js.map +1 -1
  108. package/dist/server/src/api/schemas/cameras.schema.d.ts +13 -13
  109. package/dist/server/src/api/schemas/cameras.schema.js +2 -2
  110. package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
  111. package/dist/server/src/api/services/cameras.service.d.ts +1 -0
  112. package/dist/server/src/api/services/cameras.service.js +13 -2
  113. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  114. package/dist/server/src/api/services/plugins.service.d.ts +1 -0
  115. package/dist/server/src/api/services/plugins.service.js +8 -3
  116. package/dist/server/src/api/services/plugins.service.js.map +1 -1
  117. package/dist/server/src/api/types/index.d.ts +2 -6
  118. package/dist/server/src/api/types/index.js.map +1 -1
  119. package/dist/server/src/api/websocket/index.js +1 -0
  120. package/dist/server/src/api/websocket/index.js.map +1 -1
  121. package/dist/server/src/api/websocket/nsp/logs.d.ts +7 -1
  122. package/dist/server/src/api/websocket/nsp/logs.js +70 -51
  123. package/dist/server/src/api/websocket/nsp/logs.js.map +1 -1
  124. package/dist/server/src/api/websocket/nsp/metrics.d.ts +1 -1
  125. package/dist/server/src/api/websocket/nsp/metrics.js +15 -13
  126. package/dist/server/src/api/websocket/nsp/metrics.js.map +1 -1
  127. package/dist/server/src/api/websocket/nsp/plugins.js +3 -3
  128. package/dist/server/src/api/websocket/nsp/plugins.js.map +1 -1
  129. package/dist/server/src/api/websocket/nsp/status.d.ts +1 -1
  130. package/dist/server/src/api/websocket/nsp/status.js +8 -6
  131. package/dist/server/src/api/websocket/nsp/status.js.map +1 -1
  132. package/dist/server/src/api.d.ts +5 -14
  133. package/dist/server/src/api.js +43 -24
  134. package/dist/server/src/api.js.map +1 -1
  135. package/dist/server/src/camera/controller.d.ts +16 -3
  136. package/dist/server/src/camera/controller.js +105 -17
  137. package/dist/server/src/camera/controller.js.map +1 -1
  138. package/dist/server/src/{decoder/worker.d.ts → camera/frameWorker.d.ts} +9 -6
  139. package/dist/server/src/{decoder/worker.js → camera/frameWorker.js} +125 -52
  140. package/dist/server/src/camera/frameWorker.js.map +1 -0
  141. package/dist/server/src/go2rtc/index.js +18 -5
  142. package/dist/server/src/go2rtc/index.js.map +1 -1
  143. package/dist/server/src/main.js +23 -51
  144. package/dist/server/src/main.js.map +1 -1
  145. package/dist/server/src/nats/index.d.ts +3 -2
  146. package/dist/server/src/nats/index.js +3 -1
  147. package/dist/server/src/nats/index.js.map +1 -1
  148. package/dist/server/src/nats/proxy/cameraDevice.d.ts +2 -1
  149. package/dist/server/src/nats/proxy/cameraDevice.js +34 -42
  150. package/dist/server/src/nats/proxy/cameraDevice.js.map +1 -1
  151. package/dist/server/src/nats/proxy/coreManager.d.ts +1 -1
  152. package/dist/server/src/nats/proxy/deviceManager.d.ts +1 -1
  153. package/dist/server/src/nats/server.js +29 -18
  154. package/dist/server/src/nats/server.js.map +1 -1
  155. package/dist/server/src/nats/types.d.ts +1 -1
  156. package/dist/server/src/nats/utils.d.ts +1 -1
  157. package/dist/server/src/nats/websocket.js.map +1 -1
  158. package/dist/server/src/plugins/index.d.ts +2 -4
  159. package/dist/server/src/plugins/index.js +22 -29
  160. package/dist/server/src/plugins/index.js.map +1 -1
  161. package/dist/server/src/plugins/plugin.d.ts +5 -0
  162. package/dist/server/src/plugins/plugin.js +40 -6
  163. package/dist/server/src/plugins/plugin.js.map +1 -1
  164. package/dist/server/src/plugins/worker.d.ts +20 -2
  165. package/dist/server/src/plugins/worker.js +196 -42
  166. package/dist/server/src/plugins/worker.js.map +1 -1
  167. package/dist/server/src/services/config/constants.d.ts +1 -0
  168. package/dist/server/src/services/config/constants.js +3 -2
  169. package/dist/server/src/services/config/constants.js.map +1 -1
  170. package/dist/server/src/services/config/index.d.ts +11 -2
  171. package/dist/server/src/services/config/index.js +53 -6
  172. package/dist/server/src/services/config/index.js.map +1 -1
  173. package/dist/server/src/services/config/types.d.ts +7 -0
  174. package/dist/server/src/services/config/types.js.map +1 -1
  175. package/localdeps.txt +1 -0
  176. package/package.json +14 -11
  177. package/dist/interface/@tanstack.CxmCad5b.0.0.34-alpha.1.js +0 -1
  178. package/dist/interface/@vue.DNK0rzTJ.0.0.34-alpha.1.js +0 -17
  179. package/dist/interface/Account.Dl_h4WcJ.0.0.34-alpha.1.js +0 -1
  180. package/dist/interface/Adminpanel.B2CrHAQm.0.0.34-alpha.1.js +0 -2
  181. package/dist/interface/Appearance.8KGURqrg.0.0.34-alpha.1.js +0 -1
  182. package/dist/interface/Backup.ByUwt7pB.0.0.34-alpha.1.js +0 -1
  183. package/dist/interface/Camera.DdT22vMP.0.0.34-alpha.1.js +0 -1
  184. package/dist/interface/Cameras.BsZY_8-0.0.0.34-alpha.1.js +0 -1
  185. package/dist/interface/Camview.BgyUqS9_.0.0.34-alpha.1.js +0 -1
  186. package/dist/interface/Config.n7S8GG-f.0.0.34-alpha.1.js +0 -1
  187. package/dist/interface/Console.C5qRkDn7.0.0.34-alpha.1.js +0 -4
  188. package/dist/interface/FirstSteps.DBHaCFiB.0.0.34-alpha.1.js +0 -1
  189. package/dist/interface/Plugin.9gJauF_V.0.0.34-alpha.1.js +0 -1
  190. package/dist/interface/Plugins.Ek1Yocg_.0.0.34-alpha.1.js +0 -1
  191. package/dist/interface/Recordings.BIdhE95Q.0.0.34-alpha.1.js +0 -1
  192. package/dist/interface/Recordings.DVu_tzMT.0.0.34-alpha.1.js +0 -1
  193. package/dist/interface/Settings.Brji5kRj.0.0.34-alpha.1.js +0 -1
  194. package/dist/interface/System.DYvfAoEM.0.0.34-alpha.1.js +0 -4
  195. package/dist/interface/User.Mr1DinvX.0.0.34-alpha.1.js +0 -1
  196. package/dist/interface/VPlayer.DlJrYynC.0.0.34-alpha.1.js +0 -1
  197. package/dist/interface/VPluginCard.BXrvS7zB.0.0.34-alpha.1.js +0 -4
  198. package/dist/interface/assets/Cameras.0.0.34-alpha.1.BgZN27ly.css +0 -1
  199. package/dist/interface/assets/Console.0.0.34-alpha.1.Cjiivzet.css +0 -1
  200. package/dist/interface/assets/VPluginCard.0.0.34-alpha.1.BpMChOJT.css +0 -1
  201. package/dist/interface/assets/main.0.0.34-alpha.1.Degnpyky.css +0 -1
  202. package/dist/interface/main.bKEuHXmK.0.0.34-alpha.1.js +0 -5
  203. package/dist/interface/plugins.BbNP66vO.0.0.34-alpha.1.js +0 -1
  204. package/dist/interface/system.BkLh9FNA.0.0.34-alpha.1.js +0 -1
  205. package/dist/interface/vee-validate.dtT7hUg2.0.0.34-alpha.1.js +0 -5
  206. package/dist/interface/vue3-apexcharts.D_2v4auN.0.0.34-alpha.1.js +0 -1
  207. package/dist/interface/vuetify.DiAVhTT5.0.0.34-alpha.1.js +0 -5
  208. package/dist/server/src/decoder/index.d.ts +0 -11
  209. package/dist/server/src/decoder/index.js +0 -32
  210. package/dist/server/src/decoder/index.js.map +0 -1
  211. package/dist/server/src/decoder/types.d.ts +0 -7
  212. package/dist/server/src/decoder/types.js +0 -2
  213. package/dist/server/src/decoder/types.js.map +0 -1
  214. package/dist/server/src/decoder/worker.js.map +0 -1
  215. /package/dist/interface/{@babel.l0sNRNKZ.0.0.34-alpha.1.js → @babel.l0sNRNKZ.0.0.34-alpha.3.js} +0 -0
  216. /package/dist/interface/{@intlify.sEJX3RNi.0.0.34-alpha.1.js → @intlify.sEJX3RNi.0.0.34-alpha.3.js} +0 -0
  217. /package/dist/interface/{@mdi.C1UTQKuc.0.0.34-alpha.1.js → @mdi.C1UTQKuc.0.0.34-alpha.3.js} +0 -0
  218. /package/dist/interface/{@popperjs.l0sNRNKZ.0.0.34-alpha.1.js → @popperjs.l0sNRNKZ.0.0.34-alpha.3.js} +0 -0
  219. /package/dist/interface/{@react-dnd.CcwRs9xb.0.0.34-alpha.1.js → @react-dnd.CcwRs9xb.0.0.34-alpha.3.js} +0 -0
  220. /package/dist/interface/{@socket.io.Dkula2eQ.0.0.34-alpha.1.js → @socket.io.Dkula2eQ.0.0.34-alpha.3.js} +0 -0
  221. /package/dist/interface/{@turf.l0sNRNKZ.0.0.34-alpha.1.js → @turf.l0sNRNKZ.0.0.34-alpha.3.js} +0 -0
  222. /package/dist/interface/{@xterm.CEvrn8WJ.0.0.34-alpha.1.js → @xterm.CaIhPNPe.0.0.34-alpha.3.js} +0 -0
  223. /package/dist/interface/assets/{@vueform.0.0.34-alpha.1.h7tNX9p6.css → @vueform.0.0.34-alpha.3.h7tNX9p6.css} +0 -0
  224. /package/dist/interface/assets/{@xterm.0.0.34-alpha.1.CGrrDQr5.css → @xterm.0.0.34-alpha.3.CGrrDQr5.css} +0 -0
  225. /package/dist/interface/assets/{Account.0.0.34-alpha.1.Ce3OmKrC.css → Account.0.0.34-alpha.3.Ce3OmKrC.css} +0 -0
  226. /package/dist/interface/assets/{Adminpanel.0.0.34-alpha.1.BCpVV7QL.css → Adminpanel.0.0.34-alpha.3.BCpVV7QL.css} +0 -0
  227. /package/dist/interface/assets/{Backup.0.0.34-alpha.1.BIwaSlv3.css → Backup.0.0.34-alpha.3.BIwaSlv3.css} +0 -0
  228. /package/dist/interface/assets/{Camera.0.0.34-alpha.1.D49XscoW.css → Camera.0.0.34-alpha.3.D49XscoW.css} +0 -0
  229. /package/dist/interface/assets/{Camview.0.0.34-alpha.1.BdTE1Iny.css → Camview.0.0.34-alpha.3.BdTE1Iny.css} +0 -0
  230. /package/dist/interface/assets/{Config.0.0.34-alpha.1.BtdZEuQO.css → Config.0.0.34-alpha.3.BtdZEuQO.css} +0 -0
  231. /package/dist/interface/assets/{FirstSteps.0.0.34-alpha.1.CCo2y-sU.css → FirstSteps.0.0.34-alpha.3.CCo2y-sU.css} +0 -0
  232. /package/dist/interface/assets/{NewCamera.0.0.34-alpha.1.W16dakdJ.css → NewCamera.0.0.34-alpha.3.W16dakdJ.css} +0 -0
  233. /package/dist/interface/assets/{Plugin.0.0.34-alpha.1.BtRA6zDt.css → Plugin.0.0.34-alpha.3.BtRA6zDt.css} +0 -0
  234. /package/dist/interface/assets/{Plugins.0.0.34-alpha.1.Cwu0aGUO.css → Plugins.0.0.34-alpha.3.Cwu0aGUO.css} +0 -0
  235. /package/dist/interface/assets/{Settings.0.0.34-alpha.1.DTRm1psP.css → Settings.0.0.34-alpha.3.DTRm1psP.css} +0 -0
  236. /package/dist/interface/assets/{User.0.0.34-alpha.1.DPDcJbx8.css → User.0.0.34-alpha.3.DPDcJbx8.css} +0 -0
  237. /package/dist/interface/assets/{VConsole.0.0.34-alpha.1.e0RL6-05.css → VConsole.0.0.34-alpha.3.e0RL6-05.css} +0 -0
  238. /package/dist/interface/assets/{highlight.0.0.34-alpha.1.DgoK_Xib.css → highlight.0.0.34-alpha.3.DgoK_Xib.css} +0 -0
  239. /package/dist/interface/assets/{logo-256.0.0.34-alpha.1.BCQk9H1-.png → logo-256.0.0.34-alpha.3.BCQk9H1-.png} +0 -0
  240. /package/dist/interface/assets/{logo-512.0.0.34-alpha.1.DLKVOU2S.png → logo-512.0.0.34-alpha.3.DLKVOU2S.png} +0 -0
  241. /package/dist/interface/assets/{logo.0.0.34-alpha.1.DmEiRk0z.png → logo.0.0.34-alpha.3.DmEiRk0z.png} +0 -0
  242. /package/dist/interface/assets/{mode-json.0.0.34-alpha.1.Br7xisR1.js → mode-json.0.0.34-alpha.3.Br7xisR1.js} +0 -0
  243. /package/dist/interface/assets/{mode-yaml.0.0.34-alpha.1.CIYL8U3d.js → mode-yaml.0.0.34-alpha.3.CIYL8U3d.js} +0 -0
  244. /package/dist/interface/assets/{vue3-toastify.0.0.34-alpha.1.DTY1DMRs.css → vue3-toastify.0.0.34-alpha.3.DTY1DMRs.css} +0 -0
  245. /package/dist/interface/assets/{vuetify.0.0.34-alpha.1.B_k2Rcut.css → vuetify.0.0.34-alpha.3.B_k2Rcut.css} +0 -0
  246. /package/dist/interface/{axios.C-n2IhIP.0.0.34-alpha.1.js → axios.C-n2IhIP.0.0.34-alpha.3.js} +0 -0
  247. /package/dist/interface/{point-in-polygon-hao.l0sNRNKZ.0.0.34-alpha.1.js → birpc.l0sNRNKZ.0.0.34-alpha.3.js} +0 -0
  248. /package/dist/interface/{compare-versions.DqEOhma6.0.0.34-alpha.1.js → compare-versions.DqEOhma6.0.0.34-alpha.3.js} +0 -0
  249. /package/dist/interface/{dijkstrajs.D_NXgYpA.0.0.34-alpha.1.js → dijkstrajs.D_NXgYpA.0.0.34-alpha.3.js} +0 -0
  250. /package/dist/interface/{engine.io-parser.BiEtp6m2.0.0.34-alpha.1.js → engine.io-parser.BiEtp6m2.0.0.34-alpha.3.js} +0 -0
  251. /package/dist/interface/{entities.C20TfXL6.0.0.34-alpha.1.js → entities.C20TfXL6.0.0.34-alpha.3.js} +0 -0
  252. /package/dist/interface/{get-size.D1dS-IaP.0.0.34-alpha.1.js → get-size.D1dS-IaP.0.0.34-alpha.3.js} +0 -0
  253. /package/dist/interface/{mdurl.k9Sl0PQj.0.0.34-alpha.1.js → mdurl.k9Sl0PQj.0.0.34-alpha.3.js} +0 -0
  254. /package/dist/interface/{sweepline-intersections.l0sNRNKZ.0.0.34-alpha.1.js → point-in-polygon-hao.l0sNRNKZ.0.0.34-alpha.3.js} +0 -0
  255. /package/dist/interface/{punycode.js.Dj65hjkv.0.0.34-alpha.1.js → punycode.js.Dj65hjkv.0.0.34-alpha.3.js} +0 -0
  256. /package/dist/interface/{react-dnd-html5-backend.1HQjlkwI.0.0.34-alpha.1.js → react-dnd-html5-backend.1HQjlkwI.0.0.34-alpha.3.js} +0 -0
  257. /package/dist/interface/{redux.CuxFRhX_.0.0.34-alpha.1.js → redux.CuxFRhX_.0.0.34-alpha.3.js} +0 -0
  258. /package/dist/interface/{vue.l0sNRNKZ.0.0.34-alpha.1.js → sweepline-intersections.l0sNRNKZ.0.0.34-alpha.3.js} +0 -0
  259. /package/dist/interface/{tslib.9k7AwCpt.0.0.34-alpha.1.js → tslib.9k7AwCpt.0.0.34-alpha.3.js} +0 -0
  260. /package/dist/interface/{types.Cz9TaZAP.0.0.34-alpha.1.js → types.Cz9TaZAP.0.0.34-alpha.3.js} +0 -0
  261. /package/dist/interface/{uc.micro.kMc2yuuw.0.0.34-alpha.1.js → uc.micro.kMc2yuuw.0.0.34-alpha.3.js} +0 -0
  262. /package/dist/interface/{utils.mAKpSMLY.0.0.34-alpha.1.js → utils.mAKpSMLY.0.0.34-alpha.3.js} +0 -0
  263. /package/dist/interface/{uuid.DvF23Exx.0.0.34-alpha.1.js → uuid.DvF23Exx.0.0.34-alpha.3.js} +0 -0
  264. /package/dist/interface/{zod.DnW1_kUe.0.0.34-alpha.1.js → zod.DnW1_kUe.0.0.34-alpha.3.js} +0 -0
@@ -4,16 +4,17 @@ import { spawn as spawnPty } from '@scrypted/node-pty';
4
4
  import { cyan, green, red, yellow } from 'ansicolor';
5
5
  import { ensureDir, move, pathExists, readJSON, readJson, remove, writeJson } from 'fs-extra/esm';
6
6
  import { createHash } from 'node:crypto';
7
- import { constants, readFile as readFileSync } from 'node:fs';
7
+ import { constants, createReadStream, readFile as readFileSync, truncate } from 'node:fs';
8
8
  import { access, mkdtemp, readFile, rmdir, unlink, writeFile } from 'node:fs/promises';
9
9
  import { platform, tmpdir, userInfo } from 'node:os';
10
10
  import { basename, dirname, join } from 'node:path';
11
+ import { Readable } from 'node:stream';
11
12
  import { gt, parse as parseVersion, satisfies } from 'semver';
12
13
  import sharp from 'sharp';
13
14
  import { x as extract } from 'tar';
14
15
  import { container } from 'tsyringe';
15
- import { APP_NAME } from '../../services/config/constants.js';
16
16
  import { PluginManager } from '../../plugins/index.js';
17
+ import { APP_NAME } from '../../services/config/constants.js';
17
18
  import { ConfigService } from '../../services/config/index.js';
18
19
  import { CamerasService } from '../services/cameras.service.js';
19
20
  import { PluginsService } from '../services/plugins.service.js';
@@ -633,6 +634,64 @@ export class PluginsController {
633
634
  });
634
635
  }
635
636
  }
637
+ clearLog(req, reply) {
638
+ try {
639
+ const pluginName = this.resolvePluginName(req.params);
640
+ const plugin = this.service.getPluginByName(pluginName);
641
+ if (!plugin) {
642
+ return reply.code(404).send({
643
+ statusCode: 404,
644
+ message: 'Plugin not exists',
645
+ });
646
+ }
647
+ truncate(plugin.logPath, (error) => {
648
+ if (error) {
649
+ return reply.code(500).send({
650
+ statusCode: 500,
651
+ message: error.message,
652
+ });
653
+ }
654
+ this.app.io.of('/logs').emit('clear-plugin-log', pluginName);
655
+ return reply.code(204).send();
656
+ });
657
+ }
658
+ catch (error) {
659
+ return reply.code(500).send({
660
+ statusCode: 500,
661
+ message: error.message,
662
+ });
663
+ }
664
+ }
665
+ downloadLog(req, reply) {
666
+ try {
667
+ const pluginName = this.resolvePluginName(req.params);
668
+ const plugin = this.service.getPluginByName(pluginName);
669
+ if (!plugin) {
670
+ return reply.code(404).send({
671
+ statusCode: 404,
672
+ message: 'Plugin not exists',
673
+ });
674
+ }
675
+ const buffer = new Readable();
676
+ buffer._read = () => { };
677
+ const readStream = createReadStream(plugin.logPath);
678
+ readStream.on('data', (data) => {
679
+ buffer.push(data.toString('utf8').replace(/\x1b\[[0-9;]*m/g, ''));
680
+ });
681
+ readStream.on('end', () => {
682
+ buffer.push(null);
683
+ });
684
+ reply.header('Content-Type', 'application/octet-stream');
685
+ reply.header('Content-Disposition', `attachment; filename=camera.ui.${plugin.pluginName}.log.txt`);
686
+ return reply.code(200).send(buffer);
687
+ }
688
+ catch (error) {
689
+ return reply.code(500).send({
690
+ statusCode: 500,
691
+ message: error.message,
692
+ });
693
+ }
694
+ }
636
695
  async search(req, reply) {
637
696
  try {
638
697
  const query = req.query.pluginname || '';
@@ -845,9 +904,9 @@ export class PluginsController {
845
904
  else {
846
905
  targetDir = join(dir, pluginName);
847
906
  }
848
- this.emitProgress(pluginName, `\n\rUSER: ${userInfo().username}\n\r`, cyan);
849
- this.emitProgress(pluginName, `DIR: ${targetDir}\n\r`, cyan);
850
- this.emitProgress(pluginName, `ACTION: ${action}\n\r\n\r`, cyan);
907
+ this.emitProgress(pluginName, `\r\nUSER: ${userInfo().username}\r\n`, cyan);
908
+ this.emitProgress(pluginName, `DIR: ${targetDir}\r\n`, cyan);
909
+ this.emitProgress(pluginName, `ACTION: ${action}\r\r\n\n`, cyan);
851
910
  await this.removeSynologyMetadata();
852
911
  switch (action) {
853
912
  case 'install':
@@ -881,14 +940,14 @@ export class PluginsController {
881
940
  await access(join(targetDir, 'node_modules'), constants.W_OK);
882
941
  }
883
942
  catch {
884
- this.emitProgress(pluginName, `The user "${userInfo().username}" does not have write access to the target directory:\n\r\n\r`, yellow);
885
- this.emitProgress(pluginName, `${join(targetDir, 'node_modules')}\n\r\n\r`);
886
- this.emitProgress(pluginName, 'This may cause the operation to fail.\n\r\n\r', yellow);
943
+ this.emitProgress(pluginName, `The user "${userInfo().username}" does not have write access to the target directory:\r\n\r\n`, yellow);
944
+ this.emitProgress(pluginName, `${join(targetDir, 'node_modules')}\r\n\r\n`);
945
+ this.emitProgress(pluginName, 'This may cause the operation to fail.\r\n\r\n', yellow);
887
946
  }
888
947
  this.logger.log(`Running Command: ${command.join(' ')}`);
889
948
  if (!satisfies(process.version, `>=${ConfigService.MIN_NODE_VERSION}`)) {
890
- this.emitProgress(pluginName, `Node.js v${ConfigService.MIN_NODE_VERSION} higher is required for ${APP_NAME}.\n\r`, yellow);
891
- this.emitProgress(pluginName, `You may experience issues while running on Node.js ${process.version}.\n\r\n\r`, yellow);
949
+ this.emitProgress(pluginName, `Node.js v${ConfigService.MIN_NODE_VERSION} higher is required for ${APP_NAME}.\r\n`, yellow);
950
+ this.emitProgress(pluginName, `You may experience issues while running on Node.js ${process.version}.\r\n\r\n`, yellow);
892
951
  }
893
952
  // set up the environment for the call
894
953
  const env = {};
@@ -926,11 +985,11 @@ export class PluginsController {
926
985
  term.onExit((error) => {
927
986
  clearTimeout(timeoutTimer);
928
987
  if (error.exitCode === 0) {
929
- this.emitProgress(pluginName, `\n\rServer ${pluginName}@${version} has been successfully updated.\n\r\n\r`, green);
988
+ this.emitProgress(pluginName, `\r\nServer ${pluginName}@${version} has been successfully updated.\r\n\r\n`, green);
930
989
  _resolve(null);
931
990
  }
932
991
  else {
933
- this.emitProgress(pluginName, `\n\rError during update of ${pluginName}@${version}.\n\r\n\r`, red);
992
+ this.emitProgress(pluginName, `\r\nError during update of ${pluginName}@${version}.\r\n\r\n`, red);
934
993
  _reject(new Error('Operation failed. Please review log for details.'));
935
994
  }
936
995
  });
@@ -953,19 +1012,19 @@ export class PluginsController {
953
1012
  const packageInfo = await response.json();
954
1013
  const tarballUrl = packageInfo.dist.tarball;
955
1014
  const expectedShasum = packageInfo.dist.shasum;
956
- this.emitProgress(pluginName, ' Done\n\r\n\r', green);
1015
+ this.emitProgress(pluginName, ' Done\r\n\r\n', green);
957
1016
  const tarballData = await this.downloadWithProgress(tarballUrl, pluginName, version);
958
- this.emitProgress(pluginName, ' - Done\n\r\n\r', green);
1017
+ this.emitProgress(pluginName, ' - Done\r\n\r\n', green);
959
1018
  this.emitProgress(pluginName, '> Verifying package integrity...');
960
1019
  const computedShasum = createHash('sha1').update(Buffer.from(tarballData)).digest('hex');
961
1020
  if (computedShasum !== expectedShasum) {
962
1021
  throw new Error(`SHA checksum mismatch. Expected: ${expectedShasum}, Got: ${computedShasum}`);
963
1022
  }
964
- this.emitProgress(pluginName, ' Done\n\r\n\r', green);
1023
+ this.emitProgress(pluginName, ' Done\r\n\r\n', green);
965
1024
  if (await pathExists(targetDir)) {
966
1025
  this.emitProgress(pluginName, '> Backing up existing installation...');
967
1026
  await move(targetDir, backupTempDir);
968
- this.emitProgress(pluginName, ' Done\n\r\n\r', green);
1027
+ this.emitProgress(pluginName, ' Done\r\n\r\n', green);
969
1028
  }
970
1029
  await ensureDir(targetDir);
971
1030
  this.emitProgress(pluginName, '> Extracting package...');
@@ -976,29 +1035,29 @@ export class PluginsController {
976
1035
  });
977
1036
  extractStream.on('error', _reject);
978
1037
  extractStream.on('end', () => {
979
- this.emitProgress(pluginName, ' Done\n\r\n\r', green);
1038
+ this.emitProgress(pluginName, ' Done\r\n\r\n', green);
980
1039
  _resolve();
981
1040
  });
982
1041
  extractStream.write(Buffer.from(tarballData));
983
1042
  extractStream.end();
984
1043
  });
985
1044
  await this.installProductionDependencies(targetDir, pluginName);
986
- this.emitProgress(pluginName, '\n\r> Cleaning up...');
1045
+ this.emitProgress(pluginName, '\r\n> Cleaning up...');
987
1046
  await remove(backupTempDir);
988
- this.emitProgress(pluginName, ' Done\n\r\n\r', green);
989
- this.emitProgress(pluginName, `Plugin ${pluginName}@${version} has been successfully ${update ? 'updated' : 'installed'}.\n\r\n\r`, green);
1047
+ this.emitProgress(pluginName, ' Done\r\n\r\n', green);
1048
+ this.emitProgress(pluginName, `Plugin ${pluginName}@${version} has been successfully ${update ? 'updated' : 'installed'}.\r\n\r\n`, green);
990
1049
  }
991
1050
  catch (error) {
992
- this.emitProgress(pluginName, `\n\rError during ${update ? 'update' : 'installation'} of ${pluginName}@${version}.\n\r\n\r`, red);
1051
+ this.emitProgress(pluginName, `\r\nError during ${update ? 'update' : 'installation'} of ${pluginName}@${version}.\r\n\r\n`, red);
993
1052
  try {
994
1053
  this.emitProgress(pluginName, '> Restoring previous version...');
995
1054
  await remove(targetDir);
996
1055
  await move(backupTempDir, targetDir);
997
- this.emitProgress(pluginName, ' Done\n\r\n\r', green);
1056
+ this.emitProgress(pluginName, ' Done\r\n\r\n', green);
998
1057
  }
999
1058
  catch (error) {
1000
- this.emitProgress(pluginName, `\n\r\n\rError: ${error.message}\n\r`, red);
1001
- this.emitProgress(pluginName, 'Failed to restore previous version.\n\r\n\r', red);
1059
+ this.emitProgress(pluginName, `\r\n\r\nError: ${error.message}\r\n`, red);
1060
+ this.emitProgress(pluginName, 'Failed to restore previous version.\r\n\r\n', red);
1002
1061
  }
1003
1062
  throw error;
1004
1063
  }
@@ -1010,14 +1069,14 @@ export class PluginsController {
1010
1069
  const packageJson = await readJson(packageJsonPath);
1011
1070
  const currentVersion = packageJson.version;
1012
1071
  if (currentVersion === version) {
1013
- this.emitProgress(pluginName, `Plugin ${pluginName} is already up to date.\n\r\n\r`, green);
1072
+ this.emitProgress(pluginName, `Plugin ${pluginName} is already up to date.\r\n\r\n`, green);
1014
1073
  return;
1015
1074
  }
1016
- this.emitProgress(pluginName, ' Done\n\r\n\r', green);
1075
+ this.emitProgress(pluginName, ' Done\r\n\r\n', green);
1017
1076
  await this.installPlugin(pluginName, version, targetDir, true);
1018
1077
  }
1019
1078
  catch (error) {
1020
- this.emitProgress(pluginName, `\n\rError during update of ${pluginName}@${version}.\n\r\n\r`, red);
1079
+ this.emitProgress(pluginName, `\r\nError during update of ${pluginName}@${version}.\r\n\r\n`, red);
1021
1080
  throw error;
1022
1081
  }
1023
1082
  }
@@ -1025,18 +1084,18 @@ export class PluginsController {
1025
1084
  try {
1026
1085
  this.emitProgress(pluginName, '> Removing plugin...');
1027
1086
  await remove(targetDir);
1028
- this.emitProgress(pluginName, ' Done\n\r\n\r', green);
1029
- this.emitProgress(pluginName, `Plugin ${pluginName} has been successfully uninstalled.\n\r`, green);
1087
+ this.emitProgress(pluginName, ' Done\r\n\r\n', green);
1088
+ this.emitProgress(pluginName, `Plugin ${pluginName} has been successfully uninstalled.\r\n`, green);
1030
1089
  }
1031
1090
  catch (error) {
1032
- this.emitProgress(pluginName, ' Error\n\r\n\r', red);
1033
- this.emitProgress(pluginName, `\n\rError during uninstallation of ${pluginName}.\n\r\n\r`, red);
1091
+ this.emitProgress(pluginName, ' Error\r\n\r\n', red);
1092
+ this.emitProgress(pluginName, `\r\nError during uninstallation of ${pluginName}.\r\n\r\n`, red);
1034
1093
  throw error;
1035
1094
  }
1036
1095
  }
1037
1096
  async installProductionDependencies(packageDir, pluginName) {
1038
1097
  await new Promise((_resolve, _reject) => {
1039
- this.emitProgress(pluginName, '> Installing dependencies...\n\r\n\r');
1098
+ this.emitProgress(pluginName, '> Installing dependencies...\r\n\r\n');
1040
1099
  const command = [...getNpmPath(), 'install', '--omit=dev', '--include=prod', '--loglevel', 'info'];
1041
1100
  const env = {};
1042
1101
  Object.assign(env, process.env);
@@ -1253,7 +1312,7 @@ export class PluginsController {
1253
1312
  let receivedLength = 0;
1254
1313
  const chunks = [];
1255
1314
  const reader = response.body.getReader();
1256
- this.emitProgress(pluginName, `> Downloading ${pluginName}@${version}...\n\r`);
1315
+ this.emitProgress(pluginName, `> Downloading ${pluginName}@${version}...\r\n`);
1257
1316
  // eslint-disable-next-line no-constant-condition
1258
1317
  while (true) {
1259
1318
  const { done, value } = await reader.read();
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.controller.js","sourceRoot":"","sources":["../../../../../src/api/controllers/plugins.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugins.controller.js","sourceRoot":"","sources":["../../../../../src/api/controllers/plugins.controller.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { FastifyInstance, FastifyReply, FastifyRequest } from 'fastify';
2
- import type { AuthLoginRequest, DownloadLogRequest, FilesParamsRequest, SystemPatchRequest } from '../types/index.js';
2
+ import type { AuthLoginRequest, FilesParamsRequest, SystemPatchRequest } from '../types/index.js';
3
3
  export declare class SystemController {
4
4
  private app;
5
5
  private configService;
@@ -14,8 +14,8 @@ export declare class SystemController {
14
14
  natsInfo(req: FastifyRequest<AuthLoginRequest>, reply: FastifyReply): Promise<FastifyReply>;
15
15
  go2rtcInfo(req: FastifyRequest<AuthLoginRequest>, reply: FastifyReply): Promise<FastifyReply>;
16
16
  clearLog(req: FastifyRequest<AuthLoginRequest>, reply: FastifyReply): FastifyReply | void;
17
+ downloadLog(req: FastifyRequest<AuthLoginRequest>, reply: FastifyReply): FastifyReply | void;
17
18
  downloadCert(req: FastifyRequest<AuthLoginRequest & FilesParamsRequest>, reply: FastifyReply): Promise<FastifyReply | void>;
18
- downloadLog(req: FastifyRequest<AuthLoginRequest & DownloadLogRequest>, reply: FastifyReply): FastifyReply | void;
19
19
  restart(req: FastifyRequest<AuthLoginRequest>, reply: FastifyReply): FastifyReply | void;
20
20
  restartGo2rtc(req: FastifyRequest<AuthLoginRequest>, reply: FastifyReply): Promise<FastifyReply | void>;
21
21
  }
@@ -1,5 +1,4 @@
1
1
  import { AS_SERVICE, fetchViableNetworkAddresses, getNpmPath, isEqual } from '@camera.ui/common';
2
- import { strip } from 'ansicolor';
3
2
  import { exec } from 'child_process';
4
3
  import { createReadStream, readFile, truncate } from 'node:fs';
5
4
  import { Readable } from 'node:stream';
@@ -136,17 +135,20 @@ export class SystemController {
136
135
  });
137
136
  }
138
137
  }
139
- async downloadCert(req, reply) {
138
+ downloadLog(req, reply) {
140
139
  try {
141
- readFile(this.configService.config.ssl.certFile, (error, fileBuffer) => {
142
- if (error) {
143
- this.logger.error(error);
144
- }
145
- reply.send(error || fileBuffer);
140
+ const buffer = new Readable();
141
+ buffer._read = () => { };
142
+ const readStream = createReadStream(this.configService.LOG_FILE);
143
+ readStream.on('data', (data) => {
144
+ buffer.push(data.toString('utf8').replace(/\x1b\[[0-9;]*m/g, ''));
145
+ });
146
+ readStream.on('end', () => {
147
+ buffer.push(null);
146
148
  });
147
149
  reply.header('Content-Type', 'application/octet-stream');
148
- reply.header('Content-Disposition', 'attachment; filename=cert.pem');
149
- return reply;
150
+ reply.header('Content-Disposition', 'attachment; filename=camera.ui.log.txt');
151
+ return reply.code(200).send(buffer);
150
152
  }
151
153
  catch (error) {
152
154
  return reply.code(500).send({
@@ -155,41 +157,17 @@ export class SystemController {
155
157
  });
156
158
  }
157
159
  }
158
- downloadLog(req, reply) {
160
+ async downloadCert(req, reply) {
159
161
  try {
160
- const buffer = new Readable();
161
- buffer._read = () => { };
162
- const readStream = createReadStream(this.configService.LOG_FILE);
163
- let isRelatedToFilter = false;
164
- const filter = req.query.filter ? req.query.filter.split(',') : undefined;
165
- const filterRegex = /(?:\\x1B\[\d+(?:;\d+)*m|\x1B\[\d+(?:;\d+)*m)*\[camera\.ui\](?:\\x1B\[\d+(?:;\d+)*m|\x1B\[\d+(?:;\d+)*m)*\s*/g;
166
- const isNewEntry = (line) => {
167
- return /^\[\d{2}\.\d{2}\.\d{4}, \d{2}:\d{2}:\d{2}\]/.test(line);
168
- };
169
- readStream.on('data', (data) => {
170
- if (filter) {
171
- const lines = data.toString('utf8').replace(filterRegex, '').split('\n');
172
- const filteredLines = lines.filter((line) => {
173
- const clearLine = strip(line);
174
- if (isNewEntry(clearLine)) {
175
- isRelatedToFilter = filter.some((key) => clearLine.includes(key));
176
- }
177
- if (isRelatedToFilter) {
178
- return line;
179
- }
180
- });
181
- buffer.push(filteredLines.join('\n').replace(/\x1b\[[0-9;]*m/g, ''));
182
- }
183
- else {
184
- buffer.push(data.toString('utf8').replace(/\x1b\[[0-9;]*m/g, ''));
162
+ readFile(this.configService.config.ssl.certFile, (error, fileBuffer) => {
163
+ if (error) {
164
+ this.logger.error(error);
185
165
  }
186
- });
187
- readStream.on('end', () => {
188
- buffer.push(null);
166
+ reply.send(error || fileBuffer);
189
167
  });
190
168
  reply.header('Content-Type', 'application/octet-stream');
191
- reply.header('Content-Disposition', 'attachment; filename=camera.ui.log.txt');
192
- return reply.code(200).send(buffer);
169
+ reply.header('Content-Disposition', 'attachment; filename=cert.pem');
170
+ return reply;
193
171
  }
194
172
  catch (error) {
195
173
  return reply.code(500).send({