@camera.ui/server 2.2.1 → 2.2.3
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-Ci4V-7l9.js → 404-D0S6IGok.js} +1 -1
- package/dist/interface/assets/{About-BSGYUvI7.js → About-DAw9u8ZY.js} +1 -1
- package/dist/interface/assets/Assistant-Gi6_YkEY.js +1 -0
- package/dist/interface/assets/Automation-6eFKPJPu.js +3 -0
- package/dist/interface/assets/AutomationImport-95PfbPvG.js +2 -0
- package/dist/interface/assets/AutomationStore-BHxzzx7a.js +2 -0
- package/dist/interface/assets/AutomationStoreDetail-DEVlRllt.js +2 -0
- package/dist/interface/assets/Automations-DEivoiS1.js +2 -0
- package/dist/interface/assets/Camera-B5l_gv7t.js +2 -0
- package/dist/interface/assets/{CameraConsole-DbmJ9PNU.js → CameraConsole-B8bBYQzk.js} +1 -1
- package/dist/interface/assets/Cameras-HblWPGCv.js +651 -0
- package/dist/interface/assets/Camview-DEKrbg5R.js +1 -0
- package/dist/interface/assets/{CertificateUpload-_VQx5fjA.js → CertificateUpload-CC6YtX7h.js} +1 -1
- package/dist/interface/assets/{Config-BuuQmMOC.js → Config-DQEaOnaN.js} +1 -1
- package/dist/interface/assets/{ConfigActionAssistant-DforDPLT.js → ConfigActionAssistant-C_XRnBzo.js} +1 -1
- package/dist/interface/assets/{ConfigActionCameraControl-LwL8BSZX.js → ConfigActionCameraControl-oRzM9rjX.js} +1 -1
- package/dist/interface/assets/{ConfigActionDelay-C6u-CHFE.js → ConfigActionDelay-Dc-NZS5L.js} +1 -1
- package/dist/interface/assets/{ConfigActionHttp-CxbJVkf2.js → ConfigActionHttp-Nw0wt-JZ.js} +1 -1
- package/dist/interface/assets/{ConfigActionImageInput-BpDXjbnf.js → ConfigActionImageInput-Do60Upqm.js} +1 -1
- package/dist/interface/assets/{ConfigActionMqtt-BkbAAepo.js → ConfigActionMqtt-BeQVgaGX.js} +1 -1
- package/dist/interface/assets/{ConfigActionNotification-B2Dtkf2b.js → ConfigActionNotification-BA0FjOWs.js} +1 -1
- package/dist/interface/assets/{ConfigActionNotificationControl-DMW2_Vez.js → ConfigActionNotificationControl-Ce3Kd_Xv.js} +1 -1
- package/dist/interface/assets/{ConfigActionOutput-WVe74xXz.js → ConfigActionOutput-ChiOMWDy.js} +1 -1
- package/dist/interface/assets/{ConfigActionPlugin-C3iZfPRv.js → ConfigActionPlugin-Cn3r0glk.js} +1 -1
- package/dist/interface/assets/{ConfigActionSensor-DSW92VVP.js → ConfigActionSensor-DkdBCu-6.js} +1 -1
- package/dist/interface/assets/{ConfigActionSnapshot-Cl3NLmyn.js → ConfigActionSnapshot-CLlaDFUV.js} +1 -1
- package/dist/interface/assets/{ConfigActionVariable-Due14Kwt.js → ConfigActionVariable-D4x3Luxl.js} +1 -1
- package/dist/interface/assets/{ConfigConditionIfElse-mIXw954j.js → ConfigConditionIfElse-BpL8KZ5X.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSensorState-C_FpJLnM.js → ConfigConditionSensorState-CSQexUF_.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSwitch-CYRUg-Uo.js → ConfigConditionSwitch-CB2J_5kr.js} +1 -1
- package/dist/interface/assets/{ConfigConditionTime-WkevpYaO.js → ConfigConditionTime-X9fsNsYu.js} +1 -1
- package/dist/interface/assets/{ConfigSensorValueInput-BDz5olLY.js → ConfigSensorValueInput-VPhPxrQl.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerDetection-Cb_BObEL.js → ConfigTriggerDetection-Dhzng4X5.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerGeofence-B7Iugx3i.js → ConfigTriggerGeofence-Cm0CLNf5.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerManual-D7w6C58j.js → ConfigTriggerManual-CRi3rsgG.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerMqtt-D_ozlopI.js → ConfigTriggerMqtt-Ck__CWck.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSchedule-1UcaRD5S.js → ConfigTriggerSchedule-C1PZrHEu.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSensor-D9_lg6yH.js → ConfigTriggerSensor-9xVgCtkn.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSystem-COPR6t7r.js → ConfigTriggerSystem-Denf1gkO.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerWebhook-C0v6uR67.js → ConfigTriggerWebhook-im24LkCn.js} +1 -1
- package/dist/interface/assets/Console-Q1HpmyO_.js +1 -0
- package/dist/interface/assets/CuiAssistantConversation-BxJf9sdu.js +5 -0
- package/dist/interface/assets/{CuiAssistantConversation-BkWDr6uX.css → CuiAssistantConversation-DmSdiv1b.css} +1 -1
- package/dist/interface/assets/{CuiAutomationRunsDialog-CGBqZXR4.js → CuiAutomationRunsDialog-B3tJ-Cma.js} +1 -1
- package/dist/interface/assets/CuiBottomSheet-C37blNu-.js +1 -0
- package/dist/interface/assets/{CuiBottomSheet-DomRjKV8.js → CuiBottomSheet-kvvLw1MQ.js} +1 -1
- package/dist/interface/assets/CuiCameraPipCard-TVAf5ZYQ.js +1 -0
- package/dist/interface/assets/CuiCameraRecordings-C26rX8dh.css +1 -0
- package/dist/interface/assets/CuiCameraRecordings-IHg1dNf4.js +1 -0
- package/dist/interface/assets/{CuiCameraShares-CVbWZZ_i.js → CuiCameraShares-B5ghuJS-.js} +1 -1
- package/dist/interface/assets/{CuiCameraTable-B1F2UjZk.js → CuiCameraTable-Y5XUkU7w.js} +1 -1
- package/dist/interface/assets/CuiCameraTable-xDZz7Wpe.js +1 -0
- package/dist/interface/assets/{CuiChartTable-CcovDii1.js → CuiChartTable-CXdupaj5.js} +1 -1
- package/dist/interface/assets/CuiChartTable-DXY7rY3O.css +1 -0
- package/dist/interface/assets/{CuiConsole-BzJJnQTd.js → CuiConsole-5KgXSOS5.js} +2 -2
- package/dist/interface/assets/CuiDataTable-DPIbKnvU.css +1 -0
- package/dist/interface/assets/CuiDataTable-hArZWV9B.js +1 -0
- package/dist/interface/assets/CuiLightControl-MRpR0XIZ.js +1 -0
- package/dist/interface/assets/{CuiList-Dfklll0h.js → CuiList-D-l4HrBP.js} +1 -1
- package/dist/interface/assets/CuiPluginCard-whoQ5YHn.js +2 -0
- package/dist/interface/assets/CuiPluginCategoryChip-CH53zk2o.js +1 -0
- package/dist/interface/assets/CuiPluginOAuthButton-BBA0AzVO.js +2 -0
- package/dist/interface/assets/{CuiPluginTrustBadge-CILKiExH.js → CuiPluginTrustBadge-C0EX5aCI.js} +1 -1
- package/dist/interface/assets/{CuiQRCode-DHUwFLQz.js → CuiQRCode-BRT0NO5c.js} +1 -1
- package/dist/interface/assets/CuiSchema-DBY1x1BT.js +1 -0
- package/dist/interface/assets/{CuiTopNavbarItem-DBsbHvkJ.js → CuiTopNavbarItem-CpMT8_0r.js} +1 -1
- package/dist/interface/assets/Faces-Dqi30qs9.js +1 -0
- package/dist/interface/assets/FirstSteps-B8n4fGK3.js +1 -0
- package/dist/interface/assets/Floorplan-ZHXNaZA8.js +1 -0
- package/dist/interface/assets/{Instances-cgw_Xzu0.js → Instances-DEj3gs6H.js} +1 -1
- package/dist/interface/assets/{Logs-BrTGt33Q.js → Logs-CwHvSKd6.js} +2 -2
- package/dist/interface/assets/Menu-C4BxUV0P.js +1 -0
- package/dist/interface/assets/Metrics-BCOE-rcw.js +9 -0
- package/dist/interface/assets/{OAuthDeviceFlow-Bx6YBLUX.js → OAuthDeviceFlow-D6bjZOYS.js} +1 -1
- package/dist/interface/assets/Plugin-ppCvxkl4.js +1 -0
- package/dist/interface/assets/{PluginConsole-C6xky2l3.js → PluginConsole-BP42Qpee.js} +1 -1
- package/dist/interface/assets/PluginDetail-BnX5lZGz.js +2 -0
- package/dist/interface/assets/{PluginSchema-D5dmitq0.js → PluginSchema-uVKXzfo6.js} +1 -1
- package/dist/interface/assets/PluginSearch-C4MvWyLb.js +1 -0
- package/dist/interface/assets/PluginSearch-no79fTuf.js +2 -0
- package/dist/interface/assets/{PluginUpdateProgress-Cj4Ilm8M.js → PluginUpdateProgress-73jprYHA.js} +1 -1
- package/dist/interface/assets/Plugins-DtEqS6_j.js +1 -0
- package/dist/interface/assets/RecentEventsFilter-CtyCbt6Z.js +1 -0
- package/dist/interface/assets/Recordings-DrcOsRLn.js +1 -0
- package/dist/interface/assets/{SensorEdit-BBTdSbok.js → SensorEdit-D4-mMg8S.js} +1 -1
- package/dist/interface/assets/{SensorHistory-BmGYTFWx.js → SensorHistory-C-X7VI-f.js} +1 -1
- package/dist/interface/assets/Sensors-BJh8BkCR.js +2 -0
- package/dist/interface/assets/{Settings-B-lq2Bls.js → Settings-B9CZvA-d.js} +1 -1
- package/dist/interface/assets/SettingsAccount-CkvScQmF.js +1 -0
- package/dist/interface/assets/SettingsAccount-D3zF2kLc.js +1 -0
- package/dist/interface/assets/{SettingsAppearance-DMhqHxXU.js → SettingsAppearance-CbG8M38w.js} +1 -1
- package/dist/interface/assets/SettingsAppearance-ZHqNXXIL.js +1 -0
- package/dist/interface/assets/SettingsAssistant-BESab92C.css +1 -0
- package/dist/interface/assets/SettingsAssistant-DxYPnbms.js +1 -0
- package/dist/interface/assets/{SettingsBackup-C9clJ_2F.js → SettingsBackup-DZBzUyQm.js} +1 -1
- package/dist/interface/assets/{SettingsList-Ba5TjVzD.js → SettingsList-DFg8g7IM.js} +1 -1
- package/dist/interface/assets/{SettingsMqtt-4tFIdfzL.js → SettingsMqtt-BeujOZkh.js} +1 -1
- package/dist/interface/assets/SettingsNotifications-DtSTE76r.js +1 -0
- package/dist/interface/assets/{SettingsPermissions-B6vNyFvJ.js → SettingsPermissions-CPOAefv0.js} +1 -1
- package/dist/interface/assets/SettingsRecordings-ClAtT4Bh.js +1 -0
- package/dist/interface/assets/SettingsRemote-58S4Thfp.js +2 -0
- package/dist/interface/assets/SettingsSystem-tTGpuiRW.js +2 -0
- package/dist/interface/assets/{SettingsUsers-DOUvMVjf.js → SettingsUsers-D8b7I5c2.js} +1 -1
- package/dist/interface/assets/{Terminal-BoMq8civ.js → Terminal-1_Fi0VW-.js} +2 -2
- package/dist/interface/assets/Training-CQHfQjUP.css +1 -0
- package/dist/interface/assets/Training-DfOqDTHJ.js +1 -0
- package/dist/interface/assets/{Updates-Cceza_vs.js → Updates-BW0p7Wc5.js} +1 -1
- package/dist/interface/assets/{VariableInput-Ds5NaShw.js → VariableInput-sqnLuk6S.js} +1 -1
- package/dist/interface/assets/{VariableSuggestions-B0Y5QsCw.js → VariableSuggestions-3pbnxhyT.js} +1 -1
- package/dist/interface/assets/{VersionsHandler-D3ugTFh9.js → VersionsHandler-CWmjDygB.js} +1 -1
- package/dist/interface/assets/VirtualSensorCreate-BzmFlvYD.js +1 -0
- package/dist/interface/assets/Workers-Dm9o2wMo.js +2 -0
- package/dist/interface/assets/api-B6TtU9Ew.css +2 -0
- package/dist/interface/assets/{api-C4b9FQa5.js → api-CQ-3I3-i.js} +1 -1
- package/dist/interface/assets/api-DPgKdIQZ.js +4 -0
- package/dist/interface/assets/{assistant-DfBoMwZZ.js → assistant-0UymvpMy.js} +1 -1
- package/dist/interface/assets/{auth-jXwc9evv.js → auth-C0jhqNaz.js} +1 -1
- package/dist/interface/assets/{automations-Bx7_-5ll.js → automations-Bj30nb8s.js} +1 -1
- package/dist/interface/assets/cameraSources-CiMjIjsh.js +1 -0
- package/dist/interface/assets/cloudHandoff-Cxljjl7N.js +1 -0
- package/dist/interface/assets/{config-4L2n-1_z.js → config-D-uVfwYp.js} +1 -1
- package/dist/interface/assets/dots-vertical-C4DlXZyp.js +1 -0
- package/dist/interface/assets/eventIcons-BPQ-zSnz.js +1 -0
- package/dist/interface/assets/{flowSchema-ZMBzlKJI.js → flowSchema-D3nNJVLL.js} +1 -1
- package/dist/interface/assets/{intercomService-DQ4LZJfW.js → intercomService-BeoNs-09.js} +1 -1
- package/dist/interface/assets/main-BrNGfemk.js +3 -0
- package/dist/interface/assets/{mqtt-DEt78fr7.js → mqtt-D7jRwifB.js} +1 -1
- package/dist/interface/assets/{notifications-mJrKtTFp.js → notifications-BpRVoerg.js} +1 -1
- package/dist/interface/assets/pause-B7ud2O8d.js +1 -0
- package/dist/interface/assets/{plugins-IMJg5aI8.js → plugins-wZ4RDxCb.js} +1 -1
- package/dist/interface/assets/{rooms-Dt3X1UEj.js → rooms-CFcu2dU1.js} +1 -1
- package/dist/interface/assets/sensorIcons-B117n8l2.js +1 -0
- package/dist/interface/assets/{sensorSlots-CUWphRrL.js → sensorSlots-CAr3prFc.js} +1 -1
- package/dist/interface/assets/{sensors-DG-GPuvr.js → sensors-oriEG3KR.js} +1 -1
- package/dist/interface/assets/{server-CFtdMCM4.js → server-Ce6ou2NV.js} +1 -1
- package/dist/interface/assets/{theme-C8wlVvxI.js → theme-CBTC6-Lp.js} +1 -1
- package/dist/interface/assets/{types-BxQYBZ2c.js → types-C-amdBz6.js} +1 -1
- package/dist/interface/assets/types-CjU6-JvD.js +1 -0
- package/dist/interface/assets/types-CzjppLwt.js +1 -0
- package/dist/interface/assets/{ungrouped-Dbr16vFt.css → ungrouped-AYNBKz52.css} +1 -1
- package/dist/interface/assets/ungrouped-BQzKp2PT.js +1 -0
- package/dist/interface/assets/{updates-DqHYjhVs.js → updates-Cohtc6vb.js} +1 -1
- package/dist/interface/assets/{useAppVersion-iJHv6EYQ.js → useAppVersion-xxi6fR7J.js} +1 -1
- package/dist/interface/assets/{useAssistantActions-BeXqj2-6.js → useAssistantActions-BkRK1FBg.js} +1 -1
- package/dist/interface/assets/useBackupRestore-BGvhSqJB.js +1 -0
- package/dist/interface/assets/{useCameraOptions-DVcUIXzh.js → useCameraOptions-ophs2V4p.js} +1 -1
- package/dist/interface/assets/{useKeyboardInset-DpxykA20.js → useKeyboardInset-Cpz6Hs5c.js} +1 -1
- package/dist/interface/assets/{useLogsSocket-D2gJ0e00.js → useLogsSocket-CB07yhv4.js} +1 -1
- package/dist/interface/assets/{useNavLayout-D-KmCM3U.js → useNavLayout-BYEejBpb.js} +1 -1
- package/dist/interface/assets/{usePermissions-CsWQ7pWp.js → usePermissions-yWhjYMcr.js} +1 -1
- package/dist/interface/assets/{usePluginUpdates-D0bz8TeJ.js → usePluginUpdates-9rvsWfdJ.js} +1 -1
- package/dist/interface/assets/{usePushRegistration-B9vouC4k.js → usePushRegistration-b5owOzjH.js} +1 -1
- package/dist/interface/assets/{useServerRestart-CaYRL38s.js → useServerRestart-yRXDWnH_.js} +1 -1
- package/dist/interface/assets/{useStreamStatus-BSl9TJlX.js → useStreamStatus-BHyWrAHu.js} +1 -1
- package/dist/interface/assets/{useTabSwipe-B6GIPOrZ.js → useTabSwipe-Dr9HYP1J.js} +1 -1
- package/dist/interface/assets/{useUpdateChannel-BuIKUKQ9.js → useUpdateChannel-IVj0XKlN.js} +1 -1
- package/dist/interface/assets/{useUpdatesSocket-B8F-9tUI.js → useUpdatesSocket-CuPHbSF7.js} +1 -1
- package/dist/interface/assets/{useUserOptions-9Lcq7htw.js → useUserOptions-zIfrMDiG.js} +1 -1
- package/dist/interface/assets/{vendor-cameraui-zaB6gIk1.js → vendor-cameraui-Dhg7MEnt.js} +2 -2
- package/dist/interface/assets/{vendor-core-CfoDuMvj.js → vendor-core-CQ2HVu0L.js} +1 -1
- package/dist/interface/assets/{vendor-primevue-5HrOunkM.js → vendor-primevue-CeWNZxSE.js} +1 -1
- package/dist/interface/assets/vendor-zod-CBbC1rE7.js +109 -0
- package/dist/interface/ha/{404-BA6DAi0I.js → 404-B70KNhsW.js} +1 -1
- package/dist/interface/ha/{About-D3tEPbYC.js → About-DLNqqctZ.js} +3 -3
- package/dist/interface/ha/{Assistant-BSlIm7T1.js → Assistant-Duvvoz2B.js} +1004 -988
- package/dist/interface/ha/{Automation-B7ZCtbpe.js → Automation-DZ8zvsvo.js} +199 -199
- package/dist/interface/ha/{AutomationImport-CVEGBlET.js → AutomationImport-DOCdim5O.js} +7 -7
- package/dist/interface/ha/{AutomationStore-hW-ReFbV.js → AutomationStore-Bjoubp-m.js} +52 -51
- package/dist/interface/ha/{AutomationStoreDetail-R-1XPudW.js → AutomationStoreDetail-H-RWNpwm.js} +20 -20
- package/dist/interface/ha/{Automations-9CLEXB1U.js → Automations-GyofQfo7.js} +87 -100
- package/dist/interface/ha/{Camera-CQK1LgJe.js → Camera-Bo5nMQaU.js} +30 -30
- package/dist/interface/ha/{CameraConsole-C6CZ3tzc.js → CameraConsole-BmDQ3rcS.js} +5 -5
- package/dist/interface/ha/{Cameras-Bw_Co8e9.js → Cameras-BfHoFjpC.js} +224 -224
- package/dist/interface/ha/{Camview-fb7D6KvD.js → Camview-DVoIdM3o.js} +332 -331
- package/dist/interface/ha/{Config-Cf0XlhJ-.js → Config-CC8tQiOy.js} +110 -110
- package/dist/interface/ha/{ConfigActionAssistant-BtnJwaka.js → ConfigActionAssistant-hfsz38an.js} +4 -4
- package/dist/interface/ha/{ConfigActionCameraControl-B1NtlCI4.js → ConfigActionCameraControl-C0-wxlAS.js} +5 -5
- package/dist/interface/ha/{ConfigActionHttp-BpI7XQC3.js → ConfigActionHttp-CM_3bIUq.js} +2 -2
- package/dist/interface/ha/{ConfigActionImageInput-tLzrOm0l.js → ConfigActionImageInput-B5306Z_7.js} +1 -1
- package/dist/interface/ha/{ConfigActionMqtt-DIuCKfQL.js → ConfigActionMqtt-DLiM83Kz.js} +4 -4
- package/dist/interface/ha/{ConfigActionNotification-CotMZbgF.js → ConfigActionNotification-36VBlfim.js} +4 -4
- package/dist/interface/ha/{ConfigActionNotificationControl-ClnOPBa2.js → ConfigActionNotificationControl-DRjDvA1H.js} +2 -2
- package/dist/interface/ha/{ConfigActionOutput-DFRh3xK2.js → ConfigActionOutput-BkGHERoJ.js} +1 -1
- package/dist/interface/ha/{ConfigActionPlugin-BSUdCGwz.js → ConfigActionPlugin-Ds1_Pow7.js} +5 -5
- package/dist/interface/ha/{ConfigActionSensor-B-PHlt11.js → ConfigActionSensor-22uKE0d0.js} +6 -6
- package/dist/interface/ha/{ConfigActionSnapshot-DomyiKiQ.js → ConfigActionSnapshot-uTTsTfo2.js} +2 -2
- package/dist/interface/ha/{ConfigActionVariable-D4QZ0GSg.js → ConfigActionVariable-DNMJBiQV.js} +1 -1
- package/dist/interface/ha/{ConfigConditionIfElse-Din_LVbb.js → ConfigConditionIfElse-BVzmIDKK.js} +3 -3
- package/dist/interface/ha/{ConfigConditionSensorState-cnMbVYSj.js → ConfigConditionSensorState-Di7Ic1xI.js} +4 -4
- package/dist/interface/ha/{ConfigConditionSwitch-nLCPZ02V.js → ConfigConditionSwitch-D8CcTHJ1.js} +10 -10
- package/dist/interface/ha/{ConfigConditionTime-CcZFjBil.js → ConfigConditionTime-CRn4k6uE.js} +2 -2
- package/dist/interface/ha/{ConfigSensorValueInput-CrZoNX72.js → ConfigSensorValueInput-DthsOthT.js} +5 -4
- package/dist/interface/ha/{ConfigTriggerDetection-MsrbiErr.js → ConfigTriggerDetection-BDYanDEV.js} +4 -4
- package/dist/interface/ha/{ConfigTriggerGeofence-BxQ0n4-f.js → ConfigTriggerGeofence-Binp0lYx.js} +7 -7
- package/dist/interface/ha/{ConfigTriggerMqtt-ti8xd7vF.js → ConfigTriggerMqtt-BaPzSHbK.js} +1 -1
- package/dist/interface/ha/{ConfigTriggerSensor-CNlsV9yo.js → ConfigTriggerSensor-DiTaTZXm.js} +2 -2
- package/dist/interface/ha/{ConfigTriggerSystem-CsULDPX-.js → ConfigTriggerSystem-CsdWiz-S.js} +2 -2
- package/dist/interface/ha/{ConfigTriggerWebhook-BnUer9x_.js → ConfigTriggerWebhook-Ca0PsUmU.js} +2 -2
- package/dist/interface/ha/{Console-B1Y6mBPP.js → Console-0amlIoZR.js} +100 -100
- package/dist/interface/ha/{CuiAutomationRunsDialog-BHJIQ0Tj.js → CuiAutomationRunsDialog-DNBuwkgL.js} +2 -2
- package/dist/interface/ha/{CuiBottomSheet-DyCegs0G.js → CuiBottomSheet-CdXBYz4P.js} +1 -1
- package/dist/interface/ha/{CuiCameraRecordings-Cfzu3-OA.js → CuiCameraRecordings-D4ZB56nd.js} +21 -21
- package/dist/interface/ha/{CuiCameraShares-CE2Z9Osp.js → CuiCameraShares-YmzZusZR.js} +5 -5
- package/dist/interface/ha/{CuiCameraTable-DCm-DNjq.js → CuiCameraTable-DFzhCO3J.js} +8 -8
- package/dist/interface/ha/{CuiChartTable-BYkhLvXA.js → CuiChartTable-BvfJbFNS.js} +20 -18
- package/dist/interface/ha/{CuiConsole-DTDUpQ_E.js → CuiConsole-DtxyD6Sd.js} +5 -5
- package/dist/interface/ha/{CuiDataTable-Cxk-gD0O.js → CuiDataTable-CHvx6ALQ.js} +19 -12
- package/dist/interface/ha/{CuiPluginCard-CaJWPBXm.js → CuiPluginCard-B3vU57eD.js} +50 -50
- package/dist/interface/ha/{CuiPluginOAuthButton--RbsaIiq.js → CuiPluginOAuthButton-DgOFfP5e.js} +8 -8
- package/dist/interface/ha/{CuiPluginTrustBadge-G79t87hq.js → CuiPluginTrustBadge-udmtgGHt.js} +3 -3
- package/dist/interface/ha/{CuiQRCode-C0o0cS3C.js → CuiQRCode-8yDZMC3o.js} +7 -7
- package/dist/interface/ha/{CuiSchema-BmfjaboJ.js → CuiSchema-0Hikg2mm.js} +125 -125
- package/dist/interface/ha/{CuiTopNavbarItem-KlOpTPMA.js → CuiTopNavbarItem-B139fVxP.js} +1 -1
- package/dist/interface/ha/{Faces-CG1S8jsV.js → Faces-YdAf9USr.js} +45 -44
- package/dist/interface/ha/{FirstSteps-B4cODn_E.js → FirstSteps-Dts6TJ6O.js} +64 -64
- package/dist/interface/ha/{Floorplan-CM5cL4_h.js → Floorplan-D6XXe8ni.js} +428 -427
- package/dist/interface/ha/{Instances-B1KAGADd.js → Instances-DsIsonqp.js} +71 -71
- package/dist/interface/ha/{Logs-CNVJvujx.js → Logs-Cyo3LC94.js} +11 -11
- package/dist/interface/ha/{Menu-hlaVYE5G.js → Menu-yh_sI9d9.js} +20 -25
- package/dist/interface/ha/{Metrics-CUllrnJc.js → Metrics-VehQmsmN.js} +91 -90
- package/dist/interface/ha/{OAuthDeviceFlow-kYPoT4p2.js → OAuthDeviceFlow-CXp9NvbY.js} +9 -9
- package/dist/interface/ha/{Plugin-QvBE-VHD.js → Plugin-BqvlXx43.js} +127 -126
- package/dist/interface/ha/{PluginConsole-Cpd8sx5a.js → PluginConsole-Dx84BNoO.js} +6 -6
- package/dist/interface/ha/{PluginDetail-CqSaIeH-.js → PluginDetail-DUpDS2nD.js} +10 -10
- package/dist/interface/ha/{PluginSearch-C-3nAbyu.js → PluginSearch-Cvh0P9VB.js} +127 -126
- package/dist/interface/ha/{PluginUpdateProgress-Izcgxa6-.js → PluginUpdateProgress-CfyI2Qdp.js} +3 -3
- package/dist/interface/ha/Plugins-DXreIUwr.js +692 -0
- package/dist/interface/ha/RecentEventsFilter-C1deXNIS.js +79 -0
- package/dist/interface/ha/{Recordings-BSR6AGq2.js → Recordings-Cb8ifRcB.js} +352 -383
- package/dist/interface/ha/{SensorEdit-KLS5N1YP.js → SensorEdit-CsNXxcdj.js} +353 -351
- package/dist/interface/ha/{SensorHistory-nHGwqzDW.js → SensorHistory-DToDalOm.js} +2 -2
- package/dist/interface/ha/{Sensors-VAy09hDh.js → Sensors-B6giaowJ.js} +191 -189
- package/dist/interface/ha/{Settings-DINmP-PB.js → Settings-CVed7MM_.js} +22 -22
- package/dist/interface/ha/{SettingsAccount-B-3XO53P.js → SettingsAccount-CvvsLPoT.js} +263 -262
- package/dist/interface/ha/{SettingsAppearance-B7ONsdV3.js → SettingsAppearance-BDJeNGTd.js} +19 -19
- package/dist/interface/ha/SettingsAssistant-B168p5HB.js +1857 -0
- package/dist/interface/ha/{SettingsBackup-CRzyW7Ce.js → SettingsBackup-Bz_9xJ61.js} +42 -42
- package/dist/interface/ha/{SettingsList-GWb7HKeq.js → SettingsList-B42rajJc.js} +2 -2
- package/dist/interface/ha/{SettingsMqtt-Db8CUtzi.js → SettingsMqtt-B5Qy6bxD.js} +23 -23
- package/dist/interface/ha/SettingsNotifications-C59UxYic.js +529 -0
- package/dist/interface/ha/{SettingsRecordings-s52rT7TX.js → SettingsRecordings-CkJGOiyQ.js} +11 -10
- package/dist/interface/ha/{SettingsRemote-DYUJdmKW.js → SettingsRemote-Cc-qt3si.js} +340 -340
- package/dist/interface/ha/{SettingsSystem-Bkfc5Tky.js → SettingsSystem-Cco2XXsS.js} +9 -9
- package/dist/interface/ha/{SettingsUsers-BHLsFMG9.js → SettingsUsers-BDh-3saR.js} +36 -36
- package/dist/interface/ha/{Terminal-CDZjjg7e.js → Terminal-D2U-kFPW.js} +41 -41
- package/dist/interface/ha/Training-DWcaCI-3.js +1499 -0
- package/dist/interface/ha/{Updates-DM5YITjv.js → Updates-DGHNcvO9.js} +13 -13
- package/dist/interface/ha/{VariableInput-DOiVQbEb.js → VariableInput-Bujz1T1I.js} +1 -1
- package/dist/interface/ha/{VersionsHandler-CjzF5jII.js → VersionsHandler-CXvbeKbl.js} +10 -10
- package/dist/interface/ha/{VirtualSensorCreate-q7b13gfi.js → VirtualSensorCreate-DOYONbgu.js} +3 -3
- package/dist/interface/ha/{Workers-Vf16lK9P.js → Workers-tQbC3WS6.js} +28 -28
- package/dist/interface/ha/{accordion-DdpJ2jcK.js → accordion-X9Wa7KVq.js} +1 -1
- package/dist/interface/ha/{api-C0pVlzsW.js → api-BI6_Fcag.js} +9483 -9888
- package/dist/interface/ha/{api-Bnk0paIs.js → api-DfJZj7ht.js} +3 -3
- package/dist/interface/ha/{assistant-DJPdidEd.js → assistant-BqSg4N8v.js} +55 -55
- package/dist/interface/ha/{auth-CmCJIpis.js → auth-BFoSqfzS.js} +39 -39
- package/dist/interface/ha/{automationBlueprint-CtX7AOzy.js → automationBlueprint-Q0yt2MdH.js} +4 -3
- package/dist/interface/ha/cameraui-cards.js +1 -1
- package/dist/interface/ha/{cards-Cn0baEOx.js → cards-BW9I5B5Z.js} +561 -560
- package/dist/interface/ha/checkbox-D012nd17.js +279 -0
- package/dist/interface/ha/{config-DxaLI3Wy.js → config-CeNHEP9A.js} +16 -16
- package/dist/interface/ha/{datepicker-DpDmhDeD.js → datepicker-44Ub2Hx0.js} +329 -604
- package/dist/interface/ha/dist-BTp4AyuI.js +287 -0
- package/dist/interface/ha/{dist-aGnBxAoZ.js → dist-BV3OfApt.js} +763 -1048
- package/dist/interface/ha/dots-vertical-BEPlUtxU.js +19 -0
- package/dist/interface/ha/eventIcons-DrjNuTS2.js +676 -0
- package/dist/interface/ha/{mqtt-BSUalkMz.js → mqtt-BkYa2CXH.js} +12 -12
- package/dist/interface/ha/{multiselect-Cedfen4P.js → multiselect-B0fAnW75.js} +1 -1
- package/dist/interface/ha/{notifications-DuVSTES6.js → notifications-E3WSCGpc.js} +22 -22
- package/dist/interface/ha/pause-Ch6v65wA.js +19 -0
- package/dist/interface/ha/{pinia-Dk3LfWcE.js → pinia-DoDLbPZ3.js} +2293 -2274
- package/dist/interface/ha/{plugins-XTsvVLj3.js → plugins-2jjU7TfW.js} +68 -68
- package/dist/interface/ha/pwa/favicon-16.ico +0 -0
- package/dist/interface/ha/pwa/favicon-32.ico +0 -0
- package/dist/interface/ha/pwa/favicon-48.ico +0 -0
- package/dist/interface/ha/pwa/pwa-120x120.png +0 -0
- package/dist/interface/ha/pwa/pwa-24x24.png +0 -0
- package/dist/interface/ha/pwa/pwa-36x36.png +0 -0
- package/dist/interface/ha/pwa/pwa-48x48.png +0 -0
- package/dist/interface/ha/pwa/pwa-50x50.png +0 -0
- package/dist/interface/ha/pwa/pwa-64x64.png +0 -0
- package/dist/interface/ha/pwa/pwa-72x72.png +0 -0
- package/dist/interface/ha/pwa/pwa-88x88.png +0 -0
- package/dist/interface/ha/pwa/pwa-96x96.png +0 -0
- package/dist/interface/ha/{rooms-Ch5UrfPN.js → rooms-BkEw1ev-.js} +8 -8
- package/dist/interface/ha/{server-h-kQ6sSS.js → server-CuK4o2fS.js} +31 -31
- package/dist/interface/ha/{types-DjunpV_X.js → types-BRHWeX0a.js} +48 -34
- package/dist/interface/ha/{ungrouped-DkDSBlpG.js → ungrouped-BDwep3kg.js} +189 -206
- package/dist/interface/ha/{updates-D0cNiMIr.js → updates-R4xTxour.js} +42 -42
- package/dist/interface/ha/{useAppVersion-Cpv2npEz.js → useAppVersion-uaFjqUpx.js} +1 -1
- package/dist/interface/ha/{useLogsSocket-Du83S3Wz.js → useLogsSocket-BZq9GXfy.js} +1 -1
- package/dist/interface/ha/{useNavLayout-XBJRTK3F.js → useNavLayout-BJdDE__R.js} +11 -11
- package/dist/interface/ha/{useServerRestart-CWhJrEyy.js → useServerRestart-DDCKnE6c.js} +1 -1
- package/dist/interface/ha/{useTabSwipe-BSlykGzV.js → useTabSwipe-CEH6ltIZ.js} +1 -1
- package/dist/interface/ha/{useUpdateChannel-DZttbpyK.js → useUpdateChannel-CHt1il2V.js} +2 -2
- package/dist/interface/ha/{useUpdatesSocket-DI15Udke.js → useUpdatesSocket-BnVaNioY.js} +1 -1
- package/dist/interface/ha/{useUserOptions-CQL8tMr4.js → useUserOptions-C7cQ1P3Q.js} +1 -1
- package/dist/interface/index.html +35 -34
- package/dist/interface/pwa/favicon-16.ico +0 -0
- package/dist/interface/pwa/favicon-32.ico +0 -0
- package/dist/interface/pwa/favicon-48.ico +0 -0
- package/dist/interface/pwa/pwa-120x120.png +0 -0
- package/dist/interface/pwa/pwa-24x24.png +0 -0
- package/dist/interface/pwa/pwa-36x36.png +0 -0
- package/dist/interface/pwa/pwa-48x48.png +0 -0
- package/dist/interface/pwa/pwa-50x50.png +0 -0
- package/dist/interface/pwa/pwa-64x64.png +0 -0
- package/dist/interface/pwa/pwa-72x72.png +0 -0
- package/dist/interface/pwa/pwa-88x88.png +0 -0
- package/dist/interface/pwa/pwa-96x96.png +0 -0
- package/dist/interface/sw.js +1 -1
- package/dist/server/package.json +7 -8
- package/dist/server/requirements.txt +1 -1
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/__init__.py +2 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/__init__.py +2 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/frames.py +9 -5
- package/dist/server/src/api/controllers/assistant.controller.js +2 -1
- package/dist/server/src/api/controllers/assistant.controller.js.map +1 -1
- package/dist/server/src/api/controllers/plugins.controller.js +3 -3
- package/dist/server/src/api/controllers/plugins.controller.js.map +1 -1
- package/dist/server/src/api/controllers/users.controller.d.ts +3 -1
- package/dist/server/src/api/controllers/users.controller.js +38 -0
- package/dist/server/src/api/controllers/users.controller.js.map +1 -1
- package/dist/server/src/api/database/index.d.ts +1 -1
- package/dist/server/src/api/database/index.js +1 -1
- package/dist/server/src/api/database/index.js.map +1 -1
- package/dist/server/src/api/database/migrations/v2-2-3.d.ts +3 -0
- package/dist/server/src/api/database/migrations/v2-2-3.js +22 -0
- package/dist/server/src/api/database/migrations/v2-2-3.js.map +1 -0
- package/dist/server/src/api/database/record-schemas.d.ts +44 -1
- package/dist/server/src/api/database/record-schemas.js +3 -3
- package/dist/server/src/api/database/record-schemas.js.map +1 -1
- package/dist/server/src/api/database/types.d.ts +4 -2
- package/dist/server/src/api/routes/users.routes.js +24 -1
- package/dist/server/src/api/routes/users.routes.js.map +1 -1
- package/dist/server/src/api/schemas/assistant.schema.d.ts +43 -1
- package/dist/server/src/api/schemas/assistant.schema.js +2 -1
- package/dist/server/src/api/schemas/assistant.schema.js.map +1 -1
- package/dist/server/src/api/schemas/cameras.schema.d.ts +32 -16
- package/dist/server/src/api/schemas/cameras.schema.js +5 -5
- package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
- package/dist/server/src/api/schemas/users.schema.d.ts +8 -0
- package/dist/server/src/api/schemas/users.schema.js +45 -0
- package/dist/server/src/api/schemas/users.schema.js.map +1 -1
- package/dist/server/src/api/services/users.service.d.ts +3 -1
- package/dist/server/src/api/services/users.service.js +33 -0
- package/dist/server/src/api/services/users.service.js.map +1 -1
- package/dist/server/src/api/types/index.d.ts +4 -1
- package/dist/server/src/api/types/index.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/logs.d.ts +5 -2
- package/dist/server/src/api/websocket/nsp/logs.js +20 -5
- package/dist/server/src/api/websocket/nsp/logs.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/training.d.ts +1 -1
- package/dist/server/src/api/websocket/nsp/training.js +3 -2
- package/dist/server/src/api/websocket/nsp/training.js.map +1 -1
- package/dist/server/src/assistant/manager.d.ts +1 -0
- package/dist/server/src/assistant/manager.js +24 -2
- package/dist/server/src/assistant/manager.js.map +1 -1
- package/dist/server/src/assistant/prompt.d.ts +1 -0
- package/dist/server/src/assistant/prompt.js +10 -1
- package/dist/server/src/assistant/prompt.js.map +1 -1
- package/dist/server/src/assistant/reasoning.d.ts +1 -1
- package/dist/server/src/assistant/reasoning.js +6 -3
- package/dist/server/src/assistant/reasoning.js.map +1 -1
- package/dist/server/src/assistant/retry.d.ts +4 -0
- package/dist/server/src/assistant/retry.js +3 -0
- package/dist/server/src/assistant/retry.js.map +1 -1
- package/dist/server/src/assistant/search.js +4 -2
- package/dist/server/src/assistant/search.js.map +1 -1
- package/dist/server/src/assistant/skills.js +3 -2
- package/dist/server/src/assistant/skills.js.map +1 -1
- package/dist/server/src/assistant/tool-names.d.ts +2 -0
- package/dist/server/src/assistant/tool-names.js +23 -0
- package/dist/server/src/assistant/tool-names.js.map +1 -0
- package/dist/server/src/assistant/tools/api.js +2 -0
- package/dist/server/src/assistant/tools/api.js.map +1 -1
- package/dist/server/src/assistant/tools/docs.js +1 -0
- package/dist/server/src/assistant/tools/docs.js.map +1 -1
- package/dist/server/src/assistant/tools/index.js +2 -2
- package/dist/server/src/assistant/tools/index.js.map +1 -1
- package/dist/server/src/assistant/tools/memory.js +1 -0
- package/dist/server/src/assistant/tools/memory.js.map +1 -1
- package/dist/server/src/assistant/tools/notifications.d.ts +2 -1
- package/dist/server/src/assistant/tools/notifications.js +69 -35
- package/dist/server/src/assistant/tools/notifications.js.map +1 -1
- package/dist/server/src/assistant/tools/plugins.d.ts +7 -1
- package/dist/server/src/assistant/tools/plugins.js +13 -9
- package/dist/server/src/assistant/tools/plugins.js.map +1 -1
- package/dist/server/src/assistant/tools/settings.js +1 -0
- package/dist/server/src/assistant/tools/settings.js.map +1 -1
- package/dist/server/src/assistant/uploads.js +8 -1
- package/dist/server/src/assistant/uploads.js.map +1 -1
- package/dist/server/src/automations/utilities/imageInput.js +4 -2
- package/dist/server/src/automations/utilities/imageInput.js.map +1 -1
- package/dist/server/src/camera/controller.d.ts +3 -0
- package/dist/server/src/camera/controller.js +41 -28
- package/dist/server/src/camera/controller.js.map +1 -1
- package/dist/server/src/camera/index.d.ts +1 -7
- package/dist/server/src/camera/index.js +0 -13
- package/dist/server/src/camera/index.js.map +1 -1
- package/dist/server/src/camera/privacy/snapshot.js +4 -2
- package/dist/server/src/camera/privacy/snapshot.js.map +1 -1
- package/dist/server/src/camera/snapshot-store.d.ts +22 -0
- package/dist/server/src/camera/snapshot-store.js +78 -0
- package/dist/server/src/camera/snapshot-store.js.map +1 -0
- package/dist/server/src/camera/streaming/fmp4-session.d.ts +2 -1
- package/dist/server/src/camera/streaming/fmp4-session.js +4 -0
- package/dist/server/src/camera/streaming/fmp4-session.js.map +1 -1
- package/dist/server/src/camera/streaming/rtp-session.js +1 -0
- package/dist/server/src/camera/streaming/rtp-session.js.map +1 -1
- package/dist/server/src/manager/downloadManager.d.ts +1 -0
- package/dist/server/src/manager/downloadManager.js +3 -0
- package/dist/server/src/manager/downloadManager.js.map +1 -1
- package/dist/server/src/manager/notificationManager.d.ts +1 -0
- package/dist/server/src/manager/notificationManager.js +13 -2
- package/dist/server/src/manager/notificationManager.js.map +1 -1
- package/dist/server/src/manager/trainingCandidateManager.js +17 -13
- package/dist/server/src/manager/trainingCandidateManager.js.map +1 -1
- package/dist/server/src/manager/types.d.ts +4 -0
- package/dist/server/src/rpc/interfaces/device.d.ts +1 -0
- package/dist/server/src/sensors/registry.js +2 -2
- package/dist/server/src/sensors/registry.js.map +1 -1
- package/dist/server/src/utils/image.d.ts +1 -0
- package/dist/server/src/utils/image.js +95 -0
- package/dist/server/src/utils/image.js.map +1 -0
- package/package.json +7 -8
- package/dist/interface/assets/Assistant-CblA57eC.js +0 -1
- package/dist/interface/assets/Automation-WFaHCnEO.js +0 -3
- package/dist/interface/assets/AutomationImport-HRMq3VvF.js +0 -2
- package/dist/interface/assets/AutomationStore-BaaFYySv.js +0 -2
- package/dist/interface/assets/AutomationStoreDetail-IiLAbn4L.js +0 -2
- package/dist/interface/assets/Automations-DRTUxje4.js +0 -2
- package/dist/interface/assets/Camera-CaNYoR20.js +0 -2
- package/dist/interface/assets/Cameras-DnLbeJFs.js +0 -651
- package/dist/interface/assets/Camview-uZ50ebLh.js +0 -1
- package/dist/interface/assets/Console-CHdFH_Ip.js +0 -1
- package/dist/interface/assets/CuiAssistantConversation-B_eSNMuO.js +0 -5
- package/dist/interface/assets/CuiBottomSheet-B7hreGA-.js +0 -1
- package/dist/interface/assets/CuiCameraPipCard-BXCRph8M.js +0 -1
- package/dist/interface/assets/CuiCameraRecordings-B7BhgPpP.css +0 -1
- package/dist/interface/assets/CuiCameraRecordings-CztUs6YM.js +0 -1
- package/dist/interface/assets/CuiCameraTable-BmsSlihU.js +0 -1
- package/dist/interface/assets/CuiChartTable-DCGY-zVy.css +0 -1
- package/dist/interface/assets/CuiDataTable-CNFiiz_X.js +0 -1
- package/dist/interface/assets/CuiDataTable-DbkFXZeg.css +0 -1
- package/dist/interface/assets/CuiLightControl-u_yM0oyh.js +0 -1
- package/dist/interface/assets/CuiPluginCard-Bib3KXMs.js +0 -2
- package/dist/interface/assets/CuiPluginCategoryChip-CKSV5COz.js +0 -1
- package/dist/interface/assets/CuiPluginOAuthButton-Cug_uTVq.js +0 -2
- package/dist/interface/assets/CuiSchema-ycZ4rNC_.js +0 -1
- package/dist/interface/assets/Faces-D6pm4dxq.js +0 -1
- package/dist/interface/assets/FirstSteps-DotR0zU_.js +0 -1
- package/dist/interface/assets/Floorplan-xxlvYsYV.js +0 -1
- package/dist/interface/assets/Menu-6FMKvbpH.js +0 -1
- package/dist/interface/assets/Metrics-SQdgeJrD.js +0 -9
- package/dist/interface/assets/Plugin-CsT7_OZp.js +0 -1
- package/dist/interface/assets/PluginDetail-Bz65OQlN.js +0 -2
- package/dist/interface/assets/PluginSearch-CrzD6rwo.js +0 -1
- package/dist/interface/assets/PluginSearch-DKSrC539.js +0 -2
- package/dist/interface/assets/Plugins-BvuGEkhs.js +0 -1
- package/dist/interface/assets/Recordings-6MHDmY05.js +0 -1
- package/dist/interface/assets/Sensors-XQLst9D2.js +0 -2
- package/dist/interface/assets/SettingsAccount-BwC-JLu1.js +0 -1
- package/dist/interface/assets/SettingsAccount-D8txIS7w.js +0 -1
- package/dist/interface/assets/SettingsAppearance-D1PEIzvU.js +0 -1
- package/dist/interface/assets/SettingsAssistant-BpTwRGXe.css +0 -1
- package/dist/interface/assets/SettingsAssistant-C_9kjVnu.js +0 -1
- package/dist/interface/assets/SettingsNotifications-DhXKEfw0.js +0 -1
- package/dist/interface/assets/SettingsRecordings-BqRtaATr.js +0 -1
- package/dist/interface/assets/SettingsRemote-9YXNd_d3.js +0 -2
- package/dist/interface/assets/SettingsSystem-CwlTgN12.js +0 -2
- package/dist/interface/assets/Training-DMNjB3uX.css +0 -1
- package/dist/interface/assets/Training-DQP1EUdI.js +0 -1
- package/dist/interface/assets/VirtualSensorCreate-VIHqPQuq.js +0 -1
- package/dist/interface/assets/Workers-CJXGSHP0.js +0 -2
- package/dist/interface/assets/api-0KzHya6g.js +0 -4
- package/dist/interface/assets/api-C85p0Dk3.css +0 -2
- package/dist/interface/assets/cameraSources-B5dOcB7w.js +0 -1
- package/dist/interface/assets/cloudHandoff-DzrB62Ot.js +0 -1
- package/dist/interface/assets/main-BREBoPYq.js +0 -3
- package/dist/interface/assets/sensorIcons-Dwg45YYo.js +0 -1
- package/dist/interface/assets/types-B5ZroTch.js +0 -1
- package/dist/interface/assets/types-BZz-3rol.js +0 -1
- package/dist/interface/assets/ungrouped-CH2Ug0hy.js +0 -1
- package/dist/interface/assets/useBackupRestore-5E-Y8DMu.js +0 -1
- package/dist/interface/assets/vendor-zod-BMOt_yT8.js +0 -109
- package/dist/interface/ha/Plugins-BkvUlAHi.js +0 -705
- package/dist/interface/ha/SettingsAssistant-VQkALMWq.js +0 -1699
- package/dist/interface/ha/SettingsNotifications-lNH9mh9I.js +0 -529
- package/dist/interface/ha/Training-BbRm4L9a.js +0 -1469
|
@@ -1,293 +1,8 @@
|
|
|
1
1
|
import { D as e, I as t, Ot as n, _t as r, bt as i, ft as a, l as o, ot as s, wt as c, xt as l, yt as u } from "./runtime-core.esm-bundler-DCktklpY.js";
|
|
2
2
|
import { M as d, R as f, W as p, t as m } from "./protocol-BB4jdtUC-BcZnYd-h.js";
|
|
3
|
-
|
|
4
|
-
var h;
|
|
5
|
-
(function(e) {
|
|
6
|
-
e.FINISH_LAUNCHING = "finishLaunching", e.SHUTDOWN = "shutdown";
|
|
7
|
-
})(h ||= {});
|
|
8
|
-
//#endregion
|
|
9
|
-
//#region node_modules/@camera.ui/sdk/dist/plugin/contract.js
|
|
10
|
-
var g;
|
|
11
|
-
(function(e) {
|
|
12
|
-
e.Hub = "hub", e.SensorProvider = "sensorProvider", e.CameraController = "cameraController", e.CameraAndSensorProvider = "cameraAndSensorProvider";
|
|
13
|
-
})(g ||= {});
|
|
14
|
-
var _;
|
|
15
|
-
(function(e) {
|
|
16
|
-
e.MotionDetection = "MotionDetection", e.ObjectDetection = "ObjectDetection", e.AudioDetection = "AudioDetection", e.FaceDetection = "FaceDetection", e.LicensePlateDetection = "LicensePlateDetection", e.ClassifierDetection = "ClassifierDetection", e.ClipDetection = "ClipDetection", e.DiscoveryProvider = "DiscoveryProvider", e.SensorDiscovery = "SensorDiscovery", e.NVR = "NVR", e.Notifier = "Notifier", e.OAuthCapable = "OAuthCapable", e.OAuthDeviceFlow = "OAuthDeviceFlow", e.OAuthAuthCodeFlow = "OAuthAuthCodeFlow", e.OAuthClientCredentials = "OAuthClientCredentials", e.AssistantTools = "AssistantTools";
|
|
17
|
-
})(_ ||= {});
|
|
18
|
-
var v;
|
|
19
|
-
(function(e) {
|
|
20
|
-
e.PublishNotifications = "publishNotifications";
|
|
21
|
-
})(v ||= {});
|
|
22
|
-
//#endregion
|
|
23
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/base.js
|
|
24
|
-
var y;
|
|
25
|
-
(function(e) {
|
|
26
|
-
e.Motion = "motion", e.Object = "object", e.Audio = "audio", e.Face = "face", e.LicensePlate = "licensePlate", e.Classifier = "classifier", e.Clip = "clip", e.ObjectAssist = "objectAssist", e.Contact = "contact", e.Temperature = "temperature", e.Humidity = "humidity", e.Occupancy = "occupancy", e.Smoke = "smoke", e.Leak = "leak", e.Gas = "gas", e.CarbonMonoxide = "carbonMonoxide", e.Heat = "heat", e.Cold = "cold", e.Vibration = "vibration", e.Tamper = "tamper", e.Problem = "problem", e.Power = "power", e.Illuminance = "illuminance", e.CarbonDioxide = "carbonDioxide", e.Light = "light", e.Siren = "siren", e.Switch = "switch", e.Lock = "lock", e.PTZ = "ptz", e.SecuritySystem = "securitySystem", e.Garage = "garage", e.Doorbell = "doorbell", e.Battery = "battery";
|
|
27
|
-
})(y ||= {});
|
|
28
|
-
var b;
|
|
29
|
-
(function(e) {
|
|
30
|
-
e.Sensor = "sensor", e.Control = "control", e.Trigger = "trigger", e.Info = "info";
|
|
31
|
-
})(b ||= {});
|
|
32
|
-
//#endregion
|
|
33
|
-
//#region node_modules/@camera.ui/sdk/dist/plugin/helper.js
|
|
34
|
-
function x(e, t) {
|
|
35
|
-
return e.interfaces.includes(t);
|
|
36
|
-
}
|
|
37
|
-
//#endregion
|
|
38
|
-
//#region node_modules/@camera.ui/sdk/dist/plugin/notifier.js
|
|
39
|
-
var S;
|
|
40
|
-
(function(e) {
|
|
41
|
-
e.Info = "info", e.Warn = "warn", e.Error = "error", e.Critical = "critical";
|
|
42
|
-
})(S ||= {});
|
|
43
|
-
//#endregion
|
|
44
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/meta.js
|
|
45
|
-
var C;
|
|
46
|
-
(function(e) {
|
|
47
|
-
e.Binary = "binary", e.Measurement = "measurement", e.Switch = "switch", e.Light = "light", e.Siren = "siren", e.Lock = "lock", e.Cover = "cover", e.Alarm = "alarm";
|
|
48
|
-
})(C ||= {});
|
|
49
|
-
//#endregion
|
|
50
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/audio.js
|
|
51
|
-
var ee = [
|
|
52
|
-
"doorbell",
|
|
53
|
-
"glass_break",
|
|
54
|
-
"siren",
|
|
55
|
-
"speaking",
|
|
56
|
-
"gunshot",
|
|
57
|
-
"dog_bark",
|
|
58
|
-
"baby_cry",
|
|
59
|
-
"alarm",
|
|
60
|
-
"scream",
|
|
61
|
-
"cat",
|
|
62
|
-
"car_alarm",
|
|
63
|
-
"smoke_alarm"
|
|
64
|
-
], w;
|
|
65
|
-
(function(e) {
|
|
66
|
-
e.Detected = "detected", e.Detections = "detections", e.Decibels = "decibels", e.LastTriggered = "lastTriggered";
|
|
67
|
-
})(w ||= {}), y.Audio, b.Sensor, w.Detected, w.Detections, w.Decibels, w.LastTriggered;
|
|
68
|
-
//#endregion
|
|
69
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/battery.js
|
|
70
|
-
var te;
|
|
71
|
-
(function(e) {
|
|
72
|
-
e.LowBattery = "lowBattery", e.Charging = "charging";
|
|
73
|
-
})(te ||= {});
|
|
74
|
-
var T;
|
|
75
|
-
(function(e) {
|
|
76
|
-
e.Level = "level", e.Charging = "charging", e.Low = "low";
|
|
77
|
-
})(T ||= {});
|
|
78
|
-
var E;
|
|
79
|
-
(function(e) {
|
|
80
|
-
e.NotChargeable = "NOT_CHARGEABLE", e.NotCharging = "NOT_CHARGING", e.Charging = "CHARGING", e.Full = "FULL";
|
|
81
|
-
})(E ||= {}), y.Battery, b.Info, T.Level, T.Charging, E.NotChargeable, E.NotCharging, E.Charging, E.Full, T.Low, T.Charging, te.Charging, T.Low, te.LowBattery, C.Measurement, T.Level, T.Level;
|
|
82
|
-
//#endregion
|
|
83
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/carbonDioxide.js
|
|
84
|
-
var D;
|
|
85
|
-
(function(e) {
|
|
86
|
-
e.Current = "current";
|
|
87
|
-
})(D ||= {}), y.CarbonDioxide, b.Info, D.Current, D.Current, C.Measurement, D.Current, D.Current;
|
|
88
|
-
//#endregion
|
|
89
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/carbonMonoxide.js
|
|
90
|
-
var O;
|
|
91
|
-
(function(e) {
|
|
92
|
-
e.Detected = "detected";
|
|
93
|
-
})(O ||= {}), y.CarbonMonoxide, b.Sensor, O.Detected, O.Detected, O.Detected, C.Binary, O.Detected, O.Detected;
|
|
94
|
-
//#endregion
|
|
95
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/classifier.js
|
|
96
|
-
var k;
|
|
97
|
-
(function(e) {
|
|
98
|
-
e.Detected = "detected", e.Detections = "detections", e.Labels = "labels";
|
|
99
|
-
})(k ||= {}), y.Classifier, b.Sensor, k.Detected, k.Detections, k.Labels, y.Clip, b.Sensor;
|
|
100
|
-
//#endregion
|
|
101
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/cold.js
|
|
102
|
-
var A;
|
|
103
|
-
(function(e) {
|
|
104
|
-
e.Detected = "detected";
|
|
105
|
-
})(A ||= {}), y.Cold, b.Sensor, A.Detected, A.Detected, A.Detected, C.Binary, A.Detected, A.Detected;
|
|
106
|
-
//#endregion
|
|
107
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/contact.js
|
|
108
|
-
var j;
|
|
109
|
-
(function(e) {
|
|
110
|
-
e.Detected = "detected";
|
|
111
|
-
})(j ||= {}), y.Contact, b.Sensor, j.Detected, j.Detected, j.Detected, C.Binary, j.Detected, j.Detected;
|
|
112
|
-
//#endregion
|
|
113
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/detection.js
|
|
114
|
-
var M = [
|
|
115
|
-
"person",
|
|
116
|
-
"vehicle",
|
|
117
|
-
"animal"
|
|
118
|
-
], ne = [
|
|
119
|
-
"motion",
|
|
120
|
-
...M,
|
|
121
|
-
"audio"
|
|
122
|
-
], re = ["face", "license_plate"], ie;
|
|
123
|
-
(function(e) {
|
|
124
|
-
e.Ring = "ring";
|
|
125
|
-
})(ie ||= {}), y.Doorbell, b.Trigger, ie.Ring, ie.Ring, ie.Ring, C.Binary, ie.Ring, ie.Ring;
|
|
126
|
-
//#endregion
|
|
127
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/face.js
|
|
128
|
-
var ae;
|
|
129
|
-
(function(e) {
|
|
130
|
-
e.Detected = "detected", e.Detections = "detections", e.Identities = "identities";
|
|
131
|
-
})(ae ||= {}), y.Face, b.Sensor, ae.Detected, ae.Detections, ae.Identities;
|
|
132
|
-
//#endregion
|
|
133
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/garage.js
|
|
134
|
-
var N;
|
|
135
|
-
(function(e) {
|
|
136
|
-
e[e.Open = 0] = "Open", e[e.Closed = 1] = "Closed", e[e.Opening = 2] = "Opening", e[e.Closing = 3] = "Closing", e[e.Stopped = 4] = "Stopped";
|
|
137
|
-
})(N ||= {});
|
|
138
|
-
var P;
|
|
139
|
-
(function(e) {
|
|
140
|
-
e.CurrentState = "currentState", e.TargetState = "targetState", e.ObstructionDetected = "obstructionDetected";
|
|
141
|
-
})(P ||= {}), y.Garage, b.Control, P.CurrentState, N.Open, N.Closed, N.Opening, N.Closing, N.Stopped, P.TargetState, N.Open, N.Closed, P.ObstructionDetected, P.CurrentState, P.CurrentState, P.TargetState, C.Cover, P.CurrentState, P.TargetState, N.Open, N.Closed, N.Opening, N.Closing, N.Stopped;
|
|
142
|
-
//#endregion
|
|
143
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/gas.js
|
|
144
|
-
var F;
|
|
145
|
-
(function(e) {
|
|
146
|
-
e.Detected = "detected";
|
|
147
|
-
})(F ||= {}), y.Gas, b.Sensor, F.Detected, F.Detected, F.Detected, C.Binary, F.Detected, F.Detected;
|
|
148
|
-
//#endregion
|
|
149
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/heat.js
|
|
150
|
-
var I;
|
|
151
|
-
(function(e) {
|
|
152
|
-
e.Detected = "detected";
|
|
153
|
-
})(I ||= {}), y.Heat, b.Sensor, I.Detected, I.Detected, I.Detected, C.Binary, I.Detected, I.Detected;
|
|
154
|
-
//#endregion
|
|
155
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/humidity.js
|
|
156
|
-
var oe;
|
|
157
|
-
(function(e) {
|
|
158
|
-
e.Current = "current";
|
|
159
|
-
})(oe ||= {}), y.Humidity, b.Info, oe.Current, oe.Current, C.Measurement, oe.Current, oe.Current;
|
|
160
|
-
//#endregion
|
|
161
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/illuminance.js
|
|
162
|
-
var se;
|
|
163
|
-
(function(e) {
|
|
164
|
-
e.Current = "current";
|
|
165
|
-
})(se ||= {}), y.Illuminance, b.Info, se.Current, se.Current, C.Measurement, se.Current, se.Current;
|
|
166
|
-
//#endregion
|
|
167
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/leak.js
|
|
168
|
-
var ce;
|
|
169
|
-
(function(e) {
|
|
170
|
-
e.Detected = "detected";
|
|
171
|
-
})(ce ||= {}), y.Leak, b.Sensor, ce.Detected, ce.Detected, ce.Detected, C.Binary, ce.Detected, ce.Detected;
|
|
172
|
-
//#endregion
|
|
173
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/licensePlate.js
|
|
174
|
-
var le;
|
|
175
|
-
(function(e) {
|
|
176
|
-
e.Detected = "detected", e.Detections = "detections", e.Plates = "plates";
|
|
177
|
-
})(le ||= {}), y.LicensePlate, b.Sensor, le.Detected, le.Detections, le.Plates;
|
|
178
|
-
//#endregion
|
|
179
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/light.js
|
|
180
|
-
var ue;
|
|
181
|
-
(function(e) {
|
|
182
|
-
e.Brightness = "brightness";
|
|
183
|
-
})(ue ||= {});
|
|
184
|
-
var L;
|
|
185
|
-
(function(e) {
|
|
186
|
-
e.On = "on", e.Brightness = "brightness";
|
|
187
|
-
})(L ||= {}), y.Light, b.Control, L.On, L.Brightness, L.On, L.Brightness, ue.Brightness, L.On, L.Brightness, ue.Brightness, C.Light, L.On, L.On;
|
|
188
|
-
//#endregion
|
|
189
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/lock.js
|
|
190
|
-
var R;
|
|
191
|
-
(function(e) {
|
|
192
|
-
e[e.Secured = 0] = "Secured", e[e.Unsecured = 1] = "Unsecured", e[e.Unknown = 2] = "Unknown";
|
|
193
|
-
})(R ||= {});
|
|
194
|
-
var z;
|
|
195
|
-
(function(e) {
|
|
196
|
-
e.CurrentState = "currentState", e.TargetState = "targetState";
|
|
197
|
-
})(z ||= {}), y.Lock, b.Control, z.CurrentState, R.Secured, R.Unsecured, R.Unknown, z.TargetState, R.Secured, R.Unsecured, z.CurrentState, z.CurrentState, z.TargetState, C.Lock, z.CurrentState, z.TargetState, R.Secured, R.Unsecured;
|
|
198
|
-
//#endregion
|
|
199
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/motion.js
|
|
200
|
-
var de;
|
|
201
|
-
(function(e) {
|
|
202
|
-
e.Detected = "detected", e.Detections = "detections", e.Blocked = "blocked", e.LastTriggered = "lastTriggered";
|
|
203
|
-
})(de ||= {}), y.Motion, b.Sensor, de.Detected, de.Detections, de.Blocked, de.LastTriggered;
|
|
204
|
-
//#endregion
|
|
205
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/object.js
|
|
206
|
-
var fe;
|
|
207
|
-
(function(e) {
|
|
208
|
-
e.Detected = "detected", e.Detections = "detections", e.Labels = "labels", e.StaticDetections = "staticDetections";
|
|
209
|
-
})(fe ||= {}), y.Object, b.Sensor, fe.Detected, fe.Detections, fe.Labels, fe.StaticDetections, y.ObjectAssist, b.Sensor;
|
|
210
|
-
//#endregion
|
|
211
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/occupancy.js
|
|
212
|
-
var pe;
|
|
213
|
-
(function(e) {
|
|
214
|
-
e.Detected = "detected";
|
|
215
|
-
})(pe ||= {}), y.Occupancy, b.Sensor, pe.Detected, pe.Detected, pe.Detected, C.Binary, pe.Detected, pe.Detected;
|
|
216
|
-
//#endregion
|
|
217
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/power.js
|
|
218
|
-
var me;
|
|
219
|
-
(function(e) {
|
|
220
|
-
e.Detected = "detected";
|
|
221
|
-
})(me ||= {}), y.Power, b.Sensor, me.Detected, me.Detected, me.Detected, C.Binary, me.Detected, me.Detected;
|
|
222
|
-
//#endregion
|
|
223
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/problem.js
|
|
224
|
-
var he;
|
|
225
|
-
(function(e) {
|
|
226
|
-
e.Detected = "detected";
|
|
227
|
-
})(he ||= {}), y.Problem, b.Sensor, he.Detected, he.Detected, he.Detected, C.Binary, he.Detected, he.Detected;
|
|
228
|
-
//#endregion
|
|
229
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/ptz.js
|
|
230
|
-
var ge;
|
|
231
|
-
(function(e) {
|
|
232
|
-
e.Pan = "pan", e.Tilt = "tilt", e.Zoom = "zoom", e.Presets = "presets", e.Home = "home", e.RelativeMove = "relativeMove", e.AbsolutePosition = "absolutePosition", e.VelocityControl = "velocityControl";
|
|
233
|
-
})(ge ||= {});
|
|
234
|
-
var _e;
|
|
235
|
-
(function(e) {
|
|
236
|
-
e.Position = "position", e.Moving = "moving", e.Presets = "presets", e.Velocity = "velocity", e.TargetPreset = "targetPreset", e.RelativeMove = "relativeMove", e.Home = "home";
|
|
237
|
-
})(_e ||= {}), y.PTZ, b.Control, _e.Position, _e.Moving, _e.Presets, _e.Velocity, _e.TargetPreset, _e.RelativeMove, _e.Home;
|
|
238
|
-
//#endregion
|
|
239
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/securitySystem.js
|
|
240
|
-
var B;
|
|
241
|
-
(function(e) {
|
|
242
|
-
e[e.StayArm = 0] = "StayArm", e[e.AwayArm = 1] = "AwayArm", e[e.NightArm = 2] = "NightArm", e[e.Disarmed = 3] = "Disarmed", e[e.AlarmTriggered = 4] = "AlarmTriggered";
|
|
243
|
-
})(B ||= {});
|
|
244
|
-
var V;
|
|
245
|
-
(function(e) {
|
|
246
|
-
e.CurrentState = "currentState", e.TargetState = "targetState";
|
|
247
|
-
})(V ||= {}), y.SecuritySystem, b.Control, V.CurrentState, B.StayArm, B.AwayArm, B.NightArm, B.Disarmed, B.AlarmTriggered, V.TargetState, B.StayArm, B.AwayArm, B.NightArm, B.Disarmed, V.CurrentState, V.CurrentState, V.TargetState, C.Alarm, V.CurrentState, V.TargetState, B.StayArm, B.AwayArm, B.NightArm, B.Disarmed, B.AlarmTriggered;
|
|
248
|
-
//#endregion
|
|
249
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/siren.js
|
|
250
|
-
var ve;
|
|
251
|
-
(function(e) {
|
|
252
|
-
e.Volume = "volume";
|
|
253
|
-
})(ve ||= {});
|
|
254
|
-
var H;
|
|
255
|
-
(function(e) {
|
|
256
|
-
e.Active = "active", e.Volume = "volume";
|
|
257
|
-
})(H ||= {}), y.Siren, b.Control, H.Active, H.Volume, H.Active, H.Volume, ve.Volume, H.Active, H.Volume, ve.Volume, C.Siren, H.Active, H.Active;
|
|
258
|
-
//#endregion
|
|
259
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/smoke.js
|
|
260
|
-
var ye;
|
|
261
|
-
(function(e) {
|
|
262
|
-
e.Detected = "detected";
|
|
263
|
-
})(ye ||= {}), y.Smoke, b.Sensor, ye.Detected, ye.Detected, ye.Detected, C.Binary, ye.Detected, ye.Detected;
|
|
264
|
-
//#endregion
|
|
265
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/switch.js
|
|
266
|
-
var U;
|
|
267
|
-
(function(e) {
|
|
268
|
-
e.On = "on";
|
|
269
|
-
})(U ||= {}), y.Switch, b.Control, U.On, U.On, U.On, C.Switch, U.On, U.On;
|
|
270
|
-
//#endregion
|
|
271
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/tamper.js
|
|
272
|
-
var be;
|
|
273
|
-
(function(e) {
|
|
274
|
-
e.Detected = "detected";
|
|
275
|
-
})(be ||= {}), y.Tamper, b.Sensor, be.Detected, be.Detected, be.Detected, C.Binary, be.Detected, be.Detected;
|
|
276
|
-
//#endregion
|
|
277
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/temperature.js
|
|
278
|
-
var xe;
|
|
279
|
-
(function(e) {
|
|
280
|
-
e.Current = "current";
|
|
281
|
-
})(xe ||= {}), y.Temperature, b.Info, xe.Current, xe.Current, C.Measurement, xe.Current, xe.Current;
|
|
282
|
-
//#endregion
|
|
283
|
-
//#region node_modules/@camera.ui/sdk/dist/sensor/vibration.js
|
|
284
|
-
var Se;
|
|
285
|
-
(function(e) {
|
|
286
|
-
e.Detected = "detected";
|
|
287
|
-
})(Se ||= {}), y.Vibration, b.Sensor, Se.Detected, Se.Detected, Se.Detected, C.Binary, Se.Detected, Se.Detected;
|
|
288
|
-
//#endregion
|
|
3
|
+
import { D as h } from "./dist-BTp4AyuI.js";
|
|
289
4
|
//#region node_modules/@camera.ui/browser/dist/index.js
|
|
290
|
-
function
|
|
5
|
+
function g(e = {}) {
|
|
291
6
|
let { releaseDelay: t = 1e3, onRelease: n } = e, r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map();
|
|
292
7
|
function a(e) {
|
|
293
8
|
let t = i.get(e);
|
|
@@ -353,18 +68,18 @@ function Ce(e = {}) {
|
|
|
353
68
|
forEachValue: m
|
|
354
69
|
};
|
|
355
70
|
}
|
|
356
|
-
function
|
|
357
|
-
let t = e(
|
|
71
|
+
function _() {
|
|
72
|
+
let t = e(kt);
|
|
358
73
|
if (!t) throw Error("[camera.ui] useCameraUi() called without CameraUiPlugin installed. Make sure to call app.use(createCameraUiPlugin({ ... })) before using this composable.");
|
|
359
74
|
return t;
|
|
360
75
|
}
|
|
361
|
-
function
|
|
76
|
+
function v(e) {
|
|
362
77
|
return e.replace(/ /g, "_").toLowerCase();
|
|
363
78
|
}
|
|
364
|
-
function
|
|
365
|
-
return `cui_${
|
|
79
|
+
function y(e, t) {
|
|
80
|
+
return `cui_${v(e)}_${v(t)}`;
|
|
366
81
|
}
|
|
367
|
-
var
|
|
82
|
+
var b = class {
|
|
368
83
|
static coreManagerNamespaces() {
|
|
369
84
|
return {
|
|
370
85
|
coreManagerSubject: "coreManager.subscriber",
|
|
@@ -468,41 +183,41 @@ var G = class {
|
|
|
468
183
|
static workerLogs() {
|
|
469
184
|
return "workers.logs";
|
|
470
185
|
}
|
|
471
|
-
},
|
|
472
|
-
async function
|
|
473
|
-
let r = n.maxRetries ??
|
|
186
|
+
}, x = 3, S = 3e4;
|
|
187
|
+
async function C(e, t, n = {}) {
|
|
188
|
+
let r = n.maxRetries ?? x, i = n.awaitConnect ?? !0, a = n.connectTimeoutMs ?? S, o = n.retryDelayMs ?? w, s = n.shouldRetry ?? T, c = n.signal, l;
|
|
474
189
|
for (let n = 0; n <= r; n++) {
|
|
475
|
-
if (c?.aborted) throw
|
|
190
|
+
if (c?.aborted) throw O();
|
|
476
191
|
let u = e.value;
|
|
477
192
|
if (!u) {
|
|
478
193
|
if (!i) throw Error("rpc: not connected");
|
|
479
|
-
u = await
|
|
194
|
+
u = await E(e, a, c);
|
|
480
195
|
}
|
|
481
196
|
try {
|
|
482
197
|
return await t(u);
|
|
483
198
|
} catch (e) {
|
|
484
199
|
if (l = e, n >= r || !s(e, n)) throw e;
|
|
485
|
-
await
|
|
200
|
+
await D(o(n), c);
|
|
486
201
|
}
|
|
487
202
|
}
|
|
488
203
|
throw l ?? /* @__PURE__ */ Error("rpc: max retries exceeded");
|
|
489
204
|
}
|
|
490
|
-
function
|
|
205
|
+
function w(e) {
|
|
491
206
|
return Math.min(100 * 2 ** e, 1e3);
|
|
492
207
|
}
|
|
493
|
-
function
|
|
208
|
+
function T(e) {
|
|
494
209
|
if (!(e instanceof Error)) return !1;
|
|
495
210
|
let t = e.code;
|
|
496
211
|
if (t === "TIMEOUT" || t === "CONNECTION_CLOSED") return !0;
|
|
497
212
|
let n = e.message.toLowerCase();
|
|
498
213
|
return !!(n.includes("not connected") || n.includes("connection closed") || n.includes("no responders") || n.includes("connection refused") || n.includes("socket") || n.includes("timed out") || n.includes("timeout"));
|
|
499
214
|
}
|
|
500
|
-
async function
|
|
215
|
+
async function E(e, t, n) {
|
|
501
216
|
return e.value ? e.value : new Promise((r, i) => {
|
|
502
217
|
let a = setTimeout(() => {
|
|
503
218
|
c(), n?.removeEventListener("abort", o), i(/* @__PURE__ */ Error("rpc: connect timeout"));
|
|
504
219
|
}, t), o = () => {
|
|
505
|
-
clearTimeout(a), c(), i(
|
|
220
|
+
clearTimeout(a), c(), i(O());
|
|
506
221
|
};
|
|
507
222
|
n?.addEventListener("abort", o, { once: !0 });
|
|
508
223
|
let c = s(e, (e) => {
|
|
@@ -510,147 +225,147 @@ async function Ae(e, t, n) {
|
|
|
510
225
|
});
|
|
511
226
|
});
|
|
512
227
|
}
|
|
513
|
-
async function
|
|
228
|
+
async function D(e, t) {
|
|
514
229
|
return new Promise((n, r) => {
|
|
515
230
|
if (t?.aborted) {
|
|
516
|
-
r(
|
|
231
|
+
r(O());
|
|
517
232
|
return;
|
|
518
233
|
}
|
|
519
234
|
let i = setTimeout(() => {
|
|
520
235
|
t?.removeEventListener("abort", a), n();
|
|
521
236
|
}, e), a = () => {
|
|
522
|
-
clearTimeout(i), r(
|
|
237
|
+
clearTimeout(i), r(O());
|
|
523
238
|
};
|
|
524
239
|
t?.addEventListener("abort", a, { once: !0 });
|
|
525
240
|
});
|
|
526
241
|
}
|
|
527
|
-
function
|
|
242
|
+
function O() {
|
|
528
243
|
if (typeof DOMException < "u") return new DOMException("Aborted", "AbortError");
|
|
529
244
|
let e = /* @__PURE__ */ Error("Aborted");
|
|
530
245
|
return e.name = "AbortError", e;
|
|
531
246
|
}
|
|
532
|
-
var
|
|
533
|
-
function
|
|
534
|
-
|
|
247
|
+
var ee = 5e3, k = /* @__PURE__ */ new Map(), A = /* @__PURE__ */ new Map(), j = /* @__PURE__ */ new Map(), M = /* @__PURE__ */ new Map(), N = /* @__PURE__ */ new Map();
|
|
248
|
+
function P(e) {
|
|
249
|
+
M.get(e)?.forEach((e) => e());
|
|
535
250
|
}
|
|
536
|
-
function
|
|
537
|
-
let r =
|
|
251
|
+
function F(e, t, n = !1) {
|
|
252
|
+
let r = N.get(t);
|
|
538
253
|
if (r) return r;
|
|
539
254
|
let i = (async () => {
|
|
540
|
-
let r = await
|
|
255
|
+
let r = await le(e, t);
|
|
541
256
|
try {
|
|
542
257
|
if (!r) return;
|
|
543
258
|
let e = await r.fetchSnapshot(void 0, n ? !0 : void 0);
|
|
544
|
-
return e &&
|
|
259
|
+
return e && I(t, e), e ?? void 0;
|
|
545
260
|
} finally {
|
|
546
|
-
r &&
|
|
261
|
+
r && ue(t);
|
|
547
262
|
}
|
|
548
|
-
})().finally(() =>
|
|
549
|
-
return
|
|
263
|
+
})().finally(() => N.delete(t));
|
|
264
|
+
return N.set(t, i), i;
|
|
550
265
|
}
|
|
551
|
-
var
|
|
552
|
-
function
|
|
553
|
-
|
|
266
|
+
var te = !1;
|
|
267
|
+
function ne(e, t) {
|
|
268
|
+
te || (te = !0, e.on("reconnected", () => {
|
|
554
269
|
let e = 0;
|
|
555
|
-
for (let n of
|
|
556
|
-
if ((
|
|
270
|
+
for (let n of M.keys()) {
|
|
271
|
+
if ((M.get(n)?.size ?? 0) === 0) continue;
|
|
557
272
|
let r = n;
|
|
558
273
|
setTimeout(() => {
|
|
559
|
-
(
|
|
274
|
+
(M.get(r)?.size ?? 0) !== 0 && F(t, r).catch(() => void 0);
|
|
560
275
|
}, e), e += 150;
|
|
561
276
|
}
|
|
562
277
|
}));
|
|
563
278
|
}
|
|
564
|
-
function
|
|
565
|
-
setTimeout(() => URL.revokeObjectURL(e),
|
|
279
|
+
function re(e) {
|
|
280
|
+
setTimeout(() => URL.revokeObjectURL(e), ee);
|
|
566
281
|
}
|
|
567
|
-
function
|
|
568
|
-
let r =
|
|
569
|
-
r && (
|
|
282
|
+
function I(e, t, n) {
|
|
283
|
+
let r = j.get(e);
|
|
284
|
+
r && (re(r), j.delete(e)), k.set(e, t), n !== void 0 && A.set(e, n), P(e);
|
|
570
285
|
}
|
|
571
|
-
function
|
|
572
|
-
return
|
|
286
|
+
function L(e) {
|
|
287
|
+
return k.get(e);
|
|
573
288
|
}
|
|
574
|
-
function
|
|
575
|
-
return
|
|
576
|
-
|
|
289
|
+
function R(e, t) {
|
|
290
|
+
return M.has(e) || M.set(e, /* @__PURE__ */ new Set()), M.get(e).add(t), () => {
|
|
291
|
+
M.get(e)?.delete(t);
|
|
577
292
|
};
|
|
578
293
|
}
|
|
579
|
-
function
|
|
580
|
-
let t =
|
|
294
|
+
function z(e) {
|
|
295
|
+
let t = k.get(e);
|
|
581
296
|
if (!t) return;
|
|
582
|
-
let n =
|
|
583
|
-
return n || (n = URL.createObjectURL(new Blob([t], { type: "image/jpeg" })),
|
|
297
|
+
let n = j.get(e);
|
|
298
|
+
return n || (n = URL.createObjectURL(new Blob([t], { type: "image/jpeg" })), j.set(e, n)), n;
|
|
584
299
|
}
|
|
585
|
-
function
|
|
586
|
-
for (let e of
|
|
587
|
-
|
|
300
|
+
function ie() {
|
|
301
|
+
for (let e of j.values()) URL.revokeObjectURL(e);
|
|
302
|
+
j.clear(), k.clear(), A.clear();
|
|
588
303
|
}
|
|
589
|
-
function
|
|
590
|
-
let t =
|
|
591
|
-
|
|
304
|
+
function ae(e) {
|
|
305
|
+
let t = _(), { isConnected: r } = t, i = se(), a = c(), u = l(!1), f = l(!1);
|
|
306
|
+
ne(t, i);
|
|
592
307
|
let p = o(() => {
|
|
593
308
|
if (!a.value) return;
|
|
594
309
|
let t = n(e);
|
|
595
|
-
return
|
|
310
|
+
return z(typeof t == "string" ? t : t._id);
|
|
596
311
|
}), m = o(() => {
|
|
597
312
|
if (!a.value) return;
|
|
598
313
|
let t = n(e), r = typeof t == "string" ? t : t._id;
|
|
599
|
-
return
|
|
314
|
+
return A.get(r);
|
|
600
315
|
});
|
|
601
316
|
function h(e) {
|
|
602
|
-
|
|
317
|
+
M.has(e) || M.set(e, /* @__PURE__ */ new Set());
|
|
603
318
|
let t = () => {
|
|
604
|
-
a.value =
|
|
319
|
+
a.value = k.get(e);
|
|
605
320
|
};
|
|
606
|
-
return
|
|
607
|
-
|
|
321
|
+
return M.get(e).add(t), () => {
|
|
322
|
+
M.get(e)?.delete(t);
|
|
608
323
|
};
|
|
609
324
|
}
|
|
610
|
-
let g,
|
|
611
|
-
async function
|
|
612
|
-
if (
|
|
613
|
-
|
|
325
|
+
let g, v, y;
|
|
326
|
+
async function b(t) {
|
|
327
|
+
if (v !== t && y !== t) {
|
|
328
|
+
y = t;
|
|
614
329
|
try {
|
|
615
|
-
if (!await
|
|
330
|
+
if (!await le(i, t)) return;
|
|
616
331
|
let r = n(e);
|
|
617
|
-
if ((typeof r == "string" ? r : r._id) !== t ||
|
|
618
|
-
|
|
332
|
+
if ((typeof r == "string" ? r : r._id) !== t || v === t) {
|
|
333
|
+
ue(t);
|
|
619
334
|
return;
|
|
620
335
|
}
|
|
621
|
-
|
|
336
|
+
x(), v = t;
|
|
622
337
|
} catch {} finally {
|
|
623
|
-
|
|
338
|
+
y = void 0;
|
|
624
339
|
}
|
|
625
340
|
}
|
|
626
341
|
}
|
|
627
|
-
function
|
|
628
|
-
|
|
342
|
+
function x() {
|
|
343
|
+
v &&= (ue(v), void 0);
|
|
629
344
|
}
|
|
630
|
-
async function
|
|
345
|
+
async function S(e, t = !1) {
|
|
631
346
|
if (!r.value || !e) return;
|
|
632
|
-
let n = t ? void 0 :
|
|
347
|
+
let n = t ? void 0 : k.get(e);
|
|
633
348
|
if (n) {
|
|
634
349
|
a.value = n, f.value = !0;
|
|
635
350
|
return;
|
|
636
351
|
}
|
|
637
352
|
u.value = !0;
|
|
638
353
|
try {
|
|
639
|
-
let t = await
|
|
354
|
+
let t = await F(i, e);
|
|
640
355
|
t && (a.value = t);
|
|
641
356
|
} catch {} finally {
|
|
642
357
|
u.value = !1, f.value = !0;
|
|
643
358
|
}
|
|
644
359
|
}
|
|
645
|
-
function
|
|
360
|
+
function C(e) {
|
|
646
361
|
return typeof e == "object" && e?.disabled === !0;
|
|
647
362
|
}
|
|
648
|
-
async function
|
|
363
|
+
async function w() {
|
|
649
364
|
let t = n(e), o = typeof t == "string" ? t : t._id;
|
|
650
|
-
if (o && r.value && !
|
|
365
|
+
if (o && r.value && !C(t)) {
|
|
651
366
|
u.value = !0;
|
|
652
367
|
try {
|
|
653
|
-
let e = await
|
|
368
|
+
let e = await F(i, o, !0);
|
|
654
369
|
e && (a.value = e);
|
|
655
370
|
} catch {} finally {
|
|
656
371
|
u.value = !1, f.value = !0;
|
|
@@ -660,61 +375,61 @@ function Je(e) {
|
|
|
660
375
|
return s([
|
|
661
376
|
r,
|
|
662
377
|
() => n(e),
|
|
663
|
-
() =>
|
|
378
|
+
() => C(n(e))
|
|
664
379
|
], async ([e, t, n]) => {
|
|
665
380
|
g?.(), g = void 0;
|
|
666
381
|
let r = typeof t == "string" ? t : t._id;
|
|
667
|
-
e && r && !n ? (g = h(r), await
|
|
382
|
+
e && r && !n ? (g = h(r), await b(r), await S(r)) : r ? (x(), a.value = k.get(r), f.value = !0) : (x(), a.value = void 0);
|
|
668
383
|
}, { immediate: !0 }), d(() => {
|
|
669
|
-
g?.(),
|
|
384
|
+
g?.(), x();
|
|
670
385
|
}), {
|
|
671
386
|
snapshot: a,
|
|
672
387
|
snapshotSrc: p,
|
|
673
388
|
snapshotTimestamp: m,
|
|
674
389
|
isLoading: o(() => u.value || !f.value),
|
|
675
|
-
refresh:
|
|
390
|
+
refresh: w
|
|
676
391
|
};
|
|
677
392
|
}
|
|
678
|
-
async function
|
|
679
|
-
let n =
|
|
680
|
-
m.value =
|
|
681
|
-
}),
|
|
393
|
+
async function oe(e, t) {
|
|
394
|
+
let n = b.cameraNamespaces(t._id), r = b.sensorRegistryNamespaces(), i = "rpc" in e && "value" in e.rpc ? e : void 0, a = i ? i.rpc : c(e), s, u, d = c(t), f = l(!1), p = l(!1), m = c(L(t._id)), g = l(!1), _ = l({}), v = R(t._id, () => {
|
|
395
|
+
m.value = L(t._id);
|
|
396
|
+
}), y = o(() => d.value.name), x = o(() => d.value.room), S = o(() => d.value.nativeId), w = o(() => d.value.disabled), T = o(() => d.value.detectionSettings?.snooze ?? !1), E = o(() => d.value.isCloud), D = o(() => JSON.parse(JSON.stringify(d.value.sources)).map((e) => ({
|
|
682
397
|
...e,
|
|
683
|
-
snapshot: async (t) =>
|
|
684
|
-
probeStream: async (t, n = !1) =>
|
|
685
|
-
}))),
|
|
398
|
+
snapshot: async (t) => oe(e._id, t),
|
|
399
|
+
probeStream: async (t, n = !1) => se(e._id, t, n)
|
|
400
|
+
}))), O = o(() => D.value.find((e) => e.role === "high-resolution")), ee = o(() => D.value.find((e) => e.role === "mid-resolution")), k = o(() => D.value.find((e) => e.role === "low-resolution")), A = o(() => O.value ?? ee.value ?? k.value), j = o(() => D.value.find((e) => e.role === "snapshot") ?? D.value.find((e) => e.useForSnapshot)), M = o(() => {
|
|
686
401
|
let e = /* @__PURE__ */ new Set();
|
|
687
|
-
for (let t of Object.values(
|
|
402
|
+
for (let t of Object.values(_.value)) e.add(t.type);
|
|
688
403
|
return e;
|
|
689
|
-
}),
|
|
690
|
-
async function
|
|
691
|
-
|
|
404
|
+
}), N = o(() => Array.from(M.value)), P = o(() => M.value.has(h.Light)), F = o(() => M.value.has(h.Siren)), te = o(() => M.value.has(h.Doorbell)), ne = o(() => M.value.has(h.Battery)), re = o(() => M.value.has(h.Audio)), z = o(() => M.value.has(h.Motion)), ie = o(() => M.value.has(h.Object)), ae = o(() => M.value.has(h.PTZ));
|
|
405
|
+
async function oe(e, r) {
|
|
406
|
+
g.value = !0;
|
|
692
407
|
try {
|
|
693
408
|
try {
|
|
694
|
-
let i = await
|
|
695
|
-
return i && i.data.byteLength > 0 ? (
|
|
409
|
+
let i = await C(a, (t) => t.createProxy(n.cameraControllerRpc).snapshotWithMeta(e, r));
|
|
410
|
+
return i && i.data.byteLength > 0 ? (I(t._id, i.data, Date.now() - i.ageMs), i.data) : void 0;
|
|
696
411
|
} catch {
|
|
697
|
-
let i = await
|
|
698
|
-
if (i && i.byteLength > 0) return
|
|
412
|
+
let i = await C(a, (t) => t.createProxy(n.cameraControllerRpc).snapshot(e, r));
|
|
413
|
+
if (i && i.byteLength > 0) return I(t._id, i, r ? Date.now() : void 0), i;
|
|
699
414
|
}
|
|
700
415
|
} finally {
|
|
701
|
-
|
|
416
|
+
g.value = !1;
|
|
702
417
|
}
|
|
703
418
|
}
|
|
704
|
-
async function
|
|
705
|
-
return
|
|
419
|
+
async function se(e, t, r = !1) {
|
|
420
|
+
return C(a, (i) => i.createProxy(n.cameraControllerRpc).probeStream(e, t, r));
|
|
706
421
|
}
|
|
707
|
-
async function
|
|
708
|
-
return
|
|
422
|
+
async function B(e) {
|
|
423
|
+
return C(a, (t) => t.createProxy(n.cameraControllerRpc).streamUrl(e));
|
|
709
424
|
}
|
|
710
|
-
async function
|
|
711
|
-
let e = await
|
|
712
|
-
d.value = e.camera, f.value = e.cameraState, p.value = e.frameWorkerState,
|
|
425
|
+
async function V() {
|
|
426
|
+
let e = await C(a, (e) => e.createProxy(n.cameraControllerRpc).refreshStates());
|
|
427
|
+
d.value = e.camera, f.value = e.cameraState, p.value = e.frameWorkerState, _.value = e.sensorStates;
|
|
713
428
|
}
|
|
714
429
|
async function ce(e) {
|
|
715
430
|
switch (e.type) {
|
|
716
431
|
case "removed":
|
|
717
|
-
await
|
|
432
|
+
await de();
|
|
718
433
|
break;
|
|
719
434
|
case "updated":
|
|
720
435
|
d.value = e.data;
|
|
@@ -725,146 +440,146 @@ async function Ye(e, t) {
|
|
|
725
440
|
case "frameWorkerState":
|
|
726
441
|
p.value = e.data;
|
|
727
442
|
break;
|
|
728
|
-
case "snapshot:updated":
|
|
443
|
+
case "snapshot:updated": I(t._id, e.data.snapshot, e.data.fetchedAt);
|
|
729
444
|
}
|
|
730
445
|
}
|
|
731
446
|
function le(e) {
|
|
732
447
|
if (e.type === "sensor:added") {
|
|
733
448
|
let n = e.data;
|
|
734
449
|
if (!n.sensor.assignedCameraIds.includes(t._id) || !n.sensor.connected) return;
|
|
735
|
-
|
|
736
|
-
...
|
|
450
|
+
_.value = {
|
|
451
|
+
..._.value,
|
|
737
452
|
[n.sensor.id]: n.state
|
|
738
453
|
};
|
|
739
454
|
} else if (e.type === "sensor:deleted") {
|
|
740
|
-
let t = e.data, n = { ...
|
|
741
|
-
delete n[t.sensorId],
|
|
455
|
+
let t = e.data, n = { ..._.value };
|
|
456
|
+
delete n[t.sensorId], _.value = n;
|
|
742
457
|
} else if (e.type === "sensor:connected:changed") {
|
|
743
458
|
let t = e.data;
|
|
744
|
-
if (t.connected)
|
|
459
|
+
if (t.connected) V().catch(() => {});
|
|
745
460
|
else {
|
|
746
|
-
let e = { ...
|
|
747
|
-
delete e[t.sensorId],
|
|
461
|
+
let e = { ..._.value };
|
|
462
|
+
delete e[t.sensorId], _.value = e;
|
|
748
463
|
}
|
|
749
464
|
} else if (e.type === "sensor:assignment:changed") {
|
|
750
465
|
let n = e.data;
|
|
751
466
|
if (n.cameraId !== t._id) return;
|
|
752
|
-
if (n.assigned)
|
|
467
|
+
if (n.assigned) V().catch(() => {});
|
|
753
468
|
else {
|
|
754
|
-
let e = { ...
|
|
755
|
-
delete e[n.sensorId],
|
|
469
|
+
let e = { ..._.value };
|
|
470
|
+
delete e[n.sensorId], _.value = e;
|
|
756
471
|
}
|
|
757
472
|
}
|
|
758
473
|
}
|
|
759
474
|
async function ue() {
|
|
760
|
-
s?.(), u?.(), s = await
|
|
475
|
+
s?.(), u?.(), s = await C(a, (e) => e.subscribe(n.cameraSubject, ce)), u = await C(a, (e) => e.subscribe(r.sensorsSubject, le)), await V();
|
|
761
476
|
}
|
|
762
|
-
async function
|
|
763
|
-
s?.(), s = void 0, u?.(), u = void 0,
|
|
477
|
+
async function de() {
|
|
478
|
+
s?.(), s = void 0, u?.(), u = void 0, v();
|
|
764
479
|
}
|
|
765
|
-
async function
|
|
766
|
-
let n =
|
|
767
|
-
return i ?
|
|
480
|
+
async function fe(e, t) {
|
|
481
|
+
let n = D.value.find((e) => e.useForSnapshot), r = D.value.find((e) => e.role === "snapshot"), i = e ?? r?._id ?? n?._id ?? k.value?._id ?? ee.value?._id ?? O.value?._id ?? A.value?._id;
|
|
482
|
+
return i ? oe(i, t) : Promise.resolve(void 0);
|
|
768
483
|
}
|
|
769
|
-
async function
|
|
770
|
-
let r = e ??
|
|
771
|
-
return r ?
|
|
484
|
+
async function pe(e, t, n = !1) {
|
|
485
|
+
let r = e ?? A.value?._id;
|
|
486
|
+
return r ? se(r, t, n) : Promise.resolve(void 0);
|
|
772
487
|
}
|
|
773
488
|
return await ue(), {
|
|
774
489
|
id: t._id,
|
|
775
|
-
name:
|
|
776
|
-
room:
|
|
777
|
-
nativeId:
|
|
778
|
-
disabled:
|
|
779
|
-
snooze:
|
|
780
|
-
isCloud:
|
|
490
|
+
name: y,
|
|
491
|
+
room: x,
|
|
492
|
+
nativeId: S,
|
|
493
|
+
disabled: w,
|
|
494
|
+
snooze: T,
|
|
495
|
+
isCloud: E,
|
|
781
496
|
connected: f,
|
|
782
497
|
frameWorkerConnected: p,
|
|
783
|
-
sources:
|
|
784
|
-
streamSource:
|
|
785
|
-
snapshotSource:
|
|
786
|
-
highResolutionSource:
|
|
787
|
-
midResolutionSource:
|
|
788
|
-
lowResolutionSource:
|
|
789
|
-
capabilities:
|
|
790
|
-
hasLight:
|
|
791
|
-
hasSiren:
|
|
792
|
-
hasDoorbell:
|
|
793
|
-
hasBattery:
|
|
794
|
-
hasAudioSensor:
|
|
795
|
-
hasMotionSensor:
|
|
796
|
-
hasObjectSensor:
|
|
797
|
-
hasPtz:
|
|
498
|
+
sources: D,
|
|
499
|
+
streamSource: A,
|
|
500
|
+
snapshotSource: j,
|
|
501
|
+
highResolutionSource: O,
|
|
502
|
+
midResolutionSource: ee,
|
|
503
|
+
lowResolutionSource: k,
|
|
504
|
+
capabilities: N,
|
|
505
|
+
hasLight: P,
|
|
506
|
+
hasSiren: F,
|
|
507
|
+
hasDoorbell: te,
|
|
508
|
+
hasBattery: ne,
|
|
509
|
+
hasAudioSensor: re,
|
|
510
|
+
hasMotionSensor: z,
|
|
511
|
+
hasObjectSensor: ie,
|
|
512
|
+
hasPtz: ae,
|
|
798
513
|
camera: d,
|
|
799
514
|
snapshot: m,
|
|
800
|
-
snapshotLoading:
|
|
801
|
-
fetchSnapshot:
|
|
802
|
-
probeStream:
|
|
803
|
-
streamUrl:
|
|
804
|
-
refreshStates:
|
|
515
|
+
snapshotLoading: g,
|
|
516
|
+
fetchSnapshot: fe,
|
|
517
|
+
probeStream: pe,
|
|
518
|
+
streamUrl: B,
|
|
519
|
+
refreshStates: V,
|
|
805
520
|
reconnect: ue,
|
|
806
|
-
close:
|
|
521
|
+
close: de
|
|
807
522
|
};
|
|
808
523
|
}
|
|
809
|
-
function
|
|
810
|
-
let e =
|
|
524
|
+
function se() {
|
|
525
|
+
let e = _(), t = b.deviceManagerNamespaces();
|
|
811
526
|
async function n(n) {
|
|
812
|
-
let r = await
|
|
813
|
-
if (r) return
|
|
527
|
+
let r = await C(e.rpc, (e) => e.createProxy(t.deviceManagerRpc).getCamera(n, "@camera.ui/browser"));
|
|
528
|
+
if (r) return oe(e, r);
|
|
814
529
|
}
|
|
815
530
|
return { getCamera: n };
|
|
816
531
|
}
|
|
817
|
-
var
|
|
532
|
+
var B = g({
|
|
818
533
|
releaseDelay: 1e3,
|
|
819
534
|
onRelease: (e, t) => t.close()
|
|
820
|
-
}),
|
|
821
|
-
function
|
|
822
|
-
|
|
535
|
+
}), V = /* @__PURE__ */ new Map();
|
|
536
|
+
function ce() {
|
|
537
|
+
B.clear(), V.clear();
|
|
823
538
|
}
|
|
824
|
-
async function
|
|
825
|
-
if (
|
|
539
|
+
async function le(e, t) {
|
|
540
|
+
if (B.has(t)) return B.acquire(t, () => {
|
|
826
541
|
throw Error("Should not create - already cached");
|
|
827
542
|
});
|
|
828
|
-
let n =
|
|
543
|
+
let n = V.get(t);
|
|
829
544
|
if (n) {
|
|
830
545
|
let e = await n;
|
|
831
|
-
return e ?
|
|
546
|
+
return e ? B.acquire(t, () => e) : void 0;
|
|
832
547
|
}
|
|
833
548
|
let r = e.getCamera(t);
|
|
834
|
-
|
|
549
|
+
V.set(t, r);
|
|
835
550
|
try {
|
|
836
551
|
let e = await r;
|
|
837
|
-
return e ?
|
|
552
|
+
return e ? B.acquire(t, () => e) : void 0;
|
|
838
553
|
} finally {
|
|
839
|
-
|
|
554
|
+
V.delete(t);
|
|
840
555
|
}
|
|
841
556
|
}
|
|
842
|
-
function
|
|
843
|
-
|
|
557
|
+
function ue(e) {
|
|
558
|
+
B.release(e);
|
|
844
559
|
}
|
|
845
|
-
function
|
|
846
|
-
|
|
560
|
+
function de() {
|
|
561
|
+
B.forEachValue((e) => {
|
|
847
562
|
e.reconnect().catch(() => {});
|
|
848
563
|
});
|
|
849
564
|
}
|
|
850
|
-
function
|
|
851
|
-
let { isConnected: t } =
|
|
565
|
+
function fe(e) {
|
|
566
|
+
let { isConnected: t } = _(), r = se(), i = c(), a = l(!1), u = l(!1), f = l(), p;
|
|
852
567
|
async function m(o) {
|
|
853
568
|
if (!t.value || !o) return;
|
|
854
|
-
if (p && p !== o && (
|
|
855
|
-
let e =
|
|
569
|
+
if (p && p !== o && (B.release(p), i.value = void 0, p = void 0), B.has(o)) {
|
|
570
|
+
let e = B.acquire(o, () => {
|
|
856
571
|
throw Error("Should not create - already cached");
|
|
857
572
|
});
|
|
858
573
|
p = o, i.value = e, u.value = !0;
|
|
859
574
|
return;
|
|
860
575
|
}
|
|
861
|
-
let s =
|
|
576
|
+
let s = V.get(o);
|
|
862
577
|
if (s) {
|
|
863
578
|
a.value = !0;
|
|
864
579
|
try {
|
|
865
580
|
let t = await s;
|
|
866
|
-
if (t &&
|
|
867
|
-
let e =
|
|
581
|
+
if (t && B.has(o) && n(e) === o) {
|
|
582
|
+
let e = B.acquire(o, () => t);
|
|
868
583
|
p = o, i.value = e;
|
|
869
584
|
}
|
|
870
585
|
} catch (e) {
|
|
@@ -876,12 +591,12 @@ function nt(e) {
|
|
|
876
591
|
}
|
|
877
592
|
a.value = !0, f.value = void 0;
|
|
878
593
|
let c = r.getCamera(o);
|
|
879
|
-
|
|
594
|
+
V.set(o, c);
|
|
880
595
|
try {
|
|
881
596
|
let t = await c;
|
|
882
597
|
if (t) {
|
|
883
|
-
if (
|
|
884
|
-
|
|
598
|
+
if (B.acquire(o, () => t), n(e) !== o) {
|
|
599
|
+
B.release(o);
|
|
885
600
|
return;
|
|
886
601
|
}
|
|
887
602
|
p = o, i.value = t;
|
|
@@ -889,17 +604,17 @@ function nt(e) {
|
|
|
889
604
|
} catch (e) {
|
|
890
605
|
f.value = e instanceof Error ? e : Error(String(e));
|
|
891
606
|
} finally {
|
|
892
|
-
|
|
607
|
+
V.delete(o), a.value = !1, u.value = !0;
|
|
893
608
|
}
|
|
894
609
|
}
|
|
895
610
|
async function h() {
|
|
896
611
|
let t = n(e);
|
|
897
|
-
t && (p &&= (
|
|
612
|
+
t && (p &&= (B.getRefCount(p) <= 1 ? B.forceRelease(p) : B.release(p), i.value = void 0, void 0), await m(t));
|
|
898
613
|
}
|
|
899
614
|
return s([t, () => n(e)], async ([e, t]) => {
|
|
900
|
-
e && t ? await m(t) : !e && p && (
|
|
615
|
+
e && t ? await m(t) : !e && p && (B.release(p), i.value = void 0, p = void 0);
|
|
901
616
|
}, { immediate: !0 }), d(() => {
|
|
902
|
-
p &&= (
|
|
617
|
+
p &&= (B.release(p), i.value = void 0, void 0);
|
|
903
618
|
}), {
|
|
904
619
|
camera: i,
|
|
905
620
|
isLoading: o(() => a.value || !u.value),
|
|
@@ -907,85 +622,85 @@ function nt(e) {
|
|
|
907
622
|
refresh: h
|
|
908
623
|
};
|
|
909
624
|
}
|
|
910
|
-
var
|
|
911
|
-
function
|
|
912
|
-
|
|
913
|
-
for (let e of
|
|
625
|
+
var pe = 2e3, me = 3e4, H = g({ releaseDelay: 1e3 }), he = /* @__PURE__ */ new Map(), ge = /* @__PURE__ */ new Set(), _e = /* @__PURE__ */ new Map(), U = /* @__PURE__ */ new Map(), ve = /* @__PURE__ */ new Map(), ye, be;
|
|
626
|
+
function W() {
|
|
627
|
+
H.clear(), he.clear();
|
|
628
|
+
for (let e of ge) try {
|
|
914
629
|
e();
|
|
915
630
|
} catch {}
|
|
916
631
|
}
|
|
917
|
-
function
|
|
918
|
-
for (let t of [...
|
|
632
|
+
function xe(e) {
|
|
633
|
+
for (let t of [..._e.get(e) ?? []]) t();
|
|
919
634
|
}
|
|
920
|
-
function
|
|
921
|
-
let t =
|
|
922
|
-
t && clearTimeout(t),
|
|
635
|
+
function Se(e) {
|
|
636
|
+
let t = U.get(e);
|
|
637
|
+
t && clearTimeout(t), U.delete(e), ve.delete(e);
|
|
923
638
|
}
|
|
924
|
-
function
|
|
925
|
-
if (
|
|
926
|
-
let t =
|
|
927
|
-
|
|
639
|
+
function Ce(e) {
|
|
640
|
+
if (U.has(e)) return;
|
|
641
|
+
let t = ve.get(e) ?? 0;
|
|
642
|
+
ve.set(e, t + 1);
|
|
928
643
|
let n = setTimeout(() => {
|
|
929
|
-
|
|
930
|
-
}, Math.min(
|
|
931
|
-
|
|
644
|
+
U.delete(e), xe(e);
|
|
645
|
+
}, Math.min(pe * 2 ** t, me));
|
|
646
|
+
U.set(e, n);
|
|
932
647
|
}
|
|
933
|
-
function
|
|
648
|
+
function we(e) {
|
|
934
649
|
if (e?.type !== "pluginStatusChanged") return;
|
|
935
650
|
let { pluginName: t, running: n } = e.data;
|
|
936
|
-
n ||
|
|
651
|
+
n || H.forceRelease(t), Se(t), xe(t);
|
|
937
652
|
}
|
|
938
|
-
async function
|
|
653
|
+
async function Te(e) {
|
|
939
654
|
let t = e.value;
|
|
940
|
-
if (t && t !==
|
|
941
|
-
|
|
655
|
+
if (t && t !== ye) {
|
|
656
|
+
be?.(), be = void 0, ye = t;
|
|
942
657
|
try {
|
|
943
|
-
|
|
658
|
+
be = await t.subscribe(b.coreManagerNamespaces().coreManagerSubject, we);
|
|
944
659
|
} catch {
|
|
945
|
-
|
|
660
|
+
ye = void 0;
|
|
946
661
|
}
|
|
947
662
|
}
|
|
948
663
|
}
|
|
949
|
-
function
|
|
950
|
-
let { rpc: t, isConnected: r } =
|
|
664
|
+
function Ee(e) {
|
|
665
|
+
let { rpc: t, isConnected: r } = _(), i = c(), a = l(), u = l(!1), f = l(!1), p = l(), m, h;
|
|
951
666
|
function g(e) {
|
|
952
|
-
if (
|
|
667
|
+
if (H.has(e)) return H.acquire(e, () => {
|
|
953
668
|
throw Error("Should not create - already cached");
|
|
954
669
|
});
|
|
955
670
|
}
|
|
956
|
-
function _(e) {
|
|
957
|
-
Y.release(e);
|
|
958
|
-
}
|
|
959
671
|
function v(e) {
|
|
960
|
-
|
|
961
|
-
h && y(h);
|
|
962
|
-
let t = st.get(e) ?? /* @__PURE__ */ new Set();
|
|
963
|
-
t.add(b), st.set(e, t), h = e;
|
|
672
|
+
H.release(e);
|
|
964
673
|
}
|
|
965
674
|
function y(e) {
|
|
966
|
-
|
|
967
|
-
|
|
675
|
+
if (h === e) return;
|
|
676
|
+
h && x(h);
|
|
677
|
+
let t = _e.get(e) ?? /* @__PURE__ */ new Set();
|
|
678
|
+
t.add(S), _e.set(e, t), h = e;
|
|
968
679
|
}
|
|
969
|
-
function
|
|
680
|
+
function x(e) {
|
|
681
|
+
let t = _e.get(e);
|
|
682
|
+
t && (t.delete(S), t.size === 0 && (_e.delete(e), Se(e))), h === e && (h = void 0);
|
|
683
|
+
}
|
|
684
|
+
function S() {
|
|
970
685
|
let t = n(e);
|
|
971
|
-
t &&
|
|
686
|
+
t && E(t, !0);
|
|
972
687
|
}
|
|
973
|
-
function
|
|
974
|
-
m &&= (
|
|
688
|
+
function w(e) {
|
|
689
|
+
m &&= (v(m), void 0), i.value = void 0, a.value = void 0, Ce(e);
|
|
975
690
|
}
|
|
976
|
-
function
|
|
977
|
-
m = e, i.value = t.proxy, a.value = t.contract, p.value = void 0,
|
|
691
|
+
function T(e, t) {
|
|
692
|
+
m = e, i.value = t.proxy, a.value = t.contract, p.value = void 0, Se(e);
|
|
978
693
|
}
|
|
979
|
-
async function
|
|
694
|
+
async function E(o, s = !1) {
|
|
980
695
|
if (!r.value || !o) return;
|
|
981
|
-
if (m && m !== o && (
|
|
696
|
+
if (m && m !== o && (x(m), v(m), i.value = void 0, a.value = void 0, m = void 0), y(o), Te(t), m === o && !H.has(o)) m = void 0, i.value = void 0, a.value = void 0;
|
|
982
697
|
else if (m === o && i.value) return;
|
|
983
698
|
let c = g(o);
|
|
984
699
|
if (c) {
|
|
985
|
-
|
|
700
|
+
T(o, c), f.value = !0;
|
|
986
701
|
return;
|
|
987
702
|
}
|
|
988
|
-
let l =
|
|
703
|
+
let l = he.get(o);
|
|
989
704
|
if (l) {
|
|
990
705
|
s || (u.value = !0);
|
|
991
706
|
try {
|
|
@@ -993,78 +708,78 @@ function vt(e) {
|
|
|
993
708
|
if (n(e) !== o) return;
|
|
994
709
|
if (t) {
|
|
995
710
|
let e = g(o);
|
|
996
|
-
e &&
|
|
997
|
-
} else
|
|
711
|
+
e && T(o, e);
|
|
712
|
+
} else w(o);
|
|
998
713
|
} catch (e) {
|
|
999
|
-
s || (p.value = e instanceof Error ? e : Error(String(e))),
|
|
714
|
+
s || (p.value = e instanceof Error ? e : Error(String(e))), w(o);
|
|
1000
715
|
} finally {
|
|
1001
716
|
s || (u.value = !1), f.value = !0;
|
|
1002
717
|
}
|
|
1003
718
|
return;
|
|
1004
719
|
}
|
|
1005
720
|
s || (u.value = !0, p.value = void 0);
|
|
1006
|
-
let d =
|
|
1007
|
-
let t =
|
|
721
|
+
let d = C(t, async (e) => {
|
|
722
|
+
let t = b.coreManagerNamespaces(), n = await e.createProxy(t.coreManagerRpc).getPlugin(o);
|
|
1008
723
|
if (!n) throw Error(`Plugin "${o}" not found`);
|
|
1009
724
|
if (n.running === !1) return;
|
|
1010
|
-
let r =
|
|
725
|
+
let r = b.pluginNamespaces(n.id);
|
|
1011
726
|
return {
|
|
1012
727
|
proxy: e.createProxy(r.pluginChildRpc),
|
|
1013
728
|
contract: n.contract
|
|
1014
729
|
};
|
|
1015
730
|
});
|
|
1016
|
-
|
|
731
|
+
he.set(o, d);
|
|
1017
732
|
try {
|
|
1018
733
|
let t = await d;
|
|
1019
734
|
if (t) {
|
|
1020
|
-
if (
|
|
1021
|
-
|
|
735
|
+
if (H.acquire(o, () => t), n(e) !== o) {
|
|
736
|
+
H.release(o);
|
|
1022
737
|
return;
|
|
1023
738
|
}
|
|
1024
|
-
|
|
1025
|
-
} else n(e) === o &&
|
|
739
|
+
T(o, t);
|
|
740
|
+
} else n(e) === o && w(o);
|
|
1026
741
|
} catch (e) {
|
|
1027
|
-
s || (p.value = e instanceof Error ? e : Error(String(e))),
|
|
742
|
+
s || (p.value = e instanceof Error ? e : Error(String(e))), w(o);
|
|
1028
743
|
} finally {
|
|
1029
|
-
|
|
744
|
+
he.delete(o), s || (u.value = !1), f.value = !0;
|
|
1030
745
|
}
|
|
1031
746
|
}
|
|
1032
|
-
async function
|
|
747
|
+
async function D() {
|
|
1033
748
|
let t = n(e);
|
|
1034
|
-
t && (m &&= (
|
|
749
|
+
t && (m &&= (H.getRefCount(m) <= 1 ? H.forceRelease(m) : H.release(m), i.value = void 0, a.value = void 0, void 0), await E(t));
|
|
1035
750
|
}
|
|
1036
|
-
let
|
|
751
|
+
let O = () => {
|
|
1037
752
|
m &&= (i.value = void 0, a.value = void 0, void 0);
|
|
1038
753
|
};
|
|
1039
|
-
return
|
|
754
|
+
return ge.add(O), s([
|
|
1040
755
|
r,
|
|
1041
756
|
() => n(e),
|
|
1042
757
|
t
|
|
1043
758
|
], async ([e, t, n], r) => {
|
|
1044
759
|
let o = r?.[2];
|
|
1045
|
-
m && o && o !== n && (
|
|
760
|
+
m && o && o !== n && (v(m), i.value = void 0, a.value = void 0, m = void 0), e && t && n ? await E(t) : (!e || !n) && m && (x(m), v(m), i.value = void 0, a.value = void 0, m = void 0);
|
|
1046
761
|
}, { immediate: !0 }), d(() => {
|
|
1047
|
-
|
|
762
|
+
ge.delete(O), x(n(e)), m &&= (x(m), v(m), i.value = void 0, a.value = void 0, void 0);
|
|
1048
763
|
}), {
|
|
1049
764
|
plugin: i,
|
|
1050
765
|
contract: a,
|
|
1051
766
|
isLoading: o(() => u.value || !f.value),
|
|
1052
767
|
error: p,
|
|
1053
|
-
refresh:
|
|
768
|
+
refresh: D
|
|
1054
769
|
};
|
|
1055
770
|
}
|
|
1056
|
-
function
|
|
771
|
+
function G(e) {
|
|
1057
772
|
if (e) return typeof e == "string" ? e : e.id;
|
|
1058
773
|
}
|
|
1059
|
-
function
|
|
774
|
+
function K(e) {
|
|
1060
775
|
return (t) => t.type === e;
|
|
1061
776
|
}
|
|
1062
|
-
var
|
|
1063
|
-
|
|
1064
|
-
var
|
|
1065
|
-
|
|
1066
|
-
var
|
|
1067
|
-
function
|
|
777
|
+
var De = K(h.Light), Oe = K(h.Siren), ke = K(h.Battery), Ae = K(h.Doorbell), je = K(h.Contact);
|
|
778
|
+
h.Motion, h.Object, h.Audio, h.Face, h.LicensePlate, h.Classifier, h.PTZ;
|
|
779
|
+
var Me = K(h.Switch), Ne = K(h.Lock), Pe = K(h.SecuritySystem), Fe = K(h.Temperature), Ie = K(h.Humidity), Le = K(h.Occupancy), Re = K(h.Smoke), ze = K(h.Leak);
|
|
780
|
+
h.Gas, h.CarbonMonoxide, h.Heat, h.Cold, h.Vibration, h.Tamper, h.Problem, h.Power, h.Illuminance, h.CarbonDioxide;
|
|
781
|
+
var Be = K(h.Garage);
|
|
782
|
+
function Ve(e, t, n) {
|
|
1068
783
|
let r = l(t.displayName ?? e.displayName ?? e.name), i = l(t.capabilities ?? e.capabilities ?? []), a = l([...e.assignedCameraIds]), o = l(e.exposed), s = l(e.connected), c = u({ ...t.properties }), d = [];
|
|
1069
784
|
return {
|
|
1070
785
|
id: e.id,
|
|
@@ -1084,11 +799,11 @@ function Pt(e, t, n) {
|
|
|
1084
799
|
},
|
|
1085
800
|
async setProperty(t, r) {
|
|
1086
801
|
let i = `plugin.${e.pluginId}.sensor.${e.id}.rpc`;
|
|
1087
|
-
await
|
|
802
|
+
await C(n, (e) => e.createProxy(i).updateValue(t, r));
|
|
1088
803
|
},
|
|
1089
804
|
async setDisplayName(t) {
|
|
1090
|
-
let r =
|
|
1091
|
-
await
|
|
805
|
+
let r = b.sensorRegistryNamespaces();
|
|
806
|
+
await C(n, (n) => n.createProxy(r.sensorsRpc).setDisplayName(e.id, t));
|
|
1092
807
|
},
|
|
1093
808
|
hasCapability(e) {
|
|
1094
809
|
return i.value.includes(e);
|
|
@@ -1104,8 +819,8 @@ function Pt(e, t, n) {
|
|
|
1104
819
|
}
|
|
1105
820
|
};
|
|
1106
821
|
}
|
|
1107
|
-
function
|
|
1108
|
-
let { sensorsSubject: t, sensorsRpc: n } =
|
|
822
|
+
function He(e) {
|
|
823
|
+
let { sensorsSubject: t, sensorsRpc: n } = b.sensorRegistryNamespaces(), r = "rpc" in e && "value" in e.rpc ? e : void 0, i = r ? r.rpc : c(e), a = c(/* @__PURE__ */ new Map()), s, u = /* @__PURE__ */ new Map(), d = l(!1), f;
|
|
1109
824
|
function p(e, t) {
|
|
1110
825
|
let n = a.value.get(e);
|
|
1111
826
|
if (n) {
|
|
@@ -1123,7 +838,7 @@ function Ft(e) {
|
|
|
1123
838
|
}
|
|
1124
839
|
async function m(e) {
|
|
1125
840
|
if (u.has(e)) return;
|
|
1126
|
-
let t =
|
|
841
|
+
let t = b.sensorEventNamespaces(e), n = await C(i, (n) => n.subscribe(t.sensorSubject, (t) => p(e, t)));
|
|
1127
842
|
u.set(e, n);
|
|
1128
843
|
}
|
|
1129
844
|
function h(e) {
|
|
@@ -1134,7 +849,7 @@ function Ft(e) {
|
|
|
1134
849
|
if (e.type === "sensor:added") {
|
|
1135
850
|
let t = e.data;
|
|
1136
851
|
if (a.value.has(t.sensor.id)) return;
|
|
1137
|
-
let n =
|
|
852
|
+
let n = Ve(t.sensor, t.state, i), r = new Map(a.value);
|
|
1138
853
|
r.set(t.sensor.id, n), a.value = r, m(t.sensor.id);
|
|
1139
854
|
} else if (e.type === "sensor:deleted") {
|
|
1140
855
|
let t = e.data;
|
|
@@ -1159,15 +874,15 @@ function Ft(e) {
|
|
|
1159
874
|
for (let e of u.values()) e();
|
|
1160
875
|
u.clear(), a.value = /* @__PURE__ */ new Map();
|
|
1161
876
|
let e = [];
|
|
1162
|
-
s = await
|
|
877
|
+
s = await C(i, (n) => n.subscribe(t, (t) => {
|
|
1163
878
|
e ? e.push(t) : g(t);
|
|
1164
879
|
}));
|
|
1165
|
-
let [r, o] = await
|
|
880
|
+
let [r, o] = await C(i, async (e) => {
|
|
1166
881
|
let t = e.createProxy(n);
|
|
1167
882
|
return Promise.all([t.getSensors(), t.getSensorStates()]);
|
|
1168
883
|
}), c = /* @__PURE__ */ new Map();
|
|
1169
884
|
for (let e of r) {
|
|
1170
|
-
let t =
|
|
885
|
+
let t = Ve(e, o[e.id] ?? {
|
|
1171
886
|
properties: {},
|
|
1172
887
|
capabilities: [],
|
|
1173
888
|
type: e.type
|
|
@@ -1190,7 +905,7 @@ function Ft(e) {
|
|
|
1190
905
|
async function y() {
|
|
1191
906
|
if (!d.value) return f || v(), f;
|
|
1192
907
|
}
|
|
1193
|
-
async function
|
|
908
|
+
async function x() {
|
|
1194
909
|
if (d.value = !1, f) {
|
|
1195
910
|
let e = f.catch(() => {}).then(() => _()).finally(() => {
|
|
1196
911
|
f === e && (f = void 0);
|
|
@@ -1199,65 +914,65 @@ function Ft(e) {
|
|
|
1199
914
|
}
|
|
1200
915
|
return v();
|
|
1201
916
|
}
|
|
1202
|
-
function
|
|
917
|
+
function S() {
|
|
1203
918
|
s?.(), s = void 0;
|
|
1204
919
|
for (let e of u.values()) e();
|
|
1205
920
|
u.clear(), a.value.clear(), d.value = !1, f = void 0;
|
|
1206
921
|
}
|
|
1207
|
-
let
|
|
922
|
+
let w = o(() => Array.from(a.value.values()));
|
|
1208
923
|
return {
|
|
1209
|
-
sensors:
|
|
924
|
+
sensors: w,
|
|
1210
925
|
isInitialized: o(() => d.value),
|
|
1211
926
|
getSensor(e) {
|
|
1212
927
|
return a.value.get(e);
|
|
1213
928
|
},
|
|
1214
929
|
getSensorsByType(e) {
|
|
1215
|
-
return
|
|
930
|
+
return w.value.filter((t) => t.type === e);
|
|
1216
931
|
},
|
|
1217
932
|
hasSensorType(e) {
|
|
1218
|
-
return
|
|
933
|
+
return w.value.some((t) => t.type === e);
|
|
1219
934
|
},
|
|
1220
935
|
async setDisplayName(e, t) {
|
|
1221
|
-
await
|
|
936
|
+
await C(i, (r) => r.createProxy(n).setDisplayName(e, t));
|
|
1222
937
|
},
|
|
1223
938
|
ensureInitialized: y,
|
|
1224
|
-
reconnect:
|
|
1225
|
-
close:
|
|
939
|
+
reconnect: x,
|
|
940
|
+
close: S
|
|
1226
941
|
};
|
|
1227
942
|
}
|
|
1228
|
-
var
|
|
943
|
+
var Ue = g({
|
|
1229
944
|
releaseDelay: 1e3,
|
|
1230
945
|
onRelease: (e, t) => t.manager.close()
|
|
1231
946
|
});
|
|
1232
|
-
function
|
|
1233
|
-
|
|
947
|
+
function We() {
|
|
948
|
+
Ue.clear();
|
|
1234
949
|
}
|
|
1235
|
-
function
|
|
1236
|
-
|
|
950
|
+
function Ge() {
|
|
951
|
+
Ue.forEachValue((e) => {
|
|
1237
952
|
e.initPromise = e.manager.reconnect();
|
|
1238
953
|
});
|
|
1239
954
|
}
|
|
1240
|
-
var
|
|
1241
|
-
function
|
|
1242
|
-
return
|
|
955
|
+
var Ke = "sensors";
|
|
956
|
+
function qe(e) {
|
|
957
|
+
return Ue.acquire(Ke, () => ({ manager: He(e) }));
|
|
1243
958
|
}
|
|
1244
|
-
function
|
|
1245
|
-
|
|
959
|
+
function Je() {
|
|
960
|
+
Ue.release(Ke);
|
|
1246
961
|
}
|
|
1247
|
-
function
|
|
962
|
+
function Ye() {
|
|
1248
963
|
return {
|
|
1249
964
|
acquired: !1,
|
|
1250
965
|
cachedManager: void 0
|
|
1251
966
|
};
|
|
1252
967
|
}
|
|
1253
|
-
function
|
|
968
|
+
function q(e, t) {
|
|
1254
969
|
return e.sensors.value.filter((e) => e.assignedCameraIds.value.includes(t));
|
|
1255
970
|
}
|
|
1256
|
-
async function
|
|
971
|
+
async function Xe(e, t, n, r, i) {
|
|
1257
972
|
if (t.rpc.value && n) {
|
|
1258
973
|
r.value = !0, i.value = void 0;
|
|
1259
974
|
try {
|
|
1260
|
-
let n =
|
|
975
|
+
let n = qe(t);
|
|
1261
976
|
return e.acquired = !0, e.cachedManager = n.manager, n.initPromise ||= n.manager.ensureInitialized(), await n.initPromise, n.manager;
|
|
1262
977
|
} catch (e) {
|
|
1263
978
|
i.value = e instanceof Error ? e : Error(String(e));
|
|
@@ -1267,45 +982,45 @@ async function Wt(e, t, n, r, i) {
|
|
|
1267
982
|
}
|
|
1268
983
|
}
|
|
1269
984
|
}
|
|
1270
|
-
function
|
|
1271
|
-
e.acquired && (
|
|
985
|
+
function J(e) {
|
|
986
|
+
e.acquired && (Je(), e.acquired = !1, e.cachedManager = void 0);
|
|
1272
987
|
}
|
|
1273
|
-
function
|
|
1274
|
-
let t =
|
|
1275
|
-
s([r, () =>
|
|
988
|
+
function Ze(e) {
|
|
989
|
+
let t = _(), { isConnected: r } = t, i = c([]), a = c(), u = l(!1), f = l(!1), p = l(), m = Ye();
|
|
990
|
+
s([r, () => G(n(e))], async ([e, n]) => {
|
|
1276
991
|
if (e && n) {
|
|
1277
|
-
let r = await
|
|
1278
|
-
a.value = r, i.value = r ?
|
|
1279
|
-
} else
|
|
992
|
+
let r = await Xe(m, t, e, u, p);
|
|
993
|
+
a.value = r, i.value = r ? q(r, n) : [], f.value = !0;
|
|
994
|
+
} else J(m), i.value = [], a.value = void 0;
|
|
1280
995
|
}, { immediate: !0 });
|
|
1281
996
|
let h = o(() => {
|
|
1282
997
|
if (!a.value) return [];
|
|
1283
|
-
let t =
|
|
1284
|
-
return t ?
|
|
998
|
+
let t = G(n(e));
|
|
999
|
+
return t ? q(a.value, t) : [];
|
|
1285
1000
|
});
|
|
1286
1001
|
return d(() => {
|
|
1287
|
-
|
|
1002
|
+
J(m), i.value = [];
|
|
1288
1003
|
}), {
|
|
1289
1004
|
sensors: h,
|
|
1290
1005
|
isLoading: o(() => u.value || !f.value),
|
|
1291
1006
|
error: p
|
|
1292
1007
|
};
|
|
1293
1008
|
}
|
|
1294
|
-
function
|
|
1295
|
-
let e =
|
|
1009
|
+
function Qe() {
|
|
1010
|
+
let e = _(), { isConnected: t } = e, n = c(), r = l(!1), i = l(!1), a = l(), u = Ye();
|
|
1296
1011
|
s([t], async ([t]) => {
|
|
1297
|
-
t ? (n.value = await
|
|
1012
|
+
t ? (n.value = await Xe(u, e, t, r, a), i.value = !0) : (J(u), n.value = void 0);
|
|
1298
1013
|
}, { immediate: !0 });
|
|
1299
1014
|
let f = o(() => n.value?.sensors.value ?? []);
|
|
1300
1015
|
return d(() => {
|
|
1301
|
-
|
|
1016
|
+
J(u);
|
|
1302
1017
|
}), {
|
|
1303
1018
|
sensors: f,
|
|
1304
1019
|
isLoading: o(() => r.value || !i.value),
|
|
1305
1020
|
error: a
|
|
1306
1021
|
};
|
|
1307
1022
|
}
|
|
1308
|
-
function
|
|
1023
|
+
function $e(e, t, n) {
|
|
1309
1024
|
let r = e.filter((e) => e.type === t);
|
|
1310
1025
|
if (n) {
|
|
1311
1026
|
let e = r.find((e) => e.pluginId === n);
|
|
@@ -1313,86 +1028,86 @@ function Jt(e, t, n) {
|
|
|
1313
1028
|
}
|
|
1314
1029
|
return r[0];
|
|
1315
1030
|
}
|
|
1316
|
-
function
|
|
1317
|
-
let i =
|
|
1031
|
+
function et(e, t, r) {
|
|
1032
|
+
let i = _(), { isConnected: a } = i, u = c(), f = c(), p = l(!1), m = l(!1), h = l(), g = Ye();
|
|
1318
1033
|
return s([
|
|
1319
1034
|
a,
|
|
1320
|
-
() =>
|
|
1035
|
+
() => G(n(e)),
|
|
1321
1036
|
() => n(r)
|
|
1322
1037
|
], async ([e, n, r]) => {
|
|
1323
1038
|
if (e && n) {
|
|
1324
|
-
let a = await
|
|
1325
|
-
f.value = a, u.value = a ?
|
|
1326
|
-
} else
|
|
1039
|
+
let a = await Xe(g, i, e, p, h);
|
|
1040
|
+
f.value = a, u.value = a ? $e(q(a, n), t, r) : void 0, m.value = !0;
|
|
1041
|
+
} else J(g), u.value = void 0;
|
|
1327
1042
|
}, { immediate: !0 }), s(() => {
|
|
1328
1043
|
if (!f.value) return;
|
|
1329
|
-
let i =
|
|
1330
|
-
if (i) return
|
|
1044
|
+
let i = G(n(e));
|
|
1045
|
+
if (i) return $e(q(f.value, i), t, n(r))?.id;
|
|
1331
1046
|
}, () => {
|
|
1332
1047
|
if (f.value) {
|
|
1333
|
-
let i =
|
|
1334
|
-
u.value = i ?
|
|
1048
|
+
let i = G(n(e));
|
|
1049
|
+
u.value = i ? $e(q(f.value, i), t, n(r)) : void 0;
|
|
1335
1050
|
}
|
|
1336
1051
|
}), d(() => {
|
|
1337
|
-
|
|
1052
|
+
J(g), u.value = void 0;
|
|
1338
1053
|
}), {
|
|
1339
1054
|
sensor: u,
|
|
1340
1055
|
isLoading: o(() => p.value || !m.value),
|
|
1341
1056
|
error: h
|
|
1342
1057
|
};
|
|
1343
1058
|
}
|
|
1344
|
-
function
|
|
1345
|
-
return
|
|
1059
|
+
function tt(e, t) {
|
|
1060
|
+
return et(e, h.Motion, t);
|
|
1346
1061
|
}
|
|
1347
|
-
function
|
|
1348
|
-
return
|
|
1062
|
+
function nt(e, t) {
|
|
1063
|
+
return et(e, h.Object, t);
|
|
1349
1064
|
}
|
|
1350
|
-
function
|
|
1351
|
-
return
|
|
1065
|
+
function rt(e, t) {
|
|
1066
|
+
return et(e, h.Face, t);
|
|
1352
1067
|
}
|
|
1353
|
-
function
|
|
1354
|
-
return
|
|
1068
|
+
function it(e, t) {
|
|
1069
|
+
return et(e, h.LicensePlate, t);
|
|
1355
1070
|
}
|
|
1356
|
-
function
|
|
1357
|
-
return
|
|
1071
|
+
function at(e) {
|
|
1072
|
+
return et(e, h.PTZ);
|
|
1358
1073
|
}
|
|
1359
|
-
function
|
|
1360
|
-
let t =
|
|
1361
|
-
s([r, () =>
|
|
1074
|
+
function ot(e) {
|
|
1075
|
+
let t = _(), { isConnected: r } = t, i = c([]), a = c(), u = l(!1), f = l(!1), p = l(), m = Ye();
|
|
1076
|
+
s([r, () => G(n(e))], async ([e, n]) => {
|
|
1362
1077
|
if (e && n) {
|
|
1363
|
-
let r = await
|
|
1364
|
-
a.value = r, i.value = r ?
|
|
1365
|
-
} else
|
|
1078
|
+
let r = await Xe(m, t, e, u, p);
|
|
1079
|
+
a.value = r, i.value = r ? q(r, n).filter((e) => e.type === h.Classifier) : [], f.value = !0;
|
|
1080
|
+
} else J(m), i.value = [], a.value = void 0;
|
|
1366
1081
|
}, { immediate: !0 });
|
|
1367
|
-
let
|
|
1082
|
+
let g = o(() => {
|
|
1368
1083
|
if (!a.value) return [];
|
|
1369
|
-
let t =
|
|
1370
|
-
return t ?
|
|
1084
|
+
let t = G(n(e));
|
|
1085
|
+
return t ? q(a.value, t).filter((e) => e.type === h.Classifier) : [];
|
|
1371
1086
|
});
|
|
1372
1087
|
return d(() => {
|
|
1373
|
-
|
|
1088
|
+
J(m), i.value = [];
|
|
1374
1089
|
}), {
|
|
1375
|
-
sensors:
|
|
1090
|
+
sensors: g,
|
|
1376
1091
|
isLoading: o(() => u.value || !f.value),
|
|
1377
1092
|
error: p
|
|
1378
1093
|
};
|
|
1379
1094
|
}
|
|
1380
|
-
var
|
|
1381
|
-
function
|
|
1382
|
-
|
|
1095
|
+
var st = /* @__PURE__ */ new Map(), ct = /* @__PURE__ */ new Map();
|
|
1096
|
+
function lt() {
|
|
1097
|
+
st.clear();
|
|
1383
1098
|
}
|
|
1384
|
-
async function
|
|
1385
|
-
let n =
|
|
1099
|
+
async function ut(e, t) {
|
|
1100
|
+
let n = st.get(t);
|
|
1386
1101
|
if (n) return n;
|
|
1387
|
-
let r =
|
|
1102
|
+
let r = ct.get(t);
|
|
1388
1103
|
if (r) return r;
|
|
1389
1104
|
let i = (async () => {
|
|
1390
|
-
let n =
|
|
1391
|
-
if (r) return
|
|
1392
|
-
})().finally(() =>
|
|
1393
|
-
return
|
|
1105
|
+
let n = b.coreManagerNamespaces(), r = await C(e, (e) => e.createProxy(n.coreManagerRpc).getPlugin(t));
|
|
1106
|
+
if (r) return st.set(t, r.id), r.id;
|
|
1107
|
+
})().finally(() => ct.delete(t));
|
|
1108
|
+
return ct.set(t, i), i;
|
|
1394
1109
|
}
|
|
1395
|
-
function
|
|
1110
|
+
function dt(e) {
|
|
1396
1111
|
let t = c(), n = l(!1), r = l(), i = null;
|
|
1397
1112
|
async function a() {
|
|
1398
1113
|
if (i) return i;
|
|
@@ -1450,44 +1165,44 @@ function sn(e) {
|
|
|
1450
1165
|
submitValue: u
|
|
1451
1166
|
};
|
|
1452
1167
|
}
|
|
1453
|
-
var
|
|
1454
|
-
function
|
|
1168
|
+
var ft = g({ releaseDelay: 1e3 });
|
|
1169
|
+
function pt(e) {
|
|
1455
1170
|
return `plugin:${e}`;
|
|
1456
1171
|
}
|
|
1457
|
-
function
|
|
1172
|
+
function mt(e, t) {
|
|
1458
1173
|
return `plugin:${e}:camera:${t}`;
|
|
1459
1174
|
}
|
|
1460
|
-
function
|
|
1175
|
+
function ht(e, t) {
|
|
1461
1176
|
return `plugin:${e}:sensor:${t}`;
|
|
1462
1177
|
}
|
|
1463
|
-
function
|
|
1464
|
-
return
|
|
1178
|
+
function gt(e, t) {
|
|
1179
|
+
return ft.acquire(e, () => dt(t()));
|
|
1465
1180
|
}
|
|
1466
|
-
function
|
|
1467
|
-
|
|
1181
|
+
function _t(e) {
|
|
1182
|
+
ft.release(e);
|
|
1468
1183
|
}
|
|
1469
|
-
function
|
|
1470
|
-
|
|
1184
|
+
function vt() {
|
|
1185
|
+
ft.clear(), lt();
|
|
1471
1186
|
}
|
|
1472
|
-
function
|
|
1187
|
+
function yt() {
|
|
1473
1188
|
return {
|
|
1474
1189
|
currentStorageKey: void 0,
|
|
1475
1190
|
cachedStorage: void 0
|
|
1476
1191
|
};
|
|
1477
1192
|
}
|
|
1478
|
-
function
|
|
1479
|
-
e.currentStorageKey &&= (
|
|
1193
|
+
function bt(e, t, n) {
|
|
1194
|
+
e.currentStorageKey &&= (_t(e.currentStorageKey), void 0), t.value = !1, e.cachedStorage = void 0, n.value = void 0;
|
|
1480
1195
|
}
|
|
1481
|
-
var
|
|
1196
|
+
var xt = [
|
|
1482
1197
|
2e3,
|
|
1483
1198
|
5e3,
|
|
1484
1199
|
1e4,
|
|
1485
1200
|
15e3
|
|
1486
1201
|
];
|
|
1487
|
-
function
|
|
1202
|
+
function St(e) {
|
|
1488
1203
|
return new Promise((t) => setTimeout(t, e));
|
|
1489
1204
|
}
|
|
1490
|
-
function
|
|
1205
|
+
function Ct(e, t, n, r) {
|
|
1491
1206
|
let i, a;
|
|
1492
1207
|
function o() {
|
|
1493
1208
|
if (!i || a !== e.cachedStorage) {
|
|
@@ -1505,8 +1220,8 @@ function yn(e, t, n, r) {
|
|
|
1505
1220
|
n.value = !0;
|
|
1506
1221
|
try {
|
|
1507
1222
|
let n = await i.getConfig();
|
|
1508
|
-
for (let t of
|
|
1509
|
-
if (!i.error.value || e.cachedStorage !== i || (await
|
|
1223
|
+
for (let t of xt) {
|
|
1224
|
+
if (!i.error.value || e.cachedStorage !== i || (await St(t), e.cachedStorage !== i)) break;
|
|
1510
1225
|
n = await i.getConfig();
|
|
1511
1226
|
}
|
|
1512
1227
|
return e.cachedStorage === i ? (t.value = i.config.value, r.value = i.error.value, n) : n;
|
|
@@ -1559,23 +1274,23 @@ function yn(e, t, n, r) {
|
|
|
1559
1274
|
submitValue: u
|
|
1560
1275
|
};
|
|
1561
1276
|
}
|
|
1562
|
-
function
|
|
1563
|
-
let { rpc: t, isConnected: r } =
|
|
1277
|
+
function wt(e) {
|
|
1278
|
+
let { rpc: t, isConnected: r } = _(), i = c(), a = l(!1), u = l(!1), f = l(), p = l(!1), m = yt(), h = Ct(m, i, a, f);
|
|
1564
1279
|
async function g(e) {
|
|
1565
1280
|
if (!t.value || !r.value) return !1;
|
|
1566
1281
|
try {
|
|
1567
|
-
let n = await
|
|
1282
|
+
let n = await ut(t, e);
|
|
1568
1283
|
if (!n) throw Error(`Plugin "${e}" not found`);
|
|
1569
|
-
let r =
|
|
1570
|
-
return m.currentStorageKey && m.currentStorageKey !== r &&
|
|
1571
|
-
let e =
|
|
1284
|
+
let r = pt(n);
|
|
1285
|
+
return m.currentStorageKey && m.currentStorageKey !== r && _t(m.currentStorageKey), m.currentStorageKey = r, m.cachedStorage = gt(r, () => {
|
|
1286
|
+
let e = b.pluginNamespaces(n);
|
|
1572
1287
|
return t.value.createProxy(e.pluginStorageRpc);
|
|
1573
1288
|
}), p.value = !0, !0;
|
|
1574
1289
|
} catch (e) {
|
|
1575
1290
|
return f.value = e instanceof Error ? e : Error(String(e)), p.value = !1, !1;
|
|
1576
1291
|
}
|
|
1577
1292
|
}
|
|
1578
|
-
async function
|
|
1293
|
+
async function v() {
|
|
1579
1294
|
if (!m.cachedStorage) {
|
|
1580
1295
|
let t = n(e);
|
|
1581
1296
|
if (!t || !await g(t)) return;
|
|
@@ -1583,102 +1298,102 @@ function bn(e) {
|
|
|
1583
1298
|
return h.getConfig();
|
|
1584
1299
|
}
|
|
1585
1300
|
return s([r, () => n(e)], async ([e, t]) => {
|
|
1586
|
-
e && t ? (await g(t), h.getConfig()) :
|
|
1587
|
-
}, { immediate: !0 }), d(() =>
|
|
1301
|
+
e && t ? (await g(t), h.getConfig()) : bt(m, p, i), u.value = !0;
|
|
1302
|
+
}, { immediate: !0 }), d(() => bt(m, p, i)), {
|
|
1588
1303
|
config: i,
|
|
1589
1304
|
isLoading: o(() => a.value || !u.value),
|
|
1590
1305
|
error: f,
|
|
1591
1306
|
isConnected: p,
|
|
1592
|
-
getConfig:
|
|
1307
|
+
getConfig: v,
|
|
1593
1308
|
setValue: h.setValue,
|
|
1594
1309
|
setConfig: h.setConfig,
|
|
1595
1310
|
submitValue: h.submitValue
|
|
1596
1311
|
};
|
|
1597
1312
|
}
|
|
1598
|
-
function
|
|
1599
|
-
let { rpc: r, isConnected: i } =
|
|
1600
|
-
async function
|
|
1313
|
+
function Tt(e, t) {
|
|
1314
|
+
let { rpc: r, isConnected: i } = _(), a = c(), u = l(!1), f = l(!1), p = l(), m = l(!1), h = yt(), g = Ct(h, a, u, p);
|
|
1315
|
+
async function v(e, t) {
|
|
1601
1316
|
if (!r.value || !i.value) return !1;
|
|
1602
1317
|
try {
|
|
1603
|
-
let n = await
|
|
1318
|
+
let n = await ut(r, t);
|
|
1604
1319
|
if (!n) throw Error(`Plugin "${t}" not found`);
|
|
1605
|
-
let i =
|
|
1606
|
-
return h.currentStorageKey && h.currentStorageKey !== i &&
|
|
1607
|
-
let t =
|
|
1320
|
+
let i = mt(n, e);
|
|
1321
|
+
return h.currentStorageKey && h.currentStorageKey !== i && _t(h.currentStorageKey), h.currentStorageKey = i, h.cachedStorage = gt(i, () => {
|
|
1322
|
+
let t = b.pluginCameraNamespaces(n, e);
|
|
1608
1323
|
return r.value.createProxy(t.cameraStorageRpc);
|
|
1609
1324
|
}), m.value = !0, !0;
|
|
1610
1325
|
} catch (e) {
|
|
1611
1326
|
return p.value = e instanceof Error ? e : Error(String(e)), m.value = !1, !1;
|
|
1612
1327
|
}
|
|
1613
1328
|
}
|
|
1614
|
-
async function
|
|
1615
|
-
let r =
|
|
1616
|
-
if (r && i && (h.cachedStorage || await
|
|
1329
|
+
async function y() {
|
|
1330
|
+
let r = G(n(e)), i = n(t);
|
|
1331
|
+
if (r && i && (h.cachedStorage || await v(r, i))) return g.getConfig();
|
|
1617
1332
|
}
|
|
1618
1333
|
return s([
|
|
1619
1334
|
i,
|
|
1620
|
-
() =>
|
|
1335
|
+
() => G(n(e)),
|
|
1621
1336
|
() => n(t)
|
|
1622
1337
|
], async ([e, t, n]) => {
|
|
1623
|
-
e && t && n ? (await
|
|
1624
|
-
}, { immediate: !0 }), d(() =>
|
|
1338
|
+
e && t && n ? (await v(t, n), g.getConfig()) : bt(h, m, a), f.value = !0;
|
|
1339
|
+
}, { immediate: !0 }), d(() => bt(h, m, a)), {
|
|
1625
1340
|
config: a,
|
|
1626
1341
|
isLoading: o(() => u.value || !f.value),
|
|
1627
1342
|
error: p,
|
|
1628
1343
|
isConnected: m,
|
|
1629
|
-
getConfig:
|
|
1344
|
+
getConfig: y,
|
|
1630
1345
|
setValue: g.setValue,
|
|
1631
1346
|
setConfig: g.setConfig,
|
|
1632
1347
|
submitValue: g.submitValue
|
|
1633
1348
|
};
|
|
1634
1349
|
}
|
|
1635
|
-
function
|
|
1636
|
-
let { rpc: r, isConnected: i } =
|
|
1637
|
-
function
|
|
1350
|
+
function Et(e, t) {
|
|
1351
|
+
let { rpc: r, isConnected: i } = _(), a = c(), u = l(!1), f = l(!1), p = l(), m = l(!1), h = yt(), g = Ct(h, a, u, p);
|
|
1352
|
+
function v(e, t) {
|
|
1638
1353
|
if (!r.value || !i.value) return !1;
|
|
1639
1354
|
try {
|
|
1640
|
-
let n =
|
|
1641
|
-
return h.currentStorageKey && h.currentStorageKey !== n &&
|
|
1642
|
-
let n =
|
|
1355
|
+
let n = ht(t, e);
|
|
1356
|
+
return h.currentStorageKey && h.currentStorageKey !== n && _t(h.currentStorageKey), h.currentStorageKey = n, h.cachedStorage = gt(n, () => {
|
|
1357
|
+
let n = b.pluginSensorNamespaces(t, e);
|
|
1643
1358
|
return r.value.createProxy(n.sensorStorageRpc);
|
|
1644
1359
|
}), m.value = !0, !0;
|
|
1645
1360
|
} catch (e) {
|
|
1646
1361
|
return p.value = e instanceof Error ? e : Error(String(e)), m.value = !1, !1;
|
|
1647
1362
|
}
|
|
1648
1363
|
}
|
|
1649
|
-
async function
|
|
1364
|
+
async function y() {
|
|
1650
1365
|
let r = n(e), i = n(t);
|
|
1651
|
-
if (r && i && (h.cachedStorage ||
|
|
1366
|
+
if (r && i && (h.cachedStorage || v(r, i))) return g.getConfig();
|
|
1652
1367
|
}
|
|
1653
1368
|
return s([
|
|
1654
1369
|
i,
|
|
1655
1370
|
() => n(e),
|
|
1656
1371
|
() => n(t)
|
|
1657
1372
|
], ([e, t, n]) => {
|
|
1658
|
-
e && t && n ? (
|
|
1659
|
-
}, { immediate: !0 }), d(() =>
|
|
1373
|
+
e && t && n ? (v(t, n), g.getConfig()) : bt(h, m, a), f.value = !0;
|
|
1374
|
+
}, { immediate: !0 }), d(() => bt(h, m, a)), {
|
|
1660
1375
|
config: a,
|
|
1661
1376
|
isLoading: o(() => u.value || !f.value),
|
|
1662
1377
|
error: p,
|
|
1663
1378
|
isConnected: m,
|
|
1664
|
-
getConfig:
|
|
1379
|
+
getConfig: y,
|
|
1665
1380
|
setValue: g.setValue,
|
|
1666
1381
|
setConfig: g.setConfig,
|
|
1667
1382
|
submitValue: g.submitValue
|
|
1668
1383
|
};
|
|
1669
1384
|
}
|
|
1670
|
-
function
|
|
1671
|
-
|
|
1385
|
+
function Dt() {
|
|
1386
|
+
W(), ce(), vt(), We(), ie();
|
|
1672
1387
|
}
|
|
1673
|
-
function
|
|
1674
|
-
|
|
1388
|
+
function Ot() {
|
|
1389
|
+
W(), de(), Ge();
|
|
1675
1390
|
}
|
|
1676
|
-
var
|
|
1677
|
-
function
|
|
1391
|
+
var kt = Symbol("camera-ui"), At = new m("plugin");
|
|
1392
|
+
function jt(e) {
|
|
1678
1393
|
return "rpc" in e && "isConnected" in e;
|
|
1679
1394
|
}
|
|
1680
|
-
var
|
|
1681
|
-
function
|
|
1395
|
+
var Mt = 4e3;
|
|
1396
|
+
function Nt(e) {
|
|
1682
1397
|
let { natsTransport: t, target: n, wsTransport: a } = e, s = t.getClient() !== null, u = t.getClient(), d = null, f = !1, p = c(t.getClient() ?? void 0), m = l(t.getClient()?.isConnected ?? !1), h = l(void 0), g = o(() => n.value?.endpoint.url), _ = o(() => n.value?.tokens.access), v = o(() => {
|
|
1683
1398
|
let e = n.value;
|
|
1684
1399
|
if (e?.tokens.proxySession) return { session: e.tokens.proxySession };
|
|
@@ -1695,19 +1410,19 @@ function kn(e) {
|
|
|
1695
1410
|
if (t) for (let e of t) try {
|
|
1696
1411
|
e();
|
|
1697
1412
|
} catch (e) {
|
|
1698
|
-
|
|
1413
|
+
At.warn("context listener threw:", e);
|
|
1699
1414
|
}
|
|
1700
1415
|
}
|
|
1701
1416
|
return t.subscribeClient((e) => {
|
|
1702
1417
|
if (e) {
|
|
1703
1418
|
d !== null && (clearTimeout(d), d = null);
|
|
1704
1419
|
let t = m.value, n = e !== u;
|
|
1705
|
-
u = e, p.value = e, m.value = !0, h.value = void 0, !t || n ? (
|
|
1420
|
+
u = e, p.value = e, m.value = !0, h.value = void 0, !t || n ? (Ot(), s && S("reconnected"), s = !0) : f && s && S("reconnected"), f = !1;
|
|
1706
1421
|
} else {
|
|
1707
1422
|
if (f = !0, p.value = void 0, d !== null || !m.value) return;
|
|
1708
1423
|
d = setTimeout(() => {
|
|
1709
1424
|
d = null, m.value = !1, S("disconnected");
|
|
1710
|
-
},
|
|
1425
|
+
}, Mt);
|
|
1711
1426
|
}
|
|
1712
1427
|
}), t.on("auth-error", (e) => {
|
|
1713
1428
|
h.value = Error(e.message ?? "auth-error");
|
|
@@ -1728,19 +1443,19 @@ function kn(e) {
|
|
|
1728
1443
|
off: x
|
|
1729
1444
|
});
|
|
1730
1445
|
}
|
|
1731
|
-
function
|
|
1446
|
+
function Pt(e) {
|
|
1732
1447
|
return { install(t) {
|
|
1733
|
-
let n =
|
|
1734
|
-
t.provide(
|
|
1448
|
+
let n = jt(e) ? e : Nt(e);
|
|
1449
|
+
t.provide(kt, n);
|
|
1735
1450
|
} };
|
|
1736
1451
|
}
|
|
1737
|
-
var
|
|
1452
|
+
var Ft = {
|
|
1738
1453
|
standbyTimeout: 5e3,
|
|
1739
1454
|
activityTimeout: 5e3
|
|
1740
1455
|
};
|
|
1741
|
-
function
|
|
1456
|
+
function It(e) {
|
|
1742
1457
|
let { initialMode: t = "always-on", config: n = {}, onStreamStart: r, onStreamStop: i, isStreamPlaying: a } = e, o = {
|
|
1743
|
-
...
|
|
1458
|
+
...Ft,
|
|
1744
1459
|
...n
|
|
1745
1460
|
}, s = l(t), c = l(!1), u = l(!1), d, f;
|
|
1746
1461
|
function p() {
|
|
@@ -1797,7 +1512,7 @@ function Mn(e) {
|
|
|
1797
1512
|
function C() {
|
|
1798
1513
|
s.value === "standby" && !c.value && y();
|
|
1799
1514
|
}
|
|
1800
|
-
function
|
|
1515
|
+
function w() {
|
|
1801
1516
|
h();
|
|
1802
1517
|
}
|
|
1803
1518
|
return {
|
|
@@ -1808,81 +1523,81 @@ function Mn(e) {
|
|
|
1808
1523
|
reportActivity: x,
|
|
1809
1524
|
resumeFromStandby: S,
|
|
1810
1525
|
resetIdleTimer: C,
|
|
1811
|
-
dispose:
|
|
1526
|
+
dispose: w
|
|
1812
1527
|
};
|
|
1813
1528
|
}
|
|
1814
|
-
var
|
|
1815
|
-
function
|
|
1816
|
-
|
|
1529
|
+
var Lt = 3e4, Y = new m("TabVisibility"), Rt = l(typeof document > "u" || document.visibilityState === "visible"), zt = null, Bt = /* @__PURE__ */ new Set(), Vt = /* @__PURE__ */ new Set(), Ht = /* @__PURE__ */ new Set(), Ut = !1;
|
|
1530
|
+
function Wt(e) {
|
|
1531
|
+
Y.debug(`paused listener fired (delay ${e.delayMs}ms reached)`);
|
|
1817
1532
|
try {
|
|
1818
1533
|
e.cb();
|
|
1819
1534
|
} catch (e) {
|
|
1820
|
-
|
|
1535
|
+
Y.error("onTabPaused listener threw:", e);
|
|
1821
1536
|
}
|
|
1822
1537
|
}
|
|
1823
|
-
function
|
|
1824
|
-
|
|
1825
|
-
if (e.timer = null,
|
|
1826
|
-
|
|
1538
|
+
function Gt(e) {
|
|
1539
|
+
Y.debug(`paused listener scheduled in ${e.delayMs}ms`), e.timer = setTimeout(() => {
|
|
1540
|
+
if (e.timer = null, Rt.value) {
|
|
1541
|
+
Y.debug("paused listener skipped — tab visible before delay");
|
|
1827
1542
|
return;
|
|
1828
1543
|
}
|
|
1829
|
-
|
|
1544
|
+
Wt(e);
|
|
1830
1545
|
}, e.delayMs);
|
|
1831
1546
|
}
|
|
1832
|
-
function
|
|
1833
|
-
for (let e of
|
|
1547
|
+
function Kt() {
|
|
1548
|
+
for (let e of Vt) e.timer !== null && (clearTimeout(e.timer), e.timer = null);
|
|
1834
1549
|
}
|
|
1835
|
-
function
|
|
1836
|
-
|
|
1550
|
+
function qt() {
|
|
1551
|
+
Ut || typeof document > "u" || (Ut = !0, document.addEventListener("visibilitychange", () => {
|
|
1837
1552
|
let e = document.visibilityState === "visible";
|
|
1838
|
-
if (!e &&
|
|
1839
|
-
|
|
1840
|
-
for (let e of
|
|
1553
|
+
if (!e && Rt.value) {
|
|
1554
|
+
Rt.value = !1, zt = Date.now(), Y.debug(`tab → hidden (hidden=${Bt.size} paused=${Vt.size})`);
|
|
1555
|
+
for (let e of Bt) try {
|
|
1841
1556
|
e.cb();
|
|
1842
1557
|
} catch (e) {
|
|
1843
|
-
|
|
1558
|
+
Y.error("onTabHidden listener threw:", e);
|
|
1844
1559
|
}
|
|
1845
|
-
for (let e of
|
|
1846
|
-
} else if (e && !
|
|
1847
|
-
|
|
1848
|
-
let e =
|
|
1849
|
-
|
|
1850
|
-
for (let { cb: t } of
|
|
1560
|
+
for (let e of Vt) Gt(e);
|
|
1561
|
+
} else if (e && !Rt.value) {
|
|
1562
|
+
Kt();
|
|
1563
|
+
let e = zt == null ? 0 : Date.now() - zt;
|
|
1564
|
+
zt = null, Rt.value = !0, Y.debug(`tab → visible (hiddenMs=${e}, visible-listeners=${Ht.size})`);
|
|
1565
|
+
for (let { cb: t } of Ht) try {
|
|
1851
1566
|
t({ hiddenMs: e });
|
|
1852
1567
|
} catch (e) {
|
|
1853
|
-
|
|
1568
|
+
Y.error("onTabVisible listener threw:", e);
|
|
1854
1569
|
}
|
|
1855
1570
|
}
|
|
1856
1571
|
}));
|
|
1857
1572
|
}
|
|
1858
|
-
function
|
|
1859
|
-
|
|
1860
|
-
let e = o(() =>
|
|
1573
|
+
function Jt() {
|
|
1574
|
+
qt();
|
|
1575
|
+
let e = o(() => Rt.value);
|
|
1861
1576
|
function t(e) {
|
|
1862
1577
|
let t = { cb: e };
|
|
1863
|
-
|
|
1578
|
+
Bt.add(t);
|
|
1864
1579
|
let n = () => {
|
|
1865
|
-
|
|
1580
|
+
Bt.delete(t);
|
|
1866
1581
|
};
|
|
1867
1582
|
return d(n), n;
|
|
1868
1583
|
}
|
|
1869
1584
|
function n(e, t = {}) {
|
|
1870
1585
|
let n = {
|
|
1871
1586
|
cb: e,
|
|
1872
|
-
delayMs: t.delayMs ??
|
|
1587
|
+
delayMs: t.delayMs ?? Lt,
|
|
1873
1588
|
timer: null
|
|
1874
1589
|
};
|
|
1875
|
-
|
|
1590
|
+
Vt.add(n);
|
|
1876
1591
|
let r = () => {
|
|
1877
|
-
n.timer !== null && (clearTimeout(n.timer), n.timer = null),
|
|
1592
|
+
n.timer !== null && (clearTimeout(n.timer), n.timer = null), Vt.delete(n);
|
|
1878
1593
|
};
|
|
1879
1594
|
return d(r), r;
|
|
1880
1595
|
}
|
|
1881
1596
|
function r(e) {
|
|
1882
1597
|
let t = { cb: e };
|
|
1883
|
-
|
|
1598
|
+
Ht.add(t);
|
|
1884
1599
|
let n = () => {
|
|
1885
|
-
|
|
1600
|
+
Ht.delete(t);
|
|
1886
1601
|
};
|
|
1887
1602
|
return d(n), n;
|
|
1888
1603
|
}
|
|
@@ -1893,7 +1608,7 @@ function Gn() {
|
|
|
1893
1608
|
onTabVisible: r
|
|
1894
1609
|
};
|
|
1895
1610
|
}
|
|
1896
|
-
var
|
|
1611
|
+
var X = {
|
|
1897
1612
|
WEBRTC: {
|
|
1898
1613
|
RECONNECT_DELAY: 1e3,
|
|
1899
1614
|
CONNECT_TIMEOUT: 1e4,
|
|
@@ -1927,12 +1642,12 @@ var Z = {
|
|
|
1927
1642
|
"PCMA"
|
|
1928
1643
|
]
|
|
1929
1644
|
}
|
|
1930
|
-
},
|
|
1931
|
-
function
|
|
1645
|
+
}, Yt = "hvc1.1.6.L153.B0";
|
|
1646
|
+
function Xt() {
|
|
1932
1647
|
return navigator.userAgent.match(/version\/(\d+)/i);
|
|
1933
1648
|
}
|
|
1934
|
-
function
|
|
1935
|
-
let e = [...
|
|
1649
|
+
function Zt() {
|
|
1650
|
+
let e = [...X.CODECS.DEFAULT], t = Xt();
|
|
1936
1651
|
if (t?.[1]) {
|
|
1937
1652
|
let n = parseInt(t[1], 10);
|
|
1938
1653
|
if (n < 13) {
|
|
@@ -1948,34 +1663,34 @@ function Jn() {
|
|
|
1948
1663
|
}
|
|
1949
1664
|
return e;
|
|
1950
1665
|
}
|
|
1951
|
-
function
|
|
1666
|
+
function Qt(e, t) {
|
|
1952
1667
|
return e.filter((e) => t(`video/mp4; codecs="${e}"`)).join(",");
|
|
1953
1668
|
}
|
|
1954
|
-
function
|
|
1955
|
-
return
|
|
1956
|
-
}
|
|
1957
|
-
function Zn(e) {
|
|
1958
|
-
return Z.CODECS.WEBRTC_VIDEO.includes(e) ? !0 : e === "H265" && nr();
|
|
1669
|
+
function $t(e) {
|
|
1670
|
+
return X.CODECS.WEBRTC_AUDIO.includes(e);
|
|
1959
1671
|
}
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
1672
|
+
function en(e) {
|
|
1673
|
+
return X.CODECS.WEBRTC_VIDEO.includes(e) ? !0 : e === "H265" && on();
|
|
1674
|
+
}
|
|
1675
|
+
var tn, nn;
|
|
1676
|
+
function rn(e) {
|
|
1677
|
+
if (e === "auto") return rn("webrtc") || rn("mse");
|
|
1678
|
+
if (e === "mse") return tn === void 0 && (tn = !!ln()?.isTypeSupported(`video/mp4; codecs="${Yt}"`)), tn;
|
|
1679
|
+
if (nn === void 0) try {
|
|
1680
|
+
nn = !!(RTCRtpReceiver?.getCapabilities("video")?.codecs)?.some((e) => e.mimeType.toLowerCase().includes("h265") || e.mimeType.toLowerCase().includes("hevc"));
|
|
1966
1681
|
} catch {
|
|
1967
|
-
|
|
1682
|
+
nn = !1;
|
|
1968
1683
|
}
|
|
1969
|
-
return
|
|
1684
|
+
return nn;
|
|
1970
1685
|
}
|
|
1971
|
-
function
|
|
1972
|
-
e === "mse" ?
|
|
1686
|
+
function an(e) {
|
|
1687
|
+
e === "mse" ? tn = !1 : nn = !1;
|
|
1973
1688
|
}
|
|
1974
|
-
function
|
|
1975
|
-
return
|
|
1689
|
+
function on() {
|
|
1690
|
+
return rn("webrtc");
|
|
1976
1691
|
}
|
|
1977
|
-
function
|
|
1978
|
-
let t = e.audio.filter((e) => e.direction === "sendonly"), n = e.video.filter((e) => e.direction === "sendonly"), r = t.length === 0 || t.some((e) =>
|
|
1692
|
+
function sn(e) {
|
|
1693
|
+
let t = e.audio.filter((e) => e.direction === "sendonly"), n = e.video.filter((e) => e.direction === "sendonly"), r = t.length === 0 || t.some((e) => $t(e.codec)), i = n.length === 0 || n.some((e) => en(e.codec)), a = [];
|
|
1979
1694
|
return r || a.push(...t.map((e) => e.codec)), i || a.push(...n.map((e) => e.codec)), {
|
|
1980
1695
|
compatible: r && i,
|
|
1981
1696
|
audioCompatible: r,
|
|
@@ -1983,14 +1698,14 @@ function rr(e) {
|
|
|
1983
1698
|
incompatibleCodecs: a
|
|
1984
1699
|
};
|
|
1985
1700
|
}
|
|
1986
|
-
function
|
|
1701
|
+
function cn() {
|
|
1987
1702
|
return "ManagedMediaSource" in window;
|
|
1988
1703
|
}
|
|
1989
|
-
function
|
|
1990
|
-
if (
|
|
1704
|
+
function ln() {
|
|
1705
|
+
if (cn()) return window.ManagedMediaSource;
|
|
1991
1706
|
if ("MediaSource" in window) return window.MediaSource;
|
|
1992
1707
|
}
|
|
1993
|
-
function
|
|
1708
|
+
function un(e, t) {
|
|
1994
1709
|
return new Promise((n, r) => {
|
|
1995
1710
|
if (t.aborted) {
|
|
1996
1711
|
r(new DOMException("Aborted", "AbortError"));
|
|
@@ -2002,20 +1717,20 @@ function or(e, t) {
|
|
|
2002
1717
|
}, { once: !0 });
|
|
2003
1718
|
});
|
|
2004
1719
|
}
|
|
2005
|
-
function
|
|
2006
|
-
let { videoElement: t, onReady: n, onFirstData: r, onError: i, signal: a } = e, o = null, s = null, c = null, l = !1, u = !1, d = new Uint8Array(
|
|
1720
|
+
function dn(e) {
|
|
1721
|
+
let { videoElement: t, onReady: n, onFirstData: r, onError: i, signal: a } = e, o = null, s = null, c = null, l = !1, u = !1, d = new Uint8Array(X.MSE.BUFFER_SIZE), f = 0, p = [], m = Zt();
|
|
2007
1722
|
function h() {
|
|
2008
1723
|
if (a.aborted) return;
|
|
2009
|
-
let e =
|
|
1724
|
+
let e = ln();
|
|
2010
1725
|
if (!e) {
|
|
2011
1726
|
i(/* @__PURE__ */ Error("MediaSource not supported"));
|
|
2012
1727
|
return;
|
|
2013
1728
|
}
|
|
2014
1729
|
o = new e();
|
|
2015
|
-
let n =
|
|
1730
|
+
let n = cn(), r = t.src;
|
|
2016
1731
|
return o.addEventListener("sourceopen", () => {
|
|
2017
1732
|
a.aborted || !n && r && r.startsWith("blob:") && r !== t.src && URL.revokeObjectURL(r);
|
|
2018
|
-
}, { once: !0 }), n ? (t.disableRemotePlayback = !0, t.srcObject = o) : (c = URL.createObjectURL(o), t.src = c, t.srcObject = null),
|
|
1733
|
+
}, { once: !0 }), n ? (t.disableRemotePlayback = !0, t.srcObject = o) : (c = URL.createObjectURL(o), t.src = c, t.srcObject = null), Qt(m, e.isTypeSupported.bind(e));
|
|
2019
1734
|
}
|
|
2020
1735
|
function g(e) {
|
|
2021
1736
|
if (a.aborted || !o) return;
|
|
@@ -2025,8 +1740,8 @@ function sr(e) {
|
|
|
2025
1740
|
}, { once: !0 });
|
|
2026
1741
|
return;
|
|
2027
1742
|
}
|
|
2028
|
-
f = 0, d = new Uint8Array(
|
|
2029
|
-
let t =
|
|
1743
|
+
f = 0, d = new Uint8Array(X.MSE.BUFFER_SIZE);
|
|
1744
|
+
let t = ln();
|
|
2030
1745
|
if (t && !t.isTypeSupported(e)) {
|
|
2031
1746
|
i(/* @__PURE__ */ Error(`MIME type not supported: ${e}`));
|
|
2032
1747
|
return;
|
|
@@ -2050,7 +1765,7 @@ function sr(e) {
|
|
|
2050
1765
|
y(e) || i(e instanceof Error ? e : Error(String(e)));
|
|
2051
1766
|
}
|
|
2052
1767
|
if (!s.updating && s.buffered?.length) {
|
|
2053
|
-
let e = s.buffered.end(s.buffered.length - 1), n = e -
|
|
1768
|
+
let e = s.buffered.end(s.buffered.length - 1), n = e - X.MSE.BUFFER_WINDOW, i = s.buffered.start(0);
|
|
2054
1769
|
if (u || (u = !0, r()), n > i) try {
|
|
2055
1770
|
s.remove(i, n), o.setLiveSeekableRange(n, e);
|
|
2056
1771
|
} catch {}
|
|
@@ -2090,7 +1805,7 @@ function sr(e) {
|
|
|
2090
1805
|
function y(e) {
|
|
2091
1806
|
if (e?.name !== "QuotaExceededError" || !s || s.updating || !s.buffered?.length) return !1;
|
|
2092
1807
|
try {
|
|
2093
|
-
let e = s.buffered.start(0), t = s.buffered.end(s.buffered.length - 1), n = Math.max(e + 1, t -
|
|
1808
|
+
let e = s.buffered.start(0), t = s.buffered.end(s.buffered.length - 1), n = Math.max(e + 1, t - X.MSE.BUFFER_WINDOW);
|
|
2094
1809
|
return n <= e ? !1 : (s.remove(e, n), !0);
|
|
2095
1810
|
} catch {
|
|
2096
1811
|
return !1;
|
|
@@ -2124,17 +1839,17 @@ function sr(e) {
|
|
|
2124
1839
|
close: b
|
|
2125
1840
|
};
|
|
2126
1841
|
}
|
|
2127
|
-
async function
|
|
1842
|
+
async function Z(e) {
|
|
2128
1843
|
try {
|
|
2129
1844
|
await e.play();
|
|
2130
1845
|
} catch {
|
|
2131
|
-
e.muted || (e.muted = !0, await
|
|
1846
|
+
e.muted || (e.muted = !0, await Z(e));
|
|
2132
1847
|
}
|
|
2133
1848
|
}
|
|
2134
|
-
function
|
|
1849
|
+
function fn(e, t, n) {
|
|
2135
1850
|
let r = new RTCPeerConnection({
|
|
2136
1851
|
bundlePolicy: "max-bundle",
|
|
2137
|
-
iceServers: [...
|
|
1852
|
+
iceServers: [...X.WEBRTC.ICE_SERVERS]
|
|
2138
1853
|
});
|
|
2139
1854
|
return r.onicecandidate = (r) => {
|
|
2140
1855
|
if (e.aborted || n && r.candidate?.protocol === "udp") return;
|
|
@@ -2142,34 +1857,34 @@ function lr(e, t, n) {
|
|
|
2142
1857
|
i && t(i);
|
|
2143
1858
|
}, r;
|
|
2144
1859
|
}
|
|
2145
|
-
async function
|
|
1860
|
+
async function pn(e, t, n) {
|
|
2146
1861
|
!t.aborted && e && await e.setRemoteDescription({
|
|
2147
1862
|
type: "answer",
|
|
2148
1863
|
sdp: n
|
|
2149
1864
|
});
|
|
2150
1865
|
}
|
|
2151
|
-
async function
|
|
1866
|
+
async function mn(e, t, n, r) {
|
|
2152
1867
|
!t.aborted && e && (r && n.includes(" udp ") || await e.addIceCandidate({
|
|
2153
1868
|
candidate: n,
|
|
2154
1869
|
sdpMid: "0"
|
|
2155
1870
|
}));
|
|
2156
1871
|
}
|
|
2157
|
-
async function
|
|
1872
|
+
async function hn(e, t, n) {
|
|
2158
1873
|
if (!t.aborted && e) try {
|
|
2159
1874
|
await e.sender.replaceTrack(n);
|
|
2160
1875
|
} catch {}
|
|
2161
1876
|
}
|
|
2162
|
-
function
|
|
1877
|
+
function gn(e) {
|
|
2163
1878
|
e.micTransceiver &&= (e.micTransceiver.sender.replaceTrack(null).catch(() => {}), null), e.pc &&= (e.pc.getTransceivers().forEach((e) => e.sender?.track?.stop()), e.pc.close(), null), e.isConnected = !1;
|
|
2164
1879
|
}
|
|
2165
|
-
function
|
|
1880
|
+
function _n(e) {
|
|
2166
1881
|
let { mode: t, onConnected: n, onDisconnected: r, onFailed: i, onCandidate: a, signal: o } = e, s = {
|
|
2167
1882
|
pc: null,
|
|
2168
1883
|
micTransceiver: null,
|
|
2169
1884
|
isConnected: !1
|
|
2170
1885
|
}, c = t === "webrtc/tcp";
|
|
2171
1886
|
function l() {
|
|
2172
|
-
let e =
|
|
1887
|
+
let e = fn(o, a, c);
|
|
2173
1888
|
return e.onconnectionstatechange = () => {
|
|
2174
1889
|
if (o.aborted) return;
|
|
2175
1890
|
let t = e.connectionState;
|
|
@@ -2187,7 +1902,7 @@ function mr(e) {
|
|
|
2187
1902
|
return await s.pc.setLocalDescription(e), e.sdp;
|
|
2188
1903
|
}
|
|
2189
1904
|
function d() {
|
|
2190
|
-
|
|
1905
|
+
gn(s);
|
|
2191
1906
|
}
|
|
2192
1907
|
return o.addEventListener("abort", d, { once: !0 }), {
|
|
2193
1908
|
get pc() {
|
|
@@ -2200,20 +1915,20 @@ function mr(e) {
|
|
|
2200
1915
|
return s.isConnected;
|
|
2201
1916
|
},
|
|
2202
1917
|
createOffer: u,
|
|
2203
|
-
handleAnswer: (e) =>
|
|
2204
|
-
handleCandidate: (e) =>
|
|
2205
|
-
setMicrophoneTrack: (e) =>
|
|
1918
|
+
handleAnswer: (e) => pn(s.pc, o, e),
|
|
1919
|
+
handleCandidate: (e) => mn(s.pc, o, e, c),
|
|
1920
|
+
setMicrophoneTrack: (e) => hn(s.micTransceiver, o, e),
|
|
2206
1921
|
close: d
|
|
2207
1922
|
};
|
|
2208
1923
|
}
|
|
2209
|
-
function
|
|
1924
|
+
function vn(e) {
|
|
2210
1925
|
let { onConnected: t, onDisconnected: n, onCandidate: r, signal: i } = e, a = {
|
|
2211
1926
|
pc: null,
|
|
2212
1927
|
micTransceiver: null,
|
|
2213
1928
|
isConnected: !1
|
|
2214
1929
|
};
|
|
2215
1930
|
function o() {
|
|
2216
|
-
let e =
|
|
1931
|
+
let e = fn(i, r, !1);
|
|
2217
1932
|
return e.onconnectionstatechange = () => {
|
|
2218
1933
|
if (i.aborted) return;
|
|
2219
1934
|
let r = e.connectionState;
|
|
@@ -2227,20 +1942,20 @@ function hr(e) {
|
|
|
2227
1942
|
return await a.pc.setLocalDescription(e), e.sdp;
|
|
2228
1943
|
}
|
|
2229
1944
|
function c() {
|
|
2230
|
-
|
|
1945
|
+
gn(a);
|
|
2231
1946
|
}
|
|
2232
1947
|
return i.addEventListener("abort", c, { once: !0 }), {
|
|
2233
1948
|
get isConnected() {
|
|
2234
1949
|
return a.isConnected;
|
|
2235
1950
|
},
|
|
2236
1951
|
createOffer: s,
|
|
2237
|
-
handleAnswer: (e) =>
|
|
2238
|
-
handleCandidate: (e) =>
|
|
2239
|
-
setMicrophoneTrack: (e) =>
|
|
1952
|
+
handleAnswer: (e) => pn(a.pc, i, e),
|
|
1953
|
+
handleCandidate: (e) => mn(a.pc, i, e, !1),
|
|
1954
|
+
setMicrophoneTrack: (e) => hn(a.micTransceiver, i, e),
|
|
2240
1955
|
close: c
|
|
2241
1956
|
};
|
|
2242
1957
|
}
|
|
2243
|
-
async function
|
|
1958
|
+
async function yn(e, t) {
|
|
2244
1959
|
switch (t.type) {
|
|
2245
1960
|
case "webrtc/answer":
|
|
2246
1961
|
await e.handleAnswer(t.value);
|
|
@@ -2249,10 +1964,10 @@ async function gr(e, t) {
|
|
|
2249
1964
|
}
|
|
2250
1965
|
}
|
|
2251
1966
|
var Q = new m("StreamConnection");
|
|
2252
|
-
function
|
|
1967
|
+
function bn(e) {
|
|
2253
1968
|
return e ? typeof document < "u" && "pictureInPictureElement" in document && document.pictureInPictureElement === e || e.webkitPresentationMode === "picture-in-picture" : !1;
|
|
2254
1969
|
}
|
|
2255
|
-
var
|
|
1970
|
+
var xn = class {
|
|
2256
1971
|
status;
|
|
2257
1972
|
activeMode;
|
|
2258
1973
|
requestedMode;
|
|
@@ -2309,26 +2024,26 @@ var vr = class {
|
|
|
2309
2024
|
stopReconnectTimeout;
|
|
2310
2025
|
constructor(e) {
|
|
2311
2026
|
this.options = e;
|
|
2312
|
-
let t =
|
|
2027
|
+
let t = _();
|
|
2313
2028
|
if (!t.wsTransport) throw Error("[camera.ui] StreamConnection requires a wsTransport on CameraUiContext — pass `wsTransport` to createCameraUiPlugin.");
|
|
2314
2029
|
this.target = t.target, this.wsTransport = t.wsTransport;
|
|
2315
2030
|
let { autoStart: r = !0 } = e;
|
|
2316
2031
|
this.status = l("idle"), this.activeMode = l("webrtc"), this.activeResolution = l("low-resolution"), this.degradedFrom = l(null), this.degradeReason = l(null), this.source = c(), this.hasVideo = l(!1), this.hasAudio = l(!1), this.hasBackchannel = l(!1), this.isPlaying = l(!1), this.error = l(), this.probeInfo = c(), this.muted = l(!0), this.paused = l(!1), this.nativeWidth = l(0), this.nativeHeight = l(0), this.requestedMode = l(n(e.mode) ?? "auto"), this.requestedResolution = l(n(e.resolution) ?? "high-resolution"), this.camera = o(() => n(e.camera)), this.videoElement = o(() => n(e.videoElement)), this.containerElement = o(() => n(e.containerElement)), this.isReady = o(() => !!this.camera.value && !!this.videoElement.value && !!this.target.value), this.scope.run(() => {
|
|
2317
|
-
let { onTabPaused: e, onTabVisible: t } =
|
|
2032
|
+
let { onTabPaused: e, onTabVisible: t } = Jt(), n = f(() => {
|
|
2318
2033
|
this.wsHandle?.readyState === WebSocket.CONNECTING && (this.disconnectWebSocket(), !this.abortController.signal.aborted && this.status.value !== "closed" && this.restart());
|
|
2319
|
-
},
|
|
2034
|
+
}, X.WEBRTC.WS_CONNECT_TIMEOUT, { immediate: !1 }), i = f(() => {
|
|
2320
2035
|
this.webrtcHandler && !this.webrtcHandler.isConnected ? this.requestedMode.value === "auto" ? (this.webrtcHandler.close(), this.webrtcHandler = void 0, this.activeMode.value = "mse", this.mseHandler?.isReady ? this.status.value = "connected" : this.startMSE()) : (this.markSourceUndecodable(), this.restart()) : this.status.value === "connected" && !this.isPlaying.value && !this.abortController.signal.aborted && this.handleNoFramesWhileConnected();
|
|
2321
|
-
},
|
|
2036
|
+
}, X.WEBRTC.CONNECT_TIMEOUT, { immediate: !1 }), a = f(() => {
|
|
2322
2037
|
this.abortController.signal.aborted || this.status.value === "connected" || this.status.value === "closed" || this.mseHandler && !this.mseHandler.isReady && (this.markSourceUndecodable(), this.restart());
|
|
2323
|
-
},
|
|
2038
|
+
}, X.WEBRTC.CONNECT_TIMEOUT, { immediate: !1 }), o = f(() => {
|
|
2324
2039
|
this.abortController.signal.aborted || this.restart();
|
|
2325
|
-
},
|
|
2040
|
+
}, X.WEBRTC.RECONNECT_DELAY, { immediate: !1 });
|
|
2326
2041
|
this.startWsConnectTimeout = n.start, this.stopWsConnectTimeout = n.stop, this.startConnectTimeout = i.start, this.stopConnectTimeout = i.stop, this.startMseConnectTimeout = a.start, this.stopMseConnectTimeout = a.stop, this.startReconnectTimeout = o.start, this.stopReconnectTimeout = o.stop, this.setupWatchers(), this.offTabPaused = e(() => {
|
|
2327
2042
|
if (Q.debug(`onTabPaused fired — status=${this.status.value}, isReady=${this.isReady.value}, target=${!!this.target.value}`), this.status.value === "idle" || this.status.value === "closed") {
|
|
2328
2043
|
Q.debug(`onTabPaused — already in ${this.status.value}, skipping stop()`);
|
|
2329
2044
|
return;
|
|
2330
2045
|
}
|
|
2331
|
-
if (
|
|
2046
|
+
if (bn(this.videoElement.value)) {
|
|
2332
2047
|
Q.debug("onTabPaused — video is in picture-in-picture, keeping the stream"), this.watchPipLeave();
|
|
2333
2048
|
return;
|
|
2334
2049
|
}
|
|
@@ -2349,7 +2064,7 @@ var vr = class {
|
|
|
2349
2064
|
let e = this.videoElement.value;
|
|
2350
2065
|
if (!e) return;
|
|
2351
2066
|
let t = () => {
|
|
2352
|
-
|
|
2067
|
+
bn(e) || (this.disarmPipWatch?.(), !(typeof document < "u" && document.visibilityState === "visible") && this.status.value !== "idle" && this.status.value !== "closed" && (Q.debug("picture-in-picture closed while tab hidden — stopping the stream"), this.wasPausedByVisibility = !0, this.stop()));
|
|
2353
2068
|
};
|
|
2354
2069
|
e.addEventListener("leavepictureinpicture", t), e.addEventListener("webkitpresentationmodechanged", t), this.disarmPipWatch = () => {
|
|
2355
2070
|
e.removeEventListener("leavepictureinpicture", t), e.removeEventListener("webkitpresentationmodechanged", t), this.disarmPipWatch = null;
|
|
@@ -2467,7 +2182,7 @@ var vr = class {
|
|
|
2467
2182
|
this.status.value = "reconnecting", this.isPlaying.value = !1, this.cleanup(), this.abortController = new AbortController();
|
|
2468
2183
|
let e = ++this.connectionGeneration;
|
|
2469
2184
|
try {
|
|
2470
|
-
await
|
|
2185
|
+
await un(1e3, this.abortController.signal);
|
|
2471
2186
|
} catch {
|
|
2472
2187
|
return;
|
|
2473
2188
|
}
|
|
@@ -2545,18 +2260,18 @@ var vr = class {
|
|
|
2545
2260
|
if (t.srcObject instanceof MediaStream) {
|
|
2546
2261
|
let e = t.srcObject;
|
|
2547
2262
|
if (e.active && e.getTracks().some((e) => e.readyState === "live")) {
|
|
2548
|
-
|
|
2263
|
+
Z(t), this.lastMediaStream = e;
|
|
2549
2264
|
return;
|
|
2550
2265
|
}
|
|
2551
2266
|
}
|
|
2552
2267
|
if (this.status.value === "connected" && this.activeMode.value !== "mse") {
|
|
2553
2268
|
let e = this.lastMediaStream;
|
|
2554
|
-
e?.active && e.getTracks().some((e) => e.readyState === "live") ? (t.srcObject = e,
|
|
2269
|
+
e?.active && e.getTracks().some((e) => e.readyState === "live") ? (t.srcObject = e, Z(t)) : this.restart();
|
|
2555
2270
|
} else if (this.status.value === "connected" && this.activeMode.value === "mse") this.restart();
|
|
2556
2271
|
else if (this.status.value === "connecting" || this.status.value === "reconnecting") {
|
|
2557
2272
|
let e = s(() => this.isPlaying.value, (t) => {
|
|
2558
2273
|
let n = this.videoElement.value;
|
|
2559
|
-
t && n?.srcObject instanceof MediaStream ? (
|
|
2274
|
+
t && n?.srcObject instanceof MediaStream ? (Z(n), e()) : t && n && !n.srcObject && this.lastMediaStream?.active && (n.srcObject = this.lastMediaStream, Z(n), e());
|
|
2560
2275
|
}, { immediate: !0 });
|
|
2561
2276
|
this.stopWatchers.push(e);
|
|
2562
2277
|
}
|
|
@@ -2568,7 +2283,7 @@ var vr = class {
|
|
|
2568
2283
|
if (this.triedSourceIds.has(e._id)) return !1;
|
|
2569
2284
|
if (e.videoCodec !== "H265") return !0;
|
|
2570
2285
|
let t = this.requestedMode.value;
|
|
2571
|
-
return
|
|
2286
|
+
return rn(t === "auto" ? "auto" : t === "mse" ? "mse" : "webrtc");
|
|
2572
2287
|
}
|
|
2573
2288
|
getSourceForResolution(e) {
|
|
2574
2289
|
let t = this.camera.value;
|
|
@@ -2612,7 +2327,7 @@ var vr = class {
|
|
|
2612
2327
|
let t = e.video.filter((e) => e.direction === "sendonly");
|
|
2613
2328
|
if (!t.length || !t.every((e) => e.codec === "H265")) return !1;
|
|
2614
2329
|
let n = this.requestedMode.value;
|
|
2615
|
-
return !
|
|
2330
|
+
return !rn(n === "auto" ? "auto" : n === "mse" ? "mse" : "webrtc");
|
|
2616
2331
|
}
|
|
2617
2332
|
sourceLikelyH265() {
|
|
2618
2333
|
let e = this.source.value;
|
|
@@ -2627,7 +2342,7 @@ var vr = class {
|
|
|
2627
2342
|
e && this.sourceLikelyH265() && this.triedSourceIds.add(e._id);
|
|
2628
2343
|
}
|
|
2629
2344
|
handleNoFramesWhileConnected() {
|
|
2630
|
-
if (this.sourceLikelyH265() &&
|
|
2345
|
+
if (this.sourceLikelyH265() && an(this.activeMode.value === "mse" ? "mse" : "webrtc"), this.requestedMode.value === "auto" && this.activeMode.value !== "mse") {
|
|
2631
2346
|
this.webrtcHandler?.close(), this.webrtcHandler = void 0, this.activeMode.value = "mse", this.status.value = "reconnecting", this.startMSE();
|
|
2632
2347
|
return;
|
|
2633
2348
|
}
|
|
@@ -2650,7 +2365,7 @@ var vr = class {
|
|
|
2650
2365
|
this.disconnectWebSocket();
|
|
2651
2366
|
let e = this.camera.value;
|
|
2652
2367
|
if (this.abortController.signal.aborted || !e || !this.source.value || !this.target.value) return;
|
|
2653
|
-
let t = this.source.value.name ?? this.source.value.role ?? this.source.value._id, n =
|
|
2368
|
+
let t = this.source.value.name ?? this.source.value.role ?? this.source.value._id, n = y(e.name.value, t);
|
|
2654
2369
|
this.startWsConnectTimeout(), this.wsHandle = this.wsTransport.open({
|
|
2655
2370
|
path: "/api/go2rtc",
|
|
2656
2371
|
query: { src: n },
|
|
@@ -2689,7 +2404,7 @@ var vr = class {
|
|
|
2689
2404
|
switch (e.type) {
|
|
2690
2405
|
case "webrtc/answer":
|
|
2691
2406
|
case "webrtc/candidate":
|
|
2692
|
-
this.webrtcHandler ?
|
|
2407
|
+
this.webrtcHandler ? yn(this.webrtcHandler, e) : this.backchannelHandler && yn(this.backchannelHandler, e);
|
|
2693
2408
|
break;
|
|
2694
2409
|
case "mse":
|
|
2695
2410
|
this.mseHandler && typeof e.value == "string" && this.mseHandler.initializeBuffer(e.value);
|
|
@@ -2699,7 +2414,7 @@ var vr = class {
|
|
|
2699
2414
|
}
|
|
2700
2415
|
async startWebRTC(e) {
|
|
2701
2416
|
if (this.abortController.signal.aborted) return;
|
|
2702
|
-
this.startConnectTimeout(), this.webrtcHandler =
|
|
2417
|
+
this.startConnectTimeout(), this.webrtcHandler = _n({
|
|
2703
2418
|
mode: e,
|
|
2704
2419
|
signal: this.abortController.signal,
|
|
2705
2420
|
onConnected: (e) => this.handleWebRTCConnected(e),
|
|
@@ -2724,7 +2439,7 @@ var vr = class {
|
|
|
2724
2439
|
this.handleWebRTCFailed();
|
|
2725
2440
|
return;
|
|
2726
2441
|
}
|
|
2727
|
-
this.activeMode.value = this.requestedMode.value === "auto" ? "webrtc" : this.requestedMode.value, this.lastMediaStream = e, t.srcObject = e, t.muted = this.muted.value,
|
|
2442
|
+
this.activeMode.value = this.requestedMode.value === "auto" ? "webrtc" : this.requestedMode.value, this.lastMediaStream = e, t.srcObject = e, t.muted = this.muted.value, Z(t), this.status.value = "connected", this.handleFirstFrameWebRTC(e), this.requestedMode.value === "auto" && this.mseHandler && (this.mseHandler.close(), this.mseHandler = void 0, this.stopMseConnectTimeout(), this.sendWsMessage({ type: "mse/stop" }));
|
|
2728
2443
|
}
|
|
2729
2444
|
}
|
|
2730
2445
|
handleWebRTCDisconnected() {
|
|
@@ -2737,7 +2452,7 @@ var vr = class {
|
|
|
2737
2452
|
if (this.mseHandler) return;
|
|
2738
2453
|
let e = this.videoElement.value;
|
|
2739
2454
|
if (this.abortController.signal.aborted || !e) return;
|
|
2740
|
-
this.mseHandler =
|
|
2455
|
+
this.mseHandler = dn({
|
|
2741
2456
|
videoElement: e,
|
|
2742
2457
|
signal: this.abortController.signal,
|
|
2743
2458
|
onReady: () => this.handleMSEReady(),
|
|
@@ -2758,12 +2473,12 @@ var vr = class {
|
|
|
2758
2473
|
handleMSEFirstData() {
|
|
2759
2474
|
if (this.abortController.signal.aborted) return;
|
|
2760
2475
|
let e = this.videoElement.value;
|
|
2761
|
-
e &&
|
|
2476
|
+
e && Z(e);
|
|
2762
2477
|
}
|
|
2763
2478
|
async startAutoMode() {
|
|
2764
2479
|
if (this.abortController.signal.aborted) return;
|
|
2765
2480
|
let e = this.probeInfo.value ?? await this.probeStream();
|
|
2766
|
-
if (e && !
|
|
2481
|
+
if (e && !sn(e).compatible) {
|
|
2767
2482
|
this.activeMode.value = "mse", this.startMSE();
|
|
2768
2483
|
return;
|
|
2769
2484
|
}
|
|
@@ -2807,7 +2522,7 @@ var vr = class {
|
|
|
2807
2522
|
}
|
|
2808
2523
|
async startBackchannel() {
|
|
2809
2524
|
if (this.abortController.signal.aborted || !this.wsHandle || this.wsHandle.readyState !== WebSocket.OPEN) return;
|
|
2810
|
-
this.backchannelHandler =
|
|
2525
|
+
this.backchannelHandler = vn({
|
|
2811
2526
|
signal: this.abortController.signal,
|
|
2812
2527
|
onCandidate: (e) => this.sendWsMessage({
|
|
2813
2528
|
type: "webrtc/candidate",
|
|
@@ -2830,10 +2545,10 @@ var vr = class {
|
|
|
2830
2545
|
this.backchannelHandler?.close(), this.backchannelHandler = void 0, this.pendingMicTrack = null;
|
|
2831
2546
|
}
|
|
2832
2547
|
};
|
|
2833
|
-
function
|
|
2834
|
-
return new
|
|
2548
|
+
function Sn(e) {
|
|
2549
|
+
return new xn(e);
|
|
2835
2550
|
}
|
|
2836
|
-
var
|
|
2551
|
+
var Cn = class {
|
|
2837
2552
|
streams = /* @__PURE__ */ new Map();
|
|
2838
2553
|
releaseTimers = /* @__PURE__ */ new Map();
|
|
2839
2554
|
releaseDelay;
|
|
@@ -2906,7 +2621,7 @@ var br = class {
|
|
|
2906
2621
|
clear() {
|
|
2907
2622
|
for (let e of this.releaseTimers.values()) clearTimeout(e);
|
|
2908
2623
|
this.releaseTimers.clear();
|
|
2909
|
-
for (let [e, t] of this.streams)
|
|
2624
|
+
for (let [e, t] of this.streams) wn(t.stream), this.streams.delete(e);
|
|
2910
2625
|
}
|
|
2911
2626
|
getDebugInfo() {
|
|
2912
2627
|
return Array.from(this.streams.entries()).map(([e, t]) => ({
|
|
@@ -2939,25 +2654,25 @@ var br = class {
|
|
|
2939
2654
|
}
|
|
2940
2655
|
doRelease(e) {
|
|
2941
2656
|
let t = this.streams.get(e);
|
|
2942
|
-
t && (t.refCount <= 0 && (
|
|
2657
|
+
t && (t.refCount <= 0 && (wn(t.stream), this.streams.delete(e)), this.releaseTimers.delete(e));
|
|
2943
2658
|
}
|
|
2944
2659
|
};
|
|
2945
|
-
function
|
|
2660
|
+
function wn(e) {
|
|
2946
2661
|
let t = e;
|
|
2947
2662
|
typeof t.destroy == "function" ? t.destroy() : t.stop();
|
|
2948
2663
|
}
|
|
2949
|
-
var $ = new
|
|
2950
|
-
function
|
|
2951
|
-
|
|
2664
|
+
var $ = new Cn(), Tn = /* @__PURE__ */ new WeakMap(), En = null;
|
|
2665
|
+
function Dn(e) {
|
|
2666
|
+
En = e;
|
|
2952
2667
|
}
|
|
2953
|
-
var
|
|
2954
|
-
function
|
|
2955
|
-
|
|
2668
|
+
var On = [], kn = c(null);
|
|
2669
|
+
function An() {
|
|
2670
|
+
kn.value = On[On.length - 1] ?? null;
|
|
2956
2671
|
}
|
|
2957
|
-
function
|
|
2958
|
-
return o(() =>
|
|
2672
|
+
function jn() {
|
|
2673
|
+
return o(() => kn.value);
|
|
2959
2674
|
}
|
|
2960
|
-
function
|
|
2675
|
+
function Mn(e, t = {}) {
|
|
2961
2676
|
let r = t.mode ?? "fit", i = l(!1), a = c(null);
|
|
2962
2677
|
s(() => n(e), (e) => {
|
|
2963
2678
|
a.value = e ?? null;
|
|
@@ -2969,7 +2684,7 @@ function kr(e, t = {}) {
|
|
|
2969
2684
|
let e = a.value;
|
|
2970
2685
|
if (!e || i.value) return;
|
|
2971
2686
|
let t = document.createElement("div");
|
|
2972
|
-
t.className = `cui-fullscreen cui-fullscreen-${r}`,
|
|
2687
|
+
t.className = `cui-fullscreen cui-fullscreen-${r}`, Nn(t, r);
|
|
2973
2688
|
let n = {
|
|
2974
2689
|
wrapper: t,
|
|
2975
2690
|
parent: e.parentElement,
|
|
@@ -2977,16 +2692,16 @@ function kr(e, t = {}) {
|
|
|
2977
2692
|
bodyOverflow: document.body.style.overflow,
|
|
2978
2693
|
htmlOverflow: document.documentElement.style.overflow
|
|
2979
2694
|
};
|
|
2980
|
-
|
|
2695
|
+
Tn.set(e, n), e.setAttribute("data-cui-fullscreen", r), (En ?? document.body).appendChild(t), t.appendChild(e), document.body.style.overflow = "hidden", document.documentElement.style.overflow = "hidden", document.addEventListener("keydown", u), On.push(t), An(), i.value = !0;
|
|
2981
2696
|
}
|
|
2982
2697
|
async function p() {
|
|
2983
2698
|
let e = a.value;
|
|
2984
2699
|
if (!e || !i.value) return;
|
|
2985
|
-
let t =
|
|
2700
|
+
let t = Tn.get(e);
|
|
2986
2701
|
if (!t) return;
|
|
2987
|
-
|
|
2988
|
-
let n =
|
|
2989
|
-
n !== -1 &&
|
|
2702
|
+
Tn.delete(e), e.removeAttribute("data-cui-fullscreen"), t.parent && (t.next && t.next.parentNode === t.parent ? t.parent.insertBefore(e, t.next) : t.parent.appendChild(e)), t.wrapper.remove(), document.body.style.overflow = t.bodyOverflow, document.documentElement.style.overflow = t.htmlOverflow, document.removeEventListener("keydown", u);
|
|
2703
|
+
let n = On.indexOf(t.wrapper);
|
|
2704
|
+
n !== -1 && On.splice(n, 1), An(), i.value = !1;
|
|
2990
2705
|
}
|
|
2991
2706
|
async function m() {
|
|
2992
2707
|
i.value ? await p() : await f();
|
|
@@ -3001,7 +2716,7 @@ function kr(e, t = {}) {
|
|
|
3001
2716
|
toggle: m
|
|
3002
2717
|
};
|
|
3003
2718
|
}
|
|
3004
|
-
function
|
|
2719
|
+
function Nn(e, t) {
|
|
3005
2720
|
let n = {
|
|
3006
2721
|
position: "fixed",
|
|
3007
2722
|
top: "0",
|
|
@@ -3030,123 +2745,123 @@ function Ar(e, t) {
|
|
|
3030
2745
|
overscrollBehavior: "contain"
|
|
3031
2746
|
});
|
|
3032
2747
|
}
|
|
3033
|
-
var
|
|
3034
|
-
function
|
|
2748
|
+
var Pn = 75, Fn = 500, In = 0, Ln = 0;
|
|
2749
|
+
function Rn() {
|
|
3035
2750
|
let e = performance.now();
|
|
3036
|
-
e -
|
|
3037
|
-
let t =
|
|
3038
|
-
return
|
|
2751
|
+
e - Ln > Fn && (In = 0);
|
|
2752
|
+
let t = In * Pn;
|
|
2753
|
+
return In++, Ln = e, t;
|
|
3039
2754
|
}
|
|
3040
|
-
function
|
|
2755
|
+
function zn(e) {
|
|
3041
2756
|
return !e || !e.isConnected ? !1 : e.checkVisibility?.() ?? e.offsetParent !== null;
|
|
3042
2757
|
}
|
|
3043
|
-
function
|
|
3044
|
-
let { activityConfig: r, autoStart: i = !0, isolated: a = !1 } = e, u = a, f, p = () => n(i), m = e.startDelay ??
|
|
3045
|
-
let e =
|
|
2758
|
+
function Bn(e) {
|
|
2759
|
+
let { activityConfig: r, autoStart: i = !0, isolated: a = !1 } = e, u = a, f, p = () => n(i), m = e.startDelay ?? Rn(), h = [], { isConnected: g } = _(), v = o(() => n(e.camera)), y = o(() => typeof v.value == "string"), b = o(() => {
|
|
2760
|
+
let e = v.value;
|
|
3046
2761
|
return typeof e == "string" ? e : e.name.value;
|
|
3047
|
-
}), { camera:
|
|
3048
|
-
m > 0 && (
|
|
3049
|
-
|
|
3050
|
-
}, m)), s(
|
|
3051
|
-
|
|
2762
|
+
}), { camera: x, isLoading: S } = fe(o(() => y.value ? b.value : "")), C = o(() => y.value && S.value), w = o(() => y.value ? x.value : v.value), T, E, D, O = c(), ee = c(), k = c(), A = c(), j = c(), M = c(), N = l(!1), P = l(!1), F = l(!1), te = l(0), ne = l(0), re = l(!1), I = l(m <= 0);
|
|
2763
|
+
m > 0 && (T = setTimeout(() => {
|
|
2764
|
+
I.value = !0;
|
|
2765
|
+
}, m)), s(w, (e) => {
|
|
2766
|
+
M.value = e;
|
|
3052
2767
|
}, { immediate: !0 });
|
|
3053
|
-
let
|
|
2768
|
+
let L = o(() => M.value?.disabled.value === !0), R = o(() => j.value?.status.value ?? "idle"), z = o(() => j.value?.isPlaying.value ?? !1), ie = o(() => j.value?.activeMode.value ?? "webrtc"), ae = o(() => j.value?.activeResolution.value ?? "low-resolution"), oe = o(() => j.value?.degradedFrom.value ?? null), se = o(() => R.value === "unsupported"), B = o(() => j.value?.hasAudio.value ?? !1), V = o(() => j.value?.hasBackchannel.value ?? !1), ce = o(() => j.value?.error.value), le = o(() => R.value === "reconnecting"), ue = o(() => C.value || !z.value && R.value !== "error" && R.value !== "unsupported"), de = o(() => B.value && R.value === "connected"), pe = o(() => !!(typeof navigator < "u" && navigator.mediaDevices) && V.value), me = o(() => j.value?.muted.value ?? !0), H = o(() => j.value?.paused.value ?? !1), he = o(() => typeof document < "u" && document.pictureInPictureEnabled && !!k.value), ge = o(() => k.value), _e = o(() => ee.value ?? O.value), U = It({
|
|
3054
2769
|
initialMode: n(e.activityMode) ?? "always-on",
|
|
3055
2770
|
config: r,
|
|
3056
2771
|
onStreamStart: () => {
|
|
3057
|
-
|
|
2772
|
+
L.value || j.value?.start();
|
|
3058
2773
|
},
|
|
3059
2774
|
onStreamStop: () => {
|
|
3060
|
-
if (
|
|
3061
|
-
let e =
|
|
2775
|
+
if (N.value) {
|
|
2776
|
+
let e = D ?? b.value;
|
|
3062
2777
|
if (e && $.getRefCount(e) > 1) return;
|
|
3063
2778
|
}
|
|
3064
|
-
|
|
2779
|
+
j.value?.stop();
|
|
3065
2780
|
},
|
|
3066
|
-
isStreamPlaying: () =>
|
|
3067
|
-
}), { isFullscreen: ve, toggle:
|
|
3068
|
-
function
|
|
3069
|
-
return
|
|
3070
|
-
camera:
|
|
3071
|
-
videoElement:
|
|
3072
|
-
containerElement:
|
|
2781
|
+
isStreamPlaying: () => z.value
|
|
2782
|
+
}), { isFullscreen: ve, toggle: ye } = Mn(_e);
|
|
2783
|
+
function be() {
|
|
2784
|
+
return E = Sn({
|
|
2785
|
+
camera: M,
|
|
2786
|
+
videoElement: A,
|
|
2787
|
+
containerElement: O,
|
|
3073
2788
|
mode: o(() => n(e.mode) ?? "auto"),
|
|
3074
2789
|
resolution: o(() => n(e.resolution) ?? "high-resolution"),
|
|
3075
2790
|
autoStart: !1
|
|
3076
|
-
}),
|
|
2791
|
+
}), E;
|
|
3077
2792
|
}
|
|
3078
|
-
let
|
|
3079
|
-
function
|
|
2793
|
+
let W = be();
|
|
2794
|
+
function xe() {
|
|
3080
2795
|
let e = document.createElement("video");
|
|
3081
2796
|
return e.autoplay = !0, e.playsInline = !0, e.muted = !0, e.disablePictureInPicture = !1, e.preload = "auto", e.poster = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=", e.style.position = "absolute", e.style.width = "100%", e.style.height = "100%", e.style.inset = "0", e.style.objectFit = "fill", e;
|
|
3082
2797
|
}
|
|
3083
|
-
function
|
|
2798
|
+
function Se(e, t) {
|
|
3084
2799
|
e.parentElement && e.parentElement !== t && e.parentElement.removeChild(e), e.parentElement !== t && t.appendChild(e);
|
|
3085
2800
|
}
|
|
3086
|
-
function Se() {
|
|
3087
|
-
if (u) return;
|
|
3088
|
-
let e = T.value, t = D.value;
|
|
3089
|
-
if (!e || !t || t.parentElement === e || !Ir(e) || Ir(t.parentElement)) return;
|
|
3090
|
-
xe(t, e), t.play().catch(() => {});
|
|
3091
|
-
let n = y.value, r = n ? $.get(n) : void 0;
|
|
3092
|
-
r && (r.containerElementRef = T);
|
|
3093
|
-
}
|
|
3094
2801
|
function Ce() {
|
|
3095
|
-
|
|
2802
|
+
if (u) return;
|
|
2803
|
+
let e = O.value, t = k.value;
|
|
2804
|
+
if (!e || !t || t.parentElement === e || !zn(e) || zn(t.parentElement)) return;
|
|
2805
|
+
Se(t, e), t.play().catch(() => {});
|
|
2806
|
+
let n = b.value, r = n ? $.get(n) : void 0;
|
|
2807
|
+
r && (r.containerElementRef = O);
|
|
3096
2808
|
}
|
|
3097
2809
|
function we() {
|
|
3098
|
-
|
|
2810
|
+
re.value = !0;
|
|
3099
2811
|
}
|
|
3100
2812
|
function Te() {
|
|
3101
|
-
|
|
3102
|
-
|
|
2813
|
+
re.value = !1;
|
|
2814
|
+
}
|
|
2815
|
+
function Ee() {
|
|
2816
|
+
if (P.value) return;
|
|
2817
|
+
let e = O.value, t = w.value;
|
|
3103
2818
|
if (!e || !t || !g.value) return;
|
|
3104
|
-
|
|
3105
|
-
let n =
|
|
3106
|
-
|
|
2819
|
+
P.value = !0, N.value = !1, j.value = W;
|
|
2820
|
+
let n = xe();
|
|
2821
|
+
k.value = n, A.value = n, p() && I.value && U.mode.value === "always-on" && !L.value && W.start();
|
|
3107
2822
|
}
|
|
3108
2823
|
function G() {
|
|
3109
|
-
if (
|
|
2824
|
+
if (P.value) return;
|
|
3110
2825
|
if (u) {
|
|
3111
|
-
|
|
2826
|
+
Ee();
|
|
3112
2827
|
return;
|
|
3113
2828
|
}
|
|
3114
|
-
let e =
|
|
2829
|
+
let e = O.value, t = b.value, n = w.value;
|
|
3115
2830
|
if (!e || !t || !g.value) return;
|
|
3116
2831
|
let r = $.get(t);
|
|
3117
2832
|
if (r && r.refCount > 0) {
|
|
3118
2833
|
let n = r.containerElementRef.value;
|
|
3119
|
-
if (n && n !== e &&
|
|
2834
|
+
if (n && n !== e && zn(n)) {
|
|
3120
2835
|
f || (f = setTimeout(() => {
|
|
3121
|
-
if (f = void 0,
|
|
2836
|
+
if (f = void 0, F.value || P.value) return;
|
|
3122
2837
|
let e = $.get(t), n = e?.containerElementRef.value;
|
|
3123
|
-
e && e.refCount > 0 && n && n !==
|
|
2838
|
+
e && e.refCount > 0 && n && n !== O.value && zn(n) && (u = !0), G();
|
|
3124
2839
|
}, 200), h.push(() => {
|
|
3125
2840
|
f && clearTimeout(f), f = void 0;
|
|
3126
2841
|
}));
|
|
3127
2842
|
return;
|
|
3128
2843
|
}
|
|
3129
2844
|
}
|
|
3130
|
-
let i = $.acquire(t,
|
|
2845
|
+
let i = $.acquire(t, O);
|
|
3131
2846
|
if (i) {
|
|
3132
|
-
|
|
2847
|
+
P.value = !0, D = t, N.value = !0, j.value = i.stream, n && i.cameraDeviceRef && (i.cameraDeviceRef.value = n);
|
|
3133
2848
|
let r = i.sharedVideoElement;
|
|
3134
|
-
r || (r =
|
|
2849
|
+
r || (r = xe(), i.sharedVideoElement = r, $.updateSharedVideoElement(t, r)), i.mediaStream?.active && (r.srcObject = i.mediaStream), e && (i.containerElementRef = O), k.value = r, i.videoElementRef.value = r, Oe(i.stream, r, t), p() && I.value && U.mode.value === "always-on" && !L.value && (i.stream.activeMode.value === "mse" ? r.play().catch(() => {}) : K(i, r, t));
|
|
3135
2850
|
} else if (n) {
|
|
3136
|
-
|
|
3137
|
-
let e =
|
|
3138
|
-
|
|
3139
|
-
let n = s(() =>
|
|
2851
|
+
P.value = !0, D = t, N.value = !1, j.value = W;
|
|
2852
|
+
let e = xe();
|
|
2853
|
+
k.value = e, A.value = e, $.register(t, W, A, M, O, e), p() && I.value && U.mode.value === "always-on" && !L.value && W.start();
|
|
2854
|
+
let n = s(() => W.isPlaying.value, (n) => {
|
|
3140
2855
|
n && e.srcObject instanceof MediaStream && $.updateMediaStream(t, e.srcObject);
|
|
3141
2856
|
}, { immediate: !0 });
|
|
3142
2857
|
h.push(n);
|
|
3143
|
-
let r = s(() =>
|
|
2858
|
+
let r = s(() => W.status.value, (n) => {
|
|
3144
2859
|
n === "connected" && e.srcObject instanceof MediaStream && $.updateMediaStream(t, e.srcObject);
|
|
3145
2860
|
});
|
|
3146
2861
|
h.push(r);
|
|
3147
2862
|
}
|
|
3148
2863
|
}
|
|
3149
|
-
function
|
|
2864
|
+
function K(e, t, n) {
|
|
3150
2865
|
if (!e) return;
|
|
3151
2866
|
let r = e.stream, i = r.activeMode.value, a = r.status.value, o = e.mediaStream?.active && e.mediaStream.getTracks().some((e) => e.readyState === "live");
|
|
3152
2867
|
i === "mse" ? ($.updateMediaStream(n, null), r.restart()) : o && e.mediaStream ? (t.srcObject = e.mediaStream, t.play().catch(() => {})) : a === "idle" || a === "closed" ? (r.start(), De(r, t, n)) : (a === "connected" && r.restart(), De(r, t, n));
|
|
@@ -3160,7 +2875,7 @@ function Lr(e) {
|
|
|
3160
2875
|
}, { immediate: !0 });
|
|
3161
2876
|
h.push(r);
|
|
3162
2877
|
}
|
|
3163
|
-
function
|
|
2878
|
+
function Oe(e, t, n) {
|
|
3164
2879
|
let r = e.status.value !== "connected", i = s(() => e.status.value, (e) => {
|
|
3165
2880
|
e === "reconnecting" || e === "connecting" ? r = !0 : e === "connected" && r && (r = !1, setTimeout(() => {
|
|
3166
2881
|
t.srcObject instanceof MediaStream && ($.updateMediaStream(n, t.srcObject), t.play().catch(() => {}));
|
|
@@ -3172,68 +2887,68 @@ function Lr(e) {
|
|
|
3172
2887
|
}, { immediate: !0 });
|
|
3173
2888
|
h.push(a);
|
|
3174
2889
|
}
|
|
3175
|
-
async function
|
|
3176
|
-
|
|
2890
|
+
async function ke() {
|
|
2891
|
+
L.value || (U.inStandby.value ? U.resumeFromStandby() : await j.value?.start());
|
|
3177
2892
|
}
|
|
3178
|
-
function
|
|
3179
|
-
|
|
2893
|
+
function Ae() {
|
|
2894
|
+
j.value?.stop();
|
|
3180
2895
|
}
|
|
3181
|
-
async function
|
|
3182
|
-
await
|
|
2896
|
+
async function je() {
|
|
2897
|
+
await j.value?.restart();
|
|
3183
2898
|
}
|
|
3184
|
-
function
|
|
3185
|
-
|
|
3186
|
-
}
|
|
3187
|
-
async function Me(e) {
|
|
3188
|
-
let t = y.value;
|
|
3189
|
-
t && $.updateMediaStream(t, null), await k.value?.setMode(e);
|
|
2899
|
+
function Me() {
|
|
2900
|
+
L.value || U.resumeFromStandby();
|
|
3190
2901
|
}
|
|
3191
2902
|
async function Ne(e) {
|
|
3192
|
-
|
|
2903
|
+
let t = b.value;
|
|
2904
|
+
t && $.updateMediaStream(t, null), await j.value?.setMode(e);
|
|
3193
2905
|
}
|
|
3194
2906
|
async function Pe(e) {
|
|
3195
|
-
await
|
|
2907
|
+
await j.value?.setResolution(e);
|
|
3196
2908
|
}
|
|
3197
|
-
function Fe(e) {
|
|
3198
|
-
|
|
2909
|
+
async function Fe(e) {
|
|
2910
|
+
await j.value?.setMicrophone(e);
|
|
3199
2911
|
}
|
|
3200
2912
|
function Ie(e) {
|
|
3201
|
-
|
|
2913
|
+
U.setMode(e);
|
|
2914
|
+
}
|
|
2915
|
+
function Le(e) {
|
|
2916
|
+
U.reportActivity(e);
|
|
3202
2917
|
}
|
|
3203
|
-
function
|
|
3204
|
-
|
|
3205
|
-
let t =
|
|
2918
|
+
function Re(e) {
|
|
2919
|
+
j.value?.setMuted(e);
|
|
2920
|
+
let t = k.value;
|
|
3206
2921
|
t && (t.muted = e);
|
|
3207
2922
|
}
|
|
3208
|
-
async function
|
|
3209
|
-
await
|
|
2923
|
+
async function ze() {
|
|
2924
|
+
await j.value?.play();
|
|
3210
2925
|
}
|
|
3211
|
-
function
|
|
3212
|
-
|
|
2926
|
+
function Be() {
|
|
2927
|
+
j.value?.pause();
|
|
3213
2928
|
}
|
|
3214
|
-
function
|
|
3215
|
-
document.pictureInPictureElement ? document.exitPictureInPicture() : document.pictureInPictureEnabled &&
|
|
2929
|
+
function Ve() {
|
|
2930
|
+
document.pictureInPictureElement ? document.exitPictureInPicture() : document.pictureInPictureEnabled && k.value && k.value.requestPictureInPicture();
|
|
3216
2931
|
}
|
|
3217
|
-
function
|
|
3218
|
-
let e =
|
|
2932
|
+
function He() {
|
|
2933
|
+
let e = k.value;
|
|
3219
2934
|
if (!e || e.videoWidth === 0) return null;
|
|
3220
2935
|
let t = document.createElement("canvas");
|
|
3221
2936
|
return t.width = e.videoWidth, t.height = e.videoHeight, t.getContext("2d")?.drawImage(e, 0, 0), t.toDataURL("image/png");
|
|
3222
2937
|
}
|
|
3223
|
-
function
|
|
3224
|
-
if (
|
|
3225
|
-
|
|
3226
|
-
let e =
|
|
2938
|
+
function Ue() {
|
|
2939
|
+
if (F.value) return;
|
|
2940
|
+
F.value = !0, T &&= (clearTimeout(T), void 0), j.value?.setMuted(!0);
|
|
2941
|
+
let e = k.value;
|
|
3227
2942
|
e && (e.muted = !0);
|
|
3228
2943
|
for (let e of h) e();
|
|
3229
|
-
if (h.length = 0, u)
|
|
2944
|
+
if (h.length = 0, u) E?.destroy();
|
|
3230
2945
|
else {
|
|
3231
|
-
let e =
|
|
3232
|
-
e &&
|
|
2946
|
+
let e = D, t = k.value;
|
|
2947
|
+
e && P.value && $.release(e, t, O), (!P.value || j.value !== W) && E?.destroy();
|
|
3233
2948
|
}
|
|
3234
|
-
|
|
2949
|
+
U.dispose();
|
|
3235
2950
|
}
|
|
3236
|
-
function
|
|
2951
|
+
function We(t) {
|
|
3237
2952
|
let r = n(e.canvasStyle), i = n(e.canvasClass);
|
|
3238
2953
|
if (r) {
|
|
3239
2954
|
if (typeof r == "string") t.style.cssText += ";" + r;
|
|
@@ -3247,9 +2962,9 @@ function Lr(e) {
|
|
|
3247
2962
|
}
|
|
3248
2963
|
}
|
|
3249
2964
|
if (!a && typeof IntersectionObserver < "u") {
|
|
3250
|
-
let e, t = s(
|
|
2965
|
+
let e, t = s(O, (t) => {
|
|
3251
2966
|
e?.disconnect(), e = void 0, t && (e = new IntersectionObserver((e) => {
|
|
3252
|
-
e.some((e) => e.isIntersecting) &&
|
|
2967
|
+
e.some((e) => e.isIntersecting) && Ce();
|
|
3253
2968
|
}), e.observe(t));
|
|
3254
2969
|
}, { immediate: !0 });
|
|
3255
2970
|
h.push(() => {
|
|
@@ -3257,14 +2972,14 @@ function Lr(e) {
|
|
|
3257
2972
|
});
|
|
3258
2973
|
}
|
|
3259
2974
|
if (e.canvasStyle !== void 0 || e.canvasClass !== void 0) {
|
|
3260
|
-
let e, t = s(
|
|
2975
|
+
let e, t = s(O, (t) => {
|
|
3261
2976
|
if (e?.(), e = void 0, !t) return;
|
|
3262
2977
|
Array.from(t.querySelectorAll("canvas")).forEach((e) => {
|
|
3263
|
-
|
|
2978
|
+
We(e);
|
|
3264
2979
|
});
|
|
3265
2980
|
let n = new MutationObserver((e) => {
|
|
3266
2981
|
for (let t of e) Array.from(t.addedNodes).forEach((e) => {
|
|
3267
|
-
e instanceof HTMLCanvasElement ?
|
|
2982
|
+
e instanceof HTMLCanvasElement ? We(e) : e instanceof HTMLElement && Array.from(e.querySelectorAll("canvas")).forEach((e) => We(e));
|
|
3268
2983
|
});
|
|
3269
2984
|
});
|
|
3270
2985
|
n.observe(t, {
|
|
@@ -3278,7 +2993,7 @@ function Lr(e) {
|
|
|
3278
2993
|
}
|
|
3279
2994
|
if (e.videoStyle !== void 0 || e.videoClass !== void 0) {
|
|
3280
2995
|
let t = s([
|
|
3281
|
-
|
|
2996
|
+
k,
|
|
3282
2997
|
() => n(e.videoStyle),
|
|
3283
2998
|
() => n(e.videoClass)
|
|
3284
2999
|
], ([e, t, n]) => {
|
|
@@ -3297,88 +3012,88 @@ function Lr(e) {
|
|
|
3297
3012
|
}, { immediate: !0 });
|
|
3298
3013
|
h.push(t);
|
|
3299
3014
|
}
|
|
3300
|
-
let
|
|
3301
|
-
e && e > 0 && (
|
|
3015
|
+
let Ge = s([() => j.value?.nativeWidth.value, () => j.value?.nativeHeight.value], ([e, t]) => {
|
|
3016
|
+
e && e > 0 && (te.value = e), t && t > 0 && (ne.value = t);
|
|
3302
3017
|
});
|
|
3303
|
-
h.push(
|
|
3304
|
-
let
|
|
3305
|
-
t && (t.removeEventListener("enterpictureinpicture",
|
|
3018
|
+
h.push(Ge);
|
|
3019
|
+
let Ke = s(k, (e, t) => {
|
|
3020
|
+
t && (t.removeEventListener("enterpictureinpicture", we), t.removeEventListener("leavepictureinpicture", Te)), e && (e.addEventListener("enterpictureinpicture", we), e.addEventListener("leavepictureinpicture", Te));
|
|
3306
3021
|
}, { immediate: !0 });
|
|
3307
|
-
return h.push(
|
|
3308
|
-
e && t &&
|
|
3022
|
+
return h.push(Ke), s([O, k], ([e, t]) => {
|
|
3023
|
+
e && t && Se(t, e);
|
|
3309
3024
|
}, { immediate: !0 }), s(() => n(e.activityMode), (e) => {
|
|
3310
|
-
e && e !==
|
|
3025
|
+
e && e !== U.mode.value && U.setMode(e);
|
|
3311
3026
|
}), s([
|
|
3312
|
-
|
|
3313
|
-
|
|
3027
|
+
O,
|
|
3028
|
+
w,
|
|
3314
3029
|
g,
|
|
3315
|
-
|
|
3030
|
+
I
|
|
3316
3031
|
], () => {
|
|
3317
|
-
|
|
3318
|
-
}, { immediate: !0 }), s(
|
|
3319
|
-
|
|
3320
|
-
}), t(
|
|
3321
|
-
status:
|
|
3322
|
-
isPlaying:
|
|
3323
|
-
activeMode:
|
|
3324
|
-
activeResolution:
|
|
3325
|
-
degradedFrom:
|
|
3326
|
-
unsupported:
|
|
3327
|
-
hasAudio:
|
|
3328
|
-
hasBackchannel:
|
|
3329
|
-
error:
|
|
3330
|
-
isReconnecting:
|
|
3331
|
-
activityMode:
|
|
3332
|
-
inStandby:
|
|
3333
|
-
hasActivity:
|
|
3334
|
-
isBusy:
|
|
3335
|
-
hasSound:
|
|
3032
|
+
P.value ? I.value && p() && U.mode.value === "always-on" && !z.value && R.value === "idle" && !L.value && j.value?.start() : G();
|
|
3033
|
+
}, { immediate: !0 }), s(L, (e, t) => {
|
|
3034
|
+
P.value && (!t && e ? j.value?.stop() : t && !e && p() && j.value?.restart());
|
|
3035
|
+
}), t(Ue), d(Ue), {
|
|
3036
|
+
status: R,
|
|
3037
|
+
isPlaying: z,
|
|
3038
|
+
activeMode: ie,
|
|
3039
|
+
activeResolution: ae,
|
|
3040
|
+
degradedFrom: oe,
|
|
3041
|
+
unsupported: se,
|
|
3042
|
+
hasAudio: B,
|
|
3043
|
+
hasBackchannel: V,
|
|
3044
|
+
error: ce,
|
|
3045
|
+
isReconnecting: le,
|
|
3046
|
+
activityMode: U.mode,
|
|
3047
|
+
inStandby: U.inStandby,
|
|
3048
|
+
hasActivity: U.hasActivity,
|
|
3049
|
+
isBusy: ue,
|
|
3050
|
+
hasSound: de,
|
|
3336
3051
|
hasIntercom: pe,
|
|
3337
|
-
videoElement:
|
|
3338
|
-
containerElement:
|
|
3339
|
-
fullscreenElement:
|
|
3340
|
-
renderElement:
|
|
3341
|
-
stream:
|
|
3052
|
+
videoElement: k,
|
|
3053
|
+
containerElement: O,
|
|
3054
|
+
fullscreenElement: ee,
|
|
3055
|
+
renderElement: ge,
|
|
3056
|
+
stream: j,
|
|
3342
3057
|
muted: me,
|
|
3343
|
-
paused:
|
|
3344
|
-
nativeWidth:
|
|
3345
|
-
nativeHeight:
|
|
3346
|
-
isPip:
|
|
3347
|
-
supportsPip:
|
|
3058
|
+
paused: H,
|
|
3059
|
+
nativeWidth: te,
|
|
3060
|
+
nativeHeight: ne,
|
|
3061
|
+
isPip: re,
|
|
3062
|
+
supportsPip: he,
|
|
3348
3063
|
isFullscreen: ve,
|
|
3349
|
-
start:
|
|
3350
|
-
stop:
|
|
3351
|
-
restart:
|
|
3352
|
-
resumeFromStandby:
|
|
3353
|
-
setMode:
|
|
3354
|
-
setResolution:
|
|
3355
|
-
setMicrophone:
|
|
3356
|
-
setActivityMode:
|
|
3357
|
-
reportActivity:
|
|
3358
|
-
setMuted:
|
|
3359
|
-
play:
|
|
3360
|
-
pause:
|
|
3361
|
-
togglePip:
|
|
3362
|
-
isCameraDisabled:
|
|
3363
|
-
toggleFullscreen:
|
|
3364
|
-
captureScreenshot:
|
|
3064
|
+
start: ke,
|
|
3065
|
+
stop: Ae,
|
|
3066
|
+
restart: je,
|
|
3067
|
+
resumeFromStandby: Me,
|
|
3068
|
+
setMode: Ne,
|
|
3069
|
+
setResolution: Pe,
|
|
3070
|
+
setMicrophone: Fe,
|
|
3071
|
+
setActivityMode: Ie,
|
|
3072
|
+
reportActivity: Le,
|
|
3073
|
+
setMuted: Re,
|
|
3074
|
+
play: ze,
|
|
3075
|
+
pause: Be,
|
|
3076
|
+
togglePip: Ve,
|
|
3077
|
+
isCameraDisabled: L,
|
|
3078
|
+
toggleFullscreen: ye,
|
|
3079
|
+
captureScreenshot: He
|
|
3365
3080
|
};
|
|
3366
3081
|
}
|
|
3367
|
-
function
|
|
3368
|
-
let e =
|
|
3082
|
+
function Vn() {
|
|
3083
|
+
let e = _(), t = b.coreManagerNamespaces(), n = (e) => e.createProxy(t.coreManagerRpc);
|
|
3369
3084
|
return {
|
|
3370
|
-
getFFmpegPath: () =>
|
|
3371
|
-
getServerAddresses: () =>
|
|
3372
|
-
getPluginsByInterface: (t) =>
|
|
3373
|
-
getCloudServerId: () =>
|
|
3085
|
+
getFFmpegPath: () => C(e.rpc, (e) => n(e).getFFmpegPath()),
|
|
3086
|
+
getServerAddresses: () => C(e.rpc, (e) => n(e).getServerAddresses()),
|
|
3087
|
+
getPluginsByInterface: (t) => C(e.rpc, (e) => n(e).getPluginsByInterface(t)),
|
|
3088
|
+
getCloudServerId: () => C(e.rpc, (e) => n(e).getCloudServerId())
|
|
3374
3089
|
};
|
|
3375
3090
|
}
|
|
3376
|
-
var
|
|
3377
|
-
function
|
|
3378
|
-
let t =
|
|
3379
|
-
let i = await
|
|
3091
|
+
var Hn = 1500, Un = 3e4, Wn = /* @__PURE__ */ new Map();
|
|
3092
|
+
function Gn(e) {
|
|
3093
|
+
let t = _(), n = l({ status: "disconnected" }), r = l(null), i = null, a = (n) => C(t.rpc, async (r) => {
|
|
3094
|
+
let i = await ut(t.rpc, e);
|
|
3380
3095
|
if (!i) throw Error(`Plugin "${e}" not found`);
|
|
3381
|
-
return n(r.createProxy(
|
|
3096
|
+
return n(r.createProxy(b.pluginNamespaces(i).pluginChildRpc));
|
|
3382
3097
|
});
|
|
3383
3098
|
async function o() {
|
|
3384
3099
|
n.value = await a((e) => e.getOAuthState()), r.value ||= await a((e) => e.getOAuthMetadata());
|
|
@@ -3389,7 +3104,7 @@ function Hr(e) {
|
|
|
3389
3104
|
}, e);
|
|
3390
3105
|
}
|
|
3391
3106
|
return s(() => n.value.status, (e) => {
|
|
3392
|
-
c(e === "awaiting_user" || e === "polling" ?
|
|
3107
|
+
c(e === "awaiting_user" || e === "polling" ? Hn : Un);
|
|
3393
3108
|
}, { immediate: !0 }), o().catch(() => void 0), {
|
|
3394
3109
|
state: n,
|
|
3395
3110
|
metadata: r,
|
|
@@ -3397,9 +3112,9 @@ function Hr(e) {
|
|
|
3397
3112
|
refresh: o
|
|
3398
3113
|
};
|
|
3399
3114
|
}
|
|
3400
|
-
function
|
|
3401
|
-
|
|
3402
|
-
let { state: t, metadata: n, call: r, refresh: i } =
|
|
3115
|
+
function Kn(e) {
|
|
3116
|
+
Wn.has(e) || Wn.set(e, Gn(e));
|
|
3117
|
+
let { state: t, metadata: n, call: r, refresh: i } = Wn.get(e);
|
|
3403
3118
|
async function a(e) {
|
|
3404
3119
|
t.value = await r((t) => t.startDeviceFlow(e));
|
|
3405
3120
|
}
|
|
@@ -3422,16 +3137,16 @@ function Ur(e) {
|
|
|
3422
3137
|
refresh: i
|
|
3423
3138
|
};
|
|
3424
3139
|
}
|
|
3425
|
-
function
|
|
3426
|
-
let e =
|
|
3140
|
+
function qn() {
|
|
3141
|
+
let e = _(), { rpc: t, isConnected: n } = e, r = b.terminalManagerNamespaces(), a = c(), o = l(!1), s = l(!1), u = l(), f = l({
|
|
3427
3142
|
cols: 80,
|
|
3428
3143
|
rows: 24
|
|
3429
3144
|
}), p, m, h = 0, g = (e) => e.createProxy(r.terminalManagerRpc);
|
|
3430
|
-
async function
|
|
3145
|
+
async function v(e) {
|
|
3431
3146
|
if (!(s.value || o.value)) {
|
|
3432
3147
|
s.value = !0, u.value = void 0, m = e;
|
|
3433
3148
|
try {
|
|
3434
|
-
let n = await
|
|
3149
|
+
let n = await C(t, (t) => g(t).createSession({
|
|
3435
3150
|
cols: e?.cols ?? 80,
|
|
3436
3151
|
rows: e?.rows ?? 24,
|
|
3437
3152
|
cwd: e?.cwd,
|
|
@@ -3440,7 +3155,7 @@ function Wr() {
|
|
|
3440
3155
|
}));
|
|
3441
3156
|
a.value = n.sessionId, f.value = n.dimensions, o.value = !0, p = new AbortController();
|
|
3442
3157
|
let r = ++h;
|
|
3443
|
-
|
|
3158
|
+
y(n.sessionId, e, r);
|
|
3444
3159
|
} catch (t) {
|
|
3445
3160
|
u.value = t instanceof Error ? t : Error(String(t)), e?.onError?.(u.value);
|
|
3446
3161
|
} finally {
|
|
@@ -3448,7 +3163,7 @@ function Wr() {
|
|
|
3448
3163
|
}
|
|
3449
3164
|
}
|
|
3450
3165
|
}
|
|
3451
|
-
async function
|
|
3166
|
+
async function y(e, n, r) {
|
|
3452
3167
|
try {
|
|
3453
3168
|
let i = t.value;
|
|
3454
3169
|
if (!i) return;
|
|
@@ -3462,36 +3177,36 @@ function Wr() {
|
|
|
3462
3177
|
r === h && !p?.signal.aborted && (o.value = !1, n?.onClose?.());
|
|
3463
3178
|
}
|
|
3464
3179
|
}
|
|
3465
|
-
async function
|
|
3180
|
+
async function x(e) {
|
|
3466
3181
|
if (a.value && o.value) try {
|
|
3467
|
-
await
|
|
3182
|
+
await C(t, (t) => g(t).writeInput(a.value, e));
|
|
3468
3183
|
} catch (e) {
|
|
3469
3184
|
u.value = e instanceof Error ? e : Error(String(e)), m?.onError?.(u.value);
|
|
3470
3185
|
}
|
|
3471
3186
|
}
|
|
3472
|
-
async function
|
|
3187
|
+
async function S(e) {
|
|
3473
3188
|
if (a.value && o.value) try {
|
|
3474
|
-
await
|
|
3189
|
+
await C(t, (t) => g(t).resize(a.value, e)), f.value = e;
|
|
3475
3190
|
} catch (e) {
|
|
3476
3191
|
u.value = e instanceof Error ? e : Error(String(e)), m?.onError?.(u.value);
|
|
3477
3192
|
}
|
|
3478
3193
|
}
|
|
3479
|
-
async function
|
|
3194
|
+
async function w() {
|
|
3480
3195
|
if (p?.abort(), h++, a.value) try {
|
|
3481
|
-
await
|
|
3196
|
+
await C(t, (e) => g(e).closeSession(a.value), {
|
|
3482
3197
|
awaitConnect: !1,
|
|
3483
3198
|
maxRetries: 0
|
|
3484
3199
|
});
|
|
3485
3200
|
} catch {}
|
|
3486
3201
|
a.value = void 0, o.value = !1, m = void 0;
|
|
3487
3202
|
}
|
|
3488
|
-
function
|
|
3203
|
+
function T() {
|
|
3489
3204
|
if (!a.value && !o.value) return;
|
|
3490
3205
|
let e = m;
|
|
3491
|
-
p?.abort(), h++, a.value = void 0, o.value = !1, m = void 0, e?.onClose?.(), e &&
|
|
3206
|
+
p?.abort(), h++, a.value = void 0, o.value = !1, m = void 0, e?.onClose?.(), e && v(e);
|
|
3492
3207
|
}
|
|
3493
|
-
return e.on("reconnected",
|
|
3494
|
-
e.off("reconnected",
|
|
3208
|
+
return e.on("reconnected", T), d(() => {
|
|
3209
|
+
e.off("reconnected", T), w();
|
|
3495
3210
|
}), {
|
|
3496
3211
|
sessionId: i(a),
|
|
3497
3212
|
isConnected: i(o),
|
|
@@ -3499,11 +3214,11 @@ function Wr() {
|
|
|
3499
3214
|
isClientConnected: i(n),
|
|
3500
3215
|
error: i(u),
|
|
3501
3216
|
dimensions: i(f),
|
|
3502
|
-
connect:
|
|
3503
|
-
write:
|
|
3504
|
-
resize:
|
|
3505
|
-
close:
|
|
3217
|
+
connect: v,
|
|
3218
|
+
write: x,
|
|
3219
|
+
resize: S,
|
|
3220
|
+
close: w
|
|
3506
3221
|
};
|
|
3507
3222
|
}
|
|
3508
3223
|
//#endregion
|
|
3509
|
-
export {
|
|
3224
|
+
export { nt as A, ot as C, it as D, rt as E, Ze as F, ae as I, Jt as L, Ee as M, wt as N, tt as O, Et as P, qn as R, _ as S, Mn as T, Dn as _, Be as a, Tt as b, De as c, Pe as d, Oe as f, Dt as g, Fe as h, Ae as i, at as j, Kn as k, Ne as l, Me as m, ke as n, Ie as o, Re as p, je as r, ze as s, Pt as t, Le as u, Qe as v, Vn as w, Bn as x, fe as y, jn as z };
|