@camera.ui/server 0.0.72 → 0.0.73
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-CIsBB4A0.js → 404-CBPidZtR.js} +1 -1
- package/dist/interface/assets/{About-CkxZb9D-.js → About-DfQ4e1vD.js} +1 -1
- package/dist/interface/assets/{Adminpanel-BrZ55JBx.js → Adminpanel-COXSfBMg.js} +1 -1
- package/dist/interface/assets/{Automation-DjX-txg2.js → Automation-D_GVZm33.js} +2 -2
- package/dist/interface/assets/{Automations-CzdnqGGU.js → Automations-D7HIyrNq.js} +1 -1
- package/dist/interface/assets/{Camera-CU3aKdBR.js → Camera-4SF6wyN6.js} +2 -2
- package/dist/interface/assets/{CameraConsole-D7KxwRxQ.js → CameraConsole-BN2tzv0E.js} +1 -1
- package/dist/interface/assets/{Cameras-Bgxkmb6l.js → Cameras-CF-GQZ8t.js} +1 -1
- package/dist/interface/assets/{Camview-ArBQ3nES.js → Camview-PBFHWQ6x.js} +1 -1
- package/dist/interface/assets/{Config-D2ftkjl2.js → Config-BDVWZ6uT.js} +1 -1
- package/dist/interface/assets/{ConfigActionCameraControl-94iyzBzJ.js → ConfigActionCameraControl-CU-c_BrL.js} +1 -1
- package/dist/interface/assets/{ConfigActionDelay-DKhE0Xr8.js → ConfigActionDelay-BfzUepys.js} +1 -1
- package/dist/interface/assets/{ConfigActionHttp-BbfN1UGF.js → ConfigActionHttp-DpXIYMSY.js} +1 -1
- package/dist/interface/assets/{ConfigActionImageInput-P39gRfld.js → ConfigActionImageInput-CF5Z-g67.js} +1 -1
- package/dist/interface/assets/{ConfigActionNotification-CuDDnksK.js → ConfigActionNotification-CTpP-EAN.js} +1 -1
- package/dist/interface/assets/{ConfigActionOutput-BIHvC1Z5.js → ConfigActionOutput-DnJn9m7e.js} +1 -1
- package/dist/interface/assets/{ConfigActionPlugin-BVd0FkX6.js → ConfigActionPlugin-DCX4jPek.js} +1 -1
- package/dist/interface/assets/{ConfigActionSensor-BBkfWT_r.js → ConfigActionSensor-9VARJRSn.js} +1 -1
- package/dist/interface/assets/{ConfigActionSnapshot-C5enxVcl.js → ConfigActionSnapshot-BGIFlXpf.js} +1 -1
- package/dist/interface/assets/{ConfigActionVariable-CVaOMoOi.js → ConfigActionVariable-M2LUNu-P.js} +1 -1
- package/dist/interface/assets/{ConfigConditionIfElse-DiIOUqA5.js → ConfigConditionIfElse-CdzShwLs.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSensorState-DBktbA8F.js → ConfigConditionSensorState-BC5U6kkp.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSwitch-DWqcQ3Ip.js → ConfigConditionSwitch-BGKnBPAG.js} +1 -1
- package/dist/interface/assets/{ConfigConditionTime-BEaHclqa.js → ConfigConditionTime-D_OjngG5.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerDetection-CRnZR91p.js → ConfigTriggerDetection-COJNXq3M.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerGeofence-DODdJBZW.js → ConfigTriggerGeofence-BrWnbkD9.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerManual-V8-5hrdl.js → ConfigTriggerManual-CDUdcVkq.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSchedule-CqID85d1.js → ConfigTriggerSchedule-Be3lnp9p.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSensor-DR6ifBrK.js → ConfigTriggerSensor-DfnuqKgS.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSystem-K1ohOW18.js → ConfigTriggerSystem-C2aIblmb.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerWebhook-Cmwu5IU4.js → ConfigTriggerWebhook-B2DZ2EJY.js} +1 -1
- package/dist/interface/assets/{Console-IC7AOnvc.js → Console-BOFp7P-H.js} +1 -1
- package/dist/interface/assets/{CuiActionButton-Ba5wT-4n.js → CuiActionButton-Ch1eUoGE.js} +1 -1
- package/dist/interface/assets/{CuiAvatar-Bu4NixiB.js → CuiAvatar-GZWPpsGM.js} +1 -1
- package/dist/interface/assets/{CuiBBoxPlayground-Cmbd4_qG.js → CuiBBoxPlayground-DZQHrudD.js} +1 -1
- package/dist/interface/assets/{CuiBottomSheet-CHspaYgP.js → CuiBottomSheet-BHmtr7ZG.js} +1 -1
- package/dist/interface/assets/CuiBottomSheet-BRCmw0zO.js +1 -0
- package/dist/interface/assets/{CuiCameraCard-C7eDwhgw.js → CuiCameraCard-oSS2S2DF.js} +1 -1
- package/dist/interface/assets/{CuiCameraPipCard-C8Pg7xT9.js → CuiCameraPipCard-fIB6SiIK.js} +1 -1
- package/dist/interface/assets/{CuiCameraRecordings-CQHbo-_J.js → CuiCameraRecordings-DO3h6Nb8.js} +1 -1
- package/dist/interface/assets/{CuiCameraShares-DNuCgk4b.js → CuiCameraShares-B26sDA8c.js} +1 -1
- package/dist/interface/assets/{CuiCameraSnapshot-BpUMwSoR.js → CuiCameraSnapshot-BcirjBEq.js} +1 -1
- package/dist/interface/assets/{CuiCameraTable-DQffvTtY.js → CuiCameraTable-CT_ZS_l8.js} +1 -1
- package/dist/interface/assets/{CuiFloatingButton-RaxwbGht.js → CuiFloatingButton-B2F5R0HF.js} +1 -1
- package/dist/interface/assets/{CuiImage-60jwFIqc.js → CuiImage-5sNqiHYq.js} +1 -1
- package/dist/interface/assets/{CuiMarkdownContent-M5v8bBmS.js → CuiMarkdownContent-CI47o5kG.js} +1 -1
- package/dist/interface/assets/{CuiMenu-B4CHT2F_.js → CuiMenu-D1JMoN7A.js} +1 -1
- package/dist/interface/assets/{CuiPluginCard-5ItfIe1Z.js → CuiPluginCard-QYBi3ERw.js} +2 -2
- package/dist/interface/assets/{CuiPluginOAuthButton-BJRU2JBX.js → CuiPluginOAuthButton-Ejl0T3PH.js} +2 -2
- package/dist/interface/assets/{CuiQRCode-CNeepRQw.js → CuiQRCode-E9461Hgh.js} +1 -1
- package/dist/interface/assets/{CuiRecordingsGrid-CKHFeJlJ.js → CuiRecordingsGrid-DqGK4pYU.js} +1 -1
- package/dist/interface/assets/{CuiSchema-B0M5qZi-.js → CuiSchema-CdEvMnV4.js} +1 -1
- package/dist/interface/assets/{CuiTopNavbarItem-CgaR_X1z.js → CuiTopNavbarItem-B8CTaRte.js} +1 -1
- package/dist/interface/assets/{CuiTopbarSlot-BDZoZ_yn.js → CuiTopbarSlot-CKDf_KwL.js} +1 -1
- package/dist/interface/assets/{Faces-JoBk1Mcv.js → Faces-DbPr2v4F.js} +1 -1
- package/dist/interface/assets/{FirstSteps-CSMvd_p0.js → FirstSteps-BdykzcTW.js} +1 -1
- package/dist/interface/assets/{Instances-DwNihvsL.js → Instances-BqHrGwIY.js} +1 -1
- package/dist/interface/assets/{Menu-gv4GQhK1.js → Menu-Bw0p6YzJ.js} +1 -1
- package/dist/interface/assets/{OAuthDeviceFlow-aUHpE7wP.js → OAuthDeviceFlow-D8z2h4Ug.js} +1 -1
- package/dist/interface/assets/{Plugin-huffA1k1.js → Plugin-DHamjJ5r.js} +1 -1
- package/dist/interface/assets/{PluginConsole-CvDWPKOs.js → PluginConsole-ChgUEwIJ.js} +1 -1
- package/dist/interface/assets/{PluginSchema-CVJH7kNO.js → PluginSchema-DsDo2Djq.js} +1 -1
- package/dist/interface/assets/{Plugins-B207FOsG.js → Plugins-Cqn_ezzm.js} +2 -2
- package/dist/interface/assets/{Recordings-adHTSogQ.js → Recordings-B3VLMJod.js} +1 -1
- package/dist/interface/assets/{Settings-Cpf43KIz.js → Settings-DLVf5_jJ.js} +1 -1
- package/dist/interface/assets/{SettingsAccount-f2wkt4kx.js → SettingsAccount-CH6b8Y0q.js} +1 -1
- package/dist/interface/assets/SettingsAccount-DkVS1tzF.js +1 -0
- package/dist/interface/assets/{SettingsAppearance-2TfnSgkI.js → SettingsAppearance-C8wVJwQ8.js} +1 -1
- package/dist/interface/assets/SettingsAppearance-CnROEhCi.js +1 -0
- package/dist/interface/assets/{SettingsBackup-Bh5x-GU_.js → SettingsBackup-DxbSVnfJ.js} +1 -1
- package/dist/interface/assets/{SettingsNotifications-BVmhorXq.js → SettingsNotifications-Dvds80NA.js} +2 -2
- package/dist/interface/assets/{SettingsRecordings-Dm9YcEv3.js → SettingsRecordings-BIOfAb2h.js} +1 -1
- package/dist/interface/assets/{SettingsRemote-BcVzn2m3.js → SettingsRemote-C03FvyXf.js} +1 -1
- package/dist/interface/assets/{SettingsSystem-Dz76BUJ-.js → SettingsSystem-BPFTXK-P.js} +2 -2
- package/dist/interface/assets/{SettingsUsers-Dzj--Rmf.js → SettingsUsers-BCYaTBt4.js} +1 -1
- package/dist/interface/assets/{Terminal-BAMMh8Px.js → Terminal-Boe0DR2O.js} +1 -1
- package/dist/interface/assets/{VariableInput-D_-qKfZK.js → VariableInput-Lc1kxFYZ.js} +1 -1
- package/dist/interface/assets/{VariableSuggestions-Br4yDsLZ.js → VariableSuggestions-_6ChrEYD.js} +1 -1
- package/dist/interface/assets/{VersionsHandler-CfNT3Yke.js → VersionsHandler-BzvVAHte.js} +1 -1
- package/dist/interface/assets/{Workers-D3jFWBjm.js → Workers-BqDBTWos.js} +1 -1
- package/dist/interface/assets/{alert-outline-D3FCIX7_.js → alert-outline-ECU-QGl_.js} +1 -1
- package/dist/interface/assets/{api-BaywoTCE.js → api-DB9zU0CO.js} +2 -2
- package/dist/interface/assets/{api-DvuXV3Xb.js → api-oHQhcKNa.js} +1 -1
- package/dist/interface/assets/{auth-Cu-pUvKk.js → auth-Cg6hVAm_.js} +1 -1
- package/dist/interface/assets/{automation-CbEPnAW4.js → automation-DghSnBKq.js} +1 -1
- package/dist/interface/assets/{automations-C6ssihoC.js → automations-BLM4i3Ez.js} +1 -1
- package/dist/interface/assets/{automations-Bj3wF0wR.js → automations-DMOjMEq5.js} +1 -1
- package/dist/interface/assets/{back-filled-CvLD0CND.js → back-filled-BkiOF93D.js} +1 -1
- package/dist/interface/assets/{backup-DK5aZBLo.js → backup-Cpqu-TRJ.js} +1 -1
- package/dist/interface/assets/{bell-outline-JZZKpcfS.js → bell-outline-DaJcbVUn.js} +1 -1
- package/dist/interface/assets/{cameras-DQ28quQb.js → cameras-B8y4YKX9.js} +1 -1
- package/dist/interface/assets/{cameras.schema-CDeB5JeE.js → cameras.schema-B73ClRPL.js} +1 -1
- package/dist/interface/assets/{cctv-SQFfbBnL.js → cctv-BAcUIJMp.js} +1 -1
- package/dist/interface/assets/{check-BQQidcYi.js → check-B7v7seIz.js} +1 -1
- package/dist/interface/assets/{chevron-down-Dd1qHXVA.js → chevron-down-CVwnfdXV.js} +1 -1
- package/dist/interface/assets/{chevron-right-DOmJR2OL.js → chevron-right-Cg-pww_Z.js} +1 -1
- package/dist/interface/assets/{circular-connection-nKCVm4QI.js → circular-connection-CMVczvHt.js} +1 -1
- package/dist/interface/assets/{close-WdhW_91X.js → close--p6pjhzm.js} +1 -1
- package/dist/interface/assets/{close-Dhjo4o57.js → close-Dm2d7__t.js} +1 -1
- package/dist/interface/assets/{close-circle-i5PrRG0X.js → close-circle-DBnyH7Q3.js} +1 -1
- package/dist/interface/assets/{close-rounded-6nzLVPw0.js → close-rounded-G94TmxOw.js} +1 -1
- package/dist/interface/assets/{cloud-check-DeN6leiB.js → cloud-check-CAnawIkG.js} +1 -1
- package/dist/interface/assets/{cloud-outline-BQddJElX.js → cloud-outline-CN39Bfx-.js} +1 -1
- package/dist/interface/assets/{cloud-outline-BHjUiP9q.js → cloud-outline-DaiWou7I.js} +1 -1
- package/dist/interface/assets/cloudHandoff-BatpLTbX.js +1 -0
- package/dist/interface/assets/{cog-Batjj1se.js → cog-aSOYKXny.js} +1 -1
- package/dist/interface/assets/{copy-16-filled-DuAEBVEX.js → copy-16-filled-B6NJ1-UI.js} +1 -1
- package/dist/interface/assets/{copy-BeuZDsJN.js → copy-nv4aM1XQ.js} +1 -1
- package/dist/interface/assets/{delete-DvMWXBFV.js → delete-CAlbPVRO.js} +1 -1
- package/dist/interface/assets/{dist-CcCNy5h7.js → dist-CGuKzKCw.js} +1 -1
- package/dist/interface/assets/{download-Cna5QEEj.js → download-DONQv071.js} +1 -1
- package/dist/interface/assets/esm-BiqkLF7c.js +1 -0
- package/dist/interface/assets/esm-Bsur9240.js +1 -0
- package/dist/interface/assets/esm-BtNCmUvf.js +1 -0
- package/dist/interface/assets/esm-CJhFtjrE.js +1 -0
- package/dist/interface/assets/esm-CP_lj71C.js +1 -0
- package/dist/interface/assets/esm-CPg8utc7.js +1 -0
- package/dist/interface/assets/esm-CiNWHZ50.js +1 -0
- package/dist/interface/assets/esm-DFolS-mg.js +1 -0
- package/dist/interface/assets/esm-DiiqV-cs.js +1 -0
- package/dist/interface/assets/esm-DqWvGq2n.js +1 -0
- package/dist/interface/assets/esm-Dzs8IFoE.js +1 -0
- package/dist/interface/assets/esm-mz8xTH--.js +1 -0
- package/dist/interface/assets/esm-wThsSMEz.js +1 -0
- package/dist/interface/assets/{eventIcons-DVykqtE5.js → eventIcons-M249HkTY.js} +1 -1
- package/dist/interface/assets/{face-recognition-5Yp1IcUb.js → face-recognition-k77NfLPZ.js} +1 -1
- package/dist/interface/assets/{github-37yEERpu.js → github-D1pqtpqx.js} +1 -1
- package/dist/interface/assets/{grid-fill-BGU3gqir.js → grid-fill-CpGYpDXA.js} +1 -1
- package/dist/interface/assets/{hasPermission-DIF0bX8u.js → hasPermission-DG7uqyb3.js} +1 -1
- package/dist/interface/assets/{home-sSF_NnOu.js → home-Cu1WDLML.js} +1 -1
- package/dist/interface/assets/{information-outline-fu18_QSH.js → information-outline-CvnYcEj_.js} +1 -1
- package/dist/interface/assets/{instances-DGPhZWRw.js → instances-DvQD8lDm.js} +1 -1
- package/dist/interface/assets/{lightbulb-outline-DWc53kV7.js → lightbulb-outline-BPMkcQB4.js} +1 -1
- package/dist/interface/assets/locale-BpPHpLey.js +1 -0
- package/dist/interface/assets/{main-C25vmXlh.js → main-B1w1Zp-u.js} +2 -2
- package/dist/interface/assets/{microphone-ChDR4mkG.js → microphone-Cr6zggXu.js} +1 -1
- package/dist/interface/assets/native-BltAgW8y.js +1 -0
- package/dist/interface/assets/native-BqvVT_E9.js +1 -0
- package/dist/interface/assets/{nodeDefinitions-BLSMZueH.js → nodeDefinitions-BHkMC69w.js} +1 -1
- package/dist/interface/assets/{notifications-DNRzOl89.js → notifications-CbNYfTeQ.js} +1 -1
- package/dist/interface/assets/{play-solid-B_749j1A.js → play-solid-BWgGY6fq.js} +1 -1
- package/dist/interface/assets/plugin-coV37Q5h.js +1 -0
- package/dist/interface/assets/{plugins-DzRwEcA4.js → plugins-S4k_ycMp.js} +1 -1
- package/dist/interface/assets/{plus-Dis0MPt8.js → plus-BJOT8Imn.js} +1 -1
- package/dist/interface/assets/{plus-B5eEboLZ.js → plus-Da6fFyiW.js} +1 -1
- package/dist/interface/assets/{power-CxGfHa98.js → power-GIFDE9Rq.js} +1 -1
- package/dist/interface/assets/{ring-resize-fOkdAS5R.js → ring-resize-CQmI59ia.js} +1 -1
- package/dist/interface/assets/{round-alt-arrow-left-bold-ekP_ATNV.js → round-alt-arrow-left-bold-CwmBVJNh.js} +1 -1
- package/dist/interface/assets/{round-restart-alt-BWTTuG_j.js → round-restart-alt-B4xNRnMk.js} +1 -1
- package/dist/interface/assets/{router-BQMVP169.js → router-DeOWkPNe.js} +2 -2
- package/dist/interface/assets/{routerState-DMVeYr60.js → routerState-CVQAXVhL.js} +1 -1
- package/dist/interface/assets/{search-YdrT6au7.js → search-C-hEuQfC.js} +1 -1
- package/dist/interface/assets/{server-BWxbeZzY.js → server-BZoLeywh.js} +1 -1
- package/dist/interface/assets/{settings-D2-mWioF.js → settings-Cp3gCNpO.js} +1 -1
- package/dist/interface/assets/{shares-BLuBJftj.js → shares-hjCdh1Fk.js} +1 -1
- package/dist/interface/assets/{shield-check-DFR-xg-g.js → shield-check-Dt5J0QfO.js} +1 -1
- package/dist/interface/assets/{terminal-BYi6cqd4.js → terminal-B3QFYAj2.js} +1 -1
- package/dist/interface/assets/{theme-D08Upl8q.js → theme-DVwCJCnD.js} +1 -1
- package/dist/interface/assets/{trash-2-Du7oioNA.js → trash-2-6p7jG9fU.js} +1 -1
- package/dist/interface/assets/{trash-can-YTXLzAmt.js → trash-can-M-xPddVK.js} +1 -1
- package/dist/interface/assets/{trash-fill-ZI3YYgNp.js → trash-fill-D0Sdr94f.js} +1 -1
- package/dist/interface/assets/{types-kxdn9XBW.js → types-9XtpMdk_.js} +1 -1
- package/dist/interface/assets/{types-B_isDU64.js → types-COF_C2Ts.js} +1 -1
- package/dist/interface/assets/{ui-aYGNqaHi.js → ui-BXkpPR2i.js} +1 -1
- package/dist/interface/assets/{upload-Chr4Uunq.js → upload-DInbUoWy.js} +1 -1
- package/dist/interface/assets/{useBiometricCredentials-B-zA6b-X.js → useBiometricCredentials-DrSEu63H.js} +1 -1
- package/dist/interface/assets/{useCameraOptions-0w0LNh72.js → useCameraOptions-DcAkvLdl.js} +1 -1
- package/dist/interface/assets/{useCuiCameraDrawer-Dn97MLFe.js → useCuiCameraDrawer-BgL2YF5H.js} +1 -1
- package/dist/interface/assets/{useCuiDialog-BbkaNkQN.js → useCuiDialog-C2O9wpVW.js} +2 -2
- package/dist/interface/assets/{useFileDownload-g3sM8lp6.js → useFileDownload-CiLLzaJK.js} +1 -1
- package/dist/interface/assets/{useLogsSocket-CZld674d.js → useLogsSocket-Bo4A02QJ.js} +1 -1
- package/dist/interface/assets/{useSharedComposables-riqEUgwX.js → useSharedComposables-BFG26laC.js} +1 -1
- package/dist/interface/assets/{useStreamStatus-2lguNuWT.js → useStreamStatus-C3JIRbca.js} +1 -1
- package/dist/interface/assets/{users.schema-CUZOYClB.js → users.schema-DtC-y6Ie.js} +1 -1
- package/dist/interface/assets/{vendor-DmhYd_sB.js → vendor-BNffsu2J.js} +2 -2
- package/dist/interface/assets/{vendor-cameraui-DggYb17u.js → vendor-cameraui-DQWbrxPA.js} +1 -1
- package/dist/interface/assets/{vendor-capacitor-IA6kwsx8.js → vendor-capacitor-DM8avPyc.js} +2 -2
- package/dist/interface/assets/{vendor-chart-Dnlz1Jgy.js → vendor-chart-BnRvbhz4.js} +1 -1
- package/dist/interface/assets/{vendor-core-B6F-imJj.js → vendor-core-BFQDzztK.js} +1 -1
- package/dist/interface/assets/{vendor-dnd-Dp0ottZI.js → vendor-dnd-BbPi4fU-.js} +1 -1
- package/dist/interface/assets/{vendor-draggabilly-C2ae3o70.js → vendor-draggabilly-jG1H8JBb.js} +1 -1
- package/dist/interface/assets/{vendor-markdown-D3nVi7gw.js → vendor-markdown-CaiSLMSg.js} +1 -1
- package/dist/interface/assets/{vendor-primevue--pcuf6kA.js → vendor-primevue-DBjEgzpl.js} +1 -1
- package/dist/interface/assets/{vendor-vueflow-CBuKPASC.js → vendor-vueflow-B7zZMbJe.js} +1 -1
- package/dist/interface/assets/{view-grid-96p9T-KQ.js → view-grid-abOUmL8_.js} +1 -1
- package/dist/interface/assets/web-BSvcrUCP.js +1 -0
- package/dist/interface/assets/web-BW9BMGDM.js +1 -0
- package/dist/interface/assets/web-BjKL51lK-CuvyBK7m.js +1 -0
- package/dist/interface/assets/web-BqE-VQ9r.js +1 -0
- package/dist/interface/assets/web-C8ljZ5y2.js +1 -0
- package/dist/interface/assets/web-CbzSuVIn.js +1 -0
- package/dist/interface/assets/web-D0Lon5vH.js +1 -0
- package/dist/interface/assets/web-D4AJra8f.js +1 -0
- package/dist/interface/assets/web-D5gbyro9.js +1 -0
- package/dist/interface/assets/web-DP_PODrb.js +1 -0
- package/dist/interface/assets/web-DbRq1uG3.js +1 -0
- package/dist/interface/assets/web-j4KTTwz3.js +1 -0
- package/dist/interface/assets/workbox-window.prod.es5-BmndO3vJ.js +1 -0
- package/dist/interface/assets/{zoom-in-zoFmMkYM.js → zoom-in-q2gdyi5g.js} +1 -1
- package/dist/interface/index.html +66 -66
- package/dist/interface/sw.js +1 -1
- package/dist/server/package.json +6 -6
- package/dist/server/src/api/controllers/cameras.controller.js +3 -0
- package/dist/server/src/api/controllers/cameras.controller.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/server.js +1 -0
- package/dist/server/src/api/websocket/nsp/server.js.map +1 -1
- package/dist/server/src/main.d.ts +1 -0
- package/dist/server/src/main.js +13 -3
- package/dist/server/src/main.js.map +1 -1
- package/dist/server/src/types.d.ts +1 -0
- package/package.json +6 -6
- package/dist/interface/assets/CuiBottomSheet-BN5exkJm.js +0 -1
- package/dist/interface/assets/SettingsAccount-Ce0UnkLb.js +0 -1
- package/dist/interface/assets/SettingsAppearance-Dca237An.js +0 -1
- package/dist/interface/assets/cloudHandoff-DxhttWWd.js +0 -1
- package/dist/interface/assets/esm-B4Pd2w1t.js +0 -1
- package/dist/interface/assets/esm-B4l8-ACY.js +0 -1
- package/dist/interface/assets/esm-BE98HKPg.js +0 -1
- package/dist/interface/assets/esm-BNSLSv2m.js +0 -1
- package/dist/interface/assets/esm-BnT9fzsT.js +0 -1
- package/dist/interface/assets/esm-C-uLCRX1.js +0 -1
- package/dist/interface/assets/esm-C6JCcz6o.js +0 -1
- package/dist/interface/assets/esm-D5_rxfjE.js +0 -1
- package/dist/interface/assets/esm-D6ymjVa1.js +0 -1
- package/dist/interface/assets/esm-D8teZoG1.js +0 -1
- package/dist/interface/assets/esm-DnSGrmvg.js +0 -1
- package/dist/interface/assets/esm-DqkQVzkL.js +0 -1
- package/dist/interface/assets/esm-tnu6qUMk.js +0 -1
- package/dist/interface/assets/locale-Bm1nXzqV.js +0 -1
- package/dist/interface/assets/native-Cq3ra8E-.js +0 -1
- package/dist/interface/assets/native-DfLBhmBo.js +0 -1
- package/dist/interface/assets/plugin-C1NakF2p.js +0 -1
- package/dist/interface/assets/web-3Sh2qjiP.js +0 -1
- package/dist/interface/assets/web-B0BK4Q2M.js +0 -1
- package/dist/interface/assets/web-BjKL51lK-DzG2kK8Q.js +0 -1
- package/dist/interface/assets/web-COttRPza.js +0 -1
- package/dist/interface/assets/web-Ck1J3gUt.js +0 -1
- package/dist/interface/assets/web-DPxPmEOR.js +0 -1
- package/dist/interface/assets/web-DRprnZwc.js +0 -1
- package/dist/interface/assets/web-DusfFKJE.js +0 -1
- package/dist/interface/assets/web-U3ajDFzM.js +0 -1
- package/dist/interface/assets/web-jcLz0P7f.js +0 -1
- package/dist/interface/assets/web-tQAiC0W2.js +0 -1
- package/dist/interface/assets/web-x9pvmNMf.js +0 -1
- package/dist/interface/assets/workbox-window.prod.es5-DkzC-kEO.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as e}from"./vendor-DmhYd_sB.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-DggYb17u.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 w}from"./vendor-zod-CmGeQCqy.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 we(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 T=S().trim().min(1,`Detection label is required`),E=w([h(),h()]),Oe=p({name:S().trim().min(1,`Zone Name is required`),points:E.array().min(3,`At least 3 points are required`),type:d([v(`intersect`),v(`contain`)]),filter:d([v(`include`),v(`exclude`)]),labels:T.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:w([E,E]),direction:d([v(`both`),v(`a-to-b`),v(`b-to-a`)]),labels:T.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(),ke=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)}),Ae={enabled:!1,targetLabels:[`person`],minConfidence:.5,triggerDeadZone:.05,returnToHome:!1,homeWaitMs:1e4},je=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)}),O=d([v(`high-resolution`),v(`mid-resolution`),v(`low-resolution`),v(`snapshot`)]),Me=d([v(`high-resolution`),v(`mid-resolution`),v(`low-resolution`)]),Ne=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://`)]),Pe=Ne.options.map(e=>e.value),Fe=RegExp(`^(${Pe.join(`|`)})`),Ie=S().refine(e=>{if(!Fe.test(e))return!1;try{return new URL(e),!0}catch{return!1}},{message:`Invalid URL format or unsupported protocol`}),Le=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Camera Source Name is required`).transform(e=>e.replace(/ /g,`_`).toLowerCase()),role:O,useForSnapshot:b().default(!1),hotMode:b().default(!0),preload:b().default(!0),prebuffer:b().default(!1),urls:Ie.array().min(1,`At least one valid URL is required`),childSourceId:S().trim().min(1,`Child Source ID is required`).optional()}).strict(),Re=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Camera Source Name is required`).transform(e=>e.replace(/ /g,`_`).toLowerCase()),role:O,useForSnapshot:b().default(!1),hotMode:b().default(!0),preload:b().default(!0),prebuffer:b().default(!1),urls:Ie.array().min(1,`At least one valid URL is required`),childSourceId:S().trim().min(1,`Child Source ID is required`).optional()}).strict(),k=p({id:S(),name:S().trim()}),ze=p({motion:k.optional(),object:k.optional(),audio:k.optional(),face:k.optional(),licensePlate:k.optional(),ptz:k.optional(),battery:k.optional(),cameraController:k.optional(),classifier:k.array().optional(),light:k.array().optional(),siren:k.array().optional(),switch:k.array().optional(),securitySystem:k.array().optional(),contact:k.array().optional(),doorbell:k.array().optional(),hub:k.array().optional()}).strict(),Be=d([v(`auto`),v(`mse`),v(`webrtc`),v(`webrtc/tcp`)]),Ve=d([v(`16:9`),v(`9:16`),v(`8:3`),v(`4:3`),v(`1:1`)]),He=p({fps:h().min(0,`Minimum 0 fps`).max(30,`Maximum 30 fps`)}),A=d([v(`camera`),v(`doorbell`)]),j=p({streamingMode:Be,streamingSource:Me,aspectRatio:Ve}),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:A.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:Le.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`}),plugins:k.array().default([]),assignments:ze.default({}),interfaceSettings:j.default({streamingMode:`webrtc`,streamingSource:`high-resolution`,aspectRatio:`16:9`}),detectionZones:Oe.default([]),detectionLines:D.default([]),detectionSettings:ke.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:je.default(Ae),frameWorkerSettings:He.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||we(t)?{...e,isCloud:!0,detectionZones:n}:{...e,detectionZones:n}});var We=p({disabled:b().optional(),type:A.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:Re.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`}).optional(),plugins:k.array().optional(),assignments:ze.partial().optional(),interfaceSettings:j.partial().optional(),detectionZones:Oe.optional(),detectionLines:D.optional(),detectionSettings:ke.partial().optional(),ptzAutotrack:je.partial().optional(),frameWorkerSettings:He.partial().optional()}).strict().transform(e=>{if(e.sources){let t=e.sources.flatMap(e=>e.urls);if(e.isCloud===!0||we(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()}),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()});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`],G=1024*1024*5,tt=p({index:h(),cameraId:S(),colSpan:h().optional(),rowSpan:h().optional(),x:h().optional(),y:h().optional()}),nt=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)]),rt=d([v(`dnd`),v(`view`)]),it=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Layout name is required`),viewSize:nt,cameras:tt.array(),type:rt});p({name:S().trim().min(1,`Layout name is required`),viewSize:nt,cameras:tt.array()}).partial().optional();var at=p({views:it.array()}),ot=m([`contact`,`temperature`,`humidity`,`occupancy`,`smoke`,`leak`,`light`,`siren`,`switch`,`lock`,`garage`,`doorbell`,`securitySystem`,`battery`]),st=Se(`type`,[p({_id:S().default(e()).transform(()=>e()),type:v(`camera`),cameraId:S(),points:E}),p({_id:S().default(e()).transform(()=>e()),type:v(`sensor`),sensorType:ot,sensorName:S(),sensorPluginId:S(),sensorCameraId:S(),points:E})]);d([p({type:v(`camera`),cameraId:S(),points:E}).partial(),p({type:v(`sensor`),sensorType:ot,sensorName:S(),sensorPluginId:S(),sensorCameraId:S(),points:E}).partial()]).optional();var ct=p({shortcuts:st.array()}),lt=p({camview:at,cameras:l(S().trim(),ct)}),ut=p({_id:S().default(e()).transform(()=>e()),username:S().trim().min(1,`Username is required`),password: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`),passwordConfirm:S().trim().min(1,`Please confirm your password`),role:d([v(`admin`),v(`user`)]),firstLogin:b().default(!0),preferences:lt.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 dt=p({username:S().trim().min(1,`Username is required`).optional(),password: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`).optional(),passwordConfirm:S().trim().optional(),role:d([v(`admin`),v(`user`)]).optional(),upload:xe(I(G,et,`Max file size is 5MB.`,`.jpg, .jpeg, .png files are accepted.`)),firstLogin:b().optional(),preferences:lt.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 ft(){return Object.entries(K).filter(([,e])=>e.multiProvider).map(([e])=>e)}function pt(){return Object.entries(K).filter(([,e])=>e.isDetectionType).map(([e])=>e)}function mt(e){return K[e].assignmentKey}function ht(){return Object.entries(K).filter(([,e])=>e.category===r.Sensor&&!e.multiProvider).map(([e])=>e)}function gt(){return Object.entries(K).filter(([,e])=>!e.multiProvider&&e.category!==r.Sensor).map(([e])=>e)}function _t(){return Object.entries(K).filter(([,e])=>e.multiProvider).map(([e])=>e)}function vt(e){return!K[e].multiProvider}var yt={[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 bt(e){return yt[e]??[]}new Set(ft()),new Set(pt());var xt=`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(`.`),St=[`#backchannel=`,`#header=`,`#media=audio`,`#media=video`,`#timeout=10`,`#timeout=20`,`#timeout=30`,`#transport=`],Ct=`#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(`.`),wt=[`client_id=`,`client_private=`,`device_id=`,`device_public=`],Tt=[`#header=`],Et=[`client_id=`,`client_secret=`,`refresh_token=`,`project_id=`,`device_id=`],Dt=[`device_id=`,`refresh_token=`],Ot=[`#client_id=`,`#format=openipc`,`#format=wyze`,`#format=kinesis`,`#ice_servers=`];function kt(e){return e.type===`string`&&!(`enum`in e)}function At(e){return e.type===`number`}function jt(e){return e.type===`boolean`}function q(e){return e.type===`string`&&`enum`in e}function Mt(e){return e.type===`array`}function J(e){return e.type===`button`}function Y(e){return e.type===`submit`}function Nt(e){return kt(e)&&(!e.format||e.format!==`qrCode`&&e.format!==`image`)}var Pt=(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=>Pt(e,t)):Pt(e,t)}function Ft(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 It(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 Lt(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 Rt(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 zt(e,t){return t?e.filter(e=>`group`in e&&e.group===t):e}function Bt(e,t){let n=zt(e,t);return n.length>0&&n.every(e=>`readonly`in e&&e.readonly)}function Vt(e,t){let n=zt(e,t);return n.length>0&&n.some(e=>`store`in e&&e.store)}function Ht(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()===``||Ht(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 Ut=(e,t,n)=>t.filter(e=>`group`in e&&e.group===n).some(t=>{let n=e[t.key];return n!=null&&n!==``});function Wt(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(Ut(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 Gt=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{mt as A,Qe as B,Et as C,Ot as D,xt as E,G as F,z as G,R as H,ut as I,Ne as J,Ke as K,dt as L,ht as M,bt as N,K as O,vt as P,it as R,Tt as S,St as T,L as U,B as V,V as W,We as X,O as Y,Bt as _,Rt as a,Ct as b,Mt as c,Ft as d,q as f,Nt as g,Y as h,Z as i,gt as j,_t as k,jt as l,kt as m,X as n,Wt as o,At as p,P as q,It as r,Q as s,Gt as t,J as u,Vt as v,Dt as w,wt as x,Lt as y,$e as z};
|
|
1
|
+
import{S as e}from"./vendor-BNffsu2J.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-DQWbrxPA.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 w}from"./vendor-zod-CmGeQCqy.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 we(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 T=S().trim().min(1,`Detection label is required`),E=w([h(),h()]),Oe=p({name:S().trim().min(1,`Zone Name is required`),points:E.array().min(3,`At least 3 points are required`),type:d([v(`intersect`),v(`contain`)]),filter:d([v(`include`),v(`exclude`)]),labels:T.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:w([E,E]),direction:d([v(`both`),v(`a-to-b`),v(`b-to-a`)]),labels:T.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(),ke=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)}),Ae={enabled:!1,targetLabels:[`person`],minConfidence:.5,triggerDeadZone:.05,returnToHome:!1,homeWaitMs:1e4},je=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)}),O=d([v(`high-resolution`),v(`mid-resolution`),v(`low-resolution`),v(`snapshot`)]),Me=d([v(`high-resolution`),v(`mid-resolution`),v(`low-resolution`)]),Ne=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://`)]),Pe=Ne.options.map(e=>e.value),Fe=RegExp(`^(${Pe.join(`|`)})`),Ie=S().refine(e=>{if(!Fe.test(e))return!1;try{return new URL(e),!0}catch{return!1}},{message:`Invalid URL format or unsupported protocol`}),Le=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Camera Source Name is required`).transform(e=>e.replace(/ /g,`_`).toLowerCase()),role:O,useForSnapshot:b().default(!1),hotMode:b().default(!0),preload:b().default(!0),prebuffer:b().default(!1),urls:Ie.array().min(1,`At least one valid URL is required`),childSourceId:S().trim().min(1,`Child Source ID is required`).optional()}).strict(),Re=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Camera Source Name is required`).transform(e=>e.replace(/ /g,`_`).toLowerCase()),role:O,useForSnapshot:b().default(!1),hotMode:b().default(!0),preload:b().default(!0),prebuffer:b().default(!1),urls:Ie.array().min(1,`At least one valid URL is required`),childSourceId:S().trim().min(1,`Child Source ID is required`).optional()}).strict(),k=p({id:S(),name:S().trim()}),ze=p({motion:k.optional(),object:k.optional(),audio:k.optional(),face:k.optional(),licensePlate:k.optional(),ptz:k.optional(),battery:k.optional(),cameraController:k.optional(),classifier:k.array().optional(),light:k.array().optional(),siren:k.array().optional(),switch:k.array().optional(),securitySystem:k.array().optional(),contact:k.array().optional(),doorbell:k.array().optional(),hub:k.array().optional()}).strict(),Be=d([v(`auto`),v(`mse`),v(`webrtc`),v(`webrtc/tcp`)]),Ve=d([v(`16:9`),v(`9:16`),v(`8:3`),v(`4:3`),v(`1:1`)]),He=p({fps:h().min(0,`Minimum 0 fps`).max(30,`Maximum 30 fps`)}),A=d([v(`camera`),v(`doorbell`)]),j=p({streamingMode:Be,streamingSource:Me,aspectRatio:Ve}),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:A.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:Le.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`}),plugins:k.array().default([]),assignments:ze.default({}),interfaceSettings:j.default({streamingMode:`webrtc`,streamingSource:`high-resolution`,aspectRatio:`16:9`}),detectionZones:Oe.default([]),detectionLines:D.default([]),detectionSettings:ke.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:je.default(Ae),frameWorkerSettings:He.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||we(t)?{...e,isCloud:!0,detectionZones:n}:{...e,detectionZones:n}});var We=p({disabled:b().optional(),type:A.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:Re.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`}).optional(),plugins:k.array().optional(),assignments:ze.partial().optional(),interfaceSettings:j.partial().optional(),detectionZones:Oe.optional(),detectionLines:D.optional(),detectionSettings:ke.partial().optional(),ptzAutotrack:je.partial().optional(),frameWorkerSettings:He.partial().optional()}).strict().transform(e=>{if(e.sources){let t=e.sources.flatMap(e=>e.urls);if(e.isCloud===!0||we(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()}),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()});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`],G=1024*1024*5,tt=p({index:h(),cameraId:S(),colSpan:h().optional(),rowSpan:h().optional(),x:h().optional(),y:h().optional()}),nt=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)]),rt=d([v(`dnd`),v(`view`)]),it=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Layout name is required`),viewSize:nt,cameras:tt.array(),type:rt});p({name:S().trim().min(1,`Layout name is required`),viewSize:nt,cameras:tt.array()}).partial().optional();var at=p({views:it.array()}),ot=m([`contact`,`temperature`,`humidity`,`occupancy`,`smoke`,`leak`,`light`,`siren`,`switch`,`lock`,`garage`,`doorbell`,`securitySystem`,`battery`]),st=Se(`type`,[p({_id:S().default(e()).transform(()=>e()),type:v(`camera`),cameraId:S(),points:E}),p({_id:S().default(e()).transform(()=>e()),type:v(`sensor`),sensorType:ot,sensorName:S(),sensorPluginId:S(),sensorCameraId:S(),points:E})]);d([p({type:v(`camera`),cameraId:S(),points:E}).partial(),p({type:v(`sensor`),sensorType:ot,sensorName:S(),sensorPluginId:S(),sensorCameraId:S(),points:E}).partial()]).optional();var ct=p({shortcuts:st.array()}),lt=p({camview:at,cameras:l(S().trim(),ct)}),ut=p({_id:S().default(e()).transform(()=>e()),username:S().trim().min(1,`Username is required`),password: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`),passwordConfirm:S().trim().min(1,`Please confirm your password`),role:d([v(`admin`),v(`user`)]),firstLogin:b().default(!0),preferences:lt.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 dt=p({username:S().trim().min(1,`Username is required`).optional(),password: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`).optional(),passwordConfirm:S().trim().optional(),role:d([v(`admin`),v(`user`)]).optional(),upload:xe(I(G,et,`Max file size is 5MB.`,`.jpg, .jpeg, .png files are accepted.`)),firstLogin:b().optional(),preferences:lt.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 ft(){return Object.entries(K).filter(([,e])=>e.multiProvider).map(([e])=>e)}function pt(){return Object.entries(K).filter(([,e])=>e.isDetectionType).map(([e])=>e)}function mt(e){return K[e].assignmentKey}function ht(){return Object.entries(K).filter(([,e])=>e.category===r.Sensor&&!e.multiProvider).map(([e])=>e)}function gt(){return Object.entries(K).filter(([,e])=>!e.multiProvider&&e.category!==r.Sensor).map(([e])=>e)}function _t(){return Object.entries(K).filter(([,e])=>e.multiProvider).map(([e])=>e)}function vt(e){return!K[e].multiProvider}var yt={[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 bt(e){return yt[e]??[]}new Set(ft()),new Set(pt());var xt=`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(`.`),St=[`#backchannel=`,`#header=`,`#media=audio`,`#media=video`,`#timeout=10`,`#timeout=20`,`#timeout=30`,`#transport=`],Ct=`#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(`.`),wt=[`client_id=`,`client_private=`,`device_id=`,`device_public=`],Tt=[`#header=`],Et=[`client_id=`,`client_secret=`,`refresh_token=`,`project_id=`,`device_id=`],Dt=[`device_id=`,`refresh_token=`],Ot=[`#client_id=`,`#format=openipc`,`#format=wyze`,`#format=kinesis`,`#ice_servers=`];function kt(e){return e.type===`string`&&!(`enum`in e)}function At(e){return e.type===`number`}function jt(e){return e.type===`boolean`}function q(e){return e.type===`string`&&`enum`in e}function Mt(e){return e.type===`array`}function J(e){return e.type===`button`}function Y(e){return e.type===`submit`}function Nt(e){return kt(e)&&(!e.format||e.format!==`qrCode`&&e.format!==`image`)}var Pt=(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=>Pt(e,t)):Pt(e,t)}function Ft(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 It(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 Lt(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 Rt(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 zt(e,t){return t?e.filter(e=>`group`in e&&e.group===t):e}function Bt(e,t){let n=zt(e,t);return n.length>0&&n.every(e=>`readonly`in e&&e.readonly)}function Vt(e,t){let n=zt(e,t);return n.length>0&&n.some(e=>`store`in e&&e.store)}function Ht(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()===``||Ht(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 Ut=(e,t,n)=>t.filter(e=>`group`in e&&e.group===n).some(t=>{let n=e[t.key];return n!=null&&n!==``});function Wt(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(Ut(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 Gt=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{mt as A,Qe as B,Et as C,Ot as D,xt as E,G as F,z as G,R as H,ut as I,Ne as J,Ke as K,dt as L,ht as M,bt as N,K as O,vt as P,it as R,Tt as S,St as T,L as U,B as V,V as W,We as X,O as Y,Bt as _,Rt as a,Ct as b,Mt as c,Ft as d,q as f,Nt as g,Y as h,Z as i,gt as j,_t as k,jt as l,kt as m,X as n,Wt as o,At as p,P as q,It as r,Q as s,Gt as t,J as u,Vt as v,Dt as w,wt as x,Lt as y,$e as z};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$t as e,Xt as t,Yn as n,wn as r}from"./vendor-
|
|
1
|
+
import{$t as e,Xt as t,Yn as n,wn as r}from"./vendor-BNffsu2J.js";var i={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function a(n,a){return r(),e(`svg`,i,[...a[0]||=[t(`path`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M16 18a2 2 0 0 1 2 2a2 2 0 0 1 2-2a2 2 0 0 1-2-2a2 2 0 0 1-2 2m0-12a2 2 0 0 1 2 2a2 2 0 0 1 2-2a2 2 0 0 1-2-2a2 2 0 0 1-2 2M9 18a6 6 0 0 1 6-6a6 6 0 0 1-6-6a6 6 0 0 1-6 6a6 6 0 0 1 6 6`},null,-1)]])}var o=n({name:`tabler-sparkles`,render:a}),s=Symbol(`GridSearchState`);export{o as n,s as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Di as e}from"./vendor-cameraui-
|
|
1
|
+
import{Di as e}from"./vendor-cameraui-DQWbrxPA.js";import{d as t}from"./vendor-core-BFQDzztK.js";var n=[`account`,`appearance`,`user`,`recordings`,`instances`,`remote`,`backup`,`system`],r={cameras:{showEvents:!0,order:[],groupOrder:{},viewMode:`default`,dragDisabled:!0},camview:{dragDisabled:!1},config:{zoom:12},console:{zoom:12},interface:{showBottomBarOnMobile:!0,selectedSettingsView:`account`,navbarStayCollapsed:!0}},i=t(`ui`,()=>({uiSettings:e(`ui`,r,{mergeDefaults:!0})}));export{i as n,n as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$t as e,Xt as t,Yn as n,wn as r}from"./vendor-
|
|
1
|
+
import{$t as e,Xt as t,Yn as n,wn as r}from"./vendor-BNffsu2J.js";var i={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function a(n,a){return r(),e(`svg`,i,[...a[0]||=[t(`path`,{fill:`currentColor`,d:`M9 16v-6H5l7-7l7 7h-4v6zm-4 4v-2h14v2z`},null,-1)]])}var o=n({name:`mdi-upload`,render:a});export{o as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./api-
|
|
1
|
+
import"./api-DB9zU0CO.js";import"./vendor-BNffsu2J.js";async function e(){return{available:!1,enrolled:!1}}async function t(e){return!1}async function n(e,t){}async function r(e){}async function i(e,t){return null}export{i as a,n as i,r as n,t as r,e as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Yt as e}from"./vendor-
|
|
1
|
+
import{Yt as e}from"./vendor-BNffsu2J.js";import{En as t,Kt as n}from"./vendor-cameraui-DQWbrxPA.js";import{t as r}from"./cameras-B8y4YKX9.js";import{A as i,N as a,O as o}from"./types-9XtpMdk_.js";function s(){let{data:s}=new r().getCamerasQuery({page:1,pageSize:-1}),c=e(()=>s.value?.result??[]),l=e(()=>c.value.map(e=>({label:e.name,value:e._id})));function u(e){let n=c.value.find(t=>t._id===e);return n?.assignments?Object.values(t).filter(e=>{let t=i(e),r=n.assignments[t];return r?Array.isArray(r)?r.length>0:!0:!1}).map(e=>({label:e,value:e,meta:o[e]})):[]}function d(t,r){let{sensors:i,isLoading:a}=n(t,r);return{instanceOptions:e(()=>i.value.map(e=>({label:e.displayName.value||e.name,sensorName:e.name,pluginId:e.pluginId}))),isLoading:a}}function f(e){return a(e).map(e=>({label:e,value:e}))}return{cameras:c,cameraOptions:l,getSensorTypes:u,useSensorInstances:d,getPropertiesForSensor:f}}export{s as t};
|
package/dist/interface/assets/{useCuiCameraDrawer-Dn97MLFe.js → useCuiCameraDrawer-BgL2YF5H.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$n as e,Yt as t}from"./vendor-
|
|
1
|
+
import{$n as e,Yt as t}from"./vendor-BNffsu2J.js";import{Ci as n}from"./vendor-cameraui-DQWbrxPA.js";var r=n(Symbol(`cui-camera-drawer`)),i={position:`right`,showCloseIcon:!1,modal:!0,dismissable:!0,baseZIndex:1e3,blockScroll:!0,pt:{root:{class:`w-full sm:w-[400px]`}}};function a(){let n=e(!1),a=t(()=>n.value);return r.on(e=>{switch(e.type){case`close`:n.value=!1;break;case`open`:n.value=!0;break}}),{open:(e,t)=>{r.emit({type:`open`,options:e,props:{...i,...t}}),n.value=!0},close:()=>{r.emit({type:`close`}),n.value=!1},isOpen:a,getEventBus:()=>r}}export{a as n,i as t};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/CuiMarkdownContent-
|
|
2
|
-
import{S as e,l as t}from"./api-BaywoTCE.js";import{$n as n,$t as r,An as i,Cn as a,En as o,Gt as s,Hn as c,In as l,Qt as u,Rn as d,Rt as ee,Sn as f,Tn as p,Vn as m,Xt as h,Yn as g,Yt as _,Zn as v,Zt as y,an as te,ar as ne,cr as b,dn as re,dr as x,hn as S,in as C,jn as ie,kt as ae,ln as w,on as T,or as oe,sr as E,ur as se,wn as D}from"./vendor-DmhYd_sB.js";import{Bn as ce,Vn as le,Zt as ue,di as de,vi as fe,xi as pe}from"./vendor-cameraui-DggYb17u.js";import{l as me}from"./vendor-core-B6F-imJj.js";import{a as he,t as O}from"./useSharedComposables-riqEUgwX.js";import{A as k,J as ge}from"./vendor-primevue--pcuf6kA.js";import{t as _e}from"./CuiImage-60jwFIqc.js";import{t as ve}from"./close-rounded-6nzLVPw0.js";var A={viewBox:`0 0 16 16`,width:`1.2em`,height:`1.2em`};function j(e,t){return D(),r(`svg`,A,[...t[0]||=[h(`path`,{fill:`currentColor`,d:`M4.75 3.5c-.69 0-1.25.56-1.25 1.25v6.5c0 .69.56 1.25 1.25 1.25h6.5c.69 0 1.25-.56 1.25-1.25v-1.5a.75.75 0 0 1 1.5 0v1.5A2.75 2.75 0 0 1 11.25 14h-6.5A2.75 2.75 0 0 1 2 11.25v-6.5A2.75 2.75 0 0 1 4.75 2h1.5a.75.75 0 0 1 0 1.5zM8 2.75A.75.75 0 0 1 8.75 2h4.5a.75.75 0 0 1 .75.75v4.5a.75.75 0 0 1-1.5 0V4.561l-3.22 3.22A.75.75 0 1 1 8.22 6.72l3.22-3.22H8.75A.75.75 0 0 1 8 2.75`},null,-1)]])}var M=g({name:`fluent-open16-filled`,render:j}),N={viewBox:`0 0 16 16`,width:`1.2em`,height:`1.2em`};function P(e,t){return D(),r(`svg`,N,[...t[0]||=[h(`path`,{fill:`currentColor`,d:`M9.78 12.78a.75.75 0 0 1-1.06 0L4.47 8.53a.75.75 0 0 1 0-1.06l4.25-4.25a.75.75 0 0 1 1.042.018a.75.75 0 0 1 .018 1.042L6.06 8l3.72 3.72a.75.75 0 0 1 0 1.06`},null,-1)]])}var ye=g({name:`octicon-chevron-left16`,render:P}),F=T({render(){return w(`div`,{class:`flex items-center justify-center w-full h-full min-h-[100px]`},[w(ce,{class:`w-[24px] h-[24px] m-0`,strokeWidth:`5`})])}});function I(e,t){return te({loader:e,loadingComponent:F,delay:t?.delay??150})}var L=Symbol(`DialogStepper`);function be(e){let t=n(e),r=n(void 0),i={},a=(e,t)=>{i[e]||(i[e]=[]),i[e].push(t)},o=(e,t)=>{let n=i[e];if(n){let e=n.indexOf(t);e!==-1&&n.splice(e,1)}},s=(e,t)=>{let n=i[e];n&&n.forEach(e=>{e(t)})},c={currentTab:r,tabs:t,isMainTab:_(()=>!r.value),goToTab:e=>{let n=t.value.find(t=>t.id===e);n&&(r.value=e,s(`tabChange`,n))},goToMainTab:()=>{r.value=void 0,s(`tabChange`,void 0)},registerTab:e=>{t.value.some(t=>t.id===e.id)||t.value.push(e)},updateTabConfig:(e,n)=>{let r=t.value.findIndex(t=>t.id===e);r!==-1&&(t.value[r]={...t.value[r],...n},n.title&&s(`updateTabTitle`,{tabId:e,title:n.title}))},on:a,off:o,emit:s};return p(L,c),c}var xe={class:`p-dialog-content`},Se={key:0,class:`p-dialog-header-actions`},Ce={class:`p-dialog-title`},we={class:`p-dialog-header-actions ml-auto gap-2`},Te={key:0,class:`text-wrap`},Ee={key:0,class:`flex items-center justify-center shrink-0 w-full p-5 pb-safe-offset-5 mt-5 self-end`,style:{background:`var(--border-color)`}},R=T({__name:`CuiDialog`,setup(t){let g=I(()=>ae(()=>import(`./CuiMarkdownContent-M5v8bBmS.js`),__vite__mapDeps([0,1,2,3,4]))),te=me(),w=e(),{t:T}=de(),{width:ce,height:ue}=he(),O=re(`dialogRef`),k=l(`dialogHeader`),A=ne(O.value.data),{contentText:j,contentProps:N,loading:P,disabled:F,cancelButtonProps:L,confirmButtonProps:R,hideCancelButton:z,hideConfirmButton:B,dialogContentClass:V,dialogContentStyle:H,cancelText:U,confirmText:W,stayActive:De,src:Oe,title:G,fullscreen:ke,tabs:K,goTo:Ae,draggable:je,rootId:q,markdown:Me,headerActions:Ne}=A;p(`dialogRefProps`,A);let J=v({});p(`dialogHeaderToggles`,J);let Pe=O.value.options.templates,Fe=pe(document.getElementById(`app`)),Y=n(!1),X=n(null),Ie=n(!1),Z=n(G.value),Le=n(!1),Q,{style:Re,x:ze,y:Be}=fe(k,{disabled:!je?.value,containerElement(){return document.getElementById(`app`)},onStart(){Le.value=!0}}),Ve=_(()=>{let e=document.getElementById(q?.value||``);if(!e)return 1/0;let t=e.offsetWidth;return Fe.width.value-t}),He=_(()=>{let e=document.getElementById(q?.value||``);if(!e)return 1/0;let t=e.offsetHeight;return Fe.height.value-t}),Ue=_(()=>!!(Y.value||P?.value||oe(X.value?.isLoading))),We=_(()=>K.value!==void 0&&K.value.length>0),Ge=_(()=>U?.value?U.value:T(`components.form.button.close`)),Ke=_(()=>W?.value?W.value:T(`components.form.button.save`)),qe=_(()=>({...L?.value,label:Ge.value,loading:void 0,size:`small`,severity:L?.value&&`severity`in L.value?L.value.severity:`secondary`,class:void 0})),Je=_(()=>({...R?.value,label:Ke.value,loading:void 0,size:`small`,severity:R?.value&&`severity`in R.value?R.value.severity:`success`,class:`ml-auto`,disabled:F.value}));function Ye(e){let t=X.value?.resolveGoTo?.();O.value.close(),te.push(t??e)}async function Xe(){try{Y.value=!0;let e=await X.value?.onCancel?.();O.value.close({status:`cancel`,data:e})}catch(e){w.add({severity:`error`,detail:e,life:3e3})}finally{Y.value=!1}}async function Ze(){try{Y.value=!0;let e=await X.value?.onConfirm?.();if(e===null)return;De?.value?O.value.options.onConfirm?.(e):O.value.close({status:`confirm`,data:e})}catch(e){w.add({severity:`error`,detail:e,life:3e3})}finally{Y.value=!1}}function $(){let e=document.getElementById(q?.value||``)?.closest(`.p-dialog-mask`);if(!e)return;let t=Array.from(document.querySelectorAll(`.p-dialog-mask`)),n=0;for(let e of t){let t=parseInt(e.style.zIndex,10)||0;t>n&&(n=t)}(parseInt(e.style.zIndex,10)||0)<n&&(e.style.zIndex=String(n+1))}return We.value&&(Q=be(K.value??[]),d(Q.isMainTab,e=>{Ie.value=!e},{immediate:!0}),Q.on(`updateTabTitle`,({tabId:e,title:t})=>{Q?.currentTab.value===e&&G?.value&&(Z.value=t)}),Q.on(`tabChange`,e=>{Z.value=e?.title??G.value})),d([Re,ce,ue],()=>{if(!Le.value)return;let e=document.getElementById(q?.value||``);if(e){let t=Math.max(0,Math.min(ze.value,Ve.value)),n=Math.max(0,Math.min(Be.value,He.value));e.style.left=`${t}px`,e.style.top=`${n}px`}}),f(()=>{let e=document.getElementById(q?.value||``)?.closest(`.p-dialog-mask`);e&&(e.addEventListener(`pointerdown`,$),$())}),a(()=>{let e=document.getElementById(q?.value||``)?.closest(`.p-dialog-mask`);e&&e.removeEventListener(`pointerdown`,$)}),(e,t)=>{let n=ye,a=le,l=M,d=ve,f=_e,p=ge;return D(),r(`div`,xe,[h(`div`,{ref_key:`dialogHeader`,ref:k,class:b([`p-dialog-header justify-start gap-1`,{"cursor-move":E(je)}])},[C(ee,{name:`slide-left`},{default:m(()=>[E(Ie)?(D(),r(`div`,Se,[C(a,{severity:`secondary`,text:``,rounded:``,class:`p-dialog-back-button`,onClick:E(Q)?.goToMainTab},{icon:m(()=>[C(n,{width:`100%`,height:`100%`})]),_:1},8,[`onClick`])])):u(``,!0)]),_:1}),h(`span`,Ce,x(E(Z)),1),h(`div`,we,[(D(!0),r(s,null,o(E(Ne)??[],(e,t)=>c((D(),y(a,{key:t,severity:`secondary`,text:``,rounded:``,class:b([`p-dialog-close-button`,{"!text-primary":e.toggle&&E(J)[t]}]),onClick:()=>{e.toggle&&(E(J)[t]=!E(J)[t]),e.onClick()}},{icon:m(()=>[(D(),y(i(e.icon),{width:`100%`,height:`100%`}))]),_:2},1032,[`class`,`onClick`])),[[p,e.tooltip?{value:e.tooltip}:void 0,void 0,{bottom:!0}]])),128)),E(Ae)?c((D(),y(a,{key:0,severity:`secondary`,text:``,rounded:``,class:`p-dialog-close-button`,onClick:t[0]||=e=>Ye(E(Ae))},{icon:m(()=>[C(l,{width:`100%`,height:`100%`})]),_:1})),[[p,{value:e.$t(`components.dialog.open`)},void 0,{bottom:!0}]]):u(``,!0),C(a,{severity:`secondary`,text:``,rounded:``,class:`p-dialog-close-button`,onClick:E(O).close},{icon:m(()=>[C(d,{width:`100%`,height:`100%`})]),_:1},8,[`onClick`])])],2),h(`div`,{class:b([`p-dialog-body flex justify-center w-full overflow-y-auto px-5 py-1 text-balance`,{"h-full":E(ke)},E(V)]),style:se(E(H))},[E(j)&&!E(Me)?(D(),r(`span`,Te,x(E(j)),1)):E(j)&&E(Me)?(D(),y(E(g),{key:1,content:E(j)},null,8,[`content`])):E(Oe)?(D(),y(f,{key:2,src:E(Oe),"image-container-class":`w-full h-full`},null,8,[`src`])):(D(),y(i(E(Pe)?.content),S({key:3,ref_key:`componentRef`,ref:X,class:`w-full h-full relative`},E(N),ie(E(O).options.events||{})),null,16))],6),t[2]||=h(`div`,{class:`mt-auto`},null,-1),!E(z)||!E(B)?(D(),r(`div`,Ee,[E(z)?u(``,!0):(D(),y(a,S({key:0},E(qe),{class:`cui-button-medium`,onClick:Xe}),null,16)),t[1]||=h(`div`,{class:`ml-auto`},null,-1),E(B)?u(``,!0):(D(),y(a,S({key:1},E(Je),{loading:E(Ue),disabled:E(F),class:`cui-button-medium`,onClick:Ze}),null,16,[`loading`,`disabled`]))])):u(``,!0)])}}}),z={modal:!0,closable:!0,blockScroll:!0,draggable:!1,dismissableMask:!0,baseZIndex:1100,showHeader:!1},B={pt:{root:{class:`p-dialog-maximized pt-safe border-none`}}},V={pt:{root:{class:`shadow-xl shadow-black/30 overflow-hidden`}}},H={mobile:{textDialog:{style:{maxWidth:`none`,maxHeight:`100vh`},...B},imageDialog:{style:{maxWidth:`none`,maxHeight:`100vh`},...B},componentDialog:{style:{maxWidth:`none`,maxHeight:`100vh`},...B},stepperDialog:{style:{maxWidth:`none`,maxHeight:`100vh`},...B}},desktop:{textDialog:{style:{maxWidth:`1000px`,maxHeight:`90vh`,width:`auto`},...V},imageDialog:{style:{maxWidth:`1000px`,maxHeight:`90vh`,width:`70vw`},...V},componentDialog:{style:{maxWidth:`1000px`,maxHeight:`90vh`,width:`70vw`},...V},stepperDialog:{style:{maxWidth:`1000px`,maxHeight:`90vh`,width:`70vw`},...V}}};function U(){return{open:(e,t)=>{let n={content:e&&g(e),options:t||{},data:t&&t.data,close:e=>{k.emit(`close`,{instance:n,params:e})}};return k.emit(`open`,{instance:n}),n}}}function W(){let e=U(),{mdBreakpoint:n}=O(),r=(e,t,n)=>{let r=v({...e});n&&(t.pt.root.class=(t.pt.root.class?t.pt.root.class+` `:``)+`fixed mt-0`),ue(r.options.props,t)},i=(e,t,i,a)=>{let o={mobile:a?.mobile?{style:{...a.mobile},...B}:void 0,desktop:a?.desktop?{style:{...a.desktop},...V}:void 0};return d(n,n=>{if(n)switch(t){case`text`:r(e,o.mobile??H.mobile.textDialog,i);break;case`image`:r(e,o.mobile??H.mobile.imageDialog,i);break;case`component`:r(e,o.mobile??H.mobile.componentDialog,i);break;case`stepper`:r(e,o.mobile??H.mobile.stepperDialog,i);break;default:break}else switch(t){case`text`:r(e,o.desktop??H.desktop.textDialog,i);break;case`image`:r(e,o.desktop??H.desktop.imageDialog,i);break;case`component`:r(e,o.desktop??H.desktop.componentDialog,i);break;case`stepper`:r(e,o.desktop??H.desktop.stepperDialog,i);break;default:break}},{immediate:!0}),e};function a(n,r,a){let{component:o,data:s,onConfirm:c,onCancel:l,onSettled:u,events:d,...ee}=r,f={content:o?g(o):void 0};a?.pt||(a={...a,pt:{root:{}}});let p=E(s.draggable)??!1;p&&(a.draggable=!0);let m=E(s.dismissableMask);m!==void 0&&(a.dismissableMask=m);let h=E(s.modal);h!==void 0&&(a.modal=h);let _=s.rootId??t(10);a.pt.root.id=_;let y=e.open(R,{data:ne(v({confirmText:s.confirmText??void 0,cancelText:s.cancelText??void 0,hideConfirmButton:s.hideConfirmButton??!1,hideCancelButton:s.hideCancelButton??!1,loading:s.loading??!1,disabled:s.disabled??!1,confirmButtonProps:s.confirmButtonProps??void 0,cancelButtonProps:s.cancelButtonProps??void 0,dialogContentClass:s.dialogContentClass??void 0,dialogContentStyle:s.dialogContentStyle??void 0,stayActive:s.stayActive??!1,fullscreen:s.fullscreen??!1,contentText:s.contentText??void 0,src:s.src??void 0,markdown:s.markdown??!1,contentProps:s.contentProps??void 0,tabs:s.tabs??void 0,rootId:_,...s})),props:a,templates:f,events:d,onConfirm:c,onCancel:l,onClose:e=>{if(e?.data?.status===`confirm`){let{status:t,...n}=e.data;c?.(n?.data??n)}else l?.();u?.(e?.data?.data??e?.data)}});return s.fullscreen?y:i(y,n,p,ee?.dialogSize)}function o(e){let{data:t,...n}=e,r=structuredClone(z);return r.style={...z.style,width:`auto`,minWidth:`400px`},t.fullscreen&&(r.style={...r.style,maxWidth:`none`,maxHeight:`100vh`},r.pt={root:{class:`p-dialog-maximized pt-safe border-none`}}),a(`text`,{data:t,...n},r)}function s(e){let{data:t,...n}=e,r=structuredClone(z);return t.fullscreen&&(r.style={...r.style,maxWidth:`none`,maxHeight:`100vh`},r.pt={root:{class:`p-dialog-maximized pt-safe border-none`}}),a(`image`,{data:t,...n},r)}function c(e,t){let{data:n,...r}=t,i=structuredClone(z);return n.fullscreen&&(i.style={...i.style,maxWidth:`none`,maxHeight:`100vh`},i.pt={root:{class:`p-dialog-maximized pt-safe border-none`}}),a(`component`,{component:e,data:n,...r},i)}function l(e,t){let{data:n,...r}=t,i=structuredClone(z);return n.fullscreen&&(i.style={...i.style,maxWidth:`none`,maxHeight:`100vh`},i.pt={root:{class:`p-dialog-maximized pt-safe border-none`}}),a(`stepper`,{component:e,data:n,...r},i)}return{openTextDialog:o,openImageDialog:s,openComponentDialog:c,openStepperDialog:l}}export{I as n,M as r,W as t};
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/CuiMarkdownContent-CI47o5kG.js","assets/vendor-BNffsu2J.js","assets/rolldown-runtime-CMxvf4Kt.js","assets/vendor-markdown-CaiSLMSg.js","assets/vendor-markdown-DtOhvyRx.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{S as e,l as t}from"./api-DB9zU0CO.js";import{$n as n,$t as r,An as i,Cn as a,En as o,Gt as s,Hn as c,In as l,Qt as u,Rn as d,Rt as ee,Sn as f,Tn as p,Vn as m,Xt as h,Yn as g,Yt as _,Zn as v,Zt as y,an as te,ar as ne,cr as b,dn as re,dr as x,hn as S,in as C,jn as ie,kt as ae,ln as w,on as T,or as oe,sr as E,ur as se,wn as D}from"./vendor-BNffsu2J.js";import{Bn as ce,Vn as le,Zt as ue,di as de,vi as fe,xi as pe}from"./vendor-cameraui-DQWbrxPA.js";import{l as me}from"./vendor-core-BFQDzztK.js";import{a as he,t as O}from"./useSharedComposables-BFG26laC.js";import{A as k,J as ge}from"./vendor-primevue-DBjEgzpl.js";import{t as _e}from"./CuiImage-5sNqiHYq.js";import{t as ve}from"./close-rounded-G94TmxOw.js";var A={viewBox:`0 0 16 16`,width:`1.2em`,height:`1.2em`};function j(e,t){return D(),r(`svg`,A,[...t[0]||=[h(`path`,{fill:`currentColor`,d:`M4.75 3.5c-.69 0-1.25.56-1.25 1.25v6.5c0 .69.56 1.25 1.25 1.25h6.5c.69 0 1.25-.56 1.25-1.25v-1.5a.75.75 0 0 1 1.5 0v1.5A2.75 2.75 0 0 1 11.25 14h-6.5A2.75 2.75 0 0 1 2 11.25v-6.5A2.75 2.75 0 0 1 4.75 2h1.5a.75.75 0 0 1 0 1.5zM8 2.75A.75.75 0 0 1 8.75 2h4.5a.75.75 0 0 1 .75.75v4.5a.75.75 0 0 1-1.5 0V4.561l-3.22 3.22A.75.75 0 1 1 8.22 6.72l3.22-3.22H8.75A.75.75 0 0 1 8 2.75`},null,-1)]])}var M=g({name:`fluent-open16-filled`,render:j}),N={viewBox:`0 0 16 16`,width:`1.2em`,height:`1.2em`};function P(e,t){return D(),r(`svg`,N,[...t[0]||=[h(`path`,{fill:`currentColor`,d:`M9.78 12.78a.75.75 0 0 1-1.06 0L4.47 8.53a.75.75 0 0 1 0-1.06l4.25-4.25a.75.75 0 0 1 1.042.018a.75.75 0 0 1 .018 1.042L6.06 8l3.72 3.72a.75.75 0 0 1 0 1.06`},null,-1)]])}var ye=g({name:`octicon-chevron-left16`,render:P}),F=T({render(){return w(`div`,{class:`flex items-center justify-center w-full h-full min-h-[100px]`},[w(ce,{class:`w-[24px] h-[24px] m-0`,strokeWidth:`5`})])}});function I(e,t){return te({loader:e,loadingComponent:F,delay:t?.delay??150})}var L=Symbol(`DialogStepper`);function be(e){let t=n(e),r=n(void 0),i={},a=(e,t)=>{i[e]||(i[e]=[]),i[e].push(t)},o=(e,t)=>{let n=i[e];if(n){let e=n.indexOf(t);e!==-1&&n.splice(e,1)}},s=(e,t)=>{let n=i[e];n&&n.forEach(e=>{e(t)})},c={currentTab:r,tabs:t,isMainTab:_(()=>!r.value),goToTab:e=>{let n=t.value.find(t=>t.id===e);n&&(r.value=e,s(`tabChange`,n))},goToMainTab:()=>{r.value=void 0,s(`tabChange`,void 0)},registerTab:e=>{t.value.some(t=>t.id===e.id)||t.value.push(e)},updateTabConfig:(e,n)=>{let r=t.value.findIndex(t=>t.id===e);r!==-1&&(t.value[r]={...t.value[r],...n},n.title&&s(`updateTabTitle`,{tabId:e,title:n.title}))},on:a,off:o,emit:s};return p(L,c),c}var xe={class:`p-dialog-content`},Se={key:0,class:`p-dialog-header-actions`},Ce={class:`p-dialog-title`},we={class:`p-dialog-header-actions ml-auto gap-2`},Te={key:0,class:`text-wrap`},Ee={key:0,class:`flex items-center justify-center shrink-0 w-full p-5 pb-safe-offset-5 mt-5 self-end`,style:{background:`var(--border-color)`}},R=T({__name:`CuiDialog`,setup(t){let g=I(()=>ae(()=>import(`./CuiMarkdownContent-CI47o5kG.js`),__vite__mapDeps([0,1,2,3,4]))),te=me(),w=e(),{t:T}=de(),{width:ce,height:ue}=he(),O=re(`dialogRef`),k=l(`dialogHeader`),A=ne(O.value.data),{contentText:j,contentProps:N,loading:P,disabled:F,cancelButtonProps:L,confirmButtonProps:R,hideCancelButton:z,hideConfirmButton:B,dialogContentClass:V,dialogContentStyle:H,cancelText:U,confirmText:W,stayActive:De,src:Oe,title:G,fullscreen:ke,tabs:K,goTo:Ae,draggable:je,rootId:q,markdown:Me,headerActions:Ne}=A;p(`dialogRefProps`,A);let J=v({});p(`dialogHeaderToggles`,J);let Pe=O.value.options.templates,Fe=pe(document.getElementById(`app`)),Y=n(!1),X=n(null),Ie=n(!1),Z=n(G.value),Le=n(!1),Q,{style:Re,x:ze,y:Be}=fe(k,{disabled:!je?.value,containerElement(){return document.getElementById(`app`)},onStart(){Le.value=!0}}),Ve=_(()=>{let e=document.getElementById(q?.value||``);if(!e)return 1/0;let t=e.offsetWidth;return Fe.width.value-t}),He=_(()=>{let e=document.getElementById(q?.value||``);if(!e)return 1/0;let t=e.offsetHeight;return Fe.height.value-t}),Ue=_(()=>!!(Y.value||P?.value||oe(X.value?.isLoading))),We=_(()=>K.value!==void 0&&K.value.length>0),Ge=_(()=>U?.value?U.value:T(`components.form.button.close`)),Ke=_(()=>W?.value?W.value:T(`components.form.button.save`)),qe=_(()=>({...L?.value,label:Ge.value,loading:void 0,size:`small`,severity:L?.value&&`severity`in L.value?L.value.severity:`secondary`,class:void 0})),Je=_(()=>({...R?.value,label:Ke.value,loading:void 0,size:`small`,severity:R?.value&&`severity`in R.value?R.value.severity:`success`,class:`ml-auto`,disabled:F.value}));function Ye(e){let t=X.value?.resolveGoTo?.();O.value.close(),te.push(t??e)}async function Xe(){try{Y.value=!0;let e=await X.value?.onCancel?.();O.value.close({status:`cancel`,data:e})}catch(e){w.add({severity:`error`,detail:e,life:3e3})}finally{Y.value=!1}}async function Ze(){try{Y.value=!0;let e=await X.value?.onConfirm?.();if(e===null)return;De?.value?O.value.options.onConfirm?.(e):O.value.close({status:`confirm`,data:e})}catch(e){w.add({severity:`error`,detail:e,life:3e3})}finally{Y.value=!1}}function $(){let e=document.getElementById(q?.value||``)?.closest(`.p-dialog-mask`);if(!e)return;let t=Array.from(document.querySelectorAll(`.p-dialog-mask`)),n=0;for(let e of t){let t=parseInt(e.style.zIndex,10)||0;t>n&&(n=t)}(parseInt(e.style.zIndex,10)||0)<n&&(e.style.zIndex=String(n+1))}return We.value&&(Q=be(K.value??[]),d(Q.isMainTab,e=>{Ie.value=!e},{immediate:!0}),Q.on(`updateTabTitle`,({tabId:e,title:t})=>{Q?.currentTab.value===e&&G?.value&&(Z.value=t)}),Q.on(`tabChange`,e=>{Z.value=e?.title??G.value})),d([Re,ce,ue],()=>{if(!Le.value)return;let e=document.getElementById(q?.value||``);if(e){let t=Math.max(0,Math.min(ze.value,Ve.value)),n=Math.max(0,Math.min(Be.value,He.value));e.style.left=`${t}px`,e.style.top=`${n}px`}}),f(()=>{let e=document.getElementById(q?.value||``)?.closest(`.p-dialog-mask`);e&&(e.addEventListener(`pointerdown`,$),$())}),a(()=>{let e=document.getElementById(q?.value||``)?.closest(`.p-dialog-mask`);e&&e.removeEventListener(`pointerdown`,$)}),(e,t)=>{let n=ye,a=le,l=M,d=ve,f=_e,p=ge;return D(),r(`div`,xe,[h(`div`,{ref_key:`dialogHeader`,ref:k,class:b([`p-dialog-header justify-start gap-1`,{"cursor-move":E(je)}])},[C(ee,{name:`slide-left`},{default:m(()=>[E(Ie)?(D(),r(`div`,Se,[C(a,{severity:`secondary`,text:``,rounded:``,class:`p-dialog-back-button`,onClick:E(Q)?.goToMainTab},{icon:m(()=>[C(n,{width:`100%`,height:`100%`})]),_:1},8,[`onClick`])])):u(``,!0)]),_:1}),h(`span`,Ce,x(E(Z)),1),h(`div`,we,[(D(!0),r(s,null,o(E(Ne)??[],(e,t)=>c((D(),y(a,{key:t,severity:`secondary`,text:``,rounded:``,class:b([`p-dialog-close-button`,{"!text-primary":e.toggle&&E(J)[t]}]),onClick:()=>{e.toggle&&(E(J)[t]=!E(J)[t]),e.onClick()}},{icon:m(()=>[(D(),y(i(e.icon),{width:`100%`,height:`100%`}))]),_:2},1032,[`class`,`onClick`])),[[p,e.tooltip?{value:e.tooltip}:void 0,void 0,{bottom:!0}]])),128)),E(Ae)?c((D(),y(a,{key:0,severity:`secondary`,text:``,rounded:``,class:`p-dialog-close-button`,onClick:t[0]||=e=>Ye(E(Ae))},{icon:m(()=>[C(l,{width:`100%`,height:`100%`})]),_:1})),[[p,{value:e.$t(`components.dialog.open`)},void 0,{bottom:!0}]]):u(``,!0),C(a,{severity:`secondary`,text:``,rounded:``,class:`p-dialog-close-button`,onClick:E(O).close},{icon:m(()=>[C(d,{width:`100%`,height:`100%`})]),_:1},8,[`onClick`])])],2),h(`div`,{class:b([`p-dialog-body flex justify-center w-full overflow-y-auto px-5 py-1 text-balance`,{"h-full":E(ke)},E(V)]),style:se(E(H))},[E(j)&&!E(Me)?(D(),r(`span`,Te,x(E(j)),1)):E(j)&&E(Me)?(D(),y(E(g),{key:1,content:E(j)},null,8,[`content`])):E(Oe)?(D(),y(f,{key:2,src:E(Oe),"image-container-class":`w-full h-full`},null,8,[`src`])):(D(),y(i(E(Pe)?.content),S({key:3,ref_key:`componentRef`,ref:X,class:`w-full h-full relative`},E(N),ie(E(O).options.events||{})),null,16))],6),t[2]||=h(`div`,{class:`mt-auto`},null,-1),!E(z)||!E(B)?(D(),r(`div`,Ee,[E(z)?u(``,!0):(D(),y(a,S({key:0},E(qe),{class:`cui-button-medium`,onClick:Xe}),null,16)),t[1]||=h(`div`,{class:`ml-auto`},null,-1),E(B)?u(``,!0):(D(),y(a,S({key:1},E(Je),{loading:E(Ue),disabled:E(F),class:`cui-button-medium`,onClick:Ze}),null,16,[`loading`,`disabled`]))])):u(``,!0)])}}}),z={modal:!0,closable:!0,blockScroll:!0,draggable:!1,dismissableMask:!0,baseZIndex:1100,showHeader:!1},B={pt:{root:{class:`p-dialog-maximized pt-safe border-none`}}},V={pt:{root:{class:`shadow-xl shadow-black/30 overflow-hidden`}}},H={mobile:{textDialog:{style:{maxWidth:`none`,maxHeight:`100vh`},...B},imageDialog:{style:{maxWidth:`none`,maxHeight:`100vh`},...B},componentDialog:{style:{maxWidth:`none`,maxHeight:`100vh`},...B},stepperDialog:{style:{maxWidth:`none`,maxHeight:`100vh`},...B}},desktop:{textDialog:{style:{maxWidth:`1000px`,maxHeight:`90vh`,width:`auto`},...V},imageDialog:{style:{maxWidth:`1000px`,maxHeight:`90vh`,width:`70vw`},...V},componentDialog:{style:{maxWidth:`1000px`,maxHeight:`90vh`,width:`70vw`},...V},stepperDialog:{style:{maxWidth:`1000px`,maxHeight:`90vh`,width:`70vw`},...V}}};function U(){return{open:(e,t)=>{let n={content:e&&g(e),options:t||{},data:t&&t.data,close:e=>{k.emit(`close`,{instance:n,params:e})}};return k.emit(`open`,{instance:n}),n}}}function W(){let e=U(),{mdBreakpoint:n}=O(),r=(e,t,n)=>{let r=v({...e});n&&(t.pt.root.class=(t.pt.root.class?t.pt.root.class+` `:``)+`fixed mt-0`),ue(r.options.props,t)},i=(e,t,i,a)=>{let o={mobile:a?.mobile?{style:{...a.mobile},...B}:void 0,desktop:a?.desktop?{style:{...a.desktop},...V}:void 0};return d(n,n=>{if(n)switch(t){case`text`:r(e,o.mobile??H.mobile.textDialog,i);break;case`image`:r(e,o.mobile??H.mobile.imageDialog,i);break;case`component`:r(e,o.mobile??H.mobile.componentDialog,i);break;case`stepper`:r(e,o.mobile??H.mobile.stepperDialog,i);break;default:break}else switch(t){case`text`:r(e,o.desktop??H.desktop.textDialog,i);break;case`image`:r(e,o.desktop??H.desktop.imageDialog,i);break;case`component`:r(e,o.desktop??H.desktop.componentDialog,i);break;case`stepper`:r(e,o.desktop??H.desktop.stepperDialog,i);break;default:break}},{immediate:!0}),e};function a(n,r,a){let{component:o,data:s,onConfirm:c,onCancel:l,onSettled:u,events:d,...ee}=r,f={content:o?g(o):void 0};a?.pt||(a={...a,pt:{root:{}}});let p=E(s.draggable)??!1;p&&(a.draggable=!0);let m=E(s.dismissableMask);m!==void 0&&(a.dismissableMask=m);let h=E(s.modal);h!==void 0&&(a.modal=h);let _=s.rootId??t(10);a.pt.root.id=_;let y=e.open(R,{data:ne(v({confirmText:s.confirmText??void 0,cancelText:s.cancelText??void 0,hideConfirmButton:s.hideConfirmButton??!1,hideCancelButton:s.hideCancelButton??!1,loading:s.loading??!1,disabled:s.disabled??!1,confirmButtonProps:s.confirmButtonProps??void 0,cancelButtonProps:s.cancelButtonProps??void 0,dialogContentClass:s.dialogContentClass??void 0,dialogContentStyle:s.dialogContentStyle??void 0,stayActive:s.stayActive??!1,fullscreen:s.fullscreen??!1,contentText:s.contentText??void 0,src:s.src??void 0,markdown:s.markdown??!1,contentProps:s.contentProps??void 0,tabs:s.tabs??void 0,rootId:_,...s})),props:a,templates:f,events:d,onConfirm:c,onCancel:l,onClose:e=>{if(e?.data?.status===`confirm`){let{status:t,...n}=e.data;c?.(n?.data??n)}else l?.();u?.(e?.data?.data??e?.data)}});return s.fullscreen?y:i(y,n,p,ee?.dialogSize)}function o(e){let{data:t,...n}=e,r=structuredClone(z);return r.style={...z.style,width:`auto`,minWidth:`400px`},t.fullscreen&&(r.style={...r.style,maxWidth:`none`,maxHeight:`100vh`},r.pt={root:{class:`p-dialog-maximized pt-safe border-none`}}),a(`text`,{data:t,...n},r)}function s(e){let{data:t,...n}=e,r=structuredClone(z);return t.fullscreen&&(r.style={...r.style,maxWidth:`none`,maxHeight:`100vh`},r.pt={root:{class:`p-dialog-maximized pt-safe border-none`}}),a(`image`,{data:t,...n},r)}function c(e,t){let{data:n,...r}=t,i=structuredClone(z);return n.fullscreen&&(i.style={...i.style,maxWidth:`none`,maxHeight:`100vh`},i.pt={root:{class:`p-dialog-maximized pt-safe border-none`}}),a(`component`,{component:e,data:n,...r},i)}function l(e,t){let{data:n,...r}=t,i=structuredClone(z);return n.fullscreen&&(i.style={...i.style,maxWidth:`none`,maxHeight:`100vh`},i.pt={root:{class:`p-dialog-maximized pt-safe border-none`}}),a(`stepper`,{component:e,data:n,...r},i)}return{openTextDialog:o,openImageDialog:s,openComponentDialog:c,openStepperDialog:l}}export{I as n,M as r,W as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as e}from"./api-
|
|
1
|
+
import{j as e}from"./api-DB9zU0CO.js";import"./vendor-BNffsu2J.js";async function t(e){let t=await i(e);a()&&await o(t,e.filename)||s(t,e.filename)}function n(t){return/^https?:\/\//i.test(t)?t:`${e().target.value?.endpoint.url??window.location.origin}${t.startsWith(`/`)?``:`/`}${t}`}function r(){let t={},n=e().target.value?.tokens;return n?.access&&(t.Authorization=`Bearer ${n.access}`),n?.proxySession&&(t[`X-Proxy-Session`]=n.proxySession),t}async function i(e){if(`blob`in e)return e.blob;if(`dataUrl`in e)return(await fetch(e.dataUrl)).blob();let t=await fetch(n(e.url),{headers:r(),credentials:`include`});if(!t.ok)throw Error(`Download failed: ${t.status} ${t.statusText}`);return t.blob()}function a(){return typeof window>`u`?!1:window.matchMedia(`(display-mode: standalone)`).matches?!0:!!window.navigator.standalone}async function o(e,t){if(typeof navigator>`u`||!navigator.canShare||!navigator.share)return!1;let n=new File([e],t,{type:e.type||`application/octet-stream`});if(!navigator.canShare({files:[n]}))return!1;try{return await navigator.share({files:[n]}),!0}catch(e){return e instanceof Error&&e.name===`AbortError`}}function s(e,t){let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,document.body.appendChild(r),r.click(),r.remove(),setTimeout(()=>URL.revokeObjectURL(n),1e3)}export{t};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as e}from"./api-
|
|
1
|
+
import{_ as e}from"./api-DB9zU0CO.js";import{$n as t,$t as n,Cn as r,In as i,Rn as a,Sn as o,Yt as s,ar as c,cr as l,nr as u,on as d,sr as f,wn as p}from"./vendor-BNffsu2J.js";import{Ji as m,Ki as h,xi as g}from"./vendor-cameraui-DQWbrxPA.js";import{t as _}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as v}from"./useSharedComposables-BFG26laC.js";import{a as y,i as b,n as x,r as S,t as C}from"./vendor-xterm-D8Z_h2U0.js";var w=_(d({__name:`CuiConsole`,props:{options:{default:()=>({fontSize:14})},ignoreBreakpoint:{type:Boolean}},setup(e,{expose:d}){let _=e,{smBreakpoint:w}=v(),{options:T,ignoreBreakpoint:E}=c(_),D={fontSize:14,scrollback:5e3,allowTransparency:!1,smoothScrollDuration:0,disableStdin:!0,allowProposedApi:!0},O=i(`terminalContainerRef`),k=t(0),A=u(null),j=null,M=null,N=null,P=null,F,I=``,L=!1,R=g(O),z=s(()=>{if(!A.value)return!0;let e=A.value.buffer.active.length-A.value.rows;return k.value>=e});function B(){A.value&&(k.value=A.value.buffer.active.viewportY)}function V(){!A.value||!j||(j.fit(),B())}function H(){V(),A.value?.scrollToBottom(),B()}let U=h(B,16),W=h(H,100),{start:G,isPending:K}=m(()=>{A.value&&I&&(A.value.write(I),I=``,U())},16,{immediate:!1});function q(e){L&&=(I+=`
|
|
2
2
|
`,!1),e.endsWith(`
|
|
3
3
|
`)?(I+=e.slice(0,-1),L=!0):e.endsWith(`\r
|
|
4
4
|
`)?(I+=e.slice(0,-2),L=!0):I+=e,K.value||G()}function J(){requestAnimationFrame(()=>{A.value?.scrollToBottom(),U()})}function Y(){A.value?.clear(),U()}function X(){let e=A.value?.element;if(!e)return;let t=0,n=0,i=0,a=0,o=!1;function s(){F&&clearInterval(F)}function c(e){s(),t=e.touches[0].clientY,n=t,i=0,a=Date.now(),o=!1}function l(e){e.preventDefault();let t=e.touches[0].clientY,r=Date.now(),s=t-n,c=Math.max(r-a,1);if(a=r,n=t,i=Math.max(-1.2,Math.min(s/c,1.2)),A.value&&c>0){let e=-Math.round(s/20);A.value.scrollLines(e),o=!0,U()}}function u(){if(o&&Math.abs(i)>.2){let e=i;F=setInterval(()=>{if(!A.value||Math.abs(e)<.05){s();return}let t=-Math.round(e*12);A.value.scrollLines(t),e*=.92,U()},16)}}e.addEventListener(`touchstart`,c,{passive:!0}),e.addEventListener(`touchmove`,l,{passive:!1}),e.addEventListener(`touchend`,u,{passive:!0}),r(()=>{e.removeEventListener(`touchstart`,c),e.removeEventListener(`touchmove`,l),e.removeEventListener(`touchend`,u),s()})}function Z(e){if(e)try{e.dispose()}catch{}}return a(T,()=>{A.value&&(A.value.options=T.value,W())},{deep:!0}),a([R.height,R.width],()=>{W()}),o(()=>{A.value=new C({...D,...T.value}),j=new y,P=new x,M=new b,N=new S,A.value.loadAddon(M),A.value.loadAddon(N),A.value.loadAddon(P),A.value.loadAddon(j),A.value.open(O.value);let e=O.value.querySelector(`textarea`);e&&(e.disabled=!0,e.tabIndex=-1),A.value.onScroll(()=>{B()}),H(),X(),P.onContextLoss(()=>{Z(P)})}),r(()=>{Z(j),Z(P),Z(M),Z(N),Z(A.value)}),d({clearTerminal:Y,writeTerminal:q,resizeHandler:H,scrollToBottom:J,atBottom:z}),(e,t)=>(p(),n(`div`,{ref_key:`terminalContainerRef`,ref:O,class:l([`w-full h-full bg-none z-1 overflow-hidden p-2 min-w-0`,{"pb-0":!f(w)&&!f(E)}])},null,2))}}),[[`__scopeId`,`data-v-e5a7869b`]]);function T(n={}){let{target:r,onStdout:i,onDisconnect:a,onClearLog:o,onReconnected:c}=n,l=e(`/logs`),u=!1,d=t(!1);l.on(`connect`,()=>{d.value=!0,u&&c?.(),u=!0}),l.on(`disconnect`,()=>{d.value=!1,a?.()}),l.on(`stdout`,e=>i?.(e)),r&&l.on(`stdout/${r}`,e=>i?.(e)),l.on(`clear-log`,()=>o?.());function f(){}function p(){}function m(){l.emit(`get-all-logs`)}function h(e,t){l.emit(`get-camera-log`,e,t)}function g(e,t){l.emit(`get-plugin-log`,e,t)}return{isConnected:s(()=>d.value),connect:f,disconnect:p,requestAllLogs:m,requestCameraLog:h,requestPluginLog:g}}export{w as n,T as t};
|
package/dist/interface/assets/{useSharedComposables-riqEUgwX.js → useSharedComposables-BFG26laC.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Yt as e,Zn as t,or as n}from"./vendor-
|
|
1
|
+
import{Yt as e,Zn as t,or as n}from"./vendor-BNffsu2J.js";import{Bi as r,Ci as i,Hi as a,Oi as o,Pi as s,ki as c}from"./vendor-cameraui-DQWbrxPA.js";import{c as l,f as u}from"./vendor-core-BFQDzztK.js";import{n as d}from"./ui-BXkpPR2i.js";function f(){let{angle:t}=x(),n=S({listenOrientation:!0});return{xxsBreakpoint:e(()=>{let e=n.width.value;return t.value>0&&(e=screen.height>screen.width?screen.height:screen.width),e<=360}),xsBreakpoint:e(()=>{let e=n.width.value;return t.value>0&&(e=screen.height>screen.width?screen.height:screen.width),e<=450}),smBreakpoint:e(()=>{let e=n.width.value;return t.value>0&&(e=screen.height>screen.width?screen.height:screen.width),e<640}),mdBreakpoint:e(()=>{let e=n.width.value;return t.value>0&&(e=screen.height>screen.width?screen.height:screen.width),e<768}),xmdBreakpoint:e(()=>{let e=n.width.value;return t.value>0&&(e=screen.height>screen.width?screen.height:screen.width),e>=640&&e<1024}),lgBreakpoint:e(()=>{let e=n.width.value;return t.value>0&&(e=screen.height>screen.width?screen.height:screen.width),e>=1024}),xlBreakpoint:e(()=>{let e=n.width.value;return t.value>0&&(e=screen.height>screen.width?screen.height:screen.width),e>=1280}),xxlBreakpoint:e(()=>{let e=n.width.value;return t.value>0&&(e=screen.height>screen.width?screen.height:screen.width),e>=1536})}}function p(){let t=e(()=>typeof window>`u`?!1:[/Android/i,/webOS/i,/iPhone/i,/iPad/i,/iPod/i,/BlackBerry/i,/Windows Phone/i].some(e=>navigator.userAgent.match(e))),n=e(()=>typeof window>`u`?!1:[/Android/i].some(e=>navigator.userAgent.match(e))),r=e(()=>typeof window>`u`?!1:i.value||a.value),i=e(()=>typeof window>`u`?!1:[/iPhone/i].some(e=>navigator.userAgent.match(e))),a=e(()=>typeof window>`u`?!1:[/Macintosh/i].some(e=>navigator.userAgent.match(e)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>1)),o=e(()=>typeof window>`u`?[0,0]:i.value&&navigator.userAgent.match(/OS [\d_]+/i)?.[0].substr(3).split(`_`).map(e=>parseInt(e))||[0,0]),s=e(()=>typeof window>`u`?!1:[/Safari/i].some(e=>navigator.userAgent.match(e))),c=e(()=>typeof window>`u`?null:navigator.userAgent.match(/Version\/(\d+).+Safari/)),l=e(()=>typeof window>`u`?!1:[/Firefox/i].some(e=>navigator.userAgent.match(e))),u=e(()=>typeof window>`u`?!1:[/Chrome/i].some(e=>navigator.userAgent.match(e))),d=e(()=>{let e=!1;if(`maxTouchPoints`in navigator)e=navigator.maxTouchPoints>0;else if(`msMaxTouchPoints`in navigator)navigator!==null&&(e=navigator.msMaxTouchPoints>0);else{let t=matchMedia(`(pointer:coarse)`);if(t&&t.media===`(pointer:coarse)`)e=!!t.matches;else if(`orientation`in window)e=!0;else{let t=navigator.userAgent;e=/\b(BlackBerry|webOS|iPhone|IEMobile)\b/i.test(t)||/\b(Android|Windows Phone|iPad|iPod)\b/i.test(t)}}return e}),f=e(()=>D(`(display-mode: standalone)`).value||window.navigator.standalone||document.referrer.includes(`android-app://`)),p=e(()=>{let e=document.body.requestFullscreen!==void 0||document.body.mozRequestFullScreen!==void 0||document.body.webkitRequestFullscreen!==void 0||document.body.msRequestFullscreen!==void 0||document.exitFullscreen!==void 0||document.mozCancelFullScreen!==void 0||document.webkitExitFullscreen!==void 0,[t,n]=o.value,r=t&&t>=17&&n&&n>=2;return!!(e||!i.value||i.value&&r)});return{isPWA:f,isMobile:t,isAndroid:n,isIos:r,isIphone:i,isIpad:a,iosVersion:o,isSafari:s,safariVersion:c,isFirefox:l,isChrome:u,isTouch:d,isPipSupported:e(()=>{let e=`pictureInPictureEnabled`in document;return r.value&&f.value?!1:e}),isFsSupported:p}}var m={HEIGHT:70},h={HEIGHT:60};function g(){let t=l(),r=e(()=>t.meta.ui);return{ui:r,showNavbar:e(()=>!!n(r.value?.showNavbar)),showTopbar:e(()=>!!n(r.value?.showTopbar)),showBottombar:e(()=>!!n(r.value?.showBottombar)),showRouterLoading:e(()=>!!n(r.value?.showRouterLoading)),showRouterLoadingSub:e(()=>!!n(r.value?.showRouterLoadingSub)),minifiedTopbar:e(()=>!!n(r.value?.minifiedTopbar)),background:e(()=>n(r.value?.background)),padding:e(()=>!!n(r.value?.containerSettings?.padding)),paddingTop:e(()=>n(r.value?.containerSettings?.paddingTop)),paddingBottom:e(()=>n(r.value?.containerSettings?.paddingBottom)),paddingLeft:e(()=>n(r.value?.containerSettings?.paddingLeft)),paddingRight:e(()=>n(r.value?.containerSettings?.paddingRight)),showTitle:e(()=>!!n(r.value?.containerSettings?.showTitle)),fullwidth:e(()=>!!n(r.value?.containerSettings?.fullwidth)),disableScroll:e(()=>!!n(r.value?.containerSettings?.disableScroll)),ignoreSafeAreaBottom:e(()=>!!n(r.value?.containerSettings?.ignoreSafeAreaBottom)),noExtraPadding:e(()=>!!n(r.value?.containerSettings?.noExtraPadding)),allowOverflowX:e(()=>!!n(r.value?.containerSettings?.allowOverflowX))}}var _=Symbol(`cui-app-bus`),v=t({navbarState:void 0,subbarState:void 0});function y(){let e=i(_);return e.on(({subbarState:e,navbarState:t})=>{e&&e!==v.subbarState&&(v.subbarState=e),t&&t!==v.navbarState&&(v.navbarState=t)}),{state:v,bus:e}}function b(){let t=d(),n=l(),r=g(),{state:i}=y(),{mdBreakpoint:a,smBreakpoint:o,xlBreakpoint:s}=w(),{uiSettings:c}=u(t),f=e(()=>{if(_.value)return c.value.interface.navbarStayCollapsed&&i.navbarState!==`opened`?a.value?`closed`:`minified`:s.value||i.navbarState===`opened`?`opened`:a.value?`closed`:`minified`}),p=e(()=>n.path.includes(`/settings`)?s.value?`opened`:i.subbarState?i.subbarState:`closed`:void 0),_=e(()=>r.showNavbar.value),v=e(()=>r.showBottombar.value&&c.value.interface.showBottomBarOnMobile&&o.value),b=e(()=>r.showTopbar.value);return{navbarState:f,subbarState:p,showBottombar:v,showNavbar:_,showTopbar:b,topbarHeight:e(()=>b.value?r.minifiedTopbar.value?0:h.HEIGHT:0),bottombarHeight:e(()=>v.value?m.HEIGHT:0)}}var x=a(s),S=a(r),C=a(c),w=a(f),T=a(p),E=a(b),D=a(o);export{S as a,C as i,E as n,y as o,T as r,g as s,w as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as e}from"./api-
|
|
1
|
+
import{_ as e}from"./api-DB9zU0CO.js";import{Wn as t,Yt as n,Zn as r}from"./vendor-BNffsu2J.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 +1 @@
|
|
|
1
|
-
import{C as e,S as t,w as n}from"./vendor-zod-CmGeQCqy.js";import{I as r,L as i,R as a}from"./types-
|
|
1
|
+
import{C as e,S as t,w as n}from"./vendor-zod-CmGeQCqy.js";import{I as r,L as i,R as a}from"./types-9XtpMdk_.js";var o=e({username:n().trim().min(1,`Username is required`),password:n().trim().min(1,`Password is required`),rememberMe:t().optional()}).strict(),s=r,c=i,l=a;export{l as i,s as n,c as r,o as t};
|