@camera.ui/server 0.0.97 → 0.0.100
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/{404-4LnwoCjV.js → 404-D8RFqFtN.js} +1 -1
- package/dist/interface/assets/{About-bvLBtUy2.js → About-CjPUstm7.js} +1 -1
- package/dist/interface/assets/Adminpanel-DsaHh-eh.js +1 -0
- package/dist/interface/assets/Automation-CdDySbn-.js +2 -0
- package/dist/interface/assets/{Automations-BpLZVUAZ.js → Automations-SZ6YPt__.js} +1 -1
- package/dist/interface/assets/{Camera-1ii5b47V.js → Camera-CA-QFUXm.js} +2 -2
- package/dist/interface/assets/CameraConsole-BuPu7Vkg.js +7 -0
- package/dist/interface/assets/Cameras-Dq22gBdr.js +656 -0
- package/dist/interface/assets/Camview-B89OyWl0.js +1 -0
- package/dist/interface/assets/{Camview-O0phps-e.css → Camview-DpSC1WEC.css} +1 -1
- package/dist/interface/assets/Config-CxQeXv7R.js +2 -0
- package/dist/interface/assets/{ConfigActionCameraControl-BIwMf0Pc.js → ConfigActionCameraControl-Bk_xZEzK.js} +1 -1
- package/dist/interface/assets/{ConfigActionDelay-B8IeqrQl.js → ConfigActionDelay-rw5LkC5w.js} +1 -1
- package/dist/interface/assets/{ConfigActionHttp-ChmRoLGn.js → ConfigActionHttp-DaceGA-q.js} +1 -1
- package/dist/interface/assets/{ConfigActionImageInput-BXGvomRn.js → ConfigActionImageInput-DltWuY4s.js} +1 -1
- package/dist/interface/assets/{ConfigActionNotification-IyTVckPy.js → ConfigActionNotification-B_RqqBYf.js} +1 -1
- package/dist/interface/assets/{ConfigActionOutput-puWLDmCK.js → ConfigActionOutput-rcLwE5fC.js} +1 -1
- package/dist/interface/assets/{ConfigActionPlugin-CJcmszAL.js → ConfigActionPlugin-BmeA5hq9.js} +1 -1
- package/dist/interface/assets/{ConfigActionSensor-TP-clDuT.js → ConfigActionSensor-B46DLHLE.js} +1 -1
- package/dist/interface/assets/{ConfigActionSnapshot-D9qfVi25.js → ConfigActionSnapshot-mXndDdgD.js} +1 -1
- package/dist/interface/assets/{ConfigActionVariable-m9pSdZRi.js → ConfigActionVariable-RjcIOgcK.js} +1 -1
- package/dist/interface/assets/{ConfigConditionIfElse-qGQl3t_X.js → ConfigConditionIfElse-C1huxVbZ.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSensorState-BbYFiyQO.js → ConfigConditionSensorState-ByPrF_oE.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSwitch-Fmxop0ZO.js → ConfigConditionSwitch-D0KCLIn9.js} +1 -1
- package/dist/interface/assets/{ConfigConditionTime-pVizMny5.js → ConfigConditionTime-DMcoYQPg.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerDetection-5qawJGDL.js → ConfigTriggerDetection-DX67r7Ei.js} +1 -1
- package/dist/interface/assets/ConfigTriggerGeofence-iOY28Af8.js +1 -0
- package/dist/interface/assets/{ConfigTriggerManual-Cdl-639w.js → ConfigTriggerManual-BofNKINz.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSchedule-BeMgx20W.js → ConfigTriggerSchedule-BqiAXGxy.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSensor-CdMpLf9A.js → ConfigTriggerSensor-cCSBON5J.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSystem-Df5J0gpZ.js → ConfigTriggerSystem-DsiOLb60.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerWebhook-Cbl7Xnqa.js → ConfigTriggerWebhook-Dg5d6RiU.js} +1 -1
- package/dist/interface/assets/Console-D8WZI01G.js +6 -0
- package/dist/interface/assets/{CuiActionButton-vWfTn9v6.js → CuiActionButton-eLmRgo3n.js} +1 -1
- package/dist/interface/assets/{CuiAvatar-CgMxEmy_.js → CuiAvatar-CnTqaIix.js} +1 -1
- package/dist/interface/assets/{CuiBBoxPlayground-JxlxAwEH.js → CuiBBoxPlayground-C_Ne315a.js} +1 -1
- package/dist/interface/assets/CuiBottomSheet-DPRsmfpj.js +1 -0
- package/dist/interface/assets/{CuiBottomSheet-DeatNfwe.js → CuiBottomSheet-mLC2sZgD.js} +1 -1
- package/dist/interface/assets/{CuiCameraCard-VcBtQNrg.css → CuiCameraCard-D3pxt8gc.css} +1 -1
- package/dist/interface/assets/CuiCameraCard-OBn8Nb9y.js +1 -0
- package/dist/interface/assets/{CuiCameraPipCard-mI-fq1HA.js → CuiCameraPipCard-CW0ifYUy.js} +1 -1
- package/dist/interface/assets/{CuiCameraRecordings-DdHzzlQ0.js → CuiCameraRecordings-rS89MUeZ.js} +1 -1
- package/dist/interface/assets/{CuiCameraShares-Ccl_R18x.js → CuiCameraShares-DhxkZYoU.js} +1 -1
- package/dist/interface/assets/{CuiCameraSnapshot-BSHFq9Wu.js → CuiCameraSnapshot-vsRyJQpZ.js} +1 -1
- package/dist/interface/assets/{CuiCameraTable-vtE18b9O.js → CuiCameraTable-D1tc874k.js} +2 -2
- package/dist/interface/assets/{CuiFloatingButton-C4icz7qO.js → CuiFloatingButton-BoUfL0hi.js} +1 -1
- package/dist/interface/assets/{CuiImage-BW_rXmKP.js → CuiImage-Dqy-7RA9.js} +1 -1
- package/dist/interface/assets/{CuiMenu-BnlDnhe4.js → CuiMenu-DMY8m12e.js} +1 -1
- package/dist/interface/assets/{CuiPluginCard-BjIla0Lh.js → CuiPluginCard-BApYHaYK.js} +2 -2
- package/dist/interface/assets/{CuiPluginOAuthButton-BjITZzrH.js → CuiPluginOAuthButton-Dzs0u-yw.js} +2 -2
- package/dist/interface/assets/{CuiQRCode-CdXrr9fF.js → CuiQRCode-Dar7Jb_i.js} +1 -1
- package/dist/interface/assets/{CuiRecordingsGrid-DEMp6jb1.js → CuiRecordingsGrid-DurKs7YQ.js} +1 -1
- package/dist/interface/assets/{CuiSchema-B5BebPPL.js → CuiSchema-Cssi_QZC.js} +1 -1
- package/dist/interface/assets/{CuiTopNavbarItem-C1Jf6-v6.js → CuiTopNavbarItem-Cq6_w74W.js} +1 -1
- package/dist/interface/assets/{CuiTopbarSlot-DBQggZ_k.js → CuiTopbarSlot-DKgEs0YR.js} +1 -1
- package/dist/interface/assets/{Faces-BuDpT1bS.js → Faces-DP6AvOBj.js} +1 -1
- package/dist/interface/assets/{FirstSteps-BA2GcdeZ.js → FirstSteps-BALuuLPG.js} +1 -1
- package/dist/interface/assets/Instances-DqqVwkeN.js +1 -0
- package/dist/interface/assets/{Menu-D7K5vheb.js → Menu-Dn4PBKpX.js} +1 -1
- package/dist/interface/assets/{OAuthDeviceFlow-hX46XrKS.js → OAuthDeviceFlow-BADWIcbz.js} +1 -1
- package/dist/interface/assets/Plugin-x4MnVpDQ.js +1 -0
- package/dist/interface/assets/PluginConsole-dpqKoxaP.js +7 -0
- package/dist/interface/assets/{PluginSchema-0aNy8YQq.js → PluginSchema-fi8Qsc2m.js} +1 -1
- package/dist/interface/assets/{Plugins-DprSQtTi.js → Plugins-Bqj_gBEG.js} +2 -2
- package/dist/interface/assets/Recordings-B1VQ1Yv3.js +1 -0
- package/dist/interface/assets/Settings-CYuslqlv.js +1 -0
- package/dist/interface/assets/{SettingsAccount-C1SbeJeY.js → SettingsAccount-BWzvGQ3j.js} +1 -1
- package/dist/interface/assets/SettingsAccount-CGSm6KyF.js +1 -0
- package/dist/interface/assets/SettingsAppearance-BZdc6hOW.js +1 -0
- package/dist/interface/assets/{SettingsAppearance-BNnf1b_H.js → SettingsAppearance-DWb6W8lv.js} +1 -1
- package/dist/interface/assets/{SettingsBackup-DPBoJMtH.js → SettingsBackup-DvTuMs1p.js} +1 -1
- package/dist/interface/assets/{SettingsNotifications-CLJy9x9n.js → SettingsNotifications-Ckbz5l12.js} +1 -1
- package/dist/interface/assets/{SettingsRecordings-N7Z5TfSc.js → SettingsRecordings-DpdRTfkH.js} +1 -1
- package/dist/interface/assets/{SettingsRemote-COUnUIJS.js → SettingsRemote-DuLKYaeG.js} +1 -1
- package/dist/interface/assets/{SettingsSystem-DQpLhvrZ.js → SettingsSystem-BpLtRIrb.js} +2 -2
- package/dist/interface/assets/{SettingsUsers-YTqxZlmG.js → SettingsUsers-BTd-ieHZ.js} +1 -1
- package/dist/interface/assets/Terminal-D8zC4BIF.js +4 -0
- package/dist/interface/assets/{VariableInput-Djug7qo2.js → VariableInput-NAuwYlcN.js} +1 -1
- package/dist/interface/assets/{VariableSuggestions-BIqdHoyn.js → VariableSuggestions-RN6Jmb60.js} +1 -1
- package/dist/interface/assets/{VersionsHandler-BxEnoZuK.js → VersionsHandler-BZtmjoFr.js} +2 -2
- package/dist/interface/assets/Workers-BPQIxEg9.js +1 -0
- package/dist/interface/assets/{api-BRFaSK8y.js → api-BXAjPStr.js} +1 -1
- package/dist/interface/assets/{api-Dx-gynar.css → api-Cy-xAQGE.css} +1 -1
- package/dist/interface/assets/api-ip5Qz2cl.js +2 -0
- package/dist/interface/assets/{auth-BXBwiBIH.js → auth-BL6McQ6L.js} +1 -1
- package/dist/interface/assets/{automations-Cg4kEME7.js → automations-CSeo6eSD.js} +1 -1
- package/dist/interface/assets/{automations-Z2hMedMg.js → automations-DdW_9hGf.js} +1 -1
- package/dist/interface/assets/{backup-yOGR7lqI.js → backup-DaOmyROh.js} +1 -1
- package/dist/interface/assets/{cameras-DHOi-zot.js → cameras-CpcEVB7O.js} +1 -1
- package/dist/interface/assets/cameras.schema-DdfxDJ8z.js +1 -0
- package/dist/interface/assets/cloudHandoff-DJ1YT2O6.js +1 -0
- package/dist/interface/assets/{deviceId-Bn_6G8Gz.js → deviceId-CgqSyDFE.js} +1 -1
- package/dist/interface/assets/{hasPermission-DjEBddex.js → hasPermission-CPbg1G8S.js} +1 -1
- package/dist/interface/assets/{instances-CGhiomVU.js → instances-AgSMbtUw.js} +1 -1
- package/dist/interface/assets/locale-De9OgPRf.js +1 -0
- package/dist/interface/assets/main-BsF04agf.js +3 -0
- package/dist/interface/assets/{notifications-DDYgdk1C.js → notifications-Bt2rS0oF.js} +1 -1
- package/dist/interface/assets/{plugins-DFu-PyaK.js → plugins-djfAdtBz.js} +1 -1
- package/dist/interface/assets/{round-restart-alt-X9I15hRL.js → round-restart-alt-DAOUjIH0.js} +1 -1
- package/dist/interface/assets/{router-DMYEhxdj.js → router-ygEo0Buu.js} +2 -2
- package/dist/interface/assets/{routerState-B_z68YwD.js → routerState-D7nuOTwH.js} +1 -1
- package/dist/interface/assets/{server-BpIPZq5L.js → server-viIVfNS-.js} +1 -1
- package/dist/interface/assets/{shares-TtxtbPZt.js → shares-DSm5T_aw.js} +1 -1
- package/dist/interface/assets/{theme-MOk5mCsC.js → theme-C1AnsszZ.js} +1 -1
- package/dist/interface/assets/types-Cq5Oxm4w.js +1 -0
- package/dist/interface/assets/{ui-CY2-_evw.js → ui-DH2DdvbF.js} +1 -1
- package/dist/interface/assets/{useBiometricCredentials-Boyb2klA.js → useBiometricCredentials-B0HhBwzS.js} +1 -1
- package/dist/interface/assets/{useCameraOptions-BOSJBPuE.js → useCameraOptions-DWRGUM7f.js} +1 -1
- package/dist/interface/assets/{useCuiCameraDrawer-BmdGPeEe.js → useCuiCameraDrawer-D2QdlhvQ.js} +1 -1
- package/dist/interface/assets/{useCuiDialog-DOcwIZA3.js → useCuiDialog-D1vgIZ97.js} +1 -1
- package/dist/interface/assets/{useFileDownload-CRB3k3lW.js → useFileDownload-BDSINVzz.js} +1 -1
- package/dist/interface/assets/{useLogsSocket-B1L7x9fB.js → useLogsSocket-Dki7w7JS.js} +2 -2
- package/dist/interface/assets/{useSharedComposables-THEdrAoU.js → useSharedComposables-DNGRhsgh.js} +1 -1
- package/dist/interface/assets/useStreamStatus-oYi-uo1K.js +1 -0
- package/dist/interface/assets/{users.schema-DXBgo_V0.js → users.schema-C48akApP.js} +1 -1
- package/dist/interface/assets/{vendor-cameraui-CUPAufpt.js → vendor-cameraui-dvS1_qYI.js} +1 -1
- package/dist/interface/assets/vendor-core-Dpu78NB8.js +1 -0
- package/dist/interface/assets/{vendor-leaflet-7XZntJjG.js → vendor-leaflet-_2Z0GiOD.js} +1 -1
- package/dist/interface/assets/{vendor-primevue-Bs3kBqxF.js → vendor-primevue-ltaQolO-.js} +79 -79
- package/dist/interface/assets/view-grid-Kk3PF5wP.js +1 -0
- package/dist/interface/assets/view-grid-ftaUV_r1.css +1 -0
- package/dist/interface/index.html +42 -42
- package/dist/interface/sw.js +1 -1
- package/dist/server/package.json +11 -12
- package/dist/server/requirements.txt +1 -1
- package/dist/server/src/_camera_ui_tools/camera_ui_rpc/handler.py +6 -2
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/config.py +0 -4
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/device.py +0 -2
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/streaming.py +0 -6
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/internal/camera_config_internal.py +0 -2
- package/dist/server/src/api/controllers/cameras.controller.js +0 -5
- package/dist/server/src/api/controllers/cameras.controller.js.map +1 -1
- package/dist/server/src/api/database/index.js +1 -7
- package/dist/server/src/api/database/index.js.map +1 -1
- package/dist/server/src/api/index.js +1 -1
- package/dist/server/src/api/index.js.map +1 -1
- package/dist/server/src/api/schemas/cameras.schema.d.ts +0 -9
- package/dist/server/src/api/schemas/cameras.schema.js +0 -8
- package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
- package/dist/server/src/api/services/cameras.service.js +0 -9
- package/dist/server/src/api/services/cameras.service.js.map +1 -1
- package/dist/server/src/api/utils/regex.d.ts +0 -1
- package/dist/server/src/api/utils/regex.js +0 -1
- package/dist/server/src/api/utils/regex.js.map +1 -1
- package/dist/server/src/camera/decoder/worker.js +0 -3
- package/dist/server/src/camera/decoder/worker.js.map +1 -1
- package/dist/server/src/manager/discoveryManager.js +0 -5
- package/dist/server/src/manager/discoveryManager.js.map +1 -1
- package/dist/server/src/plugins/runtime/python/camera/utils.py +0 -8
- package/dist/server/src/plugins/runtime/python/proxy/camera_device.py +0 -1
- package/dist/server/src/utils/camera.js +2 -8
- package/dist/server/src/utils/camera.js.map +1 -1
- package/package.json +11 -12
- package/dist/interface/assets/Adminpanel-CWb2ZPPG.js +0 -1
- package/dist/interface/assets/Automation-C25AZETJ.js +0 -2
- package/dist/interface/assets/CameraConsole-ep5CUZNu.js +0 -7
- package/dist/interface/assets/Cameras-vPU6uknc.js +0 -656
- package/dist/interface/assets/Camview-D2ON2UGk.js +0 -1
- package/dist/interface/assets/Config-BQQkw0Ol.js +0 -2
- package/dist/interface/assets/ConfigTriggerGeofence-D7xWoEKp.js +0 -1
- package/dist/interface/assets/Console-C9gkw0lo.js +0 -6
- package/dist/interface/assets/CuiBottomSheet-Crtral92.js +0 -1
- package/dist/interface/assets/CuiCameraCard-BQpPhbFu.js +0 -1
- package/dist/interface/assets/Instances-CRywvMB3.js +0 -1
- package/dist/interface/assets/Plugin-fmS65xcP.js +0 -1
- package/dist/interface/assets/PluginConsole-BlNqePgI.js +0 -7
- package/dist/interface/assets/Recordings-DX54fvB1.js +0 -1
- package/dist/interface/assets/Settings-CLAZVcfy.js +0 -1
- package/dist/interface/assets/SettingsAccount-CXmg2Mcz.js +0 -1
- package/dist/interface/assets/SettingsAppearance-C8m7xHUu.js +0 -1
- package/dist/interface/assets/Terminal-Bw7lYJBM.js +0 -4
- package/dist/interface/assets/Workers-eBjEKjQP.js +0 -1
- package/dist/interface/assets/api-CxmpI477.js +0 -2
- package/dist/interface/assets/cameras.schema-fPR1KOyp.js +0 -1
- package/dist/interface/assets/cloudHandoff-BJ8olRtK.js +0 -1
- package/dist/interface/assets/locale-CKgqENB3.js +0 -1
- package/dist/interface/assets/main-8r8D2YqX.js +0 -3
- package/dist/interface/assets/types-CRlXpmFA.js +0 -1
- package/dist/interface/assets/useStreamStatus-OmVyef54.js +0 -1
- package/dist/interface/assets/vendor-core-Cmu2BAxm.js +0 -1
- package/dist/interface/assets/view-grid-C9udm-L-.js +0 -1
- package/dist/interface/assets/view-grid-CdZOfBph.css +0 -1
- /package/dist/interface/assets/{logo-512-DLKVOU2S.png → error-256-DLKVOU2S.png} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{S as e}from"./vendor-TwHhULaP.js";import{C as t,D as n,E as r,S as i,T as a,_ as ee,a as te,b as ne,c as re,d as ie,f as ae,g as oe,h as se,i as ce,l as le,m as o,n as ue,o as s,p as de,r as fe,s as pe,t as me,u as he,v as ge,w as c,x as _e,y as ve}from"./vendor-cameraui-CUPAufpt.js";import{_ as l,a as u,b as d,c as f,d as ye,f as be,g as xe,h as p,i as m,l as Se,m as h,n as g,o as _,p as v,r as y,s as b,t as x,u as Ce,v as S,x as C,y as we}from"./vendor-zod-V2qTUMVc.js";p({tempToken:S().trim().min(1,`Temporary token is required`),code:S().trim().min(1,`Code is required`)}).strict(),p({code:S().trim().length(6,`Code must be 6 digits`)}).strict(),p({code:S().trim().min(1,`Code is required`)}).strict(),p({code:S().trim().min(1,`Code is required`)}).strict(),p({grant_type:S().optional(),username:S().trim().min(1,`Username is required`),password:S().min(1,`Password is required`),scope:S().optional(),client_id:S().optional(),client_secret:S().optional()}),p({refresh_token:S().min(1,`Refresh token is required`)}),p({id:S()});function w(e){let t=[`kasa://`,`nest:`,`ring:`,`tapo://`];return e.some(e=>t.some(t=>e.startsWith(t)))}var Te=[`#df2a4c`,`#2a7fdf`,`#2adf7f`,`#df7f2a`,`#7f2adf`,`#2adfdf`,`#df2adf`,`#7fdf2a`];function Ee(){return Te[Math.floor(Math.random()*Te.length)]}function De(){return{name:`Default Zone`,points:[[0,0],[100,0],[100,100],[0,100]],type:`contain`,filter:`include`,labels:[`motion`,`person`,`vehicle`,`animal`],isPrivacyMask:!1,color:Ee()}}p({enabled:b().default(!1)}).strict();var Oe=S().trim().min(1,`Detection label is required`),T=we([h(),h()]),E=p({name:S().trim().min(1,`Zone Name is required`),points:T.array().min(3,`At least 3 points are required`),type:d([v(`intersect`),v(`contain`)]),filter:d([v(`include`),v(`exclude`)]),labels:Oe.array(),isPrivacyMask:b(),color:S().trim().regex(/^#([0-9A-Fa-f]{3}){1,2}$/,`Must be a valid hex color (e.g. #FF0000 or #F00)`).default(`#df2a4c`)}).array(),D=p({name:S().trim().min(1,`Line Name is required`),points:we([T,T]),direction:d([v(`both`),v(`a-to-b`),v(`b-to-a`)]),labels:Oe.array(),color:S().trim().regex(/^#([0-9A-Fa-f]{3}){1,2}$/,`Must be a valid hex color (e.g. #FF0000 or #F00)`).default(`#df2a4c`)}).array(),O=p({motion:p({resolution:d([v(`low`),v(`medium`),v(`high`)]),timeout:h().min(10,`Minimum 10 seconds`)}),object:p({confidence:h().min(.3,`Minimum 0.3`).max(1,`Maximum 1`)}),audio:p({minDecibels:h().min(-100,`Minimum -100 dBFS`).max(0,`Maximum 0 dBFS`),timeout:h().min(10,`Minimum 10 seconds`)}),sensor:p({timeout:h().min(10,`Minimum 10 seconds`),triggers:_(p({sensorType:S().trim().min(1,`Sensor type is required`),sensorName:S().trim().min(1,`Sensor name is required`),pluginId:S().trim().min(1,`Plugin ID is required`)})).default([])}),cascadeDetection:b().default(!0),cascadeTimeout:h().min(1,`Minimum 1 second`).max(300,`Maximum 300 seconds`).default(10),snooze:b().default(!1)}),ke={enabled:!1,targetLabels:[`person`],minConfidence:.5,triggerDeadZone:.05,returnToHome:!1,homeWaitMs:1e4},Ae=p({enabled:b().default(!1),targetLabels:S().trim().min(1,`Target label is required`).array().default([`person`]),minConfidence:h().min(.3,`Minimum 0.3`).max(1,`Maximum 1`).default(.5),triggerDeadZone:h().min(0,`Minimum 0`).max(.3,`Maximum 0.3`).default(.05),returnToHome:b().default(!1),homeWaitMs:h().min(1e3,`Minimum 1000 ms`).max(6e4,`Maximum 60000 ms`).default(1e4)}),k=d([v(`high-resolution`),v(`mid-resolution`),v(`low-resolution`),v(`snapshot`)]),je=d([v(`high-resolution`),v(`mid-resolution`),v(`low-resolution`)]),A=d([v(`bubble://`),v(`cui://`),v(`doorbird://`),v(`dvrip://`),v(`eseecloud://`),v(`ffmpeg:`),v(`flussonic://`),v(`gopro://`),v(`hass:`),v(`homekit://`),v(`http://`),v(`https://`),v(`httpx://`),v(`isapi://`),v(`ivideon:`),v(`kasa://`),v(`nest:`),v(`onvif://`),v(`ring:`),v(`roborock://`),v(`rtmp://`),v(`rtsp://`),v(`rtspx://`),v(`tapo://`),v(`tcp://`),v(`tuya://`),v(`xiaomi://`),v(`yandex:`),v(`webrtc:`),v(`webtorrent:`),v(`wyze://`)]),Me=A.options.map(e=>e.value),Ne=RegExp(`^(${Me.join(`|`)})`),Pe=S().refine(e=>{if(!Ne.test(e))return!1;try{return new URL(e),!0}catch{return!1}},{message:`Invalid URL format or unsupported protocol`}),Fe=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Camera Source Name is required`).transform(e=>e.replace(/ /g,`_`).toLowerCase()),role:k,useForSnapshot:b().default(!1),hotMode:b().default(!0),preload:b().default(!0),prebuffer:b().default(!1),urls:Pe.array().min(1,`At least one valid URL is required`),childSourceId:S().trim().min(1,`Child Source ID is required`).optional()}).strict(),Ie=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Camera Source Name is required`).transform(e=>e.replace(/ /g,`_`).toLowerCase()),role:k,useForSnapshot:b().default(!1),hotMode:b().default(!0),preload:b().default(!0),prebuffer:b().default(!1),urls:Pe.array().min(1,`At least one valid URL is required`),childSourceId:S().trim().min(1,`Child Source ID is required`).optional()}).strict(),j=p({id:S(),name:S().trim()}),Le=p({motion:j.optional(),object:j.optional(),audio:j.optional(),face:j.optional(),licensePlate:j.optional(),ptz:j.optional(),battery:j.optional(),cameraController:j.optional(),classifier:j.array().optional(),light:j.array().optional(),siren:j.array().optional(),switch:j.array().optional(),securitySystem:j.array().optional(),contact:j.array().optional(),doorbell:j.array().optional(),hub:j.array().optional()}).strict(),Re=d([v(`auto`),v(`mse`),v(`webrtc`),v(`webrtc/tcp`)]),ze=d([v(`16:9`),v(`9:16`),v(`8:3`),v(`4:3`),v(`1:1`)]),Be=p({fps:h().min(0,`Minimum 0 fps`).max(30,`Maximum 30 fps`)}),Ve=d([v(`camera`),v(`doorbell`)]),He=p({streamingMode:Re,streamingSource:je,aspectRatio:ze}),M=p({model:S().trim().optional(),manufacturer:S().trim().optional(),hardware:S().trim().optional(),serialNumber:S().trim().optional(),firmwareVersion:S().trim().optional(),supportUrl:S().trim().optional()});p({name:S().trim().min(1,`Camera name is required`),url:C(`Must be a valid URL`).trim().min(1,`Camera URL is required`),type:d([v(`Google`),v(`Ring`),v(`HomeKit`),v(`Onvif`),v(`Hass`),v(`GoPro`),v(`Roborock`),v(`FFmpeg`),v(`DVRip`),v(`Webtorrent`)]),username:S().trim().optional(),email:Ce(`Must be a valid email`).trim().optional(),password:S().trim().optional(),pin:S().trim().length(8,`PIN must be 8 characters long`).optional(),clientId:S().trim().optional(),clientSecret:S().trim().optional(),refreshToken:S().trim().optional(),projectId:S().trim().optional()}).strict().refine(e=>e.type===`HomeKit`?!!e.pin:!0,{message:`PIN is required for HomeKit cameras`,path:[`pin`]}).refine(e=>e.type===`Google`?!!e.clientId:!0,{message:`Client ID is required for Google cameras`,path:[`clientId`]}).refine(e=>e.type===`Google`?!!e.clientSecret:!0,{message:`Client Secret is required for Google cameras`,path:[`clientSecret`]}).refine(e=>e.type===`Google`?!!e.projectId:!0,{message:`Project ID is required for Google cameras`,path:[`projectId`]}).refine(e=>e.type===`Google`?!!e.refreshToken:!0,{message:`Refresh Token is required for Google cameras`,path:[`refreshToken`]}).refine(e=>e.type===`Ring`?!!e.email:!0,{message:`Email is required`,path:[`email`]}).refine(e=>e.type===`Roborock`?!!e.username:!0,{message:`Username is required`,path:[`username`]}).refine(e=>e.type===`Roborock`||e.type===`Ring`?!!e.password:!0,{message:`Password is required`,path:[`password`]});var Ue=p({id:S(),name:S().trim()}).strict(),N=p({autoRefresh:b().default(!1),ttl:h().min(10,`Minimum 10 seconds`).max(60,`Maximum 60 seconds`).default(50),interval:h().min(10,`Minimum 10 seconds`).max(60,`Maximum 60 seconds`).default(60)}).strict(),P=p({_id:S().default(e()).transform(()=>e()),nativeId:S().trim().optional(),pluginInfo:Ue.optional(),disabled:b().default(!1),name:S().trim().min(1,`Camera name is required`),room:S().trim().min(1,`Room is required`).default(`Default`),type:Ve.default(`camera`),isCloud:b().default(!1),snapshotSettings:N.default({autoRefresh:!1,ttl:50,interval:60}),info:M.default({model:`IP Camera`,manufacturer:`camera.ui`,hardware:`Camera`,serialNumber:`Unknown`,firmwareVersion:`Unknown`,supportUrl:`Unknown`}),sources:Fe.array().refine(e=>e.some(e=>e.role===`high-resolution`||e.role===`mid-resolution`||e.role===`low-resolution`),{path:[`sources[].role`],message:`One of the roles "high-resolution", "mid-resolution" or "low-resolution" is required`}).refine(e=>e.filter(e=>e.useForSnapshot).length<=1,{message:`Only one source can be used for snapshot`,path:[`sources`]}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.useForSnapshot),{message:`Snapshot source can not be used with useForSnapshot`,path:[`sources`]}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.hotMode),{message:`Snapshot source can not be used with hotMode`}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.preload),{message:`Snapshot source can not be used with preload`}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.prebuffer),{message:`Snapshot source can not be used with prebuffer`}).refine(e=>{let t=e.map(e=>e.role).filter(Boolean);return new Set(t).size===t.length},{message:`Each source role can be assigned to only one source`,path:[`sources`]}),plugins:j.array().default([]),assignments:Le.default({}),interfaceSettings:He.default({streamingMode:`webrtc`,streamingSource:`high-resolution`,aspectRatio:`16:9`}),detectionZones:E.default([]),detectionLines:D.default([]),detectionSettings:O.default({motion:{resolution:`low`,timeout:30},object:{confidence:.5},audio:{minDecibels:-40,timeout:30},sensor:{timeout:30,triggers:[]},cascadeDetection:!0,cascadeTimeout:10,snooze:!1}),ptzAutotrack:Ae.default(ke),frameWorkerSettings:Be.default({fps:10})}).strict();P.transform(e=>{let t=e.sources.flatMap(e=>e.urls),n=e.detectionZones.length===0?[De()]:e.detectionZones;return e.isCloud||w(t)?{...e,isCloud:!0,detectionZones:n}:{...e,detectionZones:n}});var We=p({disabled:b().optional(),type:Ve.optional(),name:S().trim().min(1,`Camera name is required`).optional(),room:S().trim().min(1,`Room is required`).optional(),isCloud:b().optional(),snapshotSettings:N.partial().optional(),info:M.partial().optional(),sources:Ie.array().refine(e=>e.some(e=>e.role===`high-resolution`||e.role===`mid-resolution`||e.role===`low-resolution`),{path:[`sources[].role`],message:`One of the roles "high-resolution", "mid-resolution" or "low-resolution" is required`}).refine(e=>e.filter(e=>e.useForSnapshot).length<=1,{message:`Only one source can be used for snapshot`,path:[`sources`]}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.useForSnapshot),{message:`Snapshot source can not be used with useForSnapshot`,path:[`sources`]}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.hotMode),{message:`Snapshot source can not be used with hotMode`}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.preload),{message:`Snapshot source can not be used with preload`}).refine(e=>{let t=e.map(e=>e.role).filter(Boolean);return new Set(t).size===t.length},{message:`Each source role can be assigned to only one source`,path:[`sources`]}).optional(),plugins:j.array().optional(),assignments:Le.partial().optional(),interfaceSettings:He.partial().optional(),detectionZones:E.optional(),detectionLines:D.optional(),detectionSettings:O.partial().optional(),ptzAutotrack:Ae.partial().optional(),frameWorkerSettings:Be.partial().optional()}).strict().transform(e=>{if(e.sources){let t=e.sources.flatMap(e=>e.urls);if(e.isCloud===!0||w(t))return{...e,isCloud:!0}}return e});p({url:S().trim().refine(e=>!/^\s*(exec|echo|expr):/i.test(e),`Command-execution stream sources are not allowed`)}).strict(),p({cameraname:S()}),p({cameraname:S(),sourcename:S()}),p({cameraid:S(),sourcename:S()}),p({cameraname:S(),pluginname:S()}),p({cameraname:S(),scope:S(),pluginname:S()}),p({cameraname:S(),pluginname:S(),sensorId:S()}),p({cameraname:S(),scope:S(),pluginname:S(),sensorId:S()}),p({type:S().optional()}),p({video:x().optional(),audio:x().optional(),microphone:x().optional(),refresh:x().optional()}),p({forceNew:x().optional()}),p({name:S().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`),url:C(`Must be a valid URL`).trim(),credentials:p({username:S().trim().min(1,`Username is required`),password:S().min(1,`Password is required`)})}),p({name:S().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`).optional(),url:C(`Must be a valid URL`).trim().optional(),credentials:p({username:S().trim().min(1,`Username is required`),password:S().min(1,`Password is required`)}).nullable().optional()}),p({id:S().min(1,`ID is required`)});var Ge=/^((@[\w-.]*)\/)?(camera-ui-[\w-]*)$/,Ke=function(e){return e.READY=`ready`,e.STARTING=`starting`,e.STARTED=`started`,e.STOPPING=`stopping`,e.STOPPED=`stopped`,e.ERROR=`error`,e.UNKNOWN=`unknown`,e.DISABLED=`disabled`,e}({});function F(e){return e.mimetype!==void 0}function qe(e){return F(e)?Buffer.byteLength(e._buf):e.size}function Je(e){return F(e)?e.mimetype:e.type}function I(e,t,n,r){return f().refine(t=>qe(t)<=e,n).refine(e=>t.includes(Je(e)),r)}var Ye=p({start:g().optional(),page:g().optional(),pageSize:g().optional()}),L=[`image/jpeg`,`image/png`],Xe=1024*1024*2,R=[`video/mp4`,`video/quicktime`],z=1024*1024*10,B=[`audio/mpeg`,`audio/wav`,`audio/ogg`],V=1024*1024*2,H=()=>I(Xe,L,`Max file size is 2 MB`,`.jpeg and .png files are accepted`),U=f().transform(e=>JSON.parse(e.value)),W=f().transform(e=>JSON.parse(e.value)),Ze=f().transform(e=>JSON.parse(e.value));p({pluginname:S().trim().refine(e=>Ge.test(e),`Not a valid plugin name`),pluginversion:S().trim().optional().default(`latest`)}).strict(),p({actionId:S(),payload:u()}).strict(),l(u(),u()),p({upload:H(),metadata:W,config:U}),p({upload:I(V,B,`Max file size is 2 MB`,`.mp3, .wav and .ogg files are accepted`),metadata:Ze,config:U}),p({upload:I(z,R,`Max file size is 5 MB`,`.mp4 files are accepted`),config:U}),p({upload:H(),metadata:W,config:U}),p({upload:H(),metadata:W,config:U}),p({upload:H(),metadata:W,config:U}),p({pluginname:S()}),p({scope:S(),pluginname:S()}),Ye.extend({pluginname:S().trim().optional()}),p({removeStorage:x().optional()}),p({pluginversion:S().trim().optional()});var Qe=p({enabled:b().optional(),directEnabled:b().optional(),directMode:m([`cloudflare`,`customDomain`]).optional(),customDomain:p({url:C(`Must be a valid URL`).trim().nullable()}).strict().optional(),cloudflare:p({mode:m([`quick`,`token`,`managed`]).optional(),hostname:S().trim().min(1,`Hostname is required`).max(253,`Hostname cannot be more than 253 characters`).nullable().optional(),token:S().trim().min(1,`Token is required`).nullable().optional()}).strict().optional()}).strict().refine(e=>!(e.directMode===`customDomain`&&!e.customDomain?.url),{message:`Custom domain URL is required when directMode is "customDomain"`,path:[`customDomain`,`url`]}).refine(e=>!(e.cloudflare?.mode===`token`&&!e.cloudflare?.token),{message:`Token is required when cloudflare.mode is "token"`,path:[`cloudflare`,`token`]}).refine(e=>!(e.cloudflare?.mode&&e.cloudflare.mode!==`quick`&&!e.cloudflare?.hostname),{message:`Hostname is required when cloudflare.mode is "token" or "managed"`,path:[`cloudflare`,`hostname`]});p({mode:m([`cloudflare`,`customDomain`])}).strict(),p({hostname:S().trim().min(1,`Hostname is required`).max(253,`Hostname cannot be more than 253 characters`).regex(/^[a-z0-9.-]+\.[a-z]{2,}$/i,`Invalid hostname`)}).strict(),p({name:S().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`).optional()}).strict(),p({name:S().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`).optional()}).strict(),p({name:S().trim().min(1,`Server name is required`).max(100,`Server name cannot be more than 100 characters`)}).strict(),p({version:S().trim().optional().default(`latest`)}).strict();var $e=p({serverAddresses:d([ye().trim(),be().trim()]).array().default([])}).strict();l(S(),u()),p({key:S()}).strict(),p({key:S(),payload:u()}).strict();var et=[`image/jpeg`,`image/jpg`,`image/png`],tt=1024*1024*5,nt=p({index:h(),cameraId:S(),colSpan:h().optional(),rowSpan:h().optional(),x:h().optional(),y:h().optional()}),rt=d([v(1),v(4),v(6),v(7),v(9),v(10),v(12),v(13),v(15),v(16),v(20),v(26)]),it=d([v(`dnd`),v(`view`)]),at=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Layout name is required`),viewSize:rt,cameras:nt.array(),type:it});p({name:S().trim().min(1,`Layout name is required`),viewSize:rt,cameras:nt.array()}).partial().optional();var ot=p({views:at.array()}),st=m([`contact`,`temperature`,`humidity`,`occupancy`,`smoke`,`leak`,`light`,`siren`,`switch`,`lock`,`garage`,`doorbell`,`securitySystem`,`battery`]),ct=Se(`type`,[p({_id:S().default(e()).transform(()=>e()),type:v(`camera`),cameraId:S(),points:T}),p({_id:S().default(e()).transform(()=>e()),type:v(`sensor`),sensorType:st,sensorName:S(),sensorPluginId:S(),sensorCameraId:S(),points:T})]);d([p({type:v(`camera`),cameraId:S(),points:T}).partial(),p({type:v(`sensor`),sensorType:st,sensorName:S(),sensorPluginId:S(),sensorCameraId:S(),points:T}).partial()]).optional();var lt=p({shortcuts:ct.array()}),ut=p({camview:ot,cameras:l(S().trim(),lt)}),G=S().trim().min(10,`Password must be at least 10 characters long`).regex(/[A-Z]/,`Password must contain at least one uppercase letter`).regex(/[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]/,`Password must contain at least one special character (!@#$%^&*()_+-=[]{};:'"\\|,.<>/?)`).max(32,`Password cannot be more than 32 characters`),dt=p({_id:S().default(e()).transform(()=>e()),username:S().trim().min(1,`Username is required`),password:G,passwordConfirm:S().trim().min(1,`Please confirm your password`),role:d([v(`admin`),v(`user`)]),firstLogin:b().default(!0),preferences:ut.default({camview:{views:[]},cameras:{}})}).strict().refine(e=>e.password===e.passwordConfirm,{path:[`passwordConfirm`],message:`Passwords do not match`});p({username:S().trim().min(1,`Username is required`),password:S().trim().min(1,`Password is required`),kind:m([`native`,`web`]),persistent:b().default(!1),device:p({id:S().min(1,`Device id is required`).max(128,`Device id cannot be more than 128 characters`),name:S().trim().min(1,`Device name is required`).max(100,`Device name cannot be more than 100 characters`)})}).strict();var ft=p({username:S().trim().min(1,`Username is required`).optional(),password:G.optional(),passwordConfirm:S().trim().optional(),role:d([v(`admin`),v(`user`)]).optional(),upload:xe(I(tt,et,`Max file size is 5MB.`,`.jpg, .jpeg, .png files are accepted.`)),firstLogin:b().optional(),preferences:ut.partial().optional()}).strict().refine(e=>e.password===e.passwordConfirm,{path:[`passwordConfirm`],message:`Passwords do not match`});p({username:S()}),p({username:S(),cameraname:S()}),p({username:S(),cameraname:S(),shortcutid:S()}),p({username:S(),viewid:S()}),p({username:S()});var K={[n.Motion]:{category:r.Sensor,assignmentKey:`motion`,multiProvider:!1,isDetectionType:!0},[n.Object]:{category:r.Sensor,assignmentKey:`object`,multiProvider:!1,isDetectionType:!0},[n.Audio]:{category:r.Sensor,assignmentKey:`audio`,multiProvider:!1,isDetectionType:!0},[n.Face]:{category:r.Sensor,assignmentKey:`face`,multiProvider:!1,isDetectionType:!0},[n.LicensePlate]:{category:r.Sensor,assignmentKey:`licensePlate`,multiProvider:!1,isDetectionType:!0},[n.Classifier]:{category:r.Sensor,assignmentKey:`classifier`,multiProvider:!0,isDetectionType:!0},[n.Clip]:{category:r.Sensor,assignmentKey:`clip`,multiProvider:!1,isDetectionType:!0},[n.Contact]:{category:r.Sensor,assignmentKey:`contact`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`detected`,value:!0,sustained:!0}},[n.Light]:{category:r.Control,assignmentKey:`light`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`on`,value:!0,sustained:!0}},[n.Siren]:{category:r.Control,assignmentKey:`siren`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`active`,value:!0,sustained:!0}},[n.Switch]:{category:r.Control,assignmentKey:`switch`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`on`,value:!0,sustained:!0}},[n.PTZ]:{category:r.Control,assignmentKey:`ptz`,multiProvider:!1,isDetectionType:!1},[n.Lock]:{category:r.Control,assignmentKey:`lock`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`currentState`,value:1,sustained:!0}},[n.SecuritySystem]:{category:r.Control,assignmentKey:`securitySystem`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`currentState`,value:4,sustained:!0}},[n.Doorbell]:{category:r.Trigger,assignmentKey:`doorbell`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`ring`,value:!0,sustained:!1}},[n.Temperature]:{category:r.Info,assignmentKey:`temperature`,multiProvider:!0,isDetectionType:!1},[n.Humidity]:{category:r.Info,assignmentKey:`humidity`,multiProvider:!0,isDetectionType:!1},[n.Occupancy]:{category:r.Sensor,assignmentKey:`occupancy`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`detected`,value:!0,sustained:!0}},[n.Smoke]:{category:r.Sensor,assignmentKey:`smoke`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`detected`,value:!0,sustained:!0}},[n.Leak]:{category:r.Sensor,assignmentKey:`leak`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`detected`,value:!0,sustained:!0}},[n.Garage]:{category:r.Control,assignmentKey:`garage`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`currentState`,value:0,sustained:!0}},[n.Battery]:{category:r.Info,assignmentKey:`battery`,multiProvider:!1,isDetectionType:!1}};n.Battery,c.Charging,t.Charging,c.Low,t.LowBattery,n.Light,o.Brightness,de.Brightness,n.Siren,s.Volume,te.Volume;function pt(){return Object.entries(K).filter(([,e])=>e.multiProvider).map(([e])=>e)}function mt(){return Object.entries(K).filter(([,e])=>e.isDetectionType).map(([e])=>e)}function ht(e){return K[e].assignmentKey}function gt(){return Object.entries(K).filter(([,e])=>e.category===r.Sensor&&!e.multiProvider).map(([e])=>e)}function _t(){return Object.entries(K).filter(([,e])=>!e.multiProvider&&e.category!==r.Sensor).map(([e])=>e)}function vt(){return Object.entries(K).filter(([,e])=>e.multiProvider).map(([e])=>e)}function yt(e){return!K[e].multiProvider}var bt={[n.Motion]:Object.values(ie),[n.Object]:Object.values(he),[n.Audio]:Object.values(a),[n.Face]:Object.values(ve),[n.LicensePlate]:Object.values(se),[n.Classifier]:Object.values(i),[n.Clip]:[],[n.Contact]:Object.values(_e),[n.Temperature]:Object.values(ue),[n.Humidity]:Object.values(ee),[n.Occupancy]:Object.values(le),[n.Smoke]:Object.values(ce),[n.Leak]:Object.values(oe),[n.Light]:Object.values(o),[n.Siren]:Object.values(s),[n.Switch]:Object.values(fe),[n.Lock]:Object.values(ae),[n.Garage]:Object.values(ge),[n.PTZ]:Object.values(re),[n.SecuritySystem]:Object.values(pe),[n.Doorbell]:Object.values(ne),[n.Battery]:Object.values(c)};function xt(e){return bt[e]??[]}new Set(pt()),new Set(mt());var St=`bubble://.cui://.doorbird://.dvrip://.echo:.eseecloud://.exec:.expr:.ffmpeg:.flussonic://.gopro://.hass:.homekit://.http://.https://.httpx://.isapi://.ivideon:.kasa://.nest:.onvif://.ring:.roborock://.rtmp://.rtsp://.rtspx://.tapo://.tcp://.tuya://.xiaomi://.yandex:.webrtc:.webtorrent:.wyze://`.split(`.`),Ct=[`#backchannel=`,`#header=`,`#media=audio`,`#media=video`,`#timeout=10`,`#timeout=20`,`#timeout=30`,`#transport=`],wt=`#audio=aac.#audio=aac/16000.#audio=mp3.#audio=opus.#audio=pcm.#audio=pcm/8000.#audio=pcm/16000.#audio=pcm/48000.#audio=pcma.#audio=pcma/8000.#audio=pcma/16000.#audio=pcma/48000.#audio=pcml.#audio=pcml/8000.#audio=pcml/44100.#audio=pcmu.#audio=pcmu/8000.#audio=pcmu/16000.#audio=pcmu/48000.#drawtext.#hardware.#hardware=cuda.#hardware=dxva2.#hardware=rkmpp.#hardware=v4l2m2m.#hardware=vaapi.#hardware=videotoolbox.#height=.#raw=.#rotate=-90.#rotate=90.#rotate=180.#rotate=270.#video=copy.#video=h264.#video=h265.#video=mjpeg.#width=`.split(`.`),Tt=[`client_id=`,`client_private=`,`device_id=`,`device_public=`],Et=[`#header=`],Dt=[`client_id=`,`client_secret=`,`refresh_token=`,`project_id=`,`device_id=`],Ot=[`device_id=`,`refresh_token=`],kt=[`#client_id=`,`#format=openipc`,`#format=wyze`,`#format=kinesis`,`#ice_servers=`];function At(e){return e.type===`string`&&!(`enum`in e)}function jt(e){return e.type===`number`}function Mt(e){return e.type===`boolean`}function q(e){return e.type===`string`&&`enum`in e}function Nt(e){return e.type===`array`}function J(e){return e.type===`button`}function Y(e){return e.type===`submit`}function Pt(e){return At(e)&&(!e.format||e.format!==`qrCode`&&e.format!==`image`)}var Ft=(e,t)=>{let n=Q(t,e.key),r=e.value;switch(e.operator??`eq`){case`eq`:return n===r;case`neq`:return n==null||n===``?!1:n!==r;case`gt`:return typeof n==`number`&&typeof r==`number`&&n>r;case`lt`:return typeof n==`number`&&typeof r==`number`&&n<r;case`in`:return(Array.isArray(r)?r:[r]).includes(n);case`nin`:return n==null||n===``?!1:!(Array.isArray(r)?r:[r]).includes(n);default:return!0}};function X(e,t){return Array.isArray(e)?e.every(e=>Ft(e,t)):Ft(e,t)}function It(e,t){if(!e||Object.keys(e).length===0)return!0;let n=t.filter(e=>!J(e)&&!Y(e));for(let t of n){let n=Q(e,t.key),r=Z(t);if(n!==void 0&&!me(n,r,!0))return!1}return!0}function Z(e){if(`defaultValue`in e&&e.defaultValue!==void 0)return e.defaultValue;switch(e.type){case`string`:return q(e)?e.multiple?[]:e.required?e.enum[0]:``:``;case`number`:return 0;case`boolean`:return!1;case`array`:return[];default:return}}function Lt(e){let t={};for(let n of e)J(n)||Y(n)||(t[n.key]=Z(n));return t}function Q(e={},t){if(!t.includes(`.`)&&!t.includes(`[`))return e[t];let n=t.split(`.`).reduce((e,t)=>{if(t.includes(`[`)){let[n,r]=t.split(`[`);e.push(n,r.slice(0,-1))}else e.push(t);return e},[]),r=e;for(let e of n){if(r==null)return;r=r[e]}return r}function Rt(e,t,n){if(!t.includes(`.`)&&!t.includes(`[`)){e[t]=n;return}let r=t.split(`.`).reduce((e,t)=>{if(t.includes(`[`)){let[n,r]=t.split(`[`);e.push(n,r.slice(0,-1))}else e.push(t);return e},[]),i=r.pop();if(!i)return;let a=e;for(let e of r){if(a[e]===void 0||a[e]===null){let t=r[r.indexOf(e)+1];a[e]=isNaN(Number(t))?{}:[]}a=a[e]}a[i]=n}function zt(e,t){let n={};for(let r of e)if(`store`in r&&r.store&&!J(r)&&!Y(r)){let e=Q(t,r.key);e!==void 0&&(n[r.key]=e)}return n}function Bt(e,t){return t?e.filter(e=>`group`in e&&e.group===t):e}function Vt(e,t){let n=Bt(e,t);return n.length>0&&n.every(e=>`readonly`in e&&e.readonly)}function Ht(e,t){let n=Bt(e,t);return n.length>0&&n.some(e=>`store`in e&&e.store)}function Ut(e,t){if(!t)return!0;let n={"date-time":e=>/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(.\d+)?(Z|[+-]\d{2}:\d{2})?$/.test(e),date:e=>/^\d{4}-\d{2}-\d{2}$/.test(e),time:e=>/^([01]?[0-9]|2[0-3]):([0-5][0-9])(:([0-5][0-9]))?$/.test(e),email:e=>/^\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,7}\b$/.test(e),uuid:e=>/^[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(e),ipv4:e=>/^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$/.test(e),ipv6:e=>/^\s*([0-9a-fA-F]{1,4}:){7}([0-9a-fA-F]{1,4})\s*$/.test(e)};return t in n?n[t](e):!0}function $(e){if(J(e)||Y(e))return u();switch(e.type){case`string`:if(q(e))if(e.multiple){let t=_(S().trim().refine(t=>e.enum.includes(t),{error:`Invalid selection`}));return e.required&&(t=t.min(1,{error:`Required`})),e.required?t:t.optional()}else{let t=m(e.enum);return e.required?t:t.optional()}let t=S().trim();return e.required&&(t=t.nonempty(`Required`)),e.minLength!==void 0&&(t=t.min(e.minLength)),e.maxLength!==void 0&&(t=t.max(e.maxLength)),e.format&&(t=t.refine(t=>!t||t.trim()===``||Ut(t,e.format),{message:`Invalid ${e.format} format`})),e.required?t:t.optional();case`number`:let n=h();return e.minimum!==void 0&&(n=n.min(e.minimum)),e.maximum!==void 0&&(n=n.max(e.maximum)),e.required&&(n=n.refine(e=>e!=null,{error:`Required`})),e.required?n:n.optional();case`boolean`:return e.required?b():b().optional();case`array`:let r=_($(e.items));return e.required?r:r.optional();default:return e.required?u():u().optional()}}var Wt=(e,t,n)=>t.filter(e=>`group`in e&&e.group===n).some(t=>{let n=e[t.key];return n!=null&&n!==``});function Gt(e){let t={},n=new Set;e.forEach(e=>{`group`in e&&e.group&&n.add(e.group)}),e.forEach(e=>{if(!J(e)&&!Y(e)){let n=`group`in e&&e.group,r=`condition`in e&&e.condition;(n||r)&&e.required?t[e.key]=$({...e,required:!1}):t[e.key]=$(e)}});let r=p(t),i=e.filter(e=>`condition`in e&&e.condition&&`required`in e&&e.required&&!J(e)&&!Y(e));return(n.size>0||i.length>0)&&(r=r.superRefine((t,r)=>{for(let i of n)if(Wt(t,e,i)){let n=e.filter(e=>`group`in e&&e.group===i);for(let e of n)if(`required`in e&&e.required){if(`condition`in e&&e.condition&&!X(e.condition,t))continue;let n=t[e.key];(n==null||n===``)&&r.addIssue({code:y.custom,message:`Required`,path:[e.key]})}}for(let e of i)if(!(`group`in e&&e.group)&&`condition`in e&&e.condition&&X(e.condition,t)){let n=t[e.key];(n==null||n===``)&&r.addIssue({code:y.custom,message:`Required`,path:[e.key]})}})),r}var Kt=function(e){return e.READY=`ready`,e.RESTARTING=`restarting`,e.STARTING=`starting`,e.STARTED=`started`,e.STOPPED=`stopped`,e.ERROR=`error`,e.UNKNOWN=`unknown`,e}({});export{We as $,ht as A,$e as B,Dt as C,kt as D,St as E,tt as F,V as G,B as H,dt as I,P as J,z as K,G as L,gt as M,xt as N,K as O,yt as P,k as Q,ft as R,Et as S,Ct as T,R as U,Qe as V,L as W,E as X,D as Y,A as Z,Vt as _,zt as a,wt as b,Nt as c,It as d,q as f,Pt as g,Y as h,Z as i,_t as j,vt as k,Mt as l,At as m,X as n,Gt as o,jt as p,Ke as q,Lt as r,Q as s,Kt as t,J as u,Ht as v,Ot as w,Tt as x,Rt as y,at as z};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as e}from"./api-CxmpI477.js";import{Wn as t,Yt as n,Zn as r}from"./vendor-TwHhULaP.js";var i=1e4,a=r({streamStatus:{}}),o=null,s=null,c;function l(){s?.emit(`get-stream-status`)}function u(){return s||(o=t(!0),s=o.run(()=>{let t=e(`/camera.ui`);return t.on(`connect`,()=>{l()}),t.on(`stream-status`,e=>{a.streamStatus=e}),t}),c||=setInterval(l,i),s)}function d(e){let t=Object.values(e);if(t.length===0)return`idle`;let n=t.filter(e=>e===`connected`).length,r=t.filter(e=>e===`error`).length,i=t.filter(e=>e===`connecting`).length;return n===t.length?`connected`:r===t.length?`error`:i>0&&n===0&&r===0?`connecting`:n>0&&(r>0||t.some(e=>e===`idle`))?`partial`:n>0?`connected`:i>0?`connecting`:`idle`}function f(){function e(){u()}function t(){}function r(e){let t=a.streamStatus[e];return t?d(t):`idle`}function i(e){return a.streamStatus[e]}function o(e,t){return a.streamStatus[e]?.[t]??`idle`}return{streamStatus:n(()=>a.streamStatus),getCameraStatus:r,getCameraSources:i,getSourceStatus:o,connect:e,disconnect:t,refresh:l}}export{f as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{$n as e,Cn as t,Gn as n,Jn as r,Rn as i,Tn as a,Wn as o,Xn as s,Yn as c,Yt as l,Zn as u,_n as d,ar as f,dn as p,er as m,gn as ee,ir as h,ln as g,nr as _,on as v,qn as y,rr as b,sr as x,un as S,xn as C}from"./vendor-TwHhULaP.js";import{Ai as te,Ei as w,Fi as T,Ii as E,Ni as D,Si as O,Ti as ne,Ui as re,Vi as k,bi as ie,gi as A,hi as ae,xi as j,yi as M}from"./vendor-cameraui-CUPAufpt.js";var oe=typeof window<`u`,N,P=e=>N=e,F=Symbol();function I(e){return e&&typeof e==`object`&&Object.prototype.toString.call(e)===`[object Object]`&&typeof e.toJSON!=`function`}var L;(function(e){e.direct=`direct`,e.patchObject=`patch object`,e.patchFunction=`patch function`})(L||={});var R=typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:typeof globalThis==`object`?globalThis:{HTMLElement:null};function z(e,{autoBom:t=!1}={}){return t&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([``,e],{type:e.type}):e}function se(e,t,n){let r=new XMLHttpRequest;r.open(`GET`,e),r.responseType=`blob`,r.onload=function(){ue(r.response,t,n)},r.onerror=function(){console.error(`could not download file`)},r.send()}function ce(e){let t=new XMLHttpRequest;t.open(`HEAD`,e,!1);try{t.send()}catch{}return t.status>=200&&t.status<=299}function B(e){try{e.dispatchEvent(new MouseEvent(`click`))}catch{let t=new MouseEvent(`click`,{bubbles:!0,cancelable:!0,view:window,detail:0,screenX:80,screenY:20,clientX:80,clientY:20,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:null});e.dispatchEvent(t)}}var V=typeof navigator==`object`?navigator:{userAgent:``},le=/Macintosh/.test(V.userAgent)&&/AppleWebKit/.test(V.userAgent)&&!/Safari/.test(V.userAgent),ue=oe?typeof HTMLAnchorElement<`u`&&`download`in HTMLAnchorElement.prototype&&!le?de:`msSaveOrOpenBlob`in V?fe:pe:()=>{};function de(e,t=`download`,n){let r=document.createElement(`a`);r.download=t,r.rel=`noopener`,typeof e==`string`?(r.href=e,r.origin===location.origin?B(r):ce(r.href)?se(e,t,n):(r.target=`_blank`,B(r))):(r.href=URL.createObjectURL(e),setTimeout(function(){URL.revokeObjectURL(r.href)},4e4),setTimeout(function(){B(r)},0))}function fe(e,t=`download`,n){if(typeof e==`string`)if(ce(e))se(e,t,n);else{let t=document.createElement(`a`);t.href=e,t.target=`_blank`,setTimeout(function(){B(t)})}else navigator.msSaveOrOpenBlob(z(e,n),t)}function pe(e,t,n,r){if(r||=open(``,`_blank`),r&&(r.document.title=r.document.body.innerText=`downloading...`),typeof e==`string`)return se(e,t,n);let i=e.type===`application/octet-stream`,a=/constructor/i.test(String(R.HTMLElement))||`safari`in R,o=/CriOS\/[\d]+/.test(navigator.userAgent);if((o||i&&a||le)&&typeof FileReader<`u`){let t=new FileReader;t.onloadend=function(){let e=t.result;if(typeof e!=`string`)throw r=null,Error(`Wrong reader.result type`);e=o?e:e.replace(/^data:[^;]*;/,`data:attachment/file;`),r?r.location.href=e:location.assign(e),r=null},t.readAsDataURL(e)}else{let t=URL.createObjectURL(e);r?r.location.assign(t):location.href=t,r=null,setTimeout(function(){URL.revokeObjectURL(t)},4e4)}}var{assign:me}=Object;function he(){let t=o(!0),n=t.run(()=>e({})),r=[],i=[],a=c({install(e){P(a),a._a=e,e.provide(F,a),e.config.globalProperties.$pinia=a,i.forEach(e=>r.push(e)),i=[]},use(e){return this._a?r.push(e):i.push(e),this},_p:r,_a:null,_e:t,_s:new Map,state:n});return a}var ge=()=>{};function _e(e,t,r,i=ge){e.add(t);let a=()=>{e.delete(t)&&i()};return!r&&n()&&s(a),a}function H(e,...t){e.forEach(e=>{e(...t)})}var ve=e=>e(),ye=Symbol(),be=Symbol();function xe(e,t){e instanceof Map&&t instanceof Map?t.forEach((t,n)=>e.set(n,t)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(let n in t){if(!t.hasOwnProperty(n))continue;let i=t[n],a=e[n];I(a)&&I(i)&&e.hasOwnProperty(n)&&!r(i)&&!y(i)?e[n]=xe(a,i):e[n]=i}return e}var Se=Symbol();function Ce(e){return!I(e)||!Object.prototype.hasOwnProperty.call(e,Se)}var{assign:U}=Object;function we(e){return!!(r(e)&&e.effect)}function Te(e,t,n,r){let{state:i,actions:a,getters:o}=t,s=n.state.value[e],u;function d(){return s||(n.state.value[e]=i?i():{}),U(f(n.state.value[e]),a,Object.keys(o||{}).reduce((t,r)=>(t[r]=c(l(()=>{P(n);let t=n._s.get(e);return o[r].call(t,t)})),t),{}))}return u=Ee(e,d,t,n,r,!0),u}function Ee(t,n,a={},s,c,l){let d,f=U({actions:{}},a),p={deep:!0},m,h,g=new Set,_=new Set,v=s.state.value[t];!l&&!v&&(s.state.value[t]={}),e({});let x;function S(e){let n;m=h=!1,typeof e==`function`?(e(s.state.value[t]),n={type:L.patchFunction,storeId:t,events:void 0}):(xe(s.state.value[t],e),n={type:L.patchObject,payload:e,storeId:t,events:void 0});let r=x=Symbol();ee().then(()=>{x===r&&(m=!0)}),h=!0,H(g,n,s.state.value[t])}let C=l?function(){let{state:e}=a,t=e?e():{};this.$patch(e=>{U(e,t)})}:ge;function te(){d.stop(),g.clear(),_.clear(),s._s.delete(t)}let w=(e,n=``)=>{if(ye in e)return e[be]=n,e;let r=function(){P(s);let n=Array.from(arguments),i=new Set,a=new Set;function o(e){i.add(e)}function c(e){a.add(e)}H(_,{args:n,name:r[be],store:T,after:o,onError:c});let l;try{l=e.apply(this&&this.$id===t?this:T,n)}catch(e){throw H(a,e),e}return l instanceof Promise?l.then(e=>(H(i,e),e)).catch(e=>(H(a,e),Promise.reject(e))):(H(i,l),l)};return r[ye]=!0,r[be]=n,r},T=u({_p:s,$id:t,$onAction:_e.bind(null,_),$patch:S,$reset:C,$subscribe(e,n={}){let r=_e(g,e,n.detached,()=>a()),a=d.run(()=>i(()=>s.state.value[t],r=>{(n.flush===`sync`?h:m)&&e({storeId:t,type:L.direct,events:void 0},r)},U({},p,n)));return r},$dispose:te});s._s.set(t,T);let E=(s._a&&s._a.runWithContext||ve)(()=>s._e.run(()=>(d=o()).run(()=>n({action:w}))));for(let e in E){let n=E[e];r(n)&&!we(n)||y(n)?l||(v&&Ce(n)&&(r(n)?n.value=v[e]:xe(n,v[e])),s.state.value[t][e]=n):typeof n==`function`&&(E[e]=w(n,e),f.actions[e]=n)}return U(T,E),U(b(T),E),Object.defineProperty(T,"$state",{get:()=>s.state.value[t],set:e=>{S(t=>{U(t,e)})}}),s._p.forEach(e=>{U(T,d.run(()=>e({store:T,app:s._a,pinia:s,options:f})))}),v&&l&&a.hydrate&&a.hydrate(T.$state,v),m=!0,h=!0,T}function De(e,t,n){let r,i=typeof t==`function`;r=i?n:t;function a(n,a){let o=S();return n||=o?p(F,null):null,n&&P(n),n=N,n._s.has(e)||(i?Ee(e,t,r,n):Te(e,r,n)),n._s.get(e)}return a.$id=e,a}function Oe(e){let t=b(e),n={};for(let i in t){let a=t[i];a.effect?n[i]=l({get:()=>e[i],set(t){e[i]=t}}):(r(a)||y(a))&&(n[i]=h(e,i))}return n}var W=typeof document<`u`;function ke(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function Ae(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&ke(e.default)}var G=Object.assign;function je(e,t){let n={};for(let r in t){let i=t[r];n[r]=q(i)?i.map(e):e(i)}return n}var K=()=>{},q=Array.isArray;function Me(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var Ne=Symbol(``);function J(e,t){return G(Error(),{type:e,[Ne]:!0},t)}function Y(e,t){return e instanceof Error&&Ne in e&&(t==null||!!(e.type&t))}var Pe=Symbol(``),Fe=Symbol(``),Ie=Symbol(``),Le=Symbol(``),Re=Symbol(``);function ze(){return p(Ie)}function Be(e){return p(Le)}var Ve=/#/g,He=/&/g,Ue=/\//g,We=/=/g,Ge=/\?/g,Ke=/\+/g,qe=/%5B/g,Je=/%5D/g,Ye=/%5E/g,Xe=/%60/g,Ze=/%7B/g,Qe=/%7C/g,$e=/%7D/g,et=/%20/g;function tt(e){return e==null?``:encodeURI(``+e).replace(Qe,`|`).replace(qe,`[`).replace(Je,`]`)}function nt(e){return tt(e).replace(Ze,`{`).replace($e,`}`).replace(Ye,`^`)}function rt(e){return tt(e).replace(Ke,`%2B`).replace(et,`+`).replace(Ve,`%23`).replace(He,`%26`).replace(Xe,"`").replace(Ze,`{`).replace($e,`}`).replace(Ye,`^`)}function it(e){return rt(e).replace(We,`%3D`)}function at(e){return tt(e).replace(Ve,`%23`).replace(Ge,`%3F`)}function ot(e){return at(e).replace(Ue,`%2F`)}function st(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var ct=/\/$/,lt=e=>e.replace(ct,``);function ut(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=_t(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:st(o)}}function dt(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function ft(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function pt(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&X(t.matched[r],n.matched[i])&&mt(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function X(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function mt(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!ht(e[n],t[n]))return!1;return!0}function ht(e,t){return q(e)?gt(e,t):q(t)?gt(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function gt(e,t){return q(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function _t(e,t){if(e.startsWith(`/`))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o<r.length;o++)if(s=r[o],s!==`.`)if(s===`..`)a>1&&a--;else break;return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var Z={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};function vt(e){if(!e)if(W){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^/]+/,``)}else e=`/`;return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),lt(e)}var yt=/^[^#]+#/;function bt(e,t){return e.replace(yt,`#`)+t}function xt(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var St=()=>({left:window.scrollX,top:window.scrollY});function Ct(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=xt(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function wt(e,t){return(history.state?history.state.position-t:-1)+e}var Tt=new Map;function Et(e,t){Tt.set(e,t)}function Dt(e){let t=Tt.get(e);return Tt.delete(e),t}function Ot(e){return typeof e==`string`||e&&typeof e==`object`}function kt(e){return typeof e==`string`||typeof e==`symbol`}function At(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;e<n.length;++e){let r=n[e].replace(Ke,` `),i=r.indexOf(`=`),a=st(i<0?r:r.slice(0,i)),o=i<0?null:st(r.slice(i+1));if(a in t){let e=t[a];q(e)||(e=t[a]=[e]),e.push(o)}else t[a]=o}return t}function jt(e){let t=``;for(let n in e){let r=e[n];if(n=it(n),r==null){r!==void 0&&(t+=(t.length?`&`:``)+n);continue}(q(r)?r.map(e=>e&&rt(e)):[r&&rt(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function Mt(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=q(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}function Q(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Nt(e,n,r){let i=e.value;if(!i)return;let a=i,o=()=>{a[n].delete(r)};t(o),C(o),d(()=>{let t=e.value;t&&(a=t),a[n].add(r)}),a[n].add(r)}function Pt(e){Nt(p(Pe,{}),`updateGuards`,e)}function $(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(J(4,{from:n,to:t})):e instanceof Error?c(e):Ot(e)?c(J(2,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function Ft(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e]))if(ke(s)){let c=(s.__vccOpts||s)[t];c&&a.push($(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=Ae(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&$(c,n,r,o,e,i)()}))}}return a}function It(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;o<a;o++){let a=t.matched[o];a&&(e.matched.find(e=>X(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>X(e,s))||i.push(s))}return[n,r,i]}var Lt=()=>location.protocol+`//`+location.host;function Rt(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),ft(n,``)}return ft(n,e)+r+i}function zt(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=Rt(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:`pop`,direction:u?u>0?`forward`:`back`:``})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){if(document.visibilityState===`hidden`){let{history:e}=window;if(!e.state)return;e.replaceState(G({},e.state,{scroll:St()}),``)}}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u),document.removeEventListener(`visibilitychange`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),document.addEventListener(`visibilitychange`,u),{pauseListeners:c,listen:l,destroy:d}}function Bt(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?St():null}}function Vt(e){let{history:t,location:n}=window,r={value:Rt(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:Lt()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,G({},t.state,Bt(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=G({},i.value,t.state,{forward:e,scroll:St()});a(o.current,o,!0),a(e,G({},Bt(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function Ht(e){e=vt(e);let t=Vt(e),n=zt(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=G({location:``,base:e,go:r,createHref:bt.bind(null,e)},t,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>t.state.value}),i}function Ut(e){return e=location.host?e||location.pathname+location.search:``,e.includes(`#`)||(e+=`#`),Ht(e)}var Wt={type:0,value:``},Gt=/[a-zA-Z0-9_]/;function Kt(e){if(!e)return[[]];if(e===`/`)return[[Wt]];if(!e.startsWith(`/`))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=0,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===0?a.push({type:0,value:l}):n===1||n===2||n===3?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;s<e.length;)switch(c=e[s++],n){case 0:c===`\\`?(r=n,n=4):c===`/`?(l&&d(),o()):c===`:`?(d(),n=1):f();break;case 4:f(),n=r;break;case 1:c===`(`?n=2:Gt.test(c)?f():(d(),n=0,c!==`*`&&c!==`?`&&c!==`+`&&s--);break;case 2:c===`)`?u[u.length-1]==`\\`?u=u.slice(0,-1)+c:n=3:u+=c;break;case 3:d(),n=0,c!==`*`&&c!==`?`&&c!==`+`&&s--,u=``;break;default:t(`Unknown state`);break}return n===2&&t(`Unfinished custom RegExp for param "${l}"`),d(),o(),i}var qt=`[^/]+?`,Jt={sensitive:!1,strict:!1,start:!0,end:!0},Yt=/[.+*?^${}()[\]/\\]/g;function Xt(e,t){let n=G({},Jt,t),r=[],i=n.start?`^`:``,a=[];for(let t of e){let e=t.length?[]:[90];n.strict&&!t.length&&(i+=`/`);for(let r=0;r<t.length;r++){let o=t[r],s=40+(n.sensitive?.25:0);if(o.type===0)r||(i+=`/`),i+=o.value.replace(Yt,`\\$&`),s+=40;else if(o.type===1){let{value:e,repeatable:n,optional:c,regexp:l}=o;a.push({name:e,repeatable:n,optional:c});let u=l||qt;if(u!==qt){s+=10;try{RegExp(`(${u})`)}catch(t){throw Error(`Invalid custom RegExp for param "${e}" (${u}): `+t.message)}}let d=n?`((?:${u})(?:/(?:${u}))*)`:`(${u})`;r||(d=c&&t.length<2?`(?:/${d})`:`/`+d),c&&(d+=`?`),i+=d,s+=20,c&&(s+=-8),n&&(s+=-20),u===`.*`&&(s+=-50)}e.push(s)}r.push(e)}if(n.strict&&n.end){let e=r.length-1;r[e][r[e].length-1]+=.7000000000000001}n.strict||(i+=`/?`),n.end?i+=`$`:n.strict&&!i.endsWith(`/`)&&(i+=`(?:/|$)`);let o=new RegExp(i,n.sensitive?``:`i`);function s(e){let t=e.match(o),n={};if(!t)return null;for(let e=1;e<t.length;e++){let r=t[e]||``,i=a[e-1];n[i.name]=r&&i.repeatable?r.split(`/`):r}return n}function c(t){let n=``,r=!1;for(let i of e){(!r||!n.endsWith(`/`))&&(n+=`/`),r=!1;for(let e of i)if(e.type===0)n+=e.value;else if(e.type===1){let{value:a,repeatable:o,optional:s}=e,c=a in t?t[a]:``;if(q(c)&&!o)throw Error(`Provided param "${a}" is an array but it is not repeatable (* or + modifiers)`);let l=q(c)?c.join(`/`):c;if(!l)if(s)i.length<2&&(n.endsWith(`/`)?n=n.slice(0,-1):r=!0);else throw Error(`Missing required param "${a}"`);n+=l}}return n||`/`}return{re:o,score:r,keys:a,parse:s,stringify:c}}function Zt(e,t){let n=0;for(;n<e.length&&n<t.length;){let r=t[n]-e[n];if(r)return r;n++}return e.length<t.length?e.length===1&&e[0]===80?-1:1:e.length>t.length?t.length===1&&t[0]===80?1:-1:0}function Qt(e,t){let n=0,r=e.score,i=t.score;for(;n<r.length&&n<i.length;){let e=Zt(r[n],i[n]);if(e)return e;n++}if(Math.abs(i.length-r.length)===1){if($t(r))return 1;if($t(i))return-1}return i.length-r.length}function $t(e){let t=e[e.length-1];return e.length>0&&t[t.length-1]<0}var en={strict:!1,end:!0,sensitive:!1};function tn(e,t,n){let r=G(Xt(Kt(e.path),n),{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function nn(e,t){let n=[],r=new Map;t=Me(en,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=an(e);s.aliasOf=r&&r.record;let l=Me(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push(an(G({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&u[0]!==`/`){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=tn(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!sn(d)&&o(e.name)),dn(d)&&c(d),s.children){let e=s.children;for(let t=0;t<e.length;t++)a(e[t],d,r&&r.children[t])}r||=d}return f?()=>{o(f)}:K}function o(e){if(kt(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=ln(e,n);n.splice(t,0,e),e.record.name&&!sn(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw J(1,{location:e});s=i.record.name,a=G(rn(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&rn(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name,i.keys.forEach(e=>{e.optional&&!a[e.name]&&delete a[e.name]}));else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw J(1,{location:e,currentLocation:t});s=i.record.name,a=G({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:cn(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function rn(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function an(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:on(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function on(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function sn(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function cn(e){return e.reduce((e,t)=>G(e,t.meta),{})}function ln(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;Qt(e,t[i])<0?r=i:n=i+1}let i=un(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function un(e){let t=e;for(;t=t.parent;)if(dn(t)&&Qt(e,t)===0)return t}function dn({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function fn(e){let t=p(Ie),n=p(Le),r=l(()=>{let n=x(e.to);return t.resolve(n)}),i=l(()=>{let{matched:e}=r.value,{length:t}=e,i=e[t-1],a=n.matched;if(!i||!a.length)return-1;let o=a.findIndex(X.bind(null,i));if(o>-1)return o;let s=_n(e[t-2]);return t>1&&_n(i)===s&&a[a.length-1].path!==s?a.findIndex(X.bind(null,e[t-2])):o}),a=l(()=>i.value>-1&&gn(n.params,r.value.params)),o=l(()=>i.value>-1&&i.value===n.matched.length-1&&mt(n.params,r.value.params));function s(n={}){if(hn(n)){let n=t[x(e.replace)?`replace`:`push`](x(e.to)).catch(K);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>n),n}return Promise.resolve()}return{route:r,href:l(()=>r.value.href),isActive:a,isExactActive:o,navigate:s}}function pn(e){return e.length===1?e[0]:e}var mn=v({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:fn,setup(e,{slots:t}){let n=u(fn(e)),{options:r}=p(Ie),i=l(()=>({[vn(e.activeClass,r.linkActiveClass,`router-link-active`)]:n.isActive,[vn(e.exactActiveClass,r.linkExactActiveClass,`router-link-exact-active`)]:n.isExactActive}));return()=>{let r=t.default&&pn(t.default(n));return e.custom?r:g(`a`,{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:i.value},r)}}});function hn(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function gn(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!q(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function _n(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var vn=(e,t,n)=>e??t??n,yn=v({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(t,{attrs:n,slots:r}){let o=p(Re),s=l(()=>t.route||o.value),c=p(Fe,0),u=l(()=>{let e=x(c),{matched:t}=s.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),d=l(()=>s.value.matched[u.value]);a(Fe,l(()=>u.value+1)),a(Pe,d),a(Re,s);let f=e();return i(()=>[f.value,d.value,t.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!X(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let e=s.value,i=t.name,a=d.value,o=a&&a.components[i];if(!o)return bn(r.default,{Component:o,route:e});let c=a.props[i],l=g(o,G({},c?c===!0?e.params:typeof c==`function`?c(e):c:null,n,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(a.instances[i]=null)},ref:f}));return bn(r.default,{Component:l,route:e})||l}}});function bn(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var xn=yn;function Sn(e){let t=nn(e.routes,e),n=e.parseQuery||At,r=e.stringifyQuery||jt,i=e.history,a=Q(),o=Q(),s=Q(),c=_(Z),l=Z;W&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let u=je.bind(null,e=>``+e),d=je.bind(null,ot),f=je.bind(null,st);function p(e,n){let r,i;return kt(e)?(r=t.getRecordMatcher(e),i=n):i=e,t.addRoute(i,r)}function h(e){let n=t.getRecordMatcher(e);n&&t.removeRoute(n)}function g(){return t.getRoutes().map(e=>e.record)}function v(e){return!!t.getRecordMatcher(e)}function y(e,a){if(a=G({},a||c.value),typeof e==`string`){let r=ut(n,e,a.path),o=t.resolve({path:r.path},a),s=i.createHref(r.fullPath);return G(r,o,{params:f(o.params),redirectedFrom:void 0,href:s})}let o;if(e.path!=null)o=G({},e,{path:ut(n,e.path,a.path).path});else{let t=G({},e.params);for(let e in t)t[e]??delete t[e];o=G({},e,{params:d(t)}),a.params=d(a.params)}let s=t.resolve(o,a),l=e.hash||``;s.params=u(f(s.params));let p=dt(r,G({},e,{hash:nt(l),path:s.path})),m=i.createHref(p);return G({fullPath:p,hash:l,query:r===jt?Mt(e.query):e.query||{}},s,{redirectedFrom:void 0,href:m})}function b(e){return typeof e==`string`?ut(n,e,c.value.path):G({},e)}function S(e,t){if(l!==e)return J(8,{from:t,to:e})}function C(e){return T(e)}function te(e){return C(G(b(e),{replace:!0}))}function w(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=b(i):{path:i},i.params={}),G({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function T(e,t){let n=l=y(e),i=c.value,a=e.state,o=e.force,s=e.replace===!0,u=w(n,i);if(u)return T(G(b(u),{state:typeof u==`object`?G({},a,u.state):a,force:o,replace:s}),t||n);let d=n;d.redirectedFrom=t;let f;return!o&&pt(r,i,n)&&(f=J(16,{to:d,from:i}),P(i,i,!0,!1)),(f?Promise.resolve(f):O(d,i)).catch(e=>Y(e)?Y(e,2)?e:N(e):M(e,d,i)).then(e=>{if(e){if(Y(e,2))return T(G({replace:s},b(e.to),{state:typeof e.to==`object`?G({},a,e.to.state):a,force:o}),t||d)}else e=re(d,i,!0,s,a);return ne(d,i,e),e})}function E(e,t){let n=S(e,t);return n?Promise.reject(n):Promise.resolve()}function D(e){let t=L.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function O(e,t){let n,[r,i,s]=It(e,t);n=Ft(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push($(r,e,t))});let c=E.bind(null,e,t);return n.push(c),z(n).then(()=>{n=[];for(let r of a.list())n.push($(r,e,t));return n.push(c),z(n)}).then(()=>{n=Ft(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push($(r,e,t))});return n.push(c),z(n)}).then(()=>{n=[];for(let r of s)if(r.beforeEnter)if(q(r.beforeEnter))for(let i of r.beforeEnter)n.push($(i,e,t));else n.push($(r.beforeEnter,e,t));return n.push(c),z(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Ft(s,`beforeRouteEnter`,e,t,D),n.push(c),z(n))).then(()=>{n=[];for(let r of o.list())n.push($(r,e,t));return n.push(c),z(n)}).catch(e=>Y(e,8)?e:Promise.reject(e))}function ne(e,t,n){s.list().forEach(r=>D(()=>r(e,t,n)))}function re(e,t,n,r,a){let o=S(e,t);if(o)return o;let s=t===Z,l=W?history.state:{};n&&(r||s?i.replace(e.fullPath,G({scroll:s&&l&&l.scroll},a)):i.push(e.fullPath,a)),c.value=e,P(e,t,n,s),N()}let k;function ie(){k||=i.listen((e,t,n)=>{if(!R.listening)return;let r=y(e),a=w(r,R.currentRoute.value);if(a){T(G(a,{replace:!0,force:!0}),r).catch(K);return}l=r;let o=c.value;W&&Et(wt(o.fullPath,n.delta),St()),O(r,o).catch(e=>Y(e,12)?e:Y(e,2)?(T(G(b(e.to),{force:!0}),r).then(e=>{Y(e,20)&&!n.delta&&n.type===`pop`&&i.go(-1,!1)}).catch(K),Promise.reject()):(n.delta&&i.go(-n.delta,!1),M(e,r,o))).then(e=>{e||=re(r,o,!1),e&&(n.delta&&!Y(e,8)?i.go(-n.delta,!1):n.type===`pop`&&Y(e,20)&&i.go(-1,!1)),ne(r,o,e)}).catch(K)})}let A=Q(),ae=Q(),j;function M(e,t,n){N(e);let r=ae.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function oe(){return j&&c.value!==Z?Promise.resolve():new Promise((e,t)=>{A.add([e,t])})}function N(e){return j||(j=!e,ie(),A.list().forEach(([t,n])=>e?n(e):t()),A.reset()),e}function P(t,n,r,i){let{scrollBehavior:a}=e;if(!W||!a)return Promise.resolve();let o=!r&&Dt(wt(t.fullPath,0))||(i||!r)&&history.state&&history.state.scroll||null;return ee().then(()=>a(t,n,o)).then(e=>e&&Ct(e)).catch(e=>M(e,t,n))}let F=e=>i.go(e),I,L=new Set,R={currentRoute:c,listening:!0,addRoute:p,removeRoute:h,clearRoutes:t.clearRoutes,hasRoute:v,getRoutes:g,resolve:y,options:e,push:C,replace:te,go:F,back:()=>F(-1),forward:()=>F(1),beforeEach:a.add,beforeResolve:o.add,afterEach:s.add,onError:ae.add,isReady:oe,install(e){e.component(`RouterLink`,mn),e.component(`RouterView`,xn),e.config.globalProperties.$router=R,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>x(c)}),W&&!I&&c.value===Z&&(I=!0,C(i.location).catch(e=>{}));let t={};for(let e in Z)Object.defineProperty(t,e,{get:()=>c.value[e],enumerable:!0});e.provide(Ie,R),e.provide(Le,m(t)),e.provide(Re,c);let n=e.unmount;L.add(e),e.unmount=function(){L.delete(e),L.size<1&&(l=Z,k&&k(),k=null,c.value=Z,I=!1,j=!1),n()}}};function z(e){return e.reduce((e,t)=>e.then(()=>D(t)),Promise.resolve())}return R}k({mounted(e,t){let n=t.arg?.split(`,`)??!0;if(typeof t.value==`function`)ae(n,t.value,{target:e});else{let[r,i]=t.value;ae(n,r,{target:e,...i})}}});var Cn=k({mounted(e,t){typeof t.value==`function`?A(e,t.value,{modifiers:t.modifiers}):A(e,...t.value)}});k({mounted(e,t){let[n,r]=typeof t.value==`function`?[t.value,{}]:t.value,{height:a,bottom:o,left:s,right:c,top:l,width:u,x:d,y:f}=M(e,r);i([a,o,s,c,l,u,d,f],()=>n({height:a,bottom:o,left:s,right:c,top:l,width:u,x:d,y:f}))}});var wn=k({mounted(e,t){let n=t.value;if(typeof n==`function`)i(ie(e),e=>n(e));else{let[t,r]=n;i(ie(e,r),e=>t(e))}}});k({mounted(e,t){let n=typeof t.value==`function`?t.value:t.value?.[0],{width:r,height:a}=j(e,...typeof t.value==`function`?[]:t.value.slice(1));i([r,a],([e,t])=>n({width:e,height:t}))}}),k({mounted(e,t){if(typeof t.value==`function`){let n=t.value;i(O(e),e=>n(e),{immediate:!0})}else{let[n,r]=t.value;if(r?.controls){let t=O(e,r);i(t.isVisible,()=>n(t),{immediate:!0})}else i(O(e,r),e=>n(e),{immediate:!0})}}}),k({mounted(e,t){typeof t.value==`function`?ne(e,t.value):ne(e,...t.value)}});var Tn=k({mounted(e,t){typeof t.value==`function`?w(e,t.value):w(e,...t.value)}});k({mounted(e,t){let[n,r]=typeof t.value==`function`?[t.value,{}]:t.value;i(re(u(te(e,r)),`stop`),e=>n(e))}}),k({mounted(e,t){typeof t.value==`function`?D(e,t.value):D(e,...t.value)}}),k({mounted(e,t){if(typeof t.value==`function`){let n=t.value,r=T(e,{onScroll(){n(r)},onStop(){n(r)}})}else{let[n,r]=t.value,i=T(e,{...r,onScroll(e){var t;(t=r.onScroll)==null||t.call(r,e),n(i)},onStop(e){var t;(t=r.onStop)==null||t.call(r,e),n(i)}})}}});function En(){let e=!1,t=_(!1);return k((n,r)=>{if(t.value=r.value,e)return;e=!0;let a=E(n,r.value);i(t,e=>a.value=e)})}En();export{Ut as a,Be as c,De as d,Oe as f,Sn as i,ze as l,Tn as n,Ht as o,Cn as r,Pt as s,wn as t,he as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{$n as e,$t as t,In as n,Jn as r,Qt as i,Rn as a,Rt as o,Sn as s,Vn as c,Xt as l,Yn as u,Yt as d,Zt as f,ar as p,cr as m,dn as h,dr as g,gn as _,in as v,on as y,sr as b,wn as x}from"./vendor-TwHhULaP.js";import{Ht as S,di as ee,k as C,z as w}from"./vendor-cameraui-CUPAufpt.js";import{t as T}from"./CuiCameraCard-BQpPhbFu.js";import{t as E}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as D}from"./useSharedComposables-THEdrAoU.js";import{b as O}from"./vendor-primevue-Bs3kBqxF.js";import{t as k}from"./useFileDownload-CRB3k3lW.js";import{n as A}from"./types-CEoAgYqA.js";import{t as j}from"./download-C5mF7t_D.js";var M={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function N(e,n){return x(),t(`svg`,M,[...n[0]||=[l(`g`,{fill:`none`,"fill-rule":`evenodd`},[l(`path`,{d:`m12.593 23.258l-.011.002l-.071.035l-.02.004l-.014-.004l-.071-.035q-.016-.005-.024.005l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.017-.018m.265-.113l-.013.002l-.185.093l-.01.01l-.003.011l.018.43l.005.012l.008.007l.201.093q.019.005.029-.008l.004-.014l-.034-.614q-.005-.018-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.004-.011l.017-.43l-.003-.012l-.01-.01z`}),l(`path`,{fill:`currentColor`,d:`M5 3a3 3 0 0 0-3 3v10a2 2 0 0 0 2 2V6a1 1 0 0 1 1-1h14a2 2 0 0 0-2-2zm0 5a2 2 0 0 1 2-2h13a2 2 0 0 1 2 2v11.333a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2zm15 0H7v7.848L10.848 12a1.25 1.25 0 0 1 1.768 0l3.241 3.24l.884-.883a1.25 1.25 0 0 1 1.768 0L20 15.848zm-2 3a1.5 1.5 0 1 1-3 0a1.5 1.5 0 0 1 3 0`})],-1)]])}var P=u({name:`mingcute-photo-album-fill`,render:N}),F={class:`camera-stream-event-container`},I={class:`stream-wrapper`},L={key:0,class:`ai-description-overlay`},R={class:`min-w-0`},z={class:`text-sm font-semibold text-white`},B={class:`text-xs text-white/85 mt-1`},V=E(y({__name:`CameraStreamEvent`,props:{camera:{},eventTimestamp:{}},setup(u,{expose:y}){let E=u,M=ee(),{t:N}=M,P=O(),{mdBreakpoint:V}=D(),H=h(`dialogRefProps`),U=h(`dialogHeaderToggles`,{}),{plugin:W}=S(`@camera.ui/camera-ui-nvr`),{camera:G,eventTimestamp:K}=p(E),q=n(`cameraCardRef`),J=n(`cuiTimelineRef`),Y=e(!1),X=e(),Z=e(!1),Q=w(d(()=>G.value._id),{sourceRole:X}),te=d(()=>!!H.loading?.value),ne=d(()=>U[0]??!1),$=d(()=>J.value?.currentEventDescription),re=d(()=>!!J.value?.currentEvent),ie=d(()=>J.value?.isLive??!0),ae=d(()=>({locale:M.locale.value,dayNames:P.config.locale?.dayNames,dayNamesShort:P.config.locale?.dayNamesShort,monthNames:P.config.locale?.monthNames,monthNamesShort:P.config.locale?.monthNamesShort}));async function oe(){if(Z.value)return;let e=J.value?.currentEvent;if(!e)return;let t=W.value;if(t?.nvrExport){Z.value=!0;try{let n=await t.nvrExport(e.cameraId,e.startMs*1e3,e.endMs*1e3);await k({url:n.url,filename:n.filename})}catch(e){console.error(`Download failed:`,e)}finally{Z.value=!1}}}function se(e){q.value?.timelineScroll(e)}a([re,ie,Z],([e,t])=>{if(!H.headerActions)return;let n=[];n.push({icon:A,tooltip:N(`components.player.ai_descriptions`),toggle:!0,onClick:()=>{}}),!t&&e&&W.value&&n.push({icon:j,tooltip:N(`views.recordings.download`),onClick:oe,loading:Z.value}),H.headerActions.value=n},{immediate:!0}),K.value&&(Q.mode.value=`play`,Q.loading.value=!0),s(()=>{setTimeout(()=>{Y.value=!0},300);let e=K.value;e&&_(()=>{Q.play(e*1e3)})});function ce(){let e=Q.currentTimestamp.value>0?Math.floor(Q.currentTimestamp.value/1e3):K.value;return e?`/cameras/${G.value.name}?startTs=${e}`:`/cameras/${G.value.name}`}return y({isLoading:te,resolveGoTo:ce}),(e,n)=>{let a=T,s=A;return x(),t(`div`,F,[l(`div`,I,[(x(),f(a,{ref_key:`cameraCardRef`,ref:q,key:b(G).name,"source-role":b(X),"onUpdate:sourceRole":n[0]||=e=>r(X)?X.value=e:null,"streaming-mode":`webrtc`,"camera-info":b(G).name,"flat-card":``,"card-props":{pt:{root:{class:{"!rounded-md":!0}}}},"camera-name-overlay":!1,toolbar:!1,subcontrol:!0,"subcontrol-quality-button":!0,"subcontrol-activity-mode-button":!1,"subcontrol-ptz-button":!1,"subcontrol-streaming-mode-button":!1,"control-pip-button":!1,"control-microphone-button":!1},null,8,[`source-role`,`camera-info`])),v(o,{"enter-active-class":`transition-all duration-300 ease-out`,"enter-from-class":`opacity-0 -translate-y-2`,"enter-to-class":`opacity-100 translate-y-0`,"leave-active-class":`transition-all duration-200 ease-in`,"leave-from-class":`opacity-100 translate-y-0`,"leave-to-class":`opacity-0 -translate-y-2`},{default:c(()=>[b($)&&b(ne)?(x(),t(`div`,L,[v(s,{class:`w-4 h-4 text-white/90 shrink-0 mt-0.5`}),l(`div`,R,[l(`p`,z,g(b($).title),1),l(`p`,B,g(b($).description),1)])])):i(``,!0)]),_:1})]),(x(),f(b(C),{ref_key:`cuiTimelineRef`,ref:J,key:b(G).name,"camera-ids":[b(G)._id],"initial-timestamp":b(K),loading:!b(Y),type:b(V)?`vertical`:`horizontal`,"ignore-bottom-safe-area":b(V),"show-segments":!1,"show-zoom":!1,"show-date":!1,"md-breakpoint":b(V),class:m([`flex w-full border-t-[1px] border-color shrink-0`,b(V)?`h-full`:`h-[200px]`]),"card-class":{"mt-auto":!b(V)},"flat-card":``,"locale-settings":b(ae),onScrolling:se},null,8,[`camera-ids`,`initial-timestamp`,`loading`,`type`,`ignore-bottom-safe-area`,`md-breakpoint`,`class`,`card-class`,`locale-settings`]))])}}}),[[`__scopeId`,`data-v-6f843e58`]]),H={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function U(e,n){return x(),t(`svg`,H,[...n[0]||=[l(`path`,{fill:`currentColor`,d:`M3 11h8V3H3m0 18h8v-8H3m10 8h8v-8h-8m0-10v8h8V3`},null,-1)]])}var W=u({name:`mdi-view-grid`,render:U});export{V as n,P as r,W as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.camera-stream-event-container[data-v-6f843e58]{contain:inline-size;flex-direction:column;width:100%;max-width:100%;display:flex;overflow:hidden}.stream-wrapper[data-v-6f843e58]{flex:auto;min-width:0;display:flex;position:relative}.stream-wrapper[data-v-6f843e58]>:first-child{flex:auto;min-width:0;min-height:0}.ai-description-overlay[data-v-6f843e58]{pointer-events:none;z-index:5;border-top-left-radius:inherit;border-top-right-radius:inherit;background:linear-gradient(#000000d9 0%,#000000a6 55%,#0000 100%);align-items:flex-start;gap:.5rem;padding:.75rem 1rem 1.25rem;display:flex;position:absolute;top:0;left:0;right:0}
|
|
File without changes
|