@camera.ui/server 2.1.7 → 2.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/interface/assets/{404-D0lfw52Y.js → 404-BEb5gvkW.js} +1 -1
- package/dist/interface/assets/{About-DaaVZ9Cn.js → About-BKkjuIVJ.js} +1 -1
- package/dist/interface/assets/Automation-DA89AEEI.js +3 -0
- package/dist/interface/assets/AutomationImport-hYr3Lp8F.js +2 -0
- package/dist/interface/assets/{AutomationStore-CeRF0iz6.js → AutomationStore-DKhnExZn.js} +2 -2
- package/dist/interface/assets/{AutomationStoreDetail-DcCFUBJf.js → AutomationStoreDetail-DmqqEOir.js} +2 -2
- package/dist/interface/assets/{Automations-GMWeSNQv.js → Automations-B6WFJyxS.js} +2 -2
- package/dist/interface/assets/Camera-DmsSKvpY.js +2 -0
- package/dist/interface/assets/{CameraConsole-B0crXI59.js → CameraConsole-DVpyGhx8.js} +1 -1
- package/dist/interface/assets/Cameras-KOOphtlx.js +652 -0
- package/dist/interface/assets/Camview-BPQIinyP.js +1 -0
- package/dist/interface/assets/{Camview-DxxONfeK.css → Camview-Lp3QU0de.css} +1 -1
- package/dist/interface/assets/Config-DeUec_TN.js +2 -0
- package/dist/interface/assets/ConfigActionCameraControl-DWHg-YEU.js +1 -0
- package/dist/interface/assets/{ConfigActionDelay-DjFp5qpw.js → ConfigActionDelay-C8nNA7TC.js} +1 -1
- package/dist/interface/assets/{ConfigActionHttp-Cmjz4iAV.js → ConfigActionHttp-Dc97gItH.js} +1 -1
- package/dist/interface/assets/{ConfigActionImageInput-B0Hll2M3.js → ConfigActionImageInput-DpOGqlzA.js} +1 -1
- package/dist/interface/assets/{ConfigActionMqtt-D2boY4u0.js → ConfigActionMqtt-D5DJ21oe.js} +1 -1
- package/dist/interface/assets/{ConfigActionNotification-7iRd0L5l.js → ConfigActionNotification-4wKfanGB.js} +1 -1
- package/dist/interface/assets/ConfigActionNotificationControl-jSgxCZmV.js +1 -0
- package/dist/interface/assets/{ConfigActionOutput-BTGUzNQW.js → ConfigActionOutput-C8Esieni.js} +1 -1
- package/dist/interface/assets/{ConfigActionPlugin-CzspRdJx.js → ConfigActionPlugin-C_cv60d3.js} +1 -1
- package/dist/interface/assets/{ConfigActionSensor-CPK-s1E2.js → ConfigActionSensor-CFIKoJ3-.js} +1 -1
- package/dist/interface/assets/{ConfigActionSnapshot-CcSw9Yw-.js → ConfigActionSnapshot-BqaTwtN3.js} +1 -1
- package/dist/interface/assets/{ConfigActionVariable-BCDtM13I.js → ConfigActionVariable-De9RCGU4.js} +1 -1
- package/dist/interface/assets/{ConfigConditionIfElse-DZJkBeHI.js → ConfigConditionIfElse-CeNDIucw.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSensorState-CxWutq1T.js → ConfigConditionSensorState-C_Q9gU23.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSwitch-DBRR9cW4.js → ConfigConditionSwitch-DR63IGcD.js} +1 -1
- package/dist/interface/assets/{ConfigConditionTime-B-5s6QW2.js → ConfigConditionTime-C9iuSxxe.js} +1 -1
- package/dist/interface/assets/{ConfigSensorValueInput-B9MmHF-E.js → ConfigSensorValueInput-DnMlFzil.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerDetection-DlY8ne3V.js → ConfigTriggerDetection-iThbCKOO.js} +1 -1
- package/dist/interface/assets/ConfigTriggerGeofence-BeKwVWvS.js +1 -0
- package/dist/interface/assets/{ConfigTriggerManual-BSxA9fGt.js → ConfigTriggerManual-DPkRlUqD.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerMqtt-C7sFSgYi.js → ConfigTriggerMqtt-kd65tGJE.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSchedule-fqVY5k3V.js → ConfigTriggerSchedule-D6MoVDPc.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSensor-BMZ74d8e.js → ConfigTriggerSensor-AMQM6f2r.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSystem-B8zwJpaY.js → ConfigTriggerSystem-CNBgtDF1.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerWebhook-SklqcrZq.js → ConfigTriggerWebhook-B70DobSi.js} +1 -1
- package/dist/interface/assets/Console-N_2Vornl.js +1 -0
- package/dist/interface/assets/{CuiAutomationRunsDialog-N6NFABq2.js → CuiAutomationRunsDialog-Cp6Apki9.js} +1 -1
- package/dist/interface/assets/CuiBottomSheet-CIR_fmSk.js +1 -0
- package/dist/interface/assets/{CuiBottomSheet-BuK_lFkK.js → CuiBottomSheet-D5N8X1K-.js} +1 -1
- package/dist/interface/assets/CuiCameraPipCard-DP6X45oq.js +1 -0
- package/dist/interface/assets/CuiCameraRecordings-CRjXsdO4.js +1 -0
- package/dist/interface/assets/CuiCameraShares-DMHwZEf1.js +1 -0
- package/dist/interface/assets/{CuiCameraTable-DOPSHZ28.js → CuiCameraTable-AnEPu3XS.js} +1 -1
- package/dist/interface/assets/CuiCameraTable-D5ZqTLVt.js +1 -0
- package/dist/interface/assets/CuiConsole-CqEvNGe_.js +5 -0
- package/dist/interface/assets/{CuiDataTable-DBNU5MJ_.js → CuiDataTable-wA_LbHH8.js} +1 -1
- package/dist/interface/assets/{CuiLightControl-CCwkaMEn.js → CuiLightControl-CB_Tp4tI.js} +1 -1
- package/dist/interface/assets/{CuiList-BOMdGNXj.js → CuiList-DrYuFhK4.js} +1 -1
- package/dist/interface/assets/CuiPluginCard-DEuNt5ni.js +2 -0
- package/dist/interface/assets/CuiPluginCategoryChip-BbkbkYj6.js +1 -0
- package/dist/interface/assets/{CuiPluginOAuthButton-6HQLdlfg.js → CuiPluginOAuthButton-vMuRa9Qd.js} +2 -2
- package/dist/interface/assets/{CuiPluginTrustBadge-BS9iEcZr.js → CuiPluginTrustBadge-2wsPzYZA.js} +1 -1
- package/dist/interface/assets/CuiQRCode-Dh9EcaVc.js +1 -0
- package/dist/interface/assets/CuiRecordingsGrid-HjZEiSyp.js +1 -0
- package/dist/interface/assets/{CuiRecordingsGrid-Sv3uyj9a.css → CuiRecordingsGrid-Q4C3aeLo.css} +1 -1
- package/dist/interface/assets/CuiSchema-CSFoI6cg.js +1 -0
- package/dist/interface/assets/{CuiTopNavbarItem-MCdYsYHh.js → CuiTopNavbarItem-CSdvkKHR.js} +1 -1
- package/dist/interface/assets/{Faces-DDTbgPtz.js → Faces-CPZ5RA68.js} +1 -1
- package/dist/interface/assets/FirstSteps-CaF8STWH.js +1 -0
- package/dist/interface/assets/Instances-Cw7A4I7E.js +1 -0
- package/dist/interface/assets/{Logs-DEQlc2WM.js → Logs-4Mgj7YWu.js} +2 -2
- package/dist/interface/assets/{Menu-0EVo1-xs.js → Menu-T-54ZSSD.js} +1 -1
- package/dist/interface/assets/Metrics-CQGKmHev.css +1 -0
- package/dist/interface/assets/Metrics-Dgm5qpzh.js +6 -0
- package/dist/interface/assets/{OAuthDeviceFlow--YqcKa9u.js → OAuthDeviceFlow-DGikOkgK.js} +1 -1
- package/dist/interface/assets/Plugin-YxqbMbUc.js +1 -0
- package/dist/interface/assets/{PluginConsole-BB_dbd25.js → PluginConsole-ZZvJlgIh.js} +1 -1
- package/dist/interface/assets/PluginDetail-B9NgbzkJ.js +2 -0
- package/dist/interface/assets/{PluginSchema-C4dQGJOV.js → PluginSchema-Cx_LInpM.js} +1 -1
- package/dist/interface/assets/PluginSearch-5AgSWlmi.js +1 -0
- package/dist/interface/assets/{PluginSearch-gY-PHMyu.js → PluginSearch-P274oMvy.js} +2 -2
- package/dist/interface/assets/{PluginUpdateProgress-BjeH5abL.js → PluginUpdateProgress-0nV-8LvI.js} +1 -1
- package/dist/interface/assets/{Plugins-Kz1A-VUA.js → Plugins-Bvru3q2P.js} +1 -1
- package/dist/interface/assets/Recordings-BWGWC6Kq.js +1 -0
- package/dist/interface/assets/Recordings-cR4_6aGN.css +1 -0
- package/dist/interface/assets/{SensorEdit-CZyv_BYp.js → SensorEdit-gEw6HHZs.js} +1 -1
- package/dist/interface/assets/{SensorHistory-Mr03IqiL.js → SensorHistory-IgMpuLdC.js} +1 -1
- package/dist/interface/assets/Sensors-BUpob7LU.css +1 -0
- package/dist/interface/assets/Sensors-DukA8Xqx.js +2 -0
- package/dist/interface/assets/{Settings-CIv_iZ_m.js → Settings-DWpeWPJh.js} +1 -1
- package/dist/interface/assets/{Settings-B1MnGPuf.css → Settings-jQIhZFRY.css} +1 -1
- package/dist/interface/assets/SettingsAccount-C1OpCtob.js +1 -0
- package/dist/interface/assets/SettingsAccount-CrLcqzSn.js +1 -0
- package/dist/interface/assets/SettingsAppearance-AhUjml5E.js +1 -0
- package/dist/interface/assets/{SettingsAppearance-DEQyCR5b.js → SettingsAppearance-C8EEBVZN.js} +1 -1
- package/dist/interface/assets/{SettingsBackup-4y9MuseJ.js → SettingsBackup-BJupyZCJ.js} +1 -1
- package/dist/interface/assets/{SettingsList-DqyvUuS3.js → SettingsList-MXYSQMZ3.js} +1 -1
- package/dist/interface/assets/SettingsMqtt-F3pV1Bvo.js +1 -0
- package/dist/interface/assets/SettingsNotifications-BmaAccX9.js +1 -0
- package/dist/interface/assets/SettingsPermissions-Dd_yfNlk.js +1 -0
- package/dist/interface/assets/{SettingsRecordings-r9AwjQZX.js → SettingsRecordings-85B2bQIf.js} +1 -1
- package/dist/interface/assets/SettingsRemote-C_ikoXW7.js +2 -0
- package/dist/interface/assets/SettingsRemote-DzrfpHjw.css +1 -0
- package/dist/interface/assets/SettingsSystem-Ct3qms5O.js +2 -0
- package/dist/interface/assets/SettingsUsers-D36vZ8Zf.js +1 -0
- package/dist/interface/assets/{Terminal-Xo2uy0RX.js → Terminal-ltPiB9CB.js} +3 -3
- package/dist/interface/assets/{VariableInput-C3Jbe-vC.js → VariableInput-7c7Px-DM.js} +1 -1
- package/dist/interface/assets/{VariableSuggestions-pOrYkqys.js → VariableSuggestions-CrEa2zN-.js} +1 -1
- package/dist/interface/assets/{VersionsHandler-BhBynPF8.js → VersionsHandler-BFuLGk6Y.js} +1 -1
- package/dist/interface/assets/{VirtualSensorCreate-B3bwlAJz.js → VirtualSensorCreate-uumfOHgB.js} +1 -1
- package/dist/interface/assets/Workers-Bowrc1AF.js +2 -0
- package/dist/interface/assets/{api-B7yg8bdk.js → api-DLVsQBAO.js} +1 -1
- package/dist/interface/assets/api-daCggwpn.css +2 -0
- package/dist/interface/assets/api-py5HP4SF.js +2 -0
- package/dist/interface/assets/{auth-y-X5RKO6.js → auth-uQlIia9h.js} +1 -1
- package/dist/interface/assets/{automations-h1Wvnh36.js → automations-ChG1qcO7.js} +1 -1
- package/dist/interface/assets/cameras.schema-Cv7cjMz3.js +1 -0
- package/dist/interface/assets/cloudHandoff-CL4sircA.js +1 -0
- package/dist/interface/assets/{config-BZTZOfxI.js → config-B1aWtF-N.js} +1 -1
- package/dist/interface/assets/content-copy-CLkJTA4w.js +1 -0
- package/dist/interface/assets/eventLabels-BsPoPWS9.js +1 -0
- package/dist/interface/assets/{flowSchema-Dxxlrn77.js → flowSchema-CNnBxcwy.js} +1 -1
- package/dist/interface/assets/intercomService-DJHBix4X.js +1 -0
- package/dist/interface/assets/main-CLvcwWW7.js +3 -0
- package/dist/interface/assets/main-mJXdi_gx.css +1 -0
- package/dist/interface/assets/mqtt-Cyhv8shC.js +1 -0
- package/dist/interface/assets/{nodeDefinitions-DQQlFmPN.js → nodeDefinitions-c5rXs9EW.js} +1 -1
- package/dist/interface/assets/{notifications-C8eyTPRM.js → notifications-DniREnpL.js} +1 -1
- package/dist/interface/assets/{plugins-D0Txz0BA.js → plugins-5gXj0utE.js} +1 -1
- package/dist/interface/assets/round-alt-arrow-left-bold-CfccdiWp.js +1 -0
- package/dist/interface/assets/round-restart-alt-D3jT5i_T.js +1 -0
- package/dist/interface/assets/round-restart-alt-DdIfy7mU.css +1 -0
- package/dist/interface/assets/{sensorIcons-r5wmAxeD.js → sensorIcons-BXauWntX.js} +1 -1
- package/dist/interface/assets/{sensors-MIbrTUSa.js → sensors-Bc02Z1G9.js} +1 -1
- package/dist/interface/assets/{server-alwZXRo-.js → server-D2KGja0u.js} +1 -1
- package/dist/interface/assets/{theme-qmnHJ2WT.js → theme-vkX_uBgJ.js} +1 -1
- package/dist/interface/assets/types-CrvnT4-i.js +1 -0
- package/dist/interface/assets/types-D6IQ6ssc.js +1 -0
- package/dist/interface/assets/{types-DBWHsh0W.js → types-fCQkAGfW.js} +1 -1
- package/dist/interface/assets/useAppVersion-9zH_FspP.js +1 -0
- package/dist/interface/assets/useBackupRestore-Dbf24OqP.js +1 -0
- package/dist/interface/assets/{useCameraOptions-DYZKQx7X.js → useCameraOptions-BIaDXHeq.js} +1 -1
- package/dist/interface/assets/{useLogsSocket-DvwkpzT2.js → useLogsSocket-BLV7dWSG.js} +1 -1
- package/dist/interface/assets/{useNavLayout-CTX4KBkz.js → useNavLayout-wq-6JyWK.js} +1 -1
- package/dist/interface/assets/usePermissions-BiBlyeQl.js +1 -0
- package/dist/interface/assets/{usePluginUpdates-CiqRTrjF.js → usePluginUpdates-BZJSqnSF.js} +1 -1
- package/dist/interface/assets/usePushRegistration-CGFiyCuv.js +2 -0
- package/dist/interface/assets/{useServerRestart-Bqpn8N4T.js → useServerRestart-CjPAgzoX.js} +1 -1
- package/dist/interface/assets/{useStreamStatus-BWCnwuaj.js → useStreamStatus-BFCF1B3T.js} +1 -1
- package/dist/interface/assets/{useUpdateChannel-Cxm4QR-6.js → useUpdateChannel-F4WpbMJR.js} +1 -1
- package/dist/interface/assets/{useUserOptions-B2LNsU9C.js → useUserOptions-GbSC7_qt.js} +1 -1
- package/dist/interface/assets/{vendor-cameraui-C6beJsya.js → vendor-cameraui-0EJfDg8o.js} +56 -56
- package/dist/interface/assets/vendor-core-RnPzfwaA.js +1 -0
- package/dist/interface/assets/{vendor-primevue-DfyAPSov.js → vendor-primevue-b9CB9Uh0.js} +1 -1
- package/dist/interface/index.html +27 -27
- package/dist/interface/sw.js +1 -1
- package/dist/server/package.json +7 -7
- package/dist/server/requirements.txt +2 -2
- package/dist/server/src/_camera_ui_tools/camera_ui_rpc/client.py +8 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_rpc/types.py +20 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/__init__.py +12 -4
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/__init__.py +16 -4
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/config.py +7 -10
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/detection.py +96 -15
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/device.py +7 -13
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/enums.py +0 -7
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/events.py +2 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/notification.py +28 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/__init__.py +4 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/base.py +18 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/spec.py +27 -3
- package/dist/server/src/api/controllers/auth.controller.js +5 -0
- package/dist/server/src/api/controllers/auth.controller.js.map +1 -1
- package/dist/server/src/api/controllers/cameras.controller.d.ts +2 -7
- package/dist/server/src/api/controllers/cameras.controller.js +2 -94
- package/dist/server/src/api/controllers/cameras.controller.js.map +1 -1
- package/dist/server/src/api/controllers/frameWorkers.controller.d.ts +14 -0
- package/dist/server/src/api/controllers/frameWorkers.controller.js +120 -1
- package/dist/server/src/api/controllers/frameWorkers.controller.js.map +1 -1
- package/dist/server/src/api/controllers/remote.controller.js +3 -0
- package/dist/server/src/api/controllers/remote.controller.js.map +1 -1
- package/dist/server/src/api/controllers/server.controller.js +1 -0
- package/dist/server/src/api/controllers/server.controller.js.map +1 -1
- package/dist/server/src/api/database/constants.d.ts +0 -1
- package/dist/server/src/api/database/constants.js +0 -1
- package/dist/server/src/api/database/constants.js.map +1 -1
- package/dist/server/src/api/database/index.d.ts +2 -3
- package/dist/server/src/api/database/index.js +3 -6
- package/dist/server/src/api/database/index.js.map +1 -1
- package/dist/server/src/api/database/migrations/v2-1-10.js +33 -0
- package/dist/server/src/api/database/migrations/v2-1-10.js.map +1 -0
- package/dist/server/src/api/database/migrations/v2-1-11.js +31 -0
- package/dist/server/src/api/database/migrations/v2-1-11.js.map +1 -0
- package/dist/server/src/api/database/migrations/v2-1-12.js +25 -0
- package/dist/server/src/api/database/migrations/v2-1-12.js.map +1 -0
- package/dist/server/src/api/database/migrations/v2-1-6.d.ts +3 -0
- package/dist/server/src/api/database/migrations/v2-1-6.js +62 -0
- package/dist/server/src/api/database/migrations/v2-1-6.js.map +1 -0
- package/dist/server/src/api/database/migrations/v2-1-7.d.ts +3 -0
- package/dist/server/src/api/database/migrations/v2-1-7.js +44 -0
- package/dist/server/src/api/database/migrations/v2-1-7.js.map +1 -0
- package/dist/server/src/api/database/migrations/v2-1-9.d.ts +3 -0
- package/dist/server/src/api/database/migrations/v2-1-9.js +38 -0
- package/dist/server/src/api/database/migrations/v2-1-9.js.map +1 -0
- package/dist/server/src/api/database/record-schemas.d.ts +18 -13
- 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 -11
- package/dist/server/src/api/routes/cameras.routes.js +5 -62
- package/dist/server/src/api/routes/cameras.routes.js.map +1 -1
- package/dist/server/src/api/routes/frameWorkers.routes.js +22 -1
- package/dist/server/src/api/routes/frameWorkers.routes.js.map +1 -1
- package/dist/server/src/api/schemas/cameras.schema.d.ts +466 -154
- package/dist/server/src/api/schemas/cameras.schema.js +85 -43
- package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
- package/dist/server/src/api/schemas/frameWorkers.schema.d.ts +6 -0
- package/dist/server/src/api/schemas/frameWorkers.schema.js +7 -0
- package/dist/server/src/api/schemas/frameWorkers.schema.js.map +1 -1
- package/dist/server/src/api/schemas/server.schema.d.ts +1 -0
- package/dist/server/src/api/schemas/server.schema.js +4 -0
- package/dist/server/src/api/schemas/server.schema.js.map +1 -1
- package/dist/server/src/api/schemas/users.schema.d.ts +119 -84
- package/dist/server/src/api/schemas/users.schema.js +3 -0
- package/dist/server/src/api/schemas/users.schema.js.map +1 -1
- package/dist/server/src/api/services/cameras.service.d.ts +2 -4
- package/dist/server/src/api/services/cameras.service.js +2 -32
- package/dist/server/src/api/services/cameras.service.js.map +1 -1
- package/dist/server/src/api/types/index.d.ts +4 -9
- package/dist/server/src/api/types/index.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/metrics.d.ts +1 -1
- package/dist/server/src/api/websocket/nsp/metrics.js +54 -33
- package/dist/server/src/api/websocket/nsp/metrics.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/server.js +2 -2
- package/dist/server/src/api/websocket/nsp/server.js.map +1 -1
- package/dist/server/src/api/websocket/types.d.ts +20 -17
- package/dist/server/src/automations/actions/cameraControl.js +15 -1
- package/dist/server/src/automations/actions/cameraControl.js.map +1 -1
- package/dist/server/src/automations/actions/notificationControl.js +10 -1
- package/dist/server/src/automations/actions/notificationControl.js.map +1 -1
- package/dist/server/src/camera/controller.d.ts +1 -0
- package/dist/server/src/camera/controller.js +22 -8
- package/dist/server/src/camera/controller.js.map +1 -1
- package/dist/server/src/camera/decoder/audio-loop.d.ts +0 -1
- package/dist/server/src/camera/decoder/audio-loop.js +38 -68
- package/dist/server/src/camera/decoder/audio-loop.js.map +1 -1
- package/dist/server/src/camera/decoder/child.d.ts +6 -5
- package/dist/server/src/camera/decoder/child.js +31 -22
- package/dist/server/src/camera/decoder/child.js.map +1 -1
- package/dist/server/src/camera/decoder/detection-coordinator.d.ts +12 -10
- package/dist/server/src/camera/decoder/detection-coordinator.js +274 -163
- package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
- package/dist/server/src/camera/decoder/detection-pipeline.d.ts +12 -4
- package/dist/server/src/camera/decoder/detection-pipeline.js +71 -14
- package/dist/server/src/camera/decoder/detection-pipeline.js.map +1 -1
- package/dist/server/src/camera/decoder/event-manager.d.ts +2 -0
- package/dist/server/src/camera/decoder/event-manager.js +14 -0
- package/dist/server/src/camera/decoder/event-manager.js.map +1 -1
- package/dist/server/src/camera/decoder/event-thumbnailer.d.ts +4 -2
- package/dist/server/src/camera/decoder/event-thumbnailer.js +3 -3
- package/dist/server/src/camera/decoder/event-thumbnailer.js.map +1 -1
- package/dist/server/src/camera/decoder/frame-scaler.d.ts +10 -3
- package/dist/server/src/camera/decoder/frame-scaler.js +76 -13
- package/dist/server/src/camera/decoder/frame-scaler.js.map +1 -1
- package/dist/server/src/camera/decoder/perf-tracker.d.ts +27 -8
- package/dist/server/src/camera/decoder/perf-tracker.js +72 -50
- package/dist/server/src/camera/decoder/perf-tracker.js.map +1 -1
- package/dist/server/src/camera/decoder/plugin-registry.d.ts +1 -0
- package/dist/server/src/camera/decoder/plugin-registry.js +7 -0
- package/dist/server/src/camera/decoder/plugin-registry.js.map +1 -1
- package/dist/server/src/camera/decoder/ptz/autotracker.d.ts +4 -0
- package/dist/server/src/camera/decoder/ptz/autotracker.js +97 -18
- package/dist/server/src/camera/decoder/ptz/autotracker.js.map +1 -1
- package/dist/server/src/camera/decoder/secondary-stage.d.ts +4 -1
- package/dist/server/src/camera/decoder/secondary-stage.js +26 -3
- package/dist/server/src/camera/decoder/secondary-stage.js.map +1 -1
- package/dist/server/src/camera/decoder/sources/analysis-source.d.ts +14 -1
- package/dist/server/src/camera/decoder/sources/audio-source.d.ts +7 -3
- package/dist/server/src/camera/decoder/sources/audio-source.js +89 -78
- package/dist/server/src/camera/decoder/sources/audio-source.js.map +1 -1
- package/dist/server/src/camera/decoder/sources/buffered-source.d.ts +28 -9
- package/dist/server/src/camera/decoder/sources/buffered-source.js +114 -66
- package/dist/server/src/camera/decoder/sources/buffered-source.js.map +1 -1
- package/dist/server/src/camera/decoder/sources/frame-handle.d.ts +13 -0
- package/dist/server/src/camera/decoder/sources/frame-handle.js +106 -0
- package/dist/server/src/camera/decoder/sources/frame-handle.js.map +1 -0
- package/dist/server/src/camera/decoder/sources/frame-source.d.ts +25 -26
- package/dist/server/src/camera/decoder/sources/frame-source.js +213 -268
- package/dist/server/src/camera/decoder/sources/frame-source.js.map +1 -1
- package/dist/server/src/camera/decoder/sources/reconnect-loop.d.ts +17 -0
- package/dist/server/src/camera/decoder/sources/reconnect-loop.js +59 -0
- package/dist/server/src/camera/decoder/sources/reconnect-loop.js.map +1 -0
- package/dist/server/src/camera/decoder/sources/snapshot-fetcher.d.ts +15 -0
- package/dist/server/src/camera/decoder/sources/snapshot-fetcher.js +58 -0
- package/dist/server/src/camera/decoder/sources/snapshot-fetcher.js.map +1 -0
- package/dist/server/src/camera/decoder/sources/video-input.d.ts +18 -0
- package/dist/server/src/camera/decoder/sources/video-input.js +55 -0
- package/dist/server/src/camera/decoder/sources/video-input.js.map +1 -0
- package/dist/server/src/camera/decoder/types.d.ts +74 -18
- package/dist/server/src/camera/decoder/types.js +5 -0
- package/dist/server/src/camera/decoder/types.js.map +1 -1
- package/dist/server/src/camera/decoder/worker.d.ts +5 -1
- package/dist/server/src/camera/decoder/worker.js +39 -29
- package/dist/server/src/camera/decoder/worker.js.map +1 -1
- package/dist/server/src/camera/index.d.ts +3 -4
- package/dist/server/src/camera/index.js +6 -8
- package/dist/server/src/camera/index.js.map +1 -1
- package/dist/server/src/camera/privacy/mask.d.ts +27 -0
- package/dist/server/src/camera/privacy/mask.js +204 -0
- package/dist/server/src/camera/privacy/mask.js.map +1 -0
- package/dist/server/src/camera/privacy/snapshot.d.ts +13 -0
- package/dist/server/src/camera/privacy/snapshot.js +126 -0
- package/dist/server/src/camera/privacy/snapshot.js.map +1 -0
- package/dist/server/src/camera/streaming/fmp4-session.js +1 -1
- package/dist/server/src/camera/streaming/fmp4-session.js.map +1 -1
- package/dist/server/src/camera/streaming/rtp-session.js +1 -1
- package/dist/server/src/camera/streaming/rtp-session.js.map +1 -1
- package/dist/server/src/camera/utils/filter.d.ts +3 -3
- package/dist/server/src/camera/utils/filter.js.map +1 -1
- package/dist/server/src/camera/zones.d.ts +2 -0
- package/dist/server/src/camera/zones.js +11 -0
- package/dist/server/src/camera/zones.js.map +1 -0
- package/dist/server/src/manager/notificationManager.d.ts +2 -0
- package/dist/server/src/manager/notificationManager.js +21 -2
- package/dist/server/src/manager/notificationManager.js.map +1 -1
- package/dist/server/src/mqtt/bridge.d.ts +0 -1
- package/dist/server/src/mqtt/bridge.js +0 -33
- package/dist/server/src/mqtt/bridge.js.map +1 -1
- package/dist/server/src/plugins/runtime/node/proxy/cameraDevice.js +9 -0
- package/dist/server/src/plugins/runtime/node/proxy/cameraDevice.js.map +1 -1
- package/dist/server/src/plugins/runtime/node/proxy/sensorManager.js +8 -0
- package/dist/server/src/plugins/runtime/node/proxy/sensorManager.js.map +1 -1
- package/dist/server/src/plugins/runtime/python/proxy/camera_device.py +22 -13
- package/dist/server/src/plugins/runtime/python/proxy/sensor.py +1 -0
- package/dist/server/src/plugins/runtime/python/proxy/sensor_manager.py +13 -0
- package/dist/server/src/plugins/schema.js +1 -1
- package/dist/server/src/plugins/schema.js.map +1 -1
- package/dist/server/src/remote/services/cloudflare-managed.d.ts +2 -0
- package/dist/server/src/remote/services/cloudflare-managed.js +9 -2
- package/dist/server/src/remote/services/cloudflare-managed.js.map +1 -1
- package/dist/server/src/remote/services/cloudflare.d.ts +3 -0
- package/dist/server/src/remote/services/cloudflare.js +11 -0
- package/dist/server/src/remote/services/cloudflare.js.map +1 -1
- package/dist/server/src/remote/services/index.d.ts +2 -0
- package/dist/server/src/remote/services/index.js +60 -8
- package/dist/server/src/remote/services/index.js.map +1 -1
- package/dist/server/src/remote/services/tunnelConnections.d.ts +9 -0
- package/dist/server/src/remote/services/tunnelConnections.js +45 -0
- package/dist/server/src/remote/services/tunnelConnections.js.map +1 -0
- package/dist/server/src/remote/services/urlReadiness.d.ts +2 -0
- package/dist/server/src/remote/services/urlReadiness.js +7 -4
- package/dist/server/src/remote/services/urlReadiness.js.map +1 -1
- package/dist/server/src/rpc/interfaces/frameworker.d.ts +6 -5
- package/dist/server/src/rpc/interfaces/sensor.d.ts +1 -0
- package/dist/server/src/sensors/registry.d.ts +2 -0
- package/dist/server/src/sensors/registry.js +16 -0
- package/dist/server/src/sensors/registry.js.map +1 -1
- package/dist/server/src/utils/plugin-registry/index.js +1 -1
- package/dist/server/src/utils/plugin-registry/index.js.map +1 -1
- package/dist/server/src/workers/agent.js +1 -1
- package/dist/server/src/workers/agent.js.map +1 -1
- package/package.json +7 -7
- package/dist/interface/assets/Automation-DQyPNAzK.js +0 -3
- package/dist/interface/assets/AutomationImport-BDD_LuC1.js +0 -2
- package/dist/interface/assets/Camera-CYxRoESX.js +0 -2
- package/dist/interface/assets/Cameras-V_twilcC.js +0 -652
- package/dist/interface/assets/Camview-CSb2iVBf.js +0 -1
- package/dist/interface/assets/Config-BKuXgZxF.js +0 -2
- package/dist/interface/assets/ConfigActionCameraControl-TFe1_K6j.js +0 -1
- package/dist/interface/assets/ConfigActionNotificationControl-DI_t2wHh.js +0 -1
- package/dist/interface/assets/ConfigTriggerGeofence-DJt-3FpV.js +0 -1
- package/dist/interface/assets/Console-BZB3MZKj.js +0 -1
- package/dist/interface/assets/CuiBottomSheet-BnKYWBBA.js +0 -1
- package/dist/interface/assets/CuiCameraPipCard-DaJlFY1g.js +0 -1
- package/dist/interface/assets/CuiCameraRecordings-z4WblFJ9.js +0 -1
- package/dist/interface/assets/CuiCameraShares-CvKMe_kX.js +0 -1
- package/dist/interface/assets/CuiCameraTable-_7KwbPyM.js +0 -1
- package/dist/interface/assets/CuiConsole-BOfQ5I3b.js +0 -5
- package/dist/interface/assets/CuiPluginCard-CvNfBRhG.js +0 -2
- package/dist/interface/assets/CuiPluginCategoryChip-JG_8D7Wt.js +0 -1
- package/dist/interface/assets/CuiQRCode-Vd-1ssJK.js +0 -1
- package/dist/interface/assets/CuiRecordingsGrid-skKnK074.js +0 -1
- package/dist/interface/assets/CuiSchema-DvY3Bdnz.js +0 -1
- package/dist/interface/assets/FirstSteps-T4ra4jxE.js +0 -1
- package/dist/interface/assets/Instances-D_Td0oJ-.js +0 -1
- package/dist/interface/assets/Metrics-BstlZavQ.css +0 -1
- package/dist/interface/assets/Metrics-FFvFP2kR.js +0 -1
- package/dist/interface/assets/Plugin-CKcptqV9.js +0 -1
- package/dist/interface/assets/PluginDetail-Y_jg8hAX.js +0 -2
- package/dist/interface/assets/PluginSearch-D2efYsof.js +0 -1
- package/dist/interface/assets/Recordings-80Xd1V3L.css +0 -1
- package/dist/interface/assets/Recordings-BlBmyZlM.js +0 -1
- package/dist/interface/assets/Sensors-B-Qhfr5i.css +0 -1
- package/dist/interface/assets/Sensors-CHbtecpf.js +0 -2
- package/dist/interface/assets/SettingsAccount-DA67jXmp.js +0 -1
- package/dist/interface/assets/SettingsAccount-DPPwXOlM.js +0 -1
- package/dist/interface/assets/SettingsAppearance-C92Nlobb.js +0 -1
- package/dist/interface/assets/SettingsMqtt-CuTZBTrA.js +0 -1
- package/dist/interface/assets/SettingsNotifications-D7Vs6NoU.js +0 -1
- package/dist/interface/assets/SettingsPermissions-C_8g_nff.js +0 -1
- package/dist/interface/assets/SettingsRemote-DYld6-1F.css +0 -1
- package/dist/interface/assets/SettingsRemote-oDVzvhmy.js +0 -1
- package/dist/interface/assets/SettingsSystem-QfBIPq4i.js +0 -2
- package/dist/interface/assets/SettingsUsers-CqRJ8-7H.js +0 -1
- package/dist/interface/assets/Workers-tgzMqP3o.js +0 -2
- package/dist/interface/assets/api-1K2Gzz8B.js +0 -2
- package/dist/interface/assets/api-Bj4QRftG.css +0 -2
- package/dist/interface/assets/cameras.schema-CKnsFYBP.js +0 -1
- package/dist/interface/assets/cctv-BA5DvNlE.js +0 -1
- package/dist/interface/assets/cloudHandoff-qezHiAZI.js +0 -1
- package/dist/interface/assets/main-Ei2ORV9y.js +0 -3
- package/dist/interface/assets/main-kdyR9bI7.css +0 -1
- package/dist/interface/assets/mqtt-CCq5JGGk.js +0 -1
- package/dist/interface/assets/round-alt-arrow-left-bold-BxX4ufd0.js +0 -1
- package/dist/interface/assets/round-restart-alt-Bw-T1H6w.js +0 -1
- package/dist/interface/assets/round-restart-alt-CmrjVFat.css +0 -1
- package/dist/interface/assets/types-BTVMzSuj.js +0 -1
- package/dist/interface/assets/types-vaT6wuY0.js +0 -1
- package/dist/interface/assets/useAppVersion-BRc6OWZP.js +0 -1
- package/dist/interface/assets/useBackupRestore-DCO_Pw9q.js +0 -1
- package/dist/interface/assets/useElectron-CtslU_0f.js +0 -1
- package/dist/interface/assets/usePermissions-DpsfFydh.js +0 -1
- package/dist/interface/assets/usePushRegistration-Coz8RZob.js +0 -2
- package/dist/interface/assets/vendor-core-_ft7qIgH.js +0 -1
- package/dist/server/src/api/database/migrations/v2-0-50.js +0 -45
- package/dist/server/src/api/database/migrations/v2-0-50.js.map +0 -1
- package/dist/server/src/api/database/migrations/v2-0-51.js +0 -43
- package/dist/server/src/api/database/migrations/v2-0-51.js.map +0 -1
- package/dist/server/src/api/database/migrations/v2-1-0.js +0 -72
- package/dist/server/src/api/database/migrations/v2-1-0.js.map +0 -1
- /package/dist/server/src/api/database/migrations/{v2-0-50.d.ts → v2-1-10.d.ts} +0 -0
- /package/dist/server/src/api/database/migrations/{v2-0-51.d.ts → v2-1-11.d.ts} +0 -0
- /package/dist/server/src/api/database/migrations/{v2-1-0.d.ts → v2-1-12.d.ts} +0 -0
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./VersionsHandler-BhBynPF8.js","./vendor-cameraui-C6beJsya.js","./rolldown-runtime-C0FnF6B9.js","./vendor-BaiDFVEr.js","./api-1K2Gzz8B.js","./useElectron-CtslU_0f.js","./vendor-zod-Dbq0fBXY.js","./types-BTVMzSuj.js","./lightbulb-outline-ClK17CO6.js","./vendor-core-_ft7qIgH.js","./vendor-primevue-DfyAPSov.js","./vendor-dnd-ChrDrMuz.js","./close-BNAWPz0y.js","./vendor-draggabilly-DSeIE_bQ.js","./api-Bj4QRftG.css","./server-alwZXRo-.js","./useServerRestart-Bqpn8N4T.js","./plugins-D0Txz0BA.js","./CuiConsole-BOfQ5I3b.js","./vendor-xterm-BafMBqaV.js","./vendor-xterm-BrP-ENHg.css","./CuiConsole-CoA-Nq-_.css","./useLogsSocket-DvwkpzT2.js","./CuiMarkdownContent-PSq4kE1G.js","./vendor-markdown-Bw_90xkF.js","./vendor-markdown-DtOhvyRx.css","./alert-circle-C2AU59aR.js","./platformLabels-D-cF6OTP.js","./config-BZTZOfxI.js","./useUpdateChannel-Cxm4QR-6.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{Ft as e,H as t,Ir as n,jt as r}from"./vendor-cameraui-C6beJsya.js";import{ct as i,g as ee,gr as a,hn as te,st as o,xn as s}from"./api-1K2Gzz8B.js";import{Nn as c,On as l,Rt as ne,Xn as u,an as d,br as f,cn as p,cr as m,en as re,fn as h,gr as g,hn as ie,in as _,jn as ae,on as v,pn as y,qn as b,sn as x,t as S}from"./vendor-BaiDFVEr.js";import{a as oe,t as se}from"./useElectron-CtslU_0f.js";import{K as ce,z as le}from"./vendor-primevue-DfyAPSov.js";import{r as ue,t as de}from"./server-alwZXRo-.js";import{n as fe}from"./useServerRestart-Bqpn8N4T.js";import{n as pe,t as me}from"./api-B7yg8bdk.js";import{t as he}from"./useUpdateChannel-Cxm4QR-6.js";import{t as ge}from"./useAppVersion-BRc6OWZP.js";var _e={class:`flex flex-col w-full gap-6`},ve={key:0},ye={class:`flex items-center gap-4`},be={class:`flex flex-col field-switch-gap`},xe={for:`betaChannel`,class:`cui-label-switch`},Se={class:`flex flex-col gap-6`},Ce={key:0,class:`flex flex-row items-center justify-between`},we={class:`text-sm`},Te={key:1,class:`text-sm font-bold`},Ee={key:1,class:`flex flex-row items-center justify-between`},De={class:`text-sm`},Oe={class:`text-sm font-bold`},ke={key:0,class:`text-muted font-normal`},Ae={class:`flex flex-row items-center justify-between`},je={class:`text-sm`},Me={key:1,class:`text-sm font-bold`},Ne={key:2,class:`flex w-full items-center gap-2`},Pe={key:1},Fe={class:`card-title`},Ie={class:`flex flex-col gap-6`},Le={class:`text-sm`},Re={class:`card-title`},ze={class:`flex flex-col gap-6`},Be={class:`text-sm`},Ve={key:2},He={class:`card-title`},Ue={class:`flex flex-col gap-6`},We={class:`text-sm`},C=ie({__name:`SettingsSystem`,setup(ie){let C=i(()=>ne(()=>import(`./VersionsHandler-BhBynPF8.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29]),import.meta.url)),w=new me,T=new de,E=oe(),D=o(),{t:O}=n(),{isElectronApp:k,electron:A}=se(),{isOnline:j}=a(),{restarting:M,beginServerRestart:Ge}=fe(),{isBeta:N,setBeta:Ke}=he(),{appVersion:P,nativeVersion:F,refreshAppVersion:qe}=ge(),Je=ee();T.toggleQueryActivator(`checkVersionQuery`,!1);let{data:I,isBusy:Ye}=w.apiInfoQuery(),{data:L,isBusy:Xe}=T.checkVersionQuery(),{mutate:Ze,isPending:Qe}=T.restartServerQuery(),{mutateAsync:$e,isPending:et}=T.resetServerQuery(),R=m(O(`views.settings.unknown`)),z=m(O(`views.settings.unknown`)),B=m(),V=m(),H=m(),U=m(!1),W=m(!1),G=m(!1),K=m(!1),q=0,J=_(()=>I.value?.electron??!1),Y=_(()=>Qe.value||et.value||Ye.value||Xe.value||K.value||W.value),X=_(()=>I.value?.installedVersion||I.value?.version),tt=_(()=>I.value?.restartRequired??!1),Z=_(()=>Y.value||!j.value||M.value),nt=_(()=>X.value&&V.value?S(V.value,X.value)===1:!1),rt=_(()=>N.value&&X.value&&B.value?S(B.value,X.value)===1:!1),Q=_(()=>{let e=[nt.value?V.value:void 0,rt.value?B.value:void 0].filter(e=>!!e);if(e.length)return e.sort((e,t)=>S(t,e))[0]});function it(e){Ke(e===!0)}async function at(){if(!U.value){U.value=!0;try{let e=await ue(),t=new Blob([e],{type:`application/x-x509-ca-cert`});await s({blob:t,filename:`cert.pem`,mimeType:`application/x-x509-ca-cert`})}catch(e){E.error(e)}U.value=!1}}function ot(){Ge(),Ze()}function $(e){switch(e){case`restart`:D.openTextDialog({data:{title:O(`components.dialog.title.restart`),confirmText:O(`components.form.button.restart`),contentText:O(`components.dialog.message.confirm_restart_server`),loading:Y},onConfirm:ot});break;case`reset`:D.openTextDialog({data:{title:O(`components.dialog.title.reset_server`),confirmText:O(`components.form.button.reset`),contentText:O(`components.dialog.message.confirm_reset_server`),loading:Y},onConfirm:async()=>{try{await $e()}catch{}finally{Je.logout()}}});break;case`versions`:case`install`:D.openComponentDialog(C,{data:{title:O(`components.dialog.title.install_version`),confirmText:O(e===`install`?`components.form.button.update`:`components.form.button.install`),loading:Y,contentProps:{target:{type:`server`},installVersion:e===`install`?Q.value:void 0}}})}}async function st(){if(k)try{G.value=!0,z.value=await A.invoke(`get-app-version`)??O(`views.settings.unknown`)}catch(e){E.error(`Error getting electron app version:`,e)}finally{G.value=!1}}async function ct(){if(k)try{K.value=!0;let e=await A.invoke(`get-update-available`);H.value=e.isUpdateAvailable?e.version:void 0}catch(e){E.error(`Error checking for electron updates:`,e)}finally{K.value=!1}}async function lt(){if(k)try{W.value=!0,await A.invoke(`quit-and-install`)}catch(e){E.error(`Error installing electron update:`,e)}finally{W.value=!1}}async function ut(){let e=++q;for(let t=0;t<30;t++)try{if(await pe({signal:AbortSignal.timeout(5e3)}),e!==q)return;w.queryClient.invalidateQueries({queryKey:[`api`]}),T.queryClient.invalidateQueries({queryKey:[`version`]});return}catch{if(await new Promise(e=>setTimeout(e,2e3)),e!==q||!j.value)return}}return b(I,()=>{R.value=I.value?.version||O(`views.settings.unknown`),I.value&&T.toggleQueryActivator(`checkVersionQuery`,!J.value)},{deep:!0,immediate:!0}),b(L,()=>{V.value=L.value?.[`dist-tags`].latest,B.value=L.value?.[`dist-tags`].beta},{deep:!0,immediate:!0}),b([j,M],([e,t],[n,r])=>{J.value||(e&&!n||r&&!t&&e)&&ut()}),l(()=>{q++}),ae(()=>{k&&(st(),ct())}),(n,i)=>{let ee=le,a=ce,o=t,s=r,l=e;return c(),p(`div`,null,[d(`div`,_e,[g(J)?x(``,!0):(c(),p(`div`,ve,[y(o,{class:`cui-card`},{content:u(()=>[d(`div`,null,[d(`div`,ye,[d(`div`,be,[d(`label`,xe,f(n.$t(`views.settings.beta_updates`)),1),y(ee,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-switch-hint`},{default:u(()=>[h(f(n.$t(`views.settings.beta_updates_info`)),1)]),_:1})]),y(a,{"input-id":`betaChannel`,"model-value":g(N),class:`ml-auto shrink-0`,"onUpdate:modelValue":it},null,8,[`model-value`])])])]),_:1})])),d(`div`,null,[i[6]||=d(`span`,{class:`card-title`},`camera.ui`,-1),y(o,{class:`cui-card`},{content:u(()=>[d(`div`,Se,[g(k)?(c(),p(`div`,Ce,[d(`span`,we,f(n.$t(`views.settings.app`)),1),g(Y)?(c(),v(s,{key:0,class:`w-[15px] h-[15px] m-0`,"stroke-width":`5`})):(c(),p(`span`,Te,`v`+f(g(z)),1))])):x(``,!0),g(!1)&&g(P)?(c(),p(`div`,Ee,[d(`span`,De,f(n.$t(`views.settings.app`)),1),d(`span`,Oe,[h(` v`+f(g(P)),1),g(F)&&g(F)!==g(P)?(c(),p(`span`,ke,` (`+f(g(F))+`)`,1)):x(``,!0)])])):x(``,!0),d(`div`,Ae,[d(`span`,je,f(n.$t(`views.settings.server`)),1),g(Y)?(c(),v(s,{key:0,class:`w-[15px] h-[15px] m-0`,"stroke-width":`5`})):(c(),p(`span`,Me,[h(` v`+f(g(R)),1),g(tt)?(c(),p(re,{key:0},[h(` → v`+f(g(X)),1)],64)):x(``,!0)]))]),g(k)&&g(H)||!g(J)?(c(),p(`div`,Ne,[i[5]||=d(`div`,{class:`ml-auto`},null,-1),g(k)&&g(H)?(c(),v(l,{key:0,disabled:!g(k),loading:g(Y),class:`cui-button-medium`,label:`${n.$t(`components.form.button.update`)} (v${g(H)})`,onClick:lt},null,8,[`disabled`,`loading`,`label`])):x(``,!0),!g(J)&&g(tt)?(c(),v(l,{key:1,loading:g(Y),disabled:g(Z),class:`cui-button-medium`,label:`${n.$t(`components.form.button.restart`)} (v${g(X)})`,onClick:i[0]||=e=>$(`restart`)},null,8,[`loading`,`disabled`,`label`])):!g(J)&&g(Q)?(c(),v(l,{key:2,loading:g(Y),disabled:g(Z),class:`cui-button-medium`,label:`${n.$t(`components.form.button.update`)} (v${g(Q)})`,onClick:i[1]||=e=>$(`install`)},null,8,[`loading`,`disabled`,`label`])):x(``,!0),g(J)?x(``,!0):(c(),v(l,{key:3,loading:g(Y),disabled:g(Z),class:`cui-button-medium`,label:n.$t(`components.form.button.manage`),onClick:i[2]||=e=>$(`versions`)},null,8,[`loading`,`disabled`,`label`]))])):x(``,!0)])]),_:1})]),g(k)?x(``,!0):(c(),p(`div`,Pe,[d(`span`,Fe,f(n.$t(`views.settings.certificate`)),1),y(o,{class:`cui-card`},{content:u(()=>[d(`div`,Ie,[d(`span`,Le,f(n.$t(`views.settings.certificate_info`)),1),y(l,{loading:g(U)||g(Y),disabled:g(Z),class:`cui-button-medium ml-auto`,label:n.$t(`components.form.button.download`),onClick:at},null,8,[`loading`,`disabled`,`label`])])]),_:1})])),d(`div`,null,[d(`span`,Re,f(n.$t(`views.settings.restart_server`)),1),y(o,{class:`cui-card`},{content:u(()=>[d(`div`,ze,[d(`span`,Be,f(n.$t(`views.settings.restart_server_info`)),1),y(l,{loading:g(Y),disabled:g(Z),class:`cui-button-medium ml-auto`,label:n.$t(`components.form.button.restart`),onClick:i[3]||=e=>$(`restart`)},null,8,[`loading`,`disabled`,`label`])])]),_:1})]),(`hasPermission`in n?n.hasPermission:g(te))(void 0,`master`)?(c(),p(`div`,Ve,[d(`span`,He,f(n.$t(`views.settings.reset_server`)),1),y(o,{class:`cui-card !border-red-900`},{content:u(()=>[d(`div`,Ue,[d(`span`,We,f(n.$t(`views.settings.reset_server_info`)),1),y(l,{loading:g(Y),disabled:g(Z),class:`cui-button-medium ml-auto`,label:n.$t(`components.form.button.reset`),onClick:i[4]||=e=>$(`reset`)},null,8,[`loading`,`disabled`,`label`])])]),_:1})])):x(``,!0)])])}}});export{C as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Ft as e,H as t,Ir as n,Lt as r,M as i,Vt as a,jt as o}from"./vendor-cameraui-C6beJsya.js";import{E as s,En as c,O as l,cn as u,dr as d,ln as f,mr as p,st as m}from"./api-1K2Gzz8B.js";import{Gn as h,Nn as g,Xn as _,Zn as v,_r as y,an as b,b as x,bn as S,br as C,cn as w,cr as T,fn as E,fr as D,gr as O,hn as k,in as A,ir as j,mr as M,on as N,pn as P,qt as F,rr as I,sn as L,v as R,wn as z,y as B,yr as V}from"./vendor-BaiDFVEr.js";import{a as H}from"./useElectron-CtslU_0f.js";import{I as U,R as W,S as G,j as K,s as q}from"./vendor-primevue-DfyAPSov.js";import{t as ee}from"./delete-BF6keuqy.js";import{t as te}from"./CuiDataTable-DBNU5MJ_.js";import{n as ne,t as re}from"./auth-y-X5RKO6.js";var J={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Y(e,t){return g(),w(`svg`,J,[...t[0]||=[b(`path`,{fill:`currentColor`,d:`m21.7 13.35l-1 1l-2.05-2.05l1-1a.55.55 0 0 1 .77 0l1.28 1.28c.21.21.21.56 0 .77M12 18.94l6.06-6.06l2.05 2.05L14.06 21H12zM12 14c-4.42 0-8 1.79-8 4v2h6v-1.89l4-4c-.66-.08-1.33-.11-2-.11m0-10a4 4 0 0 0-4 4a4 4 0 0 0 4 4a4 4 0 0 0 4-4a4 4 0 0 0-4-4`},null,-1)]])}var ie=j({name:`mdi-account-edit`,render:Y}),X={for:`username`,class:`cui-label`},Z={for:`password`,class:`cui-label`},Q={for:`passwordConfirm`,class:`cui-label`},$={for:`role`,class:`cui-label`},ae=k({__name:`UserForm`,props:{user:{}},setup(e,{expose:t}){let r=new d,a=e,o=H(),c=p(),{t:u}=n(),f=S(`dialogRefProps`),{mutateAsync:m,isPending:v}=r.createUserQuery(),{mutateAsync:y,isPending:w}=r.patchUserQuery(),{user:E}=M(a),D=h(`formRef`),k=T({}),j=T([`user`,`admin`]),I=A(()=>!!(f.loading?.value||v.value||w.value));async function V(){let e=await D.value?.validate();if(!e?.valid)return o.error(`Validation failed`,e),c.add({severity:`error`,detail:u(`components.toast.validation_failed`),life:3e3}),null;E.value?await y({username:E.value.username,userData:k.value}):await m({userData:k.value})}return t({isLoading:I,onConfirm:V}),(e,t)=>{let n=i,r=W,a=q,o=K;return g(),N(O(x),{ref_key:`formRef`,ref:D,class:`flex flex-col gap-6`,"validation-schema":O(E)?O(l):O(s)},{default:_(()=>[P(O(B),{modelValue:O(k).username,"onUpdate:modelValue":t[0]||=e=>O(k).username=e,modelModifiers:{trim:!0},value:O(E)?.username??O(k).username,name:`username`,as:`div`,class:`flex flex-col field-gap`},{default:_(({field:t,errors:i})=>[b(`label`,X,C(e.$t(`components.form.label.username`)),1),P(r,null,{default:_(()=>[P(n,z(t,{invalid:i.length>0,loading:O(I),type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),P(F,{name:`fade`},{default:_(()=>[P(O(R),{name:`username`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`,`value`]),P(O(B),{modelValue:O(k).password,"onUpdate:modelValue":t[1]||=e=>O(k).password=e,name:`password`,as:`div`,class:`flex flex-col field-gap`},{default:_(({field:t,errors:n})=>[b(`label`,Z,C(e.$t(`components.form.label.new_password`)),1),P(r,null,{default:_(()=>[P(a,z({invalid:n.length>0},t,{loading:O(I),feedback:!1,"toggle-mask":``}),null,16,[`invalid`,`loading`])]),_:2},1024),P(F,{name:`fade`},{default:_(()=>[P(O(R),{name:`password`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),P(O(B),{modelValue:O(k).passwordConfirm,"onUpdate:modelValue":t[2]||=e=>O(k).passwordConfirm=e,name:`passwordConfirm`,as:`div`,class:`flex flex-col field-gap`},{default:_(({field:t,errors:n})=>[b(`label`,Q,C(e.$t(`components.form.label.new_password_confirm`)),1),P(r,null,{default:_(()=>[P(a,z({invalid:n.length>0},t,{loading:O(I),feedback:!1,"toggle-mask":``}),null,16,[`invalid`,`loading`])]),_:2},1024),P(F,{name:`fade`},{default:_(()=>[P(O(R),{name:`passwordConfirm`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),O(E)?.role===`master`?L(``,!0):(g(),N(O(B),{key:0,"model-value":O(k).role,name:`role`,as:`div`,class:`flex flex-col field-gap`},{default:_(({errors:n})=>[b(`label`,$,C(e.$t(`components.form.label.role`)),1),P(r,null,{default:_(()=>[P(o,{"model-value":O(E)?.role??O(k).role,options:O(j),invalid:n.length>0,loading:O(I),type:`text`,onValueChange:t[3]||=e=>O(k).role=e},null,8,[`model-value`,`options`,`invalid`,`loading`])]),_:2},1024),P(F,{name:`fade`},{default:_(()=>[P(O(R),{name:`role`,class:`cui-input-error`})]),_:1})]),_:1},8,[`model-value`]))]),_:1},8,[`validation-schema`])}}}),oe={class:`flex flex-col w-full gap-6`},se={class:`card-title`},ce={class:`flex flex-col gap-6`},le={class:`flex items-center gap-2`},ue={class:`flex flex-col`},de={class:`text-sm font-semibold text-color`},fe={class:`text-xs text-muted`},pe={class:`relative w-6 h-6`},me={class:`flex flex-row items-end justify-end gap-2`},he={class:`card-title`},ge={class:`flex items-center justify-center`},_e={class:`font-medium block max-w-[200px] truncate`},ve={class:`text-muted text-sm`},ye=k({__name:`SettingsUsers`,setup(i){let s=new re,l=new d,p=m(),{mdBreakpoint:x}=c(),{t:S}=n(),k=T({pageSize:15,page:1}),j=T({page:1,pageSize:-1}),{data:M,isBusy:F}=l.getUsersQuery(k),{mutate:L,isPending:R}=l.removeUserQuery(),{data:z,isBusy:B}=s.listAllSessionsQuery(j),{mutate:H,isPending:W}=s.revokeSessionQuery(),K={bodyRow:{class:`text-sm text-secondary`},column:{columnTitle:{class:`text-sm`}}},q=T({global:{value:null,matchMode:U.CONTAINS}}),J=h(`menuRef`),Y=A(()=>F.value||R.value),X=A(()=>z.value??[]),Z=A(()=>!!B.value),Q=A(()=>[{label:S(`views.settings.edit`),icon:ie,buttonProps:{disabled:Y.value},onClick:e=>{$(e)}},{label:S(`views.settings.remove`),icon:ee,iconProps:{class:`text-red-500`},labelProps:{class:`text-red-500`},buttonProps:{disabled:Y.value,severity:`danger`},onClick:e=>{L({username:e.username})}}]);function $(e){p.openComponentDialog(ae,{data:{title:S(e?`components.dialog.title.edit_user`:`components.dialog.title.create_new_user`),confirmText:S(e?`components.form.button.save`:`components.form.button.add`),loading:Y,contentProps:{user:D(e)}}})}return(n,i)=>{let s=o,c=f,l=G,d=e,p=te,m=t,h=r,S=ne,T=a;return g(),w(`div`,null,[b(`div`,oe,[b(`div`,null,[b(`span`,se,C(n.$t(`views.settings.registered_users`)),1),P(m,{class:`cui-card`},{content:_(()=>[b(`div`,ce,[P(p,{filters:O(q),"onUpdate:filters":i[0]||=e=>I(q)?q.value=e:null,value:O(M)?.result,paginator:O(k).page>1||O(M)?.result&&O(M).result.length>15,"data-key":`id`,"filter-display":`menu`,loading:O(Y),"global-filter-fields":[`username`],pt:K,"striped-rows":``,scrollable:``},{loading:_(()=>[P(s,{class:`w-[30px] h-[30px] m-0`,"stroke-width":`5`})]),default:_(()=>[P(l,{field:`username`,"align-frozen":`left`,frozen:!O(x),header:n.$t(`views.settings.title_user`),"header-class":`p-2 h-7 min-h-7 max-h-7 w-40 min-w-40 max-w-40`,class:`p-2 h-7 min-h-7 max-h-7 w-40 min-w-40 max-w-40`},{body:_(({data:e})=>[b(`div`,le,[P(c,{src:e.avatar,size:54},null,8,[`src`]),b(`div`,ue,[b(`span`,de,C(e.username),1),b(`span`,fe,C(e.role),1)])])]),_:1},8,[`frozen`,`header`]),P(l,{field:`action`,"header-class":`p-2 h-7 min-h-7 max-h-7`,class:`p-2 h-7 min-h-7 max-h-7 text-right`},{body:_(({data:e})=>[b(`div`,null,[P(d,{severity:`secondary`,text:``,rounded:``,loading:O(Y),class:`cui-icon-md`,onClick:t=>O(J)?.toggleMenu(t,void 0,e)},{icon:_(()=>[b(`div`,pe,[b(`div`,{class:y([`absolute top-1 left-1/2 -translate-x-1/2 w-1 h-1 rounded-full transform transition-all duration-100 origin-center bg-current`,{"w-4 h-[2px] rotate-45 top-1/2 -translate-y-1/2 rounded-none":O(J)?.isOpen&&O(J)?.data?._id===e._id}])},null,2),b(`div`,{class:y([`absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-1 h-1 rounded-full transition-all duration-100 bg-current`,{"opacity-0 scale-0":O(J)?.isOpen&&O(J)?.data?._id===e._id}])},null,2),b(`div`,{class:y([`absolute bottom-1 left-1/2 -translate-x-1/2 w-1 h-1 rounded-full transform transition-all duration-100 origin-center bg-current`,{"w-4 h-[2px] -rotate-45 bottom-1/2 translate-y-1/2 rounded-none":O(J)?.isOpen&&O(J)?.data?._id===e._id}])},null,2)])]),_:2},1032,[`loading`,`onClick`])])]),_:1})]),_:1},8,[`filters`,`value`,`paginator`,`loading`]),b(`div`,me,[P(d,{severity:`success`,loading:O(Y),class:`cui-button-medium mr-4 md:mr-0`,label:n.$t(`components.form.button.create_new_user`),onClick:i[1]||=e=>$()},null,8,[`loading`,`label`])])])]),_:1})]),b(`div`,null,[b(`span`,he,C(n.$t(`views.settings.logged_in_users`)),1),P(m,{class:`cui-card`},{content:_(()=>[P(p,{value:O(X),loading:O(Z),pt:K,"striped-rows":``,scrollable:``},{loading:_(()=>[P(s,{class:`w-[30px] h-[30px] m-0`,"stroke-width":`5`})]),empty:_(()=>[b(`span`,ve,C(n.$t(`views.settings.no_sessions`)),1)]),default:_(()=>[P(l,{field:`status`,header:``,style:{width:`3rem`}},{body:_(({data:e})=>[b(`div`,ge,[v(P(h,{style:V({background:e.is_current?`var(--primary-500)`:`transparent`})},null,8,[`style`]),[[T,{value:e.is_current?n.$t(`components.user_table.you`):void 0}]])])]),_:1}),P(l,{field:`device.name`,header:n.$t(`components.user_table.title_device`)},{body:_(({data:e})=>[b(`span`,_e,C(e.device.name),1)]),_:1},8,[`header`]),P(l,{field:`device.ip`,header:n.$t(`components.user_table.title_address`)},{body:_(({data:e})=>[E(C(e.device.ip??`-`),1)]),_:1},8,[`header`]),P(l,{field:`device.kind`,header:n.$t(`components.user_table.title_kind`)},null,8,[`header`]),P(l,{field:`action`,class:`text-right`},{body:_(({data:e})=>[v((g(),N(d,{severity:`danger`,text:``,rounded:``,loading:O(W),class:`cui-icon-md`,onClick:t=>O(H)({id:e.id})},{icon:_(()=>[P(S,{width:`100%`,height:`100%`})]),_:1},8,[`loading`,`onClick`])),[[T,{value:n.$t(`views.settings.active_sessions.revoke`)}]])]),_:1})]),_:1},8,[`value`,`loading`])]),_:1})])]),P(u,{ref_key:`menuRef`,ref:J,items:O(Q),popover:{pt:{content:{class:`p-0! rounded-xl! overflow-hidden!`}}}},null,8,[`items`])])}}});export{ye as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{Ft as e,H as t,Ir as n,M as r,jt as i}from"./vendor-cameraui-C6beJsya.js";import{B as a,Cn as o,Cr as s,En as c,R as l,Yn as ee,_t as u,fr as te,gt as ne,ht as re,i as d,mr as f,or as p,st as m}from"./api-1K2Gzz8B.js";import{$n as h,Dn as g,Mn as ie,Nn as _,Tn as ae,U as v,Xn as y,an as b,br as x,cn as S,cr as C,en as oe,fn as w,gr as T,hn as E,in as D,on as O,or as k,pn as A,q as se,qn as j,rr as M,sn as N}from"./vendor-BaiDFVEr.js";import{K as ce,L as le,R as ue,S as de,_ as fe,j as pe,z as me}from"./vendor-primevue-DfyAPSov.js";import{t as he}from"./api-B7yg8bdk.js";import{t as ge}from"./plugins-D0Txz0BA.js";import{t as _e}from"./CuiDataTable-DBNU5MJ_.js";import{t as ve}from"./back-filled-DcBDBvvP.js";import{t as ye}from"./pencil-outline-D7aD4cCo.js";import{n as be,t as xe}from"./round-restart-alt-Bw-T1H6w.js";import{t as Se}from"./deployed-code-update-xHE-blDN.js";async function Ce(){return(await s.get(`/workers/config`)).data}async function we(e){return(await s.patch(`/workers/config`,e)).data}async function Te(){return(await s.post(`/workers/pairings`)).data}async function P(e){await s.delete(`/workers/${e}`)}async function Ee(e){await s.post(`/workers/${e}/restart`)}async function De(e){await s.post(`/workers/${e}/update`)}async function Oe({agentId:e,name:t}){await s.patch(`/workers/${e}`,{name:t})}async function ke({cameraId:e,agentId:t}){return(await s.post(`/workers/assign`,{cameraId:e,agentId:t})).data}async function F({cameraId:e}){return(await s.post(`/workers/unassign`,{cameraId:e})).data}async function I({pluginName:e,agentId:t}){return(await s.post(`/workers/assign-plugin`,{pluginName:e,agentId:t})).data}async function L({pluginName:e}){return(await s.post(`/workers/unassign-plugin`,{pluginName:e})).data}var Ae=class{_queryClient=se();toast=f();getConfigQuery(){return te({queryKey:[`workersConfig`],queryFn:()=>Ce(),retry:!1})}patchConfigQuery(){return v({mutationFn:we,onSuccess:()=>this._queryClient.invalidateQueries({queryKey:[`workersConfig`]}),onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})}})}createPairingQuery(){return v({mutationFn:Te})}removeWorkerQuery(){return v({mutationFn:P,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}assignCameraQuery(){return v({mutationFn:ke,onMutate:({cameraId:e,agentId:t})=>this.patchCameraWorker(e,t),onError:(e,t,n)=>{n?.rollback(),this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}unassignCameraQuery(){return v({mutationFn:F,onMutate:({cameraId:e})=>this.patchCameraWorker(e,void 0),onError:(e,t,n)=>{n?.rollback(),this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}restartWorkerQuery(){return v({mutationFn:Ee})}updateWorkerQuery(){return v({mutationFn:De,onError:e=>{this.toast.add({severity:`error`,detail:e,life:5e3})}})}renameWorkerQuery(){return v({mutationFn:Oe,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})}})}assignPluginQuery(){return v({mutationFn:I,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`pluginsList`]})})}unassignPluginQuery(){return v({mutationFn:L,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`pluginsList`]})})}patchCameraWorker(e,t){let n=[];for(let[r,i]of this._queryClient.getQueriesData({queryKey:[`camerasList`]}))i?.result&&(n.push([r,i]),this._queryClient.setQueryData(r,{...i,result:i.result.map(n=>n._id===e?{...n,workerAgentId:t}:n)}));return{rollback:()=>{for(let[e,t]of n)this._queryClient.setQueryData(e,t)}}}},je={class:`flex flex-col gap-2 w-full`},Me={for:`workerName`,class:`cui-label`},Ne=E({__name:`RenameWorker`,props:{currentName:{}},setup(e,{expose:t}){let n=C(e.currentName);return t({onConfirm:async()=>n.value.trim()||null}),(e,t)=>{let i=r;return _(),S(`div`,je,[b(`label`,Me,x(e.$t(`views.workers.name`)),1),A(i,{id:`workerName`,modelValue:T(n),"onUpdate:modelValue":t[0]||=e=>M(n)?n.value=e:null,class:`w-full`,autofocus:``},null,8,[`modelValue`])])}}}),R=k({workers:[],workerHistory:{}}),z=null,B=null;function Pe(e){let t=R.workers.findIndex(t=>t.agentId===e.agentId);if(t!==-1){let n=[...R.workers];n[t]=e,R.workers=n}else R.workers=[...R.workers,e];let n=R.workerHistory[e.agentId]??[];R.workerHistory={...R.workerHistory,[e.agentId]:[...n,e].slice(-30)}}async function Fe(){if(B?.ready.value)try{R.workers=await B.request(`get-workers`)}catch{}}async function Ie(){if(B?.ready.value)try{R.workerHistory=await B.request(`get-worker-history`)}catch{}}async function V(){await Promise.all([Fe(),Ie()])}function Le(){return B||(z=h(!0),z.run(()=>{let e=p(`/workers`);B=e,e.on(`worker-update`,e=>Pe(e)),e.on(`worker-removed`,({agentId:e})=>{R.workers=R.workers.filter(t=>t.agentId!==e);let t={...R.workerHistory};delete t[e],R.workerHistory=t}),e.onReady(()=>{V()})}),B)}function Re(){function e(){Le()}function t(){}return{isConnected:D(()=>B?.connected.value??!1),workers:D(()=>R.workers),workerHistory:D(()=>R.workerHistory),connect:e,disconnect:t,loadAll:V}}var ze={key:0,class:`page-title`},Be={key:1,class:`w-full h-full flex items-center justify-center`},Ve={key:2,class:`flex flex-col w-full gap-6`},He={class:`card-title`},Ue={class:`flex flex-col gap-6`},We={class:`flex items-center gap-4`},Ge={class:`flex flex-col field-switch-gap`},Ke={class:`cui-label-switch`},qe={class:`flex flex-col field-gap`},Je={for:`master-address`,class:`cui-label`},Ye={class:`flex flex-col field-gap`},Xe={for:`leaf-port`,class:`cui-label`},Ze={class:`flex flex-row items-end justify-end`},Qe={key:0},$e={class:`card-title`},et={class:`flex flex-col items-center justify-center gap-4 py-6`},tt={class:`text-muted text-sm`},nt={key:1},rt={class:`card-title`},it={class:`text-sm block mb-6`},at={class:`text-muted text-sm`},ot={class:`font-bold text-color text-sm`},st={key:2},ct={class:`card-title`},lt={class:`text-sm block mb-6`},ut={class:`text-muted text-sm`},dt={class:`flex flex-col`},ft={class:`font-bold text-color text-sm`},pt={key:0,class:`text-muted text-xs`},mt={key:3},ht={class:`card-title`},gt={class:`flex flex-col gap-6`},_t={class:`text-sm`},vt={class:`flex flex-col field-gap`},yt={class:`cui-label`},bt={class:`flex flex-col field-gap`},xt={class:`flex flex-row items-center justify-between`},St={class:`cui-label`},Ct={class:`pairing-snippet`},wt={class:`flex flex-row items-end justify-end`},Tt=o(E({__name:`Workers`,setup(o){let{t:s}=n(),{smBreakpoint:te}=c(),p=m(),h=f(),v=Re(),{workers:E,workerHistory:k,isConnected:se}=v,Ce=new he,we=new u,Te=new ge,P=new Ae,{data:Ee,isLoading:De}=we.getCamerasQuery(C({page:1,pageSize:999})),{data:Oe,isLoading:ke}=Te.getPluginsQuery(C({page:1,pageSize:999})),{data:F}=P.getConfigQuery(),{mutateAsync:I,isPending:L}=P.patchConfigQuery(),{mutateAsync:je}=P.assignCameraQuery(),{mutateAsync:Me}=P.unassignCameraQuery(),{mutateAsync:R}=P.restartWorkerQuery(),{mutateAsync:z}=P.updateWorkerQuery(),{mutateAsync:B,isPending:Pe}=P.createPairingQuery(),{mutateAsync:Fe}=P.removeWorkerQuery(),{mutateAsync:Ie}=P.assignPluginQuery(),{mutateAsync:V}=P.unassignPluginQuery(),{mutateAsync:Le}=P.renameWorkerQuery(),{data:Tt}=Ce.apiInfoQuery(),Et={bodyRow:{class:`text-sm text-secondary`},column:{columnTitle:{class:`text-sm font-semibold`}}},Dt=C(!1),H=C([]),U=C([]),W=C([]),G=C(new Set),K=C(new Set),q=C(null),J=C(``),Y=C(7422),Ot=!1,X=new Map,kt=D(()=>Ee.value?.result??[]),At=D(()=>Oe.value?.result??[]),Z=D(()=>F.value?.enabled??!1),jt=D(()=>(F.value?.suggestedAddresses??[]).map(e=>({label:e,value:e}))),Mt=D(()=>Y.value!==(F.value?.port??7422)),Nt=D(()=>J.value!==(F.value?.address??``)||Mt.value),Pt=D(()=>new Set(E.value.map(e=>e.agentId))),Q=D(()=>Tt.value?.version),Ft=D(()=>q.value?Math.max(0,Math.round((q.value.expiresAt-Date.now())/6e4)):0),It=D(()=>q.value?[`worker:`,` master: ${q.value.address||`<MASTER_IP>`}`,` apiPort: ${q.value.apiPort}`,` pairingCode: ${q.value.code}`,` name: my-worker`,` capabilities:`,` - frameDecoding`,` - pluginHost`].join(`
|
|
2
|
-
`):``),Lt=D(()=>[{type:`indicator`,field:`status`,columnProps:{headerClass:`w-5 max-w-5`,class:`w-5 max-w-5`},color(e){return e.online?e.versionMismatch?`orange`:`green`:`red`},tooltip(e){return e.online?e.update?.error?s(`views.workers.update_failed`,{error:e.update.error}):e.update?.updating?s(`views.workers.updating`):e.versionMismatch?s(`views.workers.version_mismatch`,{version:e.version||`?`}):s(`views.workers.online`):s(`views.workers.offline`)}},{type:`category`,field:`name`,name:s(`views.workers.name`),columnProps:{headerClass:`w-40 min-w-40 max-w-40`,class:`w-40 min-w-40 max-w-40`},props:{class:`font-bold text-color`}},{type:`category`,field:e=>e.version?e.versionMismatch&&Q.value?`v${e.version} → v${Q.value}`:`v${e.version}`:`—`,name:s(`views.workers.version`),asChip:!0,columnProps:{headerClass:`min-w-30`,class:`min-w-30`}},{type:`category`,field:e=>e.platform?`${e.platform.os}/${e.platform.arch}`:`—`,name:s(`views.workers.platform`),asChip:!0,columnProps:{headerClass:`min-w-40`,class:`min-w-40`}},{type:`category`,field:e=>e.pid?.toString()??`—`,name:s(`views.workers.pid`),columnProps:{headerClass:`min-w-20`,class:`min-w-20`}},{type:`category`,field:e=>e.cpuLoad===void 0?`—`:`${e.cpuLoad}%`,name:s(`views.workers.cpu`),asChip:!0,columnProps:{headerClass:`min-w-30`,class:`min-w-30`}},{type:`chart`,field:`cpu_chart`,for:`cpuLoad`,columnProps:{headerClass:`min-w-[250px]`,class:`min-w-[250px]`}},{type:`category`,field:e=>e.memLoad===void 0?`—`:`${e.memLoad}%`,name:s(`views.workers.memory`),asChip:!0,columnProps:{headerClass:`min-w-30`,class:`min-w-30`}},{type:`chart`,field:`memory_chart`,for:`memLoad`,columnProps:{headerClass:`min-w-[250px]`,class:`min-w-[250px]`}},{type:`action`,field:`actions`,columnProps:{class:`text-right`},buttons:[{icon:ye,buttonProps:{severity:`secondary`},tooltip:()=>s(`views.workers.rename_worker`),action:e=>zt(e)},{icon:Se,buttonProps:{severity:`secondary`},loading:e=>e.update?.updating||W.value.includes(e.agentId),disabled:e=>!e.online||!e.versionMismatch||!e.update?.updatable,tooltip:e=>Bt(e),action:e=>Vt(e.agentId)},{icon:xe,buttonProps:{severity:`secondary`},loading:e=>H.value.includes(e.name),disabled:e=>!e.online,tooltip:()=>s(`views.workers.restart_worker`),action:e=>Ht(e.name,e.agentId)},{icon:l,buttonProps:{severity:`danger`},loading:e=>U.value.includes(e.agentId),tooltip:()=>s(`views.workers.remove_worker`),action:e=>tn(e)}]}]),Rt=D(()=>{let e=k.value;return E.value.reduce((t,n)=>{for(let r of[`cpuLoad`,`memLoad`]){let i=e[n.agentId]??[],a=i.slice(-30).filter(e=>e[r]!==void 0).map(e=>parseFloat(e[r])),o=i.slice(-30).map(e=>e.lastHeartbeat),s=[...a,...Array(30-a.length).fill(0)],c=[...o,...Array(30-o.length).fill(null)];t[`${n.name}_${r}`]={labels:c,datasets:[{data:s,backgroundColor:e=>{let t=e.raw;return t>=90?`#FA5252`:t>=50?`#FF9966`:`#df2a4c`},borderWidth:0,borderRadius:3,barPercentage:.8,categoryPercentage:.8,maxBarThickness:4,barThickness:4}]}}return t},{})});function zt(e){p.openComponentDialog(Ne,{data:{title:s(`views.workers.rename_worker`),confirmText:s(`views.workers.save`),contentProps:{currentName:e.name}},onConfirm:async t=>{!t||t===e.name||await Le({agentId:e.agentId,name:t})}})}function Bt(e){return e.update?.updating?s(`views.workers.updating`):Q.value?s(`views.workers.update_worker`,{version:Q.value}):s(`views.workers.update_worker_short`)}async function Vt(e){X.delete(e),W.value.push(e);try{await z(e)}finally{W.value=W.value.filter(t=>t!==e)}}async function Ht(e,t){H.value.push(e);try{await R(t)}finally{H.value=H.value.filter(t=>t!==e)}}function Ut(){let e=[];for(let t of E.value){let n=t.online?t.name:`${t.name} (${s(`views.workers.offline`).toLowerCase()})`;e.push({label:n,value:t.agentId})}return e}function $(e){return e&&Pt.value.has(e)?e:null}function Wt(e,t){if(!e?.length)return!0;let n=e.filter(e=>e.startsWith(`!`)).map(e=>e.slice(1)),r=e.filter(e=>!e.startsWith(`!`));return n.includes(t)?!1:r.length===0||r.includes(t)}function Gt(e,t){return!t.platform||Wt(e.os,t.platform.os)&&Wt(e.cpu,t.platform.arch)}function Kt(e){let t=[];return e.os?.length&&t.push(`os: ${e.os.join(`, `)}`),e.cpu?.length&&t.push(`cpu: ${e.cpu.join(`, `)}`),t.join(` · `)}function qt(e){let t=[];for(let n of E.value){let r=Gt(e,n),i=n.online?``:` (${s(`views.workers.offline`).toLowerCase()})`,a=r?``:` — ${s(`views.workers.incompatible`)}`;t.push({label:`${n.name}${i}${a}`,value:n.agentId,disabled:!r})}return t}function Jt(e){return K.value.has(e)}async function Yt(e,t){if(t===$(e.workerAgentId))return;let n=new Set(K.value);n.add(e.pluginName),K.value=n;try{t?await Ie({pluginName:e.pluginName,agentId:t}):await V({pluginName:e.pluginName})}catch{}finally{let t=new Set(K.value);t.delete(e.pluginName),K.value=t}}function Xt(e){return G.value.has(e)}async function Zt(e,t){if(t===$(e.workerAgentId))return;let n=new Set(G.value);n.add(e._id),G.value=n;try{t?await je({cameraId:e._id,agentId:t}):await Me({cameraId:e._id})}catch{}finally{let t=new Set(G.value);t.delete(e._id),G.value=t}}async function Qt(){try{q.value=await B()}catch{}}async function $t(e){if(e&&!J.value&&(J.value=F.value?.suggestedAddresses?.[0]??``,!J.value)){p.openTextDialog({data:{title:s(`views.workers.enable_workers`),contentText:s(`views.workers.address_required`),confirmText:s(`views.workers.ok`)}});return}try{await I(e?{enabled:!0,address:J.value,port:Y.value}:{enabled:!1})}catch{}}async function en(){try{await I({address:J.value,port:Y.value})}catch{}}function tn(e){p.openTextDialog({data:{title:s(`views.workers.remove_worker`),confirmText:s(`views.workers.remove`),contentText:s(`views.workers.remove_worker_confirm`,{name:e.name}),confirmButtonProps:{severity:`danger`}},dialogSize:{desktop:{width:`auto`,maxWidth:`560px`,maxHeight:`90vh`}},onConfirm:async()=>{U.value.push(e.agentId);try{await Fe(e.agentId)}finally{U.value=U.value.filter(t=>t!==e.agentId)}}})}return g(async()=>{v.connect(),await ae(),v.loadAll(),Dt.value=!0}),j(F,e=>{e&&(J.value=e.address,Y.value=e.port)},{immediate:!0}),j(E,e=>{if(!Ot){if(!e.length)return;for(let t of e)t.update?.error&&X.set(t.agentId,t.update.error);Ot=!0;return}for(let t of e){if(t.update?.updating){X.delete(t.agentId);continue}let e=t.update?.error;if(!e){X.delete(t.agentId);continue}X.get(t.agentId)!==e&&(X.set(t.agentId,e),h.add({severity:`error`,summary:t.name,detail:s(`views.workers.update_failed`,{error:e}),life:6e3}))}}),ie(()=>{v.disconnect()}),(n,o)=>{let s=ve,c=e,l=a,u=i,f=me,p=ce,m=pe,h=fe,g=t,ie=be,ae=ee,v=de,C=_e,D=r,k=ne,j=le,he=ue;return _(),S(`div`,null,[T(te)?N(``,!0):(_(),S(`h1`,ze,x(n.$t(`views.workers.title`)),1)),A(l,{position:`left`},{default:y(()=>[A(c,{severity:`secondary`,text:``,class:`cui-button p-2 text-color non-draggable-region`,onClick:o[0]||=e=>n.$router.push(`/menu`)},{icon:y(()=>[A(s,{class:`w-6 h-6`})]),_:1})]),_:1}),!T(Dt)||!T(se)?(_(),S(`div`,Be,[A(u,{class:`w-[30px] h-[30px] m-0`,"stroke-width":`5`})])):(_(),S(`div`,Ve,[b(`div`,null,[b(`span`,He,x(n.$t(`views.workers.configuration`)),1),A(g,{class:`cui-card`},{content:y(()=>[b(`div`,Ue,[b(`div`,We,[b(`div`,Ge,[b(`label`,Ke,x(n.$t(`views.workers.enable_workers`)),1),A(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-switch-hint`},{default:y(()=>[w(x(n.$t(`views.workers.enable_workers_description`)),1)]),_:1})]),A(p,{"model-value":T(Z),disabled:T(L),class:`ml-auto shrink-0`,"onUpdate:modelValue":$t},null,8,[`model-value`,`disabled`])]),T(Z)?(_(),S(oe,{key:0},[b(`div`,qe,[b(`label`,Je,x(n.$t(`views.workers.master_address`)),1),A(m,{modelValue:T(J),"onUpdate:modelValue":o[1]||=e=>M(J)?J.value=e:null,"input-id":`master-address`,options:T(jt),editable:``,"option-label":`label`,"option-value":`value`,placeholder:n.$t(`views.workers.master_address_placeholder`),class:`w-full`},null,8,[`modelValue`,`options`,`placeholder`]),A(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:y(()=>[w(x(n.$t(`views.workers.master_address_hint`)),1)]),_:1})]),b(`div`,Ye,[b(`label`,Xe,x(n.$t(`views.workers.leaf_port`)),1),A(h,{modelValue:T(Y),"onUpdate:modelValue":o[2]||=e=>M(Y)?Y.value=e:null,"input-id":`leaf-port`,min:1024,max:65535,"use-grouping":!1,class:`w-full`},null,8,[`modelValue`]),T(Mt)&&(T(F)?.pairedWorkers??0)>0?(_(),O(f,{key:0,severity:`warn`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:y(()=>[w(x(n.$t(`views.workers.port_change_warning`)),1)]),_:1})):N(``,!0)]),b(`div`,Ze,[A(c,{class:`cui-button-medium`,label:n.$t(`views.workers.save`),loading:T(L),disabled:!T(Nt),onClick:en},null,8,[`label`,`loading`,`disabled`])])],64)):N(``,!0)])]),_:1})]),T(Z)?(_(),S(`div`,Qe,[b(`span`,$e,x(n.$t(`views.workers.workers`)),1),T(E).length?(_(),O(ie,{key:0,items:T(E),headers:T(Lt),"chart-data":T(Rt)},null,8,[`items`,`headers`,`chart-data`])):(_(),O(g,{key:1,class:`cui-card`,pt:{root:{class:`h-full`}}},{content:y(()=>[b(`div`,et,[A(ae,{class:`w-12 h-12 text-muted`}),b(`span`,tt,x(n.$t(`views.workers.no_workers`)),1)])]),_:1}))])):N(``,!0),T(Z)&&T(E).length?(_(),S(`div`,nt,[b(`span`,rt,x(n.$t(`views.workers.camera_assignments`)),1),A(g,{class:`cui-card`},{content:y(()=>[b(`span`,it,x(n.$t(`views.workers.camera_assignments_description`)),1),A(C,{value:T(kt),loading:T(De),pt:Et,"striped-rows":``,class:`w-full`},{loading:y(()=>[A(u,{class:`w-[30px] h-[30px] m-0`,"stroke-width":`5`})]),empty:y(()=>[b(`span`,at,x(n.$t(`views.workers.no_cameras`)),1)]),default:y(()=>[A(v,{field:`name`,header:n.$t(`views.workers.camera`),"header-class":`p-2 min-w-40`,class:`p-2 min-w-40`},{body:y(({data:e})=>[b(`span`,ot,x(e.name),1)]),_:1},8,[`header`]),A(v,{header:n.$t(`views.workers.workers`),"header-class":`p-2 w-full`,class:`p-2 w-full`},{body:y(({data:e})=>[A(m,{"model-value":$(e.workerAgentId),options:Ut(),"option-label":`label`,"option-value":`value`,placeholder:n.$t(`views.workers.local`),class:`w-full`,"show-clear":``,loading:Xt(e._id),disabled:Xt(e._id),"onUpdate:modelValue":t=>Zt(e,t)},null,8,[`model-value`,`options`,`placeholder`,`loading`,`disabled`,`onUpdate:modelValue`])]),_:1},8,[`header`])]),_:1},8,[`value`,`loading`])]),_:1})])):N(``,!0),T(Z)&&T(E).length?(_(),S(`div`,st,[b(`span`,ct,x(n.$t(`views.workers.plugin_assignments`)),1),A(g,{class:`cui-card`},{content:y(()=>[b(`span`,lt,x(n.$t(`views.workers.plugin_assignments_description`)),1),A(C,{value:T(At),loading:T(ke),pt:Et,"striped-rows":``,class:`w-full`},{loading:y(()=>[A(u,{class:`w-[30px] h-[30px] m-0`,"stroke-width":`5`})]),empty:y(()=>[b(`span`,ut,x(n.$t(`views.workers.no_plugins`)),1)]),default:y(()=>[A(v,{field:`displayName`,header:n.$t(`views.workers.plugin`),"header-class":`p-2 min-w-40`,class:`p-2 min-w-40`},{body:y(({data:e})=>[b(`div`,dt,[b(`span`,ft,x(e.displayName),1),Kt(e)?(_(),S(`span`,pt,x(Kt(e)),1)):N(``,!0)])]),_:1},8,[`header`]),A(v,{header:n.$t(`views.workers.workers`),"header-class":`p-2 w-full`,class:`p-2 w-full`},{body:y(({data:e})=>[A(m,{"model-value":$(e.workerAgentId),options:qt(e),"option-label":`label`,"option-value":`value`,"option-disabled":`disabled`,placeholder:n.$t(`views.workers.local`),class:`w-full`,"show-clear":``,loading:Jt(e.pluginName),disabled:Jt(e.pluginName),"onUpdate:modelValue":t=>Yt(e,t)},null,8,[`model-value`,`options`,`placeholder`,`loading`,`disabled`,`onUpdate:modelValue`])]),_:1},8,[`header`])]),_:1},8,[`value`,`loading`])]),_:1})])):N(``,!0),T(Z)?(_(),S(`div`,mt,[b(`span`,ht,x(n.$t(`views.workers.pair_worker`)),1),A(g,{class:`cui-card`},{content:y(()=>[b(`div`,gt,[b(`span`,_t,x(n.$t(`views.workers.pair_worker_description`)),1),T(q)?(_(),S(oe,{key:0},[b(`div`,vt,[b(`label`,yt,x(n.$t(`views.workers.pairing_code`)),1),A(he,null,{default:y(()=>[A(D,{"model-value":T(q).code,readonly:``,type:`text`},null,8,[`model-value`]),A(j,null,{default:y(()=>[A(k,{"action-text":n.$t(`views.workers.copied`),icon:T(re),"button-props":{severity:`secondary`,text:!0},onAction:o[3]||=e=>T(d)(T(q).code)},null,8,[`action-text`,`icon`])]),_:1})]),_:1}),A(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:y(()=>[w(x(n.$t(`views.workers.pairing_expires`,{minutes:T(Ft)})),1)]),_:1})]),b(`div`,bt,[b(`div`,xt,[b(`label`,St,x(n.$t(`views.workers.pairing_snippet`)),1),A(k,{"action-text":n.$t(`views.workers.copied`),icon:T(re),"button-props":{severity:`secondary`,text:!0},onAction:o[4]||=e=>T(d)(T(It))},null,8,[`action-text`,`icon`])]),b(`pre`,Ct,x(T(It)),1),A(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:y(()=>[w(x(n.$t(`views.workers.pairing_snippet_hint`)),1)]),_:1})])],64)):N(``,!0),b(`div`,wt,[A(c,{class:`cui-button-medium`,label:n.$t(`views.workers.generate_code`),loading:T(Pe),onClick:Qt},null,8,[`label`,`loading`])])])]),_:1})])):N(``,!0)]))])}}}),[[`__scopeId`,`data-v-94ca58a2`]]);export{Tt as default};
|