@camera.ui/server 2.0.18 → 2.0.20
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-hjvRJoie.js → 404-DVIgoIOM.js} +1 -1
- package/dist/interface/assets/{About-CXK9lps9.js → About-I7CYGBLL.js} +1 -1
- package/dist/interface/assets/{Adminpanel-D1bsiC_B.js → Adminpanel-hjxjbIls.js} +1 -1
- package/dist/interface/assets/Automation-BD6i5cCJ.js +3 -0
- package/dist/interface/assets/{AutomationImport-B1Wsf3O1.js → AutomationImport-DOdFWPX5.js} +2 -2
- package/dist/interface/assets/{AutomationStore-BUmTKbR8.js → AutomationStore-CiCQsvdr.js} +2 -2
- package/dist/interface/assets/{AutomationStoreDetail-DfENt4wG.js → AutomationStoreDetail-C8GdQfDw.js} +2 -2
- package/dist/interface/assets/Automations-Dam6L6IJ.js +2 -0
- package/dist/interface/assets/Camera-DpK373mr.js +2 -0
- package/dist/interface/assets/{CameraConsole-D_1E2i7a.js → CameraConsole-DXtIR7hw.js} +2 -2
- package/dist/interface/assets/{Cameras-Co54hUIY.js → Cameras-DwFpaiFD.js} +2 -2
- package/dist/interface/assets/Camview-BXVRXt1q.js +1 -0
- package/dist/interface/assets/{Config-CZ3qg4V7.js → Config-FNZhCKP3.js} +1 -1
- package/dist/interface/assets/{ConfigActionCameraControl-BkP4KpkL.js → ConfigActionCameraControl-ne90-Fez.js} +1 -1
- package/dist/interface/assets/{ConfigActionDelay-CW3x89X3.js → ConfigActionDelay-BRYGWPTP.js} +1 -1
- package/dist/interface/assets/{ConfigActionHttp-CqRThGAM.js → ConfigActionHttp-D1m69rJz.js} +1 -1
- package/dist/interface/assets/{ConfigActionImageInput-D-wCYFc9.js → ConfigActionImageInput-Dm_P4Q7V.js} +1 -1
- package/dist/interface/assets/{ConfigActionMqtt-50Oit6xb.js → ConfigActionMqtt-CmRxXG4V.js} +1 -1
- package/dist/interface/assets/{ConfigActionNotification-CV4TZpsD.js → ConfigActionNotification-BipubH-a.js} +1 -1
- package/dist/interface/assets/ConfigActionNotificationControl-HDZVn3cx.js +1 -0
- package/dist/interface/assets/{ConfigActionOutput-DDCdD_nG.js → ConfigActionOutput-vD4dohGk.js} +1 -1
- package/dist/interface/assets/{ConfigActionPlugin-3BiyEJsy.js → ConfigActionPlugin-ug-TKeyw.js} +1 -1
- package/dist/interface/assets/{ConfigActionSensor-kkHOn3aC.js → ConfigActionSensor-CBNs37pL.js} +1 -1
- package/dist/interface/assets/{ConfigActionSnapshot-O4nan24K.js → ConfigActionSnapshot-BhrCn6PJ.js} +1 -1
- package/dist/interface/assets/{ConfigActionVariable-Ci3wXMYZ.js → ConfigActionVariable-BabtvdZx.js} +1 -1
- package/dist/interface/assets/{ConfigConditionIfElse-CPzw54yv.js → ConfigConditionIfElse-CAWJ-gg2.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSensorState-DcV8-3Tj.js → ConfigConditionSensorState-BxTrOTpB.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSwitch-b0ikuhC6.js → ConfigConditionSwitch-aJ-w67SY.js} +1 -1
- package/dist/interface/assets/{ConfigConditionTime-q7GYSoQk.js → ConfigConditionTime-HKC4eK68.js} +1 -1
- package/dist/interface/assets/{ConfigSensorValueInput-Ba_ZC14J.js → ConfigSensorValueInput-C4msc9Se.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerDetection-CF-C3A-0.js → ConfigTriggerDetection-NwOPfWsQ.js} +1 -1
- package/dist/interface/assets/ConfigTriggerGeofence-CmX_4WIJ.js +1 -0
- package/dist/interface/assets/{ConfigTriggerManual-B7UGIwE2.js → ConfigTriggerManual-BuJQbcOo.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerMqtt-DL1MIwBs.js → ConfigTriggerMqtt-R0VWW5up.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSchedule-DCUXevkw.js → ConfigTriggerSchedule-D21piX-w.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSensor-DRX68f5E.js → ConfigTriggerSensor-Cl-mz7nd.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSystem-BOt8AI3a.js → ConfigTriggerSystem-CPPe9gXo.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerWebhook-CFeWElXX.js → ConfigTriggerWebhook-BVKRs9Pr.js} +1 -1
- package/dist/interface/assets/Console-C8WGObIS.js +1 -0
- package/dist/interface/assets/{CuiAutomationRunsDialog-yXyj7vrL.js → CuiAutomationRunsDialog-B1HvXwOc.js} +1 -1
- package/dist/interface/assets/{CuiBottomSheet-SnWWgn5I.js → CuiBottomSheet-BMLuWNPf.js} +1 -1
- package/dist/interface/assets/CuiBottomSheet-VFweBZsl.js +1 -0
- package/dist/interface/assets/{CuiCameraPipCard-BmmyPCOP.js → CuiCameraPipCard-CS8nuRgX.js} +1 -1
- package/dist/interface/assets/CuiCameraRecordings-Cbv9O2mI.js +1 -0
- package/dist/interface/assets/{CuiCameraShares-BE9d09pX.js → CuiCameraShares-7OhxbeqJ.js} +1 -1
- package/dist/interface/assets/{CuiCameraTable-TiUZNpga.js → CuiCameraTable-CggOjNka.js} +2 -2
- package/dist/interface/assets/{CuiDataTable-DqtFJKC6.js → CuiDataTable-VRoxHf0R.js} +1 -1
- package/dist/interface/assets/CuiPluginCard-C_HSpNve.js +2 -0
- package/dist/interface/assets/{CuiPluginCategoryChip-BX0xg3py.js → CuiPluginCategoryChip-iszX6Lqh.js} +1 -1
- package/dist/interface/assets/{CuiPluginOAuthButton-DZS31TnY.js → CuiPluginOAuthButton-CD_cP8Sg.js} +2 -2
- package/dist/interface/assets/{CuiPluginTrustBadge-rZePqROi.js → CuiPluginTrustBadge-BtP_jlV6.js} +1 -1
- package/dist/interface/assets/{CuiQRCode-BqMd2Oh6.js → CuiQRCode-TwHpMVmz.js} +1 -1
- package/dist/interface/assets/{CuiRecordingsGrid-Dkpe799a.js → CuiRecordingsGrid-DFWeOQom.js} +1 -1
- package/dist/interface/assets/{CuiSchema-J_b00DYu.js → CuiSchema-sba3GEON.js} +1 -1
- package/dist/interface/assets/{CuiTopNavbarItem-CXxnNN1s.js → CuiTopNavbarItem-qqxqB8Cc.js} +1 -1
- package/dist/interface/assets/Faces-DKuJfnrx.js +1 -0
- package/dist/interface/assets/FirstSteps-VH2JpKh5.js +1 -0
- package/dist/interface/assets/Instances-B9R41nUI.js +1 -0
- package/dist/interface/assets/{Logs-DK8-ilEl.js → Logs-BiEohM1x.js} +2 -2
- package/dist/interface/assets/{Menu-Cn0dBf4v.js → Menu-CauhLfRy.js} +1 -1
- package/dist/interface/assets/{OAuthDeviceFlow-C6aER-P5.js → OAuthDeviceFlow-Cg1RWZ2r.js} +1 -1
- package/dist/interface/assets/Plugin-D83B_edv.js +1 -0
- package/dist/interface/assets/Plugin-wl-2k1zI.css +1 -0
- package/dist/interface/assets/{PluginConsole-cQBNvsGp.js → PluginConsole-DNZYZcf-.js} +2 -2
- package/dist/interface/assets/PluginDetail-olQafOof.js +2 -0
- package/dist/interface/assets/{PluginSchema-DhNpD_HM.js → PluginSchema-CBh-9WZs.js} +1 -1
- package/dist/interface/assets/PluginSearch-BRTEBxyD.js +2 -0
- package/dist/interface/assets/PluginSearch-BeRuXfue.js +1 -0
- package/dist/interface/assets/Plugins-kIuGHw0l.js +1 -0
- package/dist/interface/assets/Recordings-DCMz1eso.js +1 -0
- package/dist/interface/assets/{Settings-CDH3BeuL.js → Settings-Di_XJPuI.js} +1 -1
- package/dist/interface/assets/SettingsAccount-B50Vw6rp.js +1 -0
- package/dist/interface/assets/SettingsAccount-DwPmXX3f.js +1 -0
- package/dist/interface/assets/{SettingsAppearance-BnuFyX8o.js → SettingsAppearance-Bt5mV6iW.js} +1 -1
- package/dist/interface/assets/SettingsAppearance-CiwV01fK.js +1 -0
- package/dist/interface/assets/{SettingsBackup-CBF2IQN_.js → SettingsBackup-By22p7wO.js} +1 -1
- package/dist/interface/assets/SettingsMqtt-DIUaZT6Y.js +1 -0
- package/dist/interface/assets/{SettingsNotifications-D-2v9oM8.js → SettingsNotifications-pL4a8qGr.js} +1 -1
- package/dist/interface/assets/{SettingsRecordings-Ui2Xd5Ye.js → SettingsRecordings-Dis1Nbho.js} +1 -1
- package/dist/interface/assets/SettingsRemote-DtqxKJ72.js +1 -0
- package/dist/interface/assets/SettingsSystem-Bmu_mIzP.js +2 -0
- package/dist/interface/assets/{SettingsUsers-DTFIKS6H.js → SettingsUsers-DSrT7URM.js} +1 -1
- package/dist/interface/assets/{Terminal-DDsjIhe7.js → Terminal-rBjP4aPW.js} +2 -2
- package/dist/interface/assets/{VariableInput-BEjTv8xz.js → VariableInput-B9OmFO4i.js} +1 -1
- package/dist/interface/assets/{VariableSuggestions-DcgHR-OY.js → VariableSuggestions-B1-MhuJO.js} +1 -1
- package/dist/interface/assets/VersionsHandler-DGHOWAbq.js +7 -0
- package/dist/interface/assets/Workers-BIrXPPcm.js +2 -0
- package/dist/interface/assets/api-C4TatJmj.js +2 -0
- package/dist/interface/assets/api-LLscRp6O.css +2 -0
- package/dist/interface/assets/{api-B1n4M73U.js → api-iqP3iqyL.js} +1 -1
- package/dist/interface/assets/{auth-DOnr6Mc1.js → auth-DKeGdKLU.js} +1 -1
- package/dist/interface/assets/automations-C5--KLWD.js +1 -0
- package/dist/interface/assets/{cameras.schema-C-xz1hwq.js → cameras.schema-BEG-W9JW.js} +1 -1
- package/dist/interface/assets/cloudHandoff-CHuMYunO.js +1 -0
- package/dist/interface/assets/{config-CYmKCSzU.js → config-DJDQ4YbG.js} +1 -1
- package/dist/interface/assets/{flowSchema-CsPTDyH8.js → flowSchema-ByS8_PvM.js} +1 -1
- package/dist/interface/assets/main-LNc3C34P.js +3 -0
- package/dist/interface/assets/mqtt-D2bsWeKE.js +1 -0
- package/dist/interface/assets/nodeDefinitions-B3j6RajL.js +1 -0
- package/dist/interface/assets/{notifications-Dt6ygmRP.js → notifications-CafZ2-zM.js} +1 -1
- package/dist/interface/assets/{plugins-BcJnIPJC.js → plugins-CIT9775i.js} +1 -1
- package/dist/interface/assets/{round-restart-alt-B6N0m8oC.js → round-restart-alt-CeS-sqUQ.js} +1 -1
- package/dist/interface/assets/{server-_ByAktOF.js → server-hEeNagJk.js} +1 -1
- package/dist/interface/assets/{theme-CORL_-pn.js → theme-BJfyZiCo.js} +1 -1
- package/dist/interface/assets/{types-DDSlYw6n.js → types-DBGjHKw2.js} +1 -1
- package/dist/interface/assets/types-DeSkG3t-.js +1 -0
- package/dist/interface/assets/types-YwmhC3Ej.js +1 -0
- package/dist/interface/assets/{useAppVersion-CWa09Ql5.js → useAppVersion-0AZfrSWk.js} +1 -1
- package/dist/interface/assets/useBackupRestore-BSKF4lS5.js +1 -0
- package/dist/interface/assets/{useCameraOptions-L0smaaZz.js → useCameraOptions-CL_7DfoJ.js} +1 -1
- package/dist/interface/assets/{useLogsSocket-DQSgBMsw.js → useLogsSocket-DH7pUHng.js} +2 -2
- package/dist/interface/assets/{useServerRestart-lPp2ZiX-.js → useServerRestart-Bp_KEXEn.js} +1 -1
- package/dist/interface/assets/{useStreamStatus-BroqI_Eh.js → useStreamStatus-M9pF0vGv.js} +1 -1
- package/dist/interface/assets/{useUserOptions-BB451w9I.js → useUserOptions-8pJY90z8.js} +1 -1
- package/dist/interface/assets/vendor-cameraui-CxG00gaf.js +2040 -0
- package/dist/interface/assets/{vendor-core-CoiYJRqo.js → vendor-core-C6srgzh_.js} +1 -1
- package/dist/interface/assets/{vendor-gridstack-9ka60QnT.js → vendor-gridstack-BJlwi692.js} +1 -1
- package/dist/interface/assets/{vendor-gridstack-Chv4ms9g.css → vendor-gridstack-DsRWLz0m.css} +1 -1
- package/dist/interface/assets/{vendor-primevue-B3sIO6X2.js → vendor-primevue-DZljZRZZ.js} +1 -1
- package/dist/interface/index.html +19 -19
- package/dist/interface/sw.js +1 -1
- package/dist/server/package.json +11 -8
- package/dist/server/requirements.txt +1 -1
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/config.py +2 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/detection.py +2 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/base.py +1 -0
- package/dist/server/src/api/controllers/backup.controller.js +1 -0
- package/dist/server/src/api/controllers/backup.controller.js.map +1 -1
- package/dist/server/src/api/controllers/cameras.controller.js +1 -0
- package/dist/server/src/api/controllers/cameras.controller.js.map +1 -1
- package/dist/server/src/api/database/selfcheck.js +5 -3
- package/dist/server/src/api/database/selfcheck.js.map +1 -1
- package/dist/server/src/api/database/types.d.ts +2 -0
- package/dist/server/src/api/schemas/automations.schema.d.ts +3 -0
- package/dist/server/src/api/schemas/automations.schema.js +1 -0
- package/dist/server/src/api/schemas/automations.schema.js.map +1 -1
- package/dist/server/src/api/schemas/cameras.schema.d.ts +40 -0
- package/dist/server/src/api/schemas/cameras.schema.js +3 -0
- package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
- package/dist/server/src/automations/actions/index.js +2 -0
- package/dist/server/src/automations/actions/index.js.map +1 -1
- package/dist/server/src/automations/actions/notificationControl.d.ts +2 -0
- package/dist/server/src/automations/actions/notificationControl.js +17 -0
- package/dist/server/src/automations/actions/notificationControl.js.map +1 -0
- package/dist/server/src/camera/controller.d.ts +1 -1
- package/dist/server/src/camera/controller.js +13 -15
- package/dist/server/src/camera/controller.js.map +1 -1
- package/dist/server/src/camera/decoder/detection-coordinator.d.ts +3 -0
- package/dist/server/src/camera/decoder/detection-coordinator.js +90 -20
- package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
- package/dist/server/src/camera/decoder/stationary-suppressor.d.ts +5 -2
- package/dist/server/src/camera/decoder/stationary-suppressor.js +39 -12
- package/dist/server/src/camera/decoder/stationary-suppressor.js.map +1 -1
- package/dist/server/src/camera/sensors/controller.d.ts +2 -0
- package/dist/server/src/camera/sensors/controller.js +19 -4
- package/dist/server/src/camera/sensors/controller.js.map +1 -1
- package/dist/server/src/main.js +4 -6
- package/dist/server/src/main.js.map +1 -1
- package/dist/server/src/manager/notificationManager.d.ts +3 -0
- package/dist/server/src/manager/notificationManager.js +19 -4
- package/dist/server/src/manager/notificationManager.js.map +1 -1
- package/dist/server/src/remote/services/index.d.ts +4 -0
- package/dist/server/src/remote/services/index.js +27 -0
- package/dist/server/src/remote/services/index.js.map +1 -1
- package/dist/server/src/rpc/interfaces/device.d.ts +1 -1
- package/dist/server/src/types.d.ts +1 -0
- package/dist/server/src/utils/ipc.d.ts +3 -0
- package/dist/server/src/utils/ipc.js +33 -0
- package/dist/server/src/utils/ipc.js.map +1 -1
- package/package.json +11 -8
- package/dist/interface/assets/Automation-BE-lA9i2.js +0 -3
- package/dist/interface/assets/Automations-3SibYydl.js +0 -2
- package/dist/interface/assets/Camera-ByUigyg3.js +0 -2
- package/dist/interface/assets/Camview-D83wwTUB.js +0 -1
- package/dist/interface/assets/ConfigTriggerGeofence-CW5W3lot.js +0 -1
- package/dist/interface/assets/Console-Cxs29skk.js +0 -1
- package/dist/interface/assets/CuiBottomSheet-DVzVzs8p.js +0 -1
- package/dist/interface/assets/CuiCameraRecordings-DLfMPUOL.js +0 -1
- package/dist/interface/assets/CuiPluginCard-C8eDXMRg.js +0 -2
- package/dist/interface/assets/Faces-CaGWFf-y.js +0 -1
- package/dist/interface/assets/FirstSteps-fOhI977X.js +0 -1
- package/dist/interface/assets/Instances-BD727wNP.js +0 -1
- package/dist/interface/assets/Plugin-Cq_hIp8V.js +0 -1
- package/dist/interface/assets/Plugin-DbSiTjYn.css +0 -1
- package/dist/interface/assets/PluginDetail-9-jofn3X.js +0 -2
- package/dist/interface/assets/PluginSearch-CYEjSopJ.js +0 -2
- package/dist/interface/assets/PluginSearch-Cy8JvNJD.js +0 -1
- package/dist/interface/assets/Plugins-YyemYjP4.js +0 -1
- package/dist/interface/assets/Recordings-Cwns8Zzj.js +0 -1
- package/dist/interface/assets/SettingsAccount-BoWR0DKm.js +0 -1
- package/dist/interface/assets/SettingsAccount-CycVwV2K.js +0 -1
- package/dist/interface/assets/SettingsAppearance-DHSpEmup.js +0 -1
- package/dist/interface/assets/SettingsMqtt-CChS0s5J.js +0 -1
- package/dist/interface/assets/SettingsRemote-D2nKjVHR.js +0 -1
- package/dist/interface/assets/SettingsSystem-C1vJGmFo.js +0 -2
- package/dist/interface/assets/VersionsHandler-DrVcvut6.js +0 -7
- package/dist/interface/assets/Workers-xyas5_sn.js +0 -2
- package/dist/interface/assets/api-CdJDEL3z.js +0 -2
- package/dist/interface/assets/api-Ct6LuJao.css +0 -2
- package/dist/interface/assets/automations-B-tYtR3y.js +0 -1
- package/dist/interface/assets/cloudHandoff-zt3rCB3J.js +0 -1
- package/dist/interface/assets/main-DILs_jYV.js +0 -3
- package/dist/interface/assets/mqtt-BrTLJ_eM.js +0 -1
- package/dist/interface/assets/nodeDefinitions-DkMCR_zX.js +0 -1
- package/dist/interface/assets/types-CGqXKLKp.js +0 -1
- package/dist/interface/assets/types-f9LWayxM.js +0 -1
- package/dist/interface/assets/useBackupRestore-5tZ-awcr.js +0 -1
- package/dist/interface/assets/vendor-cameraui-Bq-hQsT7.js +0 -2040
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{$n as e,Gn as t,Kn as n,Un as r}from"./api-CdJDEL3z.js";import{J as i,Q as a}from"./vendor-CdGy-Xet.js";async function o({signal:t}){return(await e.get(`/mqtt`,{signal:t})).data}async function s(t){return(await e.patch(`/mqtt`,t)).data}async function c({signal:t}){return(await e.get(`/mqtt/topics`,{signal:t})).data}async function l(t){return(await e.post(`/mqtt/test`,t)).data}var u=class{_queryClient=a();t=n.global.t;toast=t();get queryClient(){return this._queryClient}getMqttInfoQuery(){return r({queryKey:[`mqtt`],queryFn:({signal:e})=>o({signal:e}),staleTime:1e3})}patchMqttInfoMutation(){return i({mutationFn:s,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:[`mqtt`],exact:!0}),this.toast.add({severity:`success`,detail:this.t(`components.toast.mqtt_updated`),life:3e3})}})}getMqttTopicsQuery(){return r({queryKey:[`mqtt`,`topics`],queryFn:({signal:e})=>c({signal:e}),staleTime:1e4})}testMqttConnectionMutation(){return i({mutationFn:l})}};export{u as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Rn as e,lr as t,pn as n,un as r}from"./vendor-CdGy-Xet.js";import{i,n as a,r as o,t as s}from"./lightbulb-outline-BGFG7wv-.js";import{t as c}from"./clock-outline-dv-kmi60.js";import{n as l,t as u}from"./webhook-CQl989bo.js";import{t as d}from"./source-branch-DejOTyZv.js";import{t as f}from"./variable-K7DoQHpX.js";var p={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function m(t,i){return e(),n(`svg`,p,[...i[0]||=[r(`path`,{fill:`currentColor`,d:`M4.93 4.93A9.97 9.97 0 0 0 2 12c0 2.76 1.12 5.26 2.93 7.07l1.41-1.41A7.94 7.94 0 0 1 4 12c0-2.21.89-4.22 2.34-5.66zm14.14 0l-1.41 1.41A7.96 7.96 0 0 1 20 12c0 2.22-.89 4.22-2.34 5.66l1.41 1.41A9.97 9.97 0 0 0 22 12c0-2.76-1.12-5.26-2.93-7.07M7.76 7.76A5.98 5.98 0 0 0 6 12c0 1.65.67 3.15 1.76 4.24l1.41-1.41A4 4 0 0 1 8 12c0-1.11.45-2.11 1.17-2.83zm8.48 0l-1.41 1.41A4 4 0 0 1 16 12c0 1.11-.45 2.11-1.17 2.83l1.41 1.41A5.98 5.98 0 0 0 18 12c0-1.65-.67-3.15-1.76-4.24M12 10a2 2 0 0 0-2 2a2 2 0 0 0 2 2a2 2 0 0 0 2-2a2 2 0 0 0-2-2`},null,-1)]])}var h=t({name:`mdi-access-point`,render:m}),g={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function _(t,i){return e(),n(`svg`,g,[...i[0]||=[r(`path`,{fill:`currentColor`,d:`M4 4h3l2-2h6l2 2h3a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2m8 3a5 5 0 0 0-5 5a5 5 0 0 0 5 5a5 5 0 0 0 5-5a5 5 0 0 0-5-5m0 2a3 3 0 0 1 3 3a3 3 0 0 1-3 3a3 3 0 0 1-3-3a3 3 0 0 1 3-3`},null,-1)]])}var v=t({name:`mdi-camera`,render:_}),y={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function b(t,i){return e(),n(`svg`,y,[...i[0]||=[r(`path`,{fill:`currentColor`,d:`M9 12c0-.81.3-1.5.89-2.11C10.5 9.3 11.19 9 12 9s1.5.3 2.11.89c.59.61.89 1.3.89 2.11s-.3 1.5-.89 2.11c-.61.59-1.3.89-2.11.89s-1.5-.3-2.11-.89C9.3 13.5 9 12.81 9 12M5.53 8.44l1.78 1.78L5.53 12l1.78 1.78l-1.78 1.78L2 12zm2.91 10.03l1.78-1.78L12 18.47l1.78-1.78l1.78 1.78L12 22zm10.03-2.91l-1.78-1.78L18.47 12l-1.78-1.78l1.78-1.78L22 12zM15.56 5.53l-1.78 1.78L12 5.53l-1.78 1.78l-1.78-1.78L12 2z`},null,-1)]])}var x=t({name:`mdi-camera-control`,render:b}),S={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function C(t,i){return e(),n(`svg`,S,[...i[0]||=[r(`path`,{fill:`currentColor`,d:`m23.5 17l-5 5l-3.5-3.5l1.5-1.5l2 2l3.5-3.5zm-10.4 2.9c-.4.1-.7.1-1.1.1c-4.4 0-8-3.6-8-8s3.6-8 8-8s8 3.6 8 8c0 .4 0 .7-.1 1.1c.7.1 1.3.3 1.9.6c.1-.6.2-1.1.2-1.7c0-5.5-4.5-10-10-10S2 6.5 2 12s4.5 10 10 10c.6 0 1.2-.1 1.7-.2c-.3-.5-.5-1.2-.6-1.9m2.5-5.8l-3.1-1.8V7H11v6l3.5 2.1c.3-.4.7-.7 1.1-1`},null,-1)]])}var w=t({name:`mdi-clock-check-outline`,render:C}),T={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function E(t,i){return e(),n(`svg`,T,[...i[0]||=[r(`path`,{fill:`currentColor`,d:`M8 3a2 2 0 0 0-2 2v4a2 2 0 0 1-2 2H3v2h1a2 2 0 0 1 2 2v4a2 2 0 0 0 2 2h2v-2H8v-5a2 2 0 0 0-2-2a2 2 0 0 0 2-2V5h2V3m6 0a2 2 0 0 1 2 2v4a2 2 0 0 0 2 2h1v2h-1a2 2 0 0 0-2 2v4a2 2 0 0 1-2 2h-2v-2h2v-5a2 2 0 0 1 2-2a2 2 0 0 1-2-2V5h-2V3z`},null,-1)]])}var D=t({name:`mdi-code-braces`,render:E}),O={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function k(t,i){return e(),n(`svg`,O,[...i[0]||=[r(`path`,{fill:`currentColor`,d:`M12 1L8 5h3v9h2V5h3m2 18H6a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h3v2H6v12h12V9h-3V7h3a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2`},null,-1)]])}var A=t({name:`mdi-export-variant`,render:k}),j={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function M(t,i){return e(),n(`svg`,j,[...i[0]||=[r(`path`,{fill:`currentColor`,d:`M7 2v11h3v9l7-12h-4l4-8z`},null,-1)]])}var N=t({name:`mdi-flash`,render:M}),P={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function F(t,i){return e(),n(`svg`,P,[...i[0]||=[r(`path`,{fill:`currentColor`,d:`M10 9a1 1 0 0 1 1-1a1 1 0 0 1 1 1v4.47l1.21.13l4.94 2.19c.53.24.85.77.85 1.35v4.36c-.03.82-.68 1.47-1.5 1.5H11c-.38 0-.74-.15-1-.43l-4.9-4.2l.74-.77c.19-.21.46-.32.74-.32h.22L10 19zm1-4a4 4 0 0 1 4 4c0 1.5-.8 2.77-2 3.46v-1.22c.61-.55 1-1.35 1-2.24a3 3 0 0 0-3-3a3 3 0 0 0-3 3c0 .89.39 1.69 1 2.24v1.22C7.8 11.77 7 10.5 7 9a4 4 0 0 1 4-4`},null,-1)]])}var I=t({name:`mdi-gesture-tap`,render:F}),L={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function R(t,i){return e(),n(`svg`,L,[...i[0]||=[r(`path`,{fill:`currentColor`,d:`M19 19H5V5h14m0-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2m-5.04 9.29l-2.75 3.54l-1.96-2.36L6.5 17h11z`},null,-1)]])}var z=t({name:`mdi-image-outline`,render:R}),B={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function V(t,i){return e(),n(`svg`,B,[...i[0]||=[r(`path`,{fill:`currentColor`,d:`M22 13.5c0 1.76-1.3 3.22-3 3.46V20a2 2 0 0 1-2 2h-3.8v-.3a2.7 2.7 0 0 0-2.7-2.7c-1.5 0-2.7 1.21-2.7 2.7v.3H4a2 2 0 0 1-2-2v-3.8h.3C3.79 16.2 5 15 5 13.5s-1.21-2.7-2.7-2.7H2V7a2 2 0 0 1 2-2h3.04c.24-1.7 1.7-3 3.46-3s3.22 1.3 3.46 3H17a2 2 0 0 1 2 2v3.04c1.7.24 3 1.7 3 3.46M17 15h1.5a1.5 1.5 0 0 0 1.5-1.5a1.5 1.5 0 0 0-1.5-1.5H17V7h-5V5.5A1.5 1.5 0 0 0 10.5 4A1.5 1.5 0 0 0 9 5.5V7H4v2.12c1.76.68 3 2.38 3 4.38s-1.25 3.7-3 4.38V20h2.12a4.7 4.7 0 0 1 4.38-3c2 0 3.7 1.25 4.38 3H17z`},null,-1)]])}var H=t({name:`mdi-puzzle-outline`,render:V}),U={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function W(t,i){return e(),n(`svg`,U,[...i[0]||=[r(`path`,{fill:`currentColor`,d:`M6 2h12v6l-4 4l4 4v6H6v-6l4-4l-4-4zm10 14.5l-4-4l-4 4V20h8zm-4-5l4-4V4H8v3.5zM10 6h4v.75l-2 2l-2-2z`},null,-1)]])}var G=t({name:`mdi-timer-sand`,render:W}),K={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function q(t,i){return e(),n(`svg`,K,[...i[0]||=[r(`path`,{fill:`currentColor`,d:`M16.36 14c.08-.66.14-1.32.14-2s-.06-1.34-.14-2h3.38c.16.64.26 1.31.26 2s-.1 1.36-.26 2m-5.15 5.56c.6-1.11 1.06-2.31 1.38-3.56h2.95a8.03 8.03 0 0 1-4.33 3.56M14.34 14H9.66c-.1-.66-.16-1.32-.16-2s.06-1.35.16-2h4.68c.09.65.16 1.32.16 2s-.07 1.34-.16 2M12 19.96c-.83-1.2-1.5-2.53-1.91-3.96h3.82c-.41 1.43-1.08 2.76-1.91 3.96M8 8H5.08A7.92 7.92 0 0 1 9.4 4.44C8.8 5.55 8.35 6.75 8 8m-2.92 8H8c.35 1.25.8 2.45 1.4 3.56A8 8 0 0 1 5.08 16m-.82-2C4.1 13.36 4 12.69 4 12s.1-1.36.26-2h3.38c-.08.66-.14 1.32-.14 2s.06 1.34.14 2M12 4.03c.83 1.2 1.5 2.54 1.91 3.97h-3.82c.41-1.43 1.08-2.77 1.91-3.97M18.92 8h-2.95a15.7 15.7 0 0 0-1.38-3.56c1.84.63 3.37 1.9 4.33 3.56M12 2C6.47 2 2 6.5 2 12a10 10 0 0 0 10 10a10 10 0 0 0 10-10A10 10 0 0 0 12 2`},null,-1)]])}var J=t({name:`mdi-web`,render:q}),Y=[{type:`trigger-detection`,category:`trigger`,labelKey:`components.automation_nodes.trigger_detection`,descriptionKey:`components.automation_nodes.trigger_detection_desc`,icon:N,color:`#22c55e`,defaults:{type:`trigger-detection`,cameraId:``,eventPhase:[`start`],detectionLabels:[],confidenceThreshold:0,audioLabels:[],faceFilter:[],licensePlateFilter:[]}},{type:`trigger-sensor`,category:`trigger`,labelKey:`components.automation_nodes.trigger_sensor`,descriptionKey:`components.automation_nodes.trigger_sensor_desc`,icon:h,color:`#22c55e`,defaults:{type:`trigger-sensor`,cameraId:``,sensorType:``,sensorName:``,sensorPluginId:``,properties:[]}},{type:`trigger-schedule`,category:`trigger`,labelKey:`components.automation_nodes.trigger_schedule`,descriptionKey:`components.automation_nodes.trigger_schedule_desc`,icon:c,color:`#22c55e`,defaults:{type:`trigger-schedule`,cron:`0 * * * *`}},{type:`trigger-webhook`,category:`trigger`,labelKey:`components.automation_nodes.trigger_webhook`,descriptionKey:`components.automation_nodes.trigger_webhook_desc`,icon:u,color:`#22c55e`,defaults:{type:`trigger-webhook`,webhookId:``}},{type:`trigger-mqtt`,category:`trigger`,labelKey:`components.automation_nodes.trigger_mqtt`,descriptionKey:`components.automation_nodes.trigger_mqtt_desc`,icon:a,color:`#22c55e`,defaults:{type:`trigger-mqtt`,topic:``,matchMode:`any`,payloadFilter:``,jsonPath:``,jsonValue:``}},{type:`trigger-system`,category:`trigger`,labelKey:`components.automation_nodes.trigger_system`,descriptionKey:`components.automation_nodes.trigger_system_desc`,icon:o,color:`#22c55e`,defaults:{type:`trigger-system`,category:`system`,eventType:``,targetId:``}},{type:`trigger-manual`,category:`trigger`,labelKey:`components.automation_nodes.trigger_manual`,descriptionKey:`components.automation_nodes.trigger_manual_desc`,icon:I,color:`#22c55e`,defaults:{type:`trigger-manual`}},{type:`trigger-geofence`,category:`trigger`,labelKey:`components.automation_nodes.trigger_geofence`,descriptionKey:`components.automation_nodes.trigger_geofence_desc`,icon:l,color:`#22c55e`,defaults:{type:`trigger-geofence`,geofenceId:``,zoneName:``,latitude:0,longitude:0,radius:200,event:`both`,users:[]}},{type:`condition-ifelse`,category:`condition`,labelKey:`components.automation_nodes.condition_ifelse`,descriptionKey:`components.automation_nodes.condition_ifelse_desc`,icon:d,color:`#f59e0b`,defaults:{type:`condition-ifelse`,leftOperand:``,operator:`==`,rightOperand:``}},{type:`condition-switch`,category:`condition`,labelKey:`components.automation_nodes.condition_switch`,descriptionKey:`components.automation_nodes.condition_switch_desc`,icon:D,color:`#f59e0b`,defaults:{type:`condition-switch`,variable:``,cases:[]}},{type:`condition-sensorstate`,category:`condition`,labelKey:`components.automation_nodes.condition_sensorstate`,descriptionKey:`components.automation_nodes.condition_sensorstate_desc`,icon:h,color:`#f59e0b`,defaults:{type:`condition-sensorstate`,cameraId:``,sensorType:``,sensorName:``,sensorPluginId:``,conditions:[],logic:`AND`}},{type:`condition-time`,category:`condition`,labelKey:`components.automation_nodes.condition_time`,descriptionKey:`components.automation_nodes.condition_time_desc`,icon:w,color:`#f59e0b`,defaults:{type:`condition-time`,startTime:`08:00`,endTime:`18:00`,days:[]}},{type:`action-snapshot`,category:`action`,labelKey:`components.automation_nodes.action_snapshot`,descriptionKey:`components.automation_nodes.action_snapshot_desc`,icon:v,color:`#3b82f6`,defaults:{type:`action-snapshot`,cameraId:``,forceNew:!0},supportsRepeat:!0},{type:`action-sensor`,category:`action`,labelKey:`components.automation_nodes.action_sensor`,descriptionKey:`components.automation_nodes.action_sensor_desc`,icon:s,color:`#3b82f6`,defaults:{type:`action-sensor`,cameraId:``,sensorType:``,sensorName:``,sensorPluginId:``,properties:[]}},{type:`action-notification`,category:`action`,labelKey:`components.automation_nodes.action_notification`,descriptionKey:`components.automation_nodes.action_notification_desc`,icon:i,color:`#3b82f6`,defaults:{type:`action-notification`,title:``,body:``,severity:`info`,deepLink:``,targets:[]}},{type:`action-http`,category:`action`,labelKey:`components.automation_nodes.action_http`,descriptionKey:`components.automation_nodes.action_http_desc`,icon:J,color:`#3b82f6`,defaults:{type:`action-http`,url:``,method:`POST`,headers:{},body:``},supportsRepeat:!0},{type:`action-mqtt`,category:`action`,labelKey:`components.automation_nodes.action_mqtt`,descriptionKey:`components.automation_nodes.action_mqtt_desc`,icon:a,color:`#3b82f6`,defaults:{type:`action-mqtt`,topic:``,payload:``,retain:!1},supportsRepeat:!0},{type:`action-delay`,category:`action`,labelKey:`components.automation_nodes.action_delay`,descriptionKey:`components.automation_nodes.action_delay_desc`,icon:G,color:`#3b82f6`,defaults:{type:`action-delay`,duration:5,unit:`seconds`}},{type:`action-variable`,category:`action`,labelKey:`components.automation_nodes.action_variable`,descriptionKey:`components.automation_nodes.action_variable_desc`,icon:f,color:`#3b82f6`,defaults:{type:`action-variable`,variableName:``,operator:`=`,value:``}},{type:`action-plugin`,category:`action`,labelKey:`components.automation_nodes.action_plugin`,descriptionKey:`components.automation_nodes.action_plugin_desc`,icon:H,color:`#3b82f6`,defaults:{type:`action-plugin`,pluginName:``,pluginInterface:``,method:``,params:{},config:{}},supportsRepeat:!0},{type:`action-camera-control`,category:`action`,labelKey:`components.automation_nodes.action_camera_control`,descriptionKey:`components.automation_nodes.action_camera_control_desc`,icon:x,color:`#3b82f6`,defaults:{type:`action-camera-control`,cameraId:``,properties:[]}},{type:`action-image-input`,category:`utility`,labelKey:`components.automation_nodes.action_image_input`,descriptionKey:`components.automation_nodes.action_image_input_desc`,icon:z,color:`#8b5cf6`,defaults:{type:`action-image-input`,source:``,variableName:`image`}},{type:`action-output`,category:`utility`,labelKey:`components.automation_nodes.action_output`,descriptionKey:`components.automation_nodes.action_output_desc`,icon:A,color:`#8b5cf6`,defaults:{type:`action-output`,variables:[]}}];function X(e){return Y.find(t=>t.type===e)}function Z(e){return Y.filter(t=>t.category===e)}export{Z as n,X as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Ar as e,Mr as t,Nr as n,jr as r}from"./vendor-cameraui-Bq-hQsT7.js";import{C as i,S as a,_ as o,a as s,b as c,c as l,d as u,f as ee,g as d,h as f,i as p,l as m,m as te,o as ne,p as re,s as h,u as g,v as ie,w as _,x as ae,y as v}from"./vendor-zod-BaT-dXMv.js";o({tempToken:c().trim().min(1,`Temporary token is required`),code:c().trim().min(1,`Code is required`)}).strict(),o({code:c().trim().length(6,`Code must be 6 digits`)}).strict(),o({code:c().trim().min(1,`Code is required`)}).strict(),o({code:c().trim().min(1,`Code is required`)}).strict(),o({grant_type:c().optional(),username:c().trim().min(1,`Username is required`),password:c().min(1,`Password is required`),scope:c().optional(),client_id:c().optional(),client_secret:c().optional()}),o({refresh_token:c().min(1,`Refresh token is required`)}),o({id:c()}),o({name:c().trim().min(1,`Name is required`).max(64,`Name is too long`)}).strict(),o({id:c()});function oe(e){let t=[`kasa://`,`nest:`,`ring:`,`tapo://`];return e.some(e=>t.some(t=>e.startsWith(t)))}var se=[`#df2a4c`,`#2a7fdf`,`#2adf7f`,`#df7f2a`,`#7f2adf`,`#2adfdf`,`#df2adf`,`#7fdf2a`];function ce(){return se[Math.floor(Math.random()*se.length)]}function le(){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:ce()}}var ue=o({enabled:g().default(!0),mode:h([`continuous`,`event`,`adhoc`]).default(`continuous`),preBuffer:d().min(0).max(60).default(10),sources:m(h([`high`,`mid`,`low`])).default([`high`,`mid`,`low`])}).strict(),de={enabled:!0,mode:`continuous`,preBuffer:10,sources:[`high`,`mid`,`low`]},fe=c().trim().min(1,`Detection label is required`),y=ae([d(),d()]),b=o({name:c().trim().min(1,`Zone Name is required`),points:y.array().min(3,`At least 3 points are required`),type:a([f(`intersect`),f(`contain`)]),filter:a([f(`include`),f(`exclude`)]),labels:fe.array(),isPrivacyMask:g(),color:c().trim().regex(/^#([0-9A-Fa-f]{3}){1,2}$/,`Must be a valid hex color (e.g. #FF0000 or #F00)`).default(`#df2a4c`)}).array(),x=o({name:c().trim().min(1,`Line Name is required`),points:ae([y,y]),direction:a([f(`both`),f(`a-to-b`),f(`b-to-a`)]),labels:fe.array(),color:c().trim().regex(/^#([0-9A-Fa-f]{3}){1,2}$/,`Must be a valid hex color (e.g. #FF0000 or #F00)`).default(`#df2a4c`)}).array(),pe=o({motion:o({resolution:a([f(`low`),f(`medium`),f(`high`)]),timeout:d().min(10,`Minimum 10 seconds`)}),object:o({confidence:d().min(.3,`Minimum 0.3`).max(1,`Maximum 1`),suppressStatic:g().default(!0)}),audio:o({minDecibels:d().min(-100,`Minimum -100 dBFS`).max(0,`Maximum 0 dBFS`),timeout:d().min(10,`Minimum 10 seconds`)}),face:o({confidence:d().min(0,`Minimum 0`).max(1,`Maximum 1`).default(.5)}).default({confidence:.5}),licensePlate:o({confidence:d().min(0,`Minimum 0`).max(1,`Maximum 1`).default(.9),minLength:d().int().min(1,`Minimum 1`).max(10,`Maximum 10`).default(4)}).default({confidence:.9,minLength:4}),sensor:o({timeout:d().min(10,`Minimum 10 seconds`),triggers:m(o({sensorType:c().trim().min(1,`Sensor type is required`),sensorName:c().trim().min(1,`Sensor name is required`),pluginId:c().trim().min(1,`Plugin ID is required`)})).default([])}),cascadeDetection:g().default(!0),cascadeTimeout:d().min(1,`Minimum 1 second`).max(300,`Maximum 300 seconds`).default(10),snooze:g().default(!1)}),me={enabled:!1,targetLabels:[`person`],minConfidence:.5,triggerDeadZone:.05,trackingSpeed:2,leadMs:1800,panRate:.85,returnToHome:!1,homeWaitMs:1e4},he=o({enabled:g().default(!1),targetLabels:c().trim().min(1,`Target label is required`).array().default([`person`]),minConfidence:d().min(.3,`Minimum 0.3`).max(1,`Maximum 1`).default(.5),triggerDeadZone:d().min(0,`Minimum 0`).max(.3,`Maximum 0.3`).default(.05),trackingSpeed:d().min(1,`Minimum 1`).max(5,`Maximum 5`).default(2),leadMs:d().min(0,`Minimum 0`).max(4e3,`Maximum 4000 ms`).default(1800),panRate:d().min(.1,`Minimum 0.1`).max(3,`Maximum 3`).default(.85),returnToHome:g().default(!1),homeWaitMs:d().min(1e3,`Minimum 1000 ms`).max(6e4,`Maximum 60000 ms`).default(1e4)}),S=a([f(`high-resolution`),f(`mid-resolution`),f(`low-resolution`),f(`snapshot`)]),ge=a([f(`high-resolution`),f(`mid-resolution`),f(`low-resolution`)]),_e=a([f(`bubble://`),f(`cui://`),f(`doorbird://`),f(`dvrip://`),f(`eseecloud://`),f(`ffmpeg:`),f(`flussonic://`),f(`gopro://`),f(`hass:`),f(`homekit://`),f(`http://`),f(`https://`),f(`httpx://`),f(`isapi://`),f(`ivideon:`),f(`kasa://`),f(`nest:`),f(`onvif://`),f(`ring:`),f(`roborock://`),f(`rtmp://`),f(`rtsp://`),f(`rtspx://`),f(`tapo://`),f(`tcp://`),f(`tuya://`),f(`xiaomi://`),f(`yandex:`),f(`webrtc:`),f(`webtorrent:`),f(`wyze://`)]).options.map(e=>e.value),ve=RegExp(`^(${_e.join(`|`)})`),C=c().refine(e=>{if(!ve.test(e))return!1;try{return new URL(e),!0}catch{return!1}},{message:`Invalid URL format or unsupported protocol`}),ye=o({_id:c().default(r()).transform(()=>r()),name:c().trim().min(1,`Camera Source Name is required`).transform(e=>e.replace(/ /g,`_`).toLowerCase()),role:S,useForSnapshot:g().default(!1),hotMode:g().default(!0),preload:g().default(!0),muted:g().default(!1),urls:C.array().min(1,`At least one valid URL is required`),childSourceId:c().trim().min(1,`Child Source ID is required`).optional()}).strict().transform(e=>e.role===`snapshot`?{...e,useForSnapshot:!1,hotMode:!1,preload:!1}:e),be=o({_id:c().default(r()).transform(()=>r()),name:c().trim().min(1,`Camera Source Name is required`).transform(e=>e.replace(/ /g,`_`).toLowerCase()),role:S,useForSnapshot:g().default(!1),hotMode:g().default(!0),preload:g().default(!0),muted:g().default(!1),urls:C.array().min(1,`At least one valid URL is required`),childSourceId:c().trim().min(1,`Child Source ID is required`).optional()}).strict().transform(e=>e.role===`snapshot`?{...e,useForSnapshot:!1,hotMode:!1,preload:!1}:e),w=o({id:c(),name:c().trim()}),T=o({motion:w.optional(),object:w.optional(),audio:w.optional(),face:w.optional(),licensePlate:w.optional(),ptz:w.optional(),battery:w.optional(),cameraController:w.optional(),clip:w.optional(),classifier:w.array().optional(),light:w.array().optional(),siren:w.array().optional(),switch:w.array().optional(),securitySystem:w.array().optional(),contact:w.array().optional(),doorbell:w.array().optional(),lock:w.array().optional(),temperature:w.array().optional(),humidity:w.array().optional(),occupancy:w.array().optional(),smoke:w.array().optional(),leak:w.array().optional(),garage:w.array().optional(),hub:w.array().optional()}).strict(),xe=a([f(`auto`),f(`mse`),f(`webrtc`),f(`webrtc/tcp`)]),Se=c().regex(/^\d+(?:\.\d+)?:\d+(?:\.\d+)?$/,`Use a width:height ratio, e.g. 16:9`).refine(e=>{let[t,n]=e.split(`:`).map(Number);return Number.isFinite(t)&&Number.isFinite(n)&&t>0&&n>0},`Both sides must be greater than 0`).transform(e=>e),E=o({fps:d().min(0,`Minimum 0 fps`).max(30,`Maximum 30 fps`),hqSnapshots:g().default(!1)}),D=a([f(`camera`),f(`doorbell`)]),O=o({streamingMode:xe,streamingSource:ge,aspectRatio:Se}),k=o({model:c().trim().optional(),manufacturer:c().trim().optional(),hardware:c().trim().optional(),serialNumber:c().trim().optional(),firmwareVersion:c().trim().optional(),supportUrl:c().trim().optional()}),Ce=o({id:c(),name:c().trim()}).strict(),A=o({autoRefresh:g().default(!0),ttl:d().min(10,`Minimum 10 seconds`).max(60,`Maximum 60 seconds`).default(50),interval:d().min(10,`Minimum 10 seconds`).max(60,`Maximum 60 seconds`).default(60)}).strict(),j=o({_id:c().default(r()).transform(()=>r()),nativeId:c().trim().optional(),pluginInfo:Ce.optional(),disabled:g().default(!1),name:c().trim().min(1,`Camera name is required`),room:c().trim().min(1,`Room is required`).default(`Default`),type:D.default(`camera`),isCloud:g().default(!1),snapshotSettings:A.default({autoRefresh:!0,ttl:50,interval:60}),info:k.default({model:`IP Camera`,manufacturer:`camera.ui`,hardware:`Camera`,serialNumber:`Unknown`,firmwareVersion:`Unknown`,supportUrl:`Unknown`}),sources:ye.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=>{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:w.array().default([]),assignments:T.default({}),interfaceSettings:O.default({streamingMode:`webrtc`,streamingSource:`high-resolution`,aspectRatio:`16:9`}),detectionZones:b.default([]),detectionLines:x.default([]),detectionSettings:pe.default({motion:{resolution:`low`,timeout:30},object:{confidence:.5,suppressStatic:!0},audio:{minDecibels:-40,timeout:30},face:{confidence:.5},licensePlate:{confidence:.9,minLength:4},sensor:{timeout:30,triggers:[]},cascadeDetection:!0,cascadeTimeout:10,snooze:!1}),ptzAutotrack:he.default(me),recordingSettings:ue.default(de),frameWorkerSettings:E.default({fps:10,hqSnapshots:!1})}).strict();j.transform(e=>{let t=e.sources.flatMap(e=>e.urls),n=e.detectionZones.length===0?[le()]:e.detectionZones;return e.isCloud||oe(t)?{...e,isCloud:!0,detectionZones:n}:{...e,detectionZones:n}});var we=o({disabled:g().optional(),type:D.optional(),name:c().trim().min(1,`Camera name is required`).optional(),room:c().trim().min(1,`Room is required`).optional(),isCloud:g().optional(),snapshotSettings:A.partial().optional(),info:k.partial().optional(),sources:be.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=>{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:w.array().optional(),assignments:T.partial().optional(),interfaceSettings:O.partial().optional(),detectionZones:b.optional(),detectionLines:x.optional(),detectionSettings:pe.partial().optional(),ptzAutotrack:he.partial().optional(),recordingSettings:ue.partial().optional(),frameWorkerSettings:E.partial().optional()}).strict().transform(e=>{if(e.sources){let t=e.sources.flatMap(e=>e.urls);if(e.isCloud===!0||oe(t))return{...e,isCloud:!0}}return e});o({url:c().trim().refine(e=>!/^\s*(exec|echo|expr):/i.test(e),`Command-execution stream sources are not allowed`)}).strict(),o({cameraname:c()}),o({cameraname:c(),sourcename:c()}),o({cameraid:c(),sourcename:c()}),o({cameraname:c(),pluginname:c()}),o({cameraname:c(),scope:c(),pluginname:c()}),o({cameraname:c(),pluginname:c(),sensorId:c()}),o({cameraname:c(),stableId:c()}),o({property:c(),value:i()}),o({cameraname:c(),scope:c(),pluginname:c(),sensorId:c()}),o({type:c().optional()}),o({video:p().optional(),audio:p().optional(),microphone:p().optional(),refresh:p().optional()}),o({forceNew:p().optional()}),o({name:c().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`),url:_(`Must be a valid URL`).trim(),credentials:o({username:c().trim().min(1,`Username is required`),password:c().min(1,`Password is required`)})}),o({name:c().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`).optional(),url:_(`Must be a valid URL`).trim().optional(),credentials:o({username:c().trim().min(1,`Username is required`),password:c().min(1,`Password is required`)}).nullable().optional()}),o({id:c().min(1,`ID is required`)}),o({code:c().trim().min(1,`Code is required`).optional()}).optional();var M=/^[\w-]+(\/[\w-]+)*$/,Te=o({enabled:g().optional(),mode:h([`external`,`embedded`]).optional(),broker:o({port:d().int().min(1).max(65535).optional(),username:c().trim().max(200,`Username cannot be more than 200 characters`).nullable().optional(),password:c().max(500,`Password cannot be more than 500 characters`).nullable().optional()}).strict().optional(),host:c().trim().min(1,`Host is required`).max(253,`Host cannot be more than 253 characters`).nullable().optional(),port:d().int().min(1).max(65535).optional(),protocol:h([`mqtt`,`mqtts`]).optional(),username:c().trim().max(200,`Username cannot be more than 200 characters`).nullable().optional(),password:c().max(500,`Password cannot be more than 500 characters`).nullable().optional(),clientId:c().trim().min(1,`Client ID is required`).max(128,`Client ID cannot be more than 128 characters`).optional(),topicPrefix:c().trim().min(1,`Topic prefix is required`).max(128,`Topic prefix cannot be more than 128 characters`).regex(M,`Topic prefix may only contain letters, numbers, "_", "-" and "/" separators`).optional(),tls:o({rejectUnauthorized:g().optional(),ca:c().trim().nullable().optional(),cert:c().trim().nullable().optional(),key:c().trim().nullable().optional()}).strict().optional(),haDiscovery:o({enabled:g().optional(),prefix:c().trim().min(1,`Discovery prefix is required`).max(128,`Discovery prefix cannot be more than 128 characters`).regex(M,`Discovery prefix may only contain letters, numbers, "_", "-" and "/" separators`).optional()}).strict().optional()}).strict(),Ee=/^((@[\w-.]*)\/)?(camera-ui-[\w-]*)$/,De=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.INCOMPATIBLE=`incompatible`,e}({});function N(e){return e.mimetype!==void 0}function Oe(e){return N(e)?Buffer.byteLength(e._buf):e.size}function ke(e){return N(e)?e.mimetype:e.type}function P(e,t,n,r){return u().refine(t=>Oe(t)<=e,n).refine(e=>t.includes(ke(e)),r)}var Ae=o({start:s().optional(),page:s().optional(),pageSize:s().optional()}),F=[`image/jpeg`,`image/png`],je=1024*1024*2,I=[`video/mp4`,`video/quicktime`],L=1024*1024*10,R=[`audio/mpeg`,`audio/wav`,`audio/ogg`],z=1024*1024*2,B=()=>P(je,F,`Max file size is 2 MB`,`.jpeg and .png files are accepted`),V=u().transform(e=>JSON.parse(e.value)),H=u().transform(e=>JSON.parse(e.value)),Me=u().transform(e=>JSON.parse(e.value));o({pluginname:c().trim().refine(e=>Ee.test(e),`Not a valid plugin name`),pluginversion:c().trim().refine(e=>/^[a-z][\w-]*$/i.test(e)||/^v?\d+\.\d+\.\d+(?:[-+][\w.-]+)?$/i.test(e),`Not a valid plugin version (expected a dist-tag or exact semver)`).optional().default(`latest`)}).strict(),o({actionId:c(),payload:l()}).strict(),v(l(),l()),o({upload:B(),metadata:H,config:V}),o({upload:P(z,R,`Max file size is 2 MB`,`.mp3, .wav and .ogg files are accepted`),metadata:Me,config:V}),o({upload:P(L,I,`Max file size is 5 MB`,`.mp4 files are accepted`),config:V}),o({upload:B(),metadata:H,config:V}),o({upload:B(),metadata:H,config:V}),o({upload:B(),metadata:H,config:V}),o({pluginname:c()}),o({scope:c(),pluginname:c()}),Ae.extend({pluginname:c().trim().optional(),refresh:p().optional()}),o({removeStorage:p().optional()}),o({pluginversion:c().trim().optional()});var Ne=o({enabled:g().optional(),directEnabled:g().optional(),directMode:h([`cloudflare`,`customDomain`]).optional(),customDomain:o({url:_(`Must be a valid URL`).trim().nullable()}).strict().optional(),cloudflare:o({mode:h([`quick`,`token`,`managed`]).optional(),hostname:c().trim().min(1,`Hostname is required`).max(253,`Hostname cannot be more than 253 characters`).nullable().optional(),token:c().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&&e.cloudflare.mode!==`quick`&&!e.cloudflare?.hostname),{message:`Hostname is required when cloudflare.mode is "token" or "managed"`,path:[`cloudflare`,`hostname`]});o({mode:h([`cloudflare`,`customDomain`])}).strict(),o({hostname:c().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(),o({name:c().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`).optional()}).strict(),o({name:c().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`).optional()}).strict(),o({name:c().trim().min(1,`Server name is required`).max(100,`Server name cannot be more than 100 characters`)}).strict(),o({version:c().trim().optional().default(`latest`)}).strict();var Pe=o({serverAddresses:a([re().trim(),te().trim()]).array().default([])}).strict();o({version:c().trim()}).strict(),v(c(),l()),o({key:c()}).strict(),o({key:c(),payload:l()}).strict();var Fe=[`de`,`en`],Ie=[`image/jpeg`,`image/jpg`,`image/png`],Le=1024*1024*5,U=o({index:d(),cameraId:c(),colSpan:d().optional(),rowSpan:d().optional(),x:d().optional(),y:d().optional()}),Re=a([f(1),f(4),f(6),f(7),f(9),f(10),f(12),f(13),f(15),f(16),f(20),f(26)]),ze=a([f(`dnd`),f(`view`)]),Be=o({_id:c().default(r()).transform(()=>r()),name:c().trim().min(1,`Layout name is required`),viewSize:Re,cameras:U.array(),type:ze});o({name:c().trim().min(1,`Layout name is required`),viewSize:Re,cameras:U.array()}).partial().optional();var Ve=o({views:Be.array()}),He=h(t.filter(e=>e.shortcutable).map(e=>String(e.type))),Ue=ee(`type`,[o({_id:c().default(r()).transform(()=>r()),type:f(`camera`),cameraId:c(),points:y}),o({_id:c().default(r()).transform(()=>r()),type:f(`sensor`),sensorType:He,sensorName:c(),sensorPluginId:c(),sensorCameraId:c(),points:y})]);a([o({type:f(`camera`),cameraId:c(),points:y}).partial(),o({type:f(`sensor`),sensorType:He,sensorName:c(),sensorPluginId:c(),sensorCameraId:c(),points:y}).partial()]).optional();var We=o({shortcuts:Ue.array()}),Ge=o({language:h([`auto`,...Fe]).optional(),camview:Ve,cameras:v(c().trim(),We)}),W=c().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`),Ke=o({_id:c().default(r()).transform(()=>r()),username:c().trim().min(1,`Username is required`),password:W,passwordConfirm:c().trim().min(1,`Please confirm your password`),role:a([f(`admin`),f(`user`)]),firstLogin:g().default(!0),preferences:Ge.default({language:`auto`,camview:{views:[]},cameras:{}})}).strict().refine(e=>e.password===e.passwordConfirm,{path:[`passwordConfirm`],message:`Passwords do not match`});o({username:c().trim().min(1,`Username is required`),password:c().trim().min(1,`Password is required`),kind:h([`native`,`web`]),persistent:g().default(!1),device:o({id:c().min(1,`Device id is required`).max(128,`Device id cannot be more than 128 characters`),name:c().trim().min(1,`Device name is required`).max(100,`Device name cannot be more than 100 characters`)})}).strict();var qe=o({username:c().trim().min(1,`Username is required`).optional(),password:W.optional(),passwordConfirm:c().trim().optional(),role:a([f(`admin`),f(`user`)]).optional(),upload:ie(P(Le,Ie,`Max file size is 5MB.`,`.jpg, .jpeg, .png files are accepted.`)),firstLogin:g().optional(),preferences:Ge.partial().optional()}).strict().refine(e=>e.password===e.passwordConfirm,{path:[`passwordConfirm`],message:`Passwords do not match`});o({username:c()}),o({username:c(),cameraname:c()}),o({username:c(),cameraname:c(),shortcutid:c()}),o({username:c(),viewid:c()}),o({username:c()});function Je(){let e={};for(let n of t)e[n.type]={category:n.category,assignmentKey:n.assignmentKey,multiProvider:n.multiProvider,isDetectionType:n.isDetectionType,...n.cascadeTrigger?{cascadeTrigger:n.cascadeTrigger}:{}};return e}var G=Je();Object.fromEntries(t.filter(e=>e.propertyCapabilities).map(e=>[e.type,e.propertyCapabilities]));function Ye(){return Object.entries(G).filter(([,e])=>e.multiProvider).map(([e])=>e)}function Xe(){return t.filter(e=>e.shortcutable).map(e=>e.type)}function Ze(){return Object.entries(G).filter(([,e])=>e.isDetectionType).map(([e])=>e)}function Qe(e){return G[e].assignmentKey}function $e(){return Object.entries(G).filter(([,e])=>e.category===n.Sensor&&!e.multiProvider).map(([e])=>e)}function et(){return Object.entries(G).filter(([,e])=>!e.multiProvider&&e.category!==n.Sensor).map(([e])=>e)}function tt(){return Object.entries(G).filter(([,e])=>e.multiProvider).map(([e])=>e)}function nt(e){return!G[e].multiProvider}Object.fromEntries(t.map(e=>[e.type,Object.keys(e.properties)]));var K=Object.fromEntries(t.map(e=>[e.type,e.properties]));function rt(e,t){return K[e]?.[t]}function it(e){let t=K[e];return t?Object.entries(t).filter(([,e])=>!e.internal).map(([e])=>e):[]}function at(e){let t=K[e];return t?Object.entries(t).filter(([,e])=>e.writable).map(([e])=>e):[]}new Set(Ye()),new Set(Ze());var ot=`cameraui.virtual`,st=t.filter(e=>e.virtual).map(e=>e.type);Object.fromEntries(t.filter(e=>e.virtual).map(e=>[e.type,e.virtual?.properties??{}])),Object.fromEntries(t.filter(e=>e.virtual?.capabilities).map(e=>[e.type,e.virtual?.capabilities]));var ct=o({cameraId:c().min(1,`Camera ID is required`),type:h(st),name:c().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`)});o({displayName:c().trim().min(1,`Display name is required`).max(100,`Display name cannot be more than 100 characters`)}),o({id:c().min(1,`ID is required`)});function lt(e){return e.type===`string`&&!(`enum`in e)}function ut(e){return e.type===`number`}function dt(e){return e.type===`boolean`}function q(e){return e.type===`string`&&`enum`in e}function ft(e){return e.type===`array`}function J(e){return e.type===`button`}function Y(e){return e.type===`submit`}function pt(e){return lt(e)&&(!e.format||e.format!==`qrCode`&&e.format!==`image`)}var mt=(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=>mt(e,t)):mt(e,t)}function ht(t,n){if(!t||Object.keys(t).length===0)return!0;let r=n.filter(e=>!J(e)&&!Y(e));for(let n of r){let r=Q(t,n.key),i=Z(n);if(r!==void 0&&!e(r,i,!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 gt(e){let t={};for(let n of e)J(n)||Y(n)||(t[n.key]=Z(n));return t}function _t(e){return e.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},[])}function vt(e){return!isNaN(Number(e))}function Q(e={},t){if(!t.includes(`.`)&&!t.includes(`[`))return e[t];let n=e;for(let e of _t(t)){if(n==null)return;n=n[e]}return n}function yt(e,t,n){if(!t.includes(`.`)&&!t.includes(`[`)){e[t]=n;return}let r=_t(t),i=r.pop();if(!i)return;let a=e;for(let e=0;e<r.length;e++){let t=r[e];(typeof a[t]!=`object`||a[t]===null)&&(a[t]=vt(r[e+1]??i)?[]:{}),a=a[t]}a[i]=n}function bt(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 xt(e,t){return t?e.filter(e=>`group`in e&&e.group===t):e}function St(e,t){let n=xt(e,t);return n.length>0&&n.every(e=>`readonly`in e&&e.readonly)}function Ct(e,t){let n=xt(e,t);return n.length>0&&n.some(e=>`store`in e&&e.store)}function wt(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 l();switch(e.type){case`string`:if(q(e))if(e.multiple){let t=m(c().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=h(e.enum);return e.required?t:t.optional()}let t=c().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()===``||wt(t,e.format),{message:`Invalid ${e.format} format`})),e.required?t:t.optional();case`number`:let n=d();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?g():g().optional();case`array`:let r=m(e.items?$(e.items):l());return e.required?r:r.optional();default:return e.required?l():l().optional()}}var Tt=(e,t,n)=>t.filter(e=>`group`in e&&e.group===n).some(t=>{let n=e[t.key];return n!=null&&n!==``});function Et(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=o(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(Tt(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:ne.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:ne.custom,message:`Required`,path:[e.key]})}})),r}export{at as A,R as B,tt as C,it as D,$e as E,W as F,De as G,F as H,qe as I,j as J,Te as K,Be as L,Le as M,Fe as N,rt as O,Ke as P,we as Q,Pe as R,st as S,et as T,z as U,I as V,L as W,b as X,x as Y,S as Z,Ct as _,Et as a,G as b,dt as c,q as d,ut as f,St as g,pt as h,bt as i,nt as j,Xe as k,J as l,Y as m,gt as n,Q as o,lt as p,_e as q,Z as r,ft as s,X as t,ht as u,yt as v,Qe as w,ot as x,ct as y,Ne as z};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={trigger:`#22c55e`,condition:`#f59e0b`,action:`#3b82f6`,utility:`#8b5cf6`},t={mode:`drag`},n=[{key:`detectionSettings.snooze`,labelKey:`components.automation_nodes.camera_prop_snooze`,inputType:`boolean`,defaultValue:`false`},{key:`disabled`,labelKey:`components.automation_nodes.camera_prop_disabled`,inputType:`boolean`,defaultValue:`false`},{key:`recordingSettings.enabled`,labelKey:`components.automation_nodes.camera_prop_recording`,inputType:`boolean`,defaultValue:`true`},{key:`recordingSettings.mode`,labelKey:`components.automation_nodes.camera_prop_recording_mode`,inputType:`select`,options:[{label:`Continuous`,value:`continuous`},{label:`Event`,value:`event`},{label:`Adhoc`,value:`adhoc`}],defaultValue:`continuous`},{key:`recordingSettings.preBuffer`,labelKey:`components.automation_nodes.camera_prop_recording_prebuffer`,inputType:`number`,min:0,max:60,step:1,defaultValue:`10`},{key:`ptzAutotrack.enabled`,labelKey:`components.automation_nodes.camera_prop_ptz_autotrack`,inputType:`boolean`,defaultValue:`false`},{key:`detectionSettings.object.confidence`,labelKey:`components.automation_nodes.camera_prop_object_confidence`,inputType:`number`,min:.3,max:1,step:.05,defaultValue:`0.5`},{key:`detectionSettings.motion.timeout`,labelKey:`components.automation_nodes.camera_prop_motion_timeout`,inputType:`number`,min:10,defaultValue:`30`},{key:`detectionSettings.motion.resolution`,labelKey:`components.automation_nodes.camera_prop_motion_resolution`,inputType:`select`,options:[{label:`Low`,value:`low`},{label:`Medium`,value:`medium`},{label:`High`,value:`high`}],defaultValue:`low`},{key:`detectionSettings.audio.timeout`,labelKey:`components.automation_nodes.camera_prop_audio_timeout`,inputType:`number`,min:10,defaultValue:`30`},{key:`detectionSettings.audio.minDecibels`,labelKey:`components.automation_nodes.camera_prop_audio_min_decibels`,inputType:`number`,min:-100,max:0,defaultValue:`-40`},{key:`detectionSettings.object.suppressStatic`,labelKey:`components.automation_nodes.camera_prop_suppress_static`,inputType:`boolean`,defaultValue:`true`},{key:`detectionSettings.face.confidence`,labelKey:`components.automation_nodes.camera_prop_face_confidence`,inputType:`number`,min:0,max:1,step:.05,defaultValue:`0.5`},{key:`detectionSettings.licensePlate.confidence`,labelKey:`components.automation_nodes.camera_prop_plate_confidence`,inputType:`number`,min:0,max:1,step:.05,defaultValue:`0.9`},{key:`detectionSettings.licensePlate.minLength`,labelKey:`components.automation_nodes.camera_prop_plate_min_length`,inputType:`number`,min:1,max:10,step:1,defaultValue:`4`},{key:`detectionSettings.sensor.timeout`,labelKey:`components.automation_nodes.camera_prop_sensor_timeout`,inputType:`number`,min:10,defaultValue:`30`},{key:`detectionSettings.cascadeDetection`,labelKey:`components.automation_nodes.camera_prop_cascade_detection`,inputType:`boolean`,defaultValue:`true`},{key:`detectionSettings.cascadeTimeout`,labelKey:`components.automation_nodes.camera_prop_cascade_timeout`,inputType:`number`,min:1,max:300,defaultValue:`10`},{key:`frameWorkerSettings.fps`,labelKey:`components.automation_nodes.camera_prop_fps`,inputType:`number`,min:0,max:30,defaultValue:`10`},{key:`frameWorkerSettings.hqSnapshots`,labelKey:`components.automation_nodes.camera_prop_hq_snapshots`,inputType:`boolean`,defaultValue:`false`},{key:`snapshotSettings.autoRefresh`,labelKey:`components.automation_nodes.camera_prop_auto_refresh`,inputType:`boolean`,defaultValue:`false`},{key:`snapshotSettings.interval`,labelKey:`components.automation_nodes.camera_prop_snapshot_interval`,inputType:`number`,min:10,max:60,defaultValue:`60`},{key:`snapshotSettings.ttl`,labelKey:`components.automation_nodes.camera_prop_snapshot_ttl`,inputType:`number`,min:10,max:60,defaultValue:`50`}];export{e as n,t as r,n as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{$n as e,Gn as t,h as n,s as r}from"./api-CdJDEL3z.js";import{pr as i}from"./vendor-CdGy-Xet.js";import{a}from"./server-_ByAktOF.js";import{n as o}from"./useServerRestart-lPp2ZiX-.js";var s=3e5;async function c(t){return(await e.post(`/backup/download`,{localStorage:t},{responseType:`arraybuffer`,timeout:s})).data}async function l(t,n){return(await e.post(`/backup/restore`,t,{timeout:s,onUploadProgress:e=>{e.total&&n?.(Math.round(e.loaded/e.total*100))}})).data}async function u(){return(await e.get(`/backup/scheduler`)).data}async function d(t){return(await e.patch(`/backup/scheduler`,t)).data}async function f(){return(await e.post(`/backup/scheduler/run`)).data}async function p(t){return(await e.get(`/backup/scheduler/backups/${encodeURIComponent(t)}`,{responseType:`arraybuffer`,timeout:s})).data}async function m(t){await e.delete(`/backup/scheduler/backups/${encodeURIComponent(t)}`)}var h=i(!1),g=i(`idle`),_=i(0),v=h;function y(e){e.theme&&localStorage.setItem(`theme`,JSON.stringify(e.theme)),e.language&&localStorage.setItem(`language`,e.language),e.ui&&localStorage.setItem(`ui`,JSON.stringify(e.ui))}function b(){async function e(e){let i=t();h.value=!0,g.value=`uploading`,_.value=0;try{let t=new FormData;t.append(`upload`,e),y(await l(t,e=>{_.value=e,e>=100&&(g.value=`restoring`)}))}catch(e){return h.value=!1,g.value=`idle`,i.add({severity:`error`,detail:r(e),life:3e3}),!1}g.value=`restarting`;let{beginServerRestart:s}=o();return s(),await a().catch(()=>{}),await n().logout(),h.value=!1,g.value=`idle`,!0}return{active:h,phase:g,uploadPercent:_,restoreLocalStorage:y,run:e}}export{p as a,f as c,c as i,b as n,u as o,m as r,d as s,v as t};
|