@camera.ui/server 0.0.14-test.8 → 0.0.14

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 (224) hide show
  1. package/dist/interface/@tanstack.Cvca3GsJ.0.0.14.js +1 -0
  2. package/dist/interface/{@vee-validate.B1gWs4un.0.0.14-test.8.js → @vee-validate.Dhm2s2jJ.0.0.14.js} +1 -1
  3. package/dist/interface/@vueform.wl5SN6Kr.0.0.14.js +1 -0
  4. package/dist/interface/@vueuse.GozpFDMZ.0.0.14.js +1 -0
  5. package/dist/interface/Account.CHpD0y6M.0.0.14.js +1 -0
  6. package/dist/interface/Adminpanel.CelMh8wU.0.0.14.js +2 -0
  7. package/dist/interface/Appearance.B0X5775O.0.0.14.js +1 -0
  8. package/dist/interface/Backup.CciVdmKI.0.0.14.js +1 -0
  9. package/dist/interface/Camera.Bc0p6JVD.0.0.14.js +1 -0
  10. package/dist/interface/Cameras.CDqjsGuM.0.0.14.js +1 -0
  11. package/dist/interface/Camview.BCifNo-Z.0.0.14.js +1 -0
  12. package/dist/interface/Config.DaY-PxVq.0.0.14.js +1 -0
  13. package/dist/interface/Console.D6g6zVMZ.0.0.14.js +4 -0
  14. package/dist/interface/FirstSteps.BlXdIB1-.0.0.14.js +1 -0
  15. package/dist/interface/{NewCamera.DC5ggMZ0.0.0.14-test.8.js → NewCamera.C6ceI-8A.0.0.14.js} +2 -2
  16. package/dist/interface/Plugin.B8sGxdo1.0.0.14.js +1 -0
  17. package/dist/interface/Plugins.BTbLmvva.0.0.14.js +1 -0
  18. package/dist/interface/Recordings.CujQWqIE.0.0.14.js +1 -0
  19. package/dist/interface/Recordings.DocHADaV.0.0.14.js +1 -0
  20. package/dist/interface/Settings.DcwLAKtn.0.0.14.js +1 -0
  21. package/dist/interface/System.Dc0iwshQ.0.0.14.js +4 -0
  22. package/dist/interface/User.g2U_tFY3.0.0.14.js +1 -0
  23. package/dist/interface/VConfigEditor.vue_vue_type_script_setup_true_lang.EikqU5ed.0.0.14.js +2 -0
  24. package/dist/interface/VConsole.CQqki9g1.0.0.14.js +1 -0
  25. package/dist/interface/VPlayer.BdDvEUtF.0.0.14.js +1 -0
  26. package/dist/interface/{VPluginCard.D091nACS.0.0.14-test.8.js → VPluginCard.UxjDX7aw.0.0.14.js} +2 -2
  27. package/dist/interface/{ace-builds.qo7jHZVf.0.0.14-test.8.js → ace-builds.CFQYSvlz.0.0.14.js} +55 -41
  28. package/dist/interface/assets/Account.0.0.14.2KfYXKTQ.css +1 -0
  29. package/dist/interface/assets/{Adminpanel.0.0.14-test.8.BHh3IMeu.css → Adminpanel.0.0.14.A2JXV1Ib.css} +1 -1
  30. package/dist/interface/assets/{Camera.0.0.14-test.8.B5hAZmeQ.css → Camera.0.0.14.BDtUJ-lA.css} +1 -1
  31. package/dist/interface/assets/{Config.0.0.14-test.8.CncRTcjC.css → Config.0.0.14.BQJF6s_V.css} +1 -1
  32. package/dist/interface/assets/FirstSteps.0.0.14.DFSydMqk.css +1 -0
  33. package/dist/interface/assets/NewCamera.0.0.14.CMzSwwHn.css +1 -0
  34. package/dist/interface/assets/Settings.0.0.14.DTxcLhIY.css +1 -0
  35. package/dist/interface/assets/User.0.0.14.CXUSYt8i.css +1 -0
  36. package/dist/interface/assets/{VPlayer.0.0.14-test.8.H4sGdlHU.css → VPlayer.0.0.14.CzZme_fu.css} +1 -1
  37. package/dist/interface/assets/VPluginCard.0.0.14.C2OqX7DJ.css +1 -0
  38. package/dist/interface/assets/main.0.0.14.DYbE3rQA.css +1 -0
  39. package/dist/interface/dnd-core.yQYwh7nE.0.0.14.js +1 -0
  40. package/dist/interface/{draggabilly.D232zztK.0.0.14-test.8.js → draggabilly.DVAyE9_D.0.0.14.js} +1 -1
  41. package/dist/interface/engine.io-client.Co7SlJ1E.0.0.14.js +1 -0
  42. package/dist/interface/ev-emitter.Bw9npPB3.0.0.14.js +1 -0
  43. package/dist/interface/fast-deep-equal.BHyMOnnP.0.0.14.js +1 -0
  44. package/dist/interface/{highlight.js.lYuI7WoP.0.0.14-test.8.js → highlight.js.Bcczinar.0.0.14.js} +1 -1
  45. package/dist/interface/index.html +35 -35
  46. package/dist/interface/linkify-it.BUeGIfuB.0.0.14.js +1 -0
  47. package/dist/interface/main.BKyGw-1O.0.0.14.js +9 -0
  48. package/dist/interface/{markdown-it.VzoriHTT.0.0.14-test.8.js → markdown-it.DOljZfaF.0.0.14.js} +1 -1
  49. package/dist/interface/{nprogress.CxN4JN9q.0.0.14-test.8.js → nprogress.y4ho8UN3.0.0.14.js} +1 -1
  50. package/dist/interface/{pinia.Ca3uWOFQ.0.0.14-test.8.js → pinia.81SobSxK.0.0.14.js} +1 -1
  51. package/dist/interface/plugins.XWRvgFHD.0.0.14.js +1 -0
  52. package/dist/interface/{qrcode.Bwtigvqd.0.0.14-test.8.js → qrcode.CZ-rkxD4.0.0.14.js} +1 -1
  53. package/dist/interface/react-dnd-touch-backend.Due7_SmB.0.0.14.js +1 -0
  54. package/dist/interface/{rxjs.BVPfvhKU.0.0.14-test.8.js → rxjs.Cn6mAcb0.0.0.14.js} +1 -1
  55. package/dist/interface/socket.io-client.wHwPn3iN.0.0.14.js +1 -0
  56. package/dist/interface/socket.io-parser.CPmU8U6u.0.0.14.js +1 -0
  57. package/dist/interface/sw.js +1 -1
  58. package/dist/interface/system.CTvBwGOj.0.0.14.js +1 -0
  59. package/dist/interface/ui.ltvMH1es.0.0.14.js +1 -0
  60. package/dist/interface/{unidragger.alU8AluY.0.0.14-test.8.js → unidragger.CrbQd6Tw.0.0.14.js} +1 -1
  61. package/dist/interface/v-calendar.nDfqON1B.0.0.14.js +1 -0
  62. package/dist/interface/{vee-validate.D-fJ-yom.0.0.14-test.8.js → vee-validate.DQ8f4ION.0.0.14.js} +1 -1
  63. package/dist/interface/{vue-i18n.CtU7u0LB.0.0.14-test.8.js → vue-i18n.B4qiXH_H.0.0.14.js} +1 -1
  64. package/dist/interface/vue-inline-svg.DV5nngF9.0.0.14.js +1 -0
  65. package/dist/interface/{vue-router.L_2NU8Dj.0.0.14-test.8.js → vue-router.BcAjblcv.0.0.14.js} +1 -1
  66. package/dist/interface/{vue3-apexcharts.BJDuzr8x.0.0.14-test.8.js → vue3-apexcharts.DVRtMG4m.0.0.14.js} +1 -1
  67. package/dist/interface/vue3-dnd.CMRbSVyw.0.0.14.js +1 -0
  68. package/dist/interface/vue3-toastify.CfJCs4au.0.0.14.js +1 -0
  69. package/dist/interface/{vuetify.CqQaXzQw.0.0.14-test.8.js → vuetify.C9swI1mp.0.0.14.js} +1 -1
  70. package/dist/server/bin/cameraui.js +6 -3
  71. package/dist/server/bin/cameraui.js.map +1 -1
  72. package/dist/server/bin/installer/darwin.js +0 -2
  73. package/dist/server/bin/installer/darwin.js.map +1 -1
  74. package/dist/server/bin/installer/freebsd.js +2 -6
  75. package/dist/server/bin/installer/freebsd.js.map +1 -1
  76. package/dist/server/bin/installer/linux.js +2 -6
  77. package/dist/server/bin/installer/linux.js.map +1 -1
  78. package/dist/server/bin/installer/win32.js +0 -2
  79. package/dist/server/bin/installer/win32.js.map +1 -1
  80. package/dist/server/package.json +5 -6
  81. package/dist/server/requirements.txt +2 -2
  82. package/dist/server/src/api/controllers/cameras.controller.d.ts +2 -1
  83. package/dist/server/src/api/controllers/cameras.controller.js +30 -1
  84. package/dist/server/src/api/controllers/cameras.controller.js.map +1 -1
  85. package/dist/server/src/api/controllers/config.controller.js +2 -2
  86. package/dist/server/src/api/controllers/config.controller.js.map +1 -1
  87. package/dist/server/src/api/controllers/plugins.controller.js +4 -10
  88. package/dist/server/src/api/controllers/plugins.controller.js.map +1 -1
  89. package/dist/server/src/api/controllers/system.controller.js +6 -0
  90. package/dist/server/src/api/controllers/system.controller.js.map +1 -1
  91. package/dist/server/src/api/database/index.d.ts +1 -0
  92. package/dist/server/src/api/database/index.js +28 -6
  93. package/dist/server/src/api/database/index.js.map +1 -1
  94. package/dist/server/src/api/go2rtc/api/application.js.map +1 -1
  95. package/dist/server/src/api/go2rtc/api/config.js +2 -2
  96. package/dist/server/src/api/go2rtc/api/config.js.map +1 -1
  97. package/dist/server/src/api/go2rtc/api/snapshot.js.map +1 -1
  98. package/dist/server/src/api/go2rtc/api/streams.d.ts +2 -1
  99. package/dist/server/src/api/go2rtc/api/streams.js +12 -0
  100. package/dist/server/src/api/go2rtc/api/streams.js.map +1 -1
  101. package/dist/server/src/api/go2rtc/types.d.ts +44 -0
  102. package/dist/server/src/api/routes/cameras.routes.js +6 -0
  103. package/dist/server/src/api/routes/cameras.routes.js.map +1 -1
  104. package/dist/server/src/api/schemas/cameras.schema.js +1 -1
  105. package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
  106. package/dist/server/src/api/schemas/config.schema.d.ts +24 -96
  107. package/dist/server/src/api/schemas/config.schema.js +11 -31
  108. package/dist/server/src/api/schemas/config.schema.js.map +1 -1
  109. package/dist/server/src/api/schemas/go2rtc.schema.d.ts +93 -93
  110. package/dist/server/src/api/schemas/go2rtc.schema.js +13 -21
  111. package/dist/server/src/api/schemas/go2rtc.schema.js.map +1 -1
  112. package/dist/server/src/api/schemas/users.schema.d.ts +18 -18
  113. package/dist/server/src/api/schemas/users.schema.js +13 -2
  114. package/dist/server/src/api/schemas/users.schema.js.map +1 -1
  115. package/dist/server/src/api/services/cameras.service.d.ts +1 -5
  116. package/dist/server/src/api/services/cameras.service.js +0 -8
  117. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  118. package/dist/server/src/api/types/index.d.ts +5 -0
  119. package/dist/server/src/plugins/index.js +2 -2
  120. package/dist/server/src/plugins/index.js.map +1 -1
  121. package/dist/server/src/plugins/plugin.js +1 -1
  122. package/dist/server/src/plugins/plugin.js.map +1 -1
  123. package/dist/server/src/polyglot/node/decoder/child.js +5 -2
  124. package/dist/server/src/polyglot/node/decoder/child.js.map +1 -1
  125. package/dist/server/src/polyglot/python/decoder/child.py +4 -2
  126. package/dist/server/src/services/config/constants.js +1 -2
  127. package/dist/server/src/services/config/constants.js.map +1 -1
  128. package/dist/server/src/services/config/index.d.ts +4 -2
  129. package/dist/server/src/services/config/index.js +20 -7
  130. package/dist/server/src/services/config/index.js.map +1 -1
  131. package/dist/server/src/services/config/types.d.ts +8 -8
  132. package/dist/server/src/types.d.ts +3 -0
  133. package/dist/server/src/utils/npm.js +0 -1
  134. package/dist/server/src/utils/npm.js.map +1 -1
  135. package/package.json +5 -6
  136. package/upgrade-server.sh +65 -50
  137. package/dist/interface/@tanstack.CEN6a4k4.0.0.14-test.8.js +0 -1
  138. package/dist/interface/@vueform.Cm2d2h-o.0.0.14-test.8.js +0 -1
  139. package/dist/interface/@vueuse.Dlqgp-w1.0.0.14-test.8.js +0 -1
  140. package/dist/interface/Account.CrweQJlo.0.0.14-test.8.js +0 -1
  141. package/dist/interface/Adminpanel.DqGT-1k4.0.0.14-test.8.js +0 -2
  142. package/dist/interface/Appearance.Hj5Yb1ak.0.0.14-test.8.js +0 -1
  143. package/dist/interface/Backup.D1052gK1.0.0.14-test.8.js +0 -1
  144. package/dist/interface/Camera.Dq5uUUmI.0.0.14-test.8.js +0 -1
  145. package/dist/interface/Cameras.B7ddRLEX.0.0.14-test.8.js +0 -1
  146. package/dist/interface/Camview.D6sNtRsi.0.0.14-test.8.js +0 -1
  147. package/dist/interface/Config.71zp8_7o.0.0.14-test.8.js +0 -1
  148. package/dist/interface/Console.BOJh4_sX.0.0.14-test.8.js +0 -4
  149. package/dist/interface/FirstSteps.D-o6SUSa.0.0.14-test.8.js +0 -1
  150. package/dist/interface/Plugin.BEC17TFx.0.0.14-test.8.js +0 -1
  151. package/dist/interface/Plugins.C7OSPwHu.0.0.14-test.8.js +0 -1
  152. package/dist/interface/Recordings.C1SCcRUb.0.0.14-test.8.js +0 -1
  153. package/dist/interface/Recordings.DFhOe4PT.0.0.14-test.8.js +0 -1
  154. package/dist/interface/Settings.CihErPnV.0.0.14-test.8.js +0 -1
  155. package/dist/interface/System.GNuLdkC8.0.0.14-test.8.js +0 -4
  156. package/dist/interface/User.CP-UN9BY.0.0.14-test.8.js +0 -1
  157. package/dist/interface/VConfigEditor.vue_vue_type_script_setup_true_lang.Djbrm8M0.0.0.14-test.8.js +0 -2
  158. package/dist/interface/VConsole.DYxSI5WZ.0.0.14-test.8.js +0 -1
  159. package/dist/interface/VPlayer.De4chpqV.0.0.14-test.8.js +0 -1
  160. package/dist/interface/assets/Account.0.0.14-test.8.DlOUWknb.css +0 -1
  161. package/dist/interface/assets/FirstSteps.0.0.14-test.8.LZWhAsRR.css +0 -1
  162. package/dist/interface/assets/NewCamera.0.0.14-test.8.DJ3tUBT_.css +0 -1
  163. package/dist/interface/assets/Settings.0.0.14-test.8.BfSP_zcY.css +0 -1
  164. package/dist/interface/assets/User.0.0.14-test.8.BHWFyck9.css +0 -1
  165. package/dist/interface/assets/VPluginCard.0.0.14-test.8.C2GrhESv.css +0 -1
  166. package/dist/interface/assets/main.0.0.14-test.8.BPl82sqN.css +0 -1
  167. package/dist/interface/dnd-core.DGlBBcx8.0.0.14-test.8.js +0 -1
  168. package/dist/interface/engine.io-client.BwNOFMQY.0.0.14-test.8.js +0 -1
  169. package/dist/interface/ev-emitter.CfLOt-3p.0.0.14-test.8.js +0 -1
  170. package/dist/interface/fast-deep-equal.cMGmLqfp.0.0.14-test.8.js +0 -1
  171. package/dist/interface/linkify-it.CShhg1MA.0.0.14-test.8.js +0 -1
  172. package/dist/interface/main.HFLkPczd.0.0.14-test.8.js +0 -9
  173. package/dist/interface/plugins.TUp1uctX.0.0.14-test.8.js +0 -1
  174. package/dist/interface/react-dnd-touch-backend.DyDgbNbK.0.0.14-test.8.js +0 -1
  175. package/dist/interface/socket.io-client.8psAvb-i.0.0.14-test.8.js +0 -1
  176. package/dist/interface/socket.io-parser.C9mHhdq2.0.0.14-test.8.js +0 -1
  177. package/dist/interface/system.A8q_Qmef.0.0.14-test.8.js +0 -1
  178. package/dist/interface/ui.CWt12BwK.0.0.14-test.8.js +0 -1
  179. package/dist/interface/v-calendar.CNRVgVKX.0.0.14-test.8.js +0 -1
  180. package/dist/interface/vue-inline-svg.C1whQ_4v.0.0.14-test.8.js +0 -1
  181. package/dist/interface/vue3-dnd.DuHp9GWX.0.0.14-test.8.js +0 -1
  182. package/dist/interface/vue3-toastify.B7UO00zu.0.0.14-test.8.js +0 -1
  183. /package/dist/interface/{@babel.l0sNRNKZ.0.0.14-test.8.js → @babel.l0sNRNKZ.0.0.14.js} +0 -0
  184. /package/dist/interface/{@intlify.YW_pt133.0.0.14-test.8.js → @intlify.YW_pt133.0.0.14.js} +0 -0
  185. /package/dist/interface/{@mdi.jq8isxax.0.0.14-test.8.js → @mdi.jq8isxax.0.0.14.js} +0 -0
  186. /package/dist/interface/{@popperjs.BQBsAJpH.0.0.14-test.8.js → @popperjs.BQBsAJpH.0.0.14.js} +0 -0
  187. /package/dist/interface/{@react-dnd.CcwRs9xb.0.0.14-test.8.js → @react-dnd.CcwRs9xb.0.0.14.js} +0 -0
  188. /package/dist/interface/{@socket.io.Dkula2eQ.0.0.14-test.8.js → @socket.io.Dkula2eQ.0.0.14.js} +0 -0
  189. /package/dist/interface/{@vue.CIFymae3.0.0.14-test.8.js → @vue.CIFymae3.0.0.14.js} +0 -0
  190. /package/dist/interface/{@xterm.xg2Y-IKc.0.0.14-test.8.js → @xterm.DJzQYeiB.0.0.14.js} +0 -0
  191. /package/dist/interface/assets/{@vueform.0.0.14-test.8.h7tNX9p6.css → @vueform.0.0.14.h7tNX9p6.css} +0 -0
  192. /package/dist/interface/assets/{@xterm.0.0.14-test.8.CGrrDQr5.css → @xterm.0.0.14.CGrrDQr5.css} +0 -0
  193. /package/dist/interface/assets/{Backup.0.0.14-test.8.BIwaSlv3.css → Backup.0.0.14.BIwaSlv3.css} +0 -0
  194. /package/dist/interface/assets/{Cameras.0.0.14-test.8.D7bnvH42.css → Cameras.0.0.14.D7bnvH42.css} +0 -0
  195. /package/dist/interface/assets/{Camview.0.0.14-test.8.cgjDTjXy.css → Camview.0.0.14.cgjDTjXy.css} +0 -0
  196. /package/dist/interface/assets/{Console.0.0.14-test.8.DWrfRWs9.css → Console.0.0.14.DWrfRWs9.css} +0 -0
  197. /package/dist/interface/assets/{Plugin.0.0.14-test.8.BGZE7hpr.css → Plugin.0.0.14.BGZE7hpr.css} +0 -0
  198. /package/dist/interface/assets/{Plugins.0.0.14-test.8.Cwu0aGUO.css → Plugins.0.0.14.Cwu0aGUO.css} +0 -0
  199. /package/dist/interface/assets/{VConsole.0.0.14-test.8.BZT1WyS-.css → VConsole.0.0.14.BZT1WyS-.css} +0 -0
  200. /package/dist/interface/assets/{highlight.0.0.14-test.8.DgoK_Xib.css → highlight.0.0.14.DgoK_Xib.css} +0 -0
  201. /package/dist/interface/assets/{logo-256.0.0.14-test.8.BCQk9H1-.png → logo-256.0.0.14.BCQk9H1-.png} +0 -0
  202. /package/dist/interface/assets/{logo-512.0.0.14-test.8.DLKVOU2S.png → logo-512.0.0.14.DLKVOU2S.png} +0 -0
  203. /package/dist/interface/assets/{logo.0.0.14-test.8.DmEiRk0z.png → logo.0.0.14.DmEiRk0z.png} +0 -0
  204. /package/dist/interface/assets/{mode-json.0.0.14-test.8.Br7xisR1.js → mode-json.0.0.14.Br7xisR1.js} +0 -0
  205. /package/dist/interface/assets/{mode-yaml.0.0.14-test.8.CIYL8U3d.js → mode-yaml.0.0.14.CIYL8U3d.js} +0 -0
  206. /package/dist/interface/assets/{v-calendar.0.0.14-test.8.CtSuDYZU.css → v-calendar.0.0.14.CtSuDYZU.css} +0 -0
  207. /package/dist/interface/assets/{vue3-toastify.0.0.14-test.8.DTY1DMRs.css → vue3-toastify.0.0.14.DTY1DMRs.css} +0 -0
  208. /package/dist/interface/assets/{vuetify.0.0.14-test.8.DPyVfAPv.css → vuetify.0.0.14.DPyVfAPv.css} +0 -0
  209. /package/dist/interface/{axios.BI2i94Vb.0.0.14-test.8.js → axios.BI2i94Vb.0.0.14.js} +0 -0
  210. /package/dist/interface/{compare-versions.DqEOhma6.0.0.14-test.8.js → compare-versions.DqEOhma6.0.0.14.js} +0 -0
  211. /package/dist/interface/{dijkstrajs.D_NXgYpA.0.0.14-test.8.js → dijkstrajs.D_NXgYpA.0.0.14.js} +0 -0
  212. /package/dist/interface/{engine.io-parser.BiEtp6m2.0.0.14-test.8.js → engine.io-parser.BiEtp6m2.0.0.14.js} +0 -0
  213. /package/dist/interface/{entities.C20TfXL6.0.0.14-test.8.js → entities.C20TfXL6.0.0.14.js} +0 -0
  214. /package/dist/interface/{get-size.D1dS-IaP.0.0.14-test.8.js → get-size.D1dS-IaP.0.0.14.js} +0 -0
  215. /package/dist/interface/{mdurl.k9Sl0PQj.0.0.14-test.8.js → mdurl.k9Sl0PQj.0.0.14.js} +0 -0
  216. /package/dist/interface/{punycode.js.Dj65hjkv.0.0.14-test.8.js → punycode.js.Dj65hjkv.0.0.14.js} +0 -0
  217. /package/dist/interface/{react-dnd-html5-backend.1HQjlkwI.0.0.14-test.8.js → react-dnd-html5-backend.1HQjlkwI.0.0.14.js} +0 -0
  218. /package/dist/interface/{redux.CuxFRhX_.0.0.14-test.8.js → redux.CuxFRhX_.0.0.14.js} +0 -0
  219. /package/dist/interface/{tslib.9k7AwCpt.0.0.14-test.8.js → tslib.9k7AwCpt.0.0.14.js} +0 -0
  220. /package/dist/interface/{uc.micro.kMc2yuuw.0.0.14-test.8.js → uc.micro.kMc2yuuw.0.0.14.js} +0 -0
  221. /package/dist/interface/{utils.BvINh1mj.0.0.14-test.8.js → utils.BvINh1mj.0.0.14.js} +0 -0
  222. /package/dist/interface/{uuid.DvF23Exx.0.0.14-test.8.js → uuid.DvF23Exx.0.0.14.js} +0 -0
  223. /package/dist/interface/{vue.l0sNRNKZ.0.0.14-test.8.js → vue.l0sNRNKZ.0.0.14.js} +0 -0
  224. /package/dist/interface/{zod.BaF2dDCd.0.0.14-test.8.js → zod.BaF2dDCd.0.0.14.js} +0 -0
@@ -1,4 +1,4 @@
1
- import{C as xe,c as ke,_ as Se}from"./VPlayer.De4chpqV.0.0.14-test.8.js";import{f as Te,w as Pe,d as Re}from"./main.HFLkPczd.0.0.14-test.8.js";import{F as Ae,r as v,D as Ie,c as Ce,w as Ve,e as d,f as k,M as n,R as a,u as e,i as G,n as Y,j as u,T as l,V as h,m as V,N as K,Q as q,O as P,q as _,l as M,X as He}from"./@vue.CIFymae3.0.0.14-test.8.js";import{H as A,t as je,y as Ee,j as Oe,p as Ge}from"./highlight.js.lYuI7WoP.0.0.14-test.8.js";import{e as J,s as Me,E as Ue,F as $e,X,Y as Le,Z as We}from"./@mdi.jq8isxax.0.0.14-test.8.js";import{j as De}from"./@vueuse.Dlqgp-w1.0.0.14-test.8.js";import{M as Be}from"./markdown-it.VzoriHTT.0.0.14-test.8.js";import{F as I,a as Fe}from"./vee-validate.D-fJ-yom.0.0.14-test.8.js";import{s as ze}from"./utils.BvINh1mj.0.0.14-test.8.js";import{a as Ne}from"./vue-router.L_2NU8Dj.0.0.14-test.8.js";import{b as S,e as x,K as Q,L as Z,M as ee,N as te,c as oe,y as L,m as Ye,O as Ke,V as ae}from"./vuetify.CqQaXzQw.0.0.14-test.8.js";import"./qrcode.Bwtigvqd.0.0.14-test.8.js";import"./dijkstrajs.D_NXgYpA.0.0.14-test.8.js";import"./zod.BaF2dDCd.0.0.14-test.8.js";import"./pinia.Ca3uWOFQ.0.0.14-test.8.js";import"./@vee-validate.B1gWs4un.0.0.14-test.8.js";import"./vue3-toastify.B7UO00zu.0.0.14-test.8.js";import"./plugins.TUp1uctX.0.0.14-test.8.js";import"./@tanstack.CEN6a4k4.0.0.14-test.8.js";import"./draggabilly.D232zztK.0.0.14-test.8.js";import"./@xterm.xg2Y-IKc.0.0.14-test.8.js";import"./get-size.D1dS-IaP.0.0.14-test.8.js";import"./unidragger.alU8AluY.0.0.14-test.8.js";import"./ev-emitter.CfLOt-3p.0.0.14-test.8.js";import"./vue-inline-svg.C1whQ_4v.0.0.14-test.8.js";import"./vue-i18n.CtU7u0LB.0.0.14-test.8.js";import"./@intlify.YW_pt133.0.0.14-test.8.js";import"./axios.BI2i94Vb.0.0.14-test.8.js";import"./uuid.DvF23Exx.0.0.14-test.8.js";import"./socket.io-client.8psAvb-i.0.0.14-test.8.js";import"./engine.io-client.BwNOFMQY.0.0.14-test.8.js";import"./engine.io-parser.BiEtp6m2.0.0.14-test.8.js";import"./@socket.io.Dkula2eQ.0.0.14-test.8.js";import"./socket.io-parser.C9mHhdq2.0.0.14-test.8.js";import"./rxjs.BVPfvhKU.0.0.14-test.8.js";import"./tslib.9k7AwCpt.0.0.14-test.8.js";import"./v-calendar.CNRVgVKX.0.0.14-test.8.js";import"./@popperjs.BQBsAJpH.0.0.14-test.8.js";import"./nprogress.CxN4JN9q.0.0.14-test.8.js";import"./mdurl.k9Sl0PQj.0.0.14-test.8.js";import"./uc.micro.kMc2yuuw.0.0.14-test.8.js";import"./entities.C20TfXL6.0.0.14-test.8.js";import"./linkify-it.CShhg1MA.0.0.14-test.8.js";import"./punycode.js.Dj65hjkv.0.0.14-test.8.js";const ne=["bubble://","dvrip://","echo:","exec:","expr:","ffmpeg:","gopro://","hass:","homekit://","http://","https://","httpx://","isapi://","ivideon:","kasa://","nest:","onvif://","roborock://","rtmp://","rtsp://","rtspx://","tapo://","tcp://","webrtc:","webtorrent:"],qe=["#backchannel=0","#header=","#media=audio","#media=video","#timeout=10","#timeout=20","#timeout=30","#transport="],se=["#audio=aac","#audio=aac/16000","#audio=mp3","#audio=opus","#audio=pcm","#audio=pcm/8000","#audio=pcm/16000","#audio=pcm/48000","#audio=pcma","#audio=pcma/8000","#audio=pcma/16000","#audio=pcma/48000","#audio=pcml","#audio=pcml/8000","#audio=pcml/44100","#audio=pcmu","#audio=pcmu/8000","#audio=pcmu/16000","#audio=pcmu/48000","#drawtext","#hardware","#hardware=cuda","#hardware=dxva2","#hardware=rkmpp","#hardware=v4l2m2m","#hardware=vaapi","#hardware=videotoolbox","#height=","#raw=","#rotate=-90","#rotate=90","#rotate=180","#rotate=270","#video=copy","#video=h264","#video=h265","#video=mjpeg","#width="],Je=["client_id=","client_private=","device_id=","device_public="],Xe=["#header="],Qe=["client_id=","client_secret=","refresh_token=","project_id=","device_id="],Ze=["#client_id=","#format=openipc","#format=wyze","#format=kinesis","#ice_servers="],et="#### Source: Bubble\n\nOther names: [ESeeCloud](http://www.eseecloud.com/), [dvr163](http://help.dvr163.com/).\n\n- you can skip `username`, `password`, `port`, `ch` and `stream` if they are default\n- setup separate streams for different channels and streams\n\n```yaml\nstreams:\n camera1: bubble://username:password@192.168.1.123:34567/bubble/live?ch=0&stream=0\n```\n\n_Source: [Go2Rtc Bubble](https://github.com/AlexxIT/go2rtc#source-bubble)_\n",tt="#### Source: DVRIP\n\nOther names: DVR-IP, NetSurveillance, Sofia protocol (NETsurveillance ActiveX plugin XMeye SDK).\n\n- you can skip `username`, `password`, `port`, `channel` and `subtype` if they are default\n- setup separate streams for different channels\n- use `subtype=0` for Main stream, and `subtype=1` for Extra1 stream\n- only the TCP protocol is supported\n\n```yaml\nstreams:\n only_stream: dvrip://username:password@192.168.1.123:34567?channel=0&subtype=0\n only_tts: dvrip://username:password@192.168.1.123:34567?backchannel=1\n two_way_audio:\n - dvrip://username:password@192.168.1.123:34567?channel=0&subtype=0\n - dvrip://username:password@192.168.1.123:34567?backchannel=1\n```\n\n_Source: [Go2Rtc DVRIP](https://github.com/AlexxIT/go2rtc#source-dvrip)_\n",ot=`#### Source: Echo
1
+ import{C as xe,c as ke,_ as Se}from"./VPlayer.BdDvEUtF.0.0.14.js";import{f as Te,w as Pe,d as Re}from"./main.BKyGw-1O.0.0.14.js";import{F as Ae,r as v,D as Ie,c as Ce,w as Ve,e as d,f as k,M as n,R as a,u as e,i as G,n as Y,j as u,T as l,V as h,m as V,N as K,Q as q,O as P,q as _,l as M,X as He}from"./@vue.CIFymae3.0.0.14.js";import{H as A,t as je,y as Ee,j as Oe,p as Ge}from"./highlight.js.Bcczinar.0.0.14.js";import{e as J,s as Me,E as Ue,F as $e,X,Y as Le,Z as We}from"./@mdi.jq8isxax.0.0.14.js";import{j as De}from"./@vueuse.GozpFDMZ.0.0.14.js";import{M as Be}from"./markdown-it.DOljZfaF.0.0.14.js";import{F as I,a as Fe}from"./vee-validate.DQ8f4ION.0.0.14.js";import{s as ze}from"./utils.BvINh1mj.0.0.14.js";import{a as Ne}from"./vue-router.BcAjblcv.0.0.14.js";import{b as S,e as x,K as Q,L as Z,M as ee,N as te,c as oe,y as L,m as Ye,O as Ke,V as ae}from"./vuetify.C9swI1mp.0.0.14.js";import"./qrcode.CZ-rkxD4.0.0.14.js";import"./dijkstrajs.D_NXgYpA.0.0.14.js";import"./zod.BaF2dDCd.0.0.14.js";import"./pinia.81SobSxK.0.0.14.js";import"./@vee-validate.Dhm2s2jJ.0.0.14.js";import"./vue3-toastify.CfJCs4au.0.0.14.js";import"./plugins.XWRvgFHD.0.0.14.js";import"./@tanstack.Cvca3GsJ.0.0.14.js";import"./draggabilly.DVAyE9_D.0.0.14.js";import"./@xterm.DJzQYeiB.0.0.14.js";import"./get-size.D1dS-IaP.0.0.14.js";import"./unidragger.CrbQd6Tw.0.0.14.js";import"./ev-emitter.Bw9npPB3.0.0.14.js";import"./vue-inline-svg.DV5nngF9.0.0.14.js";import"./vue-i18n.B4qiXH_H.0.0.14.js";import"./@intlify.YW_pt133.0.0.14.js";import"./axios.BI2i94Vb.0.0.14.js";import"./uuid.DvF23Exx.0.0.14.js";import"./socket.io-client.wHwPn3iN.0.0.14.js";import"./engine.io-client.Co7SlJ1E.0.0.14.js";import"./engine.io-parser.BiEtp6m2.0.0.14.js";import"./@socket.io.Dkula2eQ.0.0.14.js";import"./socket.io-parser.CPmU8U6u.0.0.14.js";import"./rxjs.Cn6mAcb0.0.0.14.js";import"./tslib.9k7AwCpt.0.0.14.js";import"./v-calendar.nDfqON1B.0.0.14.js";import"./@popperjs.BQBsAJpH.0.0.14.js";import"./nprogress.y4ho8UN3.0.0.14.js";import"./mdurl.k9Sl0PQj.0.0.14.js";import"./uc.micro.kMc2yuuw.0.0.14.js";import"./entities.C20TfXL6.0.0.14.js";import"./linkify-it.BUeGIfuB.0.0.14.js";import"./punycode.js.Dj65hjkv.0.0.14.js";const ne=["bubble://","dvrip://","echo:","exec:","expr:","ffmpeg:","gopro://","hass:","homekit://","http://","https://","httpx://","isapi://","ivideon:","kasa://","nest:","onvif://","roborock://","rtmp://","rtsp://","rtspx://","tapo://","tcp://","webrtc:","webtorrent:"],qe=["#backchannel=0","#header=","#media=audio","#media=video","#timeout=10","#timeout=20","#timeout=30","#transport="],se=["#audio=aac","#audio=aac/16000","#audio=mp3","#audio=opus","#audio=pcm","#audio=pcm/8000","#audio=pcm/16000","#audio=pcm/48000","#audio=pcma","#audio=pcma/8000","#audio=pcma/16000","#audio=pcma/48000","#audio=pcml","#audio=pcml/8000","#audio=pcml/44100","#audio=pcmu","#audio=pcmu/8000","#audio=pcmu/16000","#audio=pcmu/48000","#drawtext","#hardware","#hardware=cuda","#hardware=dxva2","#hardware=rkmpp","#hardware=v4l2m2m","#hardware=vaapi","#hardware=videotoolbox","#height=","#raw=","#rotate=-90","#rotate=90","#rotate=180","#rotate=270","#video=copy","#video=h264","#video=h265","#video=mjpeg","#width="],Je=["client_id=","client_private=","device_id=","device_public="],Xe=["#header="],Qe=["client_id=","client_secret=","refresh_token=","project_id=","device_id="],Ze=["#client_id=","#format=openipc","#format=wyze","#format=kinesis","#ice_servers="],et="#### Source: Bubble\n\nOther names: [ESeeCloud](http://www.eseecloud.com/), [dvr163](http://help.dvr163.com/).\n\n- you can skip `username`, `password`, `port`, `ch` and `stream` if they are default\n- setup separate streams for different channels and streams\n\n```yaml\nstreams:\n camera1: bubble://username:password@192.168.1.123:34567/bubble/live?ch=0&stream=0\n```\n\n_Source: [Go2Rtc Bubble](https://github.com/AlexxIT/go2rtc#source-bubble)_\n",tt="#### Source: DVRIP\n\nOther names: DVR-IP, NetSurveillance, Sofia protocol (NETsurveillance ActiveX plugin XMeye SDK).\n\n- you can skip `username`, `password`, `port`, `channel` and `subtype` if they are default\n- setup separate streams for different channels\n- use `subtype=0` for Main stream, and `subtype=1` for Extra1 stream\n- only the TCP protocol is supported\n\n```yaml\nstreams:\n only_stream: dvrip://username:password@192.168.1.123:34567?channel=0&subtype=0\n only_tts: dvrip://username:password@192.168.1.123:34567?backchannel=1\n two_way_audio:\n - dvrip://username:password@192.168.1.123:34567?channel=0&subtype=0\n - dvrip://username:password@192.168.1.123:34567?backchannel=1\n```\n\n_Source: [Go2Rtc DVRIP](https://github.com/AlexxIT/go2rtc#source-dvrip)_\n",ot=`#### Source: Echo
2
2
 
3
3
  Some sources may have a dynamic link. And you will need to get it using a bash or python script. Your script should echo a link to the source. RTSP, FFmpeg or any of the [supported sources](https://github.com/AlexxIT/go2rtc#module-streams).
4
4
 
@@ -445,4 +445,4 @@ streams:
445
445
  \`\`\`
446
446
 
447
447
  _Source: [Go2Rtc Webtorrent](https://github.com/AlexxIT/go2rtc#source-webtorrent)_
448
- `,yt={class:"page-title"},xt={class:"window"},kt={class:"subview-title text-color"},St={class:"relative"},Tt={for:"name",class:"v-label"},Pt={class:"mt-5"},Rt={class:"subview-title text-color"},At={class:"flex flex-row items-center justify-center ml-auto"},It={class:"relative w-full flex flex-col"},Ct=["for"],Vt=["for"],Ht=["for"],jt={key:0,class:"w-full flex flex-row justify-center my-1"},Et={class:"ml-2 flex items-center justify-center",style:{"max-height":"44px"}},Ot={class:"w-full flex flex-row justify-center my-1"},Gt={class:"ml-2 flex items-center justify-center",style:{"max-height":"44px"}},Mt={class:"flex items-center ml-auto"},Ut={class:"flex flex-row w-full items-center justify-center mt-3"},$t={key:0,class:"w-full h-full"},Lt=["innerHTML"],Wt={key:1,class:"w-full h-full flex items-center justify-center"},Dt={key:0,class:"w-full h-full flex items-center justify-center"},Bt=Ae({__name:"NewCamera",setup(Ft){A.registerLanguage("typescript",je),A.registerLanguage("yaml",Ee),A.registerLanguage("json",Oe),A.registerLanguage("python",Ge);const{smallMobileActive:H,extraSmallMobileActive:U}=Te(),re=Ne(),W=new xe,ie=v(new Set),ce=v(),le=v(!1),$=v(0),j=v([0]),R=v(),me=v(["high-resolution","mid-resolution","low-resolution","snapshot"]),E=Ie(),C=v(!1),O=v(!1),f=v({disabled:!1,name:"",info:{manufacturer:"",model:"",hardware:"",serialNumber:"",firmwareVersion:"",supportUrl:""},sources:[{name:"",roles:[],urls:[{protocol:"rtsp://",url:[]}]}],recording:{enabled:!1},interface:{streamingMode:"webrtc"},extensions:{hub:[],plugins:[]}}),{mutate:ue,isPending:pe}=W.createCameraQuery(),{mutateAsync:de,isPending:he}=W.previewCameraQuery(),p=Ce(()=>pe.value||le.value),D=Be("commonmark",{highlight(o,t){if(t&&A.getLanguage(t))try{return'<pre><code class="hljs">'+A.highlight(o,{language:t,ignoreIllegals:!0}).value+"</code></pre>"}catch{}return'<pre><code class="hljs">'+D.utils.escapeHtml(o)+"</code></pre>"}});Ve(C,o=>{o||setTimeout(()=>{E.value={presets:[],md:void 0}},300)});const ge=o=>{f.value.sources[o].urls.push({protocol:"rtsp://",url:[]})},fe=(o,t)=>{f.value.sources[o].urls.splice(t,1)},be=()=>{f.value.sources.push({name:"",roles:[],urls:[{protocol:"rtsp://",url:[]}]}),j.value=[f.value.sources.length]},we=o=>{f.value.sources.splice(o,1)},B=o=>{let t,s,b;switch(o){case"bubble://":t=[],s=Object.assign({"../markdowns/bubble.md":et});break;case"dvrip://":t=[],s=Object.assign({"../markdowns/dvrip.md":tt});break;case"echo:":t=[],s=Object.assign({"../markdowns/echo.md":ot});break;case"exec:":t=[],s=Object.assign({"../markdowns/exec.md":at});break;case"expr:":t=[],s=Object.assign({"../markdowns/expr.md":nt});break;case"ffmpeg:":t=se,s=Object.assign({"../markdowns/ffmpeg.md":st});break;case"gopro://":t=se,s=Object.assign({"../markdowns/gopro.md":rt});break;case"hass:":t=[],s=Object.assign({"../markdowns/hass.md":it});break;case"homekit://":t=Je,s=Object.assign({"../markdowns/homekit.md":ct});break;case"http://":case"https://":case"httpx://":case"tcp://":t=Xe,s=Object.assign({"../markdowns/http.md":lt});break;case"isapi://":t=[],s=Object.assign({"../markdowns/isapi.md":mt});break;case"ivideon:":t=[],s=Object.assign({"../markdowns/ivideon.md":ut});break;case"kasa://":t=[],s=Object.assign({"../markdowns/kasa.md":pt});break;case"nest:":t=Qe,s=Object.assign({"../markdowns/nest.md":dt});break;case"onvif://":t=[],s=Object.assign({"../markdowns/onvif.md":ht});break;case"roborock://":t=[],s=Object.assign({"../markdowns/roborock.md":gt});break;case"rtmp://":t=[],s=Object.assign({"../markdowns/rtmp.md":ft});break;case"rtsp://":case"rtspx://":t=qe,s=Object.assign({"../markdowns/rtsp.md":bt});break;case"tapo://":t=[],s=Object.assign({"../markdowns/tapo.md":wt});break;case"webrtc:":t=Ze,s=Object.assign({"../markdowns/webrtc.md":vt});break;case"webtorrent:":t=[],s=Object.assign({"../markdowns/webtorrent.md":_t});break;default:t=[],s=void 0;break}return s&&(b=Object.values(s)[0]),E.value={presets:t,md:b},{presets:t,md:b}},F=o=>{B(o),C.value=!0},ve=async o=>{R.value=void 0,O.value=!0;const t=o.url.join(""),b={url:t.includes(o.protocol)?t:`${o.protocol}${t}`},r=await de({cameraData:b});R.value=r?`data:image/jpeg;base64,${r}`:"ERROR",R.value!=="ERROR"&&ie.value.add(b.url)},_e=o=>({...o,pluginId:"native",type:"camera",isCloud:!1,hasLight:!1,hasSiren:!1,hasBinarySensor:!1,hasBattery:!1,activityZones:[],activitySettings:{motion:{timeout:20},object:{confidence:.7}},frameWorkerSettings:{decoder:"wasm",fps:10,resolution:640},sources:o.sources.map(s=>{let b=s.urls.map(r=>{if(r.url){const c=r.url.join("");return c.includes(r.protocol)?c:`${r.protocol}${c}`}}).filter(Boolean);return{_id:"",...s,urls:b}})}),ye=o=>{const{isLoading:t}=De(0,{parent:".topbar"});t.value=!0;let s=_e(o);ue({cameraData:s},{onSuccess:async()=>{t.value=!1,await ze(500),re.push({path:"/cameras"})}})},z=(o,t)=>{t.protocol=o};return(o,t)=>{const s=Pe,b=Se;return d(),k("main",{class:Y(["w-full h-full",{"px-0":e(H)}])},[n(e(Fe),{ref_key:"cameraVeeForm",ref:ce,class:"firststeps-form flex flex-col h-full w-full","validation-schema":e(ke),"initial-values":e(f),onSubmit:t[3]||(t[3]=r=>ye(r))},{default:a(()=>[u("div",{class:Y(["mb-3 flex items-center",{"mx-2":e(H)}]),style:{height:"30px"}},[u("h1",yt,l(o.$t("views.new_camera.title")),1),n(S,{loading:e(p),variant:"text",color:"green",type:"submit",class:"ml-auto"},{default:a(()=>[n(x,{size:"15",class:"mr-1"},{default:a(()=>[h(l(e(J)),1)]),_:1}),h(" "+l(o.$t("components.form.button.add")),1)]),_:1},8,["loading"])],2),u("div",xt,[u("div",null,[u("span",kt,l(o.$t("components.form.label.camera")),1),n(Q,{modelValue:e($),"onUpdate:modelValue":t[1]||(t[1]=r=>G($)?$.value=r:null),class:"inner-component mt-2"},{default:a(()=>[n(Z,{elevation:"0",value:1},{default:a(()=>[n(ee,{style:{height:"48px"},class:"truncate"},{default:a(()=>[h(l(o.$t("views.new_camera.camera")),1)]),_:1}),n(te,{eager:""},{default:a(()=>[u("div",St,[n(e(I),{modelValue:e(f).name,"onUpdate:modelValue":t[0]||(t[0]=r=>e(f).name=r),name:"name"},{default:a(({field:r,errorMessage:c,errors:i})=>[u("label",Tt,l(o.$t("components.form.label.camera_name")),1),n(oe,V({loading:e(p),variant:"outlined",name:"name",type:"text",density:"compact"},r,{error:i.length>0,"error-messages":c}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),u("div",Pt,[u("span",Rt,l(o.$t("components.form.label.camera_sources")),1),n(Q,{modelValue:e(j),"onUpdate:modelValue":t[2]||(t[2]=r=>G(j)?j.value=r:null),class:"inner-component mt-2",multiple:"",variant:"accordion"},{default:a(()=>[(d(!0),k(K,null,q(e(f).sources,(r,c)=>(d(),P(Z,{key:c,value:c+1,elevation:"0",style:He(e(H)?"border-radius: 0px !important":"")},{default:a(()=>[n(ee,{style:{height:"48px"},class:"truncate"},{actions:a(({expanded:i})=>[u("div",At,[n(S,{disabled:e(f).sources.length<2||e(p),size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:_(g=>we(c),["stop"])},{default:a(()=>[n(x,null,{default:a(()=>[h(l(e(Me)),1)]),_:1})]),_:2},1032,["disabled","onClick"]),i?(d(),P(x,{key:0,size:"22.5"},{default:a(()=>[h(l(e(Ue)),1)]),_:1})):(d(),P(x,{key:1,size:"22.5"},{default:a(()=>[h(l(e($e)),1)]),_:1}))])]),default:a(()=>[h(l(o.$t("views.new_camera.source")+": "+c)+" ",1)]),_:2},1024),n(te,{eager:""},{default:a(()=>[u("div",It,[n(e(I),{modelValue:r.name,"onUpdate:modelValue":i=>r.name=i,name:`sources[${c}].name`},{default:a(({field:i,errorMessage:g,errors:m})=>[u("label",{for:`sources[${c}].name`,class:"v-label"},l(o.$t("components.form.label.source_name")),9,Ct),n(oe,V({loading:e(p),variant:"outlined",name:`sources[${c}].name`,type:"text",density:"compact",ref_for:!0},i,{error:m.length>0,"error-messages":g}),null,16,["loading","name","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"]),n(e(I),{modelValue:r.roles,"onUpdate:modelValue":i=>r.roles=i,name:`sources[${c}].roles`},{default:a(({field:i,errorMessage:g,errors:m})=>[u("label",{for:`sources[${c}].roles`,class:"v-label"},l(o.$t("components.form.label.source_role")),9,Vt),n(L,V({loading:e(p),items:e(me).filter(y=>!e(f).sources.some((T,w)=>{var N;return((N=T.roles)==null?void 0:N.includes(y))&&w!==c})),variant:"outlined",name:`sources[${c}].roles`,type:"text",density:"compact",chips:"",multiple:"",clearable:"",ref_for:!0},i,{error:m.length>0,"error-messages":g,"model-value":i.value,onKeydown:_(()=>null,["prevent"])}),{chip:a(({item:y})=>[n(Ye,{color:"#df2a4c"},{default:a(()=>[h(l(y.title),1)]),_:2},1024)]),_:2},1040,["loading","items","name","error","error-messages","model-value"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"]),u("label",{for:`sources[${c}].urls[].url`,class:"v-label"},l(o.$t("components.form.label.camera_sources")),9,Ht),(d(!0),k(K,null,q(r.urls,(i,g)=>(d(),k("div",{key:g},[e(U)?(d(),k("div",jt,[n(e(I),{modelValue:i.protocol,"onUpdate:modelValue":m=>i.protocol=m,name:`sources[${c}].urls[${g}].protocol`},{default:a(({field:m,errors:y,errorMessage:T})=>[n(L,V({loading:e(p),items:e(ne),"hide-no-data":"","hide-details":"",variant:"outlined",name:`sources[${c}].urls[${g}].protocol`,type:"text",density:"compact",class:"camera-protocol",ref_for:!0},m,{error:y.length>0,"error-messages":T,"model-value":m.value,onKeydown:_(()=>null,["prevent"]),"onUpdate:modelValue":w=>z(w,i)}),null,16,["loading","items","name","error","error-messages","model-value","onUpdate:modelValue"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"]),u("div",Et,[n(S,{disabled:e(p),color:"#5e5e5e",density:"compact",icon:"",variant:"text",onClick:_(m=>F(i.protocol),["prevent"])},{default:a(()=>[n(x,{size:"20"},{default:a(()=>[h(l(e(X)),1)]),_:1})]),_:2},1032,["disabled","onClick"])])])):M("",!0),u("div",Ot,[e(U)?M("",!0):(d(),P(e(I),{key:0,modelValue:i.protocol,"onUpdate:modelValue":m=>i.protocol=m,name:`sources[${c}].urls[${g}].protocol`},{default:a(({field:m,errors:y,errorMessage:T})=>[n(L,V({loading:e(p),items:e(ne),"hide-no-data":"","hide-details":"",variant:"outlined",name:`sources[${c}].urls[${g}].protocol`,type:"text",density:"compact",style:{"min-width":"125px","max-width":"125px","min-height":"40px","max-height":"40px"},class:"camera-protocol",ref_for:!0},m,{error:y.length>0,"error-messages":T,"model-value":m.value,onKeydown:_(()=>null,["prevent"]),"onUpdate:modelValue":w=>z(w,i)}),null,16,["loading","items","name","error","error-messages","model-value","onUpdate:modelValue"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"])),n(e(I),{modelValue:i.url,"onUpdate:modelValue":m=>i.url=m,name:`sources[${c}].urls[${g}].url`},{default:a(({field:m,errorMessage:y,errors:T})=>[n(Ke,{modelValue:i.url,"onUpdate:modelValue":[w=>i.url=w,w=>m.value=w],loading:e(p),clearable:"",chips:"",multiple:"",items:B(i.protocol).presets,variant:"outlined",name:`sources[${c}].urls[${g}].url`,type:"text",density:"compact",class:"camera-source",error:T.length>0,"error-messages":y},{"append-inner":a(()=>[r.urls.length>1?(d(),P(S,{key:0,size:"28",variant:"text",rounded:"",density:"compact",color:"red",disabled:r.urls.length<2||e(p),onClick:_(w=>fe(c,g),["prevent"])},{default:a(()=>[n(x,{size:"20"},{default:a(()=>[h(l(e(Le)),1)]),_:1})]),_:2},1032,["disabled","onClick"])):M("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","loading","items","name","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"]),u("div",Gt,[n(S,{disabled:!i.protocol||!i.url.length||e(p),color:"#5e5e5e",density:"compact",icon:"",variant:"text",onClick:_(m=>ve(i),["prevent"])},{default:a(()=>[n(x,{size:"20"},{default:a(()=>[h(l(e(We)),1)]),_:1})]),_:2},1032,["disabled","onClick"]),e(U)?M("",!0):(d(),P(S,{key:0,disabled:e(p),color:"#5e5e5e",density:"compact",icon:"",variant:"text",onClick:_(m=>F(i.protocol),["prevent"])},{default:a(()=>[n(x,{size:"20"},{default:a(()=>[h(l(e(X)),1)]),_:1})]),_:2},1032,["disabled","onClick"]))])])]))),128)),u("div",Mt,[n(S,{disabled:e(p),color:"#df2a4c",variant:"flat",onClick:_(i=>ge(c),["prevent"])},{default:a(()=>[h(l(o.$t("components.form.button.add_source")),1)]),_:2},1032,["disabled","onClick"])])])]),_:2},1024)]),_:2},1032,["value","style"]))),128))]),_:1},8,["modelValue"]),u("div",Ut,[n(S,{disabled:e(p),variant:"text",color:"#df2a4c",icon:"",onClick:_(be,["prevent"])},{default:a(()=>[n(x,{size:"30"},{default:a(()=>[h(l(e(J)),1)]),_:1})]),_:1},8,["disabled"])])])])]),_:1},8,["validation-schema","initial-values"]),n(s,{modelValue:e(C),"onUpdate:modelValue":t[4]||(t[4]=r=>G(C)?C.value=r:null),title:o.$t("components.dialog.title.information"),loading:e(p),"hide-confirm-button":""},{content:a(()=>{var r;return[(r=e(E))!=null&&r.md?(d(),k("div",$t,[u("div",{class:"w-full markdown-body",innerHTML:e(D).render(e(E).md)},null,8,Lt)])):(d(),k("div",Wt,[n(ae,{color:"#df2a4c",indeterminate:""})]))]}),_:1},8,["modelValue","title","loading"]),n(s,{modelValue:e(O),"onUpdate:modelValue":t[5]||(t[5]=r=>G(O)?O.value=r:null),title:o.$t("components.dialog.title.preview"),loading:e(p),"hide-confirm-button":""},{content:a(()=>[!e(R)||e(he)?(d(),k("div",Dt,[n(ae,{color:"#df2a4c",indeterminate:""})])):(d(),P(b,{key:1,class:"mt-5 inner-component","show-camera-name":"","current-camera":e(R),"border-radius":e(H)?0:3,border:!1,target:"preview","preview-src":e(R),"button-elevation":"1"},null,8,["current-camera","border-radius","preview-src"]))]),_:1},8,["modelValue","title","loading"])],2)}}}),Go=Re(Bt,[["__scopeId","data-v-65da19aa"]]);export{Go as default};
448
+ `,yt={class:"page-title"},xt={class:"window"},kt={class:"subview-title text-color"},St={class:"relative"},Tt={for:"name",class:"v-label"},Pt={class:"mt-5"},Rt={class:"subview-title text-color"},At={class:"flex flex-row items-center justify-center ml-auto"},It={class:"relative w-full flex flex-col"},Ct=["for"],Vt=["for"],Ht=["for"],jt={key:0,class:"w-full flex flex-row justify-center my-1"},Et={class:"ml-2 flex items-center justify-center",style:{"max-height":"44px"}},Ot={class:"w-full flex flex-row justify-center my-1"},Gt={class:"ml-2 flex items-center justify-center",style:{"max-height":"44px"}},Mt={class:"flex items-center ml-auto"},Ut={class:"flex flex-row w-full items-center justify-center mt-3"},$t={key:0,class:"w-full h-full"},Lt=["innerHTML"],Wt={key:1,class:"w-full h-full flex items-center justify-center"},Dt={key:0,class:"w-full h-full flex items-center justify-center"},Bt=Ae({__name:"NewCamera",setup(Ft){A.registerLanguage("typescript",je),A.registerLanguage("yaml",Ee),A.registerLanguage("json",Oe),A.registerLanguage("python",Ge);const{smallMobileActive:H,extraSmallMobileActive:U}=Te(),re=Ne(),W=new xe,ie=v(new Set),ce=v(),le=v(!1),$=v(0),j=v([0]),R=v(),me=v(["high-resolution","mid-resolution","low-resolution","snapshot"]),E=Ie(),C=v(!1),O=v(!1),f=v({disabled:!1,name:"",info:{manufacturer:"",model:"",hardware:"",serialNumber:"",firmwareVersion:"",supportUrl:""},sources:[{name:"",roles:[],urls:[{protocol:"rtsp://",url:[]}]}],recording:{enabled:!1},interface:{streamingMode:"webrtc/tcp"},extensions:{hub:[],plugins:[]}}),{mutate:ue,isPending:pe}=W.createCameraQuery(),{mutateAsync:de,isPending:he}=W.previewCameraQuery(),p=Ce(()=>pe.value||le.value),D=Be("commonmark",{highlight(o,t){if(t&&A.getLanguage(t))try{return'<pre><code class="hljs">'+A.highlight(o,{language:t,ignoreIllegals:!0}).value+"</code></pre>"}catch{}return'<pre><code class="hljs">'+D.utils.escapeHtml(o)+"</code></pre>"}});Ve(C,o=>{o||setTimeout(()=>{E.value={presets:[],md:void 0}},300)});const ge=o=>{f.value.sources[o].urls.push({protocol:"rtsp://",url:[]})},fe=(o,t)=>{f.value.sources[o].urls.splice(t,1)},be=()=>{f.value.sources.push({name:"",roles:[],urls:[{protocol:"rtsp://",url:[]}]}),j.value=[f.value.sources.length]},we=o=>{f.value.sources.splice(o,1)},B=o=>{let t,s,b;switch(o){case"bubble://":t=[],s=Object.assign({"../markdowns/bubble.md":et});break;case"dvrip://":t=[],s=Object.assign({"../markdowns/dvrip.md":tt});break;case"echo:":t=[],s=Object.assign({"../markdowns/echo.md":ot});break;case"exec:":t=[],s=Object.assign({"../markdowns/exec.md":at});break;case"expr:":t=[],s=Object.assign({"../markdowns/expr.md":nt});break;case"ffmpeg:":t=se,s=Object.assign({"../markdowns/ffmpeg.md":st});break;case"gopro://":t=se,s=Object.assign({"../markdowns/gopro.md":rt});break;case"hass:":t=[],s=Object.assign({"../markdowns/hass.md":it});break;case"homekit://":t=Je,s=Object.assign({"../markdowns/homekit.md":ct});break;case"http://":case"https://":case"httpx://":case"tcp://":t=Xe,s=Object.assign({"../markdowns/http.md":lt});break;case"isapi://":t=[],s=Object.assign({"../markdowns/isapi.md":mt});break;case"ivideon:":t=[],s=Object.assign({"../markdowns/ivideon.md":ut});break;case"kasa://":t=[],s=Object.assign({"../markdowns/kasa.md":pt});break;case"nest:":t=Qe,s=Object.assign({"../markdowns/nest.md":dt});break;case"onvif://":t=[],s=Object.assign({"../markdowns/onvif.md":ht});break;case"roborock://":t=[],s=Object.assign({"../markdowns/roborock.md":gt});break;case"rtmp://":t=[],s=Object.assign({"../markdowns/rtmp.md":ft});break;case"rtsp://":case"rtspx://":t=qe,s=Object.assign({"../markdowns/rtsp.md":bt});break;case"tapo://":t=[],s=Object.assign({"../markdowns/tapo.md":wt});break;case"webrtc:":t=Ze,s=Object.assign({"../markdowns/webrtc.md":vt});break;case"webtorrent:":t=[],s=Object.assign({"../markdowns/webtorrent.md":_t});break;default:t=[],s=void 0;break}return s&&(b=Object.values(s)[0]),E.value={presets:t,md:b},{presets:t,md:b}},F=o=>{B(o),C.value=!0},ve=async o=>{R.value=void 0,O.value=!0;const t=o.url.join(""),b={url:t.includes(o.protocol)?t:`${o.protocol}${t}`},r=await de({cameraData:b});R.value=r?`data:image/jpeg;base64,${r}`:"ERROR",R.value!=="ERROR"&&ie.value.add(b.url)},_e=o=>({...o,pluginId:"native",type:"camera",isCloud:!1,hasLight:!1,hasSiren:!1,hasBinarySensor:!1,hasBattery:!1,activityZones:[],activitySettings:{motion:{timeout:20},object:{confidence:.7}},frameWorkerSettings:{decoder:"wasm",fps:10,resolution:640},sources:o.sources.map(s=>{let b=s.urls.map(r=>{if(r.url){const c=r.url.join("");return c.includes(r.protocol)?c:`${r.protocol}${c}`}}).filter(Boolean);return{_id:"",...s,urls:b}})}),ye=o=>{const{isLoading:t}=De(0,{parent:".topbar"});t.value=!0;let s=_e(o);ue({cameraData:s},{onSuccess:async()=>{t.value=!1,await ze(500),re.push({path:"/cameras"})}})},z=(o,t)=>{t.protocol=o};return(o,t)=>{const s=Pe,b=Se;return d(),k("main",{class:Y(["w-full h-full",{"px-0":e(H)}])},[n(e(Fe),{ref_key:"cameraVeeForm",ref:ce,class:"firststeps-form flex flex-col h-full w-full","validation-schema":e(ke),"initial-values":e(f),onSubmit:t[3]||(t[3]=r=>ye(r))},{default:a(()=>[u("div",{class:Y(["mb-3 flex items-center",{"mx-2":e(H)}]),style:{height:"30px"}},[u("h1",yt,l(o.$t("views.new_camera.title")),1),n(S,{loading:e(p),variant:"text",color:"green",type:"submit",class:"ml-auto"},{default:a(()=>[n(x,{size:"15",class:"mr-1"},{default:a(()=>[h(l(e(J)),1)]),_:1}),h(" "+l(o.$t("components.form.button.add")),1)]),_:1},8,["loading"])],2),u("div",xt,[u("div",null,[u("span",kt,l(o.$t("components.form.label.camera")),1),n(Q,{modelValue:e($),"onUpdate:modelValue":t[1]||(t[1]=r=>G($)?$.value=r:null),class:"inner-component mt-2"},{default:a(()=>[n(Z,{elevation:"0",value:1},{default:a(()=>[n(ee,{style:{height:"48px"},class:"truncate"},{default:a(()=>[h(l(o.$t("views.new_camera.camera")),1)]),_:1}),n(te,{eager:""},{default:a(()=>[u("div",St,[n(e(I),{modelValue:e(f).name,"onUpdate:modelValue":t[0]||(t[0]=r=>e(f).name=r),name:"name"},{default:a(({field:r,errorMessage:c,errors:i})=>[u("label",Tt,l(o.$t("components.form.label.camera_name")),1),n(oe,V({loading:e(p),variant:"outlined",name:"name",type:"text",density:"compact"},r,{error:i.length>0,"error-messages":c}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),u("div",Pt,[u("span",Rt,l(o.$t("components.form.label.camera_sources")),1),n(Q,{modelValue:e(j),"onUpdate:modelValue":t[2]||(t[2]=r=>G(j)?j.value=r:null),class:"inner-component mt-2",multiple:"",variant:"accordion"},{default:a(()=>[(d(!0),k(K,null,q(e(f).sources,(r,c)=>(d(),P(Z,{key:c,value:c+1,elevation:"0",style:He(e(H)?"border-radius: 0px !important":"")},{default:a(()=>[n(ee,{style:{height:"48px"},class:"truncate"},{actions:a(({expanded:i})=>[u("div",At,[n(S,{disabled:e(f).sources.length<2||e(p),size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:_(g=>we(c),["stop"])},{default:a(()=>[n(x,null,{default:a(()=>[h(l(e(Me)),1)]),_:1})]),_:2},1032,["disabled","onClick"]),i?(d(),P(x,{key:0,size:"22.5"},{default:a(()=>[h(l(e(Ue)),1)]),_:1})):(d(),P(x,{key:1,size:"22.5"},{default:a(()=>[h(l(e($e)),1)]),_:1}))])]),default:a(()=>[h(l(o.$t("views.new_camera.source")+": "+c)+" ",1)]),_:2},1024),n(te,{eager:""},{default:a(()=>[u("div",It,[n(e(I),{modelValue:r.name,"onUpdate:modelValue":i=>r.name=i,name:`sources[${c}].name`},{default:a(({field:i,errorMessage:g,errors:m})=>[u("label",{for:`sources[${c}].name`,class:"v-label"},l(o.$t("components.form.label.source_name")),9,Ct),n(oe,V({loading:e(p),variant:"outlined",name:`sources[${c}].name`,type:"text",density:"compact",ref_for:!0},i,{error:m.length>0,"error-messages":g}),null,16,["loading","name","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"]),n(e(I),{modelValue:r.roles,"onUpdate:modelValue":i=>r.roles=i,name:`sources[${c}].roles`},{default:a(({field:i,errorMessage:g,errors:m})=>[u("label",{for:`sources[${c}].roles`,class:"v-label"},l(o.$t("components.form.label.source_role")),9,Vt),n(L,V({loading:e(p),items:e(me).filter(y=>!e(f).sources.some((T,w)=>{var N;return((N=T.roles)==null?void 0:N.includes(y))&&w!==c})),variant:"outlined",name:`sources[${c}].roles`,type:"text",density:"compact",chips:"",multiple:"",clearable:"",ref_for:!0},i,{error:m.length>0,"error-messages":g,"model-value":i.value,onKeydown:_(()=>null,["prevent"])}),{chip:a(({item:y})=>[n(Ye,{color:"#df2a4c"},{default:a(()=>[h(l(y.title),1)]),_:2},1024)]),_:2},1040,["loading","items","name","error","error-messages","model-value"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"]),u("label",{for:`sources[${c}].urls[].url`,class:"v-label"},l(o.$t("components.form.label.camera_sources")),9,Ht),(d(!0),k(K,null,q(r.urls,(i,g)=>(d(),k("div",{key:g},[e(U)?(d(),k("div",jt,[n(e(I),{modelValue:i.protocol,"onUpdate:modelValue":m=>i.protocol=m,name:`sources[${c}].urls[${g}].protocol`},{default:a(({field:m,errors:y,errorMessage:T})=>[n(L,V({loading:e(p),items:e(ne),"hide-no-data":"","hide-details":"",variant:"outlined",name:`sources[${c}].urls[${g}].protocol`,type:"text",density:"compact",class:"camera-protocol",ref_for:!0},m,{error:y.length>0,"error-messages":T,"model-value":m.value,onKeydown:_(()=>null,["prevent"]),"onUpdate:modelValue":w=>z(w,i)}),null,16,["loading","items","name","error","error-messages","model-value","onUpdate:modelValue"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"]),u("div",Et,[n(S,{disabled:e(p),color:"#5e5e5e",density:"compact",icon:"",variant:"text",onClick:_(m=>F(i.protocol),["prevent"])},{default:a(()=>[n(x,{size:"20"},{default:a(()=>[h(l(e(X)),1)]),_:1})]),_:2},1032,["disabled","onClick"])])])):M("",!0),u("div",Ot,[e(U)?M("",!0):(d(),P(e(I),{key:0,modelValue:i.protocol,"onUpdate:modelValue":m=>i.protocol=m,name:`sources[${c}].urls[${g}].protocol`},{default:a(({field:m,errors:y,errorMessage:T})=>[n(L,V({loading:e(p),items:e(ne),"hide-no-data":"","hide-details":"",variant:"outlined",name:`sources[${c}].urls[${g}].protocol`,type:"text",density:"compact",style:{"min-width":"125px","max-width":"125px","min-height":"40px","max-height":"40px"},class:"camera-protocol",ref_for:!0},m,{error:y.length>0,"error-messages":T,"model-value":m.value,onKeydown:_(()=>null,["prevent"]),"onUpdate:modelValue":w=>z(w,i)}),null,16,["loading","items","name","error","error-messages","model-value","onUpdate:modelValue"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"])),n(e(I),{modelValue:i.url,"onUpdate:modelValue":m=>i.url=m,name:`sources[${c}].urls[${g}].url`},{default:a(({field:m,errorMessage:y,errors:T})=>[n(Ke,{modelValue:i.url,"onUpdate:modelValue":[w=>i.url=w,w=>m.value=w],loading:e(p),clearable:"",chips:"",multiple:"",items:B(i.protocol).presets,variant:"outlined",name:`sources[${c}].urls[${g}].url`,type:"text",density:"compact",class:"camera-source",error:T.length>0,"error-messages":y},{"append-inner":a(()=>[r.urls.length>1?(d(),P(S,{key:0,size:"28",variant:"text",rounded:"",density:"compact",color:"red",disabled:r.urls.length<2||e(p),onClick:_(w=>fe(c,g),["prevent"])},{default:a(()=>[n(x,{size:"20"},{default:a(()=>[h(l(e(Le)),1)]),_:1})]),_:2},1032,["disabled","onClick"])):M("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","loading","items","name","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"]),u("div",Gt,[n(S,{disabled:!i.protocol||!i.url.length||e(p),color:"#5e5e5e",density:"compact",icon:"",variant:"text",onClick:_(m=>ve(i),["prevent"])},{default:a(()=>[n(x,{size:"20"},{default:a(()=>[h(l(e(We)),1)]),_:1})]),_:2},1032,["disabled","onClick"]),e(U)?M("",!0):(d(),P(S,{key:0,disabled:e(p),color:"#5e5e5e",density:"compact",icon:"",variant:"text",onClick:_(m=>F(i.protocol),["prevent"])},{default:a(()=>[n(x,{size:"20"},{default:a(()=>[h(l(e(X)),1)]),_:1})]),_:2},1032,["disabled","onClick"]))])])]))),128)),u("div",Mt,[n(S,{disabled:e(p),color:"#df2a4c",variant:"flat",onClick:_(i=>ge(c),["prevent"])},{default:a(()=>[h(l(o.$t("components.form.button.add_source")),1)]),_:2},1032,["disabled","onClick"])])])]),_:2},1024)]),_:2},1032,["value","style"]))),128))]),_:1},8,["modelValue"]),u("div",Ut,[n(S,{disabled:e(p),variant:"text",color:"#df2a4c",icon:"",onClick:_(be,["prevent"])},{default:a(()=>[n(x,{size:"30"},{default:a(()=>[h(l(e(J)),1)]),_:1})]),_:1},8,["disabled"])])])])]),_:1},8,["validation-schema","initial-values"]),n(s,{modelValue:e(C),"onUpdate:modelValue":t[4]||(t[4]=r=>G(C)?C.value=r:null),title:o.$t("components.dialog.title.information"),loading:e(p),"hide-confirm-button":""},{content:a(()=>{var r;return[(r=e(E))!=null&&r.md?(d(),k("div",$t,[u("div",{class:"w-full markdown-body",innerHTML:e(D).render(e(E).md)},null,8,Lt)])):(d(),k("div",Wt,[n(ae,{color:"#df2a4c",indeterminate:""})]))]}),_:1},8,["modelValue","title","loading"]),n(s,{modelValue:e(O),"onUpdate:modelValue":t[5]||(t[5]=r=>G(O)?O.value=r:null),title:o.$t("components.dialog.title.preview"),loading:e(p),"hide-confirm-button":""},{content:a(()=>[!e(R)||e(he)?(d(),k("div",Dt,[n(ae,{color:"#df2a4c",indeterminate:""})])):(d(),P(b,{key:1,class:"mt-5 inner-component","show-camera-name":"","current-camera":e(R),"border-radius":e(H)?0:3,border:!1,target:"preview","preview-src":e(R),"button-elevation":"1"},null,8,["current-camera","border-radius","preview-src"]))]),_:1},8,["modelValue","title","loading"])],2)}}}),Go=Re(Bt,[["__scopeId","data-v-604847b3"]]);export{Go as default};
@@ -0,0 +1 @@
1
+ import{a as we,b as lt,C as at,d as it,e as rt,g as ut}from"./VPlayer.BdDvEUtF.0.0.14.js";import{_ as ct}from"./VPluginCard.UxjDX7aw.0.0.14.js";import{F as $e,t as Ee,r as l,c as H,w as Y,e as a,f as u,j as s,u as e,T as d,l as y,n as X,V as J,M as f,R as g,q as P,y as te,i as fe,a3 as dt,U as ft,X as Qe,O as B,N as Pe,Q as De}from"./@vue.CIFymae3.0.0.14.js";import{Y as Fe,k as ce,i as oe,c as Be}from"./@mdi.jq8isxax.0.0.14.js";import{i as ze}from"./vue3-toastify.CfJCs4au.0.0.14.js";import{P as Ie}from"./plugins.XWRvgFHD.0.0.14.js";import{A as Me,M as Ve,i as Ue,d as ke,z as Je,C as je,w as Ye,D as Re,E as Le,y as mt,f as pt,F as vt}from"./main.BKyGw-1O.0.0.14.js";import{e as le,b as me,V as de,U as gt,W as _t,C as ht,w as yt,G as qe,f as He,I as bt,J as xt,n as wt,x as $t}from"./vuetify.C9swI1mp.0.0.14.js";import{H as se,t as It,y as kt,j as Ct,p as St}from"./highlight.js.Bcczinar.0.0.14.js";import{M as Pt}from"./markdown-it.DOljZfaF.0.0.14.js";import{u as Dt}from"./vue-router.BcAjblcv.0.0.14.js";import{x as Vt}from"./@vueuse.GozpFDMZ.0.0.14.js";import"./qrcode.CZ-rkxD4.0.0.14.js";import"./dijkstrajs.D_NXgYpA.0.0.14.js";import"./vee-validate.DQ8f4ION.0.0.14.js";import"./zod.BaF2dDCd.0.0.14.js";import"./pinia.81SobSxK.0.0.14.js";import"./@vee-validate.Dhm2s2jJ.0.0.14.js";import"./draggabilly.DVAyE9_D.0.0.14.js";import"./@xterm.DJzQYeiB.0.0.14.js";import"./get-size.D1dS-IaP.0.0.14.js";import"./unidragger.CrbQd6Tw.0.0.14.js";import"./ev-emitter.Bw9npPB3.0.0.14.js";import"./@tanstack.Cvca3GsJ.0.0.14.js";import"./VConfigEditor.vue_vue_type_script_setup_true_lang.EikqU5ed.0.0.14.js";import"./ace-builds.CFQYSvlz.0.0.14.js";import"./@vueform.wl5SN6Kr.0.0.14.js";import"./system.CTvBwGOj.0.0.14.js";import"./VConsole.CQqki9g1.0.0.14.js";import"./vue-inline-svg.DV5nngF9.0.0.14.js";import"./vue-i18n.B4qiXH_H.0.0.14.js";import"./@intlify.YW_pt133.0.0.14.js";import"./axios.BI2i94Vb.0.0.14.js";import"./uuid.DvF23Exx.0.0.14.js";import"./socket.io-client.wHwPn3iN.0.0.14.js";import"./engine.io-client.Co7SlJ1E.0.0.14.js";import"./engine.io-parser.BiEtp6m2.0.0.14.js";import"./@socket.io.Dkula2eQ.0.0.14.js";import"./socket.io-parser.CPmU8U6u.0.0.14.js";import"./rxjs.Cn6mAcb0.0.0.14.js";import"./tslib.9k7AwCpt.0.0.14.js";import"./v-calendar.nDfqON1B.0.0.14.js";import"./@popperjs.BQBsAJpH.0.0.14.js";import"./nprogress.y4ho8UN3.0.0.14.js";import"./mdurl.k9Sl0PQj.0.0.14.js";import"./uc.micro.kMc2yuuw.0.0.14.js";import"./entities.C20TfXL6.0.0.14.js";import"./linkify-it.BUeGIfuB.0.0.14.js";import"./punycode.js.Dj65hjkv.0.0.14.js";const jt={class:"w-full"},Lt={key:0,class:"w-full"},zt={class:"flex flex-col justify-center items-center mb-5"},Et={for:"restoreInput",class:"cursor-pointer text-center text-sm"},Ft=["accept"],Ot={key:0,class:"text-red text-sm"},Tt={key:1,class:"w-full flex flex-col items-center justify-center"},At={class:"relative mb-4 w-full"},Nt=["src","type"],Qt={class:"flex items-center justify-center"},Bt={class:"mx-2"},Mt={class:"disabled-text"},Ut={class:"mt-10"},Jt={class:"box-title w-full mb-3"},Rt={key:0,class:"flex items-center justify-center text-sm text-passive mt-5"},qt=$e({__name:"VAudioDetectionInterface",props:{pluginName:{}},setup(ne){const O=new Ie,C=ne,{pluginName:T}=Ee(C),i=l([]),x=l(!1),p=l(!1),D=l(!1),b=l(!1),$=l(null),I=l(null),z=l(Me.join(",")),F=l(""),S=l({}),h=l(!1),V=l(),_=l(!0),{mutateAsync:E,isPending:A}=O.detectAudioQuery(),{data:M,isLoading:G}=O.getPluginInterfaceQuery(T.value,{type:"audioDetection"}),R=H(()=>A.value||G.value||h.value),w=n=>{const t=i.value.findIndex(o=>o.name===n);t>-1&&(i.value.splice(t,1),W(),F.value="",V.value=void 0)},j=n=>{if(x.value=!1,p.value=!1,b.value=!1,i.value=[],n.dataTransfer)if(n.dataTransfer.files.length>1)p.value=!0;else{const t=n.dataTransfer.files[0];Me.includes(t.type)&&t.size<=Ve?(i.value.push(t),te(()=>{k(t)})):t.size>Ve?b.value=!0:p.value=!0}},K=n=>{var o;p.value=!1,b.value=!1,i.value=[];const t=n.target;if(t&&t.files){if(((o=t.files)==null?void 0:o.length)>1)p.value=!0;else if(t.files.length===1){const m=t.files[0];m.size<=Ve?(i.value.push(m),te(()=>{k(m)})):b.value=!0}}},W=()=>{$.value&&($.value.value="")},Z=n=>n<1024?n+" bytes":n<1048576?(n/1024).toFixed(1)+" KB":(n/1048576).toFixed(1)+" MB",k=n=>{h.value=!0;const t=new Audio;t.src=URL.createObjectURL(n),t.onloadedmetadata=()=>{V.value={mimeType:n.type},h.value=!1}},q=async n=>{if(!i.value.length){D.value=!0;return}h.value=!0;const t=new FormData;t.append("upload",i.value[0]),t.append("config",JSON.stringify(n)),t.append("metadata",JSON.stringify(V.value));try{await E({pluginName:T.value,formData:t})?ze.info(Ue.global.t("components.detection_interface.audio_detected")):ze.info(Ue.global.t("components.detection_interface.audio_not_detected"))}catch(o){console.error("Error detecting audio",o)}finally{h.value=!1}};return Y(i,n=>{n.length>0?(D.value=!1,_.value=!1):(F.value="",V.value=void 0,_.value=!0)},{immediate:!0,deep:!0}),(n,t)=>{const o=we;return a(),u("div",jt,[s("div",{class:"file-upload-box p-4",onDrop:t[1]||(t[1]=P(m=>j(m),["prevent"])),onDragover:t[2]||(t[2]=P(m=>x.value=!0,["prevent"])),onDragenter:t[3]||(t[3]=P(m=>x.value=!0,["prevent"])),onDragleave:t[4]||(t[4]=P(m=>x.value=!1,["prevent"]))},[e(i).length?(a(),u("div",Tt,[s("div",At,[s("audio",{ref_key:"audioPlayer",ref:I,controls:"",class:"w-full"},[s("source",{src:e(F),type:e(i)[0].type},null,8,Nt),J(" Your browser does not support the audio element. ")],512)]),s("div",Qt,[f(me,{size:"28",variant:"text",color:"red",rounded:"",onClick:t[0]||(t[0]=P(m=>w(e(i)[0].name),["stop"]))},{default:g(()=>[f(le,{size:"20"},{default:g(()=>[J(d(e(Fe)),1)]),_:1})]),_:1}),s("b",Bt,d(e(i)[0].name),1),s("span",Mt,"("+d(Z(e(i)[0].size))+")",1)])])):(a(),u("div",Lt,[s("div",zt,[s("label",Et,d(n.$t("components.detection_interface.drop_or_select_audio_to_detect")),1),s("input",{id:"restoreInput",ref_key:"fileInput",ref:$,type:"file",class:"d-none",accept:e(z),onChange:K},null,40,Ft),e(p)?(a(),u("p",Ot,d(n.$t("components.detection_interface.only_one_audio_allowed")),1)):y("",!0),e(D)?(a(),u("p",{key:1,class:X(["text-red text-sm",{"mt-2":e(p)}])},d(n.$t("components.detection_interface.audio_required")),3)):y("",!0),e(b)?(a(),u("p",{key:2,class:X(["text-red text-sm",{"mt-2":e(p)||e(D)}])},d(n.$t("components.detection_interface.file_size_error")),3)):y("",!0)])]))],32),s("div",Ut,[s("div",Jt,d(n.$t("components.detection_interface.interface_config")),1),e(S)&&Object.keys(e(S)).length?y("",!0):(a(),u("div",Rt,d(n.$t("components.detection_interface.no_interface_config")),1)),f(o,{config:e(S),"ui-schema":e(M),loading:e(R),"save-button-label":n.$t("components.detection_interface.detect_audio"),"disable-button":e(_),"save-button-color":"#df2a4c","show-button":"",onOnFormSubmit:q},null,8,["config","ui-schema","loading","save-button-label","disable-button"])])])}}}),Ht=ke(qt,[["__scopeId","data-v-c1c7820f"]]),Yt={class:"w-full"},Xt={key:0,class:"w-full"},Gt={class:"flex flex-col justify-center items-center mb-5"},Kt={for:"restoreInput",class:"cursor-pointer text-center text-sm"},Wt=["accept"],Zt={key:0,class:"text-red text-sm"},en={key:1,class:"w-full flex flex-col items-center justify-center"},tn={class:"relative mb-4"},nn=["src"],on={class:"flex items-center justify-center"},sn={class:"mx-2"},ln={class:"disabled-text"},an={class:"mt-10"},rn={class:"box-title w-full mb-3"},un={key:0,class:"flex items-center justify-center text-sm text-passive mt-5"},cn={class:"relative"},dn=["src"],fn=$e({__name:"VObjectDetectionInterface",props:{pluginName:{}},setup(ne){const O=new Ie,C=ne,{pluginName:T}=Ee(C),i=l([]),x=l(!1),p=l(!1),D=l(!1),b=l(!1),$=l(null),I=l(Je.join(",")),z=l(""),F=l({}),S=l(!1),h=l(),V=l([]),_=l(!1),E=l(!0),{mutateAsync:A,isPending:M}=O.detectObjectsQuery(),{data:G,isLoading:R}=O.getPluginInterfaceQuery(T.value,{type:"objectDetection"}),w=H(()=>M.value||R.value||S.value),j=t=>{const o=i.value.findIndex(m=>m.name===t);o>-1&&(i.value.splice(o,1),Z(),z.value="",h.value=void 0)},K=t=>{if(x.value=!1,p.value=!1,b.value=!1,i.value=[],t.dataTransfer)if(t.dataTransfer.files.length>1)p.value=!0;else{const o=t.dataTransfer.files[0];Je.includes(o.type)&&o.size<=je?(i.value.push(o),te(()=>{k(o)})):o.size>je?b.value=!0:p.value=!0}},W=t=>{var m;p.value=!1,b.value=!1,i.value=[];const o=t.target;if(o&&o.files){if(((m=o.files)==null?void 0:m.length)>1)p.value=!0;else if(o.files.length===1){const L=o.files[0];L.size<=je?(i.value.push(L),te(()=>{k(L)})):b.value=!0}}},Z=()=>{$.value&&($.value.value="")},k=t=>{S.value=!0;const o=new Image;o.src=URL.createObjectURL(t),o.onload=()=>{z.value=o.src,h.value={width:o.width,height:o.height},S.value=!1}},q=t=>t<1024?t+" bytes":t<1048576?(t/1024).toFixed(1)+" KB":(t/1048576).toFixed(1)+" MB",n=async t=>{if(!i.value.length){D.value=!0;return}S.value=!0;const o=new FormData;o.append("upload",i.value[0]),o.append("config",JSON.stringify(t)),o.append("metadata",JSON.stringify(h.value));try{const m=await A({pluginName:T.value,formData:o});_.value=!0,setTimeout(()=>{V.value=m},300)}catch(m){console.error("Error detecting objects",m)}finally{S.value=!1}};return Y(i,t=>{t.length>0?(D.value=!1,E.value=!1):(z.value="",h.value=void 0,E.value=!0)},{immediate:!0,deep:!0}),(t,o)=>{const m=we,L=lt,Ce=Ye;return a(),u("div",Yt,[s("div",{class:"file-upload-box p-4",onDrop:o[1]||(o[1]=P(U=>K(U),["prevent"])),onDragover:o[2]||(o[2]=P(U=>x.value=!0,["prevent"])),onDragenter:o[3]||(o[3]=P(U=>x.value=!0,["prevent"])),onDragleave:o[4]||(o[4]=P(U=>x.value=!1,["prevent"]))},[e(i).length?(a(),u("div",en,[s("div",tn,[s("img",{src:e(z),alt:"Preview",class:"w-full"},null,8,nn)]),s("div",on,[f(me,{size:"28",variant:"text",color:"red",rounded:"",onClick:o[0]||(o[0]=P(U=>j(e(i)[0].name),["stop"]))},{default:g(()=>[f(le,{size:"20"},{default:g(()=>[J(d(e(Fe)),1)]),_:1})]),_:1}),s("b",sn,d(e(i)[0].name),1),s("span",ln,"("+d(q(e(i)[0].size))+")",1)])])):(a(),u("div",Xt,[s("div",Gt,[s("label",Kt,d(t.$t("components.detection_interface.drop_or_select_image_to_detect_objects")),1),s("input",{id:"restoreInput",ref_key:"fileInput",ref:$,type:"file",class:"d-none",accept:e(I),onChange:W},null,40,Wt),e(p)?(a(),u("p",Zt,d(t.$t("components.detection_interface.only_one_image_allowed")),1)):y("",!0),e(D)?(a(),u("p",{key:1,class:X(["text-red text-sm",{"mt-2":e(p)}])},d(t.$t("components.detection_interface.image_required")),3)):y("",!0),e(b)?(a(),u("p",{key:2,class:X(["text-red text-sm",{"mt-2":e(p)||e(D)}])},d(t.$t("components.detection_interface.file_size_error")),3)):y("",!0)])]))],32),s("div",an,[s("div",rn,d(t.$t("components.detection_interface.interface_config")),1),e(F)&&Object.keys(e(F)).length?y("",!0):(a(),u("div",un,d(t.$t("components.detection_interface.no_interface_config")),1)),f(m,{config:e(F),"ui-schema":e(G),loading:e(w),"save-button-label":t.$t("components.detection_interface.detect_objects"),"disable-button":e(E),"save-button-color":"#df2a4c","show-button":"",onOnFormSubmit:n},null,8,["config","ui-schema","loading","save-button-label","disable-button"])]),f(Ce,{modelValue:e(_),"onUpdate:modelValue":o[5]||(o[5]=U=>fe(_)?_.value=U:null),title:t.$t("components.dialog.title.result"),"hide-confirm-button":"",width:"auto"},{content:g(()=>[s("div",cn,[f(L,{detections:e(V)},null,8,["detections"]),s("img",{src:e(z),alt:"Preview",class:"w-full"},null,8,dn)])]),_:1},8,["modelValue","title"])])}}}),mn=ke(fn,[["__scopeId","data-v-453d8b3d"]]),pn={class:"w-full"},vn={key:0,class:"w-full"},gn={class:"flex flex-col justify-center items-center mb-5"},_n={for:"restoreInput",class:"cursor-pointer text-center text-sm"},hn=["accept"],yn={key:0,class:"text-red text-sm"},bn={key:1,class:"w-full flex flex-col items-center justify-center"},xn={class:"relative mb-4 w-full"},wn={class:"flex items-center justify-center"},$n={class:"mx-2"},In={class:"disabled-text"},kn={class:"mt-10"},Cn={class:"box-title w-full mb-3"},Sn={key:0,class:"flex items-center justify-center text-sm text-passive mt-5"},Pn={class:"relative"},Dn=$e({__name:"VMotionDetectionInterface",props:{pluginName:{}},setup(ne){const O=new Ie,C=ne,{pluginName:T}=Ee(C),i=l([]),x=l(!1),p=l(!1),D=l(!1),b=l(!1),$=l(null),I=l(null),z=l(null),F=l(Re.join(",")),S=l({}),h=l(!1),V=l(!1),_=l(!0),{mutateAsync:E,isPending:A}=O.detectMotionQuery(),{data:M,isLoading:G}=O.getPluginInterfaceQuery(T.value,{type:"motionDetection"}),R=H(()=>A.value||G.value||h.value),w=n=>{const t=i.value.findIndex(o=>o.name===n);t>-1&&(i.value.splice(t,1),W(),I.value.src="")},j=n=>{if(x.value=!1,p.value=!1,b.value=!1,i.value=[],n.dataTransfer)if(n.dataTransfer.files.length>1)p.value=!0;else{const t=n.dataTransfer.files[0];Re.includes(t.type)&&t.size<=Le?(i.value.push(t),te(()=>{k(t)})):t.size>Le?b.value=!0:p.value=!0}},K=n=>{var o;p.value=!1,b.value=!1,i.value=[];const t=n.target;if(t&&t.files){if(((o=t.files)==null?void 0:o.length)>1)p.value=!0;else if(t.files.length===1){const m=t.files[0];m.size<=Le?(i.value.push(m),te(()=>{k(m)})):b.value=!0}}},W=()=>{$.value&&($.value.value="")},Z=n=>n<1024?n+" bytes":n<1048576?(n/1024).toFixed(1)+" KB":(n/1048576).toFixed(1)+" MB",k=n=>{h.value=!0,I.value.src=URL.createObjectURL(n),I.value.load(),I.value.onloadeddata=()=>{h.value=!1}},q=async n=>{if(!i.value.length){D.value=!0;return}h.value=!0;const t=new FormData;t.append("upload",i.value[0]),t.append("config",JSON.stringify(n));try{const o=await E({pluginName:T.value,formData:t}),m=new Blob([o],{type:"video/mp4"});V.value=!0,setTimeout(()=>{z.value&&(z.value.src=URL.createObjectURL(m),z.value.load())},300)}catch(o){console.error("Error detecting motion",o)}finally{h.value=!1}};return Y(i,n=>{n.length>0?(D.value=!1,_.value=!1):_.value=!0},{immediate:!0,deep:!0}),(n,t)=>{const o=we,m=Ye;return a(),u("div",pn,[s("div",{class:"file-upload-box p-4",onDrop:t[1]||(t[1]=P(L=>j(L),["prevent"])),onDragover:t[2]||(t[2]=P(L=>x.value=!0,["prevent"])),onDragenter:t[3]||(t[3]=P(L=>x.value=!0,["prevent"])),onDragleave:t[4]||(t[4]=P(L=>x.value=!1,["prevent"]))},[e(i).length?(a(),u("div",bn,[s("div",xn,[s("video",{ref_key:"videoPlayer",ref:I,controls:"",class:"w-full"},"Your browser does not support the video tag.",512)]),s("div",wn,[f(me,{size:"28",variant:"text",color:"red",rounded:"",onClick:t[0]||(t[0]=P(L=>w(e(i)[0].name),["stop"]))},{default:g(()=>[f(le,{size:"20"},{default:g(()=>[J(d(e(Fe)),1)]),_:1})]),_:1}),s("b",$n,d(e(i)[0].name),1),s("span",In,"("+d(Z(e(i)[0].size))+")",1)])])):(a(),u("div",vn,[s("div",gn,[s("label",_n,d(n.$t("components.detection_interface.drop_or_select_video_to_detect_motion")),1),s("input",{id:"restoreInput",ref_key:"fileInput",ref:$,type:"file",class:"d-none",accept:e(F),onChange:K},null,40,hn),e(p)?(a(),u("p",yn,d(n.$t("components.detection_interface.only_one_video_allowed")),1)):y("",!0),e(D)?(a(),u("p",{key:1,class:X(["text-red text-sm",{"mt-2":e(p)}])},d(n.$t("components.detection_interface.video_required")),3)):y("",!0),e(b)?(a(),u("p",{key:2,class:X(["text-red text-sm",{"mt-2":e(p)||e(D)}])},d(n.$t("components.detection_interface.file_size_error")),3)):y("",!0)])]))],32),s("div",kn,[s("div",Cn,d(n.$t("components.detection_interface.interface_config")),1),e(S)&&Object.keys(e(S)).length?y("",!0):(a(),u("div",Sn,d(n.$t("components.detection_interface.no_interface_config")),1)),f(o,{config:e(S),"ui-schema":e(M),loading:e(R),"save-button-label":n.$t("components.detection_interface.detect_motion"),"disable-button":e(_),"save-button-color":"#df2a4c","show-button":"",onOnFormSubmit:q},null,8,["config","ui-schema","loading","save-button-label","disable-button"])]),f(m,{modelValue:e(V),"onUpdate:modelValue":t[5]||(t[5]=L=>fe(V)?V.value=L:null),title:n.$t("components.dialog.title.result"),"hide-confirm-button":"",width:"auto"},{content:g(()=>[s("div",Pn,[s("video",{ref_key:"videoPlayerResult",ref:z,controls:"",class:"w-full"},"Your browser does not support the video tag.",512)])]),_:1},8,["modelValue","title"])])}}}),Vn=ke(Dn,[["__scopeId","data-v-b825f442"]]),jn={key:0,class:"flex items-center justify-center w-full h-full"},Ln={key:1,class:"h-full w-full"},zn={class:"page-title"},En={class:"flex flex-col flex-1 inner-component mt-0 p-4"},Fn={class:"box-title w-full mb-3"},On={key:0,class:"w-full h-full flex items-center justify-center"},Tn={key:1},An={class:"options-segments flex items-center justify-between"},Nn={class:"flex flex-col items-center justify-center"},Qn={class:"options-segments-text mt-2"},Bn={key:1},Mn={key:2},Un={key:3},Jn={key:4},Rn={class:"w-full full-inner-height"},qn={class:"flex flex-col md:flex-row gap-2 h-full"},Hn={class:"flex flex-col flex-1",style:{height:"200px","max-height":"200px"}},Yn={key:0,class:"w-full h-full flex items-center justify-center inner-component mt-0"},Xn={class:"flex flex-col flex-1 inner-component mt-0 p-4"},Gn={class:"box-title w-full mb-3"},Kn={key:0,class:"w-full h-full flex items-center justify-center"},Wn=["innerHTML"],Zn={class:"flex flex-col flex-1 inner-component mt-0 p-4"},eo={class:"box-title w-full mb-3"},to={key:0,class:"w-full h-full flex items-center justify-center"},no=["innerHTML"],oo=["data-ignore-id"],so=$e({__name:"Plugin",setup(ne){se.registerLanguage("typescript",It),se.registerLanguage("yaml",kt),se.registerLanguage("json",Ct),se.registerLanguage("python",St);const O=new at,C=new Ie,T=mt(),i=Dt(),{mobileActive:x,smallMobileActive:p}=pt(),D=l(vt()),b=l(),$=l(!1),I=l([]),z=l(!1),F=l(i.params.scope),S=l(i.params.pluginname),h=l(),V=l([]),_=l({name:"settings",icon:ce,isInterface:!1}),E=l(!1),A=l(),M=l(),[G,R]=Vt(),w=H(()=>F.value?`${F.value}/${S.value}`:S.value);C.toggleQueryActivator("getPluginContractQuery",!1);const{data:j,isLoading:K}=C.getPluginQuery(w),{data:W,isLoading:Z}=C.getPluginConfigJsonQuery(w),{data:k,isLoading:q}=C.getPluginSchemaQuery(w),{data:n}=C.getPluginContractQuery(w),{data:t,isLoading:o}=C.getPluginReadmeQuery(w),{data:m,isLoading:L}=C.getPluginChangelogQuery(w),{mutateAsync:Ce,isPending:U}=C.actionButtonQuery(),{mutate:Xe,isPending:Ge}=C.patchPluginConfigQuery(),{mutate:Ke,isPending:We}=O.addCameraExtensionQuery(),{mutate:Ze,isPending:et}=O.removeCameraExtensionQuery(),Oe=H(()=>!!(K.value||Z.value||q.value||o.value||L.value)),pe=H(()=>!!(We.value||et.value)),ae=H(()=>!!($.value||U.value||Ge.value)),ve=H(()=>{var r,c,N;return!!(k.value||(r=n.value)!=null&&r.cameras.length||(c=n.value)!=null&&c.contract.extension||(N=n.value)!=null&&N.contract.supportAdditionalCameras)}),Se=Pt("commonmark",{highlight(r,c){if(c&&se.getLanguage(c))try{return'<pre><code class="hljs">'+se.highlight(r,{language:c,ignoreIllegals:!0}).value+"</code></pre>"}catch{}return'<pre><code class="hljs">'+Se.utils.escapeHtml(r)+"</code></pre>"}});Y(()=>i.params.pluginname,()=>{S.value=i.params.pluginname},{deep:!0,immediate:!0}),Y(h,r=>{te(()=>z.value=!!r)}),Y(k,()=>{q.value?C.toggleQueryActivator("getPluginContractQuery",!1):C.toggleQueryActivator("getPluginContractQuery",!0)},{deep:!0,immediate:!0}),Y(n,()=>{var ge,_e,he,ye,be,xe,ie,re,ue,v;const r=[];let c=!1,N=!1;((ge=n.value)==null?void 0:ge.contract.extension)==="motionDetection"&&(N=!0,r.push({name:"motion_detection",icon:oe,isInterface:!0}),_.value={name:"motion_detection",icon:oe,isInterface:!0}),((_e=n.value)==null?void 0:_e.contract.extension)==="objectDetection"&&(N=!0,r.push({name:"object_detection",icon:oe,isInterface:!0}),_.value={name:"object_detection",icon:oe,isInterface:!0}),((he=n.value)==null?void 0:he.contract.extension)==="audioDetection"&&(N=!0,r.push({name:"audio_detection",icon:oe,isInterface:!0}),_.value={name:"audio_detection",icon:oe,isInterface:!0}),k.value&&k.value.schema&&Object.keys(k.value.schema).length&&(r.push({name:"settings",icon:ce,isInterface:!1}),c=!0,N||(_.value={name:"settings",icon:ce,isInterface:!1})),((ye=n.value)!=null&&ye.cameras.length||(be=n.value)!=null&&be.contract.extension||(xe=n.value)!=null&&xe.contract.supportAdditionalCameras)&&(r.push({name:"cameras",icon:Be,isInterface:!1}),!c&&!N&&(_.value={name:"cameras",icon:Be,isInterface:!1})),V.value=r,((ie=n.value)!=null&&ie.contract.extension||(re=n.value)!=null&&re.contract.supportAdditionalCameras)&&((ue=n.value)!=null&&ue.cameras.length)&&(I.value=(v=n.value)==null?void 0:v.cameras.filter(ee=>ee.extensions.plugins.includes(w.value)).map(ee=>ee.name))},{deep:!0,immediate:!0}),Y(E,r=>{r||(A.value=void 0,M.value=void 0)});const tt=async r=>{if(!k.value)return;$.value=!0;const c=ut(k.value.schema,r);Xe({pluginName:w.value,configData:c},{onSettled:()=>{$.value=!1}})},nt=async r=>{$.value=!0,await Ce({pluginName:w.value,actionId:r.actionId,payload:r.payload},{onSuccess:c=>{c!=null&&c.toast&&ze[c.toast.type](c.toast.message),c!=null&&c.schema&&Object.keys(c.schema).length&&(M.value=r.payload,A.value=c,E.value=!0)},onSettled:()=>{$.value=!1}})},ot=async r=>{j.value&&(I.value.includes(r.name)?Ze({cameraname:r.name,pluginname:j.value.pluginName},{onSuccess:()=>{I.value=I.value.filter(c=>c!==r.name)}}):Ke({cameraname:r.name,pluginname:j.value.pluginName},{onSuccess:()=>{I.value=[...I.value,r.name]}}))};return dt(()=>{b.value=T.connectToNamespace("/plugins")}),ft(()=>{var r,c;(c=(r=b.value)==null?void 0:r.end)==null||c.call(r)}),(r,c)=>{var ie,re,ue;const N=we,ge=Vn,_e=mn,he=Ht,ye=ct,be=it,xe=rt;return a(),u("main",{class:X(["w-full h-full",{"px-0":e(p)}])},[e(Oe)?(a(),u("div",jn,[f(de,{color:"#df2a4c",indeterminate:""})])):(a(),u("div",Ln,[s("div",{class:X(["mb-3 flex w-full items-center",{"px-2":e(p)}]),style:{height:"30px"}},[s("h1",zn,d((ie=e(j))==null?void 0:ie.displayName),1)],2),f(e(G),null,{default:g(()=>[s("div",{class:"plugin-settings-box flex flex-col gap-2 h-full",style:Qe({width:e(ve)&&!e(x)?"40%":"100%"})},[s("div",En,[s("div",Fn,d(r.$t("views.plugin.plugin_settings")),1),e(j)?(a(),u("div",Tn,[s("div",An,[f(gt,{modelValue:e(_),"onUpdate:modelValue":c[0]||(c[0]=v=>fe(_)?_.value=v:null),height:"100%",grow:"","slider-color":"#df2a4c","hide-slider":e(pe)||e(ae)},{default:g(()=>[(a(!0),u(Pe,null,De(e(V),(v,ee)=>(a(),B(_t,{key:ee,value:v,disabled:e(Oe)||v.isInterface&&e(j).disabled,"min-width":"auto"},{default:g(()=>[s("div",Nn,[f(le,{size:"20"},{default:g(()=>[J(d(v.icon),1)]),_:2},1024),s("span",Qn,d(v.isInterface?r.$t("views.plugin.segment_tab_interface"):r.$t(`views.plugin.segment_tab_${v.name.toLowerCase()}`)),1)])]),_:2},1032,["value","disabled"]))),128))]),_:1},8,["modelValue","hide-slider"])]),e(pe)||e(ae)?(a(),B(ht,{key:0,height:"2",color:"#df2a4c",indeterminate:"",style:{"margin-top":"-2px"}})):y("",!0),f(yt,{modelValue:e(_),"onUpdate:modelValue":c[1]||(c[1]=v=>fe(_)?_.value=v:null),class:"box-content w-full flex-1 mt-3",continuous:""},{default:g(()=>[(a(!0),u(Pe,null,De(e(V),(v,ee)=>(a(),B($t,{key:ee,value:{name:v.name,icon:v.icon,isInterface:v.isInterface},disabled:v.isInterface&&e(j).disabled},{default:g(()=>{var Te;return[v.name==="settings"&&e(k)?(a(),B(N,{key:0,config:e(W)||{},"ui-schema":e(k),loading:e(ae),onOnFormSubmit:tt,onOnSubmit:nt},null,8,["config","ui-schema","loading"])):y("",!0),v.name==="cameras"?(a(),u("div",Bn,[(a(!0),u(Pe,null,De((Te=e(n))==null?void 0:Te.cameras,Q=>{var Ae,Ne;return a(),u("div",{key:Q.name},[!((Ae=e(n))!=null&&Ae.contract.extension)&&!((Ne=e(n))!=null&&Ne.contract.supportAdditionalCameras)?(a(),B(qe,{key:0,"select-strategy":"classic",class:"py-0",disabled:e(pe)||e(ae),"onClick:select":()=>r.$router.push(`/cameras/${Q.name}`)},{default:g(()=>[f(He,{value:Q.name,class:"px-2"},{append:g(()=>[f(me,{class:"ml-auto",size:"28",rounded:"",density:"compact",variant:"text",onClick:P(st=>h.value=Q.name,["stop"])},{default:g(()=>[f(le,{size:"18"},{default:g(()=>[J(d(e(ce)),1)]),_:1})]),_:2},1032,["onClick"])]),default:g(()=>[J(d(Q.name)+" ",1)]),_:2},1032,["value"])]),_:2},1032,["disabled","onClick:select"])):(a(),B(qe,{key:1,"select-strategy":"classic",class:"py-0",disabled:e(pe)||e(ae),"onUpdate:selected":()=>ot(Q)},{default:g(()=>[f(He,{class:"px-2",value:e(j).pluginName,active:e(I).includes(Q.name)},{prepend:g(()=>[f(bt,{start:""},{default:g(()=>[f(xt,{"model-value":e(I).includes(Q.name),color:"#df2a4c"},null,8,["model-value"])]),_:2},1024)]),append:g(()=>[f(me,{class:"ml-auto",size:"28",rounded:"",density:"compact",variant:"text",onClick:P(st=>h.value=Q.name,["stop"])},{default:g(()=>[f(le,{size:"18"},{default:g(()=>[J(d(e(ce)),1)]),_:1})]),_:2},1032,["onClick"])]),default:g(()=>[J(d(Q.name)+" ",1)]),_:2},1032,["value","active"])]),_:2},1032,["disabled","onUpdate:selected"])),f(wt,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"})])}),128))])):y("",!0),v.name==="motion_detection"?(a(),u("div",Mn,[f(ge,{"plugin-name":e(w)},null,8,["plugin-name"])])):y("",!0),v.name==="object_detection"?(a(),u("div",Un,[f(_e,{"plugin-name":e(w)},null,8,["plugin-name"])])):y("",!0),v.name==="audio_detection"?(a(),u("div",Jn,[f(he,{"plugin-name":e(w)},null,8,["plugin-name"])])):y("",!0)]}),_:2},1032,["value","disabled"]))),128))]),_:1},8,["modelValue"])])):(a(),u("div",On,[f(de,{color:"#df2a4c",indeterminate:""})]))])],4)]),_:1}),s("div",Rn,[s("div",qn,[s("div",{class:"w-full flex flex-col gap-2 h-full",style:Qe({width:e(ve)&&!e(x)?"60%":"100%"})},[s("div",Hn,[e(j)?(a(),B(ye,{key:1,ref:"pluginRef",plugin:e(j),"min-height":"175px",height:"100%",width:"100%","border-radius":"4px","show-toggle":"","show-settings":"","show-logo":"","show-plugin-status":"","show-logs":"","show-configs":"",onIsLoading:c[2]||(c[2]=v=>$.value=v)},null,8,["plugin"])):(a(),u("div",Yn,[f(de,{color:"#df2a4c",indeterminate:""})]))]),e(ve)&&e(x)?(a(),B(e(R),{key:0})):y("",!0),s("div",Xn,[s("div",Gn,d(r.$t("views.plugin.readme")),1),e(o)?(a(),u("div",Kn,[f(de,{color:"#df2a4c",indeterminate:""})])):(a(),u("div",{key:1,class:"box-content w-full h-full flex-1 markdown-body pt-1",innerHTML:e(Se).render(e(t)||r.$t("views.plugin.no_readme"))},null,8,Wn))]),s("div",Zn,[s("div",eo,d(r.$t("views.plugin.changelog")),1),e(L)?(a(),u("div",to,[f(de,{color:"#df2a4c",indeterminate:""})])):(a(),u("div",{key:1,class:"box-content w-full h-full flex-1 markdown-body pt-1",innerHTML:e(Se).render(e(m)||r.$t("views.plugin.no_changelog"))},null,8,no))])],4),e(ve)&&!e(x)?(a(),B(e(R),{key:0})):y("",!0)])])])),e(h)?(a(),u("div",{key:2,"data-ignore-id":e(D)},[f(be,{"camera-name":e(h),show:e(z),onClose:c[3]||(c[3]=v=>h.value=void 0)},null,8,["camera-name","show"])],8,oo)):y("",!0),(ue=(re=e(A))==null?void 0:re.schema)!=null&&ue.config?(a(),B(xe,{key:3,modelValue:e(E),"onUpdate:modelValue":c[4]||(c[4]=v=>fe(E)?E.value=v:null),"ui-schema":{schema:e(A).schema},"plugin-config":e(M)||{},"plugin-name":e(w)},null,8,["modelValue","ui-schema","plugin-config","plugin-name"])):y("",!0)],2)}}}),ts=ke(so,[["__scopeId","data-v-5c59e760"]]);export{ts as default};
@@ -0,0 +1 @@
1
+ import{f as S,d as C,y as j,w as D}from"./main.BKyGw-1O.0.0.14.js";import{_ as z}from"./VPluginCard.UxjDX7aw.0.0.14.js";import{P as B}from"./plugins.XWRvgFHD.0.0.14.js";import{c as F,S as I,m as R,n as U,C as A,b as q,A as E,e as G}from"./vuetify.C9swI1mp.0.0.14.js";import{F as L,r,w as X,e as s,f as i,M as l,R as f,j as a,T as c,u as e,i as M,V as N,X as k,N as $,Q as P,l as H,a3 as J,U as K,n as b,aa as O,q as W}from"./@vue.CIFymae3.0.0.14.js";import{e as Y}from"./@mdi.jq8isxax.0.0.14.js";import"./vue-inline-svg.DV5nngF9.0.0.14.js";import"./vue3-toastify.CfJCs4au.0.0.14.js";import"./vue-i18n.B4qiXH_H.0.0.14.js";import"./@intlify.YW_pt133.0.0.14.js";import"./axios.BI2i94Vb.0.0.14.js";import"./@tanstack.Cvca3GsJ.0.0.14.js";import"./pinia.81SobSxK.0.0.14.js";import"./vue-router.BcAjblcv.0.0.14.js";import"./@vueuse.GozpFDMZ.0.0.14.js";import"./nprogress.y4ho8UN3.0.0.14.js";import"./@xterm.DJzQYeiB.0.0.14.js";import"./vee-validate.DQ8f4ION.0.0.14.js";import"./@vee-validate.Dhm2s2jJ.0.0.14.js";import"./zod.BaF2dDCd.0.0.14.js";import"./uuid.DvF23Exx.0.0.14.js";import"./socket.io-client.wHwPn3iN.0.0.14.js";import"./engine.io-client.Co7SlJ1E.0.0.14.js";import"./engine.io-parser.BiEtp6m2.0.0.14.js";import"./@socket.io.Dkula2eQ.0.0.14.js";import"./socket.io-parser.CPmU8U6u.0.0.14.js";import"./rxjs.Cn6mAcb0.0.0.14.js";import"./tslib.9k7AwCpt.0.0.14.js";import"./v-calendar.nDfqON1B.0.0.14.js";import"./@popperjs.BQBsAJpH.0.0.14.js";import"./VConfigEditor.vue_vue_type_script_setup_true_lang.EikqU5ed.0.0.14.js";import"./ace-builds.CFQYSvlz.0.0.14.js";import"./@vueform.wl5SN6Kr.0.0.14.js";import"./system.CTvBwGOj.0.0.14.js";import"./VConsole.CQqki9g1.0.0.14.js";const Z={class:"v-label"},ee={class:"flex flex-row items-center justify-center w-full mt-8"},te={class:"flex flex-col items-center justify-center w-full mt-3"},le={key:0,class:"my-3"},oe={key:1,class:"search-container w-full overflow-scroll hide-scrollbar"},se=L({__name:"VPluginSearch",setup(Q){const n=new B,{smallMobileActive:v}=S(),y=r({page:1,pageSize:-1}),w=r({}),u=r(""),d=r([]),{data:g,isLoading:m}=n.searchPluginsQuery(w,y);X(g,t=>{t!=null&&t.result&&(d.value=t.result.filter(o=>!o.installPath))},{immediate:!0,deep:!0});const h=t=>{t.preventDefault(),w.value.pluginname=u.value??""};return(t,o)=>{const x=z;return s(),i("div",null,[l(I,{class:"ml-auto",onSubmit:h},{default:f(()=>[a("label",Z,c(t.$t("components.form.label.name")),1),l(F,{modelValue:e(u),"onUpdate:modelValue":o[0]||(o[0]=_=>M(u)?u.value=_:null),placeholder:"camera-ui-","hide-details":"",clearable:"",solo:"",variant:"outlined",density:"comfortable","onClick:clear":h},null,8,["modelValue"])]),_:1}),a("div",ee,[a("h3",null,c(t.$t("components.plugin_search.plugins")),1),l(R,{size:"small",class:"ml-auto",color:"#df2a4c"},{default:f(()=>[N(c(e(d).length),1)]),_:1})]),l(U,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"mt-3"}),l(A,{active:e(m),indeterminate:e(m),color:"#df2a4c",height:"2px"},null,8,["active","indeterminate"]),a("div",te,[!e(m)&&!e(d).length?(s(),i("div",le,c(t.$t("views.plugins.no_plugins")),1)):e(m)?H("",!0):(s(),i("div",oe,[a("div",{class:"grid gap-2",style:k(`grid-template-columns: repeat(auto-fill, minmax(${e(v)?"100%":"450px"}, 1fr))`)},[(s(!0),i($,null,P(e(d),(_,p)=>(s(),i("div",{key:p,class:"relative"},[l(x,{plugin:_,height:"200px","max-height":"200px",width:"100%",background:"var(--background-inner-component-card)","min-width":e(v)?"100%":"450px","show-install-button":"","show-plugin-type":!1,"show-plugin-code":!1,"show-full-plugin-name":""},null,8,["plugin","min-width"])]))),128))],4)]))])])}}}),ie=C(se,[["__scopeId","data-v-0d35625b"]]),ne={class:"page-title"},ae={class:"w-full flex justify-center items-center mt-3"},re=L({__name:"Plugins",setup(Q){const{smallMobileActive:n}=S(),v=j(),y=new B,w=r(null),u=r(),d=r({page:1,pageSize:-1}),g=r(!1),{data:m,isLoading:h}=y.getPluginsQuery(d);return J(()=>{u.value=v.connectToNamespace("/plugins")}),K(()=>{var t,o;(o=(t=u.value)==null?void 0:t.end)==null||o.call(t)}),(t,o)=>{const x=ie,_=D;return s(),i("main",{class:b(["w-full h-full",{"px-0":e(n)}])},[a("div",{class:b(["mb-3 flex w-full items-center",{"px-2":e(n)}]),style:{height:"30px"}},[a("h1",ne,c(t.$t(`views.${String(t.$route.name).toLowerCase()}.title`)),1)],2),l(O,{name:"fade",tag:"div"},{default:f(()=>{var p;return[e(h)?(s(),i("div",{key:0,class:"grid gap-2",style:k(`grid-template-columns: repeat(auto-fill, minmax(${e(n)?"100%":"450px"}, 1fr))`)},[(s(),i($,null,P(15,V=>l(E,{key:V,elevation:1,type:"image",class:"relative",style:{"border-radius":"8px",overflow:"hidden"},height:175})),64))],4)):(p=e(m))!=null&&p.result.length?(s(),i("div",{key:2,class:"grid gap-2",style:k(`grid-template-columns: repeat(auto-fill, minmax(${e(n)?"100%":"450px"}, 1fr))`)},[(s(!0),i($,null,P(e(m).result,(V,T)=>(s(),i("div",{key:T,class:"relative"},[l(z,{ref_for:!0,ref_key:"pluginRef",ref:w,plugin:V,height:"200px","max-height":"200px",width:"100%","min-width":e(n)?"100%":"450px","border-radius":e(n)?"0px":"8px","show-toggle":"","show-settings":"","show-logo":"","show-plugin-status":"","show-logs":"","show-configs":""},null,8,["plugin","min-width","border-radius"])]))),128))],4)):(s(),i("div",{key:1,class:b(["disabled-text",{"px-2":e(n)}])},c(t.$t("views.plugins.no_plugins")),3))]}),_:1}),a("div",ae,[l(q,{variant:"text",color:"#df2a4c",icon:"",onClick:o[0]||(o[0]=W(p=>g.value=!0,["prevent"]))},{default:f(()=>[l(G,{size:"30"},{default:f(()=>[N(c(e(Y)),1)]),_:1})]),_:1})]),l(_,{modelValue:e(g),"onUpdate:modelValue":o[1]||(o[1]=p=>M(g)?g.value=p:null),title:t.$t("components.dialog.title.search_plugin"),"hide-confirm-button":"",loading:e(h),fullscreen:""},{content:f(()=>[l(x)]),_:1},8,["modelValue","title","loading"])],2)}}}),Ee=C(re,[["__scopeId","data-v-8648604f"]]);export{Ee as default};
@@ -0,0 +1 @@
1
+ import{f as p}from"./main.BKyGw-1O.0.0.14.js";import{F as m,e as s,f as a,j as r,T as l,n as i,u as e}from"./@vue.CIFymae3.0.0.14.js";import"./vue-inline-svg.DV5nngF9.0.0.14.js";import"./vue3-toastify.CfJCs4au.0.0.14.js";import"./vue-i18n.B4qiXH_H.0.0.14.js";import"./@intlify.YW_pt133.0.0.14.js";import"./axios.BI2i94Vb.0.0.14.js";import"./@tanstack.Cvca3GsJ.0.0.14.js";import"./pinia.81SobSxK.0.0.14.js";import"./vue-router.BcAjblcv.0.0.14.js";import"./@vueuse.GozpFDMZ.0.0.14.js";import"./nprogress.y4ho8UN3.0.0.14.js";import"./@xterm.DJzQYeiB.0.0.14.js";import"./vuetify.C9swI1mp.0.0.14.js";import"./@mdi.jq8isxax.0.0.14.js";import"./vee-validate.DQ8f4ION.0.0.14.js";import"./@vee-validate.Dhm2s2jJ.0.0.14.js";import"./zod.BaF2dDCd.0.0.14.js";import"./uuid.DvF23Exx.0.0.14.js";import"./socket.io-client.wHwPn3iN.0.0.14.js";import"./engine.io-client.Co7SlJ1E.0.0.14.js";import"./engine.io-parser.BiEtp6m2.0.0.14.js";import"./@socket.io.Dkula2eQ.0.0.14.js";import"./socket.io-parser.CPmU8U6u.0.0.14.js";import"./rxjs.Cn6mAcb0.0.0.14.js";import"./tslib.9k7AwCpt.0.0.14.js";import"./v-calendar.nDfqON1B.0.0.14.js";import"./@popperjs.BQBsAJpH.0.0.14.js";const n={class:"page-title"},G=m({__name:"Recordings",setup(c){const{smallMobileActive:t}=p();return(o,f)=>(s(),a("main",{class:i(["w-full h-full",{"px-0":e(t)}])},[r("div",{class:i(["flex w-full items-center",{"px-2":e(t)}]),style:{height:"30px"}},[r("h1",n,l(o.$t(`views.${String(o.$route.name).toLowerCase()}.title`)),1)],2)],2))}});export{G as default};
@@ -0,0 +1 @@
1
+ import{d as r}from"./main.BKyGw-1O.0.0.14.js";import{f as o,e as t}from"./@vue.CIFymae3.0.0.14.js";import"./vue-inline-svg.DV5nngF9.0.0.14.js";import"./vue3-toastify.CfJCs4au.0.0.14.js";import"./vue-i18n.B4qiXH_H.0.0.14.js";import"./@intlify.YW_pt133.0.0.14.js";import"./axios.BI2i94Vb.0.0.14.js";import"./@tanstack.Cvca3GsJ.0.0.14.js";import"./pinia.81SobSxK.0.0.14.js";import"./vue-router.BcAjblcv.0.0.14.js";import"./@vueuse.GozpFDMZ.0.0.14.js";import"./nprogress.y4ho8UN3.0.0.14.js";import"./@xterm.DJzQYeiB.0.0.14.js";import"./vuetify.C9swI1mp.0.0.14.js";import"./@mdi.jq8isxax.0.0.14.js";import"./vee-validate.DQ8f4ION.0.0.14.js";import"./@vee-validate.Dhm2s2jJ.0.0.14.js";import"./zod.BaF2dDCd.0.0.14.js";import"./uuid.DvF23Exx.0.0.14.js";import"./socket.io-client.wHwPn3iN.0.0.14.js";import"./engine.io-client.Co7SlJ1E.0.0.14.js";import"./engine.io-parser.BiEtp6m2.0.0.14.js";import"./@socket.io.Dkula2eQ.0.0.14.js";import"./socket.io-parser.CPmU8U6u.0.0.14.js";import"./rxjs.Cn6mAcb0.0.0.14.js";import"./tslib.9k7AwCpt.0.0.14.js";import"./v-calendar.nDfqON1B.0.0.14.js";import"./@popperjs.BQBsAJpH.0.0.14.js";const i={};function m(p,e){return t(),o("div",null,"Test")}const G=r(i,[["render",m]]);export{G as default};
@@ -0,0 +1 @@
1
+ import{F as q,t as U,r as u,c as S,w as _,a3 as ee,x as te,J,e as d,f as g,j as i,N as O,Q as oe,O as A,R as x,M as y,V as ae,T as C,u as o,l as H,X as N,W as K,b as se,n as F,q as ne,S as ie}from"./@vue.CIFymae3.0.0.14.js";import{f as P,S as G,B as re,T as le,R as ce,d as Q,V as Z,h as j}from"./main.BKyGw-1O.0.0.14.js";import{u as Y,a as ue}from"./vue-router.BcAjblcv.0.0.14.js";import{o as de,f as pe,g as me}from"./@vueuse.GozpFDMZ.0.0.14.js";import{e as fe,b as ve}from"./vuetify.C9swI1mp.0.0.14.js";import{B as be,G as _e}from"./@mdi.jq8isxax.0.0.14.js";import"./vue-inline-svg.DV5nngF9.0.0.14.js";import"./vue3-toastify.CfJCs4au.0.0.14.js";import"./vue-i18n.B4qiXH_H.0.0.14.js";import"./@intlify.YW_pt133.0.0.14.js";import"./axios.BI2i94Vb.0.0.14.js";import"./@tanstack.Cvca3GsJ.0.0.14.js";import"./pinia.81SobSxK.0.0.14.js";import"./vee-validate.DQ8f4ION.0.0.14.js";import"./@vee-validate.Dhm2s2jJ.0.0.14.js";import"./zod.BaF2dDCd.0.0.14.js";import"./uuid.DvF23Exx.0.0.14.js";import"./socket.io-client.wHwPn3iN.0.0.14.js";import"./engine.io-client.Co7SlJ1E.0.0.14.js";import"./engine.io-parser.BiEtp6m2.0.0.14.js";import"./@socket.io.Dkula2eQ.0.0.14.js";import"./socket.io-parser.CPmU8U6u.0.0.14.js";import"./rxjs.Cn6mAcb0.0.0.14.js";import"./tslib.9k7AwCpt.0.0.14.js";import"./v-calendar.nDfqON1B.0.0.14.js";import"./@popperjs.BQBsAJpH.0.0.14.js";import"./nprogress.y4ho8UN3.0.0.14.js";import"./@xterm.DJzQYeiB.0.0.14.js";var M=(f=>(f[f.MAXWIDTH=280]="MAXWIDTH",f))(M||{});const he={class:"flex flex-col w-full pb-safe"},ge={class:"flex flex-row navigation-text"},Se={class:"ml-5"},xe={class:"navigation-title"},ye={key:0},ke={key:0,class:"overlay"},we=q({__name:"VSubNavigation",props:{routes:{},description:{type:Boolean,default:!1},state:{type:Boolean,default:!1}},emits:["inner-sidebar-state"],setup(f,{emit:k}){const{desktopActive:l,mobileActive:w,extraSmallMobileActive:T}=P(),r=Y(),B=pe(ce),I=k,c=f,{routes:$,state:v,description:R}=U(c),h=u(null),s=u(),p=u(),t=S(()=>{let e=`calc(${a.value}px + env(safe-area-inset-left, 0px))`;return p.value==="closed"&&s.value==="closed"&&(e=`calc(${a.value}px - env(safe-area-inset-left, 0px))`),e}),a=S(()=>{let e=0;switch(p.value){case"opened":e=G.MAXWIDTH;break;case"minified":e=G.MINWIDTH;break;case"closed":e=0;break}return!l.value&&!v.value&&(e-=M.MAXWIDTH),e}),V=S(()=>{var e;return T.value&&((e=r.meta)!=null&&e.navigation.showMobileBottomBar)?re.HEIGHT:0});return de(h,e=>{if(l.value||s.value==="closed")return;e.target.closest(".no-outside")||(s.value="closed")}),B.on(e=>{e.sidebarState&&(p.value=e.sidebarState)}),_(l,e=>{s.value=e?"opened":"closed"}),_(v,e=>{s.value=e?l.value?"opened":"overlay":"closed"}),_(s,e=>{e&&(B.emit({subNavigationState:e}),I("inner-sidebar-state",e))}),ee(()=>{var e;w.value||(e=r.meta)!=null&&e.ui.noMinifiedSidebar?p.value="closed":p.value="minified"}),te(()=>{var n;s.value=l.value?"opened":"closed";const e=(n=r.name)==null?void 0:n.toString().toLowerCase(),m=document.getElementById(e);m&&setTimeout(()=>{m.scrollIntoView({behavior:"smooth"})},100)}),(e,m)=>{const n=J("router-link");return d(),g(O,null,[i("div",{ref_key:"innerSidebar",ref:h,class:"inner-sidebar-settings",style:N({left:o(t),maxWidth:`${o(M).MAXWIDTH}px`,height:`calc(100dvh - ${o(le).MINHEIGHT}px - ${o(V)}px)`})},[i("div",he,[(d(!0),g(O,null,oe(o($),(b,D)=>{var W;return d(),A(n,{id:(W=b.name)==null?void 0:W.toString().toLowerCase(),key:D,class:"navigation-inner",to:b.path,style:N({"border-bottom":D!==o($).length-1?"1px solid var(--border)":void 0})},{default:x(()=>{var E,X,z;return[i("div",ge,[y(fe,{size:((E=b.meta)==null?void 0:E.navigation.iconSize)||"20",class:"navigation-icon"},{default:x(()=>{var L;return[ae(C((L=b.meta)==null?void 0:L.navigation.icon),1)]}),_:2},1032,["size"]),i("div",Se,[i("b",xe,C(e.$t(`navigation.${(X=b.meta)==null?void 0:X.name}`)),1),o(R)?(d(),g("p",ye,C(e.$t(`navigation_description.${(z=b.meta)==null?void 0:z.description}`)),1)):H("",!0)])])]}),_:2},1032,["id","to","style"])}),128))])],4),y(K,{name:"overlay-fade",mode:"in-out"},{default:x(()=>[o(s)==="overlay"?(d(),g("div",ke)):H("",!0)]),_:1})],64)}}}),Be=Q(we,[["__scopeId","data-v-ea00908a"]]),Ie={class:"w-full h-full flex flex-row"},$e={class:"flex flex-row items-center"},Ce=q({__name:"Settings",setup(f){const k=Y(),l=ue(),{desktopActive:w,smallMobileActive:T}=P(),r=u(),B=u(null),I=u(null),c=u(!1),$=u(0),v=se(Z.find(t=>t.name==="Settings").children.filter(t=>j(t))),R=S(()=>Z.find(t=>t.name==="Settings").children.filter(t=>j(t))),{isSwiping:h,direction:s}=me(I),p=S(()=>{let t="0px";switch(r.value){case"closed":case"overlay":t="0px";break;case"opened":t=`${M.MAXWIDTH}px`;break}return`padding-left: ${t}`});return _([h,s],()=>{if(h.value){const t=v.findIndex(a=>a.path===k.path.split("/settings/")[1]);switch(s.value){case"right":{const a=v[t-1];a&&l.push({path:a.path})}break;case"left":{const a=v[t+1];a&&l.push({path:a.path})}break}}}),_(r,()=>{c.value=r.value!=="closed"}),_(k,()=>{w.value||(c.value=!1)},{deep:!0}),(t,a)=>{var m;const V=Be,e=J("router-view");return d(),g("main",Ie,[y(V,{description:"",state:o(c),routes:o(R),onInnerSidebarState:a[0]||(a[0]=n=>r.value=n)},null,8,["state","routes"]),i("div",{class:"router-container",style:N(`transition: 0.2s all ease-in-out;${o(p)};`)},[i("div",{ref_key:"routerContainer",ref:B,class:"router-container-inner h-full w-full flex flex-col"},[i("div",$e,[o(w)?H("",!0):(d(),A(ve,{key:0,ref:"innerSidebarButton",density:"compact",icon:o(c)?o(be):o(_e),class:F(["no-outside",{"ml-2":o(T)}]),elevation:"0",style:{border:"1px solid rgba(var(--border-rgb), 0.75)"},onClick:a[1]||(a[1]=ne(n=>c.value=!o(c),["prevent"]))},null,8,["icon","class"])),i("h1",{class:F(["page-title text-color",{"mx-3":o(r)!=="opened"}])},C(t.$t(`views.settings.title_${(m=t.$route.meta)==null?void 0:m.name}`)),3)]),i("div",{ref_key:"subviewContainer",ref:I,class:"h-full"},[y(e,{class:"mt-10 pb-5",style:{height:"calc(100% - 40px)"}},{default:x(({Component:n})=>[y(K,{name:"fade",mode:"out-in"},{default:x(()=>[(d(),A(ie(n),{key:o($)}))]),_:2},1024)]),_:1})],512)],512)],4)])}}}),at=Q(Ce,[["__scopeId","data-v-838a0f39"]]);export{at as default};
@@ -0,0 +1,4 @@
1
+ import{Y as ye,y as Ve,f as we,s as be,Z as he,t as ke,w as _e}from"./main.BKyGw-1O.0.0.14.js";import{F as Se,r as n,c as V,w as L,U as $e,e as c,O as w,R as l,u as t,j as a,T as r,f as X,g as Ae,q as Y,M as i,V as Q,n as R,m as Ce,i as M}from"./@vue.CIFymae3.0.0.14.js";import{av as Te}from"./@mdi.jq8isxax.0.0.14.js";import{F as xe,a as Ie}from"./vee-validate.DQ8f4ION.0.0.14.js";import{S as Ue}from"./system.CTvBwGOj.0.0.14.js";import{V as Le}from"./VConsole.CQqki9g1.0.0.14.js";import{t as Qe}from"./@vee-validate.Dhm2s2jJ.0.0.14.js";import{s as ee}from"./utils.BvINh1mj.0.0.14.js";import{c as Z}from"./compare-versions.DqEOhma6.0.0.14.js";import{V as te,T as Re,b as z,e as Me,m as Pe,y as G}from"./vuetify.C9swI1mp.0.0.14.js";import"./vue-inline-svg.DV5nngF9.0.0.14.js";import"./vue3-toastify.CfJCs4au.0.0.14.js";import"./vue-i18n.B4qiXH_H.0.0.14.js";import"./@intlify.YW_pt133.0.0.14.js";import"./axios.BI2i94Vb.0.0.14.js";import"./@tanstack.Cvca3GsJ.0.0.14.js";import"./pinia.81SobSxK.0.0.14.js";import"./vue-router.BcAjblcv.0.0.14.js";import"./@vueuse.GozpFDMZ.0.0.14.js";import"./nprogress.y4ho8UN3.0.0.14.js";import"./@xterm.DJzQYeiB.0.0.14.js";import"./zod.BaF2dDCd.0.0.14.js";import"./uuid.DvF23Exx.0.0.14.js";import"./socket.io-client.wHwPn3iN.0.0.14.js";import"./engine.io-client.Co7SlJ1E.0.0.14.js";import"./engine.io-parser.BiEtp6m2.0.0.14.js";import"./@socket.io.Dkula2eQ.0.0.14.js";import"./socket.io-parser.CPmU8U6u.0.0.14.js";import"./rxjs.Cn6mAcb0.0.0.14.js";import"./tslib.9k7AwCpt.0.0.14.js";import"./v-calendar.nDfqON1B.0.0.14.js";import"./@popperjs.BQBsAJpH.0.0.14.js";const Be=Qe(ye),Ne={class:"subview-title text-color"},De={class:"inner-component p-4"},Fe={class:"flex items-center"},ze={class:"text-sm"},je={class:"text-sm ml-auto text-right"},Oe={key:1},We={key:1,class:"ml-auto"},qe=a("div",{class:"my-8"},null,-1),Ee={class:"subview-title text-color"},Ye={class:"inner-component p-4"},Ze={class:"relative"},Ge={for:"serverAddresses",class:"v-label"},He=a("div",{class:"p-5"},[a("span",null,"WIP: Release Notes")],-1),Je={class:"p-5 flex w-full items-center justify-center"},Ke={class:"v-label"},Lt=Se({__name:"System",setup(Xe){const se=new he,b=new Ue,oe=Ve(),{smallMobileActive:v}=we(),{isTouch:ae}=be(),p=n(!1),h=n(!1),g=n(!1),P=n(""),k=n(null),f=n(),_=n(!1),S=n(""),$=n(""),A=n(""),C=n(!1),T=n(""),B=n(),N=V(()=>q.value||ue.value||me.value),le=V(()=>({fontSize:v.value?12:14})),j=V(()=>m.value&&$.value?Z($.value,m.value.version)===1:!1),O=V(()=>m.value&&S.value?Z(S.value,m.value.version)===1:!1),H=V(()=>m.value&&A.value?Z(A.value,m.value.version)===1:!1),ne=V(()=>{var s;const e=((s=x.value)==null?void 0:s.versions.toReversed())||[];return T.value=e[0],e}),{data:D,isLoading:J}=b.getSystemInfoQuery(),{data:m,isLoading:re}=se.apiInfoQuery(),{data:x,isLoading:W}=b.checkVersionQuery(),{mutateAsync:K,isPending:q}=b.updateServerQuery(),{mutateAsync:ie,isPending:ue}=b.patchSystemInfoQuery(),{mutateAsync:de,isPending:me}=b.restartServerQuery();L(D,()=>{if(D.value){const{networkAddresses:e,...s}=D.value;B.value=ke(s)}},{deep:!0,immediate:!0}),L(m,()=>{var e;P.value=((e=m.value)==null?void 0:e.version)||""},{deep:!0,immediate:!0}),L(x,()=>{var e,s,d;$.value=((e=x.value)==null?void 0:e["dist-tags"].latest)||"",S.value=((s=x.value)==null?void 0:s["dist-tags"].alpha)||"",A.value=((d=x.value)==null?void 0:d["dist-tags"].test)||""},{deep:!0,immediate:!0}),L(p,e=>{E(e),!e&&!_.value&&setTimeout(()=>{g.value=!0},300)}),L(v,()=>{ce()});const E=e=>{var s,d,o,F,y,I;e?(f.value=oe.connectToNamespace("/logs"),(s=f.value)==null||s.socket.on("stdout/@camera.ui/server",u=>{var U;(U=k.value)==null||U.writeTerminal(u)}),(d=f.value)==null||d.socket.on("stdout",u=>{var U;(U=k.value)==null||U.writeTerminal(u)}),(o=f.value)==null||o.socket.on("disconnect",()=>{var u;(u=k.value)==null||u.writeTerminal(`
2
+ \rWebsocket failed to connect! Is the server running?
3
+ \r
4
+ \r`)}),(F=f.value)==null||F.socket.on("clear-log",()=>{var u;(u=k.value)==null||u.clearTerminal()})):(I=(y=f.value)==null?void 0:y.end)==null||I.call(y)},ce=()=>{p.value&&(E(!1),E(!0))},ve=async()=>{h.value=!1,_.value=!1;const e=j.value?$.value:O.value?S.value:H.value?A.value:"";if(e){await ee(300),p.value=!0;try{await K({pluginData:{pluginname:"@camera.ui/server",pluginversion:e}}),P.value=e}catch{_.value=!0}}},pe=async e=>{C.value=!1,_.value=!1,await ee(300),p.value=!0;try{await K({pluginData:{pluginname:"@camera.ui/server",pluginversion:e}}),P.value=e}catch{_.value=!0}},fe=async()=>{g.value=!1,await de()},ge=async e=>{await ie(e)};return $e(()=>{var e,s;(s=(e=f.value)==null?void 0:e.end)==null||s.call(e)}),(e,s)=>{const d=_e;return c(),w(t(Ie),{ref:"form",class:"flex flex-col w-full","validation-schema":t(Be),onSubmit:s[11]||(s[11]=o=>ge(o))},{default:l(()=>[a("div",null,[a("span",Ne,r(e.$t("views.settings.current_version")),1),a("div",De,[a("div",Fe,[a("span",ze,r(e.$t("views.settings.current_version_info")),1),a("span",je,[t(re)?(c(),w(te,{key:0,color:"#df2a4c",indeterminate:""})):(c(),X("span",Oe,[a("b",null,r(t(P)),1)])),Ae((c(),w(z,{density:"compact",loading:t(q),icon:"",variant:"text",class:"ml-2",onClick:s[0]||(s[0]=Y(o=>C.value=!0,["prevent"]))},{default:l(()=>[i(Me,{size:"20",class:"text-passive"},{default:l(()=>[Q(r(t(Te)),1)]),_:1})]),_:1},8,["loading"])),[[Re,{disabled:t(ae),text:e.$t("components.form.tooltip.restart")}]])])])]),a("div",{class:R(["flex w-full my-5",{"mr-3":t(v)}])},[t(j)||t(O)||t(H)?(c(),w(z,{key:0,loading:t(N),elevation:"0",tonal:"",class:R(["ml-auto mr-2 text-white bg-color-primary",{"mr-2":t(v)}]),style:{border:"1px solid var(--color-primary-darken-2)"},onClick:s[1]||(s[1]=Y(o=>h.value=!0,["prevent"]))},{default:l(()=>[Q(r(e.$t("components.form.button.update")),1)]),_:1},8,["loading","class"])):(c(),X("div",We)),i(z,{loading:t(N),elevation:"0",tonal:"",class:R(["text-white bg-color-primary",{"mr-2":t(v)}]),style:{border:"1px solid var(--color-primary-darken-2)"},onClick:s[2]||(s[2]=Y(o=>g.value=!0,["prevent"]))},{default:l(()=>[Q(r(e.$t("components.form.button.restart")),1)]),_:1},8,["loading","class"])],2),qe,a("span",Ee,r(e.$t("views.settings.network")),1),a("div",Ye,[a("div",Ze,[a("label",Ge,r(e.$t("components.form.label.server_addresses")),1),t(B)?(c(),w(t(xe),{key:0,modelValue:t(B).serverAddresses,"onUpdate:modelValue":s[3]||(s[3]=o=>t(B).serverAddresses=o),name:"serverAddresses"},{default:l(({field:o,errorMessage:F,errors:y})=>{var I;return[i(G,Ce({"model-value":o.value,variant:"outlined",density:"compact",name:"serverAddresses","item-title":"address","item-value":"address",chips:"",multiple:""},o,{loading:t(J),disabled:t(J),items:((I=t(D))==null?void 0:I.networkAddresses)||[],error:y.length>0,"error-messages":F}),{chip:l(({item:u})=>[i(Pe,{color:"#df2a4c"},{default:l(()=>[Q(r(u.title),1)]),_:2},1024)]),_:2},1040,["model-value","loading","disabled","items","error","error-messages"])]}),_:1},8,["modelValue"])):(c(),w(G,{key:1,loading:"",variant:"outlined",density:"compact"}))])]),a("div",{class:R(["flex w-full my-5",{"mr-3":t(v)}])},[i(z,{class:R(["text-white bg-color-primary ml-auto",{"mr-2":t(v)}]),loading:t(N),elevation:"0",tonal:"",style:{border:"1px solid var(--color-primary-darken-2)"},type:"submit"},{loader:l(()=>[i(te,{color:"#fff",size:"14",width:"2",indeterminate:""})]),default:l(()=>[Q(r(e.$t("components.form.button.save")),1)]),_:1},8,["loading","class"])],2)]),i(d,{modelValue:t(h),"onUpdate:modelValue":s[4]||(s[4]=o=>M(h)?h.value=o:null),title:`${e.$t("components.dialog.title.update")}: ${t(j)?t($):t(O)?t(S):t(A)}`,"fullscreen-content":"",loading:t(q),"confirm-text":"components.form.button.update",onConfirm:ve},{content:l(()=>[He]),_:1},8,["modelValue","title","loading"]),i(d,{modelValue:t(p),"onUpdate:modelValue":s[5]||(s[5]=o=>M(p)?p.value=o:null),title:e.$t("components.dialog.title.log"),"fullscreen-content":"","hide-confirm-button":""},{content:l(()=>[i(Le,{ref_key:"consoleRef",ref:k,class:"text-editor",options:t(le)},null,8,["options"])]),_:1},8,["modelValue","title"]),i(d,{modelValue:t(g),"onUpdate:modelValue":s[6]||(s[6]=o=>M(g)?g.value=o:null),title:e.$t("components.dialog.title.restart"),"confirm-text":"components.form.button.restart",loading:t(N),onConfirm:s[7]||(s[7]=o=>fe())},{content:l(()=>[a("div",Je,[a("span",null,r(e.$t("components.dialog.message.confirm_restart_server")),1)])]),_:1},8,["modelValue","title","loading"]),i(d,{modelValue:t(C),"onUpdate:modelValue":s[9]||(s[9]=o=>M(C)?C.value=o:null),title:e.$t("components.dialog.title.install_version"),"confirm-text":"components.form.button.install",loading:t(W),onConfirm:s[10]||(s[10]=o=>pe(t(T)))},{content:l(()=>[a("label",Ke,r(e.$t("components.form.label.server_version")),1),i(G,{modelValue:t(T),"onUpdate:modelValue":s[8]||(s[8]=o=>M(T)?T.value=o:null),"hide-details":"",solo:"",variant:"outlined",density:"compact",items:t(ne),disabled:t(W),loading:t(W)},null,8,["modelValue","items","disabled","loading"])]),_:1},8,["modelValue","title","loading"])]),_:1},8,["validation-schema"])}}});export{Lt as default};
@@ -0,0 +1 @@
1
+ import{i as ie,f as de,U as me,w as pe,c as ue,W as ce,_ as ve,d as fe}from"./main.BKyGw-1O.0.0.14.js";import{F as ge,r as u,b as _e,c as I,e as be,f as he,j as s,T as d,M as a,u as e,i as Q,R as r,q as y,n as we,m as c,V as h,ai as ye,aj as xe}from"./@vue.CIFymae3.0.0.14.js";import{au as Ve,az as Ce,T as $e,m as U,a as k}from"./@mdi.jq8isxax.0.0.14.js";import{a as j,F as g}from"./vee-validate.DQ8f4ION.0.0.14.js";import{c as b,a1 as Ue,b as B,o as ke,e as F,j as Se,f as O,a0 as Pe,y as T,m as A}from"./vuetify.C9swI1mp.0.0.14.js";import"./vue-inline-svg.DV5nngF9.0.0.14.js";import"./vue3-toastify.CfJCs4au.0.0.14.js";import"./vue-i18n.B4qiXH_H.0.0.14.js";import"./@intlify.YW_pt133.0.0.14.js";import"./axios.BI2i94Vb.0.0.14.js";import"./@tanstack.Cvca3GsJ.0.0.14.js";import"./pinia.81SobSxK.0.0.14.js";import"./vue-router.BcAjblcv.0.0.14.js";import"./@vueuse.GozpFDMZ.0.0.14.js";import"./nprogress.y4ho8UN3.0.0.14.js";import"./@xterm.DJzQYeiB.0.0.14.js";import"./@vee-validate.Dhm2s2jJ.0.0.14.js";import"./zod.BaF2dDCd.0.0.14.js";import"./uuid.DvF23Exx.0.0.14.js";import"./socket.io-client.wHwPn3iN.0.0.14.js";import"./engine.io-client.Co7SlJ1E.0.0.14.js";import"./engine.io-parser.BiEtp6m2.0.0.14.js";import"./@socket.io.Dkula2eQ.0.0.14.js";import"./socket.io-parser.CPmU8U6u.0.0.14.js";import"./rxjs.Cn6mAcb0.0.0.14.js";import"./tslib.9k7AwCpt.0.0.14.js";import"./v-calendar.nDfqON1B.0.0.14.js";import"./@popperjs.BQBsAJpH.0.0.14.js";const ze=x=>(ye("data-v-94f6c0a0"),x=x(),xe(),x),Ie={class:"subview-title text-color"},Fe={class:"inner-component p-4"},De={class:"flex flex-row items-center w-full"},Ee={class:"flex flex-col"},Le={class:"text-base"},Me={class:"text-disabled"},Ne={class:"ml-auto"},Qe={style:{margin:"5px"}},je={class:"flex flex-row w-full justify-start items-center"},Be={class:"icon-wrapper"},Oe={class:"menu-item ml-2"},Te=ze(()=>s("div",{class:"my-1"},null,-1)),Ae={class:"flex flex-row w-full justify-start items-center"},Re={class:"icon-wrapper"},Je={class:"menu-item ml-2",style:{color:"#ef4444 !important"}},qe={class:"text-center pt-2"},He={class:"relative"},We={for:"username",class:"v-label"},Ge={class:"relative"},Ke={for:"password",class:"v-label"},Xe={class:"relative"},Ye={for:"passwordConfirm",class:"v-label"},Ze={class:"relative"},es={for:"role",class:"v-label"},ss={class:"relative"},as={for:"username",class:"v-label"},os={class:"relative"},ts={for:"password",class:"v-label"},ls={class:"relative"},rs={for:"passwordConfirm",class:"v-label"},ns={class:"relative"},is={for:"role",class:"v-label"},ds=ge({__name:"User",setup(x){const{t:R}=ie.global,{smallMobileActive:J}=de(),V=new me,p=u({pageSize:5,page:1}),w=u(!1),_=u(),v=u(!1),f=u(!1),D=u(["user","admin"]),S=u(),E=u(),C=u(),q=_e([{title:R("views.settings.title_user"),align:"start",key:"username",value:"username",width:"100%",sortable:!0}]),n=I(()=>W.value||Z.value||X.value||se.value),H=I(()=>{var l;const o=Math.ceil((((l=L.value)==null?void 0:l.pagination.totalItems)||0)/p.value.pageSize);return o===1&&(p.value.page=1),o}),{data:L,isLoading:W,isPlaceholderData:G}=V.getUsersQuery(p),{mutate:K,isPending:X}=V.createUserQuery(),{mutate:Y,isPending:Z}=V.patchUserQuery(),{mutate:ee,isPending:se}=V.removeUserQuery(),P=I(()=>{if(!_.value)return;const o=JSON.parse(JSON.stringify(_.value));return delete o._id,delete o.avatar,o}),ae=()=>{p.value.page=Math.max(p.value.page-1,1)},oe=()=>{G.value||(p.value.page=p.value.page+1)},te=async()=>{var l,$;const o=await((l=S.value)==null?void 0:l.validate());o!=null&&o.valid&&ne(($=S.value)==null?void 0:$.values)},le=async()=>{var l;if(!_.value||!P.value)throw new Error("No user to edit");const o=await((l=E.value)==null?void 0:l.validate());o!=null&&o.valid&&Y({username:_.value.username,userData:P.value})},re=async o=>{ee({username:o.username})},ne=async o=>{K({userData:o},{onSuccess:()=>{w.value=!1}})};return(o,l)=>{var N;const $=ve,M=pe;return be(),he("div",null,[s("div",null,[s("span",Ie,d(o.$t("views.settings.registered_users")),1),s("div",Fe,[a(b,{modelValue:e(C),"onUpdate:modelValue":l[0]||(l[0]=t=>Q(C)?C.value=t:null),placeholder:o.$t("views.settings.search_by_name"),type:"text",density:"comfortable",variant:"outlined","hide-details":"",class:"mb-5",loading:e(n)},null,8,["modelValue","placeholder","loading"]),a(Ue,{"items-per-page":e(p).pageSize,headers:e(q),items:(N=e(L))==null?void 0:N.result,class:"elevation-0","item-value":"username","hide-default-footer":"","hide-default-header":"",search:e(C),hover:""},{"item.username":r(({item:t})=>[s("div",De,[a($,{src:t.avatar,size:"4rem",style:{"border-radius":"4rem",border:"1px solid var(--border)"},class:"mr-3"},null,8,["src"]),s("div",Ee,[s("span",Le,d(t.username),1),s("span",Me,d(t.role),1)]),s("div",Ne,[a(ke,{offset:"2"},{activator:r(({props:i})=>[a(B,c(i,{disabled:e(n),size:"30",class:"text-disabled",elevation:"0",icon:"",loading:e(n)}),{default:r(()=>[a(F,{size:"22"},{default:r(()=>[h(d(e(Ve)),1)]),_:1})]),_:2},1040,["disabled","loading"])]),default:r(()=>[a(Se,{width:"200",style:{border:"1px solid var(--background-timeline)","border-radius":"10px"},elevation:"3"},{default:r(()=>[s("div",Qe,[a(O,{style:{"border-radius":"5px !important"},disabled:e(n),onClick:y(i=>_.value=t,["prevent"])},{default:r(()=>[s("div",je,[s("div",Be,[a(F,{size:"20",class:"text-passive"},{default:r(()=>[h(d(e(Ce)),1)]),_:1})]),s("span",Oe,d(o.$t("views.settings.edit")),1)])]),_:2},1032,["disabled","onClick"]),Te,a(O,{style:{color:"#ef4444 !important","border-radius":"5px !important"},disabled:e(n),onClick:y(i=>re(t),["prevent"])},{default:r(()=>[s("div",Ae,[s("div",Re,[a(F,{size:"20",color:"red"},{default:r(()=>[h(d(e($e)),1)]),_:1})]),s("span",Je,d(o.$t("views.settings.remove")),1)])]),_:2},1032,["disabled","onClick"])])]),_:2},1024)]),_:2},1024)])])]),bottom:r(()=>[s("div",qe,[a(Pe,{modelValue:e(p).page,"onUpdate:modelValue":l[1]||(l[1]=t=>e(p).page=t),length:e(H),onPrev:y(ae,["prevent"]),onNext:y(oe,["prevent"])},null,8,["modelValue","length"])])]),_:1},8,["items-per-page","headers","items","search"])])]),s("div",{class:we(["flex flex-row my-5",{"mr-3":e(J)}])},[a(B,{color:"success",class:"ml-auto",loading:e(n),onClick:l[2]||(l[2]=y(t=>w.value=!0,["prevent"]))},{default:r(()=>[h(d(o.$t("components.form.button.create_new_user")),1)]),_:1},8,["loading"])],2),a(M,{"model-value":e(_)!==void 0,title:o.$t("components.dialog.title.edit_user"),"confirm-text":"components.form.button.save",loading:e(n),onConfirm:l[5]||(l[5]=t=>le()),onClose:l[6]||(l[6]=t=>_.value=void 0)},{content:r(()=>[a(e(j),{ref_key:"userVeeFormEdit",ref:E,class:"flex flex-col w-full h-full px-3","validation-schema":e(ue),"initial-values":e(P)},{default:r(()=>[s("div",null,[s("div",He,[s("label",We,d(o.$t("components.form.label.username")),1),a(e(g),{name:"username"},{default:r(({field:t,errorMessage:i,errors:m})=>[a(b,c({name:"username",variant:"outlined",density:"compact"},t,{type:"text",loading:e(n),disabled:e(n),error:m.length>0,"error-messages":i}),null,16,["loading","disabled","error","error-messages"])]),_:1})]),s("div",Ge,[s("label",Ke,d(o.$t("components.form.label.new_password")),1),a(e(g),{name:"password"},{default:r(({field:t,errorMessage:i,errors:m})=>[a(b,c({name:"password",variant:"outlined",density:"compact"},t,{type:e(v)?"text":"password",loading:e(n),disabled:e(n),error:m.length>0,"error-messages":i,"append-inner-icon":e(v)?e(U):e(k),"onClick:appendInner":l[3]||(l[3]=z=>v.value=!e(v))}),null,16,["type","loading","disabled","error","error-messages","append-inner-icon"])]),_:1})]),s("div",Xe,[s("label",Ye,d(o.$t("components.form.label.new_password_confirm")),1),a(e(g),{name:"passwordConfirm"},{default:r(({field:t,errorMessage:i,errors:m})=>[a(b,c({name:"passwordConfirm",variant:"outlined",density:"compact"},t,{type:e(f)?"text":"password",loading:e(n),disabled:e(n),error:m.length>0,"error-messages":i,"append-inner-icon":e(f)?e(U):e(k),"onClick:appendInner":l[4]||(l[4]=z=>f.value=!e(f))}),null,16,["type","loading","disabled","error","error-messages","append-inner-icon"])]),_:1})]),s("div",Ze,[s("label",es,d(o.$t("components.form.label.role")),1),a(e(g),{name:"role"},{default:r(({field:t,errorMessage:i,errors:m})=>[a(T,c({"model-value":t.value,variant:"outlined",density:"compact",name:"role",chips:""},t,{loading:e(n),disabled:e(n),items:e(D),error:m.length>0,"error-messages":i}),{chip:r(()=>[a(A,{color:"#df2a4c"},{default:r(()=>[h(d(t.value),1)]),_:2},1024)]),_:2},1040,["model-value","loading","disabled","items","error","error-messages"])]),_:1})])])]),_:1},8,["validation-schema","initial-values"])]),_:1},8,["model-value","title","loading"]),a(M,{modelValue:e(w),"onUpdate:modelValue":l[9]||(l[9]=t=>Q(w)?w.value=t:null),title:o.$t("components.dialog.title.create_new_user"),"confirm-text":"components.form.button.add",loading:e(n),onConfirm:l[10]||(l[10]=t=>te())},{content:r(()=>[a(e(j),{ref_key:"userVeeForm",ref:S,class:"flex flex-col w-full h-full px-3","validation-schema":e(ce)},{default:r(()=>[s("div",null,[s("div",ss,[s("label",as,d(o.$t("components.form.label.username")),1),a(e(g),{name:"username"},{default:r(({field:t,errorMessage:i,errors:m})=>[a(b,c({name:"username",variant:"outlined",density:"compact"},t,{type:"text",loading:e(n),disabled:e(n),error:m.length>0,"error-messages":i}),null,16,["loading","disabled","error","error-messages"])]),_:1})]),s("div",os,[s("label",ts,d(o.$t("components.form.label.new_password")),1),a(e(g),{name:"password"},{default:r(({field:t,errorMessage:i,errors:m})=>[a(b,c({name:"password",variant:"outlined",density:"compact"},t,{type:e(v)?"text":"password",loading:e(n),disabled:e(n),error:m.length>0,"error-messages":i,"append-inner-icon":e(v)?e(U):e(k),"onClick:appendInner":l[7]||(l[7]=z=>v.value=!e(v))}),null,16,["type","loading","disabled","error","error-messages","append-inner-icon"])]),_:1})]),s("div",ls,[s("label",rs,d(o.$t("components.form.label.new_password_confirm")),1),a(e(g),{name:"passwordConfirm"},{default:r(({field:t,errorMessage:i,errors:m})=>[a(b,c({name:"passwordConfirm",variant:"outlined",density:"compact"},t,{type:e(f)?"text":"password",loading:e(n),disabled:e(n),error:m.length>0,"error-messages":i,"append-inner-icon":e(f)?e(U):e(k),"onClick:appendInner":l[8]||(l[8]=z=>f.value=!e(f))}),null,16,["type","loading","disabled","error","error-messages","append-inner-icon"])]),_:1})]),s("div",ns,[s("label",is,d(o.$t("components.form.label.role")),1),a(e(g),{name:"role"},{default:r(({field:t,errorMessage:i,errors:m})=>[a(T,c({variant:"outlined",density:"compact",name:"role",chips:""},t,{loading:e(n),disabled:e(n),items:e(D),error:m.length>0,"error-messages":i}),{chip:r(()=>[a(A,{color:"#df2a4c"},{default:r(()=>[h(d(t.value),1)]),_:2},1024)]),_:2},1040,["loading","disabled","items","error","error-messages"])]),_:1})])])]),_:1},8,["validation-schema"])]),_:1},8,["modelValue","title","loading"])])}}}),Qs=fe(ds,[["__scopeId","data-v-94f6c0a0"]]);export{Qs as default};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["ace-builds.CFQYSvlz.0.0.14.js","@xterm.DJzQYeiB.0.0.14.js","assets/@xterm.0.0.14.CGrrDQr5.css"])))=>i.map(i=>d[i]);
2
+ import{N as E}from"./main.BKyGw-1O.0.0.14.js";import{m as T,b as V,t as B,c as C}from"./ace-builds.CFQYSvlz.0.0.14.js";import{C as L}from"./@vueuse.GozpFDMZ.0.0.14.js";import{F as P,ak as w,at as x,al as A,t as R,r as n,w as l,x as z,a0 as D,e as N,f as j}from"./@vue.CIFymae3.0.0.14.js";const q=P({__name:"VConfigEditor",props:w({lang:{default:"yaml"},readOnly:{type:Boolean,default:!1},printMargin:{type:[Number,Boolean],default:!1},theme:{default:"light"},options:{},placeholder:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:w(["init","blur","input","change","changeSelectionStyle","changeSession","copy","focus","paste","update:value"],["update:modelValue"]),async setup(p,{emit:U}){let s,f;const u=([s,f]=x(()=>E(()=>import("./ace-builds.CFQYSvlz.0.0.14.js").then(e=>e.a),__vite__mapDeps([0,1,2]))),s=await s,f(),s),c=A(p,"modelValue"),o=U,b={useWorker:!1,wrap:!0,showPrintMargin:!1,tabSize:2,highlightGutterLine:!0,useSoftTabs:!0,dragEnabled:!1,showGutter:!0,scrollPastEnd:.1},k=p,{theme:m,readOnly:h,options:g,lang:y,printMargin:_,placeholder:S}=R(k),a=n(),r=n(),i=n(),d=n(!1),v=n("");L(i,()=>{a.value&&a.value.resize(!0)}),l(c,e=>{var t;if(v.value!==e){try{d.value=!0,(t=a.value)==null||t.setValue(e,1)}finally{d.value=!1}v.value=e}}),l(m,()=>{setTimeout(()=>{M()},10)}),l(y,e=>{var t;(t=a.value)==null||t.setOption("mode","ace/mode/"+e),e==="json"?u.config.setModuleUrl("ace/mode/json",T):u.config.setModuleUrl("ace/mode/yaml",V)},{immediate:!0}),l(g,e=>{var t;e&&((t=a.value)==null||t.setOptions(e))}),l(S,e=>{var t;e!==void 0&&((t=a.value)==null||t.setOption("placeholder",e))}),l(h,e=>{var t;(t=a.value)==null||t.setReadOnly(e)}),l(_,e=>{var t;(t=a.value)==null||t.setOption("printMargin",e)});const M=()=>{var O;const e=m.value==="dark"?"twilight":"tomorrow",t=m.value==="dark"?B:C;u.config.setModuleUrl(`ace/theme/${e}`,t),r.value=e,(O=a.value)==null||O.setTheme(`ace/theme/${r.value}`)};return z(()=>{i.value&&(a.value=u.edit(i.value,{placeholder:S.value,readOnly:h.value,value:c.value,mode:"ace/mode/"+y.value,theme:r.value?"ace/theme/"+r.value:void 0,printMargin:_.value,...b,...g.value}),M(),a.value.on("change",()=>{if(d.value)return;const e=a.value.getValue();v.value=e,c.value=e}),a.value.on("blur",e=>{o("blur",e)}),a.value.on("input",()=>{o("input")}),a.value.on("change",e=>{o("change",e)}),a.value.on("changeSelectionStyle",e=>{o("changeSelectionStyle",e)}),a.value.on("changeSession",e=>{o("changeSession",e)}),a.value.on("copy",e=>{o("copy",e)}),a.value.on("focus",e=>{o("focus",e)}),a.value.on("paste",e=>{o("paste",e)}),o("init",a.value))}),D(()=>{var e,t;(e=a.value)==null||e.removeAllListeners(),(t=a.value)==null||t.destroy()}),(e,t)=>(N(),j("div",{ref_key:"editorEl",ref:i},null,512))}});export{q as _};
@@ -0,0 +1 @@
1
+ import{x as z,a as W,b as k}from"./@xterm.DJzQYeiB.0.0.14.js";import{R as y,d as D}from"./main.BKyGw-1O.0.0.14.js";import{b as F,d as V,f as O}from"./@vueuse.GozpFDMZ.0.0.14.js";import{F as R,t as U,r as u,w as m,x as H,U as j,e as q,f as G}from"./@vue.CIFymae3.0.0.14.js";const J=R({__name:"VConsole",props:{options:{default:()=>({fontSize:14})}},setup(b,{expose:S}){const E=b,M=O(y),g=F(),p=V({listenOrientation:!1}),{options:c}=U(E),n=u(null),s=u(null),f=u(null),t=u(null);let h,r;m(c,()=>{t.value&&(t.value.options=c.value,l())},{deep:!0}),m(g.orientation,()=>{l()},{deep:!0}),m([p.height,p.width],()=>{l()},{deep:!0}),M.on(e=>{try{e.sidebarState&&(clearTimeout(h),h=setTimeout(()=>{l()},150))}catch{}});const w=()=>{var e,a,o;(a=(e=t.value)==null?void 0:e._core)!=null&&a.viewport&&(t.value._core.viewport.scrollBarWidth=0),(o=n.value)==null||o.fit()},l=()=>{setTimeout(()=>{var e;w(),(e=t.value)==null||e.scrollToBottom()})},A=()=>{var e;(e=t.value)==null||e.clear()},B=e=>{var a;(a=t.value)==null||a.write(e)},C=()=>{if(!t.value||!t.value.element)return;let e=0,a=0,o=0,d=0,v=!1;const x=1,I=10;t.value.element.addEventListener("touchstart",i=>{clearInterval(r),e=i.touches[0].clientY,a=e,o=0,d=Date.now(),v=!1}),t.value.element.addEventListener("touchmove",i=>{i.preventDefault();const _=i.touches[0].clientY,T=Date.now(),L=_-a,Y=T-d;d=T,a=_,o=Math.max(-x,Math.min(L/Y,x)),v=!0}),t.value.element.addEventListener("touchend",()=>{v&&Math.abs(o)>.5&&(r=setInterval(()=>{if(!t.value){clearInterval(r);return}t.value.scrollLines(-Math.round(o*I)),o*=.9,Math.abs(o)<.1&&clearInterval(r)},16))})};return H(()=>{t.value=new z.Terminal(c.value),n.value=new W.FitAddon,s.value=new k.WebglAddon,t.value.loadAddon(s.value),t.value.loadAddon(n.value),t.value.open(f.value),n.value.activate(t.value),w(),C(),s.value.onContextLoss(()=>{var e;(e=s.value)==null||e.dispose()})}),j(()=>{var e,a;try{(e=t.value)==null||e.dispose(),(a=n.value)==null||a.dispose()}catch{}}),S({clearTerminal:A,writeTerminal:B,resizeHandler:l}),(e,a)=>(q(),G("div",{ref_key:"terminalContainer",ref:f,class:"console"},null,512))}}),X=D(J,[["__scopeId","data-v-ab61aa21"]]);export{X as V};