@camstack/addon-osd-manager 0.1.161 → 0.1.164
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/{MotionZonesSettings-CSheC3_V.mjs → MotionZonesSettings-sqWBK5nw.mjs} +2 -2
- package/dist/{PrivacyMaskSettings-I6eE4GFM.mjs → PrivacyMaskSettings-xEGyOq4f.mjs} +4 -4
- package/dist/{SceneMonitorEditor-mNJ89n0T.mjs → SceneMonitorEditor-BF58OFQ-.mjs} +3 -3
- package/dist/_stub.js +201 -172
- package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_osd_manager_page-BYQUZdGL.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_osd_manager_page-BVXN8N5v.mjs} +3 -3
- package/dist/_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-DaKJWQOl.mjs +26 -0
- package/dist/{hostInit-DFyjx8Xk.mjs → hostInit-CNzckgbj.mjs} +2 -2
- package/dist/index.js +179 -8
- package/dist/index.mjs +179 -8
- package/dist/{player-overlays-DFXmMB9Y.mjs → player-overlays-DiRRm15u.mjs} +1 -1
- package/dist/remoteEntry.js +1 -1
- package/dist/{responsive-DLFs-5i_.mjs → responsive-DRg2S9WJ.mjs} +1 -1
- package/dist/{scene-monitor-copy-DVNcikwa.mjs → scene-monitor-copy-viJey82o.mjs} +1 -1
- package/dist/{square-Co3Eglp3.mjs → square-R4lwwyF4.mjs} +1 -1
- package/dist/{trash-2-DnKldIWK.mjs → trash-2-CdSVfqT4.mjs} +1 -1
- package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-C3yC0JaQ.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-CdD-t4Hz.mjs} +1 -1
- package/package.json +1 -1
- package/dist/_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-B2mEdhqd.mjs +0 -26
package/dist/_stub.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import "./virtualExposes-BgZ5Cn7S.mjs";
|
|
2
|
-
import "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-
|
|
2
|
+
import "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-CdD-t4Hz.mjs";
|
|
3
3
|
import { _ as e, b as t, c as n, d as r, f as i, g as a, h as o, i as s, l as c, m as l, n as u, p as d, r as f, t as p, u as m, v as h } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react__loadShare__.js-C5jUMd7X.mjs";
|
|
4
|
-
import { a as g, c as _, i as v, n as y, o as b, r as x, s as S } from "./responsive-
|
|
5
|
-
import { d as C, l as w, s as T, u as E } from "./scene-monitor-copy-
|
|
6
|
-
import { i as D, r as O } from "./player-overlays-
|
|
7
|
-
import { i as ee, n as te, r as ne, t as k } from "./square-
|
|
8
|
-
import { t as re } from "./trash-2-
|
|
4
|
+
import { a as g, c as _, i as v, n as y, o as b, r as x, s as S } from "./responsive-DRg2S9WJ.mjs";
|
|
5
|
+
import { d as C, l as w, s as T, u as E } from "./scene-monitor-copy-viJey82o.mjs";
|
|
6
|
+
import { i as D, r as O } from "./player-overlays-DiRRm15u.mjs";
|
|
7
|
+
import { i as ee, n as te, r as ne, t as k } from "./square-R4lwwyF4.mjs";
|
|
8
|
+
import { t as re } from "./trash-2-CdSVfqT4.mjs";
|
|
9
9
|
import { t as ie } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_trpc_mf_1_react_mf_2_query__loadShare__.js-BpP33rwB.mjs";
|
|
10
10
|
import { n as A, r as j, t as M } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-DalfdIDw.mjs";
|
|
11
11
|
import { t as ae } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react_mf_2_dom__loadShare__.js-qB5uHZAd.mjs";
|
|
12
12
|
import { n as N, t as oe } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-CHxDN0gE.mjs";
|
|
13
13
|
import "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-Dhy3m6Ij.mjs";
|
|
14
14
|
import "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_trpc_mf_1_client__loadShare__.js-C7omKvJr.mjs";
|
|
15
|
-
import { _ as P, a as F, b as I, c as se, d as L, f as ce, g as le, h as ue, l as de, m as fe, n as pe, o as me, p as he, r as ge, s as _e, t as ve, u as ye, v as R, y as be } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-
|
|
15
|
+
import { _ as P, a as F, b as I, c as se, d as L, f as ce, g as le, h as ue, l as de, m as fe, n as pe, o as me, p as he, r as ge, s as _e, t as ve, u as ye, v as R, y as be } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-DaKJWQOl.mjs";
|
|
16
16
|
import "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_sdk__loadShare__.js-B_4MkXHU.mjs";
|
|
17
17
|
var xe = _("activity", [["path", {
|
|
18
18
|
d: "M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",
|
|
@@ -3486,7 +3486,7 @@ var zr = _("user-check", [
|
|
|
3486
3486
|
//#region ../ui-library/src/trpc-react.ts
|
|
3487
3487
|
t();
|
|
3488
3488
|
var di = typeof globalThis < "u" ? globalThis.__camstackTrpcReact : void 0, z = di ?? ie();
|
|
3489
|
-
typeof globalThis < "u" && !di && (globalThis.__camstackTrpcReact = z), t(), t(), z.accessories.setChildHidden.useMutation, z.accessories.getStatus.useQuery, z.addonPages.listPages.useQuery, z.addons.list.useQuery, z.addons.getLogs.useQuery, z.addons.listPackages.useQuery, z.addons.installPackage.useMutation, z.addons.installFromWorkspace.useMutation, z.addons.isWorkspaceAvailable.useQuery, z.addons.listWorkspacePackages.useQuery, z.addons.uninstallPackage.useMutation, z.addons.reloadPackages.useMutation, z.addons.searchAvailable.useQuery, z.addons.listUpdates.useQuery, z.addons.updatePackage.useMutation, z.addons.rollbackPackage.useMutation, z.addons.forceRefresh.useMutation, z.addons.restartServer.useMutation, z.addons.getLastRestart.useQuery, z.addons.listFrameworkPackages.useQuery, z.addons.listCapabilityProviders.useQuery, z.addons.setCapabilityProviderEnabled.useMutation, z.addons.getVersions.useQuery, z.addons.restartAddon.useMutation, z.addons.retryLoad.useMutation, z.addons.getAutoUpdateSettings.useQuery, z.addons.setAutoUpdateSettings.useMutation, z.addons.getAddonAutoUpdate.useQuery, z.addons.setAddonAutoUpdate.useMutation, z.addons.applyAutoUpdateToAll.useMutation, z.addons.custom.useMutation, z.addons.startJob.useMutation, z.addons.getJob.useQuery, z.addons.listJobs.useQuery, z.addons.cancelJob.useMutation, z.addons.onAddonLogs.useSubscription, z.addonSettings.getGlobalSettings.useQuery, z.addonSettings.updateGlobalSettings.useMutation, z.addonSettings.getIntegrationSettings.useQuery, z.addonSettings.getDeviceSettings.useQuery, z.addonSettings.updateDeviceSettings.useMutation, z.addonWidgets.listWidgets.useQuery, z.airQualitySensor.getStatus.useQuery, z.alarmPanel.arm.useMutation, z.alarmPanel.disarm.useMutation, z.alarmPanel.trigger.useMutation, z.alarmPanel.getStatus.useQuery, z.alerts.emit.useMutation, z.alerts.update.useMutation, z.alerts.list.useQuery, z.alerts.getUnreadCount.useQuery, z.alerts.markRead.useMutation, z.alerts.markAllRead.useMutation, z.alerts.dismiss.useMutation, z.ambientLightSensor.getStatus.useQuery, z.audioAnalysis.resolveDeviceSettings.useQuery, z.audioAnalysis.getDeviceSettingsContribution.useQuery, z.audioAnalysis.getDeviceLiveContribution.useQuery, z.audioAnalysis.applyDeviceSettingsPatch.useMutation, z.audioAnalyzer.analyseChunk.useMutation, z.audioAnalyzer.classify.useQuery, z.audioAnalyzer.attachDevice.useMutation, z.audioAnalyzer.detachDevice.useMutation, z.audioAnalyzer.isReady.useQuery, z.audioAnalyzer.dispose.useMutation, z.audioAnalyzer.reprobeAudioEngine.useMutation, z.audioCodec.listSupportedCodecs.useQuery, z.audioCodec.canHandle.useQuery, z.audioCodec.createDecodeSession.useMutation, z.audioCodec.createEncodeSession.useMutation, z.audioCodec.closeSession.useMutation, z.audioCodec.pushEncodedFrame.useMutation, z.audioCodec.pullPcm.useQuery, z.audioCodec.pushPcm.useMutation, z.audioCodec.pullEncoded.useQuery, z.audioCodec.flushEncode.useMutation, z.audioCodec.listActiveSessions.useQuery, z.audioMetrics.getCurrentSnapshot.useQuery, z.audioMetrics.getHistory.useQuery, z.automationControl.enable.useMutation, z.automationControl.disable.useMutation, z.automationControl.trigger.useMutation, z.automationControl.getStatus.useQuery, z.backup.listDestinations.useQuery, z.backup.trigger.useMutation, z.backup.listRuns.useQuery, z.backup.cancel.useMutation, z.backup.list.useQuery, z.backup.listLocations.useQuery, z.backup.getEntries.useQuery, z.backup.restore.useMutation, z.backup.delete.useMutation, z.backup.listArchives.useQuery, z.backup.upsertDestinationPolicy.useMutation, z.backup.previewSchedule.useQuery, z.backup.listSchedules.useQuery, z.backup.upsertSchedule.useMutation, z.backup.deleteSchedule.useMutation, z.battery.wakeForStream.useMutation, z.battery.getStatus.useQuery, z.binary.getStatus.useQuery, z.brightness.setBrightness.useMutation, z.brightness.getStatus.useQuery, z.broker.list.useQuery, z.broker.get.useQuery, z.broker.listProviders.useQuery, z.broker.add.useMutation, z.broker.remove.useMutation, z.broker.testConnection.useMutation, z.broker.getSettings.useQuery, z.broker.setSettings.useMutation, z.broker.getBrokerConfig.useQuery, z.broker.getSettingsSchema.useQuery, z.broker.testSettings.useMutation, z.broker.publish.useMutation, z.broker.subscribe.useMutation, z.broker.unsubscribe.useMutation, z.broker.getState.useQuery, z.broker.getStatus.useQuery, z.button.press.useMutation, z.cameraCredentials.getCredentials.useQuery, z.cameraCredentials.getStatus.useQuery, z.cameraGridLayout.getLayout.useQuery, z.cameraGridLayout.saveLayout.useMutation, z.cameraGridLayout.getDeviceSettingsContribution.useQuery, z.cameraGridLayout.getDeviceLiveContribution.useQuery, z.cameraGridLayout.applyDeviceSettingsPatch.useMutation, z.cameraPipelineConfig.getDeviceSettingsContribution.useQuery, z.cameraPipelineConfig.getDeviceLiveContribution.useQuery, z.cameraPipelineConfig.applyDeviceSettingsPatch.useMutation, z.cameraStreams.getCameraStreams.useQuery, z.cameraStreams.getBrokerStreams.useQuery, z.cameraStreams.getRtspEntries.useQuery, z.cameraStreams.getProfileRtspEntries.useQuery, z.cameraStreams.pickStream.useQuery, z.carbonMonoxide.getStatus.useQuery, z.climateControl.setMode.useMutation, z.climateControl.setFanMode.useMutation, z.climateControl.setPreset.useMutation, z.climateControl.setTarget.useMutation, z.climateControl.setTargetRange.useMutation, z.climateControl.setTargetHumidity.useMutation, z.climateControl.setSwingVertical.useMutation, z.climateControl.setSwingHorizontal.useMutation, z.climateControl.getStatus.useQuery, z.color.setColor.useMutation, z.color.getStatus.useQuery, z.connectionTest.testSettings.useMutation, z.connectionTest.describeTest.useQuery, z.connectivity.getStatus.useQuery, z.consumables.reset.useMutation, z.consumables.getStatus.useQuery, z.contact.getStatus.useQuery, z.control.setValue.useMutation, z.control.getStatus.useQuery, z.coreBlocks.list.useQuery, z.coreBlocks.get.useQuery, z.coreBlocks.create.useMutation, z.coreBlocks.update.useMutation, z.coreBlocks.delete.useMutation, z.coreBlocks.setEnabled.useMutation, z.coreBlocks.restart.useMutation, z.coreBlocks.compile.useMutation, z.coreBlocks.getTypeDefs.useQuery, z.coreBlocks.createComposition.useMutation, z.coreBlocks.updateComposition.useMutation, z.coreBlocks.getComposition.useQuery, z.coreBlocks.listCompositions.useQuery, z.coreBlocks.getCustomization.useQuery, z.coreBlocks.listComposableCaps.useQuery, z.coreBlocks.validateComposition.useMutation, z.cover.open.useMutation, z.cover.close.useMutation, z.cover.stop.useMutation, z.cover.setPosition.useMutation, z.cover.setTiltPosition.useMutation, z.cover.getStatus.useQuery, z.dayNight.getOptions.useQuery, z.dayNight.setSettings.useMutation, z.dayNight.getStatus.useQuery, z.decoder.supportsCodec.useQuery, z.decoder.getInfo.useQuery, z.decoder.createSession.useQuery, z.decoder.destroySession.useQuery, z.decoder.pushPacket.useQuery, z.decoder.openStream.useQuery, z.decoder.pullFrames.useQuery, z.decoder.pullHandles.useQuery, z.decoder.getFrame.useQuery, z.decoder.getShmStats.useQuery, z.decoder.updateConfig.useQuery, z.decoder.getStats.useQuery, z.decoder.listActiveSessions.useQuery, z.decoder.reprobeHwaccel.useMutation, z.detectionPipeline.getDeviceSettingsContribution.useQuery, z.detectionPipeline.getDeviceLiveContribution.useQuery, z.detectionPipeline.applyDeviceSettingsPatch.useMutation, z.deviceAdminLink.getAdminLink.useQuery, z.deviceAdoption.listCandidateFilters.useQuery, z.deviceAdoption.listCandidates.useQuery, z.deviceAdoption.getCandidate.useQuery, z.deviceAdoption.refresh.useMutation, z.deviceAdoption.adopt.useMutation, z.deviceAdoption.release.useMutation, z.deviceAdoption.resync.useMutation, z.deviceAdoption.getStatus.useQuery, z.deviceDiscovery.listDiscovered.useQuery, z.deviceDiscovery.refreshDiscovery.useMutation, z.deviceDiscovery.adoptDevice.useMutation, z.deviceDiscovery.releaseDevice.useMutation, z.deviceDiscovery.getStatus.useQuery, z.deviceExport.getStatus.useQuery, z.deviceExport.listSupportedDeviceKinds.useQuery, z.deviceExport.listExposedDevices.useQuery, z.deviceExport.exposeDevice.useMutation, z.deviceExport.unexposeDevice.useMutation, z.deviceExport.getDeviceSettingsContribution.useQuery, z.deviceExport.getDeviceLiveContribution.useQuery, z.deviceExport.applyDeviceSettingsPatch.useMutation, z.deviceExtension.listSources.useQuery, z.deviceExtension.listSlots.useQuery, z.deviceExtension.listCandidates.useQuery, z.deviceExtension.setSlot.useMutation, z.deviceManager.allocateDeviceId.useMutation, z.deviceManager.migrateDevice.useMutation, z.deviceManager.registerDevice.useMutation, z.deviceManager.removeDevice.useMutation, z.deviceManager.persistConfig.useMutation, z.deviceManager.loadConfig.useQuery, z.deviceManager.loadRuntimeState.useQuery, z.deviceManager.loadMeta.useQuery, z.deviceManager.setName.useMutation, z.deviceManager.setLocation.useMutation, z.deviceManager.setType.useMutation, z.deviceManager.setIntegrationId.useMutation, z.deviceManager.setLinkDeviceId.useMutation, z.deviceManager.setPrimaryChildEntityId.useMutation, z.deviceManager.setChildLayout.useMutation, z.deviceManager.setDisplay.useMutation;
|
|
3489
|
+
typeof globalThis < "u" && !di && (globalThis.__camstackTrpcReact = z), t(), t(), z.accessories.setChildHidden.useMutation, z.accessories.getStatus.useQuery, z.addonPages.listPages.useQuery, z.addons.list.useQuery, z.addons.getLogs.useQuery, z.addons.listPackages.useQuery, z.addons.installPackage.useMutation, z.addons.installFromWorkspace.useMutation, z.addons.isWorkspaceAvailable.useQuery, z.addons.listWorkspacePackages.useQuery, z.addons.uninstallPackage.useMutation, z.addons.reloadPackages.useMutation, z.addons.searchAvailable.useQuery, z.addons.listUpdates.useQuery, z.addons.updatePackage.useMutation, z.addons.rollbackPackage.useMutation, z.addons.forceRefresh.useMutation, z.addons.restartServer.useMutation, z.addons.getLastRestart.useQuery, z.addons.listFrameworkPackages.useQuery, z.addons.listCapabilityProviders.useQuery, z.addons.setCapabilityProviderEnabled.useMutation, z.addons.getVersions.useQuery, z.addons.restartAddon.useMutation, z.addons.retryLoad.useMutation, z.addons.getAutoUpdateSettings.useQuery, z.addons.setAutoUpdateSettings.useMutation, z.addons.getAddonAutoUpdate.useQuery, z.addons.setAddonAutoUpdate.useMutation, z.addons.applyAutoUpdateToAll.useMutation, z.addons.custom.useMutation, z.addons.startJob.useMutation, z.addons.getJob.useQuery, z.addons.listJobs.useQuery, z.addons.cancelJob.useMutation, z.addons.onAddonLogs.useSubscription, z.addonSettings.getGlobalSettings.useQuery, z.addonSettings.updateGlobalSettings.useMutation, z.addonSettings.getIntegrationSettings.useQuery, z.addonSettings.getDeviceSettings.useQuery, z.addonSettings.updateDeviceSettings.useMutation, z.addonWidgets.listWidgets.useQuery, z.airQualitySensor.getStatus.useQuery, z.alarmPanel.arm.useMutation, z.alarmPanel.disarm.useMutation, z.alarmPanel.trigger.useMutation, z.alarmPanel.getStatus.useQuery, z.alerts.emit.useMutation, z.alerts.update.useMutation, z.alerts.list.useQuery, z.alerts.getUnreadCount.useQuery, z.alerts.markRead.useMutation, z.alerts.markAllRead.useMutation, z.alerts.dismiss.useMutation, z.ambientLightSensor.getStatus.useQuery, z.audioAnalysis.resolveDeviceSettings.useQuery, z.audioAnalysis.getDeviceSettingsContribution.useQuery, z.audioAnalysis.getDeviceLiveContribution.useQuery, z.audioAnalysis.applyDeviceSettingsPatch.useMutation, z.audioAnalyzer.analyseChunk.useMutation, z.audioAnalyzer.classify.useQuery, z.audioAnalyzer.attachDevice.useMutation, z.audioAnalyzer.detachDevice.useMutation, z.audioAnalyzer.isReady.useQuery, z.audioAnalyzer.dispose.useMutation, z.audioAnalyzer.reprobeAudioEngine.useMutation, z.audioCodec.listSupportedCodecs.useQuery, z.audioCodec.canHandle.useQuery, z.audioCodec.createDecodeSession.useMutation, z.audioCodec.createEncodeSession.useMutation, z.audioCodec.closeSession.useMutation, z.audioCodec.pushEncodedFrame.useMutation, z.audioCodec.pullPcm.useQuery, z.audioCodec.pushPcm.useMutation, z.audioCodec.pullEncoded.useQuery, z.audioCodec.flushEncode.useMutation, z.audioCodec.listActiveSessions.useQuery, z.audioMetrics.getCurrentSnapshot.useQuery, z.audioMetrics.getHistory.useQuery, z.automationControl.enable.useMutation, z.automationControl.disable.useMutation, z.automationControl.trigger.useMutation, z.automationControl.getStatus.useQuery, z.backup.listDestinations.useQuery, z.backup.trigger.useMutation, z.backup.listRuns.useQuery, z.backup.cancel.useMutation, z.backup.list.useQuery, z.backup.listLocations.useQuery, z.backup.getEntries.useQuery, z.backup.restore.useMutation, z.backup.delete.useMutation, z.backup.listArchives.useQuery, z.backup.upsertDestinationPolicy.useMutation, z.backup.previewSchedule.useQuery, z.backup.listSchedules.useQuery, z.backup.upsertSchedule.useMutation, z.backup.deleteSchedule.useMutation, z.battery.wakeForStream.useMutation, z.battery.getStatus.useQuery, z.binary.getStatus.useQuery, z.brightness.setBrightness.useMutation, z.brightness.getStatus.useQuery, z.broker.list.useQuery, z.broker.get.useQuery, z.broker.listProviders.useQuery, z.broker.add.useMutation, z.broker.remove.useMutation, z.broker.testConnection.useMutation, z.broker.getSettings.useQuery, z.broker.setSettings.useMutation, z.broker.getBrokerConfig.useQuery, z.broker.getSettingsSchema.useQuery, z.broker.testSettings.useMutation, z.broker.publish.useMutation, z.broker.subscribe.useMutation, z.broker.unsubscribe.useMutation, z.broker.getState.useQuery, z.broker.getStatus.useQuery, z.button.press.useMutation, z.calendars.listCalendars.useQuery, z.calendars.listEvents.useQuery, z.calendars.importFromHomeAssistant.useMutation, z.cameraCredentials.getCredentials.useQuery, z.cameraCredentials.getStatus.useQuery, z.cameraGridLayout.getLayout.useQuery, z.cameraGridLayout.saveLayout.useMutation, z.cameraGridLayout.getDeviceSettingsContribution.useQuery, z.cameraGridLayout.getDeviceLiveContribution.useQuery, z.cameraGridLayout.applyDeviceSettingsPatch.useMutation, z.cameraPipelineConfig.getDeviceSettingsContribution.useQuery, z.cameraPipelineConfig.getDeviceLiveContribution.useQuery, z.cameraPipelineConfig.applyDeviceSettingsPatch.useMutation, z.cameraStreams.getCameraStreams.useQuery, z.cameraStreams.getBrokerStreams.useQuery, z.cameraStreams.getRtspEntries.useQuery, z.cameraStreams.getProfileRtspEntries.useQuery, z.cameraStreams.pickStream.useQuery, z.carbonMonoxide.getStatus.useQuery, z.climateControl.setMode.useMutation, z.climateControl.setFanMode.useMutation, z.climateControl.setPreset.useMutation, z.climateControl.setTarget.useMutation, z.climateControl.setTargetRange.useMutation, z.climateControl.setTargetHumidity.useMutation, z.climateControl.setSwingVertical.useMutation, z.climateControl.setSwingHorizontal.useMutation, z.climateControl.getStatus.useQuery, z.color.setColor.useMutation, z.color.getStatus.useQuery, z.connectionTest.testSettings.useMutation, z.connectionTest.describeTest.useQuery, z.connectivity.getStatus.useQuery, z.consumables.reset.useMutation, z.consumables.getStatus.useQuery, z.contact.getStatus.useQuery, z.control.setValue.useMutation, z.control.getStatus.useQuery, z.coreBlocks.list.useQuery, z.coreBlocks.get.useQuery, z.coreBlocks.create.useMutation, z.coreBlocks.update.useMutation, z.coreBlocks.delete.useMutation, z.coreBlocks.setEnabled.useMutation, z.coreBlocks.restart.useMutation, z.coreBlocks.compile.useMutation, z.coreBlocks.getTypeDefs.useQuery, z.coreBlocks.createComposition.useMutation, z.coreBlocks.updateComposition.useMutation, z.coreBlocks.getComposition.useQuery, z.coreBlocks.listCompositions.useQuery, z.coreBlocks.getCustomization.useQuery, z.coreBlocks.listComposableCaps.useQuery, z.coreBlocks.validateComposition.useMutation, z.cover.open.useMutation, z.cover.close.useMutation, z.cover.stop.useMutation, z.cover.setPosition.useMutation, z.cover.setTiltPosition.useMutation, z.cover.getStatus.useQuery, z.dayNight.getOptions.useQuery, z.dayNight.setSettings.useMutation, z.dayNight.getStatus.useQuery, z.decoder.supportsCodec.useQuery, z.decoder.getInfo.useQuery, z.decoder.createSession.useQuery, z.decoder.destroySession.useQuery, z.decoder.pushPacket.useQuery, z.decoder.openStream.useQuery, z.decoder.pullFrames.useQuery, z.decoder.pullHandles.useQuery, z.decoder.getFrame.useQuery, z.decoder.getShmStats.useQuery, z.decoder.updateConfig.useQuery, z.decoder.getStats.useQuery, z.decoder.listActiveSessions.useQuery, z.decoder.reprobeHwaccel.useMutation, z.detectionPipeline.getDeviceSettingsContribution.useQuery, z.detectionPipeline.getDeviceLiveContribution.useQuery, z.detectionPipeline.applyDeviceSettingsPatch.useMutation, z.deviceAdminLink.getAdminLink.useQuery, z.deviceAdoption.listCandidateFilters.useQuery, z.deviceAdoption.listCandidates.useQuery, z.deviceAdoption.getCandidate.useQuery, z.deviceAdoption.refresh.useMutation, z.deviceAdoption.adopt.useMutation, z.deviceAdoption.release.useMutation, z.deviceAdoption.resync.useMutation, z.deviceAdoption.getStatus.useQuery, z.deviceDiscovery.listDiscovered.useQuery, z.deviceDiscovery.refreshDiscovery.useMutation, z.deviceDiscovery.adoptDevice.useMutation, z.deviceDiscovery.releaseDevice.useMutation, z.deviceDiscovery.getStatus.useQuery, z.deviceExport.getStatus.useQuery, z.deviceExport.listSupportedDeviceKinds.useQuery, z.deviceExport.listExposedDevices.useQuery, z.deviceExport.exposeDevice.useMutation, z.deviceExport.unexposeDevice.useMutation, z.deviceExport.getDeviceSettingsContribution.useQuery, z.deviceExport.getDeviceLiveContribution.useQuery, z.deviceExport.applyDeviceSettingsPatch.useMutation, z.deviceExtension.listSources.useQuery, z.deviceExtension.listSlots.useQuery, z.deviceExtension.listCandidates.useQuery, z.deviceExtension.setSlot.useMutation, z.deviceManager.allocateDeviceId.useMutation, z.deviceManager.migrateDevice.useMutation, z.deviceManager.registerDevice.useMutation, z.deviceManager.removeDevice.useMutation, z.deviceManager.persistConfig.useMutation, z.deviceManager.loadConfig.useQuery, z.deviceManager.loadRuntimeState.useQuery, z.deviceManager.loadMeta.useQuery, z.deviceManager.setName.useMutation, z.deviceManager.setLocation.useMutation, z.deviceManager.setType.useMutation, z.deviceManager.setIntegrationId.useMutation, z.deviceManager.setLinkDeviceId.useMutation, z.deviceManager.setPrimaryChildEntityId.useMutation, z.deviceManager.setChildLayout.useMutation, z.deviceManager.setDisplay.useMutation;
|
|
3490
3490
|
var fi = z.deviceManager.getRoleDisplayDefaults.useQuery;
|
|
3491
3491
|
z.deviceManager.setRoleDisplayDefaults.useMutation, z.deviceManager.getWireableFields.useQuery, z.deviceManager.setRole.useMutation, z.deviceManager.applyInitialMeta.useMutation, z.deviceManager.setMetadata.useMutation, z.deviceManager.listLocations.useQuery, z.deviceManager.addLocation.useMutation, z.deviceManager.removeLocation.useMutation, z.deviceManager.renameLocation.useMutation, z.deviceManager.listLocationIcons.useQuery, z.deviceManager.setLocationIcon.useMutation, z.deviceManager.listLocationDescriptions.useQuery, z.deviceManager.setLocationDescription.useMutation, z.deviceManager.listSiteZones.useQuery, z.deviceManager.setSiteZone.useMutation, z.deviceManager.removeSiteZone.useMutation, z.deviceManager.renameSiteZone.useMutation, z.deviceManager.setLocationZone.useMutation, z.deviceManager.setDisabled.useMutation, z.deviceManager.listPersistedByAddon.useQuery;
|
|
3492
3492
|
var pi = z.deviceManager.listAll.useQuery, mi = z.deviceManager.getDevice.useQuery;
|
|
@@ -6100,7 +6100,7 @@ t(), t(), t(), S("camstack:recorded-playback", {
|
|
|
6100
6100
|
mode: "live",
|
|
6101
6101
|
positionMs: null,
|
|
6102
6102
|
send: () => !1
|
|
6103
|
-
}), t(), t(), t(), t(), t(), t(), s(() => import("./MotionZonesSettings-
|
|
6103
|
+
}), t(), t(), t(), t(), t(), t(), s(() => import("./MotionZonesSettings-sqWBK5nw.mjs").then((e) => ({ default: e.MotionZonesSettings }))), s(() => import("./PrivacyMaskSettings-xEGyOq4f.mjs").then((e) => ({ default: e.PrivacyMaskSettings }))), t(), t();
|
|
6104
6104
|
var Oo = Object.defineProperty, ko = Object.getOwnPropertySymbols, Ao = Object.prototype.hasOwnProperty, jo = Object.prototype.propertyIsEnumerable, Mo = (e, t, n) => t in e ? Oo(e, t, {
|
|
6105
6105
|
enumerable: !0,
|
|
6106
6106
|
configurable: !0,
|
|
@@ -8412,7 +8412,7 @@ function Il({ trpc: e, deviceId: t, layout: n, optimistic: r, features: i }) {
|
|
|
8412
8412
|
slice: (e) => e.state.lockControl
|
|
8413
8413
|
}), { display: l, applyOptimistic: u } = J(s, { enabled: r ?? !0 }), [d, f] = a(null), [p, m] = a(!1), [h, g] = a(null);
|
|
8414
8414
|
if (l === void 0) return null;
|
|
8415
|
-
let _ = l.state === "locked" || l.state === "locking", v = !c || l.state === "jammed", y = i?.includes(
|
|
8415
|
+
let _ = l.state === "locked" || l.state === "locking", v = !c || l.state === "jammed", y = i?.includes(le.LockOpen) === !0, b = n === "compact", x = () => {
|
|
8416
8416
|
u({ state: "locking" }), o?.lock({});
|
|
8417
8417
|
}, S = () => {
|
|
8418
8418
|
u({ state: "unlocking" }), o?.unlock({});
|
|
@@ -9792,7 +9792,7 @@ function Nu({ trpc: e, deviceId: t, features: n, optimistic: r }) {
|
|
|
9792
9792
|
slice: (e) => e.state.cover
|
|
9793
9793
|
}), { display: s, applyOptimistic: c } = J(a, { enabled: r ?? !0 });
|
|
9794
9794
|
if (i === void 0) return null;
|
|
9795
|
-
let l = !o, u = (n ?? []).includes(
|
|
9795
|
+
let l = !o, u = (n ?? []).includes(le.CoverPositionable), d = (n ?? []).includes(le.CoverTilt), f = Tu(s?.state), p = s?.position ?? null, m = p !== null, h = s?.state === "open" || s?.state === "opening", g = (e, t) => {
|
|
9796
9796
|
l || !e || (t !== void 0 && c(t), e({}));
|
|
9797
9797
|
}, _ = (e) => {
|
|
9798
9798
|
l || (c({ position: e }), i?.setPosition({ position: e }));
|
|
@@ -11424,7 +11424,7 @@ function Nd({ label: e, busy: t, variant: n, onClick: r, children: i }) {
|
|
|
11424
11424
|
function Pd({ trpc: e, deviceId: t, features: n, optimistic: r }) {
|
|
11425
11425
|
let { cap: i, slice: a, available: o } = Ed(e, t), { display: s, applyOptimistic: c } = J(a, { enabled: r ?? !0 });
|
|
11426
11426
|
if (i === void 0) return null;
|
|
11427
|
-
let l = !o, u = (n ?? []).includes(
|
|
11427
|
+
let l = !o, u = (n ?? []).includes(le.ValvePositionable), d = Tu(s?.state), f = Td(s?.state), p = s?.position ?? null, m = p !== null, h = (e, t) => {
|
|
11428
11428
|
l || !e || (t !== void 0 && c(t), e({}));
|
|
11429
11429
|
}, g = (e) => {
|
|
11430
11430
|
l || (c({ position: e }), i.setPosition({ position: e }));
|
|
@@ -13918,7 +13918,7 @@ function up({ trpc: e, deviceId: t, features: n, optimistic: r }) {
|
|
|
13918
13918
|
slice: (e) => e.state.lockControl
|
|
13919
13919
|
}), { display: s, applyOptimistic: c } = J(a, { enabled: r ?? !0 });
|
|
13920
13920
|
if (i === void 0 || s === void 0) return null;
|
|
13921
|
-
let l = ip(s.state), u = ap(s.state) || !o, d = n?.includes(
|
|
13921
|
+
let l = ip(s.state), u = ap(s.state) || !o, d = n?.includes(le.LockOpen) === !0, f = () => {
|
|
13922
13922
|
u || (l ? (c({ state: "unlocking" }), i.unlock({})) : (c({ state: "locking" }), i.lock({})));
|
|
13923
13923
|
}, p = () => {
|
|
13924
13924
|
u || i.open({});
|
|
@@ -13976,7 +13976,7 @@ function vp({ trpc: e, deviceId: t, features: n, optimistic: r }) {
|
|
|
13976
13976
|
slice: (e) => e.state.color
|
|
13977
13977
|
}), s = J(i.slice, { enabled: r ?? !0 }), c = J(a.slice, { enabled: r ?? !0 }), l = J(o.slice, { enabled: r ?? !0 });
|
|
13978
13978
|
if (i.cap === void 0 || s.display === void 0) return null;
|
|
13979
|
-
let u = s.display.on === !0, d = !i.available, f = c.display?.percentage ?? 0, p = !a.available, m = u ? f / 100 : 0, h = u ? gp : _p, g = (n?.includes(
|
|
13979
|
+
let u = s.display.on === !0, d = !i.available, f = c.display?.percentage ?? 0, p = !a.available, m = u ? f / 100 : 0, h = u ? gp : _p, g = (n?.includes(le.LightColorMired) ?? !1) && o.cap !== void 0, _ = l.display?.mireds, v = !o.available;
|
|
13980
13980
|
return /* @__PURE__ */ j("div", {
|
|
13981
13981
|
className: "flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4",
|
|
13982
13982
|
children: [
|
|
@@ -14101,7 +14101,7 @@ function xp({ trpc: e, deviceId: t, features: n, optimistic: r }) {
|
|
|
14101
14101
|
slice: (e) => e.state.fanControl
|
|
14102
14102
|
}), o = J(i.slice, { enabled: r ?? !0 }), s = J(a.slice, { enabled: r ?? !0 });
|
|
14103
14103
|
if (i.cap === void 0 || o.display === void 0) return null;
|
|
14104
|
-
let c = o.display.on === !0, l = !i.available, u = s.display?.percentage ?? 0, d = !a.available, f = c ? u / 100 : 0, p = c ? yp : bp, m = n?.includes(
|
|
14104
|
+
let c = o.display.on === !0, l = !i.available, u = s.display?.percentage ?? 0, d = !a.available, f = c ? u / 100 : 0, p = c ? yp : bp, m = n?.includes(le.FanSpeed) ?? !1, h = (n?.includes(le.FanOscillating) ?? !1) && a.cap !== void 0, g = s.display?.availablePresets ?? [], _ = (n?.includes(le.FanPreset) ?? !1) && a.cap !== void 0 && g.length > 0, v = s.display?.preset ?? "", y = s.display?.oscillating === !0, b = () => {
|
|
14105
14105
|
if (l) return;
|
|
14106
14106
|
let e = !c;
|
|
14107
14107
|
o.applyOptimistic({ on: e }), i.cap?.setState({ on: e });
|
|
@@ -14290,7 +14290,7 @@ function Op({ trpc: e, deviceId: t, features: n, optimistic: r }) {
|
|
|
14290
14290
|
slice: (e) => e.state.mediaPlayer
|
|
14291
14291
|
}), { display: s, applyOptimistic: c } = J(a, { enabled: r ?? !0 });
|
|
14292
14292
|
if (i === void 0 || s === void 0) return null;
|
|
14293
|
-
let l = !o, u = Cp(s.state), d = (n?.includes(
|
|
14293
|
+
let l = !o, u = Cp(s.state), d = (n?.includes(le.MediaPlayerSeek) ?? !1) && s.durationMs !== null && s.durationMs > 0, f = n?.includes(le.MediaPlayerNext) ?? !1, p = n?.includes(le.MediaPlayerPrevious) ?? !1, m = (n?.includes(le.MediaPlayerVolume) ?? !1) && s.volumeLevel !== null, h = () => {
|
|
14294
14294
|
l || (u === "play" ? (c({ state: "playing" }), i.play({})) : (c({ state: "paused" }), i.pause({})));
|
|
14295
14295
|
}, g = s.currentMedia?.artist ?? s.currentMedia?.album ?? null, _ = wp(s.positionMs, s.durationMs), v = s.volumeLevel ?? 0;
|
|
14296
14296
|
return /* @__PURE__ */ j("div", {
|
|
@@ -21915,7 +21915,8 @@ var cT = {
|
|
|
21915
21915
|
package: "packages",
|
|
21916
21916
|
class: "classes",
|
|
21917
21917
|
zone: "zones",
|
|
21918
|
-
face: "faces"
|
|
21918
|
+
face: "faces",
|
|
21919
|
+
calendar: "calendars"
|
|
21919
21920
|
};
|
|
21920
21921
|
function lT(e, t = "device") {
|
|
21921
21922
|
let n = String(e.id);
|
|
@@ -21925,6 +21926,7 @@ function lT(e, t = "device") {
|
|
|
21925
21926
|
case "class": return e.removed ? `${n} — not in the class list` : e.name ?? n;
|
|
21926
21927
|
case "zone": return e.removed ? `${n} — zone not found` : e.name ?? `${n} — zone unavailable`;
|
|
21927
21928
|
case "face": return e.removed ? `${n} — not in the face gallery` : e.name ?? n;
|
|
21929
|
+
case "calendar": return e.removed ? `${n} — calendar not found` : e.name ?? n;
|
|
21928
21930
|
case "camera":
|
|
21929
21931
|
case "device": return e.removed ? `Device #${n} — removed` : e.name ?? `Device #${n}`;
|
|
21930
21932
|
}
|
|
@@ -22468,7 +22470,7 @@ var IT = class {
|
|
|
22468
22470
|
} catch {}
|
|
22469
22471
|
}
|
|
22470
22472
|
};
|
|
22471
|
-
t(), new IT(), t(), t(), t(), s(() => import("./MaskShapeCanvas-BT714ljC.mjs").then((e) => ({ default: e.MaskShapeCanvas }))), s(() => import("./MotionZonesSettings-
|
|
22473
|
+
t(), new IT(), t(), t(), t(), s(() => import("./MaskShapeCanvas-BT714ljC.mjs").then((e) => ({ default: e.MaskShapeCanvas }))), s(() => import("./MotionZonesSettings-sqWBK5nw.mjs").then((e) => ({ default: e.MotionZonesSettings }))), s(() => import("./SceneMonitorEditor-BF58OFQ-.mjs").then((e) => ({ default: e.SceneMonitorEditor }))), s(() => import("./PrivacyMaskSettings-xEGyOq4f.mjs").then((e) => ({ default: e.PrivacyMaskSettings })));
|
|
22472
22474
|
//#endregion
|
|
22473
22475
|
//#region src/ui/osd-page-model.ts
|
|
22474
22476
|
function LT() {
|
|
@@ -22634,7 +22636,7 @@ function sE(e, t) {
|
|
|
22634
22636
|
days: r
|
|
22635
22637
|
};
|
|
22636
22638
|
}
|
|
22637
|
-
var cE =
|
|
22639
|
+
var cE = ue.options;
|
|
22638
22640
|
function lE(e) {
|
|
22639
22641
|
return e === void 0 ? [] : de(e, cE);
|
|
22640
22642
|
}
|
|
@@ -24011,15 +24013,25 @@ function ZE() {
|
|
|
24011
24013
|
//#endregion
|
|
24012
24014
|
//#region src/components/TemplatesPanel.tsx
|
|
24013
24015
|
t();
|
|
24014
|
-
|
|
24015
|
-
return e.pick.containerId ?? e.pick.deviceId;
|
|
24016
|
-
}
|
|
24016
|
+
var QE = 0;
|
|
24017
24017
|
function $E(e, t) {
|
|
24018
24018
|
let n = /* @__PURE__ */ new Set();
|
|
24019
24019
|
for (let r = 0; r < e.length; r += 1) r !== t && n.add(e[r].alias);
|
|
24020
24020
|
return n;
|
|
24021
24021
|
}
|
|
24022
|
-
function eD() {
|
|
24022
|
+
function eD(e) {
|
|
24023
|
+
return {
|
|
24024
|
+
alias: KE("sensor", e),
|
|
24025
|
+
pick: { deviceId: QE },
|
|
24026
|
+
capName: "",
|
|
24027
|
+
valuePath: "",
|
|
24028
|
+
maxDecimals: 1
|
|
24029
|
+
};
|
|
24030
|
+
}
|
|
24031
|
+
function tD(e) {
|
|
24032
|
+
return e.pick.deviceId > 0 && e.capName !== "" && e.valuePath !== "" && e.alias !== "";
|
|
24033
|
+
}
|
|
24034
|
+
function nD() {
|
|
24023
24035
|
let e = Ei({}), t = pi({ projection: "slim" }), n = Di(), r = Oi(), [i, o] = a(null), s = l(() => _E(t.data ?? []), [t.data]), c = t.isError ? "failed" : t.isSuccess ? "answered" : "pending", u = e.error ?? n.error ?? r.error;
|
|
24024
24036
|
return /* @__PURE__ */ j("div", {
|
|
24025
24037
|
className: "space-y-4",
|
|
@@ -24032,7 +24044,7 @@ function eD() {
|
|
|
24032
24044
|
children: "Named templates"
|
|
24033
24045
|
}), /* @__PURE__ */ A("p", {
|
|
24034
24046
|
className: "text-xs text-foreground-muted mt-0.5",
|
|
24035
|
-
children: "Combine sensors into one overlay string via alias bindings. Slot kind Template picks one of these by id."
|
|
24047
|
+
children: "Combine sensors into one overlay string via alias bindings. Each binding picks its own device (a container may contribute more than one child). Slot kind Template picks one of these by id."
|
|
24036
24048
|
})] }), /* @__PURE__ */ A(G, {
|
|
24037
24049
|
type: "button",
|
|
24038
24050
|
size: "sm",
|
|
@@ -24095,7 +24107,7 @@ function eD() {
|
|
|
24095
24107
|
})]
|
|
24096
24108
|
}, t.id))
|
|
24097
24109
|
}),
|
|
24098
|
-
i !== null && /* @__PURE__ */ A(
|
|
24110
|
+
i !== null && /* @__PURE__ */ A(rD, {
|
|
24099
24111
|
draft: i,
|
|
24100
24112
|
pickerDevices: s,
|
|
24101
24113
|
listState: c,
|
|
@@ -24109,11 +24121,11 @@ function eD() {
|
|
|
24109
24121
|
]
|
|
24110
24122
|
});
|
|
24111
24123
|
}
|
|
24112
|
-
function
|
|
24113
|
-
let
|
|
24114
|
-
|
|
24115
|
-
|
|
24116
|
-
},
|
|
24124
|
+
function rD({ draft: e, pickerDevices: t, listState: n, busy: r, onChange: i, onCancel: a, onSave: o }) {
|
|
24125
|
+
let s = t.find((e) => !gE(e.type))?.id ?? 0, c = yi({ deviceId: s }, { enabled: s > 0 }).data?.sources ?? [], u = l(() => e.bindings.filter(tD).flatMap((e) => WE(e)), [e.bindings]), d = aD(e.bindings), f = l(() => XE({
|
|
24126
|
+
...e,
|
|
24127
|
+
bindings: e.bindings.filter(tD)
|
|
24128
|
+
}, { stateByDevice: d }), [e, d]), p = e.name.trim().length > 0 && e.bindings.every(tD);
|
|
24117
24129
|
return /* @__PURE__ */ j(xo, {
|
|
24118
24130
|
className: "p-4 space-y-3",
|
|
24119
24131
|
"data-testid": "osd-template-editor",
|
|
@@ -24131,119 +24143,48 @@ function tD({ draft: e, pickerDevices: t, listState: n, busy: r, onChange: i, on
|
|
|
24131
24143
|
name: t.target.value
|
|
24132
24144
|
})
|
|
24133
24145
|
})] }),
|
|
24134
|
-
/* @__PURE__ */ j("div", {
|
|
24135
|
-
|
|
24136
|
-
|
|
24137
|
-
|
|
24138
|
-
|
|
24139
|
-
|
|
24140
|
-
onChange: (n) => {
|
|
24141
|
-
let r = new Set(n), a = e.bindings.filter((e) => r.has(QE(e))), o = new Set(a.map(QE)), s = [], c = [], l = $E(a);
|
|
24142
|
-
for (let e of n) {
|
|
24143
|
-
if (o.has(e) || f.includes(e)) {
|
|
24144
|
-
f.includes(e) && r.has(e) && s.push(e);
|
|
24145
|
-
continue;
|
|
24146
|
-
}
|
|
24147
|
-
let n = yE(t, e);
|
|
24148
|
-
if (n === void 0) continue;
|
|
24149
|
-
if (gE(n.type)) {
|
|
24150
|
-
s.push(e);
|
|
24151
|
-
continue;
|
|
24152
|
-
}
|
|
24153
|
-
if (!d.has(e)) continue;
|
|
24154
|
-
let i = dE(u, e), a = i.auto ?? fE(i.fields);
|
|
24155
|
-
if (a === void 0) continue;
|
|
24156
|
-
let p = KE(n.name || a.valuePath, l);
|
|
24157
|
-
l.add(p), c.push({
|
|
24158
|
-
alias: p,
|
|
24159
|
-
pick: { deviceId: e },
|
|
24160
|
-
capName: a.capName,
|
|
24161
|
-
valuePath: a.valuePath,
|
|
24162
|
-
maxDecimals: 1
|
|
24163
|
-
});
|
|
24164
|
-
}
|
|
24165
|
-
for (let e of f) r.has(e) && !s.includes(e) && !o.has(e) && s.push(e);
|
|
24166
|
-
p(s), i({
|
|
24167
|
-
...e,
|
|
24168
|
-
bindings: [...a, ...c]
|
|
24169
|
-
});
|
|
24170
|
-
},
|
|
24171
|
-
noun: "device",
|
|
24172
|
-
testId: "osd-tpl-devices"
|
|
24173
|
-
}),
|
|
24174
|
-
/* @__PURE__ */ A("p", {
|
|
24175
|
-
className: "text-[10px] text-foreground-muted mt-1",
|
|
24176
|
-
children: "Containers are allowed — pick an OSD-supported child next."
|
|
24177
|
-
})
|
|
24178
|
-
] }),
|
|
24179
|
-
f.map((n) => {
|
|
24180
|
-
let r = yE(t, n), a = vE(n, t, d);
|
|
24181
|
-
return /* @__PURE__ */ j("div", {
|
|
24182
|
-
className: "rounded border border-border p-2 space-y-2",
|
|
24183
|
-
"data-testid": `osd-tpl-pending-container-${n}`,
|
|
24184
|
-
children: [
|
|
24185
|
-
/* @__PURE__ */ j("p", {
|
|
24146
|
+
/* @__PURE__ */ j("div", {
|
|
24147
|
+
className: "space-y-2",
|
|
24148
|
+
children: [
|
|
24149
|
+
/* @__PURE__ */ j("div", {
|
|
24150
|
+
className: "flex items-center justify-between gap-2",
|
|
24151
|
+
children: [/* @__PURE__ */ A("p", {
|
|
24186
24152
|
className: "text-xs font-medium text-foreground",
|
|
24187
|
-
children:
|
|
24188
|
-
}),
|
|
24189
|
-
a.length === 0 ? /* @__PURE__ */ A("p", {
|
|
24190
|
-
className: "text-xs text-foreground-muted",
|
|
24191
|
-
children: "No OSD-supported children on this container."
|
|
24192
|
-
}) : /* @__PURE__ */ A(po, {
|
|
24193
|
-
"data-testid": `osd-tpl-child-${n}`,
|
|
24194
|
-
value: "",
|
|
24195
|
-
options: [{
|
|
24196
|
-
value: "",
|
|
24197
|
-
label: "Select child…"
|
|
24198
|
-
}, ...a.map((e) => ({
|
|
24199
|
-
value: String(e.id),
|
|
24200
|
-
label: e.name
|
|
24201
|
-
}))],
|
|
24202
|
-
onChange: (r) => {
|
|
24203
|
-
let a = Number(r.target.value);
|
|
24204
|
-
if (!Number.isFinite(a) || a <= 0) return;
|
|
24205
|
-
let o = yE(t, a), s = dE(u, a), c = s.auto ?? fE(s.fields);
|
|
24206
|
-
if (c === void 0) return;
|
|
24207
|
-
let l = $E(e.bindings), d = KE(o?.name ?? c.valuePath, l);
|
|
24208
|
-
p(f.filter((e) => e !== n)), i({
|
|
24209
|
-
...e,
|
|
24210
|
-
bindings: [...e.bindings, {
|
|
24211
|
-
alias: d,
|
|
24212
|
-
pick: {
|
|
24213
|
-
containerId: n,
|
|
24214
|
-
deviceId: a
|
|
24215
|
-
},
|
|
24216
|
-
capName: c.capName,
|
|
24217
|
-
valuePath: c.valuePath,
|
|
24218
|
-
maxDecimals: 1
|
|
24219
|
-
}]
|
|
24220
|
-
});
|
|
24221
|
-
}
|
|
24222
|
-
}),
|
|
24223
|
-
/* @__PURE__ */ A(G, {
|
|
24153
|
+
children: "Bindings"
|
|
24154
|
+
}), /* @__PURE__ */ A(G, {
|
|
24224
24155
|
type: "button",
|
|
24225
24156
|
size: "sm",
|
|
24226
|
-
variant: "
|
|
24227
|
-
|
|
24228
|
-
|
|
24229
|
-
|
|
24230
|
-
|
|
24231
|
-
|
|
24232
|
-
|
|
24233
|
-
|
|
24234
|
-
|
|
24235
|
-
|
|
24236
|
-
|
|
24237
|
-
|
|
24238
|
-
|
|
24239
|
-
|
|
24240
|
-
|
|
24241
|
-
|
|
24242
|
-
|
|
24243
|
-
|
|
24244
|
-
|
|
24245
|
-
|
|
24246
|
-
|
|
24157
|
+
variant: "secondary",
|
|
24158
|
+
"data-testid": "osd-tpl-add-binding",
|
|
24159
|
+
onClick: () => {
|
|
24160
|
+
let t = $E(e.bindings);
|
|
24161
|
+
i({
|
|
24162
|
+
...e,
|
|
24163
|
+
bindings: [...e.bindings, eD(t)]
|
|
24164
|
+
});
|
|
24165
|
+
},
|
|
24166
|
+
children: "Add binding"
|
|
24167
|
+
})]
|
|
24168
|
+
}),
|
|
24169
|
+
/* @__PURE__ */ A("p", {
|
|
24170
|
+
className: "text-[10px] text-foreground-muted",
|
|
24171
|
+
children: "Each binding picks device → child (if a container) → field. The same container can appear on more than one binding."
|
|
24172
|
+
}),
|
|
24173
|
+
e.bindings.length === 0 && /* @__PURE__ */ A("p", {
|
|
24174
|
+
className: "text-xs text-foreground-muted",
|
|
24175
|
+
children: "No bindings yet — add one to start."
|
|
24176
|
+
}),
|
|
24177
|
+
e.bindings.map((r, a) => /* @__PURE__ */ A(iD, {
|
|
24178
|
+
binding: r,
|
|
24179
|
+
index: a,
|
|
24180
|
+
draft: e,
|
|
24181
|
+
pickerDevices: t,
|
|
24182
|
+
listState: n,
|
|
24183
|
+
sources: c,
|
|
24184
|
+
stateByDevice: d,
|
|
24185
|
+
onChange: i
|
|
24186
|
+
}, `binding-${a}`))
|
|
24187
|
+
]
|
|
24247
24188
|
}),
|
|
24248
24189
|
/* @__PURE__ */ A(AT, {
|
|
24249
24190
|
label: "Parser",
|
|
@@ -24252,7 +24193,7 @@ function tD({ draft: e, pickerDevices: t, listState: n, busy: r, onChange: i, on
|
|
|
24252
24193
|
...e,
|
|
24253
24194
|
parser: t
|
|
24254
24195
|
}),
|
|
24255
|
-
chips:
|
|
24196
|
+
chips: u,
|
|
24256
24197
|
multiline: !0,
|
|
24257
24198
|
placeholder: "e.g. {t.value} {t.unit} / {h.full}",
|
|
24258
24199
|
testId: "osd-tpl-parser",
|
|
@@ -24264,12 +24205,12 @@ function tD({ draft: e, pickerDevices: t, listState: n, busy: r, onChange: i, on
|
|
|
24264
24205
|
children: [/* @__PURE__ */ A("p", {
|
|
24265
24206
|
className: "text-[10px] uppercase tracking-wide text-foreground-muted",
|
|
24266
24207
|
children: "Live preview"
|
|
24267
|
-
}), "text" in
|
|
24208
|
+
}), "text" in f ? /* @__PURE__ */ A("p", {
|
|
24268
24209
|
className: "text-sm font-mono text-foreground mt-0.5",
|
|
24269
|
-
children:
|
|
24210
|
+
children: f.text === "" ? "(empty)" : f.text
|
|
24270
24211
|
}) : /* @__PURE__ */ A("p", {
|
|
24271
24212
|
className: "text-xs text-foreground-muted mt-0.5",
|
|
24272
|
-
children:
|
|
24213
|
+
children: f.reason
|
|
24273
24214
|
})]
|
|
24274
24215
|
}),
|
|
24275
24216
|
/* @__PURE__ */ j("div", {
|
|
@@ -24277,37 +24218,53 @@ function tD({ draft: e, pickerDevices: t, listState: n, busy: r, onChange: i, on
|
|
|
24277
24218
|
children: [/* @__PURE__ */ A(G, {
|
|
24278
24219
|
type: "button",
|
|
24279
24220
|
size: "sm",
|
|
24280
|
-
disabled: r || !
|
|
24281
|
-
onClick: () => void
|
|
24221
|
+
disabled: r || !p,
|
|
24222
|
+
onClick: () => void o(),
|
|
24282
24223
|
children: "Save template"
|
|
24283
24224
|
}), /* @__PURE__ */ A(G, {
|
|
24284
24225
|
type: "button",
|
|
24285
24226
|
size: "sm",
|
|
24286
24227
|
variant: "ghost",
|
|
24287
|
-
onClick:
|
|
24228
|
+
onClick: a,
|
|
24288
24229
|
children: "Cancel"
|
|
24289
24230
|
})]
|
|
24290
24231
|
})
|
|
24291
24232
|
]
|
|
24292
24233
|
});
|
|
24293
24234
|
}
|
|
24294
|
-
function
|
|
24295
|
-
let
|
|
24296
|
-
|
|
24235
|
+
function iD({ binding: e, index: t, draft: n, pickerDevices: r, listState: i, sources: o, stateByDevice: s, onChange: c }) {
|
|
24236
|
+
let u = l(() => new Set(o.map((e) => e.deviceId)), [o]), [d, f] = a(e.pick.containerId);
|
|
24237
|
+
m(() => {
|
|
24238
|
+
f(e.pick.containerId);
|
|
24239
|
+
}, [e.pick.containerId, e.pick.deviceId]);
|
|
24240
|
+
let p = e.pick.deviceId > 0 ? e.pick.deviceId : void 0, h = d ?? p, g = d !== void 0 && gE(yE(r, d)?.type) ? d : void 0, _ = g === void 0 ? [] : vE(g, r, u), v = p === void 0 ? void 0 : dE(o, p), y = p === void 0 ? void 0 : yE(r, p), b = e.pick.containerId === void 0 ? void 0 : yE(r, e.pick.containerId), x = g !== void 0 && p === void 0 ? `${yE(r, g)?.name ?? `#${g}`} › …` : b === void 0 ? y?.name ?? (p === void 0 ? "No device" : `#${e.pick.deviceId}`) : `${b.name} › ${y?.name ?? `#${e.pick.deviceId}`}`, S = tD(e) ? JE(e, { stateByDevice: s }) : { reason: "Pick a device and field" }, C = SE(p === void 0 ? void 0 : s.get(p)?.[e.capName], e.valuePath), w = bE(C), T = (e) => {
|
|
24241
|
+
c({
|
|
24297
24242
|
...n,
|
|
24298
24243
|
bindings: n.bindings.map((n, r) => r === t ? e : n)
|
|
24299
24244
|
});
|
|
24245
|
+
}, E = (i, a) => {
|
|
24246
|
+
let s = dE(o, i), c = s.auto ?? fE(s.fields), l = yE(r, i), u = $E(n.bindings, t), d = e.alias !== "" && !u.has(e.alias) ? e.alias : KE(l?.name ?? c?.valuePath ?? "sensor", u);
|
|
24247
|
+
T({
|
|
24248
|
+
...e,
|
|
24249
|
+
alias: d,
|
|
24250
|
+
pick: a === void 0 ? { deviceId: i } : {
|
|
24251
|
+
containerId: a,
|
|
24252
|
+
deviceId: i
|
|
24253
|
+
},
|
|
24254
|
+
capName: c?.capName ?? "",
|
|
24255
|
+
valuePath: c?.valuePath ?? ""
|
|
24256
|
+
});
|
|
24300
24257
|
};
|
|
24301
24258
|
return /* @__PURE__ */ j("div", {
|
|
24302
24259
|
className: "rounded border border-border p-2 grid grid-cols-3 gap-2",
|
|
24303
|
-
"data-testid": `osd-tpl-binding-${
|
|
24260
|
+
"data-testid": `osd-tpl-binding-${t}`,
|
|
24304
24261
|
children: [
|
|
24305
24262
|
/* @__PURE__ */ j("div", {
|
|
24306
24263
|
className: "col-span-3 flex items-center justify-between gap-2",
|
|
24307
24264
|
children: [/* @__PURE__ */ A("p", {
|
|
24308
24265
|
className: "text-[11px] text-foreground-muted truncate",
|
|
24309
|
-
children:
|
|
24310
|
-
}), /* @__PURE__ */ j("p", {
|
|
24266
|
+
children: x
|
|
24267
|
+
}), e.alias !== "" && /* @__PURE__ */ j("p", {
|
|
24311
24268
|
className: "text-[10px] font-mono text-foreground-muted shrink-0",
|
|
24312
24269
|
children: [
|
|
24313
24270
|
HE(e.alias),
|
|
@@ -24319,29 +24276,100 @@ function nD({ binding: e, index: t, draft: n, pickerDevices: r, sources: i, stat
|
|
|
24319
24276
|
]
|
|
24320
24277
|
})]
|
|
24321
24278
|
}),
|
|
24279
|
+
/* @__PURE__ */ j("div", {
|
|
24280
|
+
className: "col-span-3 space-y-2",
|
|
24281
|
+
children: [
|
|
24282
|
+
/* @__PURE__ */ A(K, { children: "Device" }),
|
|
24283
|
+
/* @__PURE__ */ A(vT, {
|
|
24284
|
+
devices: r,
|
|
24285
|
+
listState: i,
|
|
24286
|
+
value: h === void 0 ? [] : [h],
|
|
24287
|
+
onChange: (t) => {
|
|
24288
|
+
let n = t.length === 0 ? void 0 : t.length === 1 ? t[0] : t.find((e) => e !== h) ?? t[t.length - 1];
|
|
24289
|
+
if (n === void 0) {
|
|
24290
|
+
f(void 0), T({
|
|
24291
|
+
...e,
|
|
24292
|
+
pick: { deviceId: QE },
|
|
24293
|
+
capName: "",
|
|
24294
|
+
valuePath: ""
|
|
24295
|
+
});
|
|
24296
|
+
return;
|
|
24297
|
+
}
|
|
24298
|
+
let i = yE(r, n);
|
|
24299
|
+
if (i !== void 0 && gE(i.type)) {
|
|
24300
|
+
f(n), T({
|
|
24301
|
+
...e,
|
|
24302
|
+
pick: {
|
|
24303
|
+
containerId: n,
|
|
24304
|
+
deviceId: QE
|
|
24305
|
+
},
|
|
24306
|
+
capName: "",
|
|
24307
|
+
valuePath: ""
|
|
24308
|
+
});
|
|
24309
|
+
return;
|
|
24310
|
+
}
|
|
24311
|
+
f(void 0), E(n, void 0);
|
|
24312
|
+
},
|
|
24313
|
+
noun: "device",
|
|
24314
|
+
emptyLabel: "Pick a device",
|
|
24315
|
+
testId: `osd-tpl-device-${t}`
|
|
24316
|
+
}),
|
|
24317
|
+
/* @__PURE__ */ A("p", {
|
|
24318
|
+
className: "text-[10px] text-foreground-muted",
|
|
24319
|
+
children: "Single selection for this binding. Containers are allowed — then pick a child."
|
|
24320
|
+
})
|
|
24321
|
+
]
|
|
24322
|
+
}),
|
|
24323
|
+
g !== void 0 && /* @__PURE__ */ j("div", {
|
|
24324
|
+
className: "col-span-3",
|
|
24325
|
+
"data-testid": `osd-tpl-child-pick-${t}`,
|
|
24326
|
+
children: [/* @__PURE__ */ A(K, { children: "Child" }), _.length === 0 ? /* @__PURE__ */ A("p", {
|
|
24327
|
+
className: "text-xs text-foreground-muted",
|
|
24328
|
+
children: "No OSD-supported children on this container."
|
|
24329
|
+
}) : /* @__PURE__ */ A(po, {
|
|
24330
|
+
"data-testid": `osd-tpl-child-${t}`,
|
|
24331
|
+
value: p === void 0 ? "" : String(p),
|
|
24332
|
+
options: [{
|
|
24333
|
+
value: "",
|
|
24334
|
+
label: "Select child…"
|
|
24335
|
+
}, ..._.map((e) => ({
|
|
24336
|
+
value: String(e.id),
|
|
24337
|
+
label: e.name
|
|
24338
|
+
}))],
|
|
24339
|
+
onChange: (e) => {
|
|
24340
|
+
let t = Number(e.target.value);
|
|
24341
|
+
!Number.isFinite(t) || t <= 0 || E(t, g);
|
|
24342
|
+
}
|
|
24343
|
+
})]
|
|
24344
|
+
}),
|
|
24322
24345
|
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A(K, { children: "Alias" }), /* @__PURE__ */ A(os, {
|
|
24323
24346
|
"data-testid": `osd-tpl-alias-${t}`,
|
|
24324
24347
|
value: e.alias,
|
|
24325
24348
|
maxLength: 32,
|
|
24326
24349
|
onChange: (r) => {
|
|
24327
24350
|
let i = r.target.value, a = $E(n.bindings, t);
|
|
24328
|
-
i !== "" && a.has(i) ||
|
|
24351
|
+
i !== "" && a.has(i) || T({
|
|
24329
24352
|
...e,
|
|
24330
24353
|
alias: i
|
|
24331
24354
|
});
|
|
24332
24355
|
}
|
|
24333
24356
|
})] }),
|
|
24334
|
-
(
|
|
24357
|
+
v !== void 0 && (v.mode === "pick" || v.mode === "auto") && /* @__PURE__ */ j("div", {
|
|
24335
24358
|
className: "col-span-2",
|
|
24336
|
-
children: [/* @__PURE__ */ A(K, { children: "Field" }), /* @__PURE__ */ A(
|
|
24359
|
+
children: [/* @__PURE__ */ A(K, { children: "Field" }), v.mode === "auto" && v.auto !== void 0 ? /* @__PURE__ */ A("p", {
|
|
24360
|
+
className: "text-xs text-foreground-muted mt-1.5",
|
|
24361
|
+
"data-testid": `osd-tpl-field-auto-${t}`,
|
|
24362
|
+
children: v.auto.label
|
|
24363
|
+
}) : /* @__PURE__ */ A(po, {
|
|
24364
|
+
"data-testid": `osd-tpl-field-${t}`,
|
|
24337
24365
|
value: `${e.capName}:${e.valuePath}`,
|
|
24338
|
-
options:
|
|
24366
|
+
options: v.fields.map((e) => ({
|
|
24339
24367
|
value: `${e.capName}:${e.valuePath}`,
|
|
24340
24368
|
label: e.label
|
|
24341
24369
|
})),
|
|
24342
24370
|
onChange: (t) => {
|
|
24343
|
-
let n =
|
|
24344
|
-
n &&
|
|
24371
|
+
let n = v.fields.find((e) => `${e.capName}:${e.valuePath}` === t.target.value);
|
|
24372
|
+
n && T({
|
|
24345
24373
|
...e,
|
|
24346
24374
|
capName: n.capName,
|
|
24347
24375
|
valuePath: n.valuePath
|
|
@@ -24350,22 +24378,22 @@ function nD({ binding: e, index: t, draft: n, pickerDevices: r, sources: i, stat
|
|
|
24350
24378
|
})]
|
|
24351
24379
|
}),
|
|
24352
24380
|
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A(K, { children: "Unit" }), /* @__PURE__ */ A(ET, {
|
|
24353
|
-
dimension:
|
|
24381
|
+
dimension: w,
|
|
24354
24382
|
value: e.displayUnit ?? "",
|
|
24355
|
-
onChange: (t) =>
|
|
24383
|
+
onChange: (t) => T({
|
|
24356
24384
|
...e,
|
|
24357
24385
|
displayUnit: t === "" ? void 0 : t
|
|
24358
24386
|
}),
|
|
24359
24387
|
inheritLabel: "Source",
|
|
24360
|
-
emptyReason:
|
|
24361
|
-
"aria-label": `Unit for ${e.alias}`
|
|
24388
|
+
emptyReason: C === void 0 ? "Source unit unknown (waiting for sensor state)" : "Source unit has no same-dimension conversions",
|
|
24389
|
+
"aria-label": `Unit for ${e.alias || `binding ${t + 1}`}`
|
|
24362
24390
|
})] }),
|
|
24363
24391
|
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A(K, { children: "Decimals" }), /* @__PURE__ */ A(os, {
|
|
24364
24392
|
type: "number",
|
|
24365
24393
|
min: 0,
|
|
24366
24394
|
max: 4,
|
|
24367
24395
|
value: e.maxDecimals,
|
|
24368
|
-
onChange: (t) =>
|
|
24396
|
+
onChange: (t) => T({
|
|
24369
24397
|
...e,
|
|
24370
24398
|
maxDecimals: Number(t.target.value)
|
|
24371
24399
|
})
|
|
@@ -24376,7 +24404,8 @@ function nD({ binding: e, index: t, draft: n, pickerDevices: r, sources: i, stat
|
|
|
24376
24404
|
type: "button",
|
|
24377
24405
|
size: "sm",
|
|
24378
24406
|
variant: "ghost",
|
|
24379
|
-
|
|
24407
|
+
"data-testid": `osd-tpl-remove-${t}`,
|
|
24408
|
+
onClick: () => c({
|
|
24380
24409
|
...n,
|
|
24381
24410
|
bindings: n.bindings.filter((e, n) => n !== t)
|
|
24382
24411
|
}),
|
|
@@ -24386,16 +24415,16 @@ function nD({ binding: e, index: t, draft: n, pickerDevices: r, sources: i, stat
|
|
|
24386
24415
|
/* @__PURE__ */ A("p", {
|
|
24387
24416
|
className: "col-span-3 text-xs font-mono text-foreground",
|
|
24388
24417
|
"data-testid": `osd-tpl-live-${t}`,
|
|
24389
|
-
children: "formatted" in
|
|
24418
|
+
children: "formatted" in S ? /* @__PURE__ */ j(M, { children: ["Live: ", S.formatted === "" ? "(empty)" : S.formatted] }) : /* @__PURE__ */ A("span", {
|
|
24390
24419
|
className: "text-foreground-muted",
|
|
24391
|
-
children:
|
|
24420
|
+
children: S.reason
|
|
24392
24421
|
})
|
|
24393
24422
|
})
|
|
24394
24423
|
]
|
|
24395
24424
|
});
|
|
24396
24425
|
}
|
|
24397
|
-
function
|
|
24398
|
-
let t = l(() => new Set(e.map((e) => e.pick.deviceId)), [e]), n = _i({}, {
|
|
24426
|
+
function aD(e) {
|
|
24427
|
+
let t = l(() => new Set(e.map((e) => e.pick.deviceId).filter((e) => e > 0)), [e]), n = _i({}, {
|
|
24399
24428
|
enabled: t.size > 0,
|
|
24400
24429
|
refetchInterval: 5e3
|
|
24401
24430
|
});
|
|
@@ -24412,7 +24441,7 @@ function rD(e) {
|
|
|
24412
24441
|
//#endregion
|
|
24413
24442
|
//#region src/page.tsx
|
|
24414
24443
|
t();
|
|
24415
|
-
function
|
|
24444
|
+
function oD(e) {
|
|
24416
24445
|
let [t, n] = a("cameras"), r = pi({ projection: "slim" }), i = hi({}), o = Ei({}), s = l(() => (r.data ?? []).filter((e) => e.isCamera).map((e) => ({
|
|
24417
24446
|
id: e.id,
|
|
24418
24447
|
name: e.name
|
|
@@ -24459,7 +24488,7 @@ function iD(e) {
|
|
|
24459
24488
|
}) : null,
|
|
24460
24489
|
!h && t === "templates" ? /* @__PURE__ */ A(xo, {
|
|
24461
24490
|
className: "p-4",
|
|
24462
|
-
children: /* @__PURE__ */ A(
|
|
24491
|
+
children: /* @__PURE__ */ A(nD, {})
|
|
24463
24492
|
}) : null,
|
|
24464
24493
|
!h && t === "cameras" && s.length === 0 ? /* @__PURE__ */ A("div", {
|
|
24465
24494
|
className: "text-xs text-foreground-subtle text-center py-16",
|
|
@@ -24482,4 +24511,4 @@ function iD(e) {
|
|
|
24482
24511
|
});
|
|
24483
24512
|
}
|
|
24484
24513
|
//#endregion
|
|
24485
|
-
export {
|
|
24514
|
+
export { oD as default };
|