@camera.ui/server 0.0.6 → 0.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/interface/assets/{@tanstack-BqH4GyO-.js → @tanstack-B-9PO-kT.js} +1 -1
- package/dist/interface/assets/{@vee-validate-DCBdnGo-.js → @vee-validate-D_G0ehOl.js} +1 -1
- package/dist/interface/assets/{@vue-C7-KaDG4.js → @vue-C10tA4b9.js} +6 -6
- package/dist/interface/assets/{@vueform-arggO0eF.js → @vueform-Bj73kRPS.js} +1 -1
- package/dist/interface/assets/{@vueuse-C3WMTDqL.js → @vueuse-BPeqNGoM.js} +1 -1
- package/dist/interface/assets/Account-MEaGtu1D.js +1 -0
- package/dist/interface/assets/Adminpanel-D1ycltxf.js +1 -0
- package/dist/interface/assets/Appearance-Jlzp_P21.js +1 -0
- package/dist/interface/assets/Backup-1-ju9NDo.js +1 -0
- package/dist/interface/assets/Camera-BOu5dUel.js +1 -0
- package/dist/interface/assets/Cameras-C7eUXdZk.js +1 -0
- package/dist/interface/assets/Cameras-tmTzi1M6.css +1 -0
- package/dist/interface/assets/Camview-CEgwGCGR.js +1 -0
- package/dist/interface/assets/{Camview-vUAs5YHU.css → Camview-CWTrsoY0.css} +1 -1
- package/dist/interface/assets/Config-Dt-etQ3h.js +1 -0
- package/dist/interface/assets/{Console-Caz7y-T0.js → Console-FCve5CKy.js} +2 -2
- package/dist/interface/assets/FirstSteps-DLkKDSe9.js +1 -0
- package/dist/interface/assets/{NewCamera-B9t-0NCc.js → NewCamera-Cc1X79Ns.js} +2 -2
- package/dist/interface/assets/Plugin-CnQjafMC.js +1 -0
- package/dist/interface/assets/{Plugin-BSHKKjrl.css → Plugin-DzKKCoqQ.css} +1 -1
- package/dist/interface/assets/Plugins-B8gCgxOx.css +1 -0
- package/dist/interface/assets/Plugins-CwyUdMlv.js +1 -0
- package/dist/interface/assets/Recordings-Boeev1lV.js +1 -0
- package/dist/interface/assets/Recordings-D5ta7AYS.js +1 -0
- package/dist/interface/assets/Settings-Cvm2jnBr.js +1 -0
- package/dist/interface/assets/System-fHQ7XKri.js +1 -0
- package/dist/interface/assets/User-5o1VKizc.js +1 -0
- package/dist/interface/assets/VConfigEditor.vue_vue_type_script_setup_true_lang-C_95ELTZ.js +2 -0
- package/dist/interface/assets/VConsole-BHy92Ws0.js +1 -0
- package/dist/interface/assets/VConsole-MV9pQtJj.css +1 -0
- package/dist/interface/assets/{VPlayer-YdRn97Bs.js → VPlayer-LX5HGLrY.js} +1 -1
- package/dist/interface/assets/{VPluginCard--3bx6UJb.js → VPluginCard-CFpg0LM4.js} +2 -2
- package/dist/interface/assets/VPluginCard-Fl0AYmnF.css +1 -0
- package/dist/interface/assets/main-BCWSiwnj.js +9 -0
- package/dist/interface/assets/{main-B3IVLctZ.css → main-CQNVVncO.css} +1 -1
- package/dist/interface/assets/{pinia-D8MtiGcH.js → pinia-CitQ5b66.js} +2 -2
- package/dist/interface/assets/{plugins-Bf03y242.js → plugins-D80RNVmI.js} +1 -1
- package/dist/interface/assets/qrcode-SHonoxyK.js +8 -0
- package/dist/interface/assets/{system-BONnDA4y.js → system-CS_ZOs3_.js} +1 -1
- package/dist/interface/assets/{ui-CNpIJotI.js → ui-CHKoHLl-.js} +1 -1
- package/dist/interface/assets/{v-calendar-uh0aTGqP.js → v-calendar-C-8W4FeM.js} +1 -1
- package/dist/interface/assets/{vee-validate-D3FqbChK.js → vee-validate-Ck3I2guh.js} +1 -1
- package/dist/interface/assets/{vue-i18n-1AU8MPys.js → vue-i18n-DuCDz9TJ.js} +1 -1
- package/dist/interface/assets/{vue-inline-svg-2DDwYW6V.js → vue-inline-svg-C2gR6nRD.js} +1 -1
- package/dist/interface/assets/{vue-router-DfeQ8s4I.js → vue-router-OPGDMnws.js} +1 -1
- package/dist/interface/assets/{vue3-dnd-BwxcSU9Z.js → vue3-dnd-Hf295yge.js} +1 -1
- package/dist/interface/assets/{vue3-toastify-Ul-rf53I.js → vue3-toastify-DQr2dOCx.js} +1 -1
- package/dist/interface/assets/vuetify-CrcT8VHB.js +5 -0
- package/dist/interface/index.html +14 -15
- package/dist/interface/sw.js +1 -1
- package/dist/server/bin/cui-service.d.ts +1 -0
- package/dist/server/bin/cui-service.js +41 -9
- package/dist/server/bin/cui-service.js.map +1 -1
- package/dist/server/package.json +8 -7
- package/dist/server/requirements.txt +2 -3
- package/dist/server/src/api/controllers/cameras.controller.js +2 -2
- package/dist/server/src/api/controllers/cameras.controller.js.map +1 -1
- package/dist/server/src/api/controllers/plugins.controller.js +7 -6
- package/dist/server/src/api/controllers/plugins.controller.js.map +1 -1
- package/dist/server/src/api/go2rtc/api/streams.d.ts +4 -4
- package/dist/server/src/api/go2rtc/api/streams.js +2 -24
- package/dist/server/src/api/go2rtc/api/streams.js.map +1 -1
- package/dist/server/src/api/go2rtc/types.d.ts +6 -2
- package/dist/server/src/api/schemas/go2rtc.schema.d.ts +5 -5
- package/dist/server/src/api/services/cameras.service.d.ts +6 -5
- package/dist/server/src/api/services/cameras.service.js +72 -59
- package/dist/server/src/api/services/cameras.service.js.map +1 -1
- package/dist/server/src/api/services/plugins.service.js +11 -13
- package/dist/server/src/api/services/plugins.service.js.map +1 -1
- package/dist/server/src/api.d.ts +2 -2
- package/dist/server/src/camera/controller.d.ts +9 -4
- package/dist/server/src/camera/controller.js +21 -7
- package/dist/server/src/camera/controller.js.map +1 -1
- package/dist/server/src/camera/device.d.ts +15 -3
- package/dist/server/src/camera/device.js.map +1 -1
- package/dist/server/src/camera/index.d.ts +18 -39
- package/dist/server/src/camera/index.js +137 -165
- package/dist/server/src/camera/index.js.map +1 -1
- package/dist/server/src/camera/interfaces/camera.d.ts +0 -1
- package/dist/server/src/camera/interfaces/camera.js +0 -8
- package/dist/server/src/camera/interfaces/camera.js.map +1 -1
- package/dist/server/src/camera/streaming/werift-session.d.ts +10 -1
- package/dist/server/src/camera/streaming/werift-session.js +16 -1
- package/dist/server/src/camera/streaming/werift-session.js.map +1 -1
- package/dist/server/src/camera/types.d.ts +0 -1
- package/dist/server/src/camera/types.js.map +1 -1
- package/dist/server/src/camera/videoFrame.d.ts +3 -3
- package/dist/server/src/camera/videoFrame.js +6 -7
- package/dist/server/src/camera/videoFrame.js.map +1 -1
- package/dist/server/src/decoder/types.d.ts +4 -9
- package/dist/server/src/decoder/worker.d.ts +3 -5
- package/dist/server/src/decoder/worker.js +40 -64
- package/dist/server/src/decoder/worker.js.map +1 -1
- package/dist/server/src/go2rtc/index.js +1 -1
- package/dist/server/src/go2rtc/index.js.map +1 -1
- package/dist/server/src/index.d.ts +3 -3
- package/dist/server/src/main.js +1 -2
- package/dist/server/src/main.js.map +1 -1
- package/dist/server/src/nats/connection.d.ts +17 -0
- package/dist/server/src/nats/connection.js +66 -0
- package/dist/server/src/nats/connection.js.map +1 -0
- package/dist/server/src/nats/error.d.ts +9 -0
- package/dist/server/src/nats/error.js +11 -0
- package/dist/server/src/nats/error.js.map +1 -0
- package/dist/server/src/nats/index.d.ts +6 -4
- package/dist/server/src/nats/index.js +22 -17
- package/dist/server/src/nats/index.js.map +1 -1
- package/dist/server/src/nats/messageQueue.d.ts +7 -4
- package/dist/server/src/nats/messageQueue.js +43 -59
- package/dist/server/src/nats/messageQueue.js.map +1 -1
- package/dist/server/src/nats/proxy/cameraDevice.js +19 -24
- package/dist/server/src/nats/proxy/cameraDevice.js.map +1 -1
- package/dist/server/src/nats/proxy/deviceManager.d.ts +2 -2
- package/dist/server/src/nats/proxy/deviceManager.js +4 -14
- package/dist/server/src/nats/proxy/deviceManager.js.map +1 -1
- package/dist/server/src/nats/server.js +4 -10
- package/dist/server/src/nats/server.js.map +1 -1
- package/dist/server/src/nats/subscription.d.ts +12 -0
- package/dist/server/src/nats/subscription.js +21 -0
- package/dist/server/src/nats/subscription.js.map +1 -0
- package/dist/server/src/nats/types.d.ts +25 -40
- package/dist/server/src/nats/types.js +1 -10
- package/dist/server/src/nats/types.js.map +1 -1
- package/dist/server/src/nats/utils.d.ts +2 -4
- package/dist/server/src/nats/utils.js +3 -3
- package/dist/server/src/nats/utils.js.map +1 -1
- package/dist/server/src/plugins/index.d.ts +3 -5
- package/dist/server/src/plugins/index.js +54 -141
- package/dist/server/src/plugins/index.js.map +1 -1
- package/dist/server/src/plugins/plugin.d.ts +4 -13
- package/dist/server/src/plugins/plugin.js +40 -90
- package/dist/server/src/plugins/plugin.js.map +1 -1
- package/dist/server/src/plugins/types.d.ts +4 -0
- package/dist/server/src/plugins/types.js.map +1 -1
- package/dist/server/src/plugins/worker.d.ts +1 -1
- package/dist/server/src/plugins/worker.js +52 -66
- package/dist/server/src/plugins/worker.js.map +1 -1
- package/dist/server/src/polyglot/node/decoder/child.js +87 -159
- package/dist/server/src/polyglot/node/decoder/child.js.map +1 -1
- package/dist/server/src/polyglot/node/decoder/imageUtils.d.ts +1 -1
- package/dist/server/src/polyglot/node/plugins/cameraStorage.d.ts +2 -2
- package/dist/server/src/polyglot/node/plugins/cameraStorage.js.map +1 -1
- package/dist/server/src/polyglot/node/plugins/child.d.ts +1 -1
- package/dist/server/src/polyglot/node/plugins/child.js +34 -60
- package/dist/server/src/polyglot/node/plugins/child.js.map +1 -1
- package/dist/server/src/polyglot/node/plugins/{config.js → configService.js} +1 -1
- package/dist/server/src/polyglot/node/plugins/configService.js.map +1 -0
- package/dist/server/src/polyglot/node/plugins/{api.d.ts → pluginApi.d.ts} +9 -12
- package/dist/server/src/polyglot/node/plugins/pluginApi.js +34 -0
- package/dist/server/src/polyglot/node/plugins/pluginApi.js.map +1 -0
- package/dist/server/src/polyglot/node/plugins/{logger.d.ts → pluginLogger.d.ts} +2 -0
- package/dist/server/src/polyglot/node/plugins/pluginLogger.js +89 -0
- package/dist/server/src/polyglot/node/plugins/pluginLogger.js.map +1 -0
- package/dist/server/src/polyglot/node/plugins/proxy/cameraDevice.d.ts +8 -11
- package/dist/server/src/polyglot/node/plugins/proxy/cameraDevice.js +67 -129
- package/dist/server/src/polyglot/node/plugins/proxy/cameraDevice.js.map +1 -1
- package/dist/server/src/polyglot/node/plugins/proxy/deviceManager.d.ts +6 -8
- package/dist/server/src/polyglot/node/plugins/proxy/deviceManager.js +15 -43
- package/dist/server/src/polyglot/node/plugins/proxy/deviceManager.js.map +1 -1
- package/dist/server/src/polyglot/node/plugins/storageController.d.ts +2 -2
- package/dist/server/src/polyglot/node/plugins/storageController.js.map +1 -1
- package/dist/server/src/polyglot/python/camera/interfaces/camera.py +0 -6
- package/dist/server/src/polyglot/python/camera/video_frame.py +10 -18
- package/dist/server/src/polyglot/python/camera_ui_types/__init__.py +1 -5
- package/dist/server/src/polyglot/python/decoder/child.py +102 -161
- package/dist/server/src/polyglot/python/plugins/camera_storage.py +10 -23
- package/dist/server/src/polyglot/python/plugins/child.py +35 -60
- package/dist/server/src/polyglot/python/plugins/{proxy/message_queue.py → message_queue.py} +50 -81
- package/dist/server/src/polyglot/python/plugins/plugin_api.py +13 -21
- package/dist/server/src/polyglot/python/plugins/proxy/camera_device.py +90 -173
- package/dist/server/src/polyglot/python/plugins/proxy/device_manager.py +25 -64
- package/dist/server/src/polyglot/python/plugins/storage_controller.py +3 -4
- package/dist/server/src/polyglot/python/utilities/connection.py +86 -0
- package/dist/server/src/polyglot/python/utilities/object_path.py +12 -4
- package/dist/server/src/polyglot/python/utilities/subscriptions.py +20 -0
- package/dist/server/src/polyglot/python/utilities/task.py +11 -1
- package/dist/server/src/services/config/index.js +4 -2
- package/dist/server/src/services/config/index.js.map +1 -1
- package/dist/server/src/services/logger/index.js +11 -8
- package/dist/server/src/services/logger/index.js.map +1 -1
- package/dist/server/src/utils/ffmpeg.d.ts +2 -0
- package/dist/server/src/{decoder → utils}/ffmpeg.js +2 -2
- package/dist/server/src/utils/ffmpeg.js.map +1 -0
- package/dist/server/src/utils/pythonInstaller.d.ts +1 -1
- package/dist/server/src/utils/pythonInstaller.js +10 -4
- package/dist/server/src/utils/pythonInstaller.js.map +1 -1
- package/dist/server/src/utils/reader.js.map +1 -0
- package/dist/server/src/utils/subscribed.d.ts +4 -4
- package/dist/server/src/utils/subscribed.js.map +1 -1
- package/package.json +8 -7
- package/dist/interface/assets/@camera.ui-2NVnv26v.js +0 -8
- package/dist/interface/assets/Account-gJpkf0nE.js +0 -1
- package/dist/interface/assets/Adminpanel-Bge9nu5N.js +0 -1
- package/dist/interface/assets/Appearance-D22q-X_I.js +0 -1
- package/dist/interface/assets/Backup-pJm6s10G.js +0 -1
- package/dist/interface/assets/Camera-BgO2yRjb.js +0 -1
- package/dist/interface/assets/Cameras-BM3vSM_R.css +0 -1
- package/dist/interface/assets/Cameras-DjeKruR_.js +0 -1
- package/dist/interface/assets/Camview-DfzlprzN.js +0 -1
- package/dist/interface/assets/Config-BKIOIkjC.js +0 -1
- package/dist/interface/assets/FirstSteps-mQK4XFTs.js +0 -1
- package/dist/interface/assets/Plugin-Di_bBsg-.js +0 -1
- package/dist/interface/assets/Plugins-BsMITags.css +0 -1
- package/dist/interface/assets/Plugins-DhmzMNuO.js +0 -1
- package/dist/interface/assets/Recordings-Bu53bSBp.js +0 -1
- package/dist/interface/assets/Recordings-XY20w8yp.js +0 -1
- package/dist/interface/assets/Settings-gGRBRVST.js +0 -1
- package/dist/interface/assets/System-ZDrcLNk0.js +0 -1
- package/dist/interface/assets/User-D4vEhhzi.js +0 -1
- package/dist/interface/assets/VConfigEditor.vue_vue_type_script_setup_true_lang-CXFI-IeE.js +0 -2
- package/dist/interface/assets/VConsole-BHo3xprq.js +0 -1
- package/dist/interface/assets/VConsole-f-nUkOuD.css +0 -1
- package/dist/interface/assets/VPluginCard-BJYMuCLk.css +0 -1
- package/dist/interface/assets/encode-utf8-Cn5aGd7v.js +0 -1
- package/dist/interface/assets/main-C4rYiRNz.js +0 -2
- package/dist/interface/assets/qrcode-CGiDONbL.js +0 -8
- package/dist/interface/assets/vuetify-_-Oqac3B.js +0 -5
- package/dist/server/src/decoder/ffmpeg.d.ts +0 -2
- package/dist/server/src/decoder/ffmpeg.js.map +0 -1
- package/dist/server/src/nats/proxy/index.d.ts +0 -2
- package/dist/server/src/nats/proxy/index.js +0 -3
- package/dist/server/src/nats/proxy/index.js.map +0 -1
- package/dist/server/src/polyglot/node/decoder/reader.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/api.js +0 -34
- package/dist/server/src/polyglot/node/plugins/api.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/config.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/logger.js +0 -128
- package/dist/server/src/polyglot/node/plugins/logger.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/proxy/index.d.ts +0 -2
- package/dist/server/src/polyglot/node/plugins/proxy/index.js +0 -3
- package/dist/server/src/polyglot/node/plugins/proxy/index.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/proxy/messageQueue.d.ts +0 -20
- package/dist/server/src/polyglot/node/plugins/proxy/messageQueue.js +0 -152
- package/dist/server/src/polyglot/node/plugins/proxy/messageQueue.js.map +0 -1
- /package/dist/server/src/polyglot/node/plugins/{config.d.ts → configService.d.ts} +0 -0
- /package/dist/server/src/polyglot/python/plugins/{logger.py → plugin_logger.py} +0 -0
- /package/dist/server/src/{polyglot/node/decoder → utils}/reader.d.ts +0 -0
- /package/dist/server/src/{polyglot/node/decoder → utils}/reader.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
var So=Object.defineProperty;var Po=(o,l,s)=>l in o?So(o,l,{enumerable:!0,configurable:!0,writable:!0,value:s}):o[l]=s;var wa=(o,l,s)=>Po(o,typeof l!="symbol"?l+"":l,s);import{a as zo,e as eo,d as Mt,s as Mo,w as Fa,i as It,x as De,G as Eo,H as Fo,I as Io,J as Bo,f as to,K as ao,k as xa,u as To,U as qo,t as Ao,h as No}from"./main-C4rYiRNz.js";import{F as dt,t as mt,r as y,c as W,J as $a,e as r,f as g,u as e,N as ke,j as m,T as d,M as a,l as O,O as V,R as t,m as Pe,ar as na,q as H,V as _,i as ze,Q as $e,w as we,aj as Oo,ak as Qo,y as ca,n as Dt,z as xt,ah as Do,ai as Lo,al as Ro,k as Ca,W as oo,I as Uo,aa as no,a0 as so,af as jo,U as Zo,g as Ko,X as Bt}from"./@vue-C7-KaDG4.js";import{m as Wo,a as Ho,s as Tt,_ as Da,F as lo,G as ro,e as io,N as Yo,$ as Jo,V as uo,a3 as Xo,a4 as Go,a5 as en,a6 as tn,c as Va,a7 as La,a8 as an,a9 as on,aa as Ra,ab as Ia,ac as nn,Y as sn,i as ln,ad as Ua,ae as rn,af as un,ag as cn,ah as dn,Q as mn,R as vn,K as pn,ai as fn,aj as gn,ak as yn,al as hn,S as bn,T as _n,am as ja,I as kn,J as wn,E as xn,an as Cn,ao as $n,ap as Vn,aq as Sn,ar as Pn,as as zn}from"./@mdi-C-QA1nE3.js";import{b as Mn}from"./qrcode-CGiDONbL.js";import{F as Be,a as sa}from"./vee-validate-D3FqbChK.js";import{z as rt,c as _e}from"./zod-BaF2dDCd.js";import{s as co}from"./pinia-D8MtiGcH.js";import{z as En,l as Zt,o as Ba,A as Fn,B as In,x as Bn,v as Ot,C as Tn}from"./@vueuse-C3WMTDqL.js";import{c as lt,b as te,e as j,d as Sa,z as qt,m as Xe,L as vt,M as pt,W as ct,N as ft,K as gt,X as Pt,w as Ta,x as qa,V as Ct,f as Pa,J as za,n as je,Y as Za,T as qn,U as An,Z as Nn,C as On,G as Ka,I as Wa,o as Ha}from"./vuetify-_-Oqac3B.js";import{t as da}from"./@vee-validate-DCBdnGo-.js";import{i as yt}from"./vue3-toastify-Ul-rf53I.js";import{P as mo}from"./plugins-Bf03y242.js";import{D as vo}from"./draggabilly-Arakw9Dk.js";import{u as Qn,b as at,a as Qt}from"./@tanstack-BqH4GyO-.js";import{u as Dn,a as po}from"./vue-router-DfeQ8s4I.js";const Ma=o=>/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(.\d+)?(Z|[+-]\d{2}:\d{2})?)?$/.test(o),fo=(o,l)=>(l.mode==="withSeconds"?/^([01]?[0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$/:/^([01]?[0-9]|2[0-3]):([0-5][0-9])$/).test(o),go=o=>/^\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,7}\b$/.test(o),yo=o=>/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/.test(o),la=(o,l)=>(l===4?/^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$/:/^\s*([0-9a-fA-F]{1,4}:){7}([0-9a-fA-F]{1,4})\s*$/).test(o),Ln=o=>{const l={};return Object.entries(o).forEach(([s,C])=>{l[s]=Aa(C)}),{schema:l}},Aa=o=>{switch(!0){case o===void 0:case typeof o>"u":case typeof o=="function":case typeof o=="symbol":case o instanceof Date:throw new TypeError(`Invalid JSON value: ${String(o)}`);case typeof o=="number":return jn();case typeof o=="boolean":return Zn();case typeof o=="string":return Kn(o);case Array.isArray(o):return o.every(s=>typeof s=="string"||typeof s=="number"||typeof s=="boolean")?Wn(o):Yn(o);case o instanceof Object:return Hn(o);default:throw new TypeError(`Invalid JSON value: ${o}`)}},Rn=o=>{const l={};return Object.entries(o.schema).forEach(([s,C])=>{l[s]=ra(C)}),l},ra=o=>{switch(o.type){case"string":case"number":case"boolean":return Kt(o)?o.multiple?o.defaultValue!==void 0?[o.defaultValue]:void 0:o.defaultValue!==void 0?o.defaultValue:o.required?o.enum[0]:void 0:o.defaultValue;case"object":return o.properties?Object.entries(o.properties).reduce((l,[s,C])=>(l[s]=ra(C),l),{}):{};case"array":return o.items?[ra(o.items)]:[];default:return null}},Ya=(o,l,s="")=>{const C={},z=(Q,L)=>{const h=s?`${s}.${L}`:L,Z=_o(l,h);if(Lt(Q)&&Q.properties){const $=Ya(Q.properties,l,h);Object.keys($).length>0&&(C[L]=$)}else if(ua(Q)&&Q.items){const $=Z;Array.isArray($)&&(C[L]=$.map((M,k)=>Ya(Q.items,{[k]:M},`${h}[${k}]`)).filter(M=>Object.keys(M).length>0))}else Q.store&&(C[L]=Z)};return Jn(o)?z(o,s):Object.entries(o).forEach(([Q,L])=>{z(L,Q)}),C},ho=o=>!!(o.readonly||Lt(o)&&o.properties&&Object.values(o.properties).every(l=>ho(l))),bo=o=>!!(o.store||Lt(o)&&o.properties&&Object.values(o.properties).some(l=>bo(l))),_o=(o={},l)=>{const s=l.split(".").reduce((z,Q)=>{if(Q.includes("[")){const[L,h]=Q.split("[");z.push(L,h.slice(0,-1))}else z.push(Q);return z},[]);let C=o;for(const z of s){if(C===void 0)return;C=C[z]}return C},Un=o=>{const l={};return Object.entries(o.schema).forEach(([s,C])=>{l[s]=Na(C)}),rt.object(l).strict()},Na=o=>{switch(o.type){case"string":case"number":case"boolean":return Kt(o)?ts(o):zt(o)?Xn(o):ia(o)?Gn(o):es(o);case"object":return as(o);case"array":return os(o)}},jn=()=>({type:"number"}),Zn=()=>({type:"boolean"}),Kn=o=>{const l={type:"string"};return Ma(o)&&(l.format=o.includes("T")?"date-time":"date"),fo(o.split("+")[0],{mode:"withSeconds"})&&(l.format="time"),go(o)&&(l.format="email"),yo(o)&&(l.format="uuid"),la(o,4)&&(l.format="ipv4"),la(o,6)&&(l.format="ipv6"),l},Wn=o=>({type:"string",enum:o.map(l=>l.toString())}),Hn=o=>{if(!Object.keys(o).length)return{type:"object"};const l={};return Object.entries(o).forEach(([s,C])=>{const z=Aa(C);z.key=s,z.description=z.description||`Description for ${s}`,z.required=z.required===void 0?!0:z.required,z.readonly=z.readonly||!1,l[s]=z}),{type:"object",properties:l}},Yn=o=>{if(o.length===0)return{type:"array"};const l=o.every(z=>typeof z=="object"&&z!==null&&!Array.isArray(z)),s=o.every(z=>typeof z=="string"),C=o.every(z=>typeof z=="number");if(l){const z={},Q={};return o.forEach(L=>{Object.keys(L).forEach(h=>{Q[h]=(Q[h]||0)+1})}),o.forEach(L=>{Object.entries(L).forEach(([h,Z])=>{if(!z[h]){const $=Q[h]===o.length;z[h]={...Aa(Z),required:$,title:h,description:`Description for ${h}`,readonly:!1}}})}),{type:"array",items:{type:"object",properties:z}}}else return s?{type:"array",items:{type:"string"}}:C?{type:"array",items:{type:"number"}}:{type:"array",items:{type:"boolean"}}},zt=o=>o.type==="string"&&!("enum"in o),ia=o=>o.type==="number"&&!("enum"in o),Ea=o=>o.type==="boolean"&&!("enum"in o),Kt=o=>"enum"in o,Lt=o=>o.type==="object",Ja=o=>Lt(o)&&"buttons"in o,ua=o=>o.type==="array",Jn=o=>zt(o)||ia(o)||Ea(o)||Kt(o)||Lt(o)||ua(o),Xn=o=>{let l=rt.string();if(o.required&&(l=l.nonempty("Required")),o.minLength!==void 0&&(l=l.min(o.minLength)),o.maxLength!==void 0&&(l=l.max(o.maxLength)),o.format)switch(o.format){case"date-time":l=l.refine(s=>Ma(s)&&s.includes("T"),{message:"Invalid date-time"});break;case"date":l=l.refine(s=>Ma(s),{message:"Invalid date"});break;case"time":l=l.refine(s=>fo(s.split("+")[0],{mode:"withSeconds"}),{message:"Invalid time"});break;case"email":l=l.refine(s=>go(s),{message:"Invalid email"});break;case"uuid":l=l.refine(s=>yo(s),{message:"Invalid uuid"});break;case"ipv4":l=l.refine(s=>la(s,4),{message:"Invalid ipv4"});break;case"ipv6":l=l.refine(s=>la(s,6),{message:"Invalid ipv6"});break}return o.required?l:l.optional()},Gn=o=>{let l=rt.number();return o.minimum!==void 0&&(l=l.min(o.minimum)),o.maximum!==void 0&&(l=l.max(o.maximum)),o.required&&(l=l.refine(s=>s!==void 0&&typeof s=="number",{message:"Required"})),o.required?l:l.optional()},es=o=>{const l=rt.boolean();return o.required?l:l.optional()},ts=o=>{const l=o.enum.map(C=>o.required?rt.literal(C):rt.literal(C).optional()),s=o.required?rt.union(l):rt.any().transform(C=>!C||C===""||!o.enum.some(z=>z===C)?void 0:C);return o.multiple?o.required?s.array():s.array().optional():o.required?s:s.optional()},as=o=>{let l;if(o.properties){const s=Object.entries(o.properties).reduce((C,[z,Q])=>(C[z]=Na(Q),C),{});l=rt.object(s).strict()}else l=rt.record(rt.any());return o.required?l:l.optional()},os=o=>{let l;return o.items?l=Na(o.items).array():l=rt.any().array(),o.required?l:l.optional()},ns={0:"person",1:"bicycle",2:"car",3:"motorcycle",4:"airplane",5:"bus",6:"train",7:"truck",8:"boat",9:"traffic light",10:"fire hydrant",11:"stop sign",12:"parking meter",13:"bench",14:"bird",15:"cat",16:"dog",17:"horse",18:"sheep",19:"cow",20:"elephant",21:"bear",22:"zebra",23:"giraffe",24:"backpack",25:"umbrella",26:"handbag",27:"tie",28:"suitcase",29:"frisbee",30:"skis",31:"snowboard",32:"sports ball",33:"kite",34:"baseball bat",35:"baseball glove",36:"skateboard",37:"surfboard",38:"tennis racket",39:"bottle",40:"wine glass",41:"cup",42:"fork",43:"knife",44:"spoon",45:"bowl",46:"banana",47:"apple",48:"sandwich",49:"orange",50:"broccoli",51:"carrot",52:"hot dog",53:"pizza",54:"donut",55:"cake",56:"chair",57:"couch",58:"potted plant",59:"bed",60:"dining table",61:"toilet",62:"tv",63:"laptop",64:"mouse",65:"remote",66:"keyboard",67:"cell phone",68:"microwave",69:"oven",70:"toaster",71:"sink",72:"refrigerator",73:"book",74:"clock",75:"vase",76:"scissors",77:"teddy bear",78:"hair drier",79:"toothbrush",100:"motion"},ss={class:"w-full my-3"},ls=["for"],rs=["for"],is=["for"],us=["for"],cs=["for"],ds={class:"flex flex-row items-center justify-center ml-auto"},ms={key:0,class:"flex flex-col w-full items-center justify-center mt-3"},vs={class:"flex flex-row w-full items-center justify-center mt-3"},ps=dt({__name:"VCustomField",props:{schemaField:{},configKey:{},modelValue:{},removable:{},loading:{type:Boolean,default:!1}},emits:["onChange","onSubmit"],setup(o,{emit:l}){const s=zo(),C=l,z=o,{theme:Q}=co(s),{modelValue:L,schemaField:h,configKey:Z,removable:$,loading:M}=mt(z),k=y(!1),b=En(async()=>{if(zt(h.value)&&h.value.format==="qrCode"){let K;return Q.value==="dark"?K={dark:"#FFFFFFFF",light:"#FF000000"}:K={dark:"#404040FF",light:"#FFFFFFFF"},await Mn.toDataURL(re.value,{margin:.5,type:"image/png",color:K,scale:10})}},void 0,{lazy:!0}),S=W(()=>{if(zt(h.value)&&h.value.format==="image")return re.value}),u=(K,w)=>{const q=p(L.value,K);Array.isArray(q)&&q.splice(w,1)},A=K=>{let w=p(L.value,K);w||(ie(L.value,K,[]),w=p(L.value,K));const q=h.value;if(Array.isArray(w)&&q&&ua(q)&&q.items){const N=ra(q.items);w.push(N)}},ae=K=>{var w;return((w=K.match(/[^.[\]]+|\[\d+\]/g))==null?void 0:w.map(q=>q.startsWith("[")?parseInt(q.slice(1,-1)):q))||[]},p=(K,w)=>{const q=ae(w);let N=K;for(const X of q){if(N===void 0)return;N=N[X]}if(N===void 0||N===""){const X=le(h.value,w);if(X&&"defaultValue"in X)return X.defaultValue}return N},ie=(K,w,q)=>{const N=ae(w),X=N.pop(),F=N.reduce((U,B)=>(U[B]||(U[B]={}),U[B]),K);X!==void 0&&(F[X]=q)},le=(K,w)=>{const q=ae(w);let N=K;for(const X of q)if(N.type==="object"&&N.properties)N=N.properties[X];else if(N.type==="array"&&N.items&&!("anyOf"in N.items))N=N.items;else return N;return N},re=W({get:()=>p(L.value,Z.value),set:K=>{const w=h.value;let q=K;w&&(Kt(w)?w.multiple?q=Array.isArray(K)?K:[K]:q=K&&K.toString():zt(w)?q=K&&K.toString():ia(w)?q=isNaN(parseFloat(K))?w.minimum!==void 0?w.minimum:0:parseFloat(K):Ea(w)?q=K==="true"||K===!0:q=K),ie(L.value,Z.value,q)}});return(K,w)=>{const q=eo,N=$a("v-number-input"),X=$a("VCustomField",!0);return r(),g("div",ss,[e(zt)(e(h))&&e(h).format==="qrCode"?(r(),g(ke,{key:0},[m("label",{for:e(Z),class:"v-label"},d(e(h).title),9,ls),a(q,{src:e(b),class:"mb-3"},null,8,["src"])],64)):O("",!0),e(zt)(e(h))&&e(h).format==="image"?(r(),g(ke,{key:1},[m("label",{for:e(Z),class:"v-label"},d(e(h).title),9,rs),a(q,{src:e(S),class:"mb-3"},null,8,["src"])],64)):e(zt)(e(h))?(r(),V(e(Be),{key:2,modelValue:e(re),"onUpdate:modelValue":w[2]||(w[2]=F=>ze(re)?re.value=F:null),name:e(Z)},{default:t(({field:F,errorMessage:U,errors:B})=>[m("label",{for:e(Z),class:"v-label"},d(e(h).title),9,is),a(lt,Pe({"model-value":F.value,error:B.length>0,"error-messages":U,readonly:e(h).readonly,placeholder:e(h).placeholder,hint:e(h).description,"persistent-hint":""},F,{variant:"outlined",type:e(h).format==="password"?e(k)?"text":"password":"text",density:"compact","append-inner-icon":e(h).format==="password"?e(k)?e(Wo):e(Ho):void 0,"onClick:appendInner":w[1]||(w[1]=G=>k.value=!e(k))}),na({_:2},[e($)?{name:"append-inner",fn:t(()=>[a(te,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:w[0]||(w[0]=H(G=>u(e($).path,e($).index),["stop"]))},{default:t(()=>[a(j,null,{default:t(()=>[_(d(e(Tt)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["model-value","error","error-messages","readonly","placeholder","hint","type","append-inner-icon"])]),_:1},8,["modelValue","name"])):e(ia)(e(h))?(r(),V(e(Be),{key:3,modelValue:e(re),"onUpdate:modelValue":w[4]||(w[4]=F=>ze(re)?re.value=F:null),name:e(Z)},{default:t(({field:F,errorMessage:U,errors:B})=>[m("label",{for:e(Z),class:"v-label"},d(e(h).title),9,us),a(N,Pe({"model-value":F.value,error:B.length>0,"error-messages":U,readonly:e(h).readonly,hint:e(h).description,step:e(h).step||1,"persistent-hint":""},F,{variant:"outlined",type:"number",density:"compact"}),na({_:2},[e($)?{name:"append-inner",fn:t(()=>[a(te,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:w[3]||(w[3]=H(G=>u(e($).path,e($).index),["stop"]))},{default:t(()=>[a(j,null,{default:t(()=>[_(d(e(Tt)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["model-value","error","error-messages","readonly","hint","step"])]),_:1},8,["modelValue","name"])):e(Ea)(e(h))?(r(),V(e(Be),{key:4,modelValue:e(re),"onUpdate:modelValue":w[6]||(w[6]=F=>ze(re)?re.value=F:null),name:e(Z),type:"checkbox",value:!0,"unchecked-value":!1},{default:t(({field:F,errors:U,errorMessage:B})=>[a(Sa,Pe({"model-value":F.checked,class:"w-full"},F,{color:"#df2a4c",type:"checkbox","persistent-hint":"",label:e(h).title,error:U.length>0,"error-messages":B,hint:e(h).description}),na({_:2},[e($)?{name:"append",fn:t(()=>[a(te,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:w[5]||(w[5]=H(G=>u(e($).path,e($).index),["stop"]))},{default:t(()=>[a(j,null,{default:t(()=>[_(d(e(Tt)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["model-value","label","error","error-messages","hint"])]),_:1},8,["modelValue","name"])):e(Kt)(e(h))?(r(),V(e(Be),{key:5,modelValue:e(re),"onUpdate:modelValue":w[7]||(w[7]=F=>ze(re)?re.value=F:null),name:e(Z)},{default:t(({field:F,errorMessage:U,errors:B})=>[m("label",{for:e(Z),class:"v-label"},d(e(h).title),9,cs),a(qt,Pe({items:e(h).enum,error:B.length>0,"error-messages":U,readonly:e(h).readonly,hint:e(h).description,"model-value":F.value,"persistent-hint":""},F,{variant:"outlined",density:"compact",chips:"",multiple:e(h).multiple,clearable:!e(h).required&&!e(h).readonly,onKeydown:H(()=>null,["prevent"])}),{chip:t(({item:G})=>[a(Xe,{color:"#df2a4c"},{default:t(()=>[_(d(G.title),1)]),_:2},1024)]),_:2},1040,["items","error","error-messages","readonly","hint","model-value","multiple","clearable"])]),_:1},8,["modelValue","name"])):e(Lt)(e(h))||e(Ja)(e(h))?(r(),V(gt,{key:6,"model-value":e(h).opened?[0]:[],class:"inner-component-2 mt-0 mb-3"},{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px",width:"-webkit-fill-available"},class:"truncate"},na({default:t(()=>[e(h).description?(r(),V(ct,{key:0,text:e(h).description,location:"top"},{activator:t(({props:F})=>[a(j,Pe({size:"20"},F,{class:"mr-3 text-passive"}),{default:t(()=>[_(d(e(Da)),1)]),_:2},1040)]),_:1},8,["text"])):O("",!0),_(" "+d(e(h).title||e(Z))+" ",1)]),_:2},[e($)?{name:"actions",fn:t(({expanded:F})=>[m("div",ds,[a(te,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:w[8]||(w[8]=H(U=>u(e($).path,e($).index),["stop"]))},{default:t(()=>[a(j,null,{default:t(()=>[_(d(e(Tt)),1)]),_:1})]),_:1}),F?(r(),V(j,{key:0,size:"22.5"},{default:t(()=>[_(d(e(lo)),1)]),_:1})):(r(),V(j,{key:1,size:"22.5"},{default:t(()=>[_(d(e(ro)),1)]),_:1}))])]),key:"0"}:void 0]),1024),a(ft,{eager:""},{default:t(()=>{var F;return[(r(!0),g(ke,null,$e(e(h).properties,(U,B)=>(r(),g("div",{key:`${e(Z)}.${B}`},[U.hidden?O("",!0):(r(),V(X,{key:0,modelValue:e(L),"onUpdate:modelValue":w[9]||(w[9]=G=>ze(L)?L.value=G:null),"schema-field":U,"config-key":`${e(Z)}.${B}`,loading:e(M),onOnSubmit:w[10]||(w[10]=G=>C("onSubmit",G))},null,8,["modelValue","schema-field","config-key","loading"]))]))),128)),e(Ja)(e(h))&&((F=e(h).buttons)!=null&&F.length)?(r(),g("div",ms,[(r(!0),g(ke,null,$e(e(h).buttons,(U,B)=>(r(),V(te,{key:`button-${B}`,variant:"flat",loading:e(M),class:"px-0 w-100 my-2",style:{background:"rgba(141, 141, 141, 0.2)"},onClick:H(()=>U?C("onSubmit",{actionId:U.onSubmit,payload:e(_o)(e(L),e(Z))}):null,["prevent"])},{default:t(()=>[_(d(U==null?void 0:U.label),1)]),_:2},1032,["loading","onClick"]))),128))])):O("",!0)]}),_:1})]),_:1})]),_:1},8,["model-value"])):e(ua)(e(h))&&e(h).items?(r(),V(gt,{key:7,"model-value":e(h).opened?[0]:[],class:"inner-component-2 mt-0 mb-3"},{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px",width:"-webkit-fill-available"},class:"truncate"},{default:t(()=>[e(h).description?(r(),V(ct,{key:0,text:e(h).description,location:"top"},{activator:t(({props:F})=>[a(j,Pe({size:"20"},F,{class:"mr-3 text-passive"}),{default:t(()=>[_(d(e(Da)),1)]),_:2},1040)]),_:1},8,["text"])):O("",!0),_(" "+d(e(h).title||e(Z)),1)]),_:1}),a(ft,{eager:""},{default:t(()=>[(r(!0),g(ke,null,$e(p(e(L),e(Z)),(F,U)=>(r(),g("div",{key:`item-${U}-${(F==null?void 0:F.key)||F||U}`,class:"w-full"},[e(h).items.hidden?O("",!0):(r(),V(X,{key:0,modelValue:e(L),"onUpdate:modelValue":w[11]||(w[11]=B=>ze(L)?L.value=B:null),"schema-field":e(h).items,"config-key":`${e(Z)}[${U}]`,removable:{path:e(Z),index:U},loading:e(M),onOnSubmit:w[12]||(w[12]=B=>C("onSubmit",B))},null,8,["modelValue","schema-field","config-key","removable","loading"]))]))),128)),m("div",vs,[a(te,{variant:"text",color:"#df2a4c",icon:"",onClick:w[13]||(w[13]=H(F=>A(e(Z)),["prevent"]))},{default:t(()=>[a(j,{size:"30"},{default:t(()=>[_(d(e(io)),1)]),_:1})]),_:1})])]),_:1})]),_:1})]),_:1},8,["model-value"])):O("",!0)])}}}),fs=Mt(ps,[["__scopeId","data-v-946dc7ed"]]),gs={key:0},ys={key:1},hs={key:2,class:"flex w-full mt-7"},ko=dt({__name:"VJsonSchema",props:{config:{},uiSchema:{},loading:{type:Boolean,default:!1},disableButton:{type:Boolean},saveButton:{type:Boolean,default:!0},saveButtonLabel:{},saveButtonColor:{default:"green"},showButton:{type:Boolean,default:!1}},emits:["onSubmit","onFormSubmit","changeGroup"],setup(o,{emit:l}){const s=l,C=o,{uiSchema:z,config:Q,loading:L,saveButton:h,saveButtonLabel:Z,showButton:$,disableButton:M,saveButtonColor:k}=mt(C),b=y(),S=y(),u=W(()=>Object.keys(Q.value).length?{...Mo(Q.value)}:z.value?Rn(z.value):{}),A=W(()=>z.value?z.value:Ln(Q.value)),ae=W(()=>Un(A.value)),p=W(()=>da(ae.value)),ie=W(()=>Object.keys(A.value.schema).every(N=>ho(A.value.schema[N]))),le=W(()=>Object.keys(A.value.schema).some(N=>bo(A.value.schema[N]))),re=W(()=>{const N=A.value,X=[];for(const[,F]of Object.entries(N.schema))F.group&&!F.hidden&&!X.includes(F.group)&&X.push(F.group);return X.length&&(S.value=X[0]),X});we(S,N=>{N&&s("changeGroup",N)});const K=async()=>{var N;return await((N=b.value)==null?void 0:N.validate())},w=async N=>{const X=await K();X!=null&&X.valid&&s("onSubmit",N)},q=async()=>{const N=await K();N!=null&&N.valid&&s("onFormSubmit",u.value)};return(N,X)=>{const F=fs;return r(),g("div",null,[a(e(sa),{ref_key:"formRef",ref:b,"validation-schema":e(p),onSubmit:q},{default:t(()=>[e(re).length?(r(),g("div",gs,[a(Pt,{modelValue:e(S),"onUpdate:modelValue":X[0]||(X[0]=U=>ze(S)?S.value=U:null),"selected-class":"primary-color",mandatory:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(re),U=>(r(),V(Xe,{key:U,size:"small",value:U},{default:t(()=>[_(d(U),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"]),a(Ta,{modelValue:e(S),"onUpdate:modelValue":X[2]||(X[2]=U=>ze(S)?S.value=U:null),mandatory:"",eager:"",class:"mt-3"},{default:t(()=>[(r(!0),g(ke,null,$e(e(re),(U,B)=>(r(),V(qa,{key:U,value:U,transition:"instant","reverse-transition":"instant"},{default:t(()=>[(r(!0),g(ke,null,$e(e(A).schema,(G,fe)=>(r(),g("div",{key:fe},[!G.hidden&&(G.group===U||!G.group&&B===0)?(r(),V(F,{key:0,modelValue:e(u),"onUpdate:modelValue":X[1]||(X[1]=Ne=>ze(u)?u.value=Ne:null),"schema-field":G,"config-key":fe.toString(),loading:e(L),onOnSubmit:w},null,8,["modelValue","schema-field","config-key","loading"])):O("",!0)]))),128))]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])])):(r(),g("div",ys,[(r(!0),g(ke,null,$e(e(A).schema,(U,B)=>(r(),g("div",{key:B},[U.hidden?O("",!0):(r(),V(F,{key:0,modelValue:e(u),"onUpdate:modelValue":X[3]||(X[3]=G=>ze(u)?u.value=G:null),"schema-field":U,"config-key":B.toString(),loading:e(L),onOnSubmit:w},null,8,["modelValue","schema-field","config-key","loading"]))]))),128))])),!e(ie)&&e(h)&&e(le)||e($)?(r(),g("div",hs,[a(te,{class:"ml-auto",color:e(k),variant:"flat",type:"submit",loading:e(L),disabled:e(M)},{default:t(()=>[_(d(e(Z)||N.$t("components.form.button.save")),1)]),_:1},8,["color","loading","disabled"])])):O("",!0)]),_:1},8,["validation-schema"])])}}}),bs=dt({__name:"VJsonSchemaDialog",props:Oo({pluginConfig:{},uiSchema:{},pluginName:{}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(o){const l=new mo,s=Qo(o,"modelValue"),C=o,z=y(!1),Q=y(),{uiSchema:L,pluginConfig:h,pluginName:Z}=mt(C),{mutateAsync:$,isPending:M}=l.actionButtonQuery(),k=W(()=>z.value||M.value);we(L,S=>{Q.value=S},{deep:!0,immediate:!0});const b=async S=>{z.value=!0;const u={...h.value,...S.payload};await $({pluginName:Z.value,actionId:S.actionId,payload:u},{onSuccess:A=>{A!=null&&A.toast&&yt[A.toast.type](A.toast.message),A!=null&&A.schema&&Object.keys(A.schema).length&&Q.value?Q.value.schema.config=A.schema.config:s.value=!1},onSettled:()=>{z.value=!1}})};return(S,u)=>{const A=ko,ae=Fa;return r(),V(ae,{modelValue:s.value,"onUpdate:modelValue":u[0]||(u[0]=p=>s.value=p),title:S.$t("components.dialog.title.config"),loading:e(k),"hide-confirm-button":""},{content:t(()=>[a(A,{config:{},"ui-schema":e(Q),loading:e(k),"save-button":!1,onOnSubmit:b},null,8,["ui-schema","loading"])]),_:1},8,["modelValue","title","loading"])}}}),_s=async({cameraData:o})=>(await De.post("/cameras",o)).data,ks=async({cameraData:o})=>(await De.post("/cameras/preview",o)).data,wo=async({cameraname:o,signal:l})=>(await De.get(`/cameras/${o}`,{signal:l})).data,ws=async({cameraname:o,signal:l})=>(await De.get(`/cameras/${o}/snapshot`,{signal:l})).data,xs=async({parameter:o,signal:l})=>(await De.get("/cameras",{params:o,signal:l})).data,Cs=async({cameraname:o,cameraData:l})=>(await De.patch(`/cameras/${o}`,l)).data,$s=async({cameraname:o,signal:l})=>(await De.get(`/cameras/${o}/extensions`,{signal:l})).data,Vs=async({cameraname:o,pluginname:l,signal:s})=>(await De.get(`/cameras/${o}/${l}`,{signal:s})).data,Ss=async({cameraname:o,pluginname:l,configData:s})=>(await De.patch(`/cameras/${o}/${l}`,s)).data,Ps=async({cameraname:o,pluginname:l,type:s})=>(await De.put(`/cameras/${o}/${l}/enable`,null,{params:{type:s}})).data,zs=async({cameraname:o,pluginname:l,type:s})=>(await De.put(`/cameras/${o}/${l}/disable`,null,{params:{type:s}})).data,Ms=async({cameraname:o,pluginname:l})=>(await De.post(`/cameras/${o}/${l}`)).data,Es=async({cameraname:o,pluginname:l})=>(await De.delete(`/cameras/${o}/${l}`)).data,Fs=async({cameraname:o,zonename:l,signal:s})=>(await De.get(`/cameras/${o}/zones/${l}`,{signal:s})).data,Is=async({cameraname:o,zoneData:l})=>(await De.post(`/cameras/${o}/zones`,l)).data,Bs=async({cameraname:o,zonename:l,zoneData:s})=>(await De.patch(`/cameras/${o}/zones/${l}`,s)).data,Ts=async({cameraname:o,zonename:l})=>(await De.delete(`/cameras/${o}/zones/${l}`)).data,qs=async({cameraname:o})=>(await De.delete(`/cameras/${o}`)).data,As=async()=>(await De.delete("/cameras")).data;class Wt{constructor(){wa(this,"_queryClient",Qn());wa(this,"queryActivator",y([{name:"getCameraQuery",enabled:!0},{name:"getCamerasQuery",enabled:!0},{name:"getCameraSnapshotQuery",enabled:!0},{name:"getCameraExtensionsQuery",enabled:!0},{name:"getCameraExtensionConfigQuery",enabled:!0},{name:"getZoneQuery",enabled:!0}]))}get queryClient(){return this._queryClient}createCameraQuery(){return at({mutationFn:_s,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),yt.success(It.global.t("components.toast.camera_added"))}})}previewCameraQuery(){return at({mutationFn:ks})}getCameraQuery(l){return Qt({queryKey:["cameras",l],queryFn:({signal:s})=>wo({cameraname:e(l),signal:s}),enabled:()=>this.queryActivator.value.some(s=>s.name==="getCameraQuery"&&s.enabled)})}getCameraExtensionsQuery(l){return Qt({queryKey:["camerasExtensions",l],queryFn:({signal:s})=>$s({cameraname:e(l),signal:s}),enabled:()=>this.queryActivator.value.some(s=>s.name==="getCameraExtensionsQuery"&&s.enabled)})}getCameraSnapshotQuery(l){return Qt({queryKey:["camerasSnapshot",l],queryFn:({signal:s})=>ws({cameraname:e(l),signal:s}),enabled:()=>this.queryActivator.value.some(s=>s.name==="getCameraSnapshotQuery"&&s.enabled),staleTime:6e4,retry:!1})}getCamerasQuery(l){return Qt({queryKey:["camerasList",l],queryFn:({signal:s})=>xs({parameter:e(l),signal:s}),placeholderData:s=>s,enabled:()=>this.queryActivator.value.some(s=>s.name==="getCamerasQuery"&&s.enabled)})}patchCameraQuery(){return at({mutationFn:Cs,onSuccess:async(l,s)=>{if(s.cameraData.name&&s.cameraData.name!==s.cameraname){const z=s.cameraname;await this._queryClient.invalidateQueries({queryKey:[z]}),await this._queryClient.refetchQueries({queryKey:["camerasList"]})}else await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname]}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]}),await this._queryClient.refetchQueries({queryKey:["cameras","extensions",s.cameraname]});yt.success(It.global.t("components.toast.camera_updated"))}})}getCameraExtensionConfigQuery(l,s,C){return Qt({staleTime:0,queryKey:["cameras","extensions",l,s],queryFn:({signal:z})=>Vs({cameraname:e(l),pluginname:e(s),signal:z}),enabled:()=>this.queryActivator.value.some(z=>z.name==="getCameraExtensionConfigQuery"&&z.enabled),refetchInterval(){if(C.value)return 3e3}})}patchCameraExtensionConfigQuery(){return at({mutationFn:Ss,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["cameras","extensions",s.cameraname]}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}enableCameraExtensionQuery(){return at({mutationFn:Ps,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}disableCameraExtensionQuery(){return at({mutationFn:zs,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}addCameraExtensionQuery(){return at({mutationFn:Ms,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}getZoneQuery(l,s){return Qt({queryKey:["cameras",l,"zones",s],queryFn:({signal:C})=>Fs({cameraname:e(l),zonename:e(s),signal:C}),enabled:()=>this.queryActivator.value.some(C=>C.name==="getZoneQuery"&&C.enabled)})}addCameraZoneQuery(){return at({mutationFn:Is,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),yt.success(It.global.t("components.toast.zone_added"))}})}patchCameraZoneQuery(){return at({mutationFn:Bs,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),yt.success(It.global.t("components.toast.zone_updated"))}})}removeCameraZoneQuery(){return at({mutationFn:Ts,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),yt.success(It.global.t("components.toast.zone_removed"))}})}removeCameraExtensionQuery(){return at({mutationFn:Es,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}removeCameraQuery(){return at({mutationFn:qs,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),yt.success(It.global.t("components.toast.camera_removed"))}})}removeCamerasQuery(){return at({mutationFn:As,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),yt.success(It.global.t("components.toast.cameras_removed"))}})}toggleQueryActivator(l,s){const C=this.queryActivator.value.find(z=>z.name===l);C&&(C.enabled=s)}}const Ns=_e.union([_e.literal("bubble://"),_e.literal("dvrip://"),_e.literal("echo:"),_e.literal("exec:"),_e.literal("expr:"),_e.literal("ffmpeg:"),_e.literal("gopro://"),_e.literal("hass:"),_e.literal("homekit://"),_e.literal("http://"),_e.literal("https://"),_e.literal("isapi://"),_e.literal("ivideon:"),_e.literal("kasa://"),_e.literal("nest:"),_e.literal("onvif://"),_e.literal("roborock://"),_e.literal("rtmp://"),_e.literal("rtsp://"),_e.literal("rtspx://"),_e.literal("tapo://"),_e.literal("tcp://"),_e.literal("webrtc:"),_e.literal("webtorrent:")]),Os=_e.object({protocol:Ns,url:_e.string().min(1,"Camera Source is required").array().nonempty("Camera Source is required")}).strict(),Qs=_e.object({name:_e.string().min(1,"Camera Source Name is required"),roles:Eo.array().nonempty("Minimum one role is required"),urls:Os.array()}).strict(),Ds=Qs.array(),Ls=_e.object({...Fo.shape,sources:Ds}).strict(),fu=da(Ls),Xa=da(Io),xo=da(Bo),Co=o=>(Do("data-v-0cdb0e1b"),o=o(),Lo(),o),Rs={key:0},Us={key:1,class:"flex flex-col justify-center items-center"},js={class:"relative w-full"},Zs={class:"w-full flex flex-col items-center justify-center"},Ks={class:"relative w-full flex flex-col items-center justify-center"},Ws={class:"absolute top-0 left-0 right-0 bottom-0"},Hs={class:"playground-container flex w-full h-full"},Ys={class:"sandbox w-full h-full"},Js={class:"handles"},Xs=["data-id","data-coord","data-region","onDblclick"],Gs=Co(()=>m("div",{class:"delete-point"},null,-1)),el=[Gs],tl={class:"clipboard"},al={width:"100%",height:"100%",class:"polygon-container"},ol=["d","onClick","onDblclick","onMousedown","onTouchstart"],nl=Co(()=>m("div",{class:"shadowboard on"},null,-1)),sl={class:"flex align-center flex-column pa-6 zone-buttons"},ll={class:"w-100"},rl=["for"],il={key:1,class:"text-grey text-caption align-self-center"},ul={key:1,class:"w-100"},cl={class:"v-label"},dl={key:0},ml={key:1},vl={key:0},pl={key:1},fl={key:0},gl={key:1},yl=dt({__name:"VZoneEditor",props:{cameraName:{},zones:{},isNewZone:{type:Boolean}},emits:["show-modal"],setup(o,{emit:l}){const s=new Wt,C=l,z=o,{cameraName:Q,zones:L,isNewZone:h}=mt(z),Z=y(!0),$=y(!1),M=y([]),k=y([]),b=y([]),S=y(null),u=y(),A=y(!1),ae=y(0),p=y(-1),ie=y(null),le=y(-1),re=y(Object.values(ns).sort((v,f)=>v==="motion"?-1:f==="motion"?1:0));let K=!1,w={x:0,y:0};const q=Zt(S);Ba(ie,v=>{const f=v.target,oe=f.closest(".polygon"),ce=f.closest(".edit-button"),ge=f.closest(".remove-button"),J=f.closest(".handle"),Ee=f.closest(".zone-buttons"),se=f.closest(".coco-labels");!oe&&!ce&&!ge&&!J&&!$.value&&!Ee&&!se&&(p.value=-1)});const{mutateAsync:N,isPending:X}=s.addCameraZoneQuery(),{mutateAsync:F,isPending:U}=s.patchCameraZoneQuery(),B=W(()=>A.value||X.value||U.value),G=W(()=>{var v,f;return((f=(v=u.value)==null?void 0:v.regions[p.value])==null?void 0:f.classes.length)===re.value.length}),fe=W(()=>{var v,f;return(((f=(v=u.value)==null?void 0:v.regions[p.value])==null?void 0:f.classes.length)||0)>0}),Ne=W(()=>{var f;const v=[];return $.value&&v.push("customizing"),(f=u.value)!=null&&f.regions.length||v.push("start"),v.join(" ")});we(le,()=>{le.value=-1}),we(L,v=>{v&&(u.value=JSON.parse(JSON.stringify(v)))},{deep:!0,immediate:!0}),we(u,v=>{v&&(M.value=v.regions.map((f,oe)=>f.coords.map((ce,ge)=>({_id:ce._id,regionIndex:oe,coordIndex:ge,coord:ce.points}))).flat()||[])},{deep:!0,immediate:!0}),we(Z,v=>{v||setTimeout(()=>C("show-modal",!1),300)}),we([q.width,q.height],()=>{ne()});const Le=()=>{!u.value||!u.value.regions[p.value]||(G.value?u.value.regions[p.value].classes=[]:u.value.regions[p.value].classes=[...re.value])},Ke=v=>{if("touches"in v){const f=v.touches[0];return{x:f.clientX,y:f.clientY}}return{x:v.clientX,y:v.clientY}},Te=(v,f)=>{if(v.stopPropagation(),!S.value)return;Ze($.value),K=!0,p.value=f;const oe=S.value.getBoundingClientRect(),{x:ce,y:ge}=Ke(v);w.x=(ce-oe.left)/oe.width*100,w.y=(ge-oe.top)/oe.height*100},Re=v=>{if(!K||!S.value||p.value===-1||!u.value)return;const f=S.value.getBoundingClientRect(),{x:oe,y:ce}=Ke(v),ge=(oe-f.left)/f.width*100,J=(ce-f.top)/f.height*100,Ee=ge-w.x,se=J-w.y,he=u.value.regions[p.value].coords;let We=!1;for(let Fe=0;Fe<he.length;Fe++){let He=he[Fe].points[0]+Ee,ht=he[Fe].points[1]+se;if(He<0||He>100||ht<0||ht>100){We=!0;break}}if(!We)for(let Fe=0;Fe<he.length;Fe++){he[Fe].points[0]+=Ee,he[Fe].points[1]+=se,he[Fe].points[0]=Math.max(0,Math.min(100,he[Fe].points[0])),he[Fe].points[1]=Math.max(0,Math.min(100,he[Fe].points[1]));const He=he[Fe].points[0]/100*f.width,ht=he[Fe].points[1]/100*f.height,bt=k.value.find(et=>et.id===he[Fe]._id);bt==null||bt.setPosition(He,ht)}w.x=ge,w.y=J},Ve=()=>{setTimeout(()=>{K=!1},100)},xe=()=>{!u.value||p.value===-1||(u.value.regions[p.value].isPrivacyMask=!u.value.regions[p.value].isPrivacyMask)},qe=()=>{!u.value||!u.value.regions[p.value]||(u.value.regions[p.value].filter=u.value.regions[p.value].filter==="include"?"exclude":"include")},Oe=()=>{!u.value||!u.value.regions[p.value]||(u.value.regions[p.value].type=u.value.regions[p.value].type==="intersect"?"contain":"intersect")},ot=v=>{if(!$.value||!u.value||K)return;const f=ae.value,oe=Math.min(Math.max(Math.round((v.offsetX-10)/q.width.value*100),0),100),ce=Math.min(Math.max(Math.round((v.offsetY-10)/q.height.value*100),0),100);u.value.regions[f]||u.value.regions.push({_id:Math.random().toString(36).substring(7),coords:[],filter:"include",type:"contain",classes:[],isPrivacyMask:!1});const ge={_id:Math.random().toString(36).substring(7),points:[oe,ce]};u.value.regions[f].coords.push(ge),xt(()=>{Ye({_id:ge._id,regionIndex:f,coordIndex:u.value.regions[f].coords.length-1,coord:[oe,ce]})})},Ye=v=>{var oe;if(v.regionIndex===void 0||v.coordIndex===void 0)return;const f=(oe=b.value)==null?void 0:oe.filter(ce=>ce.dataset.coord===v.coordIndex.toString()&&ce.dataset.region===v.regionIndex.toString());f.length!==0&&Se(f[0],v.coord)},nt=v=>{if(!u.value)return;let f=Math.round(v.coord[0]/q.width.value*100),oe=Math.round(v.coord[1]/q.height.value*100);const ce={_id:v._id,points:[f,oe]};u.value.regions[v.regionIndex].coords[v.coordIndex]=ce},it=()=>{u.value&&($.value=!0,ae.value=u.value.regions.length||0)},Ze=v=>{var oe;if(!u.value)return;$.value=v||!1;const f=ae.value;!u.value.regions.length||!u.value.regions[f]||!u.value.regions[f].coords||(u.value.regions[f].coords.length<3?u.value.regions=u.value.regions.filter((ce,ge)=>ge!==f):(oe=b.value)==null||oe.forEach(ce=>Ce(ce)))},T=()=>{$.value=!0,ae.value=p.value},$t=()=>{p.value===-1||!u.value||(u.value.regions=u.value.regions.filter((v,f)=>f!==p.value),p.value=-1)},st=()=>{var oe,ce;if(!((oe=u.value)!=null&&oe.regions.length))return;const v=ge=>{var J,Ee,se,he,We;(Ee=(J=u.value)==null?void 0:J.regions[ge])!=null&&Ee.coords.length&&((he=(se=u.value.regions[ge])==null?void 0:se.coords)==null||he.pop(),(We=u.value.regions[ge])!=null&&We.coords.length||u.value.regions.pop())};let f=u.value.regions.length;(ce=u.value.regions[f-1].coords)!=null&&ce.length&&f--,!(f<0)&&v(f)},Me=()=>{K=!1,$.value=!1,M.value=[],u.value&&(u.value.regions=[])},Y=v=>{if(!v)return"";const f=v.map(ce=>{const ge=Math.round(ce[0]/100*q.width.value),J=Math.round(ce[1]/100*q.height.value);return`${ge+10},${J+10}`});if(f.length===0)return"";let oe=`M ${f[0]}`;for(let ce=1;ce<f.length;ce++)oe+=` L ${f[ce]}`;return oe+=" Z",oe},ee=v=>{$.value||(p.value=v)},ne=()=>{pe(),b.value.forEach(v=>{var oe;if(!v.dataset.region||!v.dataset.coord||!u.value)return;const f=(oe=u.value.regions[parseInt(v.dataset.region)])==null?void 0:oe.coords[parseInt(v.dataset.coord)];Se(v,f.points),Ce(v)})},pe=()=>{k.value.forEach(v=>v.destroy()),k.value=[]},me=v=>{var f;!u.value||((f=u.value.regions[v.regionIndex])==null?void 0:f.coords.length)<4||u.value.regions[v.regionIndex].coords.splice(v.coordIndex,1)},Se=(v,f)=>{Object.assign(v.style,ue(f))},ue=v=>({left:Math.round(v[0]/100*q.width.value)+"px",top:Math.round(v[1]/100*q.height.value)+"px"}),Ce=v=>{v.classList.add("draggable");let f=new vo(v,{containment:!0,grid:[0,0]}).on("pointerDown",()=>{var oe;(oe=document.querySelectorAll('[data-point="'+v.dataset.region+"-"+v.dataset.coord+'"]')[0])==null||oe.classList.add("changing")}).on("dragMove",()=>{if(!v.dataset.region||!v.dataset.coord||!v.dataset.id)return;const oe=f.position.x,ce=f.position.y;nt({_id:v.dataset.id,coord:[oe,ce],coordIndex:parseInt(v.dataset.coord),regionIndex:parseInt(v.dataset.region)})}).on("pointerUp",()=>{document.querySelectorAll(".point").forEach(oe=>oe.classList.remove("changing"))});f.id=v.dataset.id,k.value.push(f)},Ge=async()=>{if(u.value)try{A.value=!0;const v=await xo.parse(u.value);v.value?(h.value?await N({cameraname:Q.value,zoneData:u.value}):await F({cameraname:Q.value,zonename:u.value.name,zoneData:u.value}),Z.value=!1):yt.error(v.errors[0].errors[0])}catch(v){console.error(v)}finally{A.value=!1}};return ca(async()=>{setTimeout(()=>{ne()})}),(v,f)=>{const oe=Oa,ce=Fa;return r(),V(ce,{modelValue:e(Z),"onUpdate:modelValue":f[12]||(f[12]=ge=>ze(Z)?Z.value=ge:null),title:`${v.$t("components.zone_editor.zone")}: ${e(u)?e(u).name:v.$t("components.dialog.title.unknown")}`,loading:e(B),onConfirm:f[13]||(f[13]=ge=>Ge())},{content:t(()=>{var ge;return[e(u)?(r(),g("div",Us,[m("div",js,[m("div",{ref_key:"outsideEl",ref:ie},null,512),m("div",Zs,[m("div",Ks,[m("div",Ws,[m("div",Hs,[m("section",{class:Dt(["playground w-full h-full",e(Ne)]),onClick:ot},[m("div",Ys,[m("div",Js,[(r(!0),g(ke,null,$e(e(M),J=>(r(),g("div",{key:J._id,ref_for:!0,ref_key:"draggables",ref:b,class:"handle","data-id":J._id,"data-coord":J.coordIndex,"data-region":J.regionIndex,onDblclick:H(Ee=>me(J),["prevent"])},el,40,Xs))),128)),m("div",tl,[(r(),g("svg",al,[(r(!0),g(ke,null,$e((ge=e(u))==null?void 0:ge.regions,(J,Ee)=>(r(),g("path",{key:J._id,d:Y(J.coords.map(se=>se.points)),class:Dt({polygon:J.filter=="include"&&!J.isPrivacyMask,"polygon-exclude":J.filter=="exclude"&&!J.isPrivacyMask,"polygon-privacy":J.isPrivacyMask,dash:J.type==="intersect"&&!J.isPrivacyMask,selected:e(p)===Ee}),onClick:se=>ee(Ee),onDblclick:()=>J.isPrivacyMask=!J.isPrivacyMask,onMousedown:se=>Te(se,Ee),onMousemove:Re,onMouseup:Ve,onTouchstart:se=>Te(se,Ee),onTouchmove:Re,onTouchend:Ve},null,42,ol))),128))]))])]),nl])],2)])]),m("div",{ref_key:"player",ref:S,class:"w-full h-full flex flex-col items-center justify-center",style:{width:"calc(100% - 20px)","margin-top":"10px","margin-bottom":"10px"}},[a(oe,{mode:"webrtc",target:"stream","current-camera":e(Q),"border-radius":0,border:"","source-role":"low-resolution"},null,8,["current-camera"])],512)]),m("div",sl,[m("div",ll,[e(u)&&e(u).regions&&e(p)>=0&&e(u).regions[e(p)]?(r(),V(e(Be),{key:0,modelValue:e(u).regions[e(p)].classes,"onUpdate:modelValue":f[0]||(f[0]=J=>e(u).regions[e(p)].classes=J),name:`regions[${e(p)}].classes`},{default:t(({field:J,errorMessage:Ee,errors:se})=>[m("label",{for:`regions[${e(p)}].classes`,class:"v-label"},d(v.$t("components.form.label.classes")),9,rl),a(qt,Pe({loading:e(B),items:e(re),class:"coco-labels w-100",variant:"outlined",name:`regions[${e(p)}].classes`,type:"text",density:"compact",chips:"",multiple:"",clearable:""},J,{error:se.length>0,"error-messages":Ee,"model-value":J.value,"menu-props":{class:"coco-labels"},onKeydown:H(()=>null,["prevent"])}),{"prepend-item":t(()=>[a(Pa,{title:v.$t("components.form.label.select_all"),onClick:Le},{prepend:t(()=>[a(za,{indeterminate:e(fe)&&!e(G),"model-value":e(G)},null,8,["indeterminate","model-value"])]),_:1},8,["title"]),a(je,{class:"mt-2"})]),chip:t(({item:he,index:We})=>[We<5?(r(),V(Xe,{key:0,color:"#df2a4c"},{default:t(()=>[_(d(he.title),1)]),_:2},1024)):O("",!0),We===5?(r(),g("span",il," (+"+d(e(u).regions[e(p)].classes.length-2)+") ",1)):O("",!0)]),_:2},1040,["loading","items","name","error","error-messages","model-value"])]),_:1},8,["modelValue","name"])):(r(),g("div",ul,[m("label",cl,d(v.$t("components.form.label.classes")),1),a(qt,{disabled:"",class:"w-100",variant:"outlined",type:"text",density:"compact"})]))]),a(Za,{modelValue:e(le),"onUpdate:modelValue":f[7]||(f[7]=J=>ze(le)?le.value=J:null),variant:"outlined",divided:"",rounded:"xl",class:"mt-5"},{default:t(()=>[e($)?(r(),V(te,{key:1,loading:e(B),onClick:f[2]||(f[2]=H(J=>Ze(!1),["prevent"]))},{default:t(()=>[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(v.$t("components.form.tooltip.finish")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(Jo)),1)]),_:1})]),_:1},8,["loading"])):(r(),V(te,{key:0,loading:e(B),onClick:f[1]||(f[1]=H(J=>it(),["prevent"]))},{default:t(()=>[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(v.$t("components.form.tooltip.new")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(Yo)),1)]),_:1})]),_:1},8,["loading"])),a(te,{loading:e(B),disabled:!e(u).regions.length||e(p)<0||e($),onClick:f[3]||(f[3]=H(J=>T(),["prevent"]))},{default:t(()=>[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(v.$t("components.form.tooltip.edit")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(uo)),1)]),_:1})]),_:1},8,["loading","disabled"]),a(te,{loading:e(B),disabled:!e(u).regions.length||e(p)<0,onClick:f[4]||(f[4]=H(J=>$t(),["prevent"]))},{default:t(()=>[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(v.$t("components.form.tooltip.delete")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(Xo)),1)]),_:1})]),_:1},8,["loading","disabled"]),a(te,{loading:e(B),disabled:!e(u).regions.length,onClick:f[5]||(f[5]=H(J=>st(),["prevent"]))},{default:t(()=>[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(v.$t("components.form.tooltip.undo")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(Go)),1)]),_:1})]),_:1},8,["loading","disabled"]),a(te,{loading:e(B),disabled:!e(u).regions.length,onClick:f[6]||(f[6]=H(J=>Me(),["prevent"]))},{default:t(()=>[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(v.$t("components.form.tooltip.clear")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(en)),1)]),_:1})]),_:1},8,["loading","disabled"])]),_:1},8,["modelValue"]),a(Za,{modelValue:e(le),"onUpdate:modelValue":f[11]||(f[11]=J=>ze(le)?le.value=J:null),variant:"outlined",divided:"",rounded:"xl",class:"mt-5"},{default:t(()=>[a(te,{disabled:!(e(u)&&e(u).regions&&e(p)>=0&&e(u).regions[e(p)]),loading:e(B),onClick:f[8]||(f[8]=H(J=>xe(),["prevent"]))},{default:t(()=>[e(u)&&e(u).regions&&e(p)>=0&&e(u).regions[e(p)]?(r(),g("div",dl,[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(e(u).regions[e(p)].isPrivacyMask?v.$t("components.form.tooltip.privacy_mask"):v.$t("components.form.tooltip.public_mask")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(u).regions[e(p)].isPrivacyMask?e(tn):e(Va)),1)]),_:1})])):(r(),g("div",ml,[a(j,{size:"20"},{default:t(()=>[_(d(e(Va)),1)]),_:1})]))]),_:1},8,["disabled","loading"]),a(te,{disabled:!(e(u)&&e(u).regions&&e(p)>=0&&e(u).regions[e(p)]&&!e(u).regions[e(p)].isPrivacyMask),loading:e(B),onClick:f[9]||(f[9]=H(J=>qe(),["prevent"]))},{default:t(()=>[e(u)&&e(u).regions&&e(p)>=0&&e(u).regions[e(p)]&&!e(u).regions[e(p)].isPrivacyMask?(r(),g("div",vl,[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(e(u).regions[e(p)].filter==="include"?v.$t("components.form.tooltip.include"):v.$t("components.form.tooltip.exclude")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(u).regions[e(p)].filter==="include"?e(La):e(an)),1)]),_:1})])):(r(),g("div",pl,[a(j,{size:"20"},{default:t(()=>[_(d(e(La)),1)]),_:1})]))]),_:1},8,["disabled","loading"]),a(te,{disabled:!(e(u)&&e(u).regions&&e(p)>=0&&e(u).regions[e(p)]&&!e(u).regions[e(p)].isPrivacyMask),loading:e(B),onClick:f[10]||(f[10]=H(J=>Oe(),["prevent"]))},{default:t(()=>[e(u)&&e(u).regions&&e(p)>=0&&e(u).regions[e(p)]&&!e(u).regions[e(p)].isPrivacyMask?(r(),g("div",fl,[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(e(u).regions[e(p)].type==="intersect"?v.$t("components.form.tooltip.intersect"):v.$t("components.form.tooltip.contain")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(u).regions[e(p)].type==="intersect"?e(on):e(Ra)),1)]),_:1})])):(r(),g("div",gl,[a(j,{size:"20"},{default:t(()=>[_(d(e(Ra)),1)]),_:1})]))]),_:1},8,["disabled","loading"])]),_:1},8,["modelValue"])])])])])):(r(),g("div",Rs,[a(Ct,{indeterminate:"",color:"#df2a4c"})]))]}),_:1},8,["modelValue","title","loading"])}}}),hl=Mt(yl,[["__scopeId","data-v-0cdb0e1b"]]),bl={class:"flex flex-col w-full",style:{height:"calc(100% - 45px - env(safe-area-inset-bottom, 0px))"}},_l={class:"flex w-full p-2 items-center"},kl={key:0},wl={class:"options-segments flex items-center justify-between"},xl={class:"flex flex-col items-center justify-center"},Cl={class:"options-segments-text"},$l={key:0,class:"options-container flex justify-center items-center"},Vl={class:"mt-auto"},Sl=dt({__name:"VOptionsSidebar",props:{state:{type:Boolean,default:!1},title:{},segments:{default:()=>["default"]},loading:{type:Boolean,default:!1},width:{default:400}},emits:["close","selected"],setup(o,{emit:l}){Ro(A=>({bd3ce394:e(b)}));const s=o,C=l,{segments:z,state:Q,title:L,loading:h,width:Z}=mt(s),$=y(null),M=y(z.value[0]),k=y(!1),b=y(`${Z.value}px`),{smallMobileActive:S}=to();we(Q,()=>{k.value=Q.value}),we(k,()=>{k.value!==Q.value&&setTimeout(()=>{C("close")},300),u(S.value&&k.value)}),we(S,()=>{u(S.value&&k.value)});const u=A=>{};return Ba($,A=>{const ae=A.target,p=ae.closest(".v-overlay-container"),ie=ae.closest(".Toastify");!p&&!ie&&(k.value=!1)}),ca(()=>{C("selected",M.value)}),(A,ae)=>(r(),V(oo,{name:"options-slide",mode:"out-in"},{default:t(()=>[e(k)?(r(),g("div",{key:0,ref_key:"optionsSidebar",ref:$,class:"options-sidebar"},[m("div",bl,[m("div",_l,[e(L)?(r(),g("b",kl,d(e(L)),1)):O("",!0),a(te,{class:"ml-auto",size:"28",rounded:"",density:"compact",variant:"text",onClick:ae[0]||(ae[0]=H(p=>k.value=!1,["prevent"]))},{default:t(()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(Tt)),1)]),_:1})]),_:1})]),m("div",wl,[a(qn,{modelValue:e(M),"onUpdate:modelValue":[ae[1]||(ae[1]=p=>ze(M)?M.value=p:null),ae[2]||(ae[2]=p=>C("selected",p))],height:"100%",grow:"","slider-color":"#df2a4c"},{default:t(()=>[(r(!0),g(ke,null,$e(e(z),(p,ie)=>(r(),V(An,{key:ie,value:p,disabled:e(h),"min-width":"auto"},{default:t(()=>[m("div",xl,[Ca(A.$slots,`segmentIcon.${p}`,{},()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(Ia)),1)]),_:1})],!0),m("span",Cl,d(A.$t(`components.options_sidebar.segment_tab_${p.toLowerCase()}`)),1)])]),_:2},1032,["value","disabled"]))),128))]),_:3},8,["modelValue"])]),e(h)?(r(),g("div",$l,[a(Ct,{color:"#df2a4c",indeterminate:""})])):(r(),V(Ta,{key:1,modelValue:e(M),"onUpdate:modelValue":ae[3]||(ae[3]=p=>ze(M)?M.value=p:null),class:"options-container",continuous:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(z),(p,ie)=>(r(),V(qa,{key:ie,value:p,class:"h-full pb-safe overflow-y-scroll",eager:"",continuous:""},{default:t(()=>[Ca(A.$slots,`body.${p}`,{},void 0,!0)]),_:2},1032,["value"]))),128))]),_:3},8,["modelValue"])),m("div",Vl,[Ca(A.$slots,"footer",{},void 0,!0)])])],512)):O("",!0)]),_:3}))}}),Pl=Mt(Sl,[["__scopeId","data-v-03a5e73e"]]),zl={class:"text-sm"},Ml={class:"text-right"},El={class:"text-right"},Fl={key:0},Il={key:0},Bl={class:"text-right"},Tl={key:1},ql={class:"text-right"},Al={key:2},Nl={class:"text-right"},Ol={class:"flex justify-start"},Ql={class:"v-label mb-0 ml-2",for:"disabled"},Dl={class:"relative mt-2"},Ll={for:"name",class:"v-label"},Rl={class:"relative"},Ul={for:"info.manufacturer",class:"v-label"},jl={class:"relative"},Zl={for:"info.model",class:"v-label"},Kl={class:"relative"},Wl={for:"info.hardware",class:"v-label"},Hl={class:"relative"},Yl={for:"info.serialNumber",class:"v-label"},Jl={class:"relative"},Xl={for:"info.firmwareVersion",class:"v-label"},Gl={class:"relative"},er={for:"info.supportUrl",class:"v-label"},tr={for:"interface.streamingMode",class:"v-label"},ar={class:"flex justify-start"},or={class:"v-label mb-0 ml-2",for:"recording.enabled"},nr={class:"text-sm"},sr={class:"w-full flex flex-col items-center justify-center mt-5"},lr={class:"relative w-full"},rr={for:"activitySettings.motion.timeout",class:"v-label"},ir={class:"text-sm"},ur={class:"w-full flex flex-col items-center justify-center mt-5"},cr={class:"relative w-full"},dr={for:"activitySettings.motion.confidence",class:"v-label"},mr={class:"w-full flex flex-col items-center justify-center"},vr={key:0,class:"text-sm text-passive mb-3"},pr={class:"relative"},fr={for:"frameWorkerSettings.decoder",class:"v-label"},gr={class:"relative"},yr={for:"frameWorkerSettings.resolution",class:"v-label"},hr={class:"relative"},br={for:"frameWorkerSettings.fps",class:"v-label"},_r={class:"flex flex-row items-center justify-center ml-auto"},kr={class:"relative mt-2"},wr=["for"],xr={class:"relative mt-2"},Cr=["for"],$r={class:"relative mt-2 flex flex-col w-full"},Vr=["for"],Sr={class:"w-full flex items-center justify-center my-3"},Pr={class:"plugints-title p-2"},zr={class:"v-label"},Mr={key:0,class:"plugints-title p-2"},Er={class:"v-label"},Fr={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Ir={class:"text-sm text-passive"},Br={key:1,class:"plugints-title p-2"},Tr={class:"v-label"},qr={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Ar={class:"text-sm text-passive"},Nr={key:2,class:"plugints-title p-2"},Or={class:"v-label"},Qr={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Dr={class:"text-sm text-passive"},Lr={key:3,class:"plugints-title p-2"},Rr={class:"v-label"},Ur={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},jr={class:"text-sm text-passive"},Zr={key:4,class:"plugints-title p-2"},Kr={class:"v-label"},Wr={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Hr={class:"text-sm text-passive"},Yr={key:5,class:"plugints-title p-2"},Jr={class:"v-label"},Xr={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Gr={class:"text-sm text-passive"},ei={class:"p-2"},ti={key:0,class:"mb-4"},ai={key:0},oi={class:"v-label"},ni={class:"v-label"},si={key:1},li={class:"v-label"},ri={key:0,class:"w-full flex items-center justify-center my-5"},ii={key:1,class:"w-full flex items-center justify-center my-5"},ui={class:"text-sm text-passive"},ci={key:0,class:"p-2"},di={class:"v-label"},mi=dt({__name:"VCameraOptions",props:{cameraName:{},show:{type:Boolean,default:!1}},emits:["close"],setup(o,{emit:l}){const s=new Wt,C=new mo,z=Dn(),Q=po(),{api:L}=ao(),h=o,Z=l,{cameraName:$,show:M}=mt(h),k=y(),b=y(),S=y(),u=y(),A=y(),ae=y(["hub","motionDetection","objectDetection","audioDetection","prebuffer","ptz","extensions"]),p=y(!1),ie=y(!1),le=y(),re=y(),K=y({page:1,pageSize:-1}),w=y(!1),q=y("hub"),N=y(),X=y(),F=y(),U=y(),B=y(),G=y(),fe=y(""),Ne=y(),Le=y(!0),Ke=y(!1),Te=y(!1),Re=y(["high-resolution","mid-resolution","low-resolution","snapshot"]),Ve=y(["hls","mjpeg","mp4","mse","webrtc","webrtc/tcp"]),xe=y([640,480,320]),qe=y(["pillow","wasm"]),Oe=y(!0),ot=y(),Ye=y(),nt=y(),it=y(!1),Ze=y({name:"",regions:[]});s.toggleQueryActivator("getCameraExtensionConfigQuery",!1);const{data:T,isLoading:$t,suspense:st}=s.getCameraQuery($),{data:Me,isLoading:Y,suspense:ee}=s.getCameraExtensionsQuery($),{data:ne,isLoading:pe}=s.getCameraExtensionConfigQuery($.value,fe,Oe),{mutate:me,isPending:Se}=s.removeCameraQuery(),{mutate:ue,isPending:Ce}=s.patchCameraQuery(),{mutate:Ge,isPending:v}=s.patchCameraExtensionConfigQuery(),{mutateAsync:f,isPending:oe}=s.addCameraExtensionQuery(),{mutateAsync:ce,isPending:ge}=s.removeCameraExtensionQuery(),{mutateAsync:J,isPending:Ee}=s.enableCameraExtensionQuery(),{mutateAsync:se,isPending:he}=s.disableCameraExtensionQuery(),{mutateAsync:We,isPending:Fe}=s.removeCameraZoneQuery(),{data:He,isLoading:ht,suspense:bt}=C.getPluginsQuery(K),{data:et,isLoading:_t}=C.getPluginsExtensionsQuery(K),{mutateAsync:Ue,isPending:ma}=C.actionButtonQuery(),be=W(()=>$t.value||Se.value),Qe=W(()=>Y.value||_t.value||oe.value||ge.value||Ee.value||he.value||Fe.value),At=W(()=>Fe.value),Je=W(()=>At.value||Qe.value||p.value||ma.value||v.value||Ce.value),Rt=W(()=>{var c;const i=((c=Me.value)==null?void 0:c.filter(D=>D.type.includes("hub")))||[];return i.length&&He.value&&He.value.result.some(D=>D.pluginName===i[0].pluginName&&!D.disabled)?(N.value=i[0].pluginName,fe.value=i[0].pluginName):N.value=void 0,kt(i)}),Ht=W(()=>{var c,D,ye;const i=((c=Me.value)==null?void 0:c.filter(de=>de.type.includes("motionDetection")))||[];return i.length&&Ie((D=T==null?void 0:T.value)==null?void 0:D.extensions.motionDetection)?X.value=(ye=T==null?void 0:T.value)==null?void 0:ye.extensions.motionDetection:X.value=void 0,kt(i)}),Yt=W(()=>{var c,D,ye;const i=((c=Me.value)==null?void 0:c.filter(de=>de.type.includes("audioDetection")))||[];return i.length&&Ie((D=T==null?void 0:T.value)==null?void 0:D.extensions.audioDetection)?F.value=(ye=T==null?void 0:T.value)==null?void 0:ye.extensions.audioDetection:F.value=void 0,kt(i)}),Ut=W(()=>{var c,D,ye;const i=((c=Me.value)==null?void 0:c.filter(de=>de.type.includes("objectDetection")))||[];return i.length&&Ie((D=T==null?void 0:T.value)==null?void 0:D.extensions.objectDetection)?U.value=(ye=T==null?void 0:T.value)==null?void 0:ye.extensions.objectDetection:U.value=void 0,kt(i)}),jt=W(()=>{var c,D,ye;const i=((c=Me.value)==null?void 0:c.filter(de=>de.type.includes("ptz")))||[];return i.length&&Ie((D=T==null?void 0:T.value)==null?void 0:D.extensions.ptz)?B.value=(ye=T==null?void 0:T.value)==null?void 0:ye.extensions.ptz:B.value=void 0,kt(i)}),Jt=W(()=>{var c,D,ye;const i=((c=Me.value)==null?void 0:c.filter(de=>de.type.includes("prebuffer")))||[];return i.length&&Ie((D=T==null?void 0:T.value)==null?void 0:D.extensions.prebuffer)?G.value=(ye=T==null?void 0:T.value)==null?void 0:ye.extensions.prebuffer:G.value=void 0,kt(i)});we(N,(i,c)=>{i&&i!==c&&Vt()}),we(q,(i,c)=>{i===void 0&&(q.value=c)}),we(M,i=>{if(w.value){w.value=!1,Z("close");return}xt(()=>w.value=i)}),we(T,i=>{i&&(b.value=Uo(i))},{deep:!0,immediate:!0}),we(X,(i,c)=>{i!==c&&(!i&&c?tt(c,!1,"motionDetection"):i&&tt(i,!0,"motionDetection"))}),we(U,(i,c)=>{i!==c&&(!i&&c?tt(c,!1,"objectDetection"):i&&tt(i,!0,"objectDetection"))}),we(B,(i,c)=>{i!==c&&(!i&&c?tt(c,!1,"ptz"):i&&tt(i,!0,"ptz"))}),we(F,(i,c)=>{i!==c&&(!i&&c?tt(c,!1,"audioDetection"):i&&tt(i,!0,"audioDetection"))}),we(G,(i,c)=>{i!==c&&(!i&&c?tt(c,!1,"prebuffer"):i&&tt(i,!0,"prebuffer"))}),we(ie,i=>{i||(le.value=void 0,re.value=void 0)});const kt=i=>i.sort((c,D)=>!Ie(c.pluginName)&&Ie(D.pluginName)?1:Ie(c.pluginName)&&!Ie(D.pluginName)?-1:c.displayName.localeCompare(D.displayName)),Xt=async(i,c)=>{await s.queryClient.refetchQueries({queryKey:["cameras","extensions",i,c]})},Gt=i=>{var c;(c=b.value)==null||c.sources[i].urls.push("")},va=(i,c)=>{var D;(D=b.value)==null||D.sources[i].urls.splice(c,1)},Nt=()=>{me({cameraname:$.value},{onSuccess:()=>{z.path.includes($.value)&&Q.push({path:"/cameras"}),Ke.value=!1}})},ea=async(i,c,D)=>{p.value=!0,Ge({cameraname:i,pluginname:c,configData:D},{onSettled:()=>{p.value=!1}})},pa=async()=>{var D,ye;p.value=!0;const i=await((D=S.value)==null?void 0:D.validate()),c=await((ye=u.value)==null?void 0:ye.validate());if(i!=null&&i.valid&&(c!=null&&c.valid)){const de={...i.values,...c.values};ue({cameraname:$.value,cameraData:de},{onSettled:()=>{p.value=!1}})}else p.value=!1},fa=()=>{b.value&&b.value.sources.push({_id:"",name:"",roles:[],urls:[]})},ga=i=>{b.value&&b.value.sources.splice(i,1)},ya=()=>{Ze.value={name:"",regions:[]},Te.value=!0},ha=()=>{Te.value=!1,Ne.value=void 0,it.value=!1,Ze.value={name:"",regions:[]}},ta=async(i,c)=>{var D;if(c){const ye=await((D=A.value)==null?void 0:D.validate());if(!(ye!=null&&ye.valid))return}Te.value=!1,c?it.value=!0:it.value=!1,Ne.value=i},ba=async i=>{await We({cameraname:$.value,zonename:i})},tt=async(i,c,D)=>{c?(!D||!T.value||T.value.extensions[D]!==i)&&(await J({cameraname:$.value,pluginname:i,type:D}),xt(()=>Vt())):(!D||!T.value||T.value.extensions[D]===i)&&(await se({cameraname:$.value,pluginname:i,type:D}),xt(()=>Vt()))},Ie=i=>{if(i&&He.value&&He.value.result.some(c=>c.pluginName===i&&!c.disabled))return i},Vt=(i,c)=>{var D,ye,de,Et,St,Ft;switch(s.toggleQueryActivator("getCameraExtensionConfigQuery",!1),q.value){case"hub":fe.value=Ie((D=Rt.value[0])==null?void 0:D.pluginName)||"";break;case"motionDetection":fe.value=Ie((ye=T==null?void 0:T.value)==null?void 0:ye.extensions.motionDetection)||"";break;case"audioDetection":fe.value=Ie((de=T==null?void 0:T.value)==null?void 0:de.extensions.audioDetection)||"";break;case"objectDetection":fe.value=Ie((Et=T==null?void 0:T.value)==null?void 0:Et.extensions.objectDetection)||"";break;case"ptz":fe.value=Ie((St=T==null?void 0:T.value)==null?void 0:St.extensions.ptz)||"";break;case"prebuffer":fe.value=Ie((Ft=T==null?void 0:T.value)==null?void 0:Ft.extensions.prebuffer)||"";break;default:fe.value="";break}fe.value&&fe.value!==""&&s.toggleQueryActivator("getCameraExtensionConfigQuery",!0)},_a=async i=>{Me.value&&(Me.value.some(c=>c.pluginName===i.pluginName)?await ce({cameraname:$.value,pluginname:i.pluginName}):await f({cameraname:$.value,pluginname:i.pluginName}))},ka=async(i,c)=>{p.value=!0,await Ue({pluginName:c,actionId:i.actionId,payload:i.payload},{onSuccess:D=>{D!=null&&D.toast&&yt[D.toast.type](D.toast.message),D!=null&&D.schema&&Object.keys(D.schema).length&&(re.value=i.payload,le.value=D,ie.value=!0)},onSettled:()=>{p.value=!1}})};return no(async()=>{await bt(),await st(),await ee(),Vt()}),ca(async()=>{var i,c,D,ye;k.value=await L.deviceManager.getCameraByName($.value),(i=k.value)==null||i.onMotionDetected.subscribe(de=>{de.state||de.detections.length?ot.value=de.timestamp:de.lastEvent&&(de.lastEvent.state||de.lastEvent.detections.length)&&(ot.value=de.lastEvent.timestamp)}),(c=k.value)==null||c.onAudioDetected.subscribe(de=>{de.state?Ye.value=de.timestamp:de.lastEvent&&de.lastEvent.state&&(Ye.value=de.lastEvent.timestamp)}),(D=k.value)==null||D.onObjectDetected.subscribe(de=>{de.detections.length?nt.value=de.timestamp:de.lastEvent&&de.lastEvent.detections.length&&(nt.value=de.lastEvent.timestamp)}),await((ye=k.value)==null?void 0:ye.start())}),so(()=>{var i;Oe.value=!1,(i=k.value)==null||i.close()}),(i,c)=>{var I;const D=Oa,ye=$a("v-number-input"),de=ko,Et=Pl,St=Fa,Ft=hl,x=bs;return r(),g(ke,null,[e(M)?(r(),V(Et,{key:0,state:e(w),title:e($),segments:["overview","sources","settings","extensions"],loading:e(be)||!e(b),onClose:c[28]||(c[28]=n=>Z("close")),onSelected:c[29]||(c[29]=n=>Le.value=n!=="extensions"&&n!=="overview")},{"segmentIcon.overview":t(()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(nn)),1)]),_:1})]),"body.overview":t(()=>[a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),a(D,{target:"snapshot","current-camera":e($),"border-radius":0,style:{"border-bottom":"1px solid var(--border)"}},null,8,["current-camera"]),a(Nn,{class:"table-fixed w-full p-2",style:{background:"none !important"}},{default:t(()=>{var n,P,E,R,Ae,ve;return[m("tbody",zl,[m("tr",null,[m("td",null,d(i.$t("components.camera_options.name")),1),m("td",Ml,d(e($)),1)]),m("tr",null,[m("td",null,d(i.$t("components.camera_options.plugin")),1),m("td",El,[e(ht)?(r(),g("span",Fl,[a(Ct,{color:"#df2a4c",size:"20",indeterminate:""})])):O("",!0),m("span",null,d(((n=e(T))==null?void 0:n.pluginId)!=="native"?((E=(P=e(He))==null?void 0:P.result.find(wt=>{var ut;return wt.id===((ut=e(T))==null?void 0:ut.pluginId)}))==null?void 0:E.pluginName)||i.$t("components.camera_options.unknown"):i.$t("components.camera_options.native")),1)])]),(R=e(T))!=null&&R.extensions.motionDetection?(r(),g("tr",Il,[m("td",null,d(i.$t("components.camera_options.last_motion")),1),m("td",Bl,d(e(ot)?e(xa)(e(ot),"DD.MM.YYYY, HH:mm:ss"):"-"),1)])):O("",!0),(Ae=e(T))!=null&&Ae.extensions.objectDetection?(r(),g("tr",Tl,[m("td",null,d(i.$t("components.camera_options.last_object")),1),m("td",ql,d(e(nt)?e(xa)(e(nt),"DD.MM.YYYY, HH:mm:ss"):"-"),1)])):O("",!0),(ve=e(T))!=null&&ve.extensions.audioDetection?(r(),g("tr",Al,[m("td",null,d(i.$t("components.camera_options.last_audio")),1),m("td",Nl,d(e(Ye)?e(xa)(e(Ye),"DD.MM.YYYY, HH:mm:ss"):"-"),1)])):O("",!0)])]}),_:1})]),"segmentIcon.settings":t(()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(Ia)),1)]),_:1})]),"body.settings":t(()=>[a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),a(e(sa),{ref_key:"cameraVeeForm1",ref:S,class:"flex flex-col h-full w-full p-2","validation-schema":e(Xa)},{default:t(()=>[a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[_(d(i.$t("components.camera_options.details")),1)]),_:1}),a(ft,{eager:""},{default:t(()=>[m("div",Ol,[a(e(Be),{modelValue:e(b).disabled,"onUpdate:modelValue":c[0]||(c[0]=n=>e(b).disabled=n),name:"disabled",type:"checkbox",value:!0,"unchecked-value":!1},{default:t(({field:n,errorMessage:P,errors:E})=>[a(Sa,Pe({loading:e(be),name:"disabled"},n,{color:"#df2a4c",type:"checkbox",error:E.length>0,"error-messages":P,"hide-details":"","model-value":n.checked,style:{"max-width":"fit-content"}}),null,16,["loading","error","error-messages","model-value"]),m("label",Ql,d(i.$t("components.form.label.disabled")),1)]),_:1},8,["modelValue"])]),m("div",Dl,[a(e(Be),{modelValue:e(b).name,"onUpdate:modelValue":c[1]||(c[1]=n=>e(b).name=n),name:"name"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",Ll,d(i.$t("components.form.label.name")),1),a(lt,Pe({loading:e(be),variant:"outlined",name:"name",type:"text",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),a(te,{width:"100%",color:"red",variant:"flat",class:"mt-3",loading:e(be)||e(Je),onClick:c[2]||(c[2]=H(n=>Ke.value=!0,["prevent"]))},{default:t(()=>[_(d(i.$t("components.form.button.remove")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1}),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[_(d(i.$t("components.camera_options.information")),1)]),_:1}),a(ft,{eager:""},{default:t(()=>[m("div",Rl,[a(e(Be),{modelValue:e(b).info.manufacturer,"onUpdate:modelValue":c[3]||(c[3]=n=>e(b).info.manufacturer=n),name:"info.manufacturer"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",Ul,d(i.$t("components.form.label.camera_manufacturer")),1),a(lt,Pe({loading:e(be),variant:"outlined",name:"info.manufacturer",type:"text",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",jl,[a(e(Be),{modelValue:e(b).info.model,"onUpdate:modelValue":c[4]||(c[4]=n=>e(b).info.model=n),name:"info.model"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",Zl,d(i.$t("components.form.label.camera_model")),1),a(lt,Pe({loading:e(be),variant:"outlined",name:"info.model",type:"text",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",Kl,[a(e(Be),{modelValue:e(b).info.hardware,"onUpdate:modelValue":c[5]||(c[5]=n=>e(b).info.hardware=n),name:"info.hardware"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",Wl,d(i.$t("components.form.label.camera_hardware")),1),a(lt,Pe({loading:e(be),variant:"outlined",name:"info.hardware",type:"text",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",Hl,[a(e(Be),{modelValue:e(b).info.serialNumber,"onUpdate:modelValue":c[6]||(c[6]=n=>e(b).info.serialNumber=n),name:"info.serialNumber"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",Yl,d(i.$t("components.form.label.camera_serialNumber")),1),a(lt,Pe({loading:e(be),variant:"outlined",name:"info.serialNumber",type:"text",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",Jl,[a(e(Be),{modelValue:e(b).info.firmwareVersion,"onUpdate:modelValue":c[7]||(c[7]=n=>e(b).info.firmwareVersion=n),name:"info.firmwareVersion"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",Xl,d(i.$t("components.form.label.camera_firmwareVersion")),1),a(lt,Pe({loading:e(be),variant:"outlined",name:"info.firmwareVersion",type:"text",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",Gl,[a(e(Be),{modelValue:e(b).info.supportUrl,"onUpdate:modelValue":c[8]||(c[8]=n=>e(b).info.supportUrl=n),name:"info.supportUrl"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",er,d(i.$t("components.form.label.camera_supportUrl")),1),a(lt,Pe({loading:e(be),variant:"outlined",name:"info.supportUrl",type:"text",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1}),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[_(d(i.$t("components.camera_options.interface")),1)]),_:1}),a(ft,{eager:""},{default:t(()=>[a(e(Be),{modelValue:e(b).interface.streamingMode,"onUpdate:modelValue":c[9]||(c[9]=n=>e(b).interface.streamingMode=n),name:"interface.streamingMode"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",tr,d(i.$t("components.form.label.streaming_mode")),1),a(qt,Pe({loading:e(be),items:e(Ve),variant:"outlined",name:"interface.streamingMode",type:"text",density:"compact",chips:""},n,{error:E.length>0,"error-messages":P,"model-value":n.value,onKeydown:H(()=>null,["prevent"])}),{chip:t(({item:R})=>[a(Xe,{color:"#df2a4c"},{default:t(()=>[_(d(R.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[_(d(i.$t("components.camera_options.recordings")),1)]),_:1}),a(ft,{eager:""},{default:t(()=>[m("div",ar,[a(e(Be),{modelValue:e(b).recording.enabled,"onUpdate:modelValue":c[10]||(c[10]=n=>e(b).recording.enabled=n),name:"recording.enabled",type:"checkbox",value:!0,"unchecked-value":!1},{default:t(({field:n,errorMessage:P,errors:E})=>[a(Sa,Pe(n,{loading:e(be),name:"recording.enabled",color:"#df2a4c",type:"checkbox",error:E.length>0,"error-messages":P,"hide-details":"","model-value":n.checked,style:{"max-width":"fit-content"}}),null,16,["loading","error","error-messages","model-value"]),m("label",or,d(i.$t("components.form.label.enabled")),1)]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1}),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[_(d(i.$t("components.camera_options.activity_detection")),1)]),_:1}),a(ft,{eager:""},{default:t(()=>[m("span",nr,d(i.$t("components.camera_options.motion_detection_settings")),1),m("div",sr,[m("div",lr,[a(e(Be),{modelValue:e(b).activitySettings.motion.timeout,"onUpdate:modelValue":c[11]||(c[11]=n=>e(b).activitySettings.motion.timeout=n),name:"activitySettings.motion.timeout"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",rr,d(i.$t("components.form.label.motion_duration")),1),a(ye,Pe({"model-value":n.value,loading:e(be),variant:"outlined",name:"activitySettings.motion.timeout",type:"number",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["model-value","loading","error","error-messages"])]),_:1},8,["modelValue"])])]),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-5"}),m("span",ir,d(i.$t("components.camera_options.object_detection_settings")),1),m("div",ur,[m("div",cr,[a(e(Be),{modelValue:e(b).activitySettings.object.confidence,"onUpdate:modelValue":c[12]||(c[12]=n=>e(b).activitySettings.object.confidence=n),name:"activitySettings.object.confidence"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",dr,d(i.$t("components.form.label.confidence")),1),a(ye,Pe({"model-value":n.value,loading:e(be),variant:"outlined",name:"activitySettings.object.confidence",type:"number",density:"compact"},n,{step:.01,error:E.length>0,"error-messages":P}),null,16,["model-value","loading","error","error-messages"])]),_:1},8,["modelValue"])])])]),_:1})]),_:1})]),_:1}),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[_(d(i.$t("components.camera_options.activity_zones")),1)]),_:1}),a(ft,{eager:""},{default:t(()=>{var n,P,E;return[m("div",mr,[(P=(n=e(T))==null?void 0:n.activityZones)!=null&&P.length?(r(!0),g(ke,{key:1},$e((E=e(T))==null?void 0:E.activityZones,(R,Ae)=>(r(),g("div",{key:Ae,class:"w-full flex flex-row items-center"},[a(lt,{class:"my-1","model-value":R.name,variant:"outlined",density:"compact",type:"text","hide-details":"",readonly:""},{"append-inner":t(()=>[a(te,{class:"mr-2",size:"24",rounded:"",density:"compact",variant:"flat",color:"green",loading:e(At),onClick:H(ve=>ta(R,!1),["prevent"])},{default:t(()=>[a(j,{size:"16"},{default:t(()=>[_(d(e(uo)),1)]),_:1})]),_:2},1032,["loading","onClick"]),a(te,{size:"24",rounded:"",density:"compact",variant:"flat",color:"red",loading:e(At),onClick:H(ve=>ba(R.name),["prevent"])},{default:t(()=>[a(j,{size:"16"},{default:t(()=>[_(d(e(Tt)),1)]),_:1})]),_:2},1032,["loading","onClick"])]),_:2},1032,["model-value"])]))),128)):(r(),g("span",vr,d(i.$t("components.camera_options.no_zones")),1))]),a(te,{class:"mt-3",block:"",color:"#df2a4c",loading:e(At),variant:"flat",onClick:c[13]||(c[13]=H(R=>ya(),["prevent"]))},{default:t(()=>[_(d(i.$t("components.form.button.new_zone")),1)]),_:1},8,["loading"])]}),_:1})]),_:1})]),_:1}),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[_(d(i.$t("components.camera_options.frame_worker_settings")),1)]),_:1}),a(ft,{eager:""},{default:t(()=>[m("div",pr,[a(e(Be),{modelValue:e(b).frameWorkerSettings.decoder,"onUpdate:modelValue":c[14]||(c[14]=n=>e(b).frameWorkerSettings.decoder=n),name:"frameWorkerSettings.decoder"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",fr,d(i.$t("components.form.label.decoder")),1),a(qt,Pe({loading:e(be),items:e(qe),variant:"outlined",name:"frameWorkerSettings.decoder",type:"text",density:"compact",chips:""},n,{error:E.length>0,"error-messages":P,"model-value":n.value,onKeydown:H(()=>null,["prevent"])}),{chip:t(({item:R})=>[a(Xe,{color:"#df2a4c"},{default:t(()=>[_(d(R.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),m("div",gr,[a(e(Be),{modelValue:e(b).frameWorkerSettings.resolution,"onUpdate:modelValue":c[15]||(c[15]=n=>e(b).frameWorkerSettings.resolution=n),name:"frameWorkerSettings.resolution"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",yr,d(i.$t("components.form.label.resolution")),1),a(qt,Pe({loading:e(be),items:e(xe),variant:"outlined",name:"frameWorkerSettings.resolution",type:"number",density:"compact",chips:""},n,{error:E.length>0,"error-messages":P,"model-value":n.value,onKeydown:H(()=>null,["prevent"])}),{chip:t(({item:R})=>[a(Xe,{color:"#df2a4c"},{default:t(()=>[_(d(R.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),m("div",hr,[a(e(Be),{modelValue:e(b).frameWorkerSettings.fps,"onUpdate:modelValue":c[16]||(c[16]=n=>e(b).frameWorkerSettings.fps=n),name:"frameWorkerSettings.fps"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",br,d(i.$t("components.form.label.fps")),1),a(ye,Pe({"model-value":n.value,loading:e(be),variant:"outlined",name:"frameWorkerSettings.fps",type:"number",density:"compact"},n,{min:5,max:10,step:1,error:E.length>0,"error-messages":P}),null,16,["model-value","loading","error","error-messages"])]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1})]),_:1},8,["validation-schema"])]),"segmentIcon.sources":t(()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(Va)),1)]),_:1})]),"body.sources":t(()=>[a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),a(e(sa),{ref_key:"cameraVeeForm2",ref:u,class:"flex flex-col h-full w-full p-2","validation-schema":e(Xa)},{default:t(()=>[(r(!0),g(ke,null,$e(e(b).sources,(n,P)=>(r(),g("div",{key:P},[a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{actions:t(({expanded:E})=>{var R;return[m("div",_r,[a(te,{loading:e(be),disabled:((R=e(b))==null?void 0:R.sources)!==void 0&&e(b).sources.length<2,size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:H(Ae=>ga(P),["stop"])},{default:t(()=>[a(j,null,{default:t(()=>[_(d(e(Tt)),1)]),_:1})]),_:2},1032,["loading","disabled","onClick"]),E?(r(),V(j,{key:0,size:"22.5"},{default:t(()=>[_(d(e(lo)),1)]),_:1})):(r(),V(j,{key:1,size:"22.5"},{default:t(()=>[_(d(e(ro)),1)]),_:1}))])]}),default:t(()=>[_(d(i.$t("components.camera_options.source")+": "+n.name.replace(/ /g,"_").toLowerCase())+" ",1)]),_:2},1024),a(ft,{eager:""},{default:t(()=>[m("div",kr,[a(e(Be),{modelValue:n.name,"onUpdate:modelValue":E=>n.name=E,name:`sources[${P}].name`},{default:t(({field:E,errorMessage:R,errors:Ae})=>[m("label",{for:`sources[${P}].name`,class:"v-label"},d(i.$t("components.form.label.source_name")),9,wr),a(lt,Pe({loading:e(be),variant:"outlined",name:`sources[${P}].name`,type:"text",density:"compact",ref_for:!0},E,{error:Ae.length>0,"error-messages":R}),null,16,["loading","name","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"])]),m("div",xr,[a(e(Be),{modelValue:n.roles,"onUpdate:modelValue":E=>n.roles=E,name:`sources[${P}].roles`},{default:t(({field:E,errorMessage:R,errors:Ae})=>[m("label",{for:`sources[${P}].roles`,class:"v-label"},d(i.$t("components.form.label.source_role")),9,Cr),a(qt,Pe({loading:e(be),items:e(Re).filter(ve=>!e(b).sources.some((wt,ut)=>wt.roles.includes(ve)&&ut!==P)),variant:"outlined",name:`sources[${P}].roles`,type:"text",density:"compact",chips:"",multiple:"",ref_for:!0},E,{"model-value":E.value,error:Ae.length>0,"error-messages":R,onKeydown:H(()=>null,["prevent"])}),{chip:t(({item:ve})=>[a(Xe,{color:"#df2a4c"},{default:t(()=>[_(d(ve.title),1)]),_:2},1024)]),_:2},1040,["loading","items","name","model-value","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"])]),m("div",$r,[m("label",{for:`sources[${P}].urls[]`,class:"v-label"},d(i.$t("components.form.label.sources")),9,Vr),(r(!0),g(ke,null,$e(n.urls,(E,R)=>(r(),g("div",{key:R},[a(e(Be),{modelValue:n.urls[R],"onUpdate:modelValue":Ae=>n.urls[R]=Ae,name:`sources[${P}].urls[${R}]`,value:E},{default:t(({field:Ae,errorMessage:ve,errors:wt})=>[a(lt,Pe({loading:e(be),variant:"outlined",name:`sources[${P}].urls[${R}]`,type:"text",density:"compact",ref_for:!0},Ae,{error:wt.length>0,"error-messages":ve}),{"append-inner":t(()=>[n.urls.length>1?(r(),V(te,{key:0,loading:e(be),size:"28",variant:"text",rounded:"",density:"compact",color:"red",disabled:n.urls.length<2,onClick:H(ut=>va(P,R),["prevent"])},{default:t(()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(sn)),1)]),_:1})]),_:2},1032,["loading","disabled","onClick"])):O("",!0)]),_:2},1040,["loading","name","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name","value"])]))),128)),a(te,{loading:e(be),color:"#df2a4c",variant:"flat",class:"ml-auto",onClick:H(E=>Gt(P),["prevent"])},{default:t(()=>[_(d(i.$t("components.form.button.add_source")),1)]),_:2},1032,["loading","onClick"])])]),_:2},1024)]),_:2},1024)]),_:2},1024),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"})]))),128)),m("div",Sr,[a(te,{loading:e(be),variant:"text",color:"#df2a4c",icon:"",onClick:H(fa,["prevent"])},{default:t(()=>[a(j,{size:"30"},{default:t(()=>[_(d(e(io)),1)]),_:1})]),_:1},8,["loading"])])]),_:1},8,["validation-schema"])]),"segmentIcon.extensions":t(()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(ln)),1)]),_:1})]),"body.extensions":t(()=>[a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),m("div",Pr,[m("label",zr,d(i.$t("components.camera_options.categories")),1),a(Pt,{modelValue:e(q),"onUpdate:modelValue":[c[17]||(c[17]=n=>ze(q)?q.value=n:null),c[18]||(c[18]=n=>Vt("@update:model-value chip group select"))],"selected-class":"primary-color",disabled:e(Qe),mandatory:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(ae),n=>(r(),V(Xe,{key:n,size:"small",disabled:e(Je),value:n},{default:t(()=>[_(d(i.$t(`components.camera_options.chip_${n}`)),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])]),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),e(q)==="hub"?(r(),g("div",Mr,[m("label",Er,d(i.$t("components.camera_options.chip_extensions")),1),e(Rt).length?(r(),V(Pt,{key:0,modelValue:e(N),"onUpdate:modelValue":c[19]||(c[19]=n=>ze(N)?N.value=n:null),"selected-class":"primary-color",disabled:e(Qe),mandatory:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(Rt),n=>(r(),V(Xe,{key:n.pluginName,disabled:!Ie(n.pluginName)||e(Je),size:"small",value:n.pluginName},{default:t(()=>[_(d(n.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(r(),g("div",Fr,[m("span",Ir,d(i.$t("components.camera_options.no_extensions_enabled")),1)]))])):e(q)==="motionDetection"?(r(),g("div",Br,[m("label",Tr,d(i.$t("components.camera_options.enabled_extension")),1),e(Ht).length?(r(),V(Pt,{key:0,modelValue:e(X),"onUpdate:modelValue":c[20]||(c[20]=n=>ze(X)?X.value=n:null),"selected-class":"primary-color",disabled:e(Qe),filter:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(Ht),n=>(r(),V(Xe,{key:n.pluginName,disabled:!Ie(n.pluginName)||e(Je),size:"small",value:n.pluginName},{default:t(()=>[_(d(n.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(r(),g("div",qr,[m("span",Ar,d(i.$t("components.camera_options.no_extensions_enabled")),1)]))])):e(q)==="objectDetection"?(r(),g("div",Nr,[m("label",Or,d(i.$t("components.camera_options.enabled_extension")),1),e(Ut).length?(r(),V(Pt,{key:0,modelValue:e(U),"onUpdate:modelValue":c[21]||(c[21]=n=>ze(U)?U.value=n:null),"selected-class":"primary-color",disabled:e(Qe),filter:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(Ut),n=>(r(),V(Xe,{key:n.pluginName,disabled:!Ie(n.pluginName)||e(Je),size:"small",value:n.pluginName},{default:t(()=>[_(d(n.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(r(),g("div",Qr,[m("span",Dr,d(i.$t("components.camera_options.no_extensions_enabled")),1)]))])):e(q)==="audioDetection"?(r(),g("div",Lr,[m("label",Rr,d(i.$t("components.camera_options.enabled_extension")),1),e(Yt).length?(r(),V(Pt,{key:0,modelValue:e(F),"onUpdate:modelValue":c[22]||(c[22]=n=>ze(F)?F.value=n:null),"selected-class":"primary-color",disabled:e(Qe),filter:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(Yt),n=>(r(),V(Xe,{key:n.pluginName,disabled:!Ie(n.pluginName)||e(Je),size:"small",value:n.pluginName},{default:t(()=>[_(d(n.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(r(),g("div",Ur,[m("span",jr,d(i.$t("components.camera_options.no_extensions_enabled")),1)]))])):e(q)==="prebuffer"?(r(),g("div",Zr,[m("label",Kr,d(i.$t("components.camera_options.enabled_extension")),1),e(Jt).length?(r(),V(Pt,{key:0,modelValue:e(G),"onUpdate:modelValue":c[23]||(c[23]=n=>ze(G)?G.value=n:null),"selected-class":"primary-color",disabled:e(Qe),filter:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(Jt),n=>(r(),V(Xe,{key:n.pluginName,disabled:!Ie(n.pluginName)||e(Je),size:"small",value:n.pluginName},{default:t(()=>[_(d(n.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(r(),g("div",Wr,[m("span",Hr,d(i.$t("components.camera_options.no_extensions_enabled")),1)]))])):e(q)==="ptz"?(r(),g("div",Yr,[m("label",Jr,d(i.$t("components.camera_options.enabled_extension")),1),e(jt).length?(r(),V(Pt,{key:0,modelValue:e(B),"onUpdate:modelValue":c[24]||(c[24]=n=>ze(B)?B.value=n:null),"selected-class":"primary-color",disabled:e(Qe),filter:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(jt),n=>(r(),V(Xe,{key:n.pluginName,disabled:!Ie(n.pluginName)||e(Je),size:"small",value:n.pluginName},{default:t(()=>[_(d(n.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(r(),g("div",Xr,[m("span",Gr,d(i.$t("components.camera_options.no_extensions_enabled")),1)]))])):O("",!0),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),e(Qe)?(r(),V(On,{key:6,height:"2",color:"#df2a4c",indeterminate:"",style:{"margin-top":"-2px"}})):O("",!0),m("div",ei,[a(Ta,{modelValue:e(q),"onUpdate:modelValue":c[27]||(c[27]=n=>ze(q)?q.value=n:null),disabled:e(Qe),mandatory:"",eager:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(ae),n=>(r(),V(qa,{key:n,value:n,transition:"instant","reverse-transition":"instant"},{default:t(()=>{var P,E,R,Ae;return[n==="extensions"?(r(),g("div",ti,[(P=e(Me))!=null&&P.filter(ve=>ve.builtIn).length?(r(),g("div",ai,[m("label",oi,d(i.$t("components.camera_options.builtin_extensions")),1),(r(!0),g(ke,null,$e((E=e(Me))==null?void 0:E.filter(ve=>ve.builtIn),(ve,wt)=>{var ut;return r(),g("div",{key:ve.pluginName},[a(Ka,{"select-strategy":"classic",class:"py-0",disabled:e(Qe)},{default:t(()=>[a(Pa,{value:ve.pluginName,class:"px-2",active:!1},{prepend:t(()=>[a(Wa,{start:""},{default:t(()=>[a(za,{"model-value":!0,color:"#df2a4c",disabled:!0})]),_:1})]),append:t(()=>[a(te,{class:"ml-auto",size:"28",rounded:"",density:"compact",variant:"text",onClick:H(()=>i.$router.push(`/plugins/${ve.pluginName}`),["stop"])},{default:t(()=>[a(j,{size:"18"},{default:t(()=>[_(d(e(Ua)),1)]),_:1})]),_:2},1032,["onClick"])]),default:t(()=>[_(d(ve.displayName)+" ",1)]),_:2},1032,["value"])]),_:2},1032,["disabled"]),wt!==(((ut=e(Me))==null?void 0:ut.filter(aa=>aa.builtIn))||[]).length-1?(r(),V(je,{key:0,style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"})):O("",!0)])}),128))])):O("",!0),m("div",null,[m("label",ni,d(i.$t("components.camera_options.extensions")),1),(r(!0),g(ke,null,$e((R=e(et))==null?void 0:R.result,(ve,wt)=>{var ut,aa;return r(),g("div",{key:ve.pluginName},[a(Ka,{"select-strategy":"classic",class:"py-0",disabled:e(Qe),"onUpdate:selected":()=>_a(ve)},{default:t(()=>{var Qa;return[a(Pa,{value:ve.pluginName,class:"px-2",active:(Qa=e(Me))==null?void 0:Qa.some(oa=>oa.pluginName===ve.pluginName)},{prepend:t(()=>[a(Wa,{start:""},{default:t(()=>{var oa;return[a(za,{"model-value":(oa=e(Me))==null?void 0:oa.some(Vo=>Vo.pluginName===ve.pluginName),color:"#df2a4c"},null,8,["model-value"])]}),_:2},1024)]),append:t(()=>[a(te,{class:"ml-auto",size:"28",rounded:"",density:"compact",variant:"text",onClick:H(()=>i.$router.push(`/plugins/${ve.pluginName}`),["stop"])},{default:t(()=>[a(j,{size:"18"},{default:t(()=>[_(d(e(Ua)),1)]),_:1})]),_:2},1032,["onClick"])]),default:t(()=>[_(d(ve.displayName)+" ",1)]),_:2},1032,["value","active"])]}),_:2},1032,["disabled","onUpdate:selected"]),(ut=e(et))!=null&&ut.result&&wt!==((aa=e(et))==null?void 0:aa.result.length)-1?(r(),V(je,{key:0,style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"})):O("",!0)])}),128))])])):(r(),g("div",si,[m("label",li,d(i.$t("components.camera_options.extension_settings")),1),e(pe)?(r(),g("div",ri,[a(Ct,{color:"#df2a4c",indeterminate:""})])):!e(fe)||!((Ae=e(ne))!=null&&Ae.rootSchema)?(r(),g("div",ii,[m("span",ui,d(i.$t("components.camera_options.no_config")),1)])):e(ne)?(r(),V(de,{key:n,config:e(ne).config||{},"ui-schema":e(ne).rootSchema,loading:e(Je),onOnFormSubmit:c[25]||(c[25]=ve=>ea(e($),e(fe),ve)),onOnSubmit:ve=>ka(ve,n),onChangeGroup:c[26]||(c[26]=()=>Xt(e($),e(fe)))},null,8,["config","ui-schema","loading","onOnSubmit"])):O("",!0)]))]}),_:2},1032,["value"]))),128))]),_:1},8,["modelValue","disabled"])])]),footer:t(()=>[e(Le)?(r(),g("div",ci,[a(te,{width:"100%",color:"green",variant:"flat",loading:e(be)||e(Je),onClick:H(pa,["prevent"])},{default:t(()=>[_(d(i.$t("components.form.button.save")),1)]),_:1},8,["loading"])])):O("",!0)]),_:1},8,["state","title","loading"])):O("",!0),a(St,{modelValue:e(Ke),"onUpdate:modelValue":c[30]||(c[30]=n=>ze(Ke)?Ke.value=n:null),title:i.$t("components.dialog.title.confirm"),"confirm-text":"components.form.button.remove",loading:e(be)||e(Je),onConfirm:c[31]||(c[31]=n=>Nt())},{content:t(()=>[m("span",null,d(i.$t("components.dialog.message.confirm_remove")),1)]),_:1},8,["modelValue","title","loading"]),a(St,{modelValue:e(Te),"onUpdate:modelValue":c[33]||(c[33]=n=>ze(Te)?Te.value=n:null),title:i.$t("components.dialog.title.confirm"),"confirm-text":"components.form.button.open_editor",loading:e(be)||e(Je),onConfirm:c[34]||(c[34]=n=>ta(e(Ze),!0))},{content:t(()=>[a(e(sa),{ref_key:"cameraVeeForm3",ref:A,"validation-schema":e(xo),"initial-values":e(Ze)},{default:t(()=>[a(e(Be),{modelValue:e(Ze).name,"onUpdate:modelValue":c[32]||(c[32]=n=>e(Ze).name=n),name:"name",type:"text"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",di,d(i.$t("components.form.label.zone_name")),1),a(lt,Pe({class:"my-1",variant:"outlined",density:"compact",type:"text",name:"name"},n,{error:E.length>0,"error-messages":P}),null,16,["error","error-messages"])]),_:1},8,["modelValue"])]),_:1},8,["validation-schema","initial-values"])]),_:1},8,["modelValue","title","loading"]),e(Ne)?(r(),V(Ft,{key:1,"camera-name":e($),zones:e(Ne),"is-new-zone":e(it),onShowModal:c[35]||(c[35]=n=>n?null:ha())},null,8,["camera-name","zones","is-new-zone"])):O("",!0),(I=e(le))!=null&&I.schema?(r(),V(x,{key:2,modelValue:e(ie),"onUpdate:modelValue":c[36]||(c[36]=n=>ze(ie)?ie.value=n:null),"ui-schema":{schema:e(le).schema},"plugin-config":e(re)||{},"plugin-name":e(fe)},null,8,["modelValue","ui-schema","plugin-config","plugin-name"])):O("",!0)],64)}}}),vi=Mt(mi,[["__scopeId","data-v-4f2d0a22"]]),pi={class:"w-full h-full flex items-center justify-center bg-black aspect-video"},$o=dt({__name:"VCameraSnapshot",props:{cameraName:{},src:{},loading:{type:Boolean}},setup(o,{expose:l}){const s=new Wt,C=o,{cameraName:z,loading:Q,src:L}=mt(C);L.value&&s.toggleQueryActivator("getCameraSnapshotQuery",!1);const{data:h,isLoading:Z}=s.getCameraSnapshotQuery(z),$=W(()=>Q.value||Z.value),M=W(()=>L.value?L.value:h.value?`data:image/jpeg;base64,${h.value}`:"");return l({download:()=>{if(M.value){const b=`${z.value.replace(/ /g,"_").toLowerCase()}_${new Date().toISOString()}.png`,S=document.createElement("a");S.setAttribute("download",b),S.href=M.value,document.body.appendChild(S),S.click(),S.remove()}}}),(b,S)=>{const u=eo;return r(),g("div",pi,[e($)?(r(),V(Ct,{key:0,color:"#df2a4c",indeterminate:""})):(r(),V(u,{key:1,src:e(M),width:"100%",height:"100%","aspect-ratio":"16/9",cover:""},null,8,["src"]))])}}}),fi=["data-ignore-id"],gi={class:"snapshot-hover-container flex items-center justify-center elevation-3"},yi={key:0,style:{width:"100%","aspect-ratio":"16/9"}},hi={class:"shortcut-menu p-3 elevation-5"},bi=dt({__name:"VCameraShortcuts",props:{currentCamera:{},clickInsideId:{},addingShortcuts:{type:Boolean}},setup(o){var Me;const l=new Wt,s=new qo,C=To(),z=po(),Q=o,{clickInsideId:L,currentCamera:h,addingShortcuts:Z}=mt(Q),{loginState:$}=co(C),M=y(null),k=y(null),b=y({}),S=y({}),u=y({}),A=y(!1),ae=y(),p=y({page:1,pageSize:-1}),ie=y(!1),le=y([]),re=y({}),K=Zt(k),{data:w,isLoading:q}=l.getCameraQuery(h),{data:N,isLoading:X}=l.getCamerasQuery(p),{data:F,isLoading:U}=s.getUserQuery(((Me=$.value.user)==null?void 0:Me.username)||""),{mutate:B,isPending:G}=s.patchShortcutQuery(),{mutateAsync:fe,isPending:Ne}=s.createShortcutQuery(),{mutateAsync:Le,isPending:Ke}=s.removeShortcutQuery(),Te=W(()=>q.value||U.value||G.value||X.value||Ne.value||Ke.value),Re=W(()=>{var Y;return(Y=N.value)!=null&&Y.result?N.value.result.filter(ee=>ee.name!==h.value):[]});we([F,w],()=>{var Y;F.value&&w.value&&(le.value=((Y=F.value.preferences.cameras[w.value._id])==null?void 0:Y.shortcuts)||[])},{immediate:!0,deep:!0}),we([K.width,K.height],()=>{ie.value=!0,xt(()=>{Ye()})}),we(le,()=>{xt(()=>{nt()})},{deep:!0,immediate:!0}),we(ie,Y=>{Y&&(ae.value=void 0)});const Ve=(Y,ee)=>{re.value[Y]=A.value?!1:ee,Object.entries(re.value).forEach(([ne,pe])=>{ne!==Y&&pe&&(re.value[ne]=!1)})},xe=Y=>{A.value||T(Y)},qe=(Y,ee)=>{Y||(re.value[ee._id]?(Ve(ee._id,!1),st(ee.cameraId)):Ve(ee._id,!0))},Oe=()=>{Object.entries(S.value).forEach(([Y,ee])=>{const ne=k.value;if(!ne)return;const pe=ne.getBoundingClientRect(),me=ee.element.getBoundingClientRect(),Se=(me.left-pe.left)/pe.width*100,ue=(me.top-pe.top)/pe.height*100;u.value[Y]={x:Math.max(0,Math.min(Se,100)),y:Math.max(0,Math.min(ue,100))}})},ot=()=>{Object.entries(S.value).forEach(([Y,ee])=>{const ne=u.value[Y];if(!ne)return;const pe=k.value;if(!pe)return;const me=pe.getBoundingClientRect(),Se=ee.element.getBoundingClientRect(),ue=me.width-Se.width,Ce=me.height-Se.height,Ge=Math.max(0,Math.min(ne.x/100*me.width,ue)),v=Math.max(0,Math.min(ne.y/100*me.height,Ce));ee.setPosition(Ge,v)}),ie.value=!1},Ye=()=>{Object.entries(u.value).forEach(([Y,ee])=>{u.value[Y]={x:Math.max(0,Math.min(ee.x,100)),y:Math.max(0,Math.min(ee.y,100))}}),ot()},nt=()=>{for(const[Y,ee]of Object.entries(S.value))le.value.find(ne=>ne._id===Y)||(ee.destroy(),delete S.value[Y],delete u.value[Y]);for(const[Y]of Object.entries(u.value))le.value.find(ee=>ee._id===Y)||delete u.value[Y];for(const[Y,ee]of Object.entries(b.value)){const ne=le.value.find(pe=>pe._id===Y);if(ee&&ne&&k.value){S.value[ne._id]&&S.value[ne._id].destroy();const pe=new vo(ee,{containment:k.value});S.value[ne._id]=pe;const[me,Se]=ne.coords.points,ue=k.value.getBoundingClientRect(),Ce=me/100*ue.width,Ge=Se/100*ue.height;pe.setPosition(Ce,Ge),u.value[ne._id]={x:me,y:Se},pe.on("dragMove",()=>{A.value=!0}),pe.on("dragEnd",()=>{if(setTimeout(()=>{A.value=!1},50),Oe(),!F.value||!w.value)return;const v=u.value[ne._id];B({username:F.value.username,cameraname:w.value.name,shortcutid:ne._id,shortcutData:{coords:{_id:ne.coords._id,points:[v.x,v.y]}}})})}}ot()},it=Y=>{if(!Z.value||!k.value)return;const ee=k.value.getBoundingClientRect(),ne=35,pe=35;ae.value={x:Math.max(0,Math.min(Y.clientX-ee.left-ne/2,ee.width-ne)),y:Math.max(0,Math.min(Y.clientY-ee.top-pe/2,ee.height-pe))}},Ze=async Y=>{if(!M.value||!F.value||!w.value||!k.value)return;const ee=k.value,ne=M.value,pe=ee.getBoundingClientRect(),me=ne.getBoundingClientRect(),Se=me.left-pe.left,ue=me.top-pe.top,Ce=Se/pe.width*100,Ge=ue/pe.height*100;await fe({username:F.value.username,cameraname:w.value.name,shortcutData:{_id:"",coords:{_id:"",points:[Ce,Ge]},cameraId:Y._id}},{onSuccess:v=>{le.value=v}}),ae.value=void 0},T=async Y=>{!F.value||!w.value||await Le({username:F.value.username,cameraname:w.value.name,shortcutid:Y._id},{onSuccess:ee=>{le.value=ee}})},$t=(Y,ee)=>{b.value[ee]=Y},st=async Y=>{if(A.value)return;const ee=new AbortController,pe=(await wo({cameraname:Y,signal:ee.signal})).name;pe&&z.push(`/cameras/${pe}`)};return jo(()=>{b.value={}}),ca(()=>{xt(()=>{nt()})}),Zo(()=>{Object.values(S.value).forEach(Y=>Y.destroy())}),(Y,ee)=>{const ne=Oa,pe=$o;return r(),g("div",{ref_key:"shortcutContainer",ref:k,class:"shortcut-container relative",style:Bt({cursor:e(Z)?"pointer":"default"}),onClick:H(it,["self"])},[(r(!0),g(ke,null,$e(e(le),me=>Ko((r(),g("div",{ref_for:!0,ref:Se=>$t(Se,me._id),key:me._id,class:"draggable absolute","data-ignore-id":e(L),style:Bt({background:e(re)[me._id]?"#545454":void 0})},[a(te,{color:"#383838",size:"32",density:"compact",icon:"",variant:"elevated",active:e(re)[me._id]},{default:t(()=>[a(j,{size:"30",style:{"margin-top":"3px"}},{default:t(()=>[_(d("$cuiCamera"))]),_:1})]),_:2},1032,["active"]),a(Ha,{"model-value":e(A)?!1:e(re)[me._id]||void 0,target:"parent",offset:[10,20]},{default:t(()=>{var Se;return[m("div",gi,[(Se=e(N))!=null&&Se.result.find(ue=>ue._id===me.cameraId)?(r(),V(ne,{key:1,"current-camera":e(N).result.find(ue=>ue._id===me.cameraId).name,"border-radius":0,target:"stream","source-role":"low-resolution","show-mode":!1,"show-live-indicator":""},null,8,["current-camera"])):(r(),g("div",yi,[a(Ct,{color:"#df2a4c",indeterminate:""})]))])]}),_:2},1032,["model-value"])],12,fi)),[[e(Fn),Se=>Ve(me._id,Se)],[e(In),[()=>xe(me),{distanceThreshold:24,delay:1e3,onMouseUp:(Se,ue,Ce)=>qe(Ce,me)}]]])),128)),e(ae)?(r(),g("div",{key:0,ref_key:"placeholderEl",ref:M,class:"draggable absolute",style:Bt(`left: ${e(ae).x}px; top: ${e(ae).y}px;`)},[a(te,{color:"#383838",size:"32",density:"compact",icon:"",variant:"elevated"},{default:t(()=>[a(j,{size:"30",style:{"margin-top":"3px"}},{default:t(()=>[_(d("$cuiCamera"))]),_:1})]),_:1})],4)):O("",!0),e(Z)&&!e(A)&&!e(ie)?(r(),V(Ha,{key:1,offset:[30,0],activator:"parent",target:"cursor","onUpdate:modelValue":ee[0]||(ee[0]=me=>me?null:ae.value=void 0)},{default:t(()=>[m("div",hi,[(r(!0),g(ke,null,$e(e(Re),me=>(r(),V(pe,{key:me._id,class:"shortcut-menu-item elevation-1","camera-name":me.name,width:"100%",loading:e(Te),onClick:H(Se=>Ze(me),["prevent"])},null,8,["camera-name","loading","onClick"]))),128))])]),_:1})):O("",!0)],4)}}}),_i=Mt(bi,[["__scopeId","data-v-216a3cdc"]]),ki={class:"stream-control flex flex-row items-center justify-center elevation-2"},wi=dt({__name:"VPlayerController",props:{showVolume:{type:Boolean,default:!0},showRewind:{type:Boolean,default:!1},showFastForward:{type:Boolean,default:!1},showPlayPause:{type:Boolean,default:!0},showMicrophone:{type:Boolean,default:!1},showAirplay:{type:Boolean,default:!1},showPip:{type:Boolean,default:!1},showFs:{type:Boolean,default:!1},playing:{type:Boolean},muted:{type:Boolean},micActive:{type:Boolean},isFs:{type:Boolean},isPip:{type:Boolean},loading:{type:Boolean},collapsedControls:{default(){return[]}}},emits:["toggle-mute","toggle-play","toggle-microphone","toggle-airplay","toggle-picture-in-picture","toggle-fullscreen","toggle-rewind","toggle-fast-forward","toggle-playback-rate"],setup(o,{emit:l}){const s=l,C=o,{showAirplay:z,showFastForward:Q,showMicrophone:L,showPip:h,showPlayPause:Z,showRewind:$,showVolume:M,playing:k,micActive:b,muted:S,loading:u,showFs:A,isFs:ae,isPip:p,collapsedControls:ie}=mt(C),le=W(()=>ie.value.includes("airplay")),re=W(()=>ie.value.includes("fast-forward")),K=W(()=>ie.value.includes("microphone")),w=W(()=>ie.value.includes("pip")),q=W(()=>ie.value.includes("play-pause")),N=W(()=>ie.value.includes("rewind")),X=W(()=>ie.value.includes("volume")),F=W(()=>ie.value.includes("fs"));return(U,B)=>(r(),g("div",ki,[e(N)?O("",!0):(r(),V(te,{key:0,disabled:!e($)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[0]||(B[0]=H(G=>s("toggle-rewind"),["prevent"]))},{default:t(()=>[a(j,{color:"#fff",size:"18"},{default:t(()=>[_(d(e(rn)),1)]),_:1})]),_:1},8,["disabled"])),e(q)?O("",!0):(r(),V(te,{key:1,disabled:!e(Z)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[1]||(B[1]=H(G=>s("toggle-play"),["prevent"]))},{default:t(()=>[e(q)?O("",!0):(r(),V(j,{key:0,color:"#fff",size:"18"},{default:t(()=>[_(d(e(k)?e(un):e(cn)),1)]),_:1}))]),_:1},8,["disabled"])),e(re)?O("",!0):(r(),V(te,{key:2,disabled:!e(Q)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[2]||(B[2]=H(G=>s("toggle-fast-forward"),["prevent"]))},{default:t(()=>[a(j,{color:"#fff",size:"18"},{default:t(()=>[_(d(e(dn)),1)]),_:1})]),_:1},8,["disabled"])),e(X)?O("",!0):(r(),V(te,{key:3,disabled:!e(M)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[3]||(B[3]=H(G=>s("toggle-mute"),["prevent"]))},{default:t(()=>[a(j,{color:"#fff",size:"18"},{default:t(()=>[_(d(e(S)?e(mn):e(vn)),1)]),_:1})]),_:1},8,["disabled"])),e(K)?O("",!0):(r(),V(te,{key:4,disabled:!e(L)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[4]||(B[4]=H(G=>s("toggle-microphone"),["prevent"]))},{default:t(()=>[a(j,{color:"#fff",size:"18"},{default:t(()=>[_(d(e(b)?e(pn):e(fn)),1)]),_:1})]),_:1},8,["disabled"])),e(le)?O("",!0):(r(),V(te,{key:5,disabled:!e(z)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[5]||(B[5]=H(G=>s("toggle-airplay"),["prevent"]))},{default:t(()=>[a(j,{color:"#fff",size:"18"},{default:t(()=>[_(d(e(gn)),1)]),_:1})]),_:1},8,["disabled"])),e(w)?O("",!0):(r(),V(te,{key:6,disabled:!e(h)||e(u)||e(ae),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[6]||(B[6]=H(G=>s("toggle-picture-in-picture"),["prevent"]))},{default:t(()=>[a(j,{color:"#fff",size:"18"},{default:t(()=>[_(d(e(p)?e(yn):e(hn)),1)]),_:1})]),_:1},8,["disabled"])),e(F)?O("",!0):(r(),V(te,{key:7,disabled:!e(A)||e(u)||e(p),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[7]||(B[7]=H(G=>s("toggle-fullscreen"),["prevent"]))},{default:t(()=>[a(j,{color:"#fff",size:"18"},{default:t(()=>[_(d(e(ae)?e(bn):e(_n)),1)]),_:1})]),_:1},8,["disabled"]))]))}}),xi=Mt(wi,[["__scopeId","data-v-b5e30f72"]]),Ci=dt({__name:"VBBoxPlayground",props:{color:{default:"#df2a4c"},detections:{default(){return[]}}},setup(o,{expose:l}){const s=o,{color:C,detections:z}=mt(s),Q=y(null),L=Zt(Q),h=$=>{if(!Q.value)return;const k=Q.value.getContext("2d");if(k&&(Z(),$.length)){const b=$[0].origWidth,S=$[0].origHeight;Q.value.width=L.width.value,Q.value.height=L.height.value;const u=Q.value.width/b,A=Q.value.height/S;$.forEach(ae=>{const{origHeight:p,origWidth:ie,inputWidth:le,inputHeight:re}=ae,[K,w,q,N]=ae.boundingBox,X=Math.round(K*ie/le),F=Math.round(w*p/re),U=Math.round(q*ie/le),B=Math.round(N*p/re),G=X*u,fe=F*A,Ne=U*u,Le=B*A;k.strokeStyle=C.value,k.lineWidth=2,k.beginPath(),k.moveTo(G+5,fe),k.lineTo(Ne-5,fe),k.quadraticCurveTo(Ne,fe,Ne,fe+5),k.lineTo(Ne,Le-5),k.quadraticCurveTo(Ne,Le,Ne-5,Le),k.lineTo(G+5,Le),k.quadraticCurveTo(G,Le,G,Le-5),k.lineTo(G,fe+5),k.quadraticCurveTo(G,fe,G+5,fe),k.closePath(),k.stroke();const Ke=`${ae.label} (${(ae.confidence*100).toFixed(2)}%)`,Te=k.measureText(Ke).width+27,Re=20;let Ve=G,xe=fe-Re-5;xe<0&&(xe=fe+5);const qe=10,Oe=5;k.beginPath(),k.moveTo(Ve+Oe,xe),k.lineTo(Ve+Te+qe*2-Oe,xe),k.quadraticCurveTo(Ve+Te+qe*2,xe,Ve+Te+qe*2,xe+Oe),k.lineTo(Ve+Te+qe*2,xe+Re-Oe),k.quadraticCurveTo(Ve+Te+qe*2,xe+Re,Ve+Te+qe*2-Oe,xe+Re),k.lineTo(Ve+Oe,xe+Re),k.quadraticCurveTo(Ve,xe+Re,Ve,xe+Re-Oe),k.lineTo(Ve,xe+Oe),k.quadraticCurveTo(Ve,xe,Ve+Oe,xe),k.closePath(),k.fillStyle="rgba(255, 255, 255, 0.7)",k.fill(),k.fillStyle="black",k.font="bold 13px sans-serif",k.textAlign="left",k.textBaseline="bottom",k.fillText(Ke,Ve+qe,xe+Re-3)})}},Z=()=>{if(!Q.value)return;const $=Q.value.getContext("2d");$&&$.clearRect(0,0,L.width.value,L.height.value)};return we(z,$=>{xt(()=>{h($)})},{deep:!0,immediate:!0}),l({draw:h,clear:Z}),($,M)=>(r(),g("canvas",{ref_key:"bboxCanvas",ref:Q,class:"canvas-container"},null,512))}}),Ga=Mt(Ci,[["__scopeId","data-v-bb909d51"]]);function $i(){const o=W(()=>typeof window>"u"?!1:[/Android/i,/webOS/i,/iPhone/i,/iPad/i,/iPod/i,/BlackBerry/i,/Windows Phone/i].some(S=>navigator.userAgent.match(S))),l=W(()=>typeof window>"u"?!1:[/Android/i].some(S=>navigator.userAgent.match(S))),s=W(()=>typeof window>"u"?!1:[/iPhone/i].some(S=>navigator.userAgent.match(S))),C=W(()=>typeof window>"u"?!1:[/iPad/i].some(S=>navigator.userAgent.match(S))),z=W(()=>C.value||s.value),Q=W(()=>{var S;if(typeof window>"u")return[0,0];const b=/OS [\d_]+/i;return s.value?((S=navigator.userAgent.match(b))==null?void 0:S[0].substr(3).split("_").map(u=>parseInt(u)))||[0,0]:[0,0]}),L=W(()=>typeof window>"u"?!1:[/Safari/i].some(S=>navigator.userAgent.match(S))),h=W(()=>{if(typeof window>"u")return null;const b=/Version\/(\d+).+Safari/;return navigator.userAgent.match(b)}),Z=W(()=>typeof window>"u"?!1:[/Firefox/i].some(S=>navigator.userAgent.match(S))),$=W(()=>typeof window>"u"?!1:[/Chrome/i].some(S=>navigator.userAgent.match(S))),M=W(()=>{let b=!1;if("maxTouchPoints"in navigator)b=navigator.maxTouchPoints>0;else if("msMaxTouchPoints"in navigator)navigator!==null&&(b=navigator.msMaxTouchPoints>0);else{const S=matchMedia("(pointer:coarse)");if(S&&S.media==="(pointer:coarse)")b=!!S.matches;else if("orientation"in window)b=!0;else{const u=navigator.userAgent;b=/\b(BlackBerry|webOS|iPhone|IEMobile)\b/i.test(u)||/\b(Android|Windows Phone|iPad|iPod)\b/i.test(u)}}return b}),k=W(()=>{const b=typeof document.body.requestFullscreen<"u"||typeof document.body.mozRequestFullScreen<"u"||typeof document.body.webkitRequestFullscreen<"u"||typeof document.body.msRequestFullscreen<"u"||typeof document.exitFullscreen<"u"||typeof document.mozCancelFullScreen<"u"||typeof document.webkitExitFullscreen<"u",[S,u]=Q.value,A=S&&S>=17&&u&&u>=2;return!!(b||!s.value||s.value&&A)});return{isMobile:o,isAndroid:l,isIphone:s,isIpad:C,isAppleMobile:z,iosVersion:Q,isSafari:L,safariVersion:h,isFirefox:Z,isChrome:$,isTouch:M,fsSupported:k}}const Vi=["data-inside-id"],Si={class:"relative player-container-main w-full",style:"background: var(--background-img);"},Pi={class:"relative w-full h-full flex items-center justify-center"},zi={key:1,class:"relative w-full h-full"},Mi={key:0,class:"camera-name text-white"},Ei={class:"video-extras flex items-center justify-center"},Fi={key:0,class:"video-extras-bg text-white p-2"},Ii={key:1,class:"mx-1"},Bi={key:1,class:"absolute w-full h-full flex flex-col items-center justify-center"},Ti={key:0,class:"mt-3 text-white text-sm"},qi={key:4,width:"100%",height:"100%",class:"zones-container polygon-container"},Ai=["d"],Ni=["muted"],Oi={key:2,class:"relative w-full h-full"},Qi=["data-ignore-id"],Di={class:"flex items-center justify-between"},Li={class:"leading-4 flex flex-col p-2"},Ri={key:0,class:"text-left"},Ui={key:0},ji={class:"player-camera-subtitle ml-1"},Zi={key:1},Ki={class:"player-camera-subtitle ml-1"},Wi={class:"player-camera-settings-box flex items-center ml-auto"},Hi=["data-ignore-id"],Yi=5e3,Ji=1e4,Xi=dt({__name:"VPlayer",props:{currentCamera:{},target:{},mode:{},previewSrc:{},showCameraName:{type:Boolean,default:!1},showMode:{type:Boolean,default:!0},showTitle:{type:Boolean,default:!1},showLiveIndicator:{type:Boolean,default:!1},absoluteTitle:{type:Boolean,default:!1},clickableTitle:{type:Boolean,default:!1},enableControl:{type:Boolean,default:!1},autoHideControl:{type:Boolean,default:!0},allowStreamRunningInBg:{type:Boolean,default:!1},border:{type:Boolean,default:!1},borderRadius:{default:3},buttonElevation:{default:"0"},timelineScrolling:{type:Boolean,default:!1},zoomModel:{default:5},shortcuts:{type:Boolean,default:!1},settings:{type:Boolean,default:!1},share:{type:Boolean,default:!1},snapshot:{type:Boolean,default:!1},zoom:{type:Boolean,default:!1},motions:{type:Boolean,default:!1},objects:{type:Boolean,default:!1},zones:{type:Boolean,default:!1},sourceRole:{default:"high-resolution"}},emits:["settings","share","snapshot","resize","zoom-in","zoom-out","fullscreen"],setup(o,{expose:l,emit:s}){var St,Ft;const C=new Wt,{api:z}=ao(),{mobileActive:Q}=to(),{fsSupported:L,isIphone:h,isMobile:Z}=$i(),$=o,{absoluteTitle:M,allowStreamRunningInBg:k,autoHideControl:b,border:S,borderRadius:u,buttonElevation:A,clickableTitle:ae,currentCamera:p,enableControl:ie,target:le,mode:re,previewSrc:K,settings:w,share:q,showTitle:N,snapshot:X,timelineScrolling:F,zoom:U,zoomModel:B,objects:G,motions:fe,zones:Ne,sourceRole:Le,showCameraName:Ke,showMode:Te,showLiveIndicator:Re,shortcuts:Ve}=mt($),xe=s,qe=y(Ao()),Oe=y(),ot=y(null),Ye=y(!1),nt=y(!1),it=y(null),Ze=y(!1),T=y(!1),$t=y(null),st=y(!1),Me=y(!1),Y=y(!0),ee=y(!0),ne=y(!1),pe=y(),me=y(),Se=y(),ue=y(),Ce=y(null),Ge=y([]),v=y(),f=y(!1),oe=y(!1),ce=y(!1),ge=y(!0),J=y(!1),Ee=y(!1),se=y(null),he=y("loading"),We=y(),Fe=y(!1),He=y(!1);let ht,bt,et,_t;C.toggleQueryActivator("getCameraQuery",le.value!=="preview");const Ue=C.getCameraQuery(p),ma=Zt(it),be=Zt(se),{isFullscreen:Qe,toggle:At}=Bn($t);Ot(se,"pause",()=>{J.value=!1}),Ot(se,"play",()=>{J.value=!0}),Ot(se,"loadeddata",()=>{Ee.value=!0,f.value=!1}),Ot(se,"enterpictureinpicture",()=>ce.value=!0),Ot(se,"leavepictureinpicture",()=>ce.value=!1),ie.value&&Ba(ot,x=>{const I=x.target,n=I.closest(`[data-inside-id='${qe.value}']`),P=I.closest(`[data-ignore-id='${qe.value}']`),E=I.closest(".resizable-b");n&&!P&&!E&&!Ye.value&&(b.value&&Vt(),T.value=!T.value)}),((St=Ue==null?void 0:Ue.data.value)==null?void 0:St.interface.streamingMode)==="hls"&&((Ft=se.value)!=null&&Ft.canPlayType("application/vnd.apple.mpegurl"))&&window.WebKitPlaybackTargetAvailabilityEvent&&Ot(se,"webkitplaybacktargetavailabilitychanged",x=>{switch(x.availability){case"available":v.value=!0;break;case"not-available":v.value=void 0;break}});const Je=W(()=>le.value==="stream"&&he.value!=="mjpeg"&&he.value!=="mp4"),Rt=W(()=>navigator.mediaDevices&&le.value==="stream"&&He.value),Ht=W(()=>{var x,I;return!!(he.value==="hls"&&((x=Ue==null?void 0:Ue.data.value)==null?void 0:x.interface.streamingMode)==="hls"&&((I=se.value)!=null&&I.canPlayType("application/vnd.apple.mpegurl"))&&v.value!==void 0)}),Yt=W(()=>document.pictureInPictureEnabled&&!h.value&&le.value==="stream"&&he.value!=="mp4"&&he.value!=="mjpeg"),Ut=W(()=>le.value==="stream"&&he.value!=="mjpeg"&&he.value!=="mp4"),jt=W(()=>!!(Ue!=null&&Ue.isLoading.value||!Ee.value));if(we(f,async x=>{x&&await c(!1,!1)}),we(ma.height,(x,I)=>{xe("resize",x-I)},{deep:!0}),we(Ze,x=>{xt(()=>nt.value=x)}),we(Qe,x=>{xe("fullscreen",x)}),!k.value&&le.value==="stream"&&!Z.value){const x=Tn();we(x,I=>{var n;I==="hidden"?oe.value===!1&&(clearTimeout(bt),bt=setTimeout(()=>{Et()},Ji)):(clearTimeout(bt),oe.value&&((n=Ce.value)==null||n.reconnect()))})}const Jt=async()=>{var Ae;if(ie.value&&b.value&&T.value&&Vt(),await(Ue==null?void 0:Ue.suspense()),ue.value=await z.deviceManager.getCameraByName(p.value),!ue.value)throw new Error("Camera not found!");let x;const I=ue.value.streamSource,n=ue.value.snapshotSource,P=ue.value.highResolutionSource,E=ue.value.midResolutionSource,R=ue.value.lowResolutionSource;if(Le.value==="high-resolution"?P?x=P:(console.warn("High resolution source not found, using stream source instead"),x=I):Le.value==="mid-resolution"?E?x=E:(console.warn("Mid resolution source not found, using stream source instead"),x=I):Le.value==="low-resolution"?R?x=R:(console.warn("Low resolution source not found, using stream source instead"),x=I):Le.value==="snapshot"?n?x=n:(console.warn("Snapshot source not found, using stream source instead"),x=I):x=I,Oe.value=`${p.value.replace(/ /g,"_").toLowerCase()}_${x.name}`,Y.value=!ue.value.hasMotionDetector,ee.value=!ue.value.hasObjectDetector,ue.value.onPropertyChange("hasMotionDetector").subscribe(({newData:ve})=>{Y.value=!ve}),ue.value.onPropertyChange("hasObjectDetector").subscribe(({newData:ve})=>{ee.value=!ve}),!se.value)throw new Error("Video player not found!");Ce.value=ue.value.createSession({mode:re.value||((Ae=Ue==null?void 0:Ue.data.value)==null?void 0:Ae.interface.streamingMode)||"webrtc",sourceName:Oe.value,videoElement:se.value,reconnectInterval:5e3}),Ce.value.addEventListener("error",kt),Ce.value.addEventListener("reconnect",Xt),Ce.value.addEventListener("finishLoading",Gt),Ce.value.connect()},kt=x=>{console.error(p.value,x),he.value="error",He.value=!1,Ee.value=!1,f.value=!1},Xt=()=>{he.value="reconnecting",He.value=!1,Ee.value=!1,f.value=!0},Gt=()=>{He.value=Ce.value.hasBackchannel,he.value=Ce.value.mode,Ee.value=!0,f.value=!1},va=()=>{var x,I;if(se.value){const n=document.createElement("canvas");n.width=se.value.videoWidth,n.height=se.value.videoHeight,(x=n.getContext("2d"))==null||x.drawImage(se.value,0,0,n.width,n.height);const P=n.toDataURL("image/png"),E=`${p.value.replace(/ /g,"_").toLowerCase()}_${new Date().toISOString()}.png`,R=document.createElement("a");R.setAttribute("download",E),R.href=P,document.body.appendChild(R),R.click(),R.remove()}else(I=Se.value)==null||I.download()},Nt=x=>{const I=tt(x);I==null||I.clear()},ea=(x,I)=>{const n=tt(x);n==null||n.draw(I)},pa=async()=>{var x;ne.value||(ne.value=!0,Ge.value=((x=ue.value)==null?void 0:x.activityZones)||[])},fa=()=>{ne.value=!1,Ge.value=[]},ga=x=>{if(!x)return"";const I=x.map(P=>{const E=Math.round(P[0]/100*be.width.value),R=Math.round(P[1]/100*be.height.value);return`${E},${R}`});if(I.length===0)return"";let n=`M ${I[0]}`;for(let P=1;P<I.length;P++)n+=` L ${I[P]}`;return n+=" Z",n},ya=async()=>{var x,I;st.value||(Nt("motion"),st.value=!0,await((x=ue.value)==null?void 0:x.start()),et=(I=ue.value)==null?void 0:I.onMotionDetected.subscribe(n=>{ea("motion",n.detections)}))},ha=async()=>{var x,I;Me.value||(Nt("object"),Me.value=!0,await((x=ue.value)==null?void 0:x.start()),_t=(I=ue.value)==null?void 0:I.onObjectDetected.subscribe(n=>{ea("object",n.detections)}))},ta=()=>{var x;Nt("motion"),st.value=!1,Me.value||(x=ue.value)==null||x.stop(),et==null||et.unsubscribe()},ba=()=>{var x;Nt("object"),Me.value=!1,st.value||(x=ue.value)==null||x.stop(),_t==null||_t.unsubscribe()},tt=x=>x==="motion"?pe.value:me.value,Ie=async()=>{var x;if(se.value)try{await se.value.play()}catch(I){if(!((x=se.value)!=null&&x.muted))return se.value.muted=!0,Ie();console.warn(p.value,I)}},Vt=()=>{clearTimeout(ht),ht=setTimeout(()=>{T.value=!1},Yi)},_a=()=>{var x;(x=se.value)==null||x.webkitShowPlaybackTargetPicker()},ka=()=>{L.value?At():Qe.value=!Qe.value},i=x=>{ge.value=x!==void 0?x:!ge.value},c=async(x,I=!1)=>{var n,P;if((n=Ce.value)!=null&&n.micTransceiver)if(Fe.value=x!==void 0?x:!Fe.value,Fe.value)try{We.value=await navigator.mediaDevices.getUserMedia({audio:!0});const E=We.value.getAudioTracks()[0];ge.value=!I,Ce.value.micTransceiver.sender.replaceTrack(E)}catch(E){console.warn(p.value,E)}else(P=We.value)==null||P.getTracks().forEach(E=>E.stop()),We.value=void 0,Ce.value.micTransceiver.sender.replaceTrack(null)},D=()=>{var x;document.pictureInPictureElement?document.exitPictureInPicture():document.pictureInPictureEnabled&&((x=se.value)==null||x.requestPictureInPicture())},ye=()=>{se.value&&(J.value?se.value.pause():Ie())},de=()=>{oe.value=!0,Ee.value=!1,ge.value=!0},Et=()=>{var x;de(),(x=Ce.value)==null||x.close()};return no(async()=>{try{le.value==="stream"&&await Jt()}catch(x){console.error(x)}}),so(()=>{var x,I,n,P;Et(),(x=Ce.value)==null||x.removeEventListener("error",kt),(I=Ce.value)==null||I.removeEventListener("reconnect",Xt),(n=Ce.value)==null||n.removeEventListener("finishLoading",Gt),et==null||et.unsubscribe(),_t==null||_t.unsubscribe(),(P=ue.value)==null||P.close(),ue.value=void 0}),l({toggleMicrophone:c,toggleMute:i}),(x,I)=>{const n=xi,P=_i,E=vi;return r(),g("div",{ref_key:"playerContainer",ref:it,"data-inside-id":e(qe),class:"player-container w-full relative",style:Bt(`border-radius: ${e(u)}px; border: ${e(S)?1:0}px solid var(--border);`)},[m("div",{ref_key:"fakeClick",ref:ot,class:"fake-click"},null,512),m("div",Si,[m("div",{ref_key:"videoPlayerWrapper",ref:$t,class:Dt(["w-full h-full",{"fullscreen-video":!e(L)&&e(Qe)}])},[m("div",Pi,[m("div",{class:"video-container w-full aspect-video",style:Bt(!e(L)&&e(Qe)?"width: unset":void 0)},[a(oo,{name:"fade",mode:"out-in"},{default:t(()=>[e(T)&&e(ie)?(r(),V(n,{key:0,"data-ignore-id":e(qe),loading:e(jt),"show-rewind":"","show-fast-forward":"","show-volume":e(Je),"show-play-pause":e(Ut),"show-microphone":e(Rt),"show-airplay":e(Ht)&&e(Ut),"show-pip":e(Yt),"show-fs":e(L),"is-fs":e(Qe),"is-pip":e(ce),muted:e(ge),playing:e(J),"mic-active":e(Fe),"collapsed-controls":["airplay"],onToggleMute:i,onTogglePlay:ye,onToggleMicrophone:I[0]||(I[0]=()=>c(void 0,!0)),onToggleAirplay:_a,onTogglePictureInPicture:D,onToggleFullscreen:ka},null,8,["data-ignore-id","loading","show-volume","show-play-pause","show-microphone","show-airplay","show-pip","show-fs","is-fs","is-pip","muted","playing","mic-active"])):O("",!0)]),_:1}),e(Ve)?(r(),V(P,{key:0,"current-camera":e(p),"adding-shortcuts":e(Ye),"click-inside-id":e(qe)},null,8,["current-camera","adding-shortcuts","click-inside-id"])):O("",!0),e(le)==="stream"?(r(),g("div",zi,[e(Ke)?(r(),g("div",Mi,d(e(p)),1)):O("",!0),m("div",Ei,[e(Te)&&!e(Q)?(r(),g("div",Fi,d(e(he).toUpperCase()),1)):O("",!0),e(Te)&&e(Re)?(r(),g("div",Ii)):O("",!0),e(Re)?(r(),g("div",{key:2,class:"live-indicator elevation-3",style:Bt({background:e(Ee)?"red":"gray"})},null,4)):O("",!0)]),e(jt)?(r(),g("div",Bi,[a(Ct,{color:"#df2a4c",indeterminate:""}),e(f)?(r(),g("span",Ti,d(x.$t("components.player.reconnecting"))+"...",1)):O("",!0)])):O("",!0),e(fe)&&!e(Y)?(r(),V(Ga,{key:2,ref_key:"motionCanvas",ref:pe},null,512)):O("",!0),e(G)&&!e(ee)?(r(),V(Ga,{key:3,ref_key:"objectCanvas",ref:me,color:"green"},null,512)):O("",!0),e(Ne)?(r(),g("svg",qi,[(r(!0),g(ke,null,$e(e(Ge),(R,Ae)=>(r(),g("path",{key:Ae,d:ga(R.points.map(ve=>ve)),class:Dt({polygon:R.filter=="include"&&!R.isPrivacyMask,"polygon-exclude":R.filter=="exclude"&&!R.isPrivacyMask,"polygon-privacy":R.isPrivacyMask,dash:R.type==="intersect"&&!R.isPrivacyMask})},null,10,Ai))),128))])):O("",!0),m("video",{id:"videoPlayer",ref_key:"videoPlayer",ref:se,playsinline:"",autoplay:"",preload:"auto",muted:e(ge),class:"video-player"},null,8,Ni)])):(r(),g("div",Oi,[a($o,{ref_key:"cameraSnapshot",ref:Se,"camera-name":e(p),src:e(K)},null,8,["camera-name","src"])]))],4)])],2)]),e(N)?(r(),g("div",{key:0,"data-ignore-id":e(qe),class:Dt(["p-2 px-3",{"player-header-absolute":e(M),"player-header-container":!e(M)}])},[m("div",Di,[a(te,{class:Dt(e(M)?"":"player-title-text"),style:{padding:"0"},ripple:e(M),color:e(M)?"#212121":void 0,height:"100%",variant:e(M)?"elevated":"text",elevation:e(A),rounded:"",to:e(ae)?`/cameras/${e(p)}`:void 0},{default:t(()=>[m("div",Li,[m("h3",{class:"player-camera-title",style:Bt(`color: ${e(M)?"#ffffff":"color: var(--color);"}`)},d(e(p)),5),e(le)==="stream"?(r(),g("div",Ri,[e(F)?(r(),g("div",Ui,[a(Ct,{size:"10",width:"1",indeterminate:"",color:"#0173ff"},{default:t(()=>[a(j,{size:"20",color:"#0173ff",icon:e(ja)},null,8,["icon"])]),_:1}),m("span",ji,d(x.$t("general.loading")),1)])):(r(),g("div",Zi,[a(Ct,{size:"10",width:"1","model-value":100,color:"red"},{default:t(()=>[a(j,{size:"20",color:"red",icon:e(ja)},null,8,["icon"])]),_:1}),m("span",Ki,d(x.$t("components.player.live")),1)]))])):O("",!0)])]),_:1},8,["class","ripple","color","variant","elevation","to"]),m("div",Wi,[e(U)?(r(),V(te,{key:0,size:"28",density:"compact",disabled:e(B)==1,variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[1]||(I[1]=H(R=>xe("zoom-out"),["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e(kn)},null,8,["icon"])]),_:1},8,["disabled","variant","icon","elevation","color"])):O("",!0),e(U)?(r(),V(te,{key:1,size:"28",density:"compact",disabled:e(B)==5,variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[2]||(I[2]=H(R=>xe("zoom-in"),["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e(wn)},null,8,["icon"])]),_:1},8,["disabled","variant","icon","elevation","color"])):O("",!0),e(q)?(r(),V(te,{key:2,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[3]||(I[3]=H(R=>xe("share"),["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e(xn)},null,8,["icon"])]),_:1},8,["variant","icon","elevation","color"])):O("",!0),e(X)?(r(),V(te,{key:3,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[4]||(I[4]=H(R=>va(),["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e(Cn)},null,8,["icon"])]),_:1},8,["variant","icon","elevation","color"])):O("",!0),e(fe)&&!e(Y)?(r(),V(te,{key:4,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[5]||(I[5]=H(R=>e(st)?ta():ya(),["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e($n),disabled:!e(st)},null,8,["icon","disabled"])]),_:1},8,["variant","icon","elevation","color"])):O("",!0),e(G)&&!e(ee)?(r(),V(te,{key:5,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[6]||(I[6]=H(R=>e(Me)?ba():ha(),["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e(Vn),disabled:!e(Me)},null,8,["icon","disabled"])]),_:1},8,["variant","icon","elevation","color"])):O("",!0),e(Ne)?(r(),V(te,{key:6,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[7]||(I[7]=H(R=>e(ne)?fa():pa(),["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e(Sn),disabled:!e(ne)},null,8,["icon","disabled"])]),_:1},8,["variant","icon","elevation","color"])):O("",!0),e(Ve)?(r(),V(te,{key:7,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[8]||(I[8]=H(R=>Ye.value=!e(Ye),["prevent"]))},{default:t(()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(Ye)?e(Pn):e(zn)),1)]),_:1})]),_:1},8,["variant","icon","elevation","color"])):O("",!0),e(w)&&e(No)(void 0,"admin")?(r(),V(te,{key:8,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[9]||(I[9]=H(R=>Ze.value=!0,["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e(Ia)},null,8,["icon"])]),_:1},8,["variant","icon","elevation","color"])):O("",!0)])])],10,Qi)):O("",!0),e(Ze)?(r(),g("div",{key:1,"data-ignore-id":e(qe)},[a(E,{"camera-name":e(p),show:e(nt),onClose:I[10]||(I[10]=R=>Ze.value=!1)},null,8,["camera-name","show"])],8,Hi)):O("",!0)],12,Vi)}}}),Oa=Mt(Xi,[["__scopeId","data-v-842ac894"]]);export{Wt as C,Oa as _,ko as a,Ga as b,fu as c,vi as d,bs as e,Ya as g,$i as u};
|
|
1
|
+
var So=Object.defineProperty;var Po=(o,l,s)=>l in o?So(o,l,{enumerable:!0,configurable:!0,writable:!0,value:s}):o[l]=s;var wa=(o,l,s)=>Po(o,typeof l!="symbol"?l+"":l,s);import{a as zo,e as eo,d as Mt,s as Mo,w as Fa,i as It,x as De,G as Eo,H as Fo,I as Io,J as Bo,f as to,K as ao,k as xa,u as To,U as qo,t as Ao,h as No}from"./main-BCWSiwnj.js";import{F as dt,t as mt,r as y,c as W,J as $a,e as r,f as g,u as e,N as ke,j as m,T as d,M as a,l as O,O as V,R as t,m as Pe,ar as na,q as H,V as _,i as ze,Q as $e,w as we,aj as Oo,ak as Qo,y as ca,n as Dt,z as xt,ah as Do,ai as Lo,al as Ro,k as Ca,W as oo,I as Uo,aa as no,a0 as so,af as jo,U as Zo,g as Ko,X as Bt}from"./@vue-C10tA4b9.js";import{m as Wo,a as Ho,s as Tt,_ as Da,F as lo,G as ro,e as io,N as Yo,$ as Jo,V as uo,a3 as Xo,a4 as Go,a5 as en,a6 as tn,c as Va,a7 as La,a8 as an,a9 as on,aa as Ra,ab as Ia,ac as nn,Y as sn,i as ln,ad as Ua,ae as rn,af as un,ag as cn,ah as dn,Q as mn,R as vn,K as pn,ai as fn,aj as gn,ak as yn,al as hn,S as bn,T as _n,am as ja,I as kn,J as wn,E as xn,an as Cn,ao as $n,ap as Vn,aq as Sn,ar as Pn,as as zn}from"./@mdi-C-QA1nE3.js";import{b as Mn}from"./qrcode-SHonoxyK.js";import{F as Be,a as sa}from"./vee-validate-Ck3I2guh.js";import{z as rt,c as _e}from"./zod-BaF2dDCd.js";import{s as co}from"./pinia-CitQ5b66.js";import{z as En,l as Zt,o as Ba,A as Fn,B as In,x as Bn,v as Ot,C as Tn}from"./@vueuse-BPeqNGoM.js";import{c as lt,b as te,e as j,d as Sa,z as qt,m as Xe,L as vt,M as pt,W as ct,N as ft,K as gt,X as Pt,w as Ta,x as qa,V as Ct,f as Pa,J as za,n as je,Y as Za,T as qn,U as An,Z as Nn,C as On,G as Ka,I as Wa,o as Ha}from"./vuetify-CrcT8VHB.js";import{t as da}from"./@vee-validate-D_G0ehOl.js";import{i as yt}from"./vue3-toastify-DQr2dOCx.js";import{P as mo}from"./plugins-D80RNVmI.js";import{D as vo}from"./draggabilly-Arakw9Dk.js";import{u as Qn,b as at,a as Qt}from"./@tanstack-B-9PO-kT.js";import{u as Dn,a as po}from"./vue-router-OPGDMnws.js";const Ma=o=>/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(.\d+)?(Z|[+-]\d{2}:\d{2})?)?$/.test(o),fo=(o,l)=>(l.mode==="withSeconds"?/^([01]?[0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$/:/^([01]?[0-9]|2[0-3]):([0-5][0-9])$/).test(o),go=o=>/^\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,7}\b$/.test(o),yo=o=>/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/.test(o),la=(o,l)=>(l===4?/^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$/:/^\s*([0-9a-fA-F]{1,4}:){7}([0-9a-fA-F]{1,4})\s*$/).test(o),Ln=o=>{const l={};return Object.entries(o).forEach(([s,C])=>{l[s]=Aa(C)}),{schema:l}},Aa=o=>{switch(!0){case o===void 0:case typeof o>"u":case typeof o=="function":case typeof o=="symbol":case o instanceof Date:throw new TypeError(`Invalid JSON value: ${String(o)}`);case typeof o=="number":return jn();case typeof o=="boolean":return Zn();case typeof o=="string":return Kn(o);case Array.isArray(o):return o.every(s=>typeof s=="string"||typeof s=="number"||typeof s=="boolean")?Wn(o):Yn(o);case o instanceof Object:return Hn(o);default:throw new TypeError(`Invalid JSON value: ${o}`)}},Rn=o=>{const l={};return Object.entries(o.schema).forEach(([s,C])=>{l[s]=ra(C)}),l},ra=o=>{switch(o.type){case"string":case"number":case"boolean":return Kt(o)?o.multiple?o.defaultValue!==void 0?[o.defaultValue]:void 0:o.defaultValue!==void 0?o.defaultValue:o.required?o.enum[0]:void 0:o.defaultValue;case"object":return o.properties?Object.entries(o.properties).reduce((l,[s,C])=>(l[s]=ra(C),l),{}):{};case"array":return o.items?[ra(o.items)]:[];default:return null}},Ya=(o,l,s="")=>{const C={},z=(Q,L)=>{const h=s?`${s}.${L}`:L,Z=_o(l,h);if(Lt(Q)&&Q.properties){const $=Ya(Q.properties,l,h);Object.keys($).length>0&&(C[L]=$)}else if(ua(Q)&&Q.items){const $=Z;Array.isArray($)&&(C[L]=$.map((M,k)=>Ya(Q.items,{[k]:M},`${h}[${k}]`)).filter(M=>Object.keys(M).length>0))}else Q.store&&(C[L]=Z)};return Jn(o)?z(o,s):Object.entries(o).forEach(([Q,L])=>{z(L,Q)}),C},ho=o=>!!(o.readonly||Lt(o)&&o.properties&&Object.values(o.properties).every(l=>ho(l))),bo=o=>!!(o.store||Lt(o)&&o.properties&&Object.values(o.properties).some(l=>bo(l))),_o=(o={},l)=>{const s=l.split(".").reduce((z,Q)=>{if(Q.includes("[")){const[L,h]=Q.split("[");z.push(L,h.slice(0,-1))}else z.push(Q);return z},[]);let C=o;for(const z of s){if(C===void 0)return;C=C[z]}return C},Un=o=>{const l={};return Object.entries(o.schema).forEach(([s,C])=>{l[s]=Na(C)}),rt.object(l).strict()},Na=o=>{switch(o.type){case"string":case"number":case"boolean":return Kt(o)?ts(o):zt(o)?Xn(o):ia(o)?Gn(o):es(o);case"object":return as(o);case"array":return os(o)}},jn=()=>({type:"number"}),Zn=()=>({type:"boolean"}),Kn=o=>{const l={type:"string"};return Ma(o)&&(l.format=o.includes("T")?"date-time":"date"),fo(o.split("+")[0],{mode:"withSeconds"})&&(l.format="time"),go(o)&&(l.format="email"),yo(o)&&(l.format="uuid"),la(o,4)&&(l.format="ipv4"),la(o,6)&&(l.format="ipv6"),l},Wn=o=>({type:"string",enum:o.map(l=>l.toString())}),Hn=o=>{if(!Object.keys(o).length)return{type:"object"};const l={};return Object.entries(o).forEach(([s,C])=>{const z=Aa(C);z.key=s,z.description=z.description||`Description for ${s}`,z.required=z.required===void 0?!0:z.required,z.readonly=z.readonly||!1,l[s]=z}),{type:"object",properties:l}},Yn=o=>{if(o.length===0)return{type:"array"};const l=o.every(z=>typeof z=="object"&&z!==null&&!Array.isArray(z)),s=o.every(z=>typeof z=="string"),C=o.every(z=>typeof z=="number");if(l){const z={},Q={};return o.forEach(L=>{Object.keys(L).forEach(h=>{Q[h]=(Q[h]||0)+1})}),o.forEach(L=>{Object.entries(L).forEach(([h,Z])=>{if(!z[h]){const $=Q[h]===o.length;z[h]={...Aa(Z),required:$,title:h,description:`Description for ${h}`,readonly:!1}}})}),{type:"array",items:{type:"object",properties:z}}}else return s?{type:"array",items:{type:"string"}}:C?{type:"array",items:{type:"number"}}:{type:"array",items:{type:"boolean"}}},zt=o=>o.type==="string"&&!("enum"in o),ia=o=>o.type==="number"&&!("enum"in o),Ea=o=>o.type==="boolean"&&!("enum"in o),Kt=o=>"enum"in o,Lt=o=>o.type==="object",Ja=o=>Lt(o)&&"buttons"in o,ua=o=>o.type==="array",Jn=o=>zt(o)||ia(o)||Ea(o)||Kt(o)||Lt(o)||ua(o),Xn=o=>{let l=rt.string();if(o.required&&(l=l.nonempty("Required")),o.minLength!==void 0&&(l=l.min(o.minLength)),o.maxLength!==void 0&&(l=l.max(o.maxLength)),o.format)switch(o.format){case"date-time":l=l.refine(s=>Ma(s)&&s.includes("T"),{message:"Invalid date-time"});break;case"date":l=l.refine(s=>Ma(s),{message:"Invalid date"});break;case"time":l=l.refine(s=>fo(s.split("+")[0],{mode:"withSeconds"}),{message:"Invalid time"});break;case"email":l=l.refine(s=>go(s),{message:"Invalid email"});break;case"uuid":l=l.refine(s=>yo(s),{message:"Invalid uuid"});break;case"ipv4":l=l.refine(s=>la(s,4),{message:"Invalid ipv4"});break;case"ipv6":l=l.refine(s=>la(s,6),{message:"Invalid ipv6"});break}return o.required?l:l.optional()},Gn=o=>{let l=rt.number();return o.minimum!==void 0&&(l=l.min(o.minimum)),o.maximum!==void 0&&(l=l.max(o.maximum)),o.required&&(l=l.refine(s=>s!==void 0&&typeof s=="number",{message:"Required"})),o.required?l:l.optional()},es=o=>{const l=rt.boolean();return o.required?l:l.optional()},ts=o=>{const l=o.enum.map(C=>o.required?rt.literal(C):rt.literal(C).optional()),s=o.required?rt.union(l):rt.any().transform(C=>!C||C===""||!o.enum.some(z=>z===C)?void 0:C);return o.multiple?o.required?s.array():s.array().optional():o.required?s:s.optional()},as=o=>{let l;if(o.properties){const s=Object.entries(o.properties).reduce((C,[z,Q])=>(C[z]=Na(Q),C),{});l=rt.object(s).strict()}else l=rt.record(rt.any());return o.required?l:l.optional()},os=o=>{let l;return o.items?l=Na(o.items).array():l=rt.any().array(),o.required?l:l.optional()},ns={0:"person",1:"bicycle",2:"car",3:"motorcycle",4:"airplane",5:"bus",6:"train",7:"truck",8:"boat",9:"traffic light",10:"fire hydrant",11:"stop sign",12:"parking meter",13:"bench",14:"bird",15:"cat",16:"dog",17:"horse",18:"sheep",19:"cow",20:"elephant",21:"bear",22:"zebra",23:"giraffe",24:"backpack",25:"umbrella",26:"handbag",27:"tie",28:"suitcase",29:"frisbee",30:"skis",31:"snowboard",32:"sports ball",33:"kite",34:"baseball bat",35:"baseball glove",36:"skateboard",37:"surfboard",38:"tennis racket",39:"bottle",40:"wine glass",41:"cup",42:"fork",43:"knife",44:"spoon",45:"bowl",46:"banana",47:"apple",48:"sandwich",49:"orange",50:"broccoli",51:"carrot",52:"hot dog",53:"pizza",54:"donut",55:"cake",56:"chair",57:"couch",58:"potted plant",59:"bed",60:"dining table",61:"toilet",62:"tv",63:"laptop",64:"mouse",65:"remote",66:"keyboard",67:"cell phone",68:"microwave",69:"oven",70:"toaster",71:"sink",72:"refrigerator",73:"book",74:"clock",75:"vase",76:"scissors",77:"teddy bear",78:"hair drier",79:"toothbrush",100:"motion"},ss={class:"w-full my-3"},ls=["for"],rs=["for"],is=["for"],us=["for"],cs=["for"],ds={class:"flex flex-row items-center justify-center ml-auto"},ms={key:0,class:"flex flex-col w-full items-center justify-center mt-3"},vs={class:"flex flex-row w-full items-center justify-center mt-3"},ps=dt({__name:"VCustomField",props:{schemaField:{},configKey:{},modelValue:{},removable:{},loading:{type:Boolean,default:!1}},emits:["onChange","onSubmit"],setup(o,{emit:l}){const s=zo(),C=l,z=o,{theme:Q}=co(s),{modelValue:L,schemaField:h,configKey:Z,removable:$,loading:M}=mt(z),k=y(!1),b=En(async()=>{if(zt(h.value)&&h.value.format==="qrCode"){let K;return Q.value==="dark"?K={dark:"#FFFFFFFF",light:"#FF000000"}:K={dark:"#404040FF",light:"#FFFFFFFF"},await Mn.toDataURL(re.value,{margin:.5,type:"image/png",color:K,scale:10})}},void 0,{lazy:!0}),S=W(()=>{if(zt(h.value)&&h.value.format==="image")return re.value}),u=(K,w)=>{const q=p(L.value,K);Array.isArray(q)&&q.splice(w,1)},A=K=>{let w=p(L.value,K);w||(ie(L.value,K,[]),w=p(L.value,K));const q=h.value;if(Array.isArray(w)&&q&&ua(q)&&q.items){const N=ra(q.items);w.push(N)}},ae=K=>{var w;return((w=K.match(/[^.[\]]+|\[\d+\]/g))==null?void 0:w.map(q=>q.startsWith("[")?parseInt(q.slice(1,-1)):q))||[]},p=(K,w)=>{const q=ae(w);let N=K;for(const X of q){if(N===void 0)return;N=N[X]}if(N===void 0||N===""){const X=le(h.value,w);if(X&&"defaultValue"in X)return X.defaultValue}return N},ie=(K,w,q)=>{const N=ae(w),X=N.pop(),F=N.reduce((U,B)=>(U[B]||(U[B]={}),U[B]),K);X!==void 0&&(F[X]=q)},le=(K,w)=>{const q=ae(w);let N=K;for(const X of q)if(N.type==="object"&&N.properties)N=N.properties[X];else if(N.type==="array"&&N.items&&!("anyOf"in N.items))N=N.items;else return N;return N},re=W({get:()=>p(L.value,Z.value),set:K=>{const w=h.value;let q=K;w&&(Kt(w)?w.multiple?q=Array.isArray(K)?K:[K]:q=K&&K.toString():zt(w)?q=K&&K.toString():ia(w)?q=isNaN(parseFloat(K))?w.minimum!==void 0?w.minimum:0:parseFloat(K):Ea(w)?q=K==="true"||K===!0:q=K),ie(L.value,Z.value,q)}});return(K,w)=>{const q=eo,N=$a("v-number-input"),X=$a("VCustomField",!0);return r(),g("div",ss,[e(zt)(e(h))&&e(h).format==="qrCode"?(r(),g(ke,{key:0},[m("label",{for:e(Z),class:"v-label"},d(e(h).title),9,ls),a(q,{src:e(b),class:"mb-3"},null,8,["src"])],64)):O("",!0),e(zt)(e(h))&&e(h).format==="image"?(r(),g(ke,{key:1},[m("label",{for:e(Z),class:"v-label"},d(e(h).title),9,rs),a(q,{src:e(S),class:"mb-3"},null,8,["src"])],64)):e(zt)(e(h))?(r(),V(e(Be),{key:2,modelValue:e(re),"onUpdate:modelValue":w[2]||(w[2]=F=>ze(re)?re.value=F:null),name:e(Z)},{default:t(({field:F,errorMessage:U,errors:B})=>[m("label",{for:e(Z),class:"v-label"},d(e(h).title),9,is),a(lt,Pe({"model-value":F.value,error:B.length>0,"error-messages":U,readonly:e(h).readonly,placeholder:e(h).placeholder,hint:e(h).description,"persistent-hint":""},F,{variant:"outlined",type:e(h).format==="password"?e(k)?"text":"password":"text",density:"compact","append-inner-icon":e(h).format==="password"?e(k)?e(Wo):e(Ho):void 0,"onClick:appendInner":w[1]||(w[1]=G=>k.value=!e(k))}),na({_:2},[e($)?{name:"append-inner",fn:t(()=>[a(te,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:w[0]||(w[0]=H(G=>u(e($).path,e($).index),["stop"]))},{default:t(()=>[a(j,null,{default:t(()=>[_(d(e(Tt)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["model-value","error","error-messages","readonly","placeholder","hint","type","append-inner-icon"])]),_:1},8,["modelValue","name"])):e(ia)(e(h))?(r(),V(e(Be),{key:3,modelValue:e(re),"onUpdate:modelValue":w[4]||(w[4]=F=>ze(re)?re.value=F:null),name:e(Z)},{default:t(({field:F,errorMessage:U,errors:B})=>[m("label",{for:e(Z),class:"v-label"},d(e(h).title),9,us),a(N,Pe({"model-value":F.value,error:B.length>0,"error-messages":U,readonly:e(h).readonly,hint:e(h).description,step:e(h).step||1,"persistent-hint":""},F,{variant:"outlined",type:"number",density:"compact"}),na({_:2},[e($)?{name:"append-inner",fn:t(()=>[a(te,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:w[3]||(w[3]=H(G=>u(e($).path,e($).index),["stop"]))},{default:t(()=>[a(j,null,{default:t(()=>[_(d(e(Tt)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["model-value","error","error-messages","readonly","hint","step"])]),_:1},8,["modelValue","name"])):e(Ea)(e(h))?(r(),V(e(Be),{key:4,modelValue:e(re),"onUpdate:modelValue":w[6]||(w[6]=F=>ze(re)?re.value=F:null),name:e(Z),type:"checkbox",value:!0,"unchecked-value":!1},{default:t(({field:F,errors:U,errorMessage:B})=>[a(Sa,Pe({"model-value":F.checked,class:"w-full"},F,{color:"#df2a4c",type:"checkbox","persistent-hint":"",label:e(h).title,error:U.length>0,"error-messages":B,hint:e(h).description}),na({_:2},[e($)?{name:"append",fn:t(()=>[a(te,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:w[5]||(w[5]=H(G=>u(e($).path,e($).index),["stop"]))},{default:t(()=>[a(j,null,{default:t(()=>[_(d(e(Tt)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["model-value","label","error","error-messages","hint"])]),_:1},8,["modelValue","name"])):e(Kt)(e(h))?(r(),V(e(Be),{key:5,modelValue:e(re),"onUpdate:modelValue":w[7]||(w[7]=F=>ze(re)?re.value=F:null),name:e(Z)},{default:t(({field:F,errorMessage:U,errors:B})=>[m("label",{for:e(Z),class:"v-label"},d(e(h).title),9,cs),a(qt,Pe({items:e(h).enum,error:B.length>0,"error-messages":U,readonly:e(h).readonly,hint:e(h).description,"model-value":F.value,"persistent-hint":""},F,{variant:"outlined",density:"compact",chips:"",multiple:e(h).multiple,clearable:!e(h).required&&!e(h).readonly,onKeydown:H(()=>null,["prevent"])}),{chip:t(({item:G})=>[a(Xe,{color:"#df2a4c"},{default:t(()=>[_(d(G.title),1)]),_:2},1024)]),_:2},1040,["items","error","error-messages","readonly","hint","model-value","multiple","clearable"])]),_:1},8,["modelValue","name"])):e(Lt)(e(h))||e(Ja)(e(h))?(r(),V(gt,{key:6,"model-value":e(h).opened?[0]:[],class:"inner-component-2 mt-0 mb-3"},{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px",width:"-webkit-fill-available"},class:"truncate"},na({default:t(()=>[e(h).description?(r(),V(ct,{key:0,text:e(h).description,location:"top"},{activator:t(({props:F})=>[a(j,Pe({size:"20"},F,{class:"mr-3 text-passive"}),{default:t(()=>[_(d(e(Da)),1)]),_:2},1040)]),_:1},8,["text"])):O("",!0),_(" "+d(e(h).title||e(Z))+" ",1)]),_:2},[e($)?{name:"actions",fn:t(({expanded:F})=>[m("div",ds,[a(te,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:w[8]||(w[8]=H(U=>u(e($).path,e($).index),["stop"]))},{default:t(()=>[a(j,null,{default:t(()=>[_(d(e(Tt)),1)]),_:1})]),_:1}),F?(r(),V(j,{key:0,size:"22.5"},{default:t(()=>[_(d(e(lo)),1)]),_:1})):(r(),V(j,{key:1,size:"22.5"},{default:t(()=>[_(d(e(ro)),1)]),_:1}))])]),key:"0"}:void 0]),1024),a(ft,{eager:""},{default:t(()=>{var F;return[(r(!0),g(ke,null,$e(e(h).properties,(U,B)=>(r(),g("div",{key:`${e(Z)}.${B}`},[U.hidden?O("",!0):(r(),V(X,{key:0,modelValue:e(L),"onUpdate:modelValue":w[9]||(w[9]=G=>ze(L)?L.value=G:null),"schema-field":U,"config-key":`${e(Z)}.${B}`,loading:e(M),onOnSubmit:w[10]||(w[10]=G=>C("onSubmit",G))},null,8,["modelValue","schema-field","config-key","loading"]))]))),128)),e(Ja)(e(h))&&((F=e(h).buttons)!=null&&F.length)?(r(),g("div",ms,[(r(!0),g(ke,null,$e(e(h).buttons,(U,B)=>(r(),V(te,{key:`button-${B}`,variant:"flat",loading:e(M),class:"px-0 w-100 my-2",style:{background:"rgba(141, 141, 141, 0.2)"},onClick:H(()=>U?C("onSubmit",{actionId:U.onSubmit,payload:e(_o)(e(L),e(Z))}):null,["prevent"])},{default:t(()=>[_(d(U==null?void 0:U.label),1)]),_:2},1032,["loading","onClick"]))),128))])):O("",!0)]}),_:1})]),_:1})]),_:1},8,["model-value"])):e(ua)(e(h))&&e(h).items?(r(),V(gt,{key:7,"model-value":e(h).opened?[0]:[],class:"inner-component-2 mt-0 mb-3"},{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px",width:"-webkit-fill-available"},class:"truncate"},{default:t(()=>[e(h).description?(r(),V(ct,{key:0,text:e(h).description,location:"top"},{activator:t(({props:F})=>[a(j,Pe({size:"20"},F,{class:"mr-3 text-passive"}),{default:t(()=>[_(d(e(Da)),1)]),_:2},1040)]),_:1},8,["text"])):O("",!0),_(" "+d(e(h).title||e(Z)),1)]),_:1}),a(ft,{eager:""},{default:t(()=>[(r(!0),g(ke,null,$e(p(e(L),e(Z)),(F,U)=>(r(),g("div",{key:`item-${U}-${(F==null?void 0:F.key)||F||U}`,class:"w-full"},[e(h).items.hidden?O("",!0):(r(),V(X,{key:0,modelValue:e(L),"onUpdate:modelValue":w[11]||(w[11]=B=>ze(L)?L.value=B:null),"schema-field":e(h).items,"config-key":`${e(Z)}[${U}]`,removable:{path:e(Z),index:U},loading:e(M),onOnSubmit:w[12]||(w[12]=B=>C("onSubmit",B))},null,8,["modelValue","schema-field","config-key","removable","loading"]))]))),128)),m("div",vs,[a(te,{variant:"text",color:"#df2a4c",icon:"",onClick:w[13]||(w[13]=H(F=>A(e(Z)),["prevent"]))},{default:t(()=>[a(j,{size:"30"},{default:t(()=>[_(d(e(io)),1)]),_:1})]),_:1})])]),_:1})]),_:1})]),_:1},8,["model-value"])):O("",!0)])}}}),fs=Mt(ps,[["__scopeId","data-v-946dc7ed"]]),gs={key:0},ys={key:1},hs={key:2,class:"flex w-full mt-7"},ko=dt({__name:"VJsonSchema",props:{config:{},uiSchema:{},loading:{type:Boolean,default:!1},disableButton:{type:Boolean},saveButton:{type:Boolean,default:!0},saveButtonLabel:{},saveButtonColor:{default:"green"},showButton:{type:Boolean,default:!1}},emits:["onSubmit","onFormSubmit","changeGroup"],setup(o,{emit:l}){const s=l,C=o,{uiSchema:z,config:Q,loading:L,saveButton:h,saveButtonLabel:Z,showButton:$,disableButton:M,saveButtonColor:k}=mt(C),b=y(),S=y(),u=W(()=>Object.keys(Q.value).length?{...Mo(Q.value)}:z.value?Rn(z.value):{}),A=W(()=>z.value?z.value:Ln(Q.value)),ae=W(()=>Un(A.value)),p=W(()=>da(ae.value)),ie=W(()=>Object.keys(A.value.schema).every(N=>ho(A.value.schema[N]))),le=W(()=>Object.keys(A.value.schema).some(N=>bo(A.value.schema[N]))),re=W(()=>{const N=A.value,X=[];for(const[,F]of Object.entries(N.schema))F.group&&!F.hidden&&!X.includes(F.group)&&X.push(F.group);return X.length&&(S.value=X[0]),X});we(S,N=>{N&&s("changeGroup",N)});const K=async()=>{var N;return await((N=b.value)==null?void 0:N.validate())},w=async N=>{const X=await K();X!=null&&X.valid&&s("onSubmit",N)},q=async()=>{const N=await K();N!=null&&N.valid&&s("onFormSubmit",u.value)};return(N,X)=>{const F=fs;return r(),g("div",null,[a(e(sa),{ref_key:"formRef",ref:b,"validation-schema":e(p),onSubmit:q},{default:t(()=>[e(re).length?(r(),g("div",gs,[a(Pt,{modelValue:e(S),"onUpdate:modelValue":X[0]||(X[0]=U=>ze(S)?S.value=U:null),"selected-class":"primary-color",mandatory:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(re),U=>(r(),V(Xe,{key:U,size:"small",value:U},{default:t(()=>[_(d(U),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"]),a(Ta,{modelValue:e(S),"onUpdate:modelValue":X[2]||(X[2]=U=>ze(S)?S.value=U:null),mandatory:"",eager:"",class:"mt-3"},{default:t(()=>[(r(!0),g(ke,null,$e(e(re),(U,B)=>(r(),V(qa,{key:U,value:U,transition:"instant","reverse-transition":"instant"},{default:t(()=>[(r(!0),g(ke,null,$e(e(A).schema,(G,fe)=>(r(),g("div",{key:fe},[!G.hidden&&(G.group===U||!G.group&&B===0)?(r(),V(F,{key:0,modelValue:e(u),"onUpdate:modelValue":X[1]||(X[1]=Ne=>ze(u)?u.value=Ne:null),"schema-field":G,"config-key":fe.toString(),loading:e(L),onOnSubmit:w},null,8,["modelValue","schema-field","config-key","loading"])):O("",!0)]))),128))]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])])):(r(),g("div",ys,[(r(!0),g(ke,null,$e(e(A).schema,(U,B)=>(r(),g("div",{key:B},[U.hidden?O("",!0):(r(),V(F,{key:0,modelValue:e(u),"onUpdate:modelValue":X[3]||(X[3]=G=>ze(u)?u.value=G:null),"schema-field":U,"config-key":B.toString(),loading:e(L),onOnSubmit:w},null,8,["modelValue","schema-field","config-key","loading"]))]))),128))])),!e(ie)&&e(h)&&e(le)||e($)?(r(),g("div",hs,[a(te,{class:"ml-auto",color:e(k),variant:"flat",type:"submit",loading:e(L),disabled:e(M)},{default:t(()=>[_(d(e(Z)||N.$t("components.form.button.save")),1)]),_:1},8,["color","loading","disabled"])])):O("",!0)]),_:1},8,["validation-schema"])])}}}),bs=dt({__name:"VJsonSchemaDialog",props:Oo({pluginConfig:{},uiSchema:{},pluginName:{}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(o){const l=new mo,s=Qo(o,"modelValue"),C=o,z=y(!1),Q=y(),{uiSchema:L,pluginConfig:h,pluginName:Z}=mt(C),{mutateAsync:$,isPending:M}=l.actionButtonQuery(),k=W(()=>z.value||M.value);we(L,S=>{Q.value=S},{deep:!0,immediate:!0});const b=async S=>{z.value=!0;const u={...h.value,...S.payload};await $({pluginName:Z.value,actionId:S.actionId,payload:u},{onSuccess:A=>{A!=null&&A.toast&&yt[A.toast.type](A.toast.message),A!=null&&A.schema&&Object.keys(A.schema).length&&Q.value?Q.value.schema.config=A.schema.config:s.value=!1},onSettled:()=>{z.value=!1}})};return(S,u)=>{const A=ko,ae=Fa;return r(),V(ae,{modelValue:s.value,"onUpdate:modelValue":u[0]||(u[0]=p=>s.value=p),title:S.$t("components.dialog.title.config"),loading:e(k),"hide-confirm-button":""},{content:t(()=>[a(A,{config:{},"ui-schema":e(Q),loading:e(k),"save-button":!1,onOnSubmit:b},null,8,["ui-schema","loading"])]),_:1},8,["modelValue","title","loading"])}}}),_s=async({cameraData:o})=>(await De.post("/cameras",o)).data,ks=async({cameraData:o})=>(await De.post("/cameras/preview",o)).data,wo=async({cameraname:o,signal:l})=>(await De.get(`/cameras/${o}`,{signal:l})).data,ws=async({cameraname:o,signal:l})=>(await De.get(`/cameras/${o}/snapshot`,{signal:l})).data,xs=async({parameter:o,signal:l})=>(await De.get("/cameras",{params:o,signal:l})).data,Cs=async({cameraname:o,cameraData:l})=>(await De.patch(`/cameras/${o}`,l)).data,$s=async({cameraname:o,signal:l})=>(await De.get(`/cameras/${o}/extensions`,{signal:l})).data,Vs=async({cameraname:o,pluginname:l,signal:s})=>(await De.get(`/cameras/${o}/${l}`,{signal:s})).data,Ss=async({cameraname:o,pluginname:l,configData:s})=>(await De.patch(`/cameras/${o}/${l}`,s)).data,Ps=async({cameraname:o,pluginname:l,type:s})=>(await De.put(`/cameras/${o}/${l}/enable`,null,{params:{type:s}})).data,zs=async({cameraname:o,pluginname:l,type:s})=>(await De.put(`/cameras/${o}/${l}/disable`,null,{params:{type:s}})).data,Ms=async({cameraname:o,pluginname:l})=>(await De.post(`/cameras/${o}/${l}`)).data,Es=async({cameraname:o,pluginname:l})=>(await De.delete(`/cameras/${o}/${l}`)).data,Fs=async({cameraname:o,zonename:l,signal:s})=>(await De.get(`/cameras/${o}/zones/${l}`,{signal:s})).data,Is=async({cameraname:o,zoneData:l})=>(await De.post(`/cameras/${o}/zones`,l)).data,Bs=async({cameraname:o,zonename:l,zoneData:s})=>(await De.patch(`/cameras/${o}/zones/${l}`,s)).data,Ts=async({cameraname:o,zonename:l})=>(await De.delete(`/cameras/${o}/zones/${l}`)).data,qs=async({cameraname:o})=>(await De.delete(`/cameras/${o}`)).data,As=async()=>(await De.delete("/cameras")).data;class Wt{constructor(){wa(this,"_queryClient",Qn());wa(this,"queryActivator",y([{name:"getCameraQuery",enabled:!0},{name:"getCamerasQuery",enabled:!0},{name:"getCameraSnapshotQuery",enabled:!0},{name:"getCameraExtensionsQuery",enabled:!0},{name:"getCameraExtensionConfigQuery",enabled:!0},{name:"getZoneQuery",enabled:!0}]))}get queryClient(){return this._queryClient}createCameraQuery(){return at({mutationFn:_s,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),yt.success(It.global.t("components.toast.camera_added"))}})}previewCameraQuery(){return at({mutationFn:ks})}getCameraQuery(l){return Qt({queryKey:["cameras",l],queryFn:({signal:s})=>wo({cameraname:e(l),signal:s}),enabled:()=>this.queryActivator.value.some(s=>s.name==="getCameraQuery"&&s.enabled)})}getCameraExtensionsQuery(l){return Qt({queryKey:["camerasExtensions",l],queryFn:({signal:s})=>$s({cameraname:e(l),signal:s}),enabled:()=>this.queryActivator.value.some(s=>s.name==="getCameraExtensionsQuery"&&s.enabled)})}getCameraSnapshotQuery(l){return Qt({queryKey:["camerasSnapshot",l],queryFn:({signal:s})=>ws({cameraname:e(l),signal:s}),enabled:()=>this.queryActivator.value.some(s=>s.name==="getCameraSnapshotQuery"&&s.enabled),staleTime:6e4,retry:!1})}getCamerasQuery(l){return Qt({queryKey:["camerasList",l],queryFn:({signal:s})=>xs({parameter:e(l),signal:s}),placeholderData:s=>s,enabled:()=>this.queryActivator.value.some(s=>s.name==="getCamerasQuery"&&s.enabled)})}patchCameraQuery(){return at({mutationFn:Cs,onSuccess:async(l,s)=>{if(s.cameraData.name&&s.cameraData.name!==s.cameraname){const z=s.cameraname;await this._queryClient.invalidateQueries({queryKey:[z]}),await this._queryClient.refetchQueries({queryKey:["camerasList"]})}else await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname]}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]}),await this._queryClient.refetchQueries({queryKey:["cameras","extensions",s.cameraname]});yt.success(It.global.t("components.toast.camera_updated"))}})}getCameraExtensionConfigQuery(l,s,C){return Qt({staleTime:0,queryKey:["cameras","extensions",l,s],queryFn:({signal:z})=>Vs({cameraname:e(l),pluginname:e(s),signal:z}),enabled:()=>this.queryActivator.value.some(z=>z.name==="getCameraExtensionConfigQuery"&&z.enabled),refetchInterval(){if(C.value)return 3e3}})}patchCameraExtensionConfigQuery(){return at({mutationFn:Ss,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["cameras","extensions",s.cameraname]}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}enableCameraExtensionQuery(){return at({mutationFn:Ps,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}disableCameraExtensionQuery(){return at({mutationFn:zs,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}addCameraExtensionQuery(){return at({mutationFn:Ms,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}getZoneQuery(l,s){return Qt({queryKey:["cameras",l,"zones",s],queryFn:({signal:C})=>Fs({cameraname:e(l),zonename:e(s),signal:C}),enabled:()=>this.queryActivator.value.some(C=>C.name==="getZoneQuery"&&C.enabled)})}addCameraZoneQuery(){return at({mutationFn:Is,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),yt.success(It.global.t("components.toast.zone_added"))}})}patchCameraZoneQuery(){return at({mutationFn:Bs,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),yt.success(It.global.t("components.toast.zone_updated"))}})}removeCameraZoneQuery(){return at({mutationFn:Ts,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),yt.success(It.global.t("components.toast.zone_removed"))}})}removeCameraExtensionQuery(){return at({mutationFn:Es,onSuccess:async(l,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}removeCameraQuery(){return at({mutationFn:qs,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),yt.success(It.global.t("components.toast.camera_removed"))}})}removeCamerasQuery(){return at({mutationFn:As,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),yt.success(It.global.t("components.toast.cameras_removed"))}})}toggleQueryActivator(l,s){const C=this.queryActivator.value.find(z=>z.name===l);C&&(C.enabled=s)}}const Ns=_e.union([_e.literal("bubble://"),_e.literal("dvrip://"),_e.literal("echo:"),_e.literal("exec:"),_e.literal("expr:"),_e.literal("ffmpeg:"),_e.literal("gopro://"),_e.literal("hass:"),_e.literal("homekit://"),_e.literal("http://"),_e.literal("https://"),_e.literal("isapi://"),_e.literal("ivideon:"),_e.literal("kasa://"),_e.literal("nest:"),_e.literal("onvif://"),_e.literal("roborock://"),_e.literal("rtmp://"),_e.literal("rtsp://"),_e.literal("rtspx://"),_e.literal("tapo://"),_e.literal("tcp://"),_e.literal("webrtc:"),_e.literal("webtorrent:")]),Os=_e.object({protocol:Ns,url:_e.string().min(1,"Camera Source is required").array().nonempty("Camera Source is required")}).strict(),Qs=_e.object({name:_e.string().min(1,"Camera Source Name is required"),roles:Eo.array().nonempty("Minimum one role is required"),urls:Os.array()}).strict(),Ds=Qs.array(),Ls=_e.object({...Fo.shape,sources:Ds}).strict(),fu=da(Ls),Xa=da(Io),xo=da(Bo),Co=o=>(Do("data-v-0cdb0e1b"),o=o(),Lo(),o),Rs={key:0},Us={key:1,class:"flex flex-col justify-center items-center"},js={class:"relative w-full"},Zs={class:"w-full flex flex-col items-center justify-center"},Ks={class:"relative w-full flex flex-col items-center justify-center"},Ws={class:"absolute top-0 left-0 right-0 bottom-0"},Hs={class:"playground-container flex w-full h-full"},Ys={class:"sandbox w-full h-full"},Js={class:"handles"},Xs=["data-id","data-coord","data-region","onDblclick"],Gs=Co(()=>m("div",{class:"delete-point"},null,-1)),el=[Gs],tl={class:"clipboard"},al={width:"100%",height:"100%",class:"polygon-container"},ol=["d","onClick","onDblclick","onMousedown","onTouchstart"],nl=Co(()=>m("div",{class:"shadowboard on"},null,-1)),sl={class:"flex align-center flex-column pa-6 zone-buttons"},ll={class:"w-100"},rl=["for"],il={key:1,class:"text-grey text-caption align-self-center"},ul={key:1,class:"w-100"},cl={class:"v-label"},dl={key:0},ml={key:1},vl={key:0},pl={key:1},fl={key:0},gl={key:1},yl=dt({__name:"VZoneEditor",props:{cameraName:{},zones:{},isNewZone:{type:Boolean}},emits:["show-modal"],setup(o,{emit:l}){const s=new Wt,C=l,z=o,{cameraName:Q,zones:L,isNewZone:h}=mt(z),Z=y(!0),$=y(!1),M=y([]),k=y([]),b=y([]),S=y(null),u=y(),A=y(!1),ae=y(0),p=y(-1),ie=y(null),le=y(-1),re=y(Object.values(ns).sort((v,f)=>v==="motion"?-1:f==="motion"?1:0));let K=!1,w={x:0,y:0};const q=Zt(S);Ba(ie,v=>{const f=v.target,oe=f.closest(".polygon"),ce=f.closest(".edit-button"),ge=f.closest(".remove-button"),J=f.closest(".handle"),Ee=f.closest(".zone-buttons"),se=f.closest(".coco-labels");!oe&&!ce&&!ge&&!J&&!$.value&&!Ee&&!se&&(p.value=-1)});const{mutateAsync:N,isPending:X}=s.addCameraZoneQuery(),{mutateAsync:F,isPending:U}=s.patchCameraZoneQuery(),B=W(()=>A.value||X.value||U.value),G=W(()=>{var v,f;return((f=(v=u.value)==null?void 0:v.regions[p.value])==null?void 0:f.classes.length)===re.value.length}),fe=W(()=>{var v,f;return(((f=(v=u.value)==null?void 0:v.regions[p.value])==null?void 0:f.classes.length)||0)>0}),Ne=W(()=>{var f;const v=[];return $.value&&v.push("customizing"),(f=u.value)!=null&&f.regions.length||v.push("start"),v.join(" ")});we(le,()=>{le.value=-1}),we(L,v=>{v&&(u.value=JSON.parse(JSON.stringify(v)))},{deep:!0,immediate:!0}),we(u,v=>{v&&(M.value=v.regions.map((f,oe)=>f.coords.map((ce,ge)=>({_id:ce._id,regionIndex:oe,coordIndex:ge,coord:ce.points}))).flat()||[])},{deep:!0,immediate:!0}),we(Z,v=>{v||setTimeout(()=>C("show-modal",!1),300)}),we([q.width,q.height],()=>{ne()});const Le=()=>{!u.value||!u.value.regions[p.value]||(G.value?u.value.regions[p.value].classes=[]:u.value.regions[p.value].classes=[...re.value])},Ke=v=>{if("touches"in v){const f=v.touches[0];return{x:f.clientX,y:f.clientY}}return{x:v.clientX,y:v.clientY}},Te=(v,f)=>{if(v.stopPropagation(),!S.value)return;Ze($.value),K=!0,p.value=f;const oe=S.value.getBoundingClientRect(),{x:ce,y:ge}=Ke(v);w.x=(ce-oe.left)/oe.width*100,w.y=(ge-oe.top)/oe.height*100},Re=v=>{if(!K||!S.value||p.value===-1||!u.value)return;const f=S.value.getBoundingClientRect(),{x:oe,y:ce}=Ke(v),ge=(oe-f.left)/f.width*100,J=(ce-f.top)/f.height*100,Ee=ge-w.x,se=J-w.y,he=u.value.regions[p.value].coords;let We=!1;for(let Fe=0;Fe<he.length;Fe++){let He=he[Fe].points[0]+Ee,ht=he[Fe].points[1]+se;if(He<0||He>100||ht<0||ht>100){We=!0;break}}if(!We)for(let Fe=0;Fe<he.length;Fe++){he[Fe].points[0]+=Ee,he[Fe].points[1]+=se,he[Fe].points[0]=Math.max(0,Math.min(100,he[Fe].points[0])),he[Fe].points[1]=Math.max(0,Math.min(100,he[Fe].points[1]));const He=he[Fe].points[0]/100*f.width,ht=he[Fe].points[1]/100*f.height,bt=k.value.find(et=>et.id===he[Fe]._id);bt==null||bt.setPosition(He,ht)}w.x=ge,w.y=J},Ve=()=>{setTimeout(()=>{K=!1},100)},xe=()=>{!u.value||p.value===-1||(u.value.regions[p.value].isPrivacyMask=!u.value.regions[p.value].isPrivacyMask)},qe=()=>{!u.value||!u.value.regions[p.value]||(u.value.regions[p.value].filter=u.value.regions[p.value].filter==="include"?"exclude":"include")},Oe=()=>{!u.value||!u.value.regions[p.value]||(u.value.regions[p.value].type=u.value.regions[p.value].type==="intersect"?"contain":"intersect")},ot=v=>{if(!$.value||!u.value||K)return;const f=ae.value,oe=Math.min(Math.max(Math.round((v.offsetX-10)/q.width.value*100),0),100),ce=Math.min(Math.max(Math.round((v.offsetY-10)/q.height.value*100),0),100);u.value.regions[f]||u.value.regions.push({_id:Math.random().toString(36).substring(7),coords:[],filter:"include",type:"contain",classes:[],isPrivacyMask:!1});const ge={_id:Math.random().toString(36).substring(7),points:[oe,ce]};u.value.regions[f].coords.push(ge),xt(()=>{Ye({_id:ge._id,regionIndex:f,coordIndex:u.value.regions[f].coords.length-1,coord:[oe,ce]})})},Ye=v=>{var oe;if(v.regionIndex===void 0||v.coordIndex===void 0)return;const f=(oe=b.value)==null?void 0:oe.filter(ce=>ce.dataset.coord===v.coordIndex.toString()&&ce.dataset.region===v.regionIndex.toString());f.length!==0&&Se(f[0],v.coord)},nt=v=>{if(!u.value)return;let f=Math.round(v.coord[0]/q.width.value*100),oe=Math.round(v.coord[1]/q.height.value*100);const ce={_id:v._id,points:[f,oe]};u.value.regions[v.regionIndex].coords[v.coordIndex]=ce},it=()=>{u.value&&($.value=!0,ae.value=u.value.regions.length||0)},Ze=v=>{var oe;if(!u.value)return;$.value=v||!1;const f=ae.value;!u.value.regions.length||!u.value.regions[f]||!u.value.regions[f].coords||(u.value.regions[f].coords.length<3?u.value.regions=u.value.regions.filter((ce,ge)=>ge!==f):(oe=b.value)==null||oe.forEach(ce=>Ce(ce)))},T=()=>{$.value=!0,ae.value=p.value},$t=()=>{p.value===-1||!u.value||(u.value.regions=u.value.regions.filter((v,f)=>f!==p.value),p.value=-1)},st=()=>{var oe,ce;if(!((oe=u.value)!=null&&oe.regions.length))return;const v=ge=>{var J,Ee,se,he,We;(Ee=(J=u.value)==null?void 0:J.regions[ge])!=null&&Ee.coords.length&&((he=(se=u.value.regions[ge])==null?void 0:se.coords)==null||he.pop(),(We=u.value.regions[ge])!=null&&We.coords.length||u.value.regions.pop())};let f=u.value.regions.length;(ce=u.value.regions[f-1].coords)!=null&&ce.length&&f--,!(f<0)&&v(f)},Me=()=>{K=!1,$.value=!1,M.value=[],u.value&&(u.value.regions=[])},Y=v=>{if(!v)return"";const f=v.map(ce=>{const ge=Math.round(ce[0]/100*q.width.value),J=Math.round(ce[1]/100*q.height.value);return`${ge+10},${J+10}`});if(f.length===0)return"";let oe=`M ${f[0]}`;for(let ce=1;ce<f.length;ce++)oe+=` L ${f[ce]}`;return oe+=" Z",oe},ee=v=>{$.value||(p.value=v)},ne=()=>{pe(),b.value.forEach(v=>{var oe;if(!v.dataset.region||!v.dataset.coord||!u.value)return;const f=(oe=u.value.regions[parseInt(v.dataset.region)])==null?void 0:oe.coords[parseInt(v.dataset.coord)];Se(v,f.points),Ce(v)})},pe=()=>{k.value.forEach(v=>v.destroy()),k.value=[]},me=v=>{var f;!u.value||((f=u.value.regions[v.regionIndex])==null?void 0:f.coords.length)<4||u.value.regions[v.regionIndex].coords.splice(v.coordIndex,1)},Se=(v,f)=>{Object.assign(v.style,ue(f))},ue=v=>({left:Math.round(v[0]/100*q.width.value)+"px",top:Math.round(v[1]/100*q.height.value)+"px"}),Ce=v=>{v.classList.add("draggable");let f=new vo(v,{containment:!0,grid:[0,0]}).on("pointerDown",()=>{var oe;(oe=document.querySelectorAll('[data-point="'+v.dataset.region+"-"+v.dataset.coord+'"]')[0])==null||oe.classList.add("changing")}).on("dragMove",()=>{if(!v.dataset.region||!v.dataset.coord||!v.dataset.id)return;const oe=f.position.x,ce=f.position.y;nt({_id:v.dataset.id,coord:[oe,ce],coordIndex:parseInt(v.dataset.coord),regionIndex:parseInt(v.dataset.region)})}).on("pointerUp",()=>{document.querySelectorAll(".point").forEach(oe=>oe.classList.remove("changing"))});f.id=v.dataset.id,k.value.push(f)},Ge=async()=>{if(u.value)try{A.value=!0;const v=await xo.parse(u.value);v.value?(h.value?await N({cameraname:Q.value,zoneData:u.value}):await F({cameraname:Q.value,zonename:u.value.name,zoneData:u.value}),Z.value=!1):yt.error(v.errors[0].errors[0])}catch(v){console.error(v)}finally{A.value=!1}};return ca(async()=>{setTimeout(()=>{ne()})}),(v,f)=>{const oe=Oa,ce=Fa;return r(),V(ce,{modelValue:e(Z),"onUpdate:modelValue":f[12]||(f[12]=ge=>ze(Z)?Z.value=ge:null),title:`${v.$t("components.zone_editor.zone")}: ${e(u)?e(u).name:v.$t("components.dialog.title.unknown")}`,loading:e(B),onConfirm:f[13]||(f[13]=ge=>Ge())},{content:t(()=>{var ge;return[e(u)?(r(),g("div",Us,[m("div",js,[m("div",{ref_key:"outsideEl",ref:ie},null,512),m("div",Zs,[m("div",Ks,[m("div",Ws,[m("div",Hs,[m("section",{class:Dt(["playground w-full h-full",e(Ne)]),onClick:ot},[m("div",Ys,[m("div",Js,[(r(!0),g(ke,null,$e(e(M),J=>(r(),g("div",{key:J._id,ref_for:!0,ref_key:"draggables",ref:b,class:"handle","data-id":J._id,"data-coord":J.coordIndex,"data-region":J.regionIndex,onDblclick:H(Ee=>me(J),["prevent"])},el,40,Xs))),128)),m("div",tl,[(r(),g("svg",al,[(r(!0),g(ke,null,$e((ge=e(u))==null?void 0:ge.regions,(J,Ee)=>(r(),g("path",{key:J._id,d:Y(J.coords.map(se=>se.points)),class:Dt({polygon:J.filter=="include"&&!J.isPrivacyMask,"polygon-exclude":J.filter=="exclude"&&!J.isPrivacyMask,"polygon-privacy":J.isPrivacyMask,dash:J.type==="intersect"&&!J.isPrivacyMask,selected:e(p)===Ee}),onClick:se=>ee(Ee),onDblclick:()=>J.isPrivacyMask=!J.isPrivacyMask,onMousedown:se=>Te(se,Ee),onMousemove:Re,onMouseup:Ve,onTouchstart:se=>Te(se,Ee),onTouchmove:Re,onTouchend:Ve},null,42,ol))),128))]))])]),nl])],2)])]),m("div",{ref_key:"player",ref:S,class:"w-full h-full flex flex-col items-center justify-center",style:{width:"calc(100% - 20px)","margin-top":"10px","margin-bottom":"10px"}},[a(oe,{mode:"webrtc",target:"stream","current-camera":e(Q),"border-radius":0,border:"","source-role":"low-resolution"},null,8,["current-camera"])],512)]),m("div",sl,[m("div",ll,[e(u)&&e(u).regions&&e(p)>=0&&e(u).regions[e(p)]?(r(),V(e(Be),{key:0,modelValue:e(u).regions[e(p)].classes,"onUpdate:modelValue":f[0]||(f[0]=J=>e(u).regions[e(p)].classes=J),name:`regions[${e(p)}].classes`},{default:t(({field:J,errorMessage:Ee,errors:se})=>[m("label",{for:`regions[${e(p)}].classes`,class:"v-label"},d(v.$t("components.form.label.classes")),9,rl),a(qt,Pe({loading:e(B),items:e(re),class:"coco-labels w-100",variant:"outlined",name:`regions[${e(p)}].classes`,type:"text",density:"compact",chips:"",multiple:"",clearable:""},J,{error:se.length>0,"error-messages":Ee,"model-value":J.value,"menu-props":{class:"coco-labels"},onKeydown:H(()=>null,["prevent"])}),{"prepend-item":t(()=>[a(Pa,{title:v.$t("components.form.label.select_all"),onClick:Le},{prepend:t(()=>[a(za,{indeterminate:e(fe)&&!e(G),"model-value":e(G)},null,8,["indeterminate","model-value"])]),_:1},8,["title"]),a(je,{class:"mt-2"})]),chip:t(({item:he,index:We})=>[We<5?(r(),V(Xe,{key:0,color:"#df2a4c"},{default:t(()=>[_(d(he.title),1)]),_:2},1024)):O("",!0),We===5?(r(),g("span",il," (+"+d(e(u).regions[e(p)].classes.length-2)+") ",1)):O("",!0)]),_:2},1040,["loading","items","name","error","error-messages","model-value"])]),_:1},8,["modelValue","name"])):(r(),g("div",ul,[m("label",cl,d(v.$t("components.form.label.classes")),1),a(qt,{disabled:"",class:"w-100",variant:"outlined",type:"text",density:"compact"})]))]),a(Za,{modelValue:e(le),"onUpdate:modelValue":f[7]||(f[7]=J=>ze(le)?le.value=J:null),variant:"outlined",divided:"",rounded:"xl",class:"mt-5"},{default:t(()=>[e($)?(r(),V(te,{key:1,loading:e(B),onClick:f[2]||(f[2]=H(J=>Ze(!1),["prevent"]))},{default:t(()=>[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(v.$t("components.form.tooltip.finish")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(Jo)),1)]),_:1})]),_:1},8,["loading"])):(r(),V(te,{key:0,loading:e(B),onClick:f[1]||(f[1]=H(J=>it(),["prevent"]))},{default:t(()=>[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(v.$t("components.form.tooltip.new")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(Yo)),1)]),_:1})]),_:1},8,["loading"])),a(te,{loading:e(B),disabled:!e(u).regions.length||e(p)<0||e($),onClick:f[3]||(f[3]=H(J=>T(),["prevent"]))},{default:t(()=>[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(v.$t("components.form.tooltip.edit")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(uo)),1)]),_:1})]),_:1},8,["loading","disabled"]),a(te,{loading:e(B),disabled:!e(u).regions.length||e(p)<0,onClick:f[4]||(f[4]=H(J=>$t(),["prevent"]))},{default:t(()=>[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(v.$t("components.form.tooltip.delete")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(Xo)),1)]),_:1})]),_:1},8,["loading","disabled"]),a(te,{loading:e(B),disabled:!e(u).regions.length,onClick:f[5]||(f[5]=H(J=>st(),["prevent"]))},{default:t(()=>[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(v.$t("components.form.tooltip.undo")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(Go)),1)]),_:1})]),_:1},8,["loading","disabled"]),a(te,{loading:e(B),disabled:!e(u).regions.length,onClick:f[6]||(f[6]=H(J=>Me(),["prevent"]))},{default:t(()=>[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(v.$t("components.form.tooltip.clear")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(en)),1)]),_:1})]),_:1},8,["loading","disabled"])]),_:1},8,["modelValue"]),a(Za,{modelValue:e(le),"onUpdate:modelValue":f[11]||(f[11]=J=>ze(le)?le.value=J:null),variant:"outlined",divided:"",rounded:"xl",class:"mt-5"},{default:t(()=>[a(te,{disabled:!(e(u)&&e(u).regions&&e(p)>=0&&e(u).regions[e(p)]),loading:e(B),onClick:f[8]||(f[8]=H(J=>xe(),["prevent"]))},{default:t(()=>[e(u)&&e(u).regions&&e(p)>=0&&e(u).regions[e(p)]?(r(),g("div",dl,[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(e(u).regions[e(p)].isPrivacyMask?v.$t("components.form.tooltip.privacy_mask"):v.$t("components.form.tooltip.public_mask")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(u).regions[e(p)].isPrivacyMask?e(tn):e(Va)),1)]),_:1})])):(r(),g("div",ml,[a(j,{size:"20"},{default:t(()=>[_(d(e(Va)),1)]),_:1})]))]),_:1},8,["disabled","loading"]),a(te,{disabled:!(e(u)&&e(u).regions&&e(p)>=0&&e(u).regions[e(p)]&&!e(u).regions[e(p)].isPrivacyMask),loading:e(B),onClick:f[9]||(f[9]=H(J=>qe(),["prevent"]))},{default:t(()=>[e(u)&&e(u).regions&&e(p)>=0&&e(u).regions[e(p)]&&!e(u).regions[e(p)].isPrivacyMask?(r(),g("div",vl,[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(e(u).regions[e(p)].filter==="include"?v.$t("components.form.tooltip.include"):v.$t("components.form.tooltip.exclude")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(u).regions[e(p)].filter==="include"?e(La):e(an)),1)]),_:1})])):(r(),g("div",pl,[a(j,{size:"20"},{default:t(()=>[_(d(e(La)),1)]),_:1})]))]),_:1},8,["disabled","loading"]),a(te,{disabled:!(e(u)&&e(u).regions&&e(p)>=0&&e(u).regions[e(p)]&&!e(u).regions[e(p)].isPrivacyMask),loading:e(B),onClick:f[10]||(f[10]=H(J=>Oe(),["prevent"]))},{default:t(()=>[e(u)&&e(u).regions&&e(p)>=0&&e(u).regions[e(p)]&&!e(u).regions[e(p)].isPrivacyMask?(r(),g("div",fl,[a(ct,{activator:"parent",location:"top"},{default:t(()=>[_(d(e(u).regions[e(p)].type==="intersect"?v.$t("components.form.tooltip.intersect"):v.$t("components.form.tooltip.contain")),1)]),_:1}),a(j,{size:"20"},{default:t(()=>[_(d(e(u).regions[e(p)].type==="intersect"?e(on):e(Ra)),1)]),_:1})])):(r(),g("div",gl,[a(j,{size:"20"},{default:t(()=>[_(d(e(Ra)),1)]),_:1})]))]),_:1},8,["disabled","loading"])]),_:1},8,["modelValue"])])])])])):(r(),g("div",Rs,[a(Ct,{indeterminate:"",color:"#df2a4c"})]))]}),_:1},8,["modelValue","title","loading"])}}}),hl=Mt(yl,[["__scopeId","data-v-0cdb0e1b"]]),bl={class:"flex flex-col w-full",style:{height:"calc(100% - 45px - env(safe-area-inset-bottom, 0px))"}},_l={class:"flex w-full p-2 items-center"},kl={key:0},wl={class:"options-segments flex items-center justify-between"},xl={class:"flex flex-col items-center justify-center"},Cl={class:"options-segments-text"},$l={key:0,class:"options-container flex justify-center items-center"},Vl={class:"mt-auto"},Sl=dt({__name:"VOptionsSidebar",props:{state:{type:Boolean,default:!1},title:{},segments:{default:()=>["default"]},loading:{type:Boolean,default:!1},width:{default:400}},emits:["close","selected"],setup(o,{emit:l}){Ro(A=>({bd3ce394:e(b)}));const s=o,C=l,{segments:z,state:Q,title:L,loading:h,width:Z}=mt(s),$=y(null),M=y(z.value[0]),k=y(!1),b=y(`${Z.value}px`),{smallMobileActive:S}=to();we(Q,()=>{k.value=Q.value}),we(k,()=>{k.value!==Q.value&&setTimeout(()=>{C("close")},300),u(S.value&&k.value)}),we(S,()=>{u(S.value&&k.value)});const u=A=>{};return Ba($,A=>{const ae=A.target,p=ae.closest(".v-overlay-container"),ie=ae.closest(".Toastify");!p&&!ie&&(k.value=!1)}),ca(()=>{C("selected",M.value)}),(A,ae)=>(r(),V(oo,{name:"options-slide",mode:"out-in"},{default:t(()=>[e(k)?(r(),g("div",{key:0,ref_key:"optionsSidebar",ref:$,class:"options-sidebar"},[m("div",bl,[m("div",_l,[e(L)?(r(),g("b",kl,d(e(L)),1)):O("",!0),a(te,{class:"ml-auto",size:"28",rounded:"",density:"compact",variant:"text",onClick:ae[0]||(ae[0]=H(p=>k.value=!1,["prevent"]))},{default:t(()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(Tt)),1)]),_:1})]),_:1})]),m("div",wl,[a(qn,{modelValue:e(M),"onUpdate:modelValue":[ae[1]||(ae[1]=p=>ze(M)?M.value=p:null),ae[2]||(ae[2]=p=>C("selected",p))],height:"100%",grow:"","slider-color":"#df2a4c"},{default:t(()=>[(r(!0),g(ke,null,$e(e(z),(p,ie)=>(r(),V(An,{key:ie,value:p,disabled:e(h),"min-width":"auto"},{default:t(()=>[m("div",xl,[Ca(A.$slots,`segmentIcon.${p}`,{},()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(Ia)),1)]),_:1})],!0),m("span",Cl,d(A.$t(`components.options_sidebar.segment_tab_${p.toLowerCase()}`)),1)])]),_:2},1032,["value","disabled"]))),128))]),_:3},8,["modelValue"])]),e(h)?(r(),g("div",$l,[a(Ct,{color:"#df2a4c",indeterminate:""})])):(r(),V(Ta,{key:1,modelValue:e(M),"onUpdate:modelValue":ae[3]||(ae[3]=p=>ze(M)?M.value=p:null),class:"options-container",continuous:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(z),(p,ie)=>(r(),V(qa,{key:ie,value:p,class:"h-full pb-safe overflow-y-scroll",eager:"",continuous:""},{default:t(()=>[Ca(A.$slots,`body.${p}`,{},void 0,!0)]),_:2},1032,["value"]))),128))]),_:3},8,["modelValue"])),m("div",Vl,[Ca(A.$slots,"footer",{},void 0,!0)])])],512)):O("",!0)]),_:3}))}}),Pl=Mt(Sl,[["__scopeId","data-v-03a5e73e"]]),zl={class:"text-sm"},Ml={class:"text-right"},El={class:"text-right"},Fl={key:0},Il={key:0},Bl={class:"text-right"},Tl={key:1},ql={class:"text-right"},Al={key:2},Nl={class:"text-right"},Ol={class:"flex justify-start"},Ql={class:"v-label mb-0 ml-2",for:"disabled"},Dl={class:"relative mt-2"},Ll={for:"name",class:"v-label"},Rl={class:"relative"},Ul={for:"info.manufacturer",class:"v-label"},jl={class:"relative"},Zl={for:"info.model",class:"v-label"},Kl={class:"relative"},Wl={for:"info.hardware",class:"v-label"},Hl={class:"relative"},Yl={for:"info.serialNumber",class:"v-label"},Jl={class:"relative"},Xl={for:"info.firmwareVersion",class:"v-label"},Gl={class:"relative"},er={for:"info.supportUrl",class:"v-label"},tr={for:"interface.streamingMode",class:"v-label"},ar={class:"flex justify-start"},or={class:"v-label mb-0 ml-2",for:"recording.enabled"},nr={class:"text-sm"},sr={class:"w-full flex flex-col items-center justify-center mt-5"},lr={class:"relative w-full"},rr={for:"activitySettings.motion.timeout",class:"v-label"},ir={class:"text-sm"},ur={class:"w-full flex flex-col items-center justify-center mt-5"},cr={class:"relative w-full"},dr={for:"activitySettings.motion.confidence",class:"v-label"},mr={class:"w-full flex flex-col items-center justify-center"},vr={key:0,class:"text-sm text-passive mb-3"},pr={class:"relative"},fr={for:"frameWorkerSettings.decoder",class:"v-label"},gr={class:"relative"},yr={for:"frameWorkerSettings.resolution",class:"v-label"},hr={class:"relative"},br={for:"frameWorkerSettings.fps",class:"v-label"},_r={class:"flex flex-row items-center justify-center ml-auto"},kr={class:"relative mt-2"},wr=["for"],xr={class:"relative mt-2"},Cr=["for"],$r={class:"relative mt-2 flex flex-col w-full"},Vr=["for"],Sr={class:"w-full flex items-center justify-center my-3"},Pr={class:"plugints-title p-2"},zr={class:"v-label"},Mr={key:0,class:"plugints-title p-2"},Er={class:"v-label"},Fr={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Ir={class:"text-sm text-passive"},Br={key:1,class:"plugints-title p-2"},Tr={class:"v-label"},qr={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Ar={class:"text-sm text-passive"},Nr={key:2,class:"plugints-title p-2"},Or={class:"v-label"},Qr={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Dr={class:"text-sm text-passive"},Lr={key:3,class:"plugints-title p-2"},Rr={class:"v-label"},Ur={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},jr={class:"text-sm text-passive"},Zr={key:4,class:"plugints-title p-2"},Kr={class:"v-label"},Wr={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Hr={class:"text-sm text-passive"},Yr={key:5,class:"plugints-title p-2"},Jr={class:"v-label"},Xr={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Gr={class:"text-sm text-passive"},ei={class:"p-2"},ti={key:0,class:"mb-4"},ai={key:0},oi={class:"v-label"},ni={class:"v-label"},si={key:1},li={class:"v-label"},ri={key:0,class:"w-full flex items-center justify-center my-5"},ii={key:1,class:"w-full flex items-center justify-center my-5"},ui={class:"text-sm text-passive"},ci={key:0,class:"p-2"},di={class:"v-label"},mi=dt({__name:"VCameraOptions",props:{cameraName:{},show:{type:Boolean,default:!1}},emits:["close"],setup(o,{emit:l}){const s=new Wt,C=new mo,z=Dn(),Q=po(),{api:L}=ao(),h=o,Z=l,{cameraName:$,show:M}=mt(h),k=y(),b=y(),S=y(),u=y(),A=y(),ae=y(["hub","motionDetection","objectDetection","audioDetection","prebuffer","ptz","extensions"]),p=y(!1),ie=y(!1),le=y(),re=y(),K=y({page:1,pageSize:-1}),w=y(!1),q=y("hub"),N=y(),X=y(),F=y(),U=y(),B=y(),G=y(),fe=y(""),Ne=y(),Le=y(!0),Ke=y(!1),Te=y(!1),Re=y(["high-resolution","mid-resolution","low-resolution","snapshot"]),Ve=y(["hls","mjpeg","mp4","mse","webrtc","webrtc/tcp"]),xe=y([640,480,320]),qe=y(["pillow","wasm"]),Oe=y(!0),ot=y(),Ye=y(),nt=y(),it=y(!1),Ze=y({name:"",regions:[]});s.toggleQueryActivator("getCameraExtensionConfigQuery",!1);const{data:T,isLoading:$t,suspense:st}=s.getCameraQuery($),{data:Me,isLoading:Y,suspense:ee}=s.getCameraExtensionsQuery($),{data:ne,isLoading:pe}=s.getCameraExtensionConfigQuery($.value,fe,Oe),{mutate:me,isPending:Se}=s.removeCameraQuery(),{mutate:ue,isPending:Ce}=s.patchCameraQuery(),{mutate:Ge,isPending:v}=s.patchCameraExtensionConfigQuery(),{mutateAsync:f,isPending:oe}=s.addCameraExtensionQuery(),{mutateAsync:ce,isPending:ge}=s.removeCameraExtensionQuery(),{mutateAsync:J,isPending:Ee}=s.enableCameraExtensionQuery(),{mutateAsync:se,isPending:he}=s.disableCameraExtensionQuery(),{mutateAsync:We,isPending:Fe}=s.removeCameraZoneQuery(),{data:He,isLoading:ht,suspense:bt}=C.getPluginsQuery(K),{data:et,isLoading:_t}=C.getPluginsExtensionsQuery(K),{mutateAsync:Ue,isPending:ma}=C.actionButtonQuery(),be=W(()=>$t.value||Se.value),Qe=W(()=>Y.value||_t.value||oe.value||ge.value||Ee.value||he.value||Fe.value),At=W(()=>Fe.value),Je=W(()=>At.value||Qe.value||p.value||ma.value||v.value||Ce.value),Rt=W(()=>{var c;const i=((c=Me.value)==null?void 0:c.filter(D=>D.type.includes("hub")))||[];return i.length&&He.value&&He.value.result.some(D=>D.pluginName===i[0].pluginName&&!D.disabled)?(N.value=i[0].pluginName,fe.value=i[0].pluginName):N.value=void 0,kt(i)}),Ht=W(()=>{var c,D,ye;const i=((c=Me.value)==null?void 0:c.filter(de=>de.type.includes("motionDetection")))||[];return i.length&&Ie((D=T==null?void 0:T.value)==null?void 0:D.extensions.motionDetection)?X.value=(ye=T==null?void 0:T.value)==null?void 0:ye.extensions.motionDetection:X.value=void 0,kt(i)}),Yt=W(()=>{var c,D,ye;const i=((c=Me.value)==null?void 0:c.filter(de=>de.type.includes("audioDetection")))||[];return i.length&&Ie((D=T==null?void 0:T.value)==null?void 0:D.extensions.audioDetection)?F.value=(ye=T==null?void 0:T.value)==null?void 0:ye.extensions.audioDetection:F.value=void 0,kt(i)}),Ut=W(()=>{var c,D,ye;const i=((c=Me.value)==null?void 0:c.filter(de=>de.type.includes("objectDetection")))||[];return i.length&&Ie((D=T==null?void 0:T.value)==null?void 0:D.extensions.objectDetection)?U.value=(ye=T==null?void 0:T.value)==null?void 0:ye.extensions.objectDetection:U.value=void 0,kt(i)}),jt=W(()=>{var c,D,ye;const i=((c=Me.value)==null?void 0:c.filter(de=>de.type.includes("ptz")))||[];return i.length&&Ie((D=T==null?void 0:T.value)==null?void 0:D.extensions.ptz)?B.value=(ye=T==null?void 0:T.value)==null?void 0:ye.extensions.ptz:B.value=void 0,kt(i)}),Jt=W(()=>{var c,D,ye;const i=((c=Me.value)==null?void 0:c.filter(de=>de.type.includes("prebuffer")))||[];return i.length&&Ie((D=T==null?void 0:T.value)==null?void 0:D.extensions.prebuffer)?G.value=(ye=T==null?void 0:T.value)==null?void 0:ye.extensions.prebuffer:G.value=void 0,kt(i)});we(N,(i,c)=>{i&&i!==c&&Vt()}),we(q,(i,c)=>{i===void 0&&(q.value=c)}),we(M,i=>{if(w.value){w.value=!1,Z("close");return}xt(()=>w.value=i)}),we(T,i=>{i&&(b.value=Uo(i))},{deep:!0,immediate:!0}),we(X,(i,c)=>{i!==c&&(!i&&c?tt(c,!1,"motionDetection"):i&&tt(i,!0,"motionDetection"))}),we(U,(i,c)=>{i!==c&&(!i&&c?tt(c,!1,"objectDetection"):i&&tt(i,!0,"objectDetection"))}),we(B,(i,c)=>{i!==c&&(!i&&c?tt(c,!1,"ptz"):i&&tt(i,!0,"ptz"))}),we(F,(i,c)=>{i!==c&&(!i&&c?tt(c,!1,"audioDetection"):i&&tt(i,!0,"audioDetection"))}),we(G,(i,c)=>{i!==c&&(!i&&c?tt(c,!1,"prebuffer"):i&&tt(i,!0,"prebuffer"))}),we(ie,i=>{i||(le.value=void 0,re.value=void 0)});const kt=i=>i.sort((c,D)=>!Ie(c.pluginName)&&Ie(D.pluginName)?1:Ie(c.pluginName)&&!Ie(D.pluginName)?-1:c.displayName.localeCompare(D.displayName)),Xt=async(i,c)=>{await s.queryClient.refetchQueries({queryKey:["cameras","extensions",i,c]})},Gt=i=>{var c;(c=b.value)==null||c.sources[i].urls.push("")},va=(i,c)=>{var D;(D=b.value)==null||D.sources[i].urls.splice(c,1)},Nt=()=>{me({cameraname:$.value},{onSuccess:()=>{z.path.includes($.value)&&Q.push({path:"/cameras"}),Ke.value=!1}})},ea=async(i,c,D)=>{p.value=!0,Ge({cameraname:i,pluginname:c,configData:D},{onSettled:()=>{p.value=!1}})},pa=async()=>{var D,ye;p.value=!0;const i=await((D=S.value)==null?void 0:D.validate()),c=await((ye=u.value)==null?void 0:ye.validate());if(i!=null&&i.valid&&(c!=null&&c.valid)){const de={...i.values,...c.values};ue({cameraname:$.value,cameraData:de},{onSettled:()=>{p.value=!1}})}else p.value=!1},fa=()=>{b.value&&b.value.sources.push({_id:"",name:"",roles:[],urls:[]})},ga=i=>{b.value&&b.value.sources.splice(i,1)},ya=()=>{Ze.value={name:"",regions:[]},Te.value=!0},ha=()=>{Te.value=!1,Ne.value=void 0,it.value=!1,Ze.value={name:"",regions:[]}},ta=async(i,c)=>{var D;if(c){const ye=await((D=A.value)==null?void 0:D.validate());if(!(ye!=null&&ye.valid))return}Te.value=!1,c?it.value=!0:it.value=!1,Ne.value=i},ba=async i=>{await We({cameraname:$.value,zonename:i})},tt=async(i,c,D)=>{c?(!D||!T.value||T.value.extensions[D]!==i)&&(await J({cameraname:$.value,pluginname:i,type:D}),xt(()=>Vt())):(!D||!T.value||T.value.extensions[D]===i)&&(await se({cameraname:$.value,pluginname:i,type:D}),xt(()=>Vt()))},Ie=i=>{if(i&&He.value&&He.value.result.some(c=>c.pluginName===i&&!c.disabled))return i},Vt=(i,c)=>{var D,ye,de,Et,St,Ft;switch(s.toggleQueryActivator("getCameraExtensionConfigQuery",!1),q.value){case"hub":fe.value=Ie((D=Rt.value[0])==null?void 0:D.pluginName)||"";break;case"motionDetection":fe.value=Ie((ye=T==null?void 0:T.value)==null?void 0:ye.extensions.motionDetection)||"";break;case"audioDetection":fe.value=Ie((de=T==null?void 0:T.value)==null?void 0:de.extensions.audioDetection)||"";break;case"objectDetection":fe.value=Ie((Et=T==null?void 0:T.value)==null?void 0:Et.extensions.objectDetection)||"";break;case"ptz":fe.value=Ie((St=T==null?void 0:T.value)==null?void 0:St.extensions.ptz)||"";break;case"prebuffer":fe.value=Ie((Ft=T==null?void 0:T.value)==null?void 0:Ft.extensions.prebuffer)||"";break;default:fe.value="";break}fe.value&&fe.value!==""&&s.toggleQueryActivator("getCameraExtensionConfigQuery",!0)},_a=async i=>{Me.value&&(Me.value.some(c=>c.pluginName===i.pluginName)?await ce({cameraname:$.value,pluginname:i.pluginName}):await f({cameraname:$.value,pluginname:i.pluginName}))},ka=async(i,c)=>{p.value=!0,await Ue({pluginName:c,actionId:i.actionId,payload:i.payload},{onSuccess:D=>{D!=null&&D.toast&&yt[D.toast.type](D.toast.message),D!=null&&D.schema&&Object.keys(D.schema).length&&(re.value=i.payload,le.value=D,ie.value=!0)},onSettled:()=>{p.value=!1}})};return no(async()=>{await bt(),await st(),await ee(),Vt()}),ca(async()=>{var i,c,D,ye;k.value=await L.deviceManager.getCameraByName($.value),(i=k.value)==null||i.onMotionDetected.subscribe(de=>{de.state||de.detections.length?ot.value=de.timestamp:de.lastEvent&&(de.lastEvent.state||de.lastEvent.detections.length)&&(ot.value=de.lastEvent.timestamp)}),(c=k.value)==null||c.onAudioDetected.subscribe(de=>{de.state?Ye.value=de.timestamp:de.lastEvent&&de.lastEvent.state&&(Ye.value=de.lastEvent.timestamp)}),(D=k.value)==null||D.onObjectDetected.subscribe(de=>{de.detections.length?nt.value=de.timestamp:de.lastEvent&&de.lastEvent.detections.length&&(nt.value=de.lastEvent.timestamp)}),await((ye=k.value)==null?void 0:ye.start())}),so(()=>{var i;Oe.value=!1,(i=k.value)==null||i.close()}),(i,c)=>{var I;const D=Oa,ye=$a("v-number-input"),de=ko,Et=Pl,St=Fa,Ft=hl,x=bs;return r(),g(ke,null,[e(M)?(r(),V(Et,{key:0,state:e(w),title:e($),segments:["overview","sources","settings","extensions"],loading:e(be)||!e(b),onClose:c[28]||(c[28]=n=>Z("close")),onSelected:c[29]||(c[29]=n=>Le.value=n!=="extensions"&&n!=="overview")},{"segmentIcon.overview":t(()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(nn)),1)]),_:1})]),"body.overview":t(()=>[a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),a(D,{target:"snapshot","current-camera":e($),"border-radius":0,style:{"border-bottom":"1px solid var(--border)"}},null,8,["current-camera"]),a(Nn,{class:"table-fixed w-full p-2",style:{background:"none !important"}},{default:t(()=>{var n,P,E,R,Ae,ve;return[m("tbody",zl,[m("tr",null,[m("td",null,d(i.$t("components.camera_options.name")),1),m("td",Ml,d(e($)),1)]),m("tr",null,[m("td",null,d(i.$t("components.camera_options.plugin")),1),m("td",El,[e(ht)?(r(),g("span",Fl,[a(Ct,{color:"#df2a4c",size:"20",indeterminate:""})])):O("",!0),m("span",null,d(((n=e(T))==null?void 0:n.pluginId)!=="native"?((E=(P=e(He))==null?void 0:P.result.find(wt=>{var ut;return wt.id===((ut=e(T))==null?void 0:ut.pluginId)}))==null?void 0:E.pluginName)||i.$t("components.camera_options.unknown"):i.$t("components.camera_options.native")),1)])]),(R=e(T))!=null&&R.extensions.motionDetection?(r(),g("tr",Il,[m("td",null,d(i.$t("components.camera_options.last_motion")),1),m("td",Bl,d(e(ot)?e(xa)(e(ot),"DD.MM.YYYY, HH:mm:ss"):"-"),1)])):O("",!0),(Ae=e(T))!=null&&Ae.extensions.objectDetection?(r(),g("tr",Tl,[m("td",null,d(i.$t("components.camera_options.last_object")),1),m("td",ql,d(e(nt)?e(xa)(e(nt),"DD.MM.YYYY, HH:mm:ss"):"-"),1)])):O("",!0),(ve=e(T))!=null&&ve.extensions.audioDetection?(r(),g("tr",Al,[m("td",null,d(i.$t("components.camera_options.last_audio")),1),m("td",Nl,d(e(Ye)?e(xa)(e(Ye),"DD.MM.YYYY, HH:mm:ss"):"-"),1)])):O("",!0)])]}),_:1})]),"segmentIcon.settings":t(()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(Ia)),1)]),_:1})]),"body.settings":t(()=>[a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),a(e(sa),{ref_key:"cameraVeeForm1",ref:S,class:"flex flex-col h-full w-full p-2","validation-schema":e(Xa)},{default:t(()=>[a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[_(d(i.$t("components.camera_options.details")),1)]),_:1}),a(ft,{eager:""},{default:t(()=>[m("div",Ol,[a(e(Be),{modelValue:e(b).disabled,"onUpdate:modelValue":c[0]||(c[0]=n=>e(b).disabled=n),name:"disabled",type:"checkbox",value:!0,"unchecked-value":!1},{default:t(({field:n,errorMessage:P,errors:E})=>[a(Sa,Pe({loading:e(be),name:"disabled"},n,{color:"#df2a4c",type:"checkbox",error:E.length>0,"error-messages":P,"hide-details":"","model-value":n.checked,style:{"max-width":"fit-content"}}),null,16,["loading","error","error-messages","model-value"]),m("label",Ql,d(i.$t("components.form.label.disabled")),1)]),_:1},8,["modelValue"])]),m("div",Dl,[a(e(Be),{modelValue:e(b).name,"onUpdate:modelValue":c[1]||(c[1]=n=>e(b).name=n),name:"name"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",Ll,d(i.$t("components.form.label.name")),1),a(lt,Pe({loading:e(be),variant:"outlined",name:"name",type:"text",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),a(te,{width:"100%",color:"red",variant:"flat",class:"mt-3",loading:e(be)||e(Je),onClick:c[2]||(c[2]=H(n=>Ke.value=!0,["prevent"]))},{default:t(()=>[_(d(i.$t("components.form.button.remove")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1}),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[_(d(i.$t("components.camera_options.information")),1)]),_:1}),a(ft,{eager:""},{default:t(()=>[m("div",Rl,[a(e(Be),{modelValue:e(b).info.manufacturer,"onUpdate:modelValue":c[3]||(c[3]=n=>e(b).info.manufacturer=n),name:"info.manufacturer"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",Ul,d(i.$t("components.form.label.camera_manufacturer")),1),a(lt,Pe({loading:e(be),variant:"outlined",name:"info.manufacturer",type:"text",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",jl,[a(e(Be),{modelValue:e(b).info.model,"onUpdate:modelValue":c[4]||(c[4]=n=>e(b).info.model=n),name:"info.model"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",Zl,d(i.$t("components.form.label.camera_model")),1),a(lt,Pe({loading:e(be),variant:"outlined",name:"info.model",type:"text",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",Kl,[a(e(Be),{modelValue:e(b).info.hardware,"onUpdate:modelValue":c[5]||(c[5]=n=>e(b).info.hardware=n),name:"info.hardware"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",Wl,d(i.$t("components.form.label.camera_hardware")),1),a(lt,Pe({loading:e(be),variant:"outlined",name:"info.hardware",type:"text",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",Hl,[a(e(Be),{modelValue:e(b).info.serialNumber,"onUpdate:modelValue":c[6]||(c[6]=n=>e(b).info.serialNumber=n),name:"info.serialNumber"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",Yl,d(i.$t("components.form.label.camera_serialNumber")),1),a(lt,Pe({loading:e(be),variant:"outlined",name:"info.serialNumber",type:"text",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",Jl,[a(e(Be),{modelValue:e(b).info.firmwareVersion,"onUpdate:modelValue":c[7]||(c[7]=n=>e(b).info.firmwareVersion=n),name:"info.firmwareVersion"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",Xl,d(i.$t("components.form.label.camera_firmwareVersion")),1),a(lt,Pe({loading:e(be),variant:"outlined",name:"info.firmwareVersion",type:"text",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",Gl,[a(e(Be),{modelValue:e(b).info.supportUrl,"onUpdate:modelValue":c[8]||(c[8]=n=>e(b).info.supportUrl=n),name:"info.supportUrl"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",er,d(i.$t("components.form.label.camera_supportUrl")),1),a(lt,Pe({loading:e(be),variant:"outlined",name:"info.supportUrl",type:"text",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1}),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[_(d(i.$t("components.camera_options.interface")),1)]),_:1}),a(ft,{eager:""},{default:t(()=>[a(e(Be),{modelValue:e(b).interface.streamingMode,"onUpdate:modelValue":c[9]||(c[9]=n=>e(b).interface.streamingMode=n),name:"interface.streamingMode"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",tr,d(i.$t("components.form.label.streaming_mode")),1),a(qt,Pe({loading:e(be),items:e(Ve),variant:"outlined",name:"interface.streamingMode",type:"text",density:"compact",chips:""},n,{error:E.length>0,"error-messages":P,"model-value":n.value,onKeydown:H(()=>null,["prevent"])}),{chip:t(({item:R})=>[a(Xe,{color:"#df2a4c"},{default:t(()=>[_(d(R.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[_(d(i.$t("components.camera_options.recordings")),1)]),_:1}),a(ft,{eager:""},{default:t(()=>[m("div",ar,[a(e(Be),{modelValue:e(b).recording.enabled,"onUpdate:modelValue":c[10]||(c[10]=n=>e(b).recording.enabled=n),name:"recording.enabled",type:"checkbox",value:!0,"unchecked-value":!1},{default:t(({field:n,errorMessage:P,errors:E})=>[a(Sa,Pe(n,{loading:e(be),name:"recording.enabled",color:"#df2a4c",type:"checkbox",error:E.length>0,"error-messages":P,"hide-details":"","model-value":n.checked,style:{"max-width":"fit-content"}}),null,16,["loading","error","error-messages","model-value"]),m("label",or,d(i.$t("components.form.label.enabled")),1)]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1}),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[_(d(i.$t("components.camera_options.activity_detection")),1)]),_:1}),a(ft,{eager:""},{default:t(()=>[m("span",nr,d(i.$t("components.camera_options.motion_detection_settings")),1),m("div",sr,[m("div",lr,[a(e(Be),{modelValue:e(b).activitySettings.motion.timeout,"onUpdate:modelValue":c[11]||(c[11]=n=>e(b).activitySettings.motion.timeout=n),name:"activitySettings.motion.timeout"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",rr,d(i.$t("components.form.label.motion_duration")),1),a(ye,Pe({"model-value":n.value,loading:e(be),variant:"outlined",name:"activitySettings.motion.timeout",type:"number",density:"compact"},n,{error:E.length>0,"error-messages":P}),null,16,["model-value","loading","error","error-messages"])]),_:1},8,["modelValue"])])]),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-5"}),m("span",ir,d(i.$t("components.camera_options.object_detection_settings")),1),m("div",ur,[m("div",cr,[a(e(Be),{modelValue:e(b).activitySettings.object.confidence,"onUpdate:modelValue":c[12]||(c[12]=n=>e(b).activitySettings.object.confidence=n),name:"activitySettings.object.confidence"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",dr,d(i.$t("components.form.label.confidence")),1),a(ye,Pe({"model-value":n.value,loading:e(be),variant:"outlined",name:"activitySettings.object.confidence",type:"number",density:"compact"},n,{step:.01,error:E.length>0,"error-messages":P}),null,16,["model-value","loading","error","error-messages"])]),_:1},8,["modelValue"])])])]),_:1})]),_:1})]),_:1}),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[_(d(i.$t("components.camera_options.activity_zones")),1)]),_:1}),a(ft,{eager:""},{default:t(()=>{var n,P,E;return[m("div",mr,[(P=(n=e(T))==null?void 0:n.activityZones)!=null&&P.length?(r(!0),g(ke,{key:1},$e((E=e(T))==null?void 0:E.activityZones,(R,Ae)=>(r(),g("div",{key:Ae,class:"w-full flex flex-row items-center"},[a(lt,{class:"my-1","model-value":R.name,variant:"outlined",density:"compact",type:"text","hide-details":"",readonly:""},{"append-inner":t(()=>[a(te,{class:"mr-2",size:"24",rounded:"",density:"compact",variant:"flat",color:"green",loading:e(At),onClick:H(ve=>ta(R,!1),["prevent"])},{default:t(()=>[a(j,{size:"16"},{default:t(()=>[_(d(e(uo)),1)]),_:1})]),_:2},1032,["loading","onClick"]),a(te,{size:"24",rounded:"",density:"compact",variant:"flat",color:"red",loading:e(At),onClick:H(ve=>ba(R.name),["prevent"])},{default:t(()=>[a(j,{size:"16"},{default:t(()=>[_(d(e(Tt)),1)]),_:1})]),_:2},1032,["loading","onClick"])]),_:2},1032,["model-value"])]))),128)):(r(),g("span",vr,d(i.$t("components.camera_options.no_zones")),1))]),a(te,{class:"mt-3",block:"",color:"#df2a4c",loading:e(At),variant:"flat",onClick:c[13]||(c[13]=H(R=>ya(),["prevent"]))},{default:t(()=>[_(d(i.$t("components.form.button.new_zone")),1)]),_:1},8,["loading"])]}),_:1})]),_:1})]),_:1}),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[_(d(i.$t("components.camera_options.frame_worker_settings")),1)]),_:1}),a(ft,{eager:""},{default:t(()=>[m("div",pr,[a(e(Be),{modelValue:e(b).frameWorkerSettings.decoder,"onUpdate:modelValue":c[14]||(c[14]=n=>e(b).frameWorkerSettings.decoder=n),name:"frameWorkerSettings.decoder"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",fr,d(i.$t("components.form.label.decoder")),1),a(qt,Pe({loading:e(be),items:e(qe),variant:"outlined",name:"frameWorkerSettings.decoder",type:"text",density:"compact",chips:""},n,{error:E.length>0,"error-messages":P,"model-value":n.value,onKeydown:H(()=>null,["prevent"])}),{chip:t(({item:R})=>[a(Xe,{color:"#df2a4c"},{default:t(()=>[_(d(R.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),m("div",gr,[a(e(Be),{modelValue:e(b).frameWorkerSettings.resolution,"onUpdate:modelValue":c[15]||(c[15]=n=>e(b).frameWorkerSettings.resolution=n),name:"frameWorkerSettings.resolution"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",yr,d(i.$t("components.form.label.resolution")),1),a(qt,Pe({loading:e(be),items:e(xe),variant:"outlined",name:"frameWorkerSettings.resolution",type:"number",density:"compact",chips:""},n,{error:E.length>0,"error-messages":P,"model-value":n.value,onKeydown:H(()=>null,["prevent"])}),{chip:t(({item:R})=>[a(Xe,{color:"#df2a4c"},{default:t(()=>[_(d(R.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),m("div",hr,[a(e(Be),{modelValue:e(b).frameWorkerSettings.fps,"onUpdate:modelValue":c[16]||(c[16]=n=>e(b).frameWorkerSettings.fps=n),name:"frameWorkerSettings.fps"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",br,d(i.$t("components.form.label.fps")),1),a(ye,Pe({"model-value":n.value,loading:e(be),variant:"outlined",name:"frameWorkerSettings.fps",type:"number",density:"compact"},n,{min:5,max:10,step:1,error:E.length>0,"error-messages":P}),null,16,["model-value","loading","error","error-messages"])]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1})]),_:1},8,["validation-schema"])]),"segmentIcon.sources":t(()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(Va)),1)]),_:1})]),"body.sources":t(()=>[a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),a(e(sa),{ref_key:"cameraVeeForm2",ref:u,class:"flex flex-col h-full w-full p-2","validation-schema":e(Xa)},{default:t(()=>[(r(!0),g(ke,null,$e(e(b).sources,(n,P)=>(r(),g("div",{key:P},[a(gt,null,{default:t(()=>[a(vt,{elevation:"0"},{default:t(()=>[a(pt,{style:{height:"48px"},class:"truncate"},{actions:t(({expanded:E})=>{var R;return[m("div",_r,[a(te,{loading:e(be),disabled:((R=e(b))==null?void 0:R.sources)!==void 0&&e(b).sources.length<2,size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:H(Ae=>ga(P),["stop"])},{default:t(()=>[a(j,null,{default:t(()=>[_(d(e(Tt)),1)]),_:1})]),_:2},1032,["loading","disabled","onClick"]),E?(r(),V(j,{key:0,size:"22.5"},{default:t(()=>[_(d(e(lo)),1)]),_:1})):(r(),V(j,{key:1,size:"22.5"},{default:t(()=>[_(d(e(ro)),1)]),_:1}))])]}),default:t(()=>[_(d(i.$t("components.camera_options.source")+": "+n.name.replace(/ /g,"_").toLowerCase())+" ",1)]),_:2},1024),a(ft,{eager:""},{default:t(()=>[m("div",kr,[a(e(Be),{modelValue:n.name,"onUpdate:modelValue":E=>n.name=E,name:`sources[${P}].name`},{default:t(({field:E,errorMessage:R,errors:Ae})=>[m("label",{for:`sources[${P}].name`,class:"v-label"},d(i.$t("components.form.label.source_name")),9,wr),a(lt,Pe({loading:e(be),variant:"outlined",name:`sources[${P}].name`,type:"text",density:"compact",ref_for:!0},E,{error:Ae.length>0,"error-messages":R}),null,16,["loading","name","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"])]),m("div",xr,[a(e(Be),{modelValue:n.roles,"onUpdate:modelValue":E=>n.roles=E,name:`sources[${P}].roles`},{default:t(({field:E,errorMessage:R,errors:Ae})=>[m("label",{for:`sources[${P}].roles`,class:"v-label"},d(i.$t("components.form.label.source_role")),9,Cr),a(qt,Pe({loading:e(be),items:e(Re).filter(ve=>!e(b).sources.some((wt,ut)=>wt.roles.includes(ve)&&ut!==P)),variant:"outlined",name:`sources[${P}].roles`,type:"text",density:"compact",chips:"",multiple:"",ref_for:!0},E,{"model-value":E.value,error:Ae.length>0,"error-messages":R,onKeydown:H(()=>null,["prevent"])}),{chip:t(({item:ve})=>[a(Xe,{color:"#df2a4c"},{default:t(()=>[_(d(ve.title),1)]),_:2},1024)]),_:2},1040,["loading","items","name","model-value","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"])]),m("div",$r,[m("label",{for:`sources[${P}].urls[]`,class:"v-label"},d(i.$t("components.form.label.sources")),9,Vr),(r(!0),g(ke,null,$e(n.urls,(E,R)=>(r(),g("div",{key:R},[a(e(Be),{modelValue:n.urls[R],"onUpdate:modelValue":Ae=>n.urls[R]=Ae,name:`sources[${P}].urls[${R}]`,value:E},{default:t(({field:Ae,errorMessage:ve,errors:wt})=>[a(lt,Pe({loading:e(be),variant:"outlined",name:`sources[${P}].urls[${R}]`,type:"text",density:"compact",ref_for:!0},Ae,{error:wt.length>0,"error-messages":ve}),{"append-inner":t(()=>[n.urls.length>1?(r(),V(te,{key:0,loading:e(be),size:"28",variant:"text",rounded:"",density:"compact",color:"red",disabled:n.urls.length<2,onClick:H(ut=>va(P,R),["prevent"])},{default:t(()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(sn)),1)]),_:1})]),_:2},1032,["loading","disabled","onClick"])):O("",!0)]),_:2},1040,["loading","name","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name","value"])]))),128)),a(te,{loading:e(be),color:"#df2a4c",variant:"flat",class:"ml-auto",onClick:H(E=>Gt(P),["prevent"])},{default:t(()=>[_(d(i.$t("components.form.button.add_source")),1)]),_:2},1032,["loading","onClick"])])]),_:2},1024)]),_:2},1024)]),_:2},1024),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"})]))),128)),m("div",Sr,[a(te,{loading:e(be),variant:"text",color:"#df2a4c",icon:"",onClick:H(fa,["prevent"])},{default:t(()=>[a(j,{size:"30"},{default:t(()=>[_(d(e(io)),1)]),_:1})]),_:1},8,["loading"])])]),_:1},8,["validation-schema"])]),"segmentIcon.extensions":t(()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(ln)),1)]),_:1})]),"body.extensions":t(()=>[a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),m("div",Pr,[m("label",zr,d(i.$t("components.camera_options.categories")),1),a(Pt,{modelValue:e(q),"onUpdate:modelValue":[c[17]||(c[17]=n=>ze(q)?q.value=n:null),c[18]||(c[18]=n=>Vt("@update:model-value chip group select"))],"selected-class":"primary-color",disabled:e(Qe),mandatory:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(ae),n=>(r(),V(Xe,{key:n,size:"small",disabled:e(Je),value:n},{default:t(()=>[_(d(i.$t(`components.camera_options.chip_${n}`)),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])]),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),e(q)==="hub"?(r(),g("div",Mr,[m("label",Er,d(i.$t("components.camera_options.chip_extensions")),1),e(Rt).length?(r(),V(Pt,{key:0,modelValue:e(N),"onUpdate:modelValue":c[19]||(c[19]=n=>ze(N)?N.value=n:null),"selected-class":"primary-color",disabled:e(Qe),mandatory:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(Rt),n=>(r(),V(Xe,{key:n.pluginName,disabled:!Ie(n.pluginName)||e(Je),size:"small",value:n.pluginName},{default:t(()=>[_(d(n.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(r(),g("div",Fr,[m("span",Ir,d(i.$t("components.camera_options.no_extensions_enabled")),1)]))])):e(q)==="motionDetection"?(r(),g("div",Br,[m("label",Tr,d(i.$t("components.camera_options.enabled_extension")),1),e(Ht).length?(r(),V(Pt,{key:0,modelValue:e(X),"onUpdate:modelValue":c[20]||(c[20]=n=>ze(X)?X.value=n:null),"selected-class":"primary-color",disabled:e(Qe),filter:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(Ht),n=>(r(),V(Xe,{key:n.pluginName,disabled:!Ie(n.pluginName)||e(Je),size:"small",value:n.pluginName},{default:t(()=>[_(d(n.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(r(),g("div",qr,[m("span",Ar,d(i.$t("components.camera_options.no_extensions_enabled")),1)]))])):e(q)==="objectDetection"?(r(),g("div",Nr,[m("label",Or,d(i.$t("components.camera_options.enabled_extension")),1),e(Ut).length?(r(),V(Pt,{key:0,modelValue:e(U),"onUpdate:modelValue":c[21]||(c[21]=n=>ze(U)?U.value=n:null),"selected-class":"primary-color",disabled:e(Qe),filter:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(Ut),n=>(r(),V(Xe,{key:n.pluginName,disabled:!Ie(n.pluginName)||e(Je),size:"small",value:n.pluginName},{default:t(()=>[_(d(n.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(r(),g("div",Qr,[m("span",Dr,d(i.$t("components.camera_options.no_extensions_enabled")),1)]))])):e(q)==="audioDetection"?(r(),g("div",Lr,[m("label",Rr,d(i.$t("components.camera_options.enabled_extension")),1),e(Yt).length?(r(),V(Pt,{key:0,modelValue:e(F),"onUpdate:modelValue":c[22]||(c[22]=n=>ze(F)?F.value=n:null),"selected-class":"primary-color",disabled:e(Qe),filter:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(Yt),n=>(r(),V(Xe,{key:n.pluginName,disabled:!Ie(n.pluginName)||e(Je),size:"small",value:n.pluginName},{default:t(()=>[_(d(n.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(r(),g("div",Ur,[m("span",jr,d(i.$t("components.camera_options.no_extensions_enabled")),1)]))])):e(q)==="prebuffer"?(r(),g("div",Zr,[m("label",Kr,d(i.$t("components.camera_options.enabled_extension")),1),e(Jt).length?(r(),V(Pt,{key:0,modelValue:e(G),"onUpdate:modelValue":c[23]||(c[23]=n=>ze(G)?G.value=n:null),"selected-class":"primary-color",disabled:e(Qe),filter:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(Jt),n=>(r(),V(Xe,{key:n.pluginName,disabled:!Ie(n.pluginName)||e(Je),size:"small",value:n.pluginName},{default:t(()=>[_(d(n.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(r(),g("div",Wr,[m("span",Hr,d(i.$t("components.camera_options.no_extensions_enabled")),1)]))])):e(q)==="ptz"?(r(),g("div",Yr,[m("label",Jr,d(i.$t("components.camera_options.enabled_extension")),1),e(jt).length?(r(),V(Pt,{key:0,modelValue:e(B),"onUpdate:modelValue":c[24]||(c[24]=n=>ze(B)?B.value=n:null),"selected-class":"primary-color",disabled:e(Qe),filter:"",column:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(jt),n=>(r(),V(Xe,{key:n.pluginName,disabled:!Ie(n.pluginName)||e(Je),size:"small",value:n.pluginName},{default:t(()=>[_(d(n.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(r(),g("div",Xr,[m("span",Gr,d(i.$t("components.camera_options.no_extensions_enabled")),1)]))])):O("",!0),a(je,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),e(Qe)?(r(),V(On,{key:6,height:"2",color:"#df2a4c",indeterminate:"",style:{"margin-top":"-2px"}})):O("",!0),m("div",ei,[a(Ta,{modelValue:e(q),"onUpdate:modelValue":c[27]||(c[27]=n=>ze(q)?q.value=n:null),disabled:e(Qe),mandatory:"",eager:""},{default:t(()=>[(r(!0),g(ke,null,$e(e(ae),n=>(r(),V(qa,{key:n,value:n,transition:"instant","reverse-transition":"instant"},{default:t(()=>{var P,E,R,Ae;return[n==="extensions"?(r(),g("div",ti,[(P=e(Me))!=null&&P.filter(ve=>ve.builtIn).length?(r(),g("div",ai,[m("label",oi,d(i.$t("components.camera_options.builtin_extensions")),1),(r(!0),g(ke,null,$e((E=e(Me))==null?void 0:E.filter(ve=>ve.builtIn),(ve,wt)=>{var ut;return r(),g("div",{key:ve.pluginName},[a(Ka,{"select-strategy":"classic",class:"py-0",disabled:e(Qe)},{default:t(()=>[a(Pa,{value:ve.pluginName,class:"px-2",active:!1},{prepend:t(()=>[a(Wa,{start:""},{default:t(()=>[a(za,{"model-value":!0,color:"#df2a4c",disabled:!0})]),_:1})]),append:t(()=>[a(te,{class:"ml-auto",size:"28",rounded:"",density:"compact",variant:"text",onClick:H(()=>i.$router.push(`/plugins/${ve.pluginName}`),["stop"])},{default:t(()=>[a(j,{size:"18"},{default:t(()=>[_(d(e(Ua)),1)]),_:1})]),_:2},1032,["onClick"])]),default:t(()=>[_(d(ve.displayName)+" ",1)]),_:2},1032,["value"])]),_:2},1032,["disabled"]),wt!==(((ut=e(Me))==null?void 0:ut.filter(aa=>aa.builtIn))||[]).length-1?(r(),V(je,{key:0,style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"})):O("",!0)])}),128))])):O("",!0),m("div",null,[m("label",ni,d(i.$t("components.camera_options.extensions")),1),(r(!0),g(ke,null,$e((R=e(et))==null?void 0:R.result,(ve,wt)=>{var ut,aa;return r(),g("div",{key:ve.pluginName},[a(Ka,{"select-strategy":"classic",class:"py-0",disabled:e(Qe),"onUpdate:selected":()=>_a(ve)},{default:t(()=>{var Qa;return[a(Pa,{value:ve.pluginName,class:"px-2",active:(Qa=e(Me))==null?void 0:Qa.some(oa=>oa.pluginName===ve.pluginName)},{prepend:t(()=>[a(Wa,{start:""},{default:t(()=>{var oa;return[a(za,{"model-value":(oa=e(Me))==null?void 0:oa.some(Vo=>Vo.pluginName===ve.pluginName),color:"#df2a4c"},null,8,["model-value"])]}),_:2},1024)]),append:t(()=>[a(te,{class:"ml-auto",size:"28",rounded:"",density:"compact",variant:"text",onClick:H(()=>i.$router.push(`/plugins/${ve.pluginName}`),["stop"])},{default:t(()=>[a(j,{size:"18"},{default:t(()=>[_(d(e(Ua)),1)]),_:1})]),_:2},1032,["onClick"])]),default:t(()=>[_(d(ve.displayName)+" ",1)]),_:2},1032,["value","active"])]}),_:2},1032,["disabled","onUpdate:selected"]),(ut=e(et))!=null&&ut.result&&wt!==((aa=e(et))==null?void 0:aa.result.length)-1?(r(),V(je,{key:0,style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"})):O("",!0)])}),128))])])):(r(),g("div",si,[m("label",li,d(i.$t("components.camera_options.extension_settings")),1),e(pe)?(r(),g("div",ri,[a(Ct,{color:"#df2a4c",indeterminate:""})])):!e(fe)||!((Ae=e(ne))!=null&&Ae.rootSchema)?(r(),g("div",ii,[m("span",ui,d(i.$t("components.camera_options.no_config")),1)])):e(ne)?(r(),V(de,{key:n,config:e(ne).config||{},"ui-schema":e(ne).rootSchema,loading:e(Je),onOnFormSubmit:c[25]||(c[25]=ve=>ea(e($),e(fe),ve)),onOnSubmit:ve=>ka(ve,n),onChangeGroup:c[26]||(c[26]=()=>Xt(e($),e(fe)))},null,8,["config","ui-schema","loading","onOnSubmit"])):O("",!0)]))]}),_:2},1032,["value"]))),128))]),_:1},8,["modelValue","disabled"])])]),footer:t(()=>[e(Le)?(r(),g("div",ci,[a(te,{width:"100%",color:"green",variant:"flat",loading:e(be)||e(Je),onClick:H(pa,["prevent"])},{default:t(()=>[_(d(i.$t("components.form.button.save")),1)]),_:1},8,["loading"])])):O("",!0)]),_:1},8,["state","title","loading"])):O("",!0),a(St,{modelValue:e(Ke),"onUpdate:modelValue":c[30]||(c[30]=n=>ze(Ke)?Ke.value=n:null),title:i.$t("components.dialog.title.confirm"),"confirm-text":"components.form.button.remove",loading:e(be)||e(Je),onConfirm:c[31]||(c[31]=n=>Nt())},{content:t(()=>[m("span",null,d(i.$t("components.dialog.message.confirm_remove")),1)]),_:1},8,["modelValue","title","loading"]),a(St,{modelValue:e(Te),"onUpdate:modelValue":c[33]||(c[33]=n=>ze(Te)?Te.value=n:null),title:i.$t("components.dialog.title.confirm"),"confirm-text":"components.form.button.open_editor",loading:e(be)||e(Je),onConfirm:c[34]||(c[34]=n=>ta(e(Ze),!0))},{content:t(()=>[a(e(sa),{ref_key:"cameraVeeForm3",ref:A,"validation-schema":e(xo),"initial-values":e(Ze)},{default:t(()=>[a(e(Be),{modelValue:e(Ze).name,"onUpdate:modelValue":c[32]||(c[32]=n=>e(Ze).name=n),name:"name",type:"text"},{default:t(({field:n,errorMessage:P,errors:E})=>[m("label",di,d(i.$t("components.form.label.zone_name")),1),a(lt,Pe({class:"my-1",variant:"outlined",density:"compact",type:"text",name:"name"},n,{error:E.length>0,"error-messages":P}),null,16,["error","error-messages"])]),_:1},8,["modelValue"])]),_:1},8,["validation-schema","initial-values"])]),_:1},8,["modelValue","title","loading"]),e(Ne)?(r(),V(Ft,{key:1,"camera-name":e($),zones:e(Ne),"is-new-zone":e(it),onShowModal:c[35]||(c[35]=n=>n?null:ha())},null,8,["camera-name","zones","is-new-zone"])):O("",!0),(I=e(le))!=null&&I.schema?(r(),V(x,{key:2,modelValue:e(ie),"onUpdate:modelValue":c[36]||(c[36]=n=>ze(ie)?ie.value=n:null),"ui-schema":{schema:e(le).schema},"plugin-config":e(re)||{},"plugin-name":e(fe)},null,8,["modelValue","ui-schema","plugin-config","plugin-name"])):O("",!0)],64)}}}),vi=Mt(mi,[["__scopeId","data-v-4f2d0a22"]]),pi={class:"w-full h-full flex items-center justify-center bg-black aspect-video"},$o=dt({__name:"VCameraSnapshot",props:{cameraName:{},src:{},loading:{type:Boolean}},setup(o,{expose:l}){const s=new Wt,C=o,{cameraName:z,loading:Q,src:L}=mt(C);L.value&&s.toggleQueryActivator("getCameraSnapshotQuery",!1);const{data:h,isLoading:Z}=s.getCameraSnapshotQuery(z),$=W(()=>Q.value||Z.value),M=W(()=>L.value?L.value:h.value?`data:image/jpeg;base64,${h.value}`:"");return l({download:()=>{if(M.value){const b=`${z.value.replace(/ /g,"_").toLowerCase()}_${new Date().toISOString()}.png`,S=document.createElement("a");S.setAttribute("download",b),S.href=M.value,document.body.appendChild(S),S.click(),S.remove()}}}),(b,S)=>{const u=eo;return r(),g("div",pi,[e($)?(r(),V(Ct,{key:0,color:"#df2a4c",indeterminate:""})):(r(),V(u,{key:1,src:e(M),width:"100%",height:"100%","aspect-ratio":"16/9",cover:""},null,8,["src"]))])}}}),fi=["data-ignore-id"],gi={class:"snapshot-hover-container flex items-center justify-center elevation-3"},yi={key:0,style:{width:"100%","aspect-ratio":"16/9"}},hi={class:"shortcut-menu p-3 elevation-5"},bi=dt({__name:"VCameraShortcuts",props:{currentCamera:{},clickInsideId:{},addingShortcuts:{type:Boolean}},setup(o){var Me;const l=new Wt,s=new qo,C=To(),z=po(),Q=o,{clickInsideId:L,currentCamera:h,addingShortcuts:Z}=mt(Q),{loginState:$}=co(C),M=y(null),k=y(null),b=y({}),S=y({}),u=y({}),A=y(!1),ae=y(),p=y({page:1,pageSize:-1}),ie=y(!1),le=y([]),re=y({}),K=Zt(k),{data:w,isLoading:q}=l.getCameraQuery(h),{data:N,isLoading:X}=l.getCamerasQuery(p),{data:F,isLoading:U}=s.getUserQuery(((Me=$.value.user)==null?void 0:Me.username)||""),{mutate:B,isPending:G}=s.patchShortcutQuery(),{mutateAsync:fe,isPending:Ne}=s.createShortcutQuery(),{mutateAsync:Le,isPending:Ke}=s.removeShortcutQuery(),Te=W(()=>q.value||U.value||G.value||X.value||Ne.value||Ke.value),Re=W(()=>{var Y;return(Y=N.value)!=null&&Y.result?N.value.result.filter(ee=>ee.name!==h.value):[]});we([F,w],()=>{var Y;F.value&&w.value&&(le.value=((Y=F.value.preferences.cameras[w.value._id])==null?void 0:Y.shortcuts)||[])},{immediate:!0,deep:!0}),we([K.width,K.height],()=>{ie.value=!0,xt(()=>{Ye()})}),we(le,()=>{xt(()=>{nt()})},{deep:!0,immediate:!0}),we(ie,Y=>{Y&&(ae.value=void 0)});const Ve=(Y,ee)=>{re.value[Y]=A.value?!1:ee,Object.entries(re.value).forEach(([ne,pe])=>{ne!==Y&&pe&&(re.value[ne]=!1)})},xe=Y=>{A.value||T(Y)},qe=(Y,ee)=>{Y||(re.value[ee._id]?(Ve(ee._id,!1),st(ee.cameraId)):Ve(ee._id,!0))},Oe=()=>{Object.entries(S.value).forEach(([Y,ee])=>{const ne=k.value;if(!ne)return;const pe=ne.getBoundingClientRect(),me=ee.element.getBoundingClientRect(),Se=(me.left-pe.left)/pe.width*100,ue=(me.top-pe.top)/pe.height*100;u.value[Y]={x:Math.max(0,Math.min(Se,100)),y:Math.max(0,Math.min(ue,100))}})},ot=()=>{Object.entries(S.value).forEach(([Y,ee])=>{const ne=u.value[Y];if(!ne)return;const pe=k.value;if(!pe)return;const me=pe.getBoundingClientRect(),Se=ee.element.getBoundingClientRect(),ue=me.width-Se.width,Ce=me.height-Se.height,Ge=Math.max(0,Math.min(ne.x/100*me.width,ue)),v=Math.max(0,Math.min(ne.y/100*me.height,Ce));ee.setPosition(Ge,v)}),ie.value=!1},Ye=()=>{Object.entries(u.value).forEach(([Y,ee])=>{u.value[Y]={x:Math.max(0,Math.min(ee.x,100)),y:Math.max(0,Math.min(ee.y,100))}}),ot()},nt=()=>{for(const[Y,ee]of Object.entries(S.value))le.value.find(ne=>ne._id===Y)||(ee.destroy(),delete S.value[Y],delete u.value[Y]);for(const[Y]of Object.entries(u.value))le.value.find(ee=>ee._id===Y)||delete u.value[Y];for(const[Y,ee]of Object.entries(b.value)){const ne=le.value.find(pe=>pe._id===Y);if(ee&&ne&&k.value){S.value[ne._id]&&S.value[ne._id].destroy();const pe=new vo(ee,{containment:k.value});S.value[ne._id]=pe;const[me,Se]=ne.coords.points,ue=k.value.getBoundingClientRect(),Ce=me/100*ue.width,Ge=Se/100*ue.height;pe.setPosition(Ce,Ge),u.value[ne._id]={x:me,y:Se},pe.on("dragMove",()=>{A.value=!0}),pe.on("dragEnd",()=>{if(setTimeout(()=>{A.value=!1},50),Oe(),!F.value||!w.value)return;const v=u.value[ne._id];B({username:F.value.username,cameraname:w.value.name,shortcutid:ne._id,shortcutData:{coords:{_id:ne.coords._id,points:[v.x,v.y]}}})})}}ot()},it=Y=>{if(!Z.value||!k.value)return;const ee=k.value.getBoundingClientRect(),ne=35,pe=35;ae.value={x:Math.max(0,Math.min(Y.clientX-ee.left-ne/2,ee.width-ne)),y:Math.max(0,Math.min(Y.clientY-ee.top-pe/2,ee.height-pe))}},Ze=async Y=>{if(!M.value||!F.value||!w.value||!k.value)return;const ee=k.value,ne=M.value,pe=ee.getBoundingClientRect(),me=ne.getBoundingClientRect(),Se=me.left-pe.left,ue=me.top-pe.top,Ce=Se/pe.width*100,Ge=ue/pe.height*100;await fe({username:F.value.username,cameraname:w.value.name,shortcutData:{_id:"",coords:{_id:"",points:[Ce,Ge]},cameraId:Y._id}},{onSuccess:v=>{le.value=v}}),ae.value=void 0},T=async Y=>{!F.value||!w.value||await Le({username:F.value.username,cameraname:w.value.name,shortcutid:Y._id},{onSuccess:ee=>{le.value=ee}})},$t=(Y,ee)=>{b.value[ee]=Y},st=async Y=>{if(A.value)return;const ee=new AbortController,pe=(await wo({cameraname:Y,signal:ee.signal})).name;pe&&z.push(`/cameras/${pe}`)};return jo(()=>{b.value={}}),ca(()=>{xt(()=>{nt()})}),Zo(()=>{Object.values(S.value).forEach(Y=>Y.destroy())}),(Y,ee)=>{const ne=Oa,pe=$o;return r(),g("div",{ref_key:"shortcutContainer",ref:k,class:"shortcut-container relative",style:Bt({cursor:e(Z)?"pointer":"default"}),onClick:H(it,["self"])},[(r(!0),g(ke,null,$e(e(le),me=>Ko((r(),g("div",{ref_for:!0,ref:Se=>$t(Se,me._id),key:me._id,class:"draggable absolute","data-ignore-id":e(L),style:Bt({background:e(re)[me._id]?"#545454":void 0})},[a(te,{color:"#383838",size:"32",density:"compact",icon:"",variant:"elevated",active:e(re)[me._id]},{default:t(()=>[a(j,{size:"30",style:{"margin-top":"3px"}},{default:t(()=>[_(d("$cuiCamera"))]),_:1})]),_:2},1032,["active"]),a(Ha,{"model-value":e(A)?!1:e(re)[me._id]||void 0,target:"parent",offset:[10,20]},{default:t(()=>{var Se;return[m("div",gi,[(Se=e(N))!=null&&Se.result.find(ue=>ue._id===me.cameraId)?(r(),V(ne,{key:1,"current-camera":e(N).result.find(ue=>ue._id===me.cameraId).name,"border-radius":0,target:"stream","source-role":"low-resolution","show-mode":!1,"show-live-indicator":""},null,8,["current-camera"])):(r(),g("div",yi,[a(Ct,{color:"#df2a4c",indeterminate:""})]))])]}),_:2},1032,["model-value"])],12,fi)),[[e(Fn),Se=>Ve(me._id,Se)],[e(In),[()=>xe(me),{distanceThreshold:24,delay:1e3,onMouseUp:(Se,ue,Ce)=>qe(Ce,me)}]]])),128)),e(ae)?(r(),g("div",{key:0,ref_key:"placeholderEl",ref:M,class:"draggable absolute",style:Bt(`left: ${e(ae).x}px; top: ${e(ae).y}px;`)},[a(te,{color:"#383838",size:"32",density:"compact",icon:"",variant:"elevated"},{default:t(()=>[a(j,{size:"30",style:{"margin-top":"3px"}},{default:t(()=>[_(d("$cuiCamera"))]),_:1})]),_:1})],4)):O("",!0),e(Z)&&!e(A)&&!e(ie)?(r(),V(Ha,{key:1,offset:[30,0],activator:"parent",target:"cursor","onUpdate:modelValue":ee[0]||(ee[0]=me=>me?null:ae.value=void 0)},{default:t(()=>[m("div",hi,[(r(!0),g(ke,null,$e(e(Re),me=>(r(),V(pe,{key:me._id,class:"shortcut-menu-item elevation-1","camera-name":me.name,width:"100%",loading:e(Te),onClick:H(Se=>Ze(me),["prevent"])},null,8,["camera-name","loading","onClick"]))),128))])]),_:1})):O("",!0)],4)}}}),_i=Mt(bi,[["__scopeId","data-v-216a3cdc"]]),ki={class:"stream-control flex flex-row items-center justify-center elevation-2"},wi=dt({__name:"VPlayerController",props:{showVolume:{type:Boolean,default:!0},showRewind:{type:Boolean,default:!1},showFastForward:{type:Boolean,default:!1},showPlayPause:{type:Boolean,default:!0},showMicrophone:{type:Boolean,default:!1},showAirplay:{type:Boolean,default:!1},showPip:{type:Boolean,default:!1},showFs:{type:Boolean,default:!1},playing:{type:Boolean},muted:{type:Boolean},micActive:{type:Boolean},isFs:{type:Boolean},isPip:{type:Boolean},loading:{type:Boolean},collapsedControls:{default(){return[]}}},emits:["toggle-mute","toggle-play","toggle-microphone","toggle-airplay","toggle-picture-in-picture","toggle-fullscreen","toggle-rewind","toggle-fast-forward","toggle-playback-rate"],setup(o,{emit:l}){const s=l,C=o,{showAirplay:z,showFastForward:Q,showMicrophone:L,showPip:h,showPlayPause:Z,showRewind:$,showVolume:M,playing:k,micActive:b,muted:S,loading:u,showFs:A,isFs:ae,isPip:p,collapsedControls:ie}=mt(C),le=W(()=>ie.value.includes("airplay")),re=W(()=>ie.value.includes("fast-forward")),K=W(()=>ie.value.includes("microphone")),w=W(()=>ie.value.includes("pip")),q=W(()=>ie.value.includes("play-pause")),N=W(()=>ie.value.includes("rewind")),X=W(()=>ie.value.includes("volume")),F=W(()=>ie.value.includes("fs"));return(U,B)=>(r(),g("div",ki,[e(N)?O("",!0):(r(),V(te,{key:0,disabled:!e($)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[0]||(B[0]=H(G=>s("toggle-rewind"),["prevent"]))},{default:t(()=>[a(j,{color:"#fff",size:"18"},{default:t(()=>[_(d(e(rn)),1)]),_:1})]),_:1},8,["disabled"])),e(q)?O("",!0):(r(),V(te,{key:1,disabled:!e(Z)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[1]||(B[1]=H(G=>s("toggle-play"),["prevent"]))},{default:t(()=>[e(q)?O("",!0):(r(),V(j,{key:0,color:"#fff",size:"18"},{default:t(()=>[_(d(e(k)?e(un):e(cn)),1)]),_:1}))]),_:1},8,["disabled"])),e(re)?O("",!0):(r(),V(te,{key:2,disabled:!e(Q)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[2]||(B[2]=H(G=>s("toggle-fast-forward"),["prevent"]))},{default:t(()=>[a(j,{color:"#fff",size:"18"},{default:t(()=>[_(d(e(dn)),1)]),_:1})]),_:1},8,["disabled"])),e(X)?O("",!0):(r(),V(te,{key:3,disabled:!e(M)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[3]||(B[3]=H(G=>s("toggle-mute"),["prevent"]))},{default:t(()=>[a(j,{color:"#fff",size:"18"},{default:t(()=>[_(d(e(S)?e(mn):e(vn)),1)]),_:1})]),_:1},8,["disabled"])),e(K)?O("",!0):(r(),V(te,{key:4,disabled:!e(L)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[4]||(B[4]=H(G=>s("toggle-microphone"),["prevent"]))},{default:t(()=>[a(j,{color:"#fff",size:"18"},{default:t(()=>[_(d(e(b)?e(pn):e(fn)),1)]),_:1})]),_:1},8,["disabled"])),e(le)?O("",!0):(r(),V(te,{key:5,disabled:!e(z)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[5]||(B[5]=H(G=>s("toggle-airplay"),["prevent"]))},{default:t(()=>[a(j,{color:"#fff",size:"18"},{default:t(()=>[_(d(e(gn)),1)]),_:1})]),_:1},8,["disabled"])),e(w)?O("",!0):(r(),V(te,{key:6,disabled:!e(h)||e(u)||e(ae),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[6]||(B[6]=H(G=>s("toggle-picture-in-picture"),["prevent"]))},{default:t(()=>[a(j,{color:"#fff",size:"18"},{default:t(()=>[_(d(e(p)?e(yn):e(hn)),1)]),_:1})]),_:1},8,["disabled"])),e(F)?O("",!0):(r(),V(te,{key:7,disabled:!e(A)||e(u)||e(p),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:B[7]||(B[7]=H(G=>s("toggle-fullscreen"),["prevent"]))},{default:t(()=>[a(j,{color:"#fff",size:"18"},{default:t(()=>[_(d(e(ae)?e(bn):e(_n)),1)]),_:1})]),_:1},8,["disabled"]))]))}}),xi=Mt(wi,[["__scopeId","data-v-b5e30f72"]]),Ci=dt({__name:"VBBoxPlayground",props:{color:{default:"#df2a4c"},detections:{default(){return[]}}},setup(o,{expose:l}){const s=o,{color:C,detections:z}=mt(s),Q=y(null),L=Zt(Q),h=$=>{if(!Q.value)return;const k=Q.value.getContext("2d");if(k&&(Z(),$.length)){const b=$[0].origWidth,S=$[0].origHeight;Q.value.width=L.width.value,Q.value.height=L.height.value;const u=Q.value.width/b,A=Q.value.height/S;$.forEach(ae=>{const{origHeight:p,origWidth:ie,inputWidth:le,inputHeight:re}=ae,[K,w,q,N]=ae.boundingBox,X=Math.round(K*ie/le),F=Math.round(w*p/re),U=Math.round(q*ie/le),B=Math.round(N*p/re),G=X*u,fe=F*A,Ne=U*u,Le=B*A;k.strokeStyle=C.value,k.lineWidth=2,k.beginPath(),k.moveTo(G+5,fe),k.lineTo(Ne-5,fe),k.quadraticCurveTo(Ne,fe,Ne,fe+5),k.lineTo(Ne,Le-5),k.quadraticCurveTo(Ne,Le,Ne-5,Le),k.lineTo(G+5,Le),k.quadraticCurveTo(G,Le,G,Le-5),k.lineTo(G,fe+5),k.quadraticCurveTo(G,fe,G+5,fe),k.closePath(),k.stroke();const Ke=`${ae.label} (${(ae.confidence*100).toFixed(2)}%)`,Te=k.measureText(Ke).width+27,Re=20;let Ve=G,xe=fe-Re-5;xe<0&&(xe=fe+5);const qe=10,Oe=5;k.beginPath(),k.moveTo(Ve+Oe,xe),k.lineTo(Ve+Te+qe*2-Oe,xe),k.quadraticCurveTo(Ve+Te+qe*2,xe,Ve+Te+qe*2,xe+Oe),k.lineTo(Ve+Te+qe*2,xe+Re-Oe),k.quadraticCurveTo(Ve+Te+qe*2,xe+Re,Ve+Te+qe*2-Oe,xe+Re),k.lineTo(Ve+Oe,xe+Re),k.quadraticCurveTo(Ve,xe+Re,Ve,xe+Re-Oe),k.lineTo(Ve,xe+Oe),k.quadraticCurveTo(Ve,xe,Ve+Oe,xe),k.closePath(),k.fillStyle="rgba(255, 255, 255, 0.7)",k.fill(),k.fillStyle="black",k.font="bold 13px sans-serif",k.textAlign="left",k.textBaseline="bottom",k.fillText(Ke,Ve+qe,xe+Re-3)})}},Z=()=>{if(!Q.value)return;const $=Q.value.getContext("2d");$&&$.clearRect(0,0,L.width.value,L.height.value)};return we(z,$=>{xt(()=>{h($)})},{deep:!0,immediate:!0}),l({draw:h,clear:Z}),($,M)=>(r(),g("canvas",{ref_key:"bboxCanvas",ref:Q,class:"canvas-container"},null,512))}}),Ga=Mt(Ci,[["__scopeId","data-v-bb909d51"]]);function $i(){const o=W(()=>typeof window>"u"?!1:[/Android/i,/webOS/i,/iPhone/i,/iPad/i,/iPod/i,/BlackBerry/i,/Windows Phone/i].some(S=>navigator.userAgent.match(S))),l=W(()=>typeof window>"u"?!1:[/Android/i].some(S=>navigator.userAgent.match(S))),s=W(()=>typeof window>"u"?!1:[/iPhone/i].some(S=>navigator.userAgent.match(S))),C=W(()=>typeof window>"u"?!1:[/iPad/i].some(S=>navigator.userAgent.match(S))),z=W(()=>C.value||s.value),Q=W(()=>{var S;if(typeof window>"u")return[0,0];const b=/OS [\d_]+/i;return s.value?((S=navigator.userAgent.match(b))==null?void 0:S[0].substr(3).split("_").map(u=>parseInt(u)))||[0,0]:[0,0]}),L=W(()=>typeof window>"u"?!1:[/Safari/i].some(S=>navigator.userAgent.match(S))),h=W(()=>{if(typeof window>"u")return null;const b=/Version\/(\d+).+Safari/;return navigator.userAgent.match(b)}),Z=W(()=>typeof window>"u"?!1:[/Firefox/i].some(S=>navigator.userAgent.match(S))),$=W(()=>typeof window>"u"?!1:[/Chrome/i].some(S=>navigator.userAgent.match(S))),M=W(()=>{let b=!1;if("maxTouchPoints"in navigator)b=navigator.maxTouchPoints>0;else if("msMaxTouchPoints"in navigator)navigator!==null&&(b=navigator.msMaxTouchPoints>0);else{const S=matchMedia("(pointer:coarse)");if(S&&S.media==="(pointer:coarse)")b=!!S.matches;else if("orientation"in window)b=!0;else{const u=navigator.userAgent;b=/\b(BlackBerry|webOS|iPhone|IEMobile)\b/i.test(u)||/\b(Android|Windows Phone|iPad|iPod)\b/i.test(u)}}return b}),k=W(()=>{const b=typeof document.body.requestFullscreen<"u"||typeof document.body.mozRequestFullScreen<"u"||typeof document.body.webkitRequestFullscreen<"u"||typeof document.body.msRequestFullscreen<"u"||typeof document.exitFullscreen<"u"||typeof document.mozCancelFullScreen<"u"||typeof document.webkitExitFullscreen<"u",[S,u]=Q.value,A=S&&S>=17&&u&&u>=2;return!!(b||!s.value||s.value&&A)});return{isMobile:o,isAndroid:l,isIphone:s,isIpad:C,isAppleMobile:z,iosVersion:Q,isSafari:L,safariVersion:h,isFirefox:Z,isChrome:$,isTouch:M,fsSupported:k}}const Vi=["data-inside-id"],Si={class:"relative player-container-main w-full",style:"background: var(--background-img);"},Pi={class:"relative w-full h-full flex items-center justify-center"},zi={key:1,class:"relative w-full h-full"},Mi={key:0,class:"camera-name text-white"},Ei={class:"video-extras flex items-center justify-center"},Fi={key:0,class:"video-extras-bg text-white p-2"},Ii={key:1,class:"mx-1"},Bi={key:1,class:"absolute w-full h-full flex flex-col items-center justify-center"},Ti={key:0,class:"mt-3 text-white text-sm"},qi={key:4,width:"100%",height:"100%",class:"zones-container polygon-container"},Ai=["d"],Ni=["muted"],Oi={key:2,class:"relative w-full h-full"},Qi=["data-ignore-id"],Di={class:"flex items-center justify-between"},Li={class:"leading-4 flex flex-col p-2"},Ri={key:0,class:"text-left"},Ui={key:0},ji={class:"player-camera-subtitle ml-1"},Zi={key:1},Ki={class:"player-camera-subtitle ml-1"},Wi={class:"player-camera-settings-box flex items-center ml-auto"},Hi=["data-ignore-id"],Yi=5e3,Ji=1e4,Xi=dt({__name:"VPlayer",props:{currentCamera:{},target:{},mode:{},previewSrc:{},showCameraName:{type:Boolean,default:!1},showMode:{type:Boolean,default:!0},showTitle:{type:Boolean,default:!1},showLiveIndicator:{type:Boolean,default:!1},absoluteTitle:{type:Boolean,default:!1},clickableTitle:{type:Boolean,default:!1},enableControl:{type:Boolean,default:!1},autoHideControl:{type:Boolean,default:!0},allowStreamRunningInBg:{type:Boolean,default:!1},border:{type:Boolean,default:!1},borderRadius:{default:3},buttonElevation:{default:"0"},timelineScrolling:{type:Boolean,default:!1},zoomModel:{default:5},shortcuts:{type:Boolean,default:!1},settings:{type:Boolean,default:!1},share:{type:Boolean,default:!1},snapshot:{type:Boolean,default:!1},zoom:{type:Boolean,default:!1},motions:{type:Boolean,default:!1},objects:{type:Boolean,default:!1},zones:{type:Boolean,default:!1},sourceRole:{default:"high-resolution"}},emits:["settings","share","snapshot","resize","zoom-in","zoom-out","fullscreen"],setup(o,{expose:l,emit:s}){var St,Ft;const C=new Wt,{api:z}=ao(),{mobileActive:Q}=to(),{fsSupported:L,isIphone:h,isMobile:Z}=$i(),$=o,{absoluteTitle:M,allowStreamRunningInBg:k,autoHideControl:b,border:S,borderRadius:u,buttonElevation:A,clickableTitle:ae,currentCamera:p,enableControl:ie,target:le,mode:re,previewSrc:K,settings:w,share:q,showTitle:N,snapshot:X,timelineScrolling:F,zoom:U,zoomModel:B,objects:G,motions:fe,zones:Ne,sourceRole:Le,showCameraName:Ke,showMode:Te,showLiveIndicator:Re,shortcuts:Ve}=mt($),xe=s,qe=y(Ao()),Oe=y(),ot=y(null),Ye=y(!1),nt=y(!1),it=y(null),Ze=y(!1),T=y(!1),$t=y(null),st=y(!1),Me=y(!1),Y=y(!0),ee=y(!0),ne=y(!1),pe=y(),me=y(),Se=y(),ue=y(),Ce=y(null),Ge=y([]),v=y(),f=y(!1),oe=y(!1),ce=y(!1),ge=y(!0),J=y(!1),Ee=y(!1),se=y(null),he=y("loading"),We=y(),Fe=y(!1),He=y(!1);let ht,bt,et,_t;C.toggleQueryActivator("getCameraQuery",le.value!=="preview");const Ue=C.getCameraQuery(p),ma=Zt(it),be=Zt(se),{isFullscreen:Qe,toggle:At}=Bn($t);Ot(se,"pause",()=>{J.value=!1}),Ot(se,"play",()=>{J.value=!0}),Ot(se,"loadeddata",()=>{Ee.value=!0,f.value=!1}),Ot(se,"enterpictureinpicture",()=>ce.value=!0),Ot(se,"leavepictureinpicture",()=>ce.value=!1),ie.value&&Ba(ot,x=>{const I=x.target,n=I.closest(`[data-inside-id='${qe.value}']`),P=I.closest(`[data-ignore-id='${qe.value}']`),E=I.closest(".resizable-b");n&&!P&&!E&&!Ye.value&&(b.value&&Vt(),T.value=!T.value)}),((St=Ue==null?void 0:Ue.data.value)==null?void 0:St.interface.streamingMode)==="hls"&&((Ft=se.value)!=null&&Ft.canPlayType("application/vnd.apple.mpegurl"))&&window.WebKitPlaybackTargetAvailabilityEvent&&Ot(se,"webkitplaybacktargetavailabilitychanged",x=>{switch(x.availability){case"available":v.value=!0;break;case"not-available":v.value=void 0;break}});const Je=W(()=>le.value==="stream"&&he.value!=="mjpeg"&&he.value!=="mp4"),Rt=W(()=>navigator.mediaDevices&&le.value==="stream"&&He.value),Ht=W(()=>{var x,I;return!!(he.value==="hls"&&((x=Ue==null?void 0:Ue.data.value)==null?void 0:x.interface.streamingMode)==="hls"&&((I=se.value)!=null&&I.canPlayType("application/vnd.apple.mpegurl"))&&v.value!==void 0)}),Yt=W(()=>document.pictureInPictureEnabled&&!h.value&&le.value==="stream"&&he.value!=="mp4"&&he.value!=="mjpeg"),Ut=W(()=>le.value==="stream"&&he.value!=="mjpeg"&&he.value!=="mp4"),jt=W(()=>!!(Ue!=null&&Ue.isLoading.value||!Ee.value));if(we(f,async x=>{x&&await c(!1,!1)}),we(ma.height,(x,I)=>{xe("resize",x-I)},{deep:!0}),we(Ze,x=>{xt(()=>nt.value=x)}),we(Qe,x=>{xe("fullscreen",x)}),!k.value&&le.value==="stream"&&!Z.value){const x=Tn();we(x,I=>{var n;I==="hidden"?oe.value===!1&&(clearTimeout(bt),bt=setTimeout(()=>{Et()},Ji)):(clearTimeout(bt),oe.value&&((n=Ce.value)==null||n.reconnect()))})}const Jt=async()=>{var Ae;if(ie.value&&b.value&&T.value&&Vt(),await(Ue==null?void 0:Ue.suspense()),ue.value=await z.deviceManager.getCameraByName(p.value),!ue.value)throw new Error("Camera not found!");let x;const I=ue.value.streamSource,n=ue.value.snapshotSource,P=ue.value.highResolutionSource,E=ue.value.midResolutionSource,R=ue.value.lowResolutionSource;if(Le.value==="high-resolution"?P?x=P:(console.warn("High resolution source not found, using stream source instead"),x=I):Le.value==="mid-resolution"?E?x=E:(console.warn("Mid resolution source not found, using stream source instead"),x=I):Le.value==="low-resolution"?R?x=R:(console.warn("Low resolution source not found, using stream source instead"),x=I):Le.value==="snapshot"?n?x=n:(console.warn("Snapshot source not found, using stream source instead"),x=I):x=I,Oe.value=`${p.value.replace(/ /g,"_").toLowerCase()}_${x.name}`,Y.value=!ue.value.hasMotionDetector,ee.value=!ue.value.hasObjectDetector,ue.value.onPropertyChange("hasMotionDetector").subscribe(({newData:ve})=>{Y.value=!ve}),ue.value.onPropertyChange("hasObjectDetector").subscribe(({newData:ve})=>{ee.value=!ve}),!se.value)throw new Error("Video player not found!");Ce.value=ue.value.createSession({mode:re.value||((Ae=Ue==null?void 0:Ue.data.value)==null?void 0:Ae.interface.streamingMode)||"webrtc",sourceName:Oe.value,videoElement:se.value,reconnectInterval:5e3}),Ce.value.addEventListener("error",kt),Ce.value.addEventListener("reconnect",Xt),Ce.value.addEventListener("finishLoading",Gt),Ce.value.connect()},kt=x=>{console.error(p.value,x),he.value="error",He.value=!1,Ee.value=!1,f.value=!1},Xt=()=>{he.value="reconnecting",He.value=!1,Ee.value=!1,f.value=!0},Gt=()=>{He.value=Ce.value.hasBackchannel,he.value=Ce.value.mode,Ee.value=!0,f.value=!1},va=()=>{var x,I;if(se.value){const n=document.createElement("canvas");n.width=se.value.videoWidth,n.height=se.value.videoHeight,(x=n.getContext("2d"))==null||x.drawImage(se.value,0,0,n.width,n.height);const P=n.toDataURL("image/png"),E=`${p.value.replace(/ /g,"_").toLowerCase()}_${new Date().toISOString()}.png`,R=document.createElement("a");R.setAttribute("download",E),R.href=P,document.body.appendChild(R),R.click(),R.remove()}else(I=Se.value)==null||I.download()},Nt=x=>{const I=tt(x);I==null||I.clear()},ea=(x,I)=>{const n=tt(x);n==null||n.draw(I)},pa=async()=>{var x;ne.value||(ne.value=!0,Ge.value=((x=ue.value)==null?void 0:x.activityZones)||[])},fa=()=>{ne.value=!1,Ge.value=[]},ga=x=>{if(!x)return"";const I=x.map(P=>{const E=Math.round(P[0]/100*be.width.value),R=Math.round(P[1]/100*be.height.value);return`${E},${R}`});if(I.length===0)return"";let n=`M ${I[0]}`;for(let P=1;P<I.length;P++)n+=` L ${I[P]}`;return n+=" Z",n},ya=async()=>{var x,I;st.value||(Nt("motion"),st.value=!0,await((x=ue.value)==null?void 0:x.start()),et=(I=ue.value)==null?void 0:I.onMotionDetected.subscribe(n=>{ea("motion",n.detections)}))},ha=async()=>{var x,I;Me.value||(Nt("object"),Me.value=!0,await((x=ue.value)==null?void 0:x.start()),_t=(I=ue.value)==null?void 0:I.onObjectDetected.subscribe(n=>{ea("object",n.detections)}))},ta=()=>{var x;Nt("motion"),st.value=!1,Me.value||(x=ue.value)==null||x.stop(),et==null||et.unsubscribe()},ba=()=>{var x;Nt("object"),Me.value=!1,st.value||(x=ue.value)==null||x.stop(),_t==null||_t.unsubscribe()},tt=x=>x==="motion"?pe.value:me.value,Ie=async()=>{var x;if(se.value)try{await se.value.play()}catch(I){if(!((x=se.value)!=null&&x.muted))return se.value.muted=!0,Ie();console.warn(p.value,I)}},Vt=()=>{clearTimeout(ht),ht=setTimeout(()=>{T.value=!1},Yi)},_a=()=>{var x;(x=se.value)==null||x.webkitShowPlaybackTargetPicker()},ka=()=>{L.value?At():Qe.value=!Qe.value},i=x=>{ge.value=x!==void 0?x:!ge.value},c=async(x,I=!1)=>{var n,P;if((n=Ce.value)!=null&&n.micTransceiver)if(Fe.value=x!==void 0?x:!Fe.value,Fe.value)try{We.value=await navigator.mediaDevices.getUserMedia({audio:!0});const E=We.value.getAudioTracks()[0];ge.value=!I,Ce.value.micTransceiver.sender.replaceTrack(E)}catch(E){console.warn(p.value,E)}else(P=We.value)==null||P.getTracks().forEach(E=>E.stop()),We.value=void 0,Ce.value.micTransceiver.sender.replaceTrack(null)},D=()=>{var x;document.pictureInPictureElement?document.exitPictureInPicture():document.pictureInPictureEnabled&&((x=se.value)==null||x.requestPictureInPicture())},ye=()=>{se.value&&(J.value?se.value.pause():Ie())},de=()=>{oe.value=!0,Ee.value=!1,ge.value=!0},Et=()=>{var x;de(),(x=Ce.value)==null||x.close()};return no(async()=>{try{le.value==="stream"&&await Jt()}catch(x){console.error(x)}}),so(()=>{var x,I,n,P;Et(),(x=Ce.value)==null||x.removeEventListener("error",kt),(I=Ce.value)==null||I.removeEventListener("reconnect",Xt),(n=Ce.value)==null||n.removeEventListener("finishLoading",Gt),et==null||et.unsubscribe(),_t==null||_t.unsubscribe(),(P=ue.value)==null||P.close(),ue.value=void 0}),l({toggleMicrophone:c,toggleMute:i}),(x,I)=>{const n=xi,P=_i,E=vi;return r(),g("div",{ref_key:"playerContainer",ref:it,"data-inside-id":e(qe),class:"player-container w-full relative",style:Bt(`border-radius: ${e(u)}px; border: ${e(S)?1:0}px solid var(--border);`)},[m("div",{ref_key:"fakeClick",ref:ot,class:"fake-click"},null,512),m("div",Si,[m("div",{ref_key:"videoPlayerWrapper",ref:$t,class:Dt(["w-full h-full",{"fullscreen-video":!e(L)&&e(Qe)}])},[m("div",Pi,[m("div",{class:"video-container w-full aspect-video",style:Bt(!e(L)&&e(Qe)?"width: unset":void 0)},[a(oo,{name:"fade",mode:"out-in"},{default:t(()=>[e(T)&&e(ie)?(r(),V(n,{key:0,"data-ignore-id":e(qe),loading:e(jt),"show-rewind":"","show-fast-forward":"","show-volume":e(Je),"show-play-pause":e(Ut),"show-microphone":e(Rt),"show-airplay":e(Ht)&&e(Ut),"show-pip":e(Yt),"show-fs":e(L),"is-fs":e(Qe),"is-pip":e(ce),muted:e(ge),playing:e(J),"mic-active":e(Fe),"collapsed-controls":["airplay"],onToggleMute:i,onTogglePlay:ye,onToggleMicrophone:I[0]||(I[0]=()=>c(void 0,!0)),onToggleAirplay:_a,onTogglePictureInPicture:D,onToggleFullscreen:ka},null,8,["data-ignore-id","loading","show-volume","show-play-pause","show-microphone","show-airplay","show-pip","show-fs","is-fs","is-pip","muted","playing","mic-active"])):O("",!0)]),_:1}),e(Ve)?(r(),V(P,{key:0,"current-camera":e(p),"adding-shortcuts":e(Ye),"click-inside-id":e(qe)},null,8,["current-camera","adding-shortcuts","click-inside-id"])):O("",!0),e(le)==="stream"?(r(),g("div",zi,[e(Ke)?(r(),g("div",Mi,d(e(p)),1)):O("",!0),m("div",Ei,[e(Te)&&!e(Q)?(r(),g("div",Fi,d(e(he).toUpperCase()),1)):O("",!0),e(Te)&&e(Re)?(r(),g("div",Ii)):O("",!0),e(Re)?(r(),g("div",{key:2,class:"live-indicator elevation-3",style:Bt({background:e(Ee)?"red":"gray"})},null,4)):O("",!0)]),e(jt)?(r(),g("div",Bi,[a(Ct,{color:"#df2a4c",indeterminate:""}),e(f)?(r(),g("span",Ti,d(x.$t("components.player.reconnecting"))+"...",1)):O("",!0)])):O("",!0),e(fe)&&!e(Y)?(r(),V(Ga,{key:2,ref_key:"motionCanvas",ref:pe},null,512)):O("",!0),e(G)&&!e(ee)?(r(),V(Ga,{key:3,ref_key:"objectCanvas",ref:me,color:"green"},null,512)):O("",!0),e(Ne)?(r(),g("svg",qi,[(r(!0),g(ke,null,$e(e(Ge),(R,Ae)=>(r(),g("path",{key:Ae,d:ga(R.points.map(ve=>ve)),class:Dt({polygon:R.filter=="include"&&!R.isPrivacyMask,"polygon-exclude":R.filter=="exclude"&&!R.isPrivacyMask,"polygon-privacy":R.isPrivacyMask,dash:R.type==="intersect"&&!R.isPrivacyMask})},null,10,Ai))),128))])):O("",!0),m("video",{id:"videoPlayer",ref_key:"videoPlayer",ref:se,playsinline:"",autoplay:"",preload:"auto",muted:e(ge),class:"video-player"},null,8,Ni)])):(r(),g("div",Oi,[a($o,{ref_key:"cameraSnapshot",ref:Se,"camera-name":e(p),src:e(K)},null,8,["camera-name","src"])]))],4)])],2)]),e(N)?(r(),g("div",{key:0,"data-ignore-id":e(qe),class:Dt(["p-2 px-3",{"player-header-absolute":e(M),"player-header-container":!e(M)}])},[m("div",Di,[a(te,{class:Dt(e(M)?"":"player-title-text"),style:{padding:"0"},ripple:e(M),color:e(M)?"#212121":void 0,height:"100%",variant:e(M)?"elevated":"text",elevation:e(A),rounded:"",to:e(ae)?`/cameras/${e(p)}`:void 0},{default:t(()=>[m("div",Li,[m("h3",{class:"player-camera-title",style:Bt(`color: ${e(M)?"#ffffff":"color: var(--color);"}`)},d(e(p)),5),e(le)==="stream"?(r(),g("div",Ri,[e(F)?(r(),g("div",Ui,[a(Ct,{size:"10",width:"1",indeterminate:"",color:"#0173ff"},{default:t(()=>[a(j,{size:"20",color:"#0173ff",icon:e(ja)},null,8,["icon"])]),_:1}),m("span",ji,d(x.$t("general.loading")),1)])):(r(),g("div",Zi,[a(Ct,{size:"10",width:"1","model-value":100,color:"red"},{default:t(()=>[a(j,{size:"20",color:"red",icon:e(ja)},null,8,["icon"])]),_:1}),m("span",Ki,d(x.$t("components.player.live")),1)]))])):O("",!0)])]),_:1},8,["class","ripple","color","variant","elevation","to"]),m("div",Wi,[e(U)?(r(),V(te,{key:0,size:"28",density:"compact",disabled:e(B)==1,variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[1]||(I[1]=H(R=>xe("zoom-out"),["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e(kn)},null,8,["icon"])]),_:1},8,["disabled","variant","icon","elevation","color"])):O("",!0),e(U)?(r(),V(te,{key:1,size:"28",density:"compact",disabled:e(B)==5,variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[2]||(I[2]=H(R=>xe("zoom-in"),["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e(wn)},null,8,["icon"])]),_:1},8,["disabled","variant","icon","elevation","color"])):O("",!0),e(q)?(r(),V(te,{key:2,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[3]||(I[3]=H(R=>xe("share"),["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e(xn)},null,8,["icon"])]),_:1},8,["variant","icon","elevation","color"])):O("",!0),e(X)?(r(),V(te,{key:3,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[4]||(I[4]=H(R=>va(),["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e(Cn)},null,8,["icon"])]),_:1},8,["variant","icon","elevation","color"])):O("",!0),e(fe)&&!e(Y)?(r(),V(te,{key:4,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[5]||(I[5]=H(R=>e(st)?ta():ya(),["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e($n),disabled:!e(st)},null,8,["icon","disabled"])]),_:1},8,["variant","icon","elevation","color"])):O("",!0),e(G)&&!e(ee)?(r(),V(te,{key:5,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[6]||(I[6]=H(R=>e(Me)?ba():ha(),["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e(Vn),disabled:!e(Me)},null,8,["icon","disabled"])]),_:1},8,["variant","icon","elevation","color"])):O("",!0),e(Ne)?(r(),V(te,{key:6,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[7]||(I[7]=H(R=>e(ne)?fa():pa(),["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e(Sn),disabled:!e(ne)},null,8,["icon","disabled"])]),_:1},8,["variant","icon","elevation","color"])):O("",!0),e(Ve)?(r(),V(te,{key:7,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[8]||(I[8]=H(R=>Ye.value=!e(Ye),["prevent"]))},{default:t(()=>[a(j,{size:"20"},{default:t(()=>[_(d(e(Ye)?e(Pn):e(zn)),1)]),_:1})]),_:1},8,["variant","icon","elevation","color"])):O("",!0),e(w)&&e(No)(void 0,"admin")?(r(),V(te,{key:8,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(A),color:e(M)?"#212121":void 0,class:"ml-1",onClick:I[9]||(I[9]=H(R=>Ze.value=!0,["prevent"]))},{default:t(()=>[a(j,{size:"20",icon:e(Ia)},null,8,["icon"])]),_:1},8,["variant","icon","elevation","color"])):O("",!0)])])],10,Qi)):O("",!0),e(Ze)?(r(),g("div",{key:1,"data-ignore-id":e(qe)},[a(E,{"camera-name":e(p),show:e(nt),onClose:I[10]||(I[10]=R=>Ze.value=!1)},null,8,["camera-name","show"])],8,Hi)):O("",!0)],12,Vi)}}}),Oa=Mt(Xi,[["__scopeId","data-v-842ac894"]]);export{Wt as C,Oa as _,ko as a,Ga as b,fu as c,vi as d,bs as e,Ya as g,$i as u};
|