@camstack/addon-training 0.1.29 → 0.1.31

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/_stub.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import "./virtualExposes-0m8NqEDE.mjs";
2
- import { a as e, i as t, o as n, r } from "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_training_page__remoteEntry_js-OMJ8K9-f.mjs";
2
+ import { a as e, i as t, o as n, r } from "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_training_page__remoteEntry_js-D5QSFwdb.mjs";
3
3
  import { S as i, _ as a, b as o, c as s, d as c, f as l, g as u, h as d, i as f, l as p, m, n as h, p as g, r as _, t as v, u as y, v as b, x, y as S } from "./_virtual_mf___mfe_internal__addon_training_page__loadShare__react__loadShare__.js-DeDbF7NI.mjs";
4
4
  import { _ as C, a as w, b as T, c as E, d as D, f as O, g as k, h as A, i as j, l as M, m as N, n as P, o as F, p as I, r as ee, s as te, t as ne, u as re, v as L, y as R } from "./responsive-50H8qy3U.mjs";
5
5
  import { c as ie, d as ae, l as oe, s as se, u as ce } from "./scene-monitor-copy-BEqFU51P.mjs";
@@ -6460,16 +6460,35 @@ var ks = "w-full min-h-[60px] rounded-md border border-border bg-background px-2
6460
6460
  });
6461
6461
  });
6462
6462
  //#endregion
6463
- //#region ../ui-library/src/composites/config-secret-field.tsx
6463
+ //#region ../ui-library/src/primitives/select.tsx
6464
6464
  js.displayName = "PasswordInput", i();
6465
- var Ms = "••••••••", Ns = 5e3, Ps = R("camstack:secret-reveal", null);
6466
- function Fs(e) {
6465
+ var Ms = _(({ className: e, options: t, disabled: n, ...r }, i) => /* @__PURE__ */ U("div", {
6466
+ className: "relative w-full",
6467
+ children: [/* @__PURE__ */ H("select", {
6468
+ ref: i,
6469
+ disabled: n,
6470
+ className: Y("h-7 w-full px-2.5 text-xs bg-surface border border-border rounded-md text-foreground appearance-none pr-7 focus:outline-none focus:ring-1 focus:ring-primary", "disabled:opacity-50 disabled:cursor-not-allowed", e),
6471
+ ...r,
6472
+ children: t.map((e) => /* @__PURE__ */ H("option", {
6473
+ value: e.value,
6474
+ children: e.label
6475
+ }, e.value))
6476
+ }), /* @__PURE__ */ H("div", {
6477
+ className: Y("absolute right-2 top-1/2 -translate-y-1/2 pointer-events-none text-foreground-muted", n === !0 ? "opacity-50" : ""),
6478
+ children: /* @__PURE__ */ H(le, { className: "h-3.5 w-3.5" })
6479
+ })]
6480
+ }));
6481
+ //#endregion
6482
+ //#region ../ui-library/src/composites/config-secret-field.tsx
6483
+ Ms.displayName = "Select", i();
6484
+ var Ns = "••••••••", Ps = 5e3, Fs = R("camstack:secret-reveal", null);
6485
+ function Is(e) {
6467
6486
  return e === null || Le(e) || rt(e);
6468
6487
  }
6469
- function Is(e, t, n) {
6488
+ function Ls(e, t, n) {
6470
6489
  return e.kind === "untouched" ? t : e.text.length === 0 ? n ? Ze : t : e.text === e.revealed ? t : e.text;
6471
6490
  }
6472
- function Ls(e) {
6491
+ function Rs(e) {
6473
6492
  return typeof e == "string" && e.length > 0 ? {
6474
6493
  kind: "visible",
6475
6494
  text: e,
@@ -6480,14 +6499,14 @@ function Ls(e) {
6480
6499
  revealed: null
6481
6500
  } : { kind: "untouched" };
6482
6501
  }
6483
- function Rs(e, t, n) {
6484
- return e.kind === "untouched" ? t ? Ms : n : e.text.length === 0 && t ? "Removed on save" : n;
6502
+ function zs(e, t, n) {
6503
+ return e.kind === "untouched" ? t ? Ns : n : e.text.length === 0 && t ? "Removed on save" : n;
6485
6504
  }
6486
- function zs({ field: e, value: t, onChange: n, disabled: r, multiline: i }) {
6487
- let o = p(Ps), [s] = a(() => Le(t) ? t : null), [c] = a(() => Le(t) || rt(t)), [l, u] = a(() => Ls(t)), [d, f] = a(!1), [m, h] = a(!1), [g, _] = a(null);
6505
+ function Bs({ field: e, value: t, onChange: n, disabled: r, multiline: i }) {
6506
+ let o = p(Fs), [s] = a(() => Le(t) ? t : null), [c] = a(() => Le(t) || rt(t)), [l, u] = a(() => Rs(t)), [d, f] = a(!1), [m, h] = a(!1), [g, _] = a(null);
6488
6507
  y(() => {
6489
6508
  if (g === null) return;
6490
- let e = setTimeout(() => _(null), Ns);
6509
+ let e = setTimeout(() => _(null), Ps);
6491
6510
  return () => clearTimeout(e);
6492
6511
  }, [g]);
6493
6512
  let v = s?.$secret ?? null, b = l.kind === "untouched" && c, x = b && !(v !== null && o !== null) ? "This stored value cannot be revealed here — type to replace it" : null, S = (e) => {
@@ -6496,7 +6515,7 @@ function zs({ field: e, value: t, onChange: n, disabled: r, multiline: i }) {
6496
6515
  text: e,
6497
6516
  revealed: l.kind === "visible" ? l.revealed : null
6498
6517
  };
6499
- _(null), u(t), n(Is(t, s, c));
6518
+ _(null), u(t), n(Ls(t, s, c));
6500
6519
  }, C = () => {
6501
6520
  if (!b) {
6502
6521
  f((e) => !e);
@@ -6518,7 +6537,7 @@ function zs({ field: e, value: t, onChange: n, disabled: r, multiline: i }) {
6518
6537
  "aria-label": w,
6519
6538
  value: l.kind === "visible" ? l.text : "",
6520
6539
  onValueChange: S,
6521
- placeholder: Rs(l, c, T),
6540
+ placeholder: zs(l, c, T),
6522
6541
  shown: d,
6523
6542
  onToggleShown: C,
6524
6543
  busy: m,
@@ -6530,65 +6549,65 @@ function zs({ field: e, value: t, onChange: n, disabled: r, multiline: i }) {
6530
6549
  });
6531
6550
  }
6532
6551
  G.accessories.setChildHidden.useMutation, G.accessories.getStatus.useQuery, G.addonPages.listPages.useQuery, G.addons.list.useQuery, G.addons.getLogs.useQuery, G.addons.listPackages.useQuery, G.addons.installPackage.useMutation, G.addons.installFromWorkspace.useMutation, G.addons.isWorkspaceAvailable.useQuery, G.addons.listWorkspacePackages.useQuery, G.addons.uninstallPackage.useMutation, G.addons.listInstallations.useQuery, G.addons.reloadPackages.useMutation, G.addons.searchAvailable.useQuery, G.addons.listUpdates.useQuery, G.addons.updatePackage.useMutation, G.addons.rollbackPackage.useMutation, G.addons.forceRefresh.useMutation, G.addons.restartServer.useMutation, G.addons.getLastRestart.useQuery, G.addons.listFrameworkPackages.useQuery, G.addons.listCapabilityProviders.useQuery, G.addons.setCapabilityProviderEnabled.useMutation, G.addons.getVersions.useQuery, G.addons.restartAddon.useMutation, G.addons.retryLoad.useMutation, G.addons.getAutoUpdateSettings.useQuery, G.addons.setAutoUpdateSettings.useMutation, G.addons.getAddonAutoUpdate.useQuery, G.addons.setAddonAutoUpdate.useMutation, G.addons.applyAutoUpdateToAll.useMutation, G.addons.custom.useMutation, G.addons.startJob.useMutation, G.addons.getJob.useQuery, G.addons.listJobs.useQuery, G.addons.cancelJob.useMutation, G.addons.onAddonLogs.useSubscription, G.addonSettings.getGlobalSettings.useQuery, G.addonSettings.updateGlobalSettings.useMutation, G.addonSettings.getIntegrationSettings.useQuery, G.addonSettings.getDeviceSettings.useQuery, G.addonSettings.updateDeviceSettings.useMutation, G.addonWidgets.listWidgets.useQuery, G.airQualitySensor.getStatus.useQuery, G.alarmPanel.arm.useMutation, G.alarmPanel.disarm.useMutation, G.alarmPanel.trigger.useMutation, G.alarmPanel.getStatus.useQuery, G.alerts.emit.useMutation, G.alerts.update.useMutation, G.alerts.list.useQuery, G.alerts.getUnreadCount.useQuery, G.alerts.markRead.useMutation, G.alerts.markAllRead.useMutation, G.alerts.dismiss.useMutation, G.ambientLightSensor.getStatus.useQuery, G.audioAnalysis.resolveDeviceSettings.useQuery, G.audioAnalysis.getDeviceSettingsContribution.useQuery, G.audioAnalysis.getDeviceLiveContribution.useQuery, G.audioAnalysis.applyDeviceSettingsPatch.useMutation, G.audioAnalyzer.analyseChunk.useMutation, G.audioAnalyzer.classify.useQuery, G.audioAnalyzer.attachDevice.useMutation, G.audioAnalyzer.detachDevice.useMutation, G.audioAnalyzer.isReady.useQuery, G.audioAnalyzer.dispose.useMutation, G.audioAnalyzer.reprobeAudioEngine.useMutation, G.audioCodec.listSupportedCodecs.useQuery, G.audioCodec.canHandle.useQuery, G.audioCodec.createDecodeSession.useMutation, G.audioCodec.createEncodeSession.useMutation, G.audioCodec.closeSession.useMutation, G.audioCodec.pushEncodedFrame.useMutation, G.audioCodec.pullPcm.useQuery, G.audioCodec.pushPcm.useMutation, G.audioCodec.pullEncoded.useQuery, G.audioCodec.flushEncode.useMutation, G.audioCodec.listActiveSessions.useQuery, G.audioMetrics.getCurrentSnapshot.useQuery, G.audioMetrics.getHistory.useQuery, G.automationControl.enable.useMutation, G.automationControl.disable.useMutation, G.automationControl.trigger.useMutation, G.automationControl.getStatus.useQuery, G.backup.listDestinations.useQuery, G.backup.trigger.useMutation, G.backup.listRuns.useQuery, G.backup.cancel.useMutation, G.backup.list.useQuery, G.backup.listLocations.useQuery, G.backup.getEntries.useQuery, G.backup.restore.useMutation, G.backup.getEncryption.useQuery, G.backup.setupEncryption.useMutation, G.backup.disableEncryption.useMutation, G.backup.checkBackupKey.useMutation, G.backup.delete.useMutation, G.backup.listArchives.useQuery, G.backup.upsertDestinationPolicy.useMutation, G.backup.previewSchedule.useQuery, G.backup.listSchedules.useQuery, G.backup.upsertSchedule.useMutation, G.backup.deleteSchedule.useMutation, G.battery.wakeForStream.useMutation, G.battery.getStatus.useQuery, G.binary.getStatus.useQuery, G.brightness.setBrightness.useMutation, G.brightness.getStatus.useQuery, G.broker.list.useQuery, G.broker.get.useQuery, G.broker.listProviders.useQuery, G.broker.add.useMutation, G.broker.remove.useMutation, G.broker.testConnection.useMutation, G.broker.getSettings.useQuery, G.broker.setSettings.useMutation, G.broker.getBrokerConfig.useQuery, G.broker.getSettingsSchema.useQuery, G.broker.testSettings.useMutation, G.broker.publish.useMutation, G.broker.subscribe.useMutation, G.broker.unsubscribe.useMutation, G.broker.getState.useQuery, G.broker.getStatus.useQuery, G.button.press.useMutation, G.calendars.listCalendars.useQuery, G.calendars.listEvents.useQuery, G.calendars.getPreferences.useQuery, G.calendars.setCalendarPreference.useMutation, G.cameraCredentials.getCredentials.useQuery, G.cameraCredentials.getStatus.useQuery, G.cameraGridLayout.getLayout.useQuery, G.cameraGridLayout.saveLayout.useMutation, G.cameraGridLayout.getDeviceSettingsContribution.useQuery, G.cameraGridLayout.getDeviceLiveContribution.useQuery, G.cameraGridLayout.applyDeviceSettingsPatch.useMutation, G.cameraPipelineConfig.getDeviceSettingsContribution.useQuery, G.cameraPipelineConfig.getDeviceLiveContribution.useQuery, G.cameraPipelineConfig.applyDeviceSettingsPatch.useMutation, G.cameraStreams.getCameraStreams.useQuery, G.cameraStreams.getBrokerStreams.useQuery, G.cameraStreams.getRtspEntries.useQuery, G.cameraStreams.getProfileRtspEntries.useQuery, G.cameraStreams.pickStream.useQuery, G.carbonMonoxide.getStatus.useQuery, G.climateControl.setMode.useMutation, G.climateControl.setFanMode.useMutation, G.climateControl.setPreset.useMutation, G.climateControl.setTarget.useMutation, G.climateControl.setTargetRange.useMutation, G.climateControl.setTargetHumidity.useMutation, G.climateControl.setSwingVertical.useMutation, G.climateControl.setSwingHorizontal.useMutation, G.climateControl.getStatus.useQuery, G.color.setColor.useMutation, G.color.getStatus.useQuery, G.connectionTest.testSettings.useMutation, G.connectionTest.describeTest.useQuery, G.connectivity.getStatus.useQuery, G.consumables.reset.useMutation, G.consumables.getStatus.useQuery, G.contact.getStatus.useQuery, G.control.setValue.useMutation, G.control.getStatus.useQuery, G.coreBlocks.list.useQuery, G.coreBlocks.get.useQuery, G.coreBlocks.create.useMutation, G.coreBlocks.update.useMutation, G.coreBlocks.delete.useMutation, G.coreBlocks.setEnabled.useMutation, G.coreBlocks.restart.useMutation, G.coreBlocks.compile.useMutation, G.coreBlocks.getBlockSettings.useQuery, G.coreBlocks.updateBlockSettings.useMutation, G.coreBlocks.getTypeDefs.useQuery, G.coreBlocks.createComposition.useMutation, G.coreBlocks.updateComposition.useMutation, G.coreBlocks.getComposition.useQuery, G.coreBlocks.listCompositions.useQuery, G.coreBlocks.getCustomization.useQuery, G.coreBlocks.listComposableCaps.useQuery, G.coreBlocks.validateComposition.useMutation, G.cover.open.useMutation, G.cover.close.useMutation, G.cover.stop.useMutation, G.cover.setPosition.useMutation, G.cover.setTiltPosition.useMutation, G.cover.getStatus.useQuery, G.dayNight.getOptions.useQuery, G.dayNight.setSettings.useMutation, G.dayNight.getStatus.useQuery, G.decoder.getInfo.useQuery, G.decoder.reprobeHwaccel.useMutation, G.detectionPipeline.getDeviceSettingsContribution.useQuery, G.detectionPipeline.getDeviceLiveContribution.useQuery, G.detectionPipeline.applyDeviceSettingsPatch.useMutation, G.deviceAdminLink.getAdminLink.useQuery, G.deviceAdoption.listCandidateFilters.useQuery, G.deviceAdoption.listCandidates.useQuery, G.deviceAdoption.getCandidate.useQuery, G.deviceAdoption.refresh.useMutation, G.deviceAdoption.adopt.useMutation, G.deviceAdoption.release.useMutation, G.deviceAdoption.resync.useMutation, G.deviceAdoption.getStatus.useQuery, G.deviceDiscovery.listDiscovered.useQuery, G.deviceDiscovery.refreshDiscovery.useMutation, G.deviceDiscovery.adoptDevice.useMutation, G.deviceDiscovery.releaseDevice.useMutation, G.deviceDiscovery.getStatus.useQuery, G.deviceExport.getStatus.useQuery, G.deviceExport.listSupportedDeviceKinds.useQuery, G.deviceExport.listExposedDevices.useQuery, G.deviceExport.exposeDevice.useMutation, G.deviceExport.unexposeDevice.useMutation, G.deviceExport.getDeviceSettingsContribution.useQuery, G.deviceExport.getDeviceLiveContribution.useQuery, G.deviceExport.applyDeviceSettingsPatch.useMutation, G.deviceExtension.listSources.useQuery;
6533
- var Bs = G.deviceExtension.listSlots.useQuery, Vs = G.deviceExtension.listCandidates.useQuery, Hs = G.deviceExtension.setSlot.useMutation;
6552
+ var Vs = G.deviceExtension.listSlots.useQuery, Hs = G.deviceExtension.listCandidates.useQuery, Us = G.deviceExtension.setSlot.useMutation;
6534
6553
  G.deviceManager.allocateDeviceId.useMutation, G.deviceManager.migrateDevice.useMutation, G.deviceManager.registerDevice.useMutation, G.deviceManager.removeDevice.useMutation, G.deviceManager.persistConfig.useMutation, G.deviceManager.loadConfig.useQuery, G.deviceManager.loadRuntimeState.useQuery, G.deviceManager.loadMeta.useQuery, G.deviceManager.setName.useMutation, G.deviceManager.setLocation.useMutation, G.deviceManager.setType.useMutation, G.deviceManager.setIntegrationId.useMutation, G.deviceManager.setLinkDeviceId.useMutation, G.deviceManager.setPrimaryChildEntityId.useMutation, G.deviceManager.setChildLayout.useMutation, G.deviceManager.setDisplay.useMutation;
6535
- var Us = G.deviceManager.getRoleDisplayDefaults.useQuery;
6554
+ var Ws = G.deviceManager.getRoleDisplayDefaults.useQuery;
6536
6555
  G.deviceManager.setRoleDisplayDefaults.useMutation, G.deviceManager.getWireableFields.useQuery, G.deviceManager.setRole.useMutation, G.deviceManager.applyInitialMeta.useMutation, G.deviceManager.setMetadata.useMutation, G.deviceManager.listLocations.useQuery, G.deviceManager.addLocation.useMutation, G.deviceManager.removeLocation.useMutation, G.deviceManager.renameLocation.useMutation, G.deviceManager.listLocationIcons.useQuery, G.deviceManager.setLocationIcon.useMutation, G.deviceManager.listLocationDescriptions.useQuery, G.deviceManager.setLocationDescription.useMutation, G.deviceManager.listSiteZones.useQuery, G.deviceManager.setSiteZone.useMutation, G.deviceManager.removeSiteZone.useMutation, G.deviceManager.renameSiteZone.useMutation, G.deviceManager.setLocationZone.useMutation, G.deviceManager.setDisabled.useMutation, G.deviceManager.listPersistedByAddon.useQuery;
6537
- var Ws = G.deviceManager.listAll.useQuery, Gs = G.deviceManager.getDevice.useQuery;
6556
+ var Gs = G.deviceManager.listAll.useQuery, Ks = G.deviceManager.getDevice.useQuery;
6538
6557
  G.deviceManager.getChildren.useQuery, G.deviceManager.getChildrenBatch.useQuery, G.deviceManager.getLinkedDevices.useQuery, G.deviceManager.getLinkedDevicesBatch.useQuery, G.deviceManager.getStreamSources.useQuery, G.deviceManager.getConfigSchema.useQuery, G.deviceManager.getSettingsSchema.useQuery, G.deviceManager.updateConfig.useMutation, G.deviceManager.enable.useMutation, G.deviceManager.disable.useMutation, G.deviceManager.remove.useMutation, G.deviceManager.removeByIntegration.useMutation, G.deviceManager.getStreamProfileMap.useQuery, G.deviceManager.setStreamProfileMap.useMutation, G.deviceManager.probeStreams.useMutation;
6539
- var Ks = G.deviceManager.getBindings.useQuery;
6558
+ var qs = G.deviceManager.getBindings.useQuery;
6540
6559
  G.deviceManager.getBindingsBatch.useQuery, G.deviceManager.getAllBindings.useQuery, G.deviceManager.listDeviceIdsByCaps.useQuery, G.deviceManager.setWrapperActive.useMutation, G.deviceManager.getWrapperActivation.useQuery, G.deviceManager.listWrappersForCap.useQuery, G.deviceManager.listBindableCapsForDeviceType.useQuery, G.deviceManager.getDeviceSettingsAggregate.useQuery, G.deviceManager.getDeviceLiveInfoAggregate.useQuery, G.deviceManager.getDeviceAggregate.useQuery, G.deviceManager.runDeviceAction.useMutation, G.deviceManager.updateDeviceField.useMutation, G.deviceManager.updateDeviceFieldsBatch.useMutation, G.deviceManager.discoverDevices.useMutation, G.deviceManager.adoptDevice.useMutation, G.deviceManager.getCreationSchema.useQuery, G.deviceManager.createDevice.useMutation, G.deviceManager.testCreationField.useMutation, G.deviceManager.adoptionListCandidateFilters.useQuery, G.deviceManager.adoptionListCandidates.useQuery, G.deviceManager.adoptionRefresh.useMutation, G.deviceManager.adoptionAdopt.useMutation, G.deviceManager.adoptionRelease.useMutation, G.deviceManager.adoptionStartJob.useMutation, G.deviceManager.adoptionListJobs.useQuery, G.deviceManager.adoptionCancelJob.useMutation, G.deviceManager.adoptionResync.useMutation, G.deviceManager.discoveryProviders.useQuery, G.deviceManager.discoverAllProviders.useMutation, G.deviceManager.discoverProvider.useMutation, G.deviceManager.providerCreationType.useQuery, G.deviceManager.providerDiscoveryParamsSchema.useQuery, G.deviceManager.testField.useMutation, G.deviceManager.getDeviceStatusAggregate.useQuery, G.deviceManager.getDeviceStatusAggregateBatch.useQuery, G.deviceOps.getStreamSources.useQuery, G.deviceOps.getConfigEntries.useQuery, G.deviceOps.setConfig.useMutation, G.deviceOps.runAction.useMutation, G.deviceOps.removeDevice.useMutation, G.deviceOps.getSettingsSchema.useQuery, G.deviceOps.getRawState.useQuery, G.deviceProvider.start.useMutation, G.deviceProvider.stop.useMutation, G.deviceProvider.getStatus.useQuery, G.deviceProvider.getDevices.useQuery, G.deviceProvider.reloadDevice.useMutation, G.deviceProvider.supportsDiscovery.useQuery, G.deviceProvider.discoverDevices.useMutation, G.deviceProvider.getDiscoveryParamsSchema.useQuery, G.deviceProvider.getManualCreationType.useQuery, G.deviceProvider.adoptDiscoveredDevice.useMutation, G.deviceProvider.supportsManualCreation.useQuery, G.deviceProvider.getChildCreationSchema.useQuery, G.deviceProvider.createDevice.useMutation, G.deviceProvider.testCreationField.useMutation, G.deviceState.getSnapshot.useQuery, G.deviceState.getCapSlice.useQuery, G.deviceState.getAllSnapshots.useQuery, G.deviceState.setCapSlice.useMutation, G.deviceState.claimFields.useMutation, G.deviceState.patchOwnedFields.useMutation, G.deviceState.releaseClaim.useMutation, G.deviceState.listClaims.useQuery, G.deviceState.getNativeCapSlice.useQuery, G.deviceStatus.getStatus.useQuery, G.doorbell.getStatus.useQuery, G.enumSensor.getStatus.useQuery, G.eventEmitter.getStatus.useQuery, G.faceGallery.listIdentities.useQuery, G.faceGallery.createIdentity.useMutation, G.faceGallery.renameIdentity.useMutation, G.faceGallery.deleteIdentity.useMutation, G.faceGallery.listIdentitySamples.useQuery, G.faceGallery.auditIdentitySamples.useQuery, G.faceGallery.removeSample.useMutation, G.faceGallery.listRecentFaces.useQuery, G.faceGallery.getFaceByTrack.useQuery, G.faceGallery.getFaceMedia.useQuery, G.faceGallery.assignFace.useMutation, G.faceGallery.unassignFace.useMutation, G.faceGallery.deleteFace.useMutation, G.faceGallery.assignFaces.useMutation, G.faceGallery.unassignFaces.useMutation, G.faceGallery.suggestFaceClusters.useQuery, G.fanControl.setPercentage.useMutation, G.fanControl.setPreset.useMutation, G.fanControl.setDirection.useMutation, G.fanControl.setOscillating.useMutation, G.fanControl.getStatus.useQuery, G.featureProbe.getStatus.useQuery, G.flood.getStatus.useQuery, G.gas.getStatus.useQuery, G.humidifier.setOn.useMutation, G.humidifier.setTargetHumidity.useMutation, G.humidifier.setMode.useMutation, G.humidifier.getStatus.useQuery, G.humiditySensor.getStatus.useQuery, G.image.getStatus.useQuery, G.imageSettings.getOptions.useQuery, G.imageSettings.setSettings.useMutation, G.imageSettings.getStatus.useQuery, G.integrations.list.useQuery, G.integrations.get.useQuery, G.integrations.getByAddonId.useQuery, G.integrations.create.useMutation, G.integrations.update.useMutation, G.integrations.delete.useMutation, G.integrations.getSettings.useQuery, G.integrations.setSettings.useMutation, G.integrations.getAvailableTypes.useQuery, G.integrations.testConnection.useMutation, G.intercom.startSession.useMutation, G.intercom.handleAnswer.useMutation, G.intercom.stopSession.useMutation, G.intercom.startTalkSession.useMutation, G.intercom.pushTalkAudio.useMutation, G.intercom.endTalkSession.useMutation, G.intercom.getStatus.useQuery, G.keychainAdmin.status.useQuery, G.keychainAdmin.listSecrets.useQuery, G.keychainAdmin.listAudit.useQuery, G.keychainAdmin.reveal.useMutation, G.keychainAdmin.setSystemSecret.useMutation, G.keychainAdmin.deleteOrphans.useMutation, G.keychainAdmin.rotateMasterKey.useMutation, G.keychainAdmin.purgeRetiredKeys.useMutation, G.keychainAdmin.downloadRecoveryKey.useMutation, G.keychainAdmin.resetKeychain.useMutation, G.keychainAdmin.resetReport.useQuery, G.keychainAdmin.acknowledgeReset.useMutation, G.lawnMowerControl.startMowing.useMutation, G.lawnMowerControl.pause.useMutation, G.lawnMowerControl.dock.useMutation, G.lawnMowerControl.getStatus.useQuery, G.llm.generate.useMutation, G.llm.generateVision.useMutation, G.llm.cancel.useMutation, G.llm.listProfileKinds.useQuery, G.llm.listProfiles.useQuery, G.llm.upsertProfile.useMutation, G.llm.deleteProfile.useMutation, G.llm.testProfile.useMutation, G.llm.listModels.useQuery, G.llm.getDefaults.useQuery, G.llm.setDefault.useMutation, G.llm.getUsage.useQuery, G.llm.listModelCatalog.useQuery, G.llm.listRuntimeNodes.useQuery, G.llm.listNodeModels.useQuery, G.llm.resolveModelRef.useMutation, G.llm.installModel.useMutation, G.llm.deleteModel.useMutation, G.llm.getRuntimeStatus.useQuery, G.llm.startRuntime.useMutation, G.llm.stopRuntime.useMutation, G.localNetwork.list.useQuery, G.localNetwork.getPreferred.useQuery, G.localNetwork.getConnectionEndpoints.useQuery, G.localNetwork.getNotificationEndpoint.useQuery, G.localNetwork.setNotificationEndpoint.useMutation, G.localNetwork.getViewerEndpoints.useQuery, G.localNetwork.setViewerEndpoints.useMutation, G.localNetwork.getAddresses.useQuery, G.localNetwork.addCustomAddress.useMutation, G.localNetwork.removeCustomAddress.useMutation, G.localNetwork.setAddressRole.useMutation, G.localNetwork.getHubAddresses.useQuery, G.localNetwork.getAllowedAddresses.useQuery, G.localNetwork.setAllowedAddresses.useMutation, G.localNetwork.resetAllowlistToBestMatch.useMutation, G.localNetwork.getTlsStatus.useQuery, G.localNetwork.regenerateCertificate.useMutation, G.localNetwork.uploadCertificate.useMutation, G.localNetwork.downloadCa.useQuery, G.localNetwork.revertToGeneratedCertificate.useMutation, G.lockControl.lock.useMutation, G.lockControl.unlock.useMutation, G.lockControl.open.useMutation, G.lockControl.getStatus.useQuery, G.mediaPlayer.play.useMutation, G.mediaPlayer.pause.useMutation, G.mediaPlayer.stop.useMutation, G.mediaPlayer.next.useMutation, G.mediaPlayer.previous.useMutation, G.mediaPlayer.seek.useMutation, G.mediaPlayer.setVolume.useMutation, G.mediaPlayer.setMute.useMutation, G.mediaPlayer.setShuffle.useMutation, G.mediaPlayer.setRepeat.useMutation, G.mediaPlayer.selectSource.useMutation, G.mediaPlayer.playMedia.useMutation, G.mediaPlayer.getStatus.useQuery, G.meshNetwork.getStatus.useQuery, G.meshNetwork.join.useMutation, G.meshNetwork.startLogin.useMutation, G.meshNetwork.leave.useMutation, G.meshNetwork.logout.useMutation, G.meshNetwork.listPeers.useQuery, G.meshNetwork.testConnection.useMutation, G.metricsProvider.collectSnapshot.useQuery, G.metricsProvider.getCached.useQuery, G.metricsProvider.getCurrent.useQuery, G.metricsProvider.getDiskSpace.useQuery, G.metricsProvider.getGpuInfo.useQuery, G.metricsProvider.getCpuTemperature.useQuery, G.metricsProvider.getProcessStats.useQuery, G.metricsProvider.listAddonInstances.useQuery, G.metricsProvider.getAddonStats.useQuery, G.metricsProvider.listNodeProcesses.useQuery, G.metricsProvider.getLoadSeries.useQuery, G.motion.isDetected.useQuery, G.motion.getStatus.useQuery, G.motionDetection.analyze.useMutation, G.motionDetection.removeCamera.useMutation, G.motionDetection.reset.useMutation, G.motionDetection.getDeviceSettingsContribution.useQuery, G.motionDetection.getDeviceLiveContribution.useQuery, G.motionDetection.applyDeviceSettingsPatch.useMutation, G.motionTrigger.setMotionTrigger.useMutation, G.motionTrigger.getStatus.useQuery, G.motionZones.getOptions.useQuery, G.motionZones.setZone.useMutation, G.motionZones.getStatus.useQuery, G.mqttBroker.listBrokers.useQuery, G.mqttBroker.getBrokerConfig.useQuery, G.mqttBroker.addBroker.useMutation, G.mqttBroker.removeBroker.useMutation, G.mqttBroker.testConnection.useMutation, G.mqttBroker.startEmbeddedBroker.useMutation, G.mqttBroker.stopEmbeddedBroker.useMutation, G.mqttBroker.getStatus.useQuery, G.nativeObjectDetection.getOptions.useQuery, G.nativeObjectDetection.setSettings.useMutation, G.nativeObjectDetection.setEnabled.useMutation, G.nativeObjectDetection.getStatus.useQuery, G.navigation.move.useMutation, G.navigation.stop.useMutation, G.navigation.goToPoint.useMutation, G.navigation.listActions.useQuery, G.navigation.runAction.useMutation, G.navigation.playSound.useMutation, G.navigation.setLightOn.useMutation, G.navigation.setLightMode.useMutation, G.navigation.setLightLevel.useMutation, G.navigation.getFeatures.useQuery, G.navigation.getStatus.useQuery, G.networkAccess.start.useMutation, G.networkAccess.stop.useMutation, G.networkAccess.getEndpoint.useQuery, G.networkAccess.getStatus.useQuery, G.networkAccess.listEndpoints.useQuery, G.networkLink.getStatus.useQuery, G.networkQuality.getDeviceStats.useQuery, G.networkQuality.getAllStats.useQuery, G.networkQuality.reportClientStats.useMutation, G.nodes.topology.useQuery, G.nodes.directory.useQuery, G.nodes.deployAddon.useMutation, G.nodes.undeployAddon.useMutation, G.nodes.restartAddon.useMutation, G.nodes.restartProcess.useMutation, G.nodes.restartNode.useMutation, G.nodes.shutdownNode.useMutation, G.nodes.renameNode.useMutation, G.nodes.clusterAddonStatus.useQuery, G.nodes.getCapUsageGraph.useQuery, G.nodes.getNodeAddons.useQuery, G.nodes.setProcessLogLevel.useMutation, G.nodes.executeQuery.useMutation;
6541
- var qs = G.notificationOutput.listTargetKinds.useQuery, Js = G.notificationOutput.listTargets.useQuery;
6560
+ var Js = G.notificationOutput.listTargetKinds.useQuery, Ys = G.notificationOutput.listTargets.useQuery;
6542
6561
  G.notificationOutput.getTarget.useQuery, G.notificationOutput.discoverTargets.useQuery, G.notificationOutput.probeTargetConfig.useMutation, G.notificationOutput.send.useMutation, G.notificationOutput.testTarget.useMutation, G.notificationOutput.upsertTarget.useMutation, G.notificationOutput.deleteTarget.useMutation, G.notificationOutput.setTargetEnabled.useMutation, G.notificationRules.listRules.useQuery, G.notificationRules.getRule.useQuery, G.notificationRules.createRule.useMutation, G.notificationRules.updateRule.useMutation, G.notificationRules.deleteRule.useMutation, G.notificationRules.setRuleEnabled.useMutation, G.notificationRules.listSequences.useQuery, G.notificationRules.getSequence.useQuery, G.notificationRules.createSequence.useMutation, G.notificationRules.updateSequence.useMutation, G.notificationRules.deleteSequence.useMutation, G.notificationRules.getClipRetentionAsks.useQuery, G.notificationRules.listDeviceMutes.useQuery, G.notificationRules.setDeviceMuted.useMutation, G.notificationRules.testRule.useMutation, G.notificationRules.previewStateSummary.useMutation, G.notificationRules.getConditionCatalog.useQuery, G.notificationRules.getTemplateCatalog.useQuery, G.notificationRules.previewTemplate.useMutation, G.notificationRules.getHistory.useQuery, G.notificationRules.getRuleLastRuns.useQuery, G.notificationRules.resolveArtifactUrl.useQuery, G.notificationRules.listSnoozes.useQuery, G.notificationRules.createSnooze.useMutation, G.notificationRules.cancelSnooze.useMutation, G.notificationRules.getAlarmConfig.useQuery, G.notificationRules.setAlarmConfig.useMutation, G.notificationRules.createAlarmProfile.useMutation, G.notificationRules.renameAlarmProfile.useMutation, G.notificationRules.deleteAlarmProfile.useMutation, G.notificationRules.activateAlarmProfile.useMutation, G.notificationRules.getAlarmSensors.useQuery, G.notifier.send.useMutation, G.notifier.cancel.useMutation, G.notifier.getStatus.useQuery, G.numericSensor.getStatus.useQuery, G.oidcConnections.connectionFormSchema.useQuery, G.oidcConnections.listConnections.useQuery, G.oidcConnections.createConnection.useMutation, G.oidcConnections.updateConnection.useMutation, G.oidcConnections.deleteConnection.useMutation, G.osd.setOverlay.useMutation, G.osd.getStatus.useQuery, G.osdManager.getDeviceOsd.useQuery, G.osdManager.getSourceCatalog.useQuery, G.osdManager.getConditionSupport.useQuery, G.osdManager.setSlotBinding.useMutation, G.osdManager.clearSlotBinding.useMutation, G.osdManager.setSlotCameraEnabled.useMutation, G.osdManager.copyDeviceConfiguration.useMutation, G.osdManager.previewSlot.useMutation, G.osdManager.renderDevice.useMutation, G.osdManager.listTemplates.useQuery, G.osdManager.upsertTemplate.useMutation, G.osdManager.deleteTemplate.useMutation, G.petFeeder.feed.useMutation, G.petFeeder.cancelFeed.useMutation, G.petFeeder.resetDesiccant.useMutation, G.petFeeder.markFoodReplenished.useMutation, G.petFeeder.callPet.useMutation, G.petFeeder.playSound.useMutation, G.petFeeder.setChildLock.useMutation, G.petFeeder.setIndicatorLight.useMutation, G.petFeeder.setFeedSound.useMutation, G.petFeeder.setVolume.useMutation, G.petFeeder.getStatus.useQuery, G.pipelineAnalytics.getActiveTracks.useQuery, G.pipelineAnalytics.getTrack.useQuery, G.pipelineAnalytics.listTracks.useQuery, G.pipelineAnalytics.listRecentTracks.useQuery, G.pipelineAnalytics.clearTracks.useMutation;
6543
- var Ys = G.pipelineAnalytics.getMotionEvents.useQuery, Xs = G.pipelineAnalytics.getObjectEvents.useQuery, Zs = G.pipelineAnalytics.getAudioEvents.useQuery;
6562
+ var Xs = G.pipelineAnalytics.getMotionEvents.useQuery, Zs = G.pipelineAnalytics.getObjectEvents.useQuery, Qs = G.pipelineAnalytics.getAudioEvents.useQuery;
6544
6563
  G.pipelineAnalytics.listEventKinds.useQuery, G.pipelineAnalytics.listEventKindsBatch.useQuery, G.pipelineAnalytics.getSensorEvents.useQuery, G.pipelineAnalytics.getKeyEvents.useQuery, G.pipelineAnalytics.getKeyEventsBatch.useQuery, G.pipelineAnalytics.readLongTermSeries.useQuery;
6545
- var Qs = G.pipelineAnalytics.getEventDensity.useQuery;
6564
+ var $s = G.pipelineAnalytics.getEventDensity.useQuery;
6546
6565
  G.pipelineAnalytics.getEventDensityBatch.useQuery, G.pipelineAnalytics.pruneEventsBefore.useMutation, G.pipelineAnalytics.pruneTracksBefore.useMutation, G.pipelineAnalytics.wipeAllAnalytics.useMutation, G.pipelineAnalytics.reconcileFromDisk.useMutation, G.pipelineAnalytics.deleteTracks.useMutation, G.pipelineAnalytics.setTrackFlags.useMutation, G.pipelineAnalytics.listArchivedDebugNotes.useQuery, G.pipelineAnalytics.setTrackRelation.useMutation, G.pipelineAnalytics.clearTrackRelation.useMutation, G.pipelineAnalytics.setTrackPurity.useMutation, G.pipelineAnalytics.listTrackRelations.useQuery, G.pipelineAnalytics.listBirthDecisions.useQuery, G.pipelineAnalytics.getEventStoreFootprint.useQuery, G.pipelineAnalytics.getEventMediaFootprintByKind.useQuery, G.pipelineAnalytics.pruneEvents.useMutation, G.pipelineAnalytics.deleteDeviceEvents.useMutation, G.pipelineAnalytics.pauseForStorageMigration.useMutation, G.pipelineAnalytics.resumeForStorageMigration.useMutation, G.pipelineAnalytics.refreshStorageLocationsForMigration.useMutation, G.pipelineAnalytics.startStorageMigrationMove.useMutation, G.pipelineAnalytics.getStorageMigrationMoveStatus.useQuery, G.pipelineAnalytics.cancelStorageMigrationMove.useMutation, G.pipelineAnalytics.relocateMedia.useMutation, G.pipelineAnalytics.countUnstampedEventMedia.useQuery, G.pipelineAnalytics.countRelocatableMedia.useQuery, G.pipelineAnalytics.listRelocateMediaJobs.useQuery, G.pipelineAnalytics.cancelRelocateMedia.useMutation, G.pipelineAnalytics.listOpsLog.useQuery, G.pipelineAnalytics.reclaimDebugMedia.useMutation, G.pipelineAnalytics.getMediaReclaimStatus.useQuery, G.pipelineAnalytics.getTrainingExportSummary.useQuery, G.pipelineAnalytics.getTrainingExportUrl.useQuery, G.pipelineAnalytics.listRetrainStaging.useQuery;
6547
- var $s = G.pipelineAnalytics.listRetrainCorpusPage.useQuery, ec = G.pipelineAnalytics.getRetrainCorpusKpi.useQuery;
6566
+ var ec = G.pipelineAnalytics.listRetrainCorpusPage.useQuery, tc = G.pipelineAnalytics.getRetrainCorpusKpi.useQuery;
6548
6567
  G.pipelineAnalytics.listRetrainFrames.useQuery, G.pipelineAnalytics.selectRetrainFrames.useMutation, G.pipelineAnalytics.deselectRetrainFrame.useMutation;
6549
- var tc = G.pipelineAnalytics.getRetrainFrameImage.useQuery, nc = G.pipelineAnalytics.proposeRetrainAnnotations.useMutation, rc = G.pipelineAnalytics.listRetrainAnnotations.useQuery, ic = G.pipelineAnalytics.saveRetrainAnnotations.useMutation;
6568
+ var nc = G.pipelineAnalytics.getRetrainFrameImage.useQuery, rc = G.pipelineAnalytics.proposeRetrainAnnotations.useMutation, ic = G.pipelineAnalytics.listRetrainAnnotations.useQuery, ac = G.pipelineAnalytics.saveRetrainAnnotations.useMutation;
6550
6569
  G.pipelineAnalytics.completeRetrainTrack.useMutation, G.pipelineAnalytics.restageRetrainTrack.useMutation;
6551
- var ac = G.pipelineAnalytics.getRetrainExportUrl.useQuery, oc = G.pipelineAnalytics.setRetrainFrameComplete.useMutation;
6570
+ var oc = G.pipelineAnalytics.getRetrainExportUrl.useQuery, sc = G.pipelineAnalytics.setRetrainFrameComplete.useMutation;
6552
6571
  G.pipelineAnalytics.writeRetrainArchive.useMutation, G.pipelineAnalytics.offerRetrainArchive.useMutation;
6553
- var sc = G.pipelineAnalytics.listRetrainAssistProfiles.useQuery, cc = G.pipelineAnalytics.proposeRetrainAnnotationsWithLlm.useMutation, lc = G.pipelineAnalytics.createRetrainCollection.useMutation, uc = G.pipelineAnalytics.listRetrainCollections.useQuery;
6572
+ var cc = G.pipelineAnalytics.listRetrainAssistProfiles.useQuery, lc = G.pipelineAnalytics.proposeRetrainAnnotationsWithLlm.useMutation, uc = G.pipelineAnalytics.createRetrainCollection.useMutation, dc = G.pipelineAnalytics.listRetrainCollections.useQuery;
6554
6573
  G.pipelineAnalytics.resolveRetrainTrainingCorpus.useQuery;
6555
- var dc = G.pipelineAnalytics.renameRetrainCollection.useMutation, fc = G.pipelineAnalytics.deleteRetrainCollection.useMutation, pc = G.pipelineAnalytics.addRetrainFrameFromRecording.useMutation;
6574
+ var fc = G.pipelineAnalytics.renameRetrainCollection.useMutation, pc = G.pipelineAnalytics.deleteRetrainCollection.useMutation, mc = G.pipelineAnalytics.addRetrainFrameFromRecording.useMutation;
6556
6575
  G.pipelineAnalytics.addRetrainFramesToCollection.useMutation, G.pipelineAnalytics.removeRetrainFrameFromCollection.useMutation, G.pipelineAnalytics.listRetrainCollectionFrames.useQuery, G.pipelineAnalytics.getEventMedia.useQuery, G.pipelineAnalytics.getTrackMedia.useQuery, G.pipelineAnalytics.listTrackMedia.useQuery, G.pipelineAnalytics.listEventMedia.useQuery, G.pipelineAnalytics.ownersWithMedia.useQuery, G.pipelineAnalytics.searchObjectEvents.useQuery, G.pipelineAnalytics.wipeObjectEmbeddings.useMutation, G.pipelineAnalytics.rebuildObjectEmbeddings.useMutation, G.pipelineAnalytics.getObjectEmbeddingRebuildStatus.useQuery, G.pipelineAnalytics.getDeviceSettingsContribution.useQuery, G.pipelineAnalytics.getDeviceLiveContribution.useQuery, G.pipelineAnalytics.applyDeviceSettingsPatch.useMutation, G.pipelineExecutor.getAvailableEngines.useQuery, G.pipelineExecutor.getSelectedEngine.useQuery, G.pipelineExecutor.getDefaultSteps.useQuery, G.pipelineExecutor.getEngineProvisioning.useQuery, G.pipelineExecutor.getVideoPipelineSteps.useQuery, G.pipelineExecutor.setVideoPipelineSteps.useMutation, G.pipelineExecutor.clearDeviceOverrides.useMutation, G.pipelineExecutor.clearModelBoundDeviceOverrides.useMutation, G.pipelineExecutor.getInferenceDeviceHealth.useQuery, G.pipelineExecutor.rearmInferenceDevice.useMutation;
6557
- var mc = G.pipelineExecutor.getSchema.useQuery;
6576
+ var hc = G.pipelineExecutor.getSchema.useQuery;
6558
6577
  G.pipelineExecutor.getGlobalSteps.useQuery, G.pipelineExecutor.getGlobalPipelineConfig.useQuery, G.pipelineExecutor.getOrchestratorConfigSchema.useQuery, G.pipelineExecutor.validatePipeline.useQuery, G.pipelineExecutor.getCapabilities.useQuery, G.pipelineExecutor.getAddonModels.useQuery, G.pipelineExecutor.downloadModel.useMutation, G.pipelineExecutor.deleteModel.useMutation, G.pipelineExecutor.runPipeline.useMutation, G.pipelineExecutor.runPipelineBatch.useMutation, G.pipelineExecutor.cacheFrameInPool.useMutation, G.pipelineExecutor.inferCached.useMutation, G.pipelineExecutor.uncacheFrame.useMutation, G.pipelineExecutor.getEffectiveTuning.useQuery, G.pipelineExecutor.listLoadedEngines.useQuery, G.pipelineExecutor.spinEngine.useMutation, G.pipelineExecutor.killEngine.useMutation, G.pipelineExecutor.listReferenceImages.useQuery, G.pipelineExecutor.getReferenceImage.useQuery, G.pipelineExecutor.getReferenceAudioFiles.useQuery, G.pipelineExecutor.getReferenceAudio.useQuery, G.pipelineExecutor.getAudioCapabilities.useQuery, G.pipelineExecutor.runAudioTest.useMutation, G.pipelineExecutor.getDetectionConfigSchema.useQuery, G.pipelineOrchestrator.requestOccupancyLook.useMutation, G.pipelineOrchestrator.pauseForStorageMigration.useMutation, G.pipelineOrchestrator.resumeForStorageMigration.useMutation, G.pipelineOrchestrator.assignPipeline.useMutation, G.pipelineOrchestrator.unassignPipeline.useMutation, G.pipelineOrchestrator.setPipelineDevicePin.useMutation, G.pipelineOrchestrator.getPipelineDevicePin.useQuery, G.pipelineOrchestrator.rebalance.useMutation, G.pipelineOrchestrator.getPipelineAssignments.useQuery, G.pipelineOrchestrator.getPipelineAssignment.useQuery, G.pipelineOrchestrator.getAgentLoad.useQuery, G.pipelineOrchestrator.getClusterModelChoice.useQuery, G.pipelineOrchestrator.getGlobalMetrics.useQuery, G.pipelineOrchestrator.getCameraMetrics.useQuery, G.pipelineOrchestrator.getCapabilityBindings.useQuery, G.pipelineOrchestrator.setCapabilityBinding.useMutation, G.pipelineOrchestrator.getIngestOwner.useQuery, G.pipelineOrchestrator.assignAudio.useMutation, G.pipelineOrchestrator.unassignAudio.useMutation, G.pipelineOrchestrator.getAudioAssignment.useQuery, G.pipelineOrchestrator.getAudioNodeLoad.useQuery, G.pipelineOrchestrator.getAudioAssignments.useQuery, G.pipelineOrchestrator.getAgentSettings.useQuery, G.pipelineOrchestrator.listAgentSettings.useQuery, G.pipelineOrchestrator.removeAgentSettings.useMutation, G.pipelineOrchestrator.setAgentMaxCameras.useMutation, G.pipelineOrchestrator.setAgentCapabilities.useMutation, G.pipelineOrchestrator.setAgentDecodeLimits.useMutation, G.pipelineOrchestrator.setAgentReachableHost.useMutation, G.pipelineOrchestrator.setAgentInferenceDevices.useMutation;
6559
- var hc = G.pipelineOrchestrator.getNodeInferenceDevices.useQuery;
6578
+ var gc = G.pipelineOrchestrator.getNodeInferenceDevices.useQuery;
6560
6579
  G.pipelineOrchestrator.resetNodePipelineDefaults.useMutation, G.pipelineOrchestrator.planAutoTune.useQuery, G.pipelineOrchestrator.applyAutoTune.useMutation, G.pipelineOrchestrator.setLoadBalancingShares.useMutation, G.pipelineOrchestrator.getPlacementStats.useQuery, G.pipelineOrchestrator.suggestShares.useQuery, G.pipelineOrchestrator.getEffectiveShares.useQuery, G.pipelineOrchestrator.setShareSource.useMutation, G.pipelineOrchestrator.getNodeBenchmarkPreflight.useQuery, G.pipelineOrchestrator.startNodeBenchmark.useMutation, G.pipelineOrchestrator.getNodeBenchmarkStatus.useQuery, G.pipelineOrchestrator.abortNodeBenchmark.useMutation, G.pipelineOrchestrator.getNodeBenchmarkCandidates.useQuery, G.pipelineOrchestrator.listNodeBenchmarkResults.useQuery, G.pipelineOrchestrator.deleteNodeBenchmarkResult.useMutation, G.pipelineOrchestrator.getCameraSettings.useQuery, G.pipelineOrchestrator.setCameraStepToggle.useMutation, G.pipelineOrchestrator.getCameraStepOverrides.useQuery, G.pipelineOrchestrator.setCameraStepOverride.useMutation, G.pipelineOrchestrator.setCameraStepSettings.useMutation, G.pipelineOrchestrator.setCameraPipelineForAgent.useMutation;
6561
- var gc = G.pipelineOrchestrator.resolvePipeline.useQuery;
6580
+ var _c = G.pipelineOrchestrator.resolvePipeline.useQuery;
6562
6581
  G.pipelineOrchestrator.getCameraSwitches.useQuery, G.pipelineOrchestrator.setCameraSwitch.useMutation, G.pipelineOrchestrator.getCameraStatus.useQuery;
6563
- var _c = G.pipelineOrchestrator.getCameraStatuses.useQuery;
6582
+ var vc = G.pipelineOrchestrator.getCameraStatuses.useQuery;
6564
6583
  G.pipelineOrchestrator.setCameraSensors.useMutation, G.pipelineOrchestrator.reconcileFromDisk.useMutation, G.pipelineOrchestrator.getReconcileFromDiskStatus.useQuery, G.pipelineOrchestrator.getDeviceSettingsContribution.useQuery, G.pipelineOrchestrator.getDeviceLiveContribution.useQuery, G.pipelineOrchestrator.applyDeviceSettingsPatch.useMutation, G.pipelineRunner.attachCamera.useMutation, G.pipelineRunner.detachCamera.useMutation, G.pipelineRunner.reportMotion.useMutation, G.pipelineRunner.getLocalLoad.useQuery, G.pipelineRunner.getLocalMetrics.useQuery, G.pipelineRunner.getCameraMetrics.useQuery, G.pipelineRunner.getAllCameraMetrics.useQuery, G.pipelineRunner.getLocalCameras.useQuery, G.pipelineRunner.requestOccupancyBurst.useMutation, G.pipelineRunner.getNativeCrop.useQuery, G.pipelineRunner.runDetailSubtree.useMutation, G.pipelineRunner.runStatelessStep.useMutation, G.pipelineRunner.parkTrackFrame.useMutation, G.pipelineRunner.getParkedTrackFrame.useQuery, G.pipelineRunner.releaseParkedTrackFrames.useMutation, G.pipelineRunner.startNodeBench.useMutation, G.pipelineRunner.getNodeBenchStatus.useQuery, G.pipelineRunner.abortNodeBench.useMutation, G.plateGallery.listPlates.useQuery, G.plateGallery.getPlateByTrack.useQuery, G.plateGallery.getPlateMedia.useQuery, G.plateGallery.searchPlates.useQuery, G.plateGallery.suggestPlateClusters.useQuery, G.plateGallery.correctPlateText.useMutation, G.plateGallery.deletePlate.useMutation, G.plateGallery.listVehicles.useQuery, G.plateGallery.createVehicle.useMutation, G.plateGallery.renameVehicle.useMutation, G.plateGallery.deleteVehicle.useMutation, G.plateGallery.listVehicleSamples.useQuery, G.plateGallery.removeVehicleSample.useMutation, G.plateGallery.assignPlate.useMutation, G.plateGallery.unassignPlate.useMutation, G.plateGallery.assignPlates.useMutation, G.plateGallery.unassignPlates.useMutation, G.powerMeter.getStatus.useQuery, G.presence.getStatus.useQuery, G.pressureSensor.getStatus.useQuery, G.privacyMask.getOptions.useQuery, G.privacyMask.setMask.useMutation, G.privacyMask.setAudioEnabled.useMutation, G.privacyMask.getStatus.useQuery, G.ptz.move.useMutation, G.ptz.continuousMove.useMutation, G.ptz.stop.useMutation, G.ptz.getPresets.useQuery, G.ptz.goToPreset.useMutation, G.ptz.savePreset.useMutation, G.ptz.deletePreset.useMutation, G.ptz.getOptions.useQuery, G.ptz.goHome.useMutation, G.ptz.getHomePreset.useQuery, G.ptz.setHomePreset.useMutation, G.ptz.captureHomeHere.useMutation, G.ptz.getHomeReturn.useQuery, G.ptz.setHomeReturn.useMutation, G.ptz.getPosition.useQuery, G.ptz.setAutofocus.useMutation, G.ptz.getStatus.useQuery;
6565
- var vc = G.ptzAutotrack.getStatus.useQuery, yc = G.ptzAutotrack.setEnabled.useMutation;
6584
+ var yc = G.ptzAutotrack.getStatus.useQuery, bc = G.ptzAutotrack.setEnabled.useMutation;
6566
6585
  G.ptzAutotrack.getSettings.useQuery;
6567
- var bc = G.ptzAutotrack.setSettings.useMutation;
6586
+ var xc = G.ptzAutotrack.setSettings.useMutation;
6568
6587
  G.reboot.reboot.useMutation, G.recording.listSources.useQuery;
6569
- var xc = G.recording.getAvailability.useQuery;
6588
+ var Sc = G.recording.getAvailability.useQuery;
6570
6589
  G.recording.getDaysWithRecordings.useQuery, G.recording.getPlayback.useQuery, G.recording.getPlaybackOptions.useQuery, G.recordingArchive.getAvailabilityBatch.useQuery, G.recordingArchive.getDaysWithRecordingsBatch.useQuery, G.recordingArchive.getStorageUsage.useQuery;
6571
- var Sc = G.recordingArchive.getDeviceConfig.useQuery;
6590
+ var Cc = G.recordingArchive.getDeviceConfig.useQuery;
6572
6591
  G.recordingArchive.locateSegment.useQuery, G.recordingArchive.readSegmentBytes.useQuery, G.recordingArchive.readGopBytes.useQuery, G.recordingArchive.readWindowBytes.useQuery;
6573
- var Cc = G.recordingArchive.setDeviceConfig.useMutation, wc = G.recordingArchive.rescanStorage.useMutation;
6592
+ var wc = G.recordingArchive.setDeviceConfig.useMutation, Tc = G.recordingArchive.rescanStorage.useMutation;
6574
6593
  G.recordingArchive.pruneFootage.useMutation, G.recordingArchive.deleteFootprint.useMutation, G.recordingArchive.listOpsLog.useQuery, G.recordingArchive.renderGif.useMutation, G.recordingArchive.renderClip.useMutation, G.recordingArchive.pauseForStorageMigration.useMutation, G.recordingArchive.resumeForStorageMigration.useMutation, G.recordingArchive.refreshStorageLocationsForMigration.useMutation, G.recordingArchive.startStorageMigrationMove.useMutation, G.recordingArchive.getStorageMigrationMoveStatus.useQuery, G.recordingArchive.cancelStorageMigrationMove.useMutation, G.recordingArchive.relocateFootage.useMutation, G.recordingArchive.listRelocateJobs.useQuery, G.recordingArchive.getRelocateResidue.useQuery, G.recordingArchive.reconcileLedgerAgainstDisk.useMutation, G.recordingArchive.cancelRelocateJob.useMutation, G.recordingArchive.planStorageRebalance.useQuery, G.recordingArchive.startStorageRebalance.useMutation, G.recordingArchive.getPlacement.useQuery, G.recordingArchive.setDevicePlacement.useMutation;
6575
- var Tc = G.recordingArchive.getStatus.useQuery;
6594
+ var Ec = G.recordingArchive.getStatus.useQuery;
6576
6595
  G.recordingArchive.getDeviceSettingsContribution.useQuery, G.recordingArchive.getDeviceLiveContribution.useQuery, G.recordingArchive.applyDeviceSettingsPatch.useMutation, G.recordingExport.createExport.useMutation, G.recordingExport.listExports.useQuery, G.recordingExport.getExport.useQuery, G.recordingExport.cancelExport.useMutation, G.recordingExport.deleteExport.useMutation, G.recordingExport.getDownloadUrl.useQuery, G.recordingExport.readExportBytes.useQuery, G.recordingOnboard.getOptions.useQuery, G.recordingOnboard.setSettings.useMutation, G.recordingOnboard.getStatus.useQuery, G.recordingSignal.getStatus.useQuery, G.sceneMonitor.listScenes.useQuery, G.sceneMonitor.listScenesBatch.useQuery, G.sceneMonitor.createScene.useMutation, G.sceneMonitor.updateScene.useMutation, G.sceneMonitor.deleteScene.useMutation, G.sceneMonitor.captureReference.useMutation, G.sceneMonitor.deleteReference.useMutation, G.sceneMonitor.recheckNow.useMutation, G.sceneMonitor.resetScene.useMutation, G.sceneMonitor.getStatus.useQuery, G.scriptRunner.run.useMutation, G.scriptRunner.stop.useMutation, G.scriptRunner.getStatus.useQuery, G.serverManagement.getServerPackageStatus.useQuery, G.serverManagement.checkServerUpdate.useMutation, G.serverManagement.applyServerUpdate.useMutation, G.serverManagement.rollbackServerUpdate.useMutation, G.serverManagement.restartServer.useMutation, G.settingsStore.get.useQuery, G.settingsStore.set.useMutation, G.settingsStore.query.useQuery, G.settingsStore.upsert.useMutation, G.settingsStore.insert.useMutation, G.settingsStore.insertMany.useMutation, G.settingsStore.update.useMutation, G.settingsStore.delete.useMutation, G.settingsStore.deleteWhere.useMutation, G.settingsStore.updateWhere.useMutation, G.settingsStore.count.useQuery, G.settingsStore.aggregate.useQuery, G.settingsStore.histogram.useQuery, G.settingsStore.isEmpty.useQuery, G.settingsStore.declareCollection.useMutation, G.smoke.getStatus.useQuery, G.snapshot.getSnapshot.useQuery, G.snapshot.invalidateCache.useMutation, G.snapshot.getSnapshotOverview.useQuery, G.snapshot.getDebugState.useQuery, G.snapshot.getSnapshotLinks.useQuery, G.snapshot.getStatus.useQuery, G.snapshot.getDeviceSettingsContribution.useQuery, G.snapshot.getDeviceLiveContribution.useQuery, G.snapshot.applyDeviceSettingsPatch.useMutation, G.storage.resolve.useQuery, G.storage.write.useMutation, G.storage.read.useQuery, G.storage.exists.useQuery, G.storage.list.useQuery, G.storage.delete.useMutation, G.storage.getAvailableSpace.useQuery, G.storage.beginUpload.useMutation, G.storage.writeChunk.useMutation, G.storage.finalizeUpload.useMutation, G.storage.abortUpload.useMutation, G.storage.beginDownload.useMutation, G.storage.readChunk.useQuery, G.storage.endDownload.useMutation, G.storage.listLocations.useQuery, G.storage.listLocationDeclarations.useQuery, G.storage.upsertLocation.useMutation, G.storage.deleteLocation.useMutation, G.storage.listDrainProgress.useQuery, G.storage.testLocation.useQuery, G.storage.listProviders.useQuery, G.storage.testConfig.useQuery, G.storageMigration.plan.useQuery, G.storageMigration.start.useMutation, G.storageMigration.status.useQuery, G.storageMigration.cancel.useMutation, G.storageMigration.movers.useQuery, G.storageMigration.residue.useQuery, G.storageMigration.drain.useMutation, G.storageMigration.cleanupStart.useMutation, G.storageMigration.cleanupStatus.useQuery, G.storageMigration.cleanupCancel.useMutation, G.storageMigration.history.useQuery, G.streamBroker.reportStreamSignal.useMutation, G.streamBroker.publishCameraStream.useMutation, G.streamBroker.retractCameraStream.useMutation, G.streamBroker.assignProfile.useMutation, G.streamBroker.unassignProfile.useMutation, G.streamBroker.forgetDeviceHardware.useMutation, G.streamBroker.renderPreBufferClip.useMutation, G.streamBroker.produceEventMedia.useMutation, G.streamBroker.fetchEventMedia.useMutation, G.streamBroker.listAllCameraStreams.useQuery;
6577
- var Ec = G.streamBroker.listAllProfileSlots.useQuery;
6596
+ var Dc = G.streamBroker.listAllProfileSlots.useQuery;
6578
6597
  G.streamBroker.getBrokerStats.useQuery, G.streamBroker.probeStream.useMutation, G.streamBroker.listClients.useQuery, G.streamBroker.killClient.useMutation, G.streamBroker.restartProfile.useMutation, G.streamBroker.getStreamUrl.useQuery, G.streamBroker.getStreamWithCodec.useMutation, G.streamBroker.releaseStreamWithCodec.useMutation, G.streamBroker.acquireEgressTranscode.useMutation, G.streamBroker.releaseEgressTranscode.useMutation, G.streamBroker.subscribeAudioChunks.useMutation, G.streamBroker.pullAudioChunks.useQuery, G.streamBroker.unsubscribeAudioChunks.useMutation, G.streamBroker.setPreBufferDuration.useMutation, G.streamBroker.getPreBufferInfo.useQuery, G.streamBroker.getRtspPort.useQuery, G.streamBroker.getAllRtspEntries.useQuery, G.streamBroker.getRtspEntry.useQuery, G.streamBroker.regenerateRtspToken.useMutation, G.streamBroker.setRtspEnabled.useMutation, G.streamBroker.isRtspEnabled.useQuery, G.streamBroker.getDeviceAudioMute.useQuery, G.streamBroker.setDeviceAudioMute.useMutation, G.streamBroker.getDeviceSettingsContribution.useQuery, G.streamBroker.getDeviceLiveContribution.useQuery, G.streamBroker.applyDeviceSettingsPatch.useMutation, G.streamCatalog.getCatalog.useQuery, G.streamParams.getOptions.useQuery, G.streamParams.setProfile.useMutation, G.streamParams.getConfigSchema.useQuery, G.streamParams.getStatus.useQuery, G.streamSignals.listSignals.useQuery, G.switch.setState.useMutation, G.switch.getStatus.useQuery, G.system.info.useQuery, G.system.health.useQuery, G.system.featureFlags.useQuery, G.system.networkAddresses.useQuery, G.system.getRetentionConfig.useQuery, G.system.setRetentionConfig.useMutation, G.system.forceRetentionCleanup.useMutation, G.system.getSiteLocation.useQuery, G.system.setSiteLocation.useMutation, G.system.detectSiteLocation.useMutation, G.system.getRequestCensus.useQuery, G.system.getLoadContributions.useQuery, G.system.getFailureContributions.useQuery, G.system.getLoggingSettings.useQuery, G.system.setLoggingSettings.useMutation, G.tamper.getStatus.useQuery, G.temperatureSensor.getStatus.useQuery, G.terminalSession.listProfiles.useQuery, G.terminalSession.listInstances.useQuery, G.terminalSession.createInstance.useMutation, G.terminalSession.updateInstance.useMutation, G.terminalSession.deleteInstance.useMutation, G.terminalSession.setInstanceEnabled.useMutation, G.terminalSession.listLegacyCameras.useQuery, G.terminalSession.adoptLegacyMonitor.useMutation, G.terminalSession.listSessions.useQuery, G.terminalSession.openSession.useMutation, G.terminalSession.resize.useMutation, G.terminalSession.pullOutput.useMutation, G.terminalSession.writeInput.useMutation, G.terminalSession.close.useMutation, G.toast.onToast.useSubscription, G.training.listBaseModels.useQuery, G.training.planJob.useQuery, G.training.startJob.useMutation, G.training.startJobBatch.useMutation, G.training.listJobs.useQuery, G.training.getJob.useQuery, G.training.cancelJob.useMutation, G.training.getJobResult.useQuery, G.training.registerResult.useMutation, G.training.canaryResult.useMutation, G.training.rollbackCanary.useMutation, G.training.discardResult.useMutation, G.turnProvider.getTurnServers.useQuery, G.update.installUpdate.useMutation, G.update.getStatus.useQuery, G.userManagement.listUsers.useQuery, G.userManagement.createUser.useMutation, G.userManagement.updateUser.useMutation, G.userManagement.deleteUser.useMutation, G.userManagement.resetPassword.useMutation, G.userManagement.setUserScopes.useMutation, G.userManagement.validateCredentials.useMutation, G.userManagement.listApiKeys.useQuery, G.userManagement.revokeApiKey.useMutation, G.userManagement.createScopedToken.useMutation, G.userManagement.revokeScopedToken.useMutation, G.userManagement.validateScopedToken.useQuery, G.userManagement.listScopedTokens.useQuery, G.userManagement.setupTotp.useMutation, G.userManagement.confirmTotp.useMutation, G.userManagement.disableTotp.useMutation, G.userManagement.getTotpStatus.useQuery, G.userManagement.verifyTotp.useMutation, G.userManagement.oauthIssueCode.useMutation, G.userManagement.oauthExchangeCode.useMutation, G.userManagement.oauthRefresh.useMutation, G.userManagement.oauthVerifyAccessToken.useQuery, G.userManagement.listExternalIdentities.useQuery, G.userManagement.findUserByExternalIdentity.useQuery, G.userManagement.unlinkExternalIdentity.useMutation, G.userManagement.listOauthSessions.useQuery, G.userManagement.revokeOauthSession.useMutation, G.vacuumControl.start.useMutation, G.vacuumControl.pause.useMutation, G.vacuumControl.stop.useMutation, G.vacuumControl.returnToBase.useMutation, G.vacuumControl.locate.useMutation, G.vacuumControl.setFanSpeed.useMutation, G.vacuumControl.getStatus.useQuery, G.valve.open.useMutation, G.valve.close.useMutation, G.valve.stop.useMutation, G.valve.setPosition.useMutation, G.valve.getStatus.useQuery, G.vibration.getStatus.useQuery;
6579
- var Dc = G.videoclips.listClips.useQuery, Oc = G.videoclips.listSources.useQuery, kc = G.videoclips.getClipPlayback.useQuery;
6598
+ var Oc = G.videoclips.listClips.useQuery, kc = G.videoclips.listSources.useQuery, Ac = G.videoclips.getClipPlayback.useQuery;
6580
6599
  //#endregion
6581
6600
  //#region ../ui-library/src/primitives/dropdown.tsx
6582
6601
  G.videoclips.readClipBytes.useQuery, G.videoclips.offerClipBytes.useQuery, G.videoclips.dialClipStream.useQuery, G.videoclips.getPlaybackOptions.useQuery, G.waterHeater.setTargetTemp.useMutation, G.waterHeater.setOperationMode.useMutation, G.waterHeater.setAway.useMutation, G.waterHeater.getStatus.useQuery, G.weather.getStatus.useQuery, G.webrtcSession.listStreams.useQuery, G.webrtcSession.createSession.useMutation, G.webrtcSession.handleOffer.useMutation, G.webrtcSession.handleAnswer.useMutation, G.webrtcSession.addIceCandidate.useMutation, G.webrtcSession.getIceCandidates.useQuery, G.webrtcSession.closeSession.useMutation, G.webrtcSession.hasAdaptiveBitrate.useQuery, G.webrtcSession.getSessionState.useQuery, G.webrtcSession.applyDownlinkProbe.useMutation, G.webrtcSession.getSessionDebug.useQuery, G.zoneAnalytics.getCurrentSnapshot.useQuery, G.zoneAnalytics.getCurrentSnapshotBatch.useQuery, G.zoneAnalytics.getZoneHistory.useQuery, G.zoneAnalytics.getCameraHistory.useQuery, G.zoneAnalytics.getUnzonedHistory.useQuery, G.zoneRules.listRules.useQuery, G.zoneRules.setRules.useMutation, G.zones.listZones.useQuery, G.zones.addZone.useMutation, G.zones.removeZone.useMutation, G.zones.updateZone.useMutation, i();
6583
- var Ac = v(null);
6584
- function jc() {
6585
- let e = p(Ac);
6602
+ var jc = v(null);
6603
+ function Mc() {
6604
+ let e = p(jc);
6586
6605
  if (!e) throw Error("Dropdown compound components must be used within <Dropdown>");
6587
6606
  return e;
6588
6607
  }
6589
- function Mc({ children: e }) {
6608
+ function Nc({ children: e }) {
6590
6609
  let [t, n] = a(!1), r = c(), i = c(), o = u(null);
6591
- return /* @__PURE__ */ H(Ac.Provider, {
6610
+ return /* @__PURE__ */ H(jc.Provider, {
6592
6611
  value: {
6593
6612
  open: t,
6594
6613
  setOpen: n,
@@ -6602,8 +6621,8 @@ function Mc({ children: e }) {
6602
6621
  })
6603
6622
  });
6604
6623
  }
6605
- function Nc({ children: e, ...t }) {
6606
- let { open: n, setOpen: r, triggerId: i, contentId: a, triggerRef: o } = jc();
6624
+ function Pc({ children: e, ...t }) {
6625
+ let { open: n, setOpen: r, triggerId: i, contentId: a, triggerRef: o } = Mc();
6607
6626
  return /* @__PURE__ */ H("button", {
6608
6627
  type: "button",
6609
6628
  ref: o,
@@ -6616,8 +6635,8 @@ function Nc({ children: e, ...t }) {
6616
6635
  children: e
6617
6636
  });
6618
6637
  }
6619
- function Pc({ className: e, children: t, align: n = "start", offset: r = 4, ...i }) {
6620
- let { open: o, setOpen: s, contentId: c, triggerId: l, triggerRef: d } = jc(), f = u(null), [p, m] = a(null);
6638
+ function Fc({ className: e, children: t, align: n = "start", offset: r = 4, ...i }) {
6639
+ let { open: o, setOpen: s, contentId: c, triggerId: l, triggerRef: d } = Mc(), f = u(null), [p, m] = a(null);
6621
6640
  return g(() => {
6622
6641
  if (!o) {
6623
6642
  m(null);
@@ -6674,32 +6693,32 @@ function Pc({ className: e, children: t, align: n = "start", offset: r = 4, ...i
6674
6693
  }
6675
6694
  //#endregion
6676
6695
  //#region ../ui-library/src/composites/device-select-filter.ts
6677
- function Fc(e, t) {
6696
+ function Ic(e, t) {
6678
6697
  if (e.length === 0 || t.length === 0) return !1;
6679
6698
  let n = new Set(e);
6680
6699
  return t.some((e) => n.has(e));
6681
6700
  }
6682
- function Ic(e, t) {
6701
+ function Lc(e, t) {
6683
6702
  if (t?.excludeDeviceId !== void 0 && e.id === t.excludeDeviceId || t?.excludeTypes !== void 0 && t.excludeTypes.includes(e.type)) return !1;
6684
6703
  let n = t?.caps !== void 0 && t.caps.length > 0, r = t?.types !== void 0 && t.types.length > 0;
6685
- return !!(!n && !r || n && Fc(e.features ?? [], t.caps) || r && t.types.includes(e.type));
6704
+ return !!(!n && !r || n && Ic(e.features ?? [], t.caps) || r && t.types.includes(e.type));
6686
6705
  }
6687
- function Lc(e) {
6706
+ function Rc(e) {
6688
6707
  return typeof e.location == "string" && e.location.length > 0 ? `${e.name} (${e.location})` : e.name;
6689
6708
  }
6690
- function Rc(e) {
6709
+ function zc(e) {
6691
6710
  let t = [];
6692
6711
  return typeof e.location == "string" && e.location.length > 0 && t.push(e.location), t.push(e.type), typeof e.parentName == "string" && e.parentName.length > 0 && t.push(`in ${e.parentName}`), t.join(" · ");
6693
6712
  }
6694
- function zc(e, t) {
6695
- return e.filter((e) => Ic(e, t)).map((e) => ({
6713
+ function Bc(e, t) {
6714
+ return e.filter((e) => Lc(e, t)).map((e) => ({
6696
6715
  value: String(e.id),
6697
- label: Lc(e),
6698
- description: Rc(e),
6716
+ label: Rc(e),
6717
+ description: zc(e),
6699
6718
  location: typeof e.location == "string" && e.location.length > 0 ? e.location : null
6700
6719
  })).toSorted((e, t) => e.label.localeCompare(t.label));
6701
6720
  }
6702
- function Bc(e) {
6721
+ function Vc(e) {
6703
6722
  let t = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new Set();
6704
6723
  for (let r of e) typeof r.location == "string" && r.location.length > 0 && t.add(r.location), n.add(r.type);
6705
6724
  return {
@@ -6707,23 +6726,23 @@ function Bc(e) {
6707
6726
  types: [...n].toSorted((e, t) => e.localeCompare(t))
6708
6727
  };
6709
6728
  }
6710
- var Vc = {
6729
+ var Hc = {
6711
6730
  locations: [],
6712
6731
  types: []
6713
6732
  };
6714
- function Hc(e, t) {
6733
+ function Uc(e, t) {
6715
6734
  return !(t.locations.length > 0 && (typeof e.location != "string" || !t.locations.includes(e.location)) || t.types.length > 0 && !t.types.includes(e.type));
6716
6735
  }
6717
- function Uc(e, t, n) {
6736
+ function Wc(e, t, n) {
6718
6737
  return {
6719
6738
  suggested: e.filter((e) => t.has(n(e))),
6720
6739
  others: e.filter((e) => !t.has(n(e)))
6721
6740
  };
6722
6741
  }
6723
- function Wc(e, t) {
6742
+ function Gc(e, t) {
6724
6743
  return e.location === t;
6725
6744
  }
6726
- function Gc(e, t) {
6745
+ function Kc(e, t) {
6727
6746
  let n = be(t.map((e) => ({
6728
6747
  id: e.id,
6729
6748
  stableId: e.stableId,
@@ -6733,36 +6752,36 @@ function Gc(e, t) {
6733
6752
  })), e.primaryChildEntityId, e.name);
6734
6753
  return n === null ? null : n.id;
6735
6754
  }
6736
- function Kc(e, t) {
6755
+ function qc(e, t) {
6737
6756
  if (t == null || t.length === 0) return /* @__PURE__ */ new Set();
6738
6757
  let n = new Map(e.map((e) => [e.id, e])), r = /* @__PURE__ */ new Map();
6739
6758
  for (let t of e) t.parentDeviceId === null || t.parentDeviceId === void 0 || r.set(t.parentDeviceId, [...r.get(t.parentDeviceId) ?? [], t]);
6740
6759
  let i = (e) => e !== void 0 && e.type === z.Container, a = /* @__PURE__ */ new Set(), o = /* @__PURE__ */ new Set();
6741
6760
  for (let r of e) {
6742
6761
  if (i(r)) {
6743
- Wc(r, t) && a.add(r.id);
6762
+ Gc(r, t) && a.add(r.id);
6744
6763
  continue;
6745
6764
  }
6746
- if (!Wc(r, t)) continue;
6765
+ if (!Gc(r, t)) continue;
6747
6766
  let e = r.parentDeviceId === null || r.parentDeviceId === void 0 ? void 0 : n.get(r.parentDeviceId);
6748
6767
  e !== void 0 && i(e) ? a.add(e.id) : o.add(r.id);
6749
6768
  }
6750
6769
  for (let e of a) {
6751
6770
  let t = n.get(e);
6752
6771
  if (t === void 0) continue;
6753
- let a = Gc(t, r.get(e) ?? []);
6772
+ let a = Kc(t, r.get(e) ?? []);
6754
6773
  a !== null && !i(n.get(a)) && o.add(a);
6755
6774
  }
6756
6775
  return o;
6757
6776
  }
6758
- function qc(e, t) {
6777
+ function Jc(e, t) {
6759
6778
  let n = t.trim().toLowerCase().split(/\s+/).filter(Boolean);
6760
6779
  return n.length === 0 ? [...e] : e.filter((e) => {
6761
6780
  let t = `${e.value} ${e.label} ${e.description ?? ""}`.toLowerCase();
6762
6781
  return n.every((e) => t.includes(e));
6763
6782
  });
6764
6783
  }
6765
- function Jc(e, t) {
6784
+ function Yc(e, t) {
6766
6785
  let n = new Map(e.map((e) => [e.value, e]));
6767
6786
  return t.map((e) => n.get(e) ?? {
6768
6787
  value: e,
@@ -6772,11 +6791,11 @@ function Jc(e, t) {
6772
6791
  //#endregion
6773
6792
  //#region ../ui-library/src/composites/device-select-field.tsx
6774
6793
  i();
6775
- var Yc = "w-full rounded-md border border-border bg-background px-2.5 py-1.5 text-xs text-foreground focus:border-primary focus:ring-1 focus:ring-primary/30 outline-none disabled:opacity-50 disabled:cursor-not-allowed", Xc = "flex items-center gap-1.5 rounded-md border border-border bg-background px-2 py-1.5 focus-within:border-primary focus-within:ring-1 focus-within:ring-primary/30", Zc = "block text-[11px] font-medium text-foreground mb-1 break-words", Qc = "text-[10px] text-foreground-subtle mt-0.5 break-words";
6776
- function $c(e) {
6794
+ var Xc = "w-full rounded-md border border-border bg-background px-2.5 py-1.5 text-xs text-foreground focus:border-primary focus:ring-1 focus:ring-primary/30 outline-none disabled:opacity-50 disabled:cursor-not-allowed", Zc = "flex items-center gap-1.5 rounded-md border border-border bg-background px-2 py-1.5 focus-within:border-primary focus-within:ring-1 focus-within:ring-primary/30", Qc = "block text-[11px] font-medium text-foreground mb-1 break-words", $c = "text-[10px] text-foreground-subtle mt-0.5 break-words";
6795
+ function el(e) {
6777
6796
  return typeof e == "string" ? e : null;
6778
6797
  }
6779
- function el(e) {
6798
+ function tl(e) {
6780
6799
  if (!Array.isArray(e)) return [];
6781
6800
  let t = /* @__PURE__ */ new Map();
6782
6801
  for (let n of e) {
@@ -6799,20 +6818,20 @@ function el(e) {
6799
6818
  parentName: i,
6800
6819
  stableId: typeof e.stableId == "string" ? e.stableId : "",
6801
6820
  parentDeviceId: typeof e.parentDeviceId == "number" ? e.parentDeviceId : null,
6802
- primaryChildEntityId: $c(e.primaryChildEntityId),
6803
- role: $c(e.role)
6821
+ primaryChildEntityId: el(e.primaryChildEntityId),
6822
+ role: el(e.role)
6804
6823
  });
6805
6824
  }
6806
6825
  return n;
6807
6826
  }
6808
- var tl = "px-2.5 pt-1.5 pb-0.5 text-[10px] font-medium uppercase tracking-wide text-foreground-subtle", nl = "inline-flex max-w-full items-center gap-1 rounded-md border border-border bg-background px-2 py-1 text-[11px] text-foreground hover:bg-surface-hover", rl = "flex h-7 w-full items-center gap-2 px-2 text-left text-xs text-foreground hover:bg-surface-hover";
6809
- function il({ label: e, values: t, chosen: n, onChange: r }) {
6827
+ var nl = "px-2.5 pt-1.5 pb-0.5 text-[10px] font-medium uppercase tracking-wide text-foreground-subtle", rl = "inline-flex max-w-full items-center gap-1 rounded-md border border-border bg-background px-2 py-1 text-[11px] text-foreground hover:bg-surface-hover", il = "flex h-7 w-full items-center gap-2 px-2 text-left text-xs text-foreground hover:bg-surface-hover";
6828
+ function al({ label: e, values: t, chosen: n, onChange: r }) {
6810
6829
  if (t.length < 2) return null;
6811
6830
  let i = n.length === 0 ? "All" : n.join(", "), a = (e) => {
6812
6831
  r(n.includes(e) ? n.filter((t) => t !== e) : [...n, e]);
6813
6832
  };
6814
- return /* @__PURE__ */ U(Mc, { children: [/* @__PURE__ */ U(Nc, {
6815
- className: nl,
6833
+ return /* @__PURE__ */ U(Nc, { children: [/* @__PURE__ */ U(Pc, {
6834
+ className: rl,
6816
6835
  children: [
6817
6836
  /* @__PURE__ */ H("span", {
6818
6837
  className: "text-foreground-subtle",
@@ -6828,13 +6847,13 @@ function il({ label: e, values: t, chosen: n, onChange: r }) {
6828
6847
  }),
6829
6848
  /* @__PURE__ */ H(le, { className: "h-3 w-3 shrink-0 text-foreground-subtle" })
6830
6849
  ]
6831
- }), /* @__PURE__ */ U(Pc, {
6850
+ }), /* @__PURE__ */ U(Fc, {
6832
6851
  className: "max-h-56 overflow-y-auto",
6833
6852
  children: [/* @__PURE__ */ U("button", {
6834
6853
  type: "button",
6835
6854
  role: "menuitemcheckbox",
6836
6855
  "aria-checked": n.length === 0,
6837
- className: rl,
6856
+ className: il,
6838
6857
  onClick: () => r([]),
6839
6858
  children: [/* @__PURE__ */ H("span", {
6840
6859
  className: "inline-flex h-3.5 w-3.5 items-center justify-center rounded border border-border",
@@ -6846,7 +6865,7 @@ function il({ label: e, values: t, chosen: n, onChange: r }) {
6846
6865
  type: "button",
6847
6866
  role: "menuitemcheckbox",
6848
6867
  "aria-checked": t,
6849
- className: rl,
6868
+ className: il,
6850
6869
  onClick: () => a(e),
6851
6870
  children: [/* @__PURE__ */ H("span", {
6852
6871
  className: ["inline-flex h-3.5 w-3.5 items-center justify-center rounded border", t ? "border-primary bg-primary text-white" : "border-border"].join(" "),
@@ -6856,13 +6875,13 @@ function il({ label: e, values: t, chosen: n, onChange: r }) {
6856
6875
  })]
6857
6876
  })] });
6858
6877
  }
6859
- function al({ label: e, description: t, required: n, translationFn: r, children: i }) {
6878
+ function ol({ label: e, description: t, required: n, translationFn: r, children: i }) {
6860
6879
  let a = zh(e, r), o = zh(t, r);
6861
6880
  return /* @__PURE__ */ U("div", {
6862
6881
  className: "min-w-0",
6863
6882
  children: [
6864
6883
  a !== void 0 && a !== "" && /* @__PURE__ */ U("label", {
6865
- className: Zc,
6884
+ className: Qc,
6866
6885
  children: [a, n && /* @__PURE__ */ H("span", {
6867
6886
  className: "text-danger ml-0.5",
6868
6887
  children: "*"
@@ -6870,21 +6889,21 @@ function al({ label: e, description: t, required: n, translationFn: r, children:
6870
6889
  }),
6871
6890
  i,
6872
6891
  o && /* @__PURE__ */ H("p", {
6873
- className: Qc,
6892
+ className: $c,
6874
6893
  children: o
6875
6894
  })
6876
6895
  ]
6877
6896
  });
6878
6897
  }
6879
- function ol({ field: e, value: t, onChange: n, disabled: r, translationFn: i }) {
6880
- let { data: a } = Ws({}), o = m(() => zc(el(a), e.deviceFilter), [a, e.deviceFilter]), s = t == null ? "" : String(t);
6881
- return /* @__PURE__ */ H(al, {
6898
+ function sl({ field: e, value: t, onChange: n, disabled: r, translationFn: i }) {
6899
+ let { data: a } = Gs({}), o = m(() => Bc(tl(a), e.deviceFilter), [a, e.deviceFilter]), s = t == null ? "" : String(t);
6900
+ return /* @__PURE__ */ H(ol, {
6882
6901
  label: e.label,
6883
6902
  description: e.description,
6884
6903
  required: e.required,
6885
6904
  translationFn: i,
6886
6905
  children: /* @__PURE__ */ U("select", {
6887
- className: Yc,
6906
+ className: Xc,
6888
6907
  value: s,
6889
6908
  disabled: r || e.disabled,
6890
6909
  onChange: (e) => n(e.target.value),
@@ -6898,16 +6917,16 @@ function ol({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
6898
6917
  })
6899
6918
  });
6900
6919
  }
6901
- function sl({ field: e, value: t, onChange: n, disabled: r, translationFn: i }) {
6902
- let { data: o } = Ws({}), s = e.suggestLocation !== void 0, [c, l] = a(Vc), d = m(() => el(o), [o]), f = m(() => Bc(d.filter((t) => t.id !== e.deviceFilter?.excludeDeviceId)), [d, e.deviceFilter?.excludeDeviceId]), p = m(() => s ? d.filter((e) => Hc(e, c)) : d, [
6920
+ function cl({ field: e, value: t, onChange: n, disabled: r, translationFn: i }) {
6921
+ let { data: o } = Gs({}), s = e.suggestLocation !== void 0, [c, l] = a(Hc), d = m(() => tl(o), [o]), f = m(() => Vc(d.filter((t) => t.id !== e.deviceFilter?.excludeDeviceId)), [d, e.deviceFilter?.excludeDeviceId]), p = m(() => s ? d.filter((e) => Uc(e, c)) : d, [
6903
6922
  d,
6904
6923
  c,
6905
6924
  s
6906
- ]), h = m(() => zc(p, e.deviceFilter), [p, e.deviceFilter]), g = Array.isArray(t) ? t.map(String) : [], _ = r === !0 || e.disabled === !0, v = e.maxItems !== void 0 && g.length >= e.maxItems, [y, b] = a(""), [x, S] = a(!1), [C, w] = a(0), T = u(null), E = u(null), D = m(() => Jc(h, g), [h, g]), O = m(() => qc(h, y), [h, y]), k = m(() => Kc(d, s ? e.suggestLocation : null), [
6925
+ ]), h = m(() => Bc(p, e.deviceFilter), [p, e.deviceFilter]), g = Array.isArray(t) ? t.map(String) : [], _ = r === !0 || e.disabled === !0, v = e.maxItems !== void 0 && g.length >= e.maxItems, [y, b] = a(""), [x, S] = a(!1), [C, w] = a(0), T = u(null), E = u(null), D = m(() => Yc(h, g), [h, g]), O = m(() => Jc(h, y), [h, y]), k = m(() => qc(d, s ? e.suggestLocation : null), [
6907
6926
  d,
6908
6927
  s,
6909
6928
  e.suggestLocation
6910
- ]), A = m(() => Uc(O, k, (e) => Number(e.value)), [O, k]), j = m(() => [...A.suggested, ...A.others], [A]), M = (t) => {
6929
+ ]), A = m(() => Wc(O, k, (e) => Number(e.value)), [O, k]), j = m(() => [...A.suggested, ...A.others], [A]), M = (t) => {
6911
6930
  if (!_) if (g.includes(t)) n(g.filter((e) => e !== t));
6912
6931
  else {
6913
6932
  if (e.maxItems !== void 0 && g.length >= e.maxItems) return;
@@ -6926,7 +6945,7 @@ function sl({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
6926
6945
  className: "min-w-0",
6927
6946
  children: [
6928
6947
  P !== void 0 && P !== "" && /* @__PURE__ */ H("label", {
6929
- className: Zc,
6948
+ className: Qc,
6930
6949
  children: P
6931
6950
  }),
6932
6951
  D.length > 0 && /* @__PURE__ */ H("div", {
@@ -6947,7 +6966,7 @@ function sl({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
6947
6966
  }),
6948
6967
  s && /* @__PURE__ */ U("div", {
6949
6968
  className: "mb-1.5 flex flex-wrap gap-1.5",
6950
- children: [/* @__PURE__ */ H(il, {
6969
+ children: [/* @__PURE__ */ H(al, {
6951
6970
  label: "Location",
6952
6971
  values: f.locations,
6953
6972
  chosen: c.locations,
@@ -6955,7 +6974,7 @@ function sl({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
6955
6974
  ...t,
6956
6975
  locations: e
6957
6976
  }))
6958
- }), /* @__PURE__ */ H(il, {
6977
+ }), /* @__PURE__ */ H(al, {
6959
6978
  label: "Type",
6960
6979
  values: f.types,
6961
6980
  chosen: c.types,
@@ -6966,7 +6985,7 @@ function sl({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
6966
6985
  })]
6967
6986
  }),
6968
6987
  /* @__PURE__ */ U("div", {
6969
- className: Xc + (_ ? " opacity-50" : ""),
6988
+ className: Zc + (_ ? " opacity-50" : ""),
6970
6989
  children: [
6971
6990
  /* @__PURE__ */ H(fi, { className: "h-3.5 w-3.5 shrink-0 text-foreground-subtle" }),
6972
6991
  /* @__PURE__ */ H("input", {
@@ -7010,7 +7029,7 @@ function sl({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
7010
7029
  }) : j.map((t, n) => {
7011
7030
  let r = g.includes(t.value), i = !r && v, a = A.suggested.length, o = s ? n === 0 && a > 0 ? `Suggested · ${e.suggestLocation ?? ""}` : n === a && a > 0 ? "Other devices" : null : null;
7012
7031
  return /* @__PURE__ */ U("div", { children: [o !== null && /* @__PURE__ */ H("div", {
7013
- className: tl,
7032
+ className: nl,
7014
7033
  children: o
7015
7034
  }), /* @__PURE__ */ U("button", {
7016
7035
  type: "button",
@@ -7041,7 +7060,7 @@ function sl({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
7041
7060
  })
7042
7061
  }),
7043
7062
  F && /* @__PURE__ */ H("p", {
7044
- className: Qc,
7063
+ className: $c,
7045
7064
  children: F
7046
7065
  })
7047
7066
  ]
@@ -7050,7 +7069,7 @@ function sl({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
7050
7069
  //#endregion
7051
7070
  //#region ../ui-library/src/primitives/badge.tsx
7052
7071
  i();
7053
- var cl = ys("inline-flex items-center rounded-full text-xs font-medium px-2 py-0.5", {
7072
+ var ll = ys("inline-flex items-center rounded-full text-xs font-medium px-2 py-0.5", {
7054
7073
  variants: {
7055
7074
  variant: {
7056
7075
  default: "bg-surface-hover text-foreground",
@@ -7068,9 +7087,9 @@ var cl = ys("inline-flex items-center rounded-full text-xs font-medium px-2 py-0
7068
7087
  variant: "default",
7069
7088
  styleVariant: "solid"
7070
7089
  }
7071
- }), ll = _(({ className: e, variant: t, style: n, ...r }, i) => /* @__PURE__ */ H("span", {
7090
+ }), ul = _(({ className: e, variant: t, style: n, ...r }, i) => /* @__PURE__ */ H("span", {
7072
7091
  ref: i,
7073
- className: Y(cl({
7092
+ className: Y(ll({
7074
7093
  variant: t,
7075
7094
  styleVariant: n
7076
7095
  }), e),
@@ -7078,8 +7097,8 @@ var cl = ys("inline-flex items-center rounded-full text-xs font-medium px-2 py-0
7078
7097
  }));
7079
7098
  //#endregion
7080
7099
  //#region ../ui-library/src/composites/event-kind-visuals.tsx
7081
- ll.displayName = "Badge", i();
7082
- var ul = {
7100
+ ul.displayName = "Badge", i();
7101
+ var dl = {
7083
7102
  motion: mt,
7084
7103
  audio: la,
7085
7104
  person: na,
@@ -7146,11 +7165,11 @@ var ul = {
7146
7165
  "audio-tools": Wn,
7147
7166
  "audio-silence": ua
7148
7167
  };
7149
- function dl(e) {
7150
- return Object.hasOwn(ul, e) ? ul[e] : e.startsWith("audio-") ? la : Fi;
7168
+ function fl(e) {
7169
+ return Object.hasOwn(dl, e) ? dl[e] : e.startsWith("audio-") ? la : Fi;
7151
7170
  }
7152
- function fl({ iconId: e, size: t = 16, color: n, className: r }) {
7153
- return h(dl(e), {
7171
+ function pl({ iconId: e, size: t = 16, color: n, className: r }) {
7172
+ return h(fl(e), {
7154
7173
  size: t,
7155
7174
  color: n,
7156
7175
  className: r
@@ -7158,13 +7177,13 @@ function fl({ iconId: e, size: t = 16, color: n, className: r }) {
7158
7177
  }
7159
7178
  //#endregion
7160
7179
  //#region ../ui-library/src/composites/device-picker/SelectedChip.tsx
7161
- var pl = "flex items-center gap-1.5 rounded-md border border-border bg-background px-2 py-1.5 focus-within:border-primary focus-within:ring-1 focus-within:ring-primary/30";
7162
- function ml({ label: e, onRemove: t, warning: n = !1, iconId: r, iconUrl: i, testId: a }) {
7180
+ var ml = "flex items-center gap-1.5 rounded-md border border-border bg-background px-2 py-1.5 focus-within:border-primary focus-within:ring-1 focus-within:ring-primary/30";
7181
+ function hl({ label: e, onRemove: t, warning: n = !1, iconId: r, iconUrl: i, testId: a }) {
7163
7182
  return /* @__PURE__ */ U("span", {
7164
7183
  "data-testid": a,
7165
7184
  className: n ? "inline-flex items-center gap-1 rounded-md bg-warning/10 px-1.5 py-0.5 text-[11px] text-warning max-w-full" : "inline-flex items-center gap-1 rounded-md bg-primary/10 px-1.5 py-0.5 text-[11px] text-primary max-w-full",
7166
7185
  children: [
7167
- i === void 0 ? r === void 0 ? null : /* @__PURE__ */ H(fl, {
7186
+ i === void 0 ? r === void 0 ? null : /* @__PURE__ */ H(pl, {
7168
7187
  iconId: r,
7169
7188
  size: 12
7170
7189
  }) : /* @__PURE__ */ H("img", {
@@ -7186,21 +7205,21 @@ function ml({ label: e, onRemove: t, warning: n = !1, iconId: r, iconUrl: i, tes
7186
7205
  ]
7187
7206
  });
7188
7207
  }
7189
- function hl(e) {
7208
+ function gl(e) {
7190
7209
  return [
7191
7210
  e.value,
7192
7211
  e.label,
7193
7212
  e.description
7194
7213
  ].filter((e) => typeof e == "string" && e.length > 0).join(" ").toLowerCase();
7195
7214
  }
7196
- function gl(e, t) {
7215
+ function _l(e, t) {
7197
7216
  let n = t.trim().toLowerCase().split(/\s+/).filter(Boolean);
7198
7217
  return n.length === 0 ? e : e.filter((e) => {
7199
- let t = hl(e);
7218
+ let t = gl(e);
7200
7219
  return n.every((e) => t.includes(e));
7201
7220
  });
7202
7221
  }
7203
- function _l(e, t) {
7222
+ function vl(e, t) {
7204
7223
  let n = new Map(e.map((e) => [e.value, e])), r = new Set(t);
7205
7224
  return {
7206
7225
  selectedOptions: t.map((e) => n.get(e) ?? {
@@ -7210,31 +7229,31 @@ function _l(e, t) {
7210
7229
  unselected: e.filter((e) => !r.has(e.value))
7211
7230
  };
7212
7231
  }
7213
- function vl(e, t, n) {
7232
+ function yl(e, t, n) {
7214
7233
  return n === void 0 ? e >= 8 || t : n;
7215
7234
  }
7216
- function yl(e) {
7235
+ function bl(e) {
7217
7236
  let t = e.trim();
7218
7237
  return t.length > 0 ? t : null;
7219
7238
  }
7220
- function bl(e, t) {
7239
+ function xl(e, t) {
7221
7240
  let n = t.toLowerCase();
7222
7241
  return e.some((e) => e.value.toLowerCase() === n || e.label.toLowerCase() === n);
7223
7242
  }
7224
- function xl(e, t) {
7243
+ function Sl(e, t) {
7225
7244
  return e && t;
7226
7245
  }
7227
- function Sl(e, t, n) {
7246
+ function Cl(e, t, n) {
7228
7247
  if (!e) return !1;
7229
- let r = yl(t);
7230
- return r === null ? !1 : !bl(n, r);
7248
+ let r = bl(t);
7249
+ return r === null ? !1 : !xl(n, r);
7231
7250
  }
7232
7251
  //#endregion
7233
7252
  //#region ../ui-library/src/composites/option-select/OptionSelect.tsx
7234
7253
  i();
7235
- var Cl = 4, wl = 224, Tl = 8, El = "block text-[11px] font-medium text-foreground mb-1 break-words", Dl = "text-[10px] text-foreground-subtle mt-0.5 break-words";
7236
- function Ol({ opt: e }) {
7237
- return e.iconUrl === void 0 ? e.iconId === void 0 ? null : /* @__PURE__ */ H(fl, {
7254
+ var wl = 4, Tl = 224, El = 8, Dl = "block text-[11px] font-medium text-foreground mb-1 break-words", Ol = "text-[10px] text-foreground-subtle mt-0.5 break-words";
7255
+ function kl({ opt: e }) {
7256
+ return e.iconUrl === void 0 ? e.iconId === void 0 ? null : /* @__PURE__ */ H(pl, {
7238
7257
  iconId: e.iconId,
7239
7258
  size: 13
7240
7259
  }) : /* @__PURE__ */ H("img", {
@@ -7243,32 +7262,32 @@ function Ol({ opt: e }) {
7243
7262
  className: "h-3.5 w-3.5 shrink-0 rounded-sm object-contain"
7244
7263
  });
7245
7264
  }
7246
- function kl(e) {
7247
- let { mode: t, options: n, placeholder: r = "Select…", disabled: i = !1, emptyMessage: o = "No options available.", creatable: s = !1, createLabel: c = "Add new…", onCreateRequest: l, label: d, description: f, testId: p, optionTestIdPrefix: h, listboxId: _ } = e, v = i, b = vl(n.length, s, e.searchable), x = _ ?? p ?? "option-select-listbox", S = t === "single" ? e.value.length > 0 ? [e.value] : [] : e.value, C = t === "multi" ? e.maxItems : void 0, w = t === "multi" && C !== void 0 && S.length >= C, [T, E] = a(""), [D, O] = a(!1), [k, A] = a(0), [j, M] = a(null), N = u(null), P = u(null), F = u(null), I = u(null), ee = () => {
7265
+ function Al(e) {
7266
+ let { mode: t, options: n, placeholder: r = "Select…", disabled: i = !1, emptyMessage: o = "No options available.", creatable: s = !1, createLabel: c = "Add new…", onCreateRequest: l, label: d, description: f, testId: p, optionTestIdPrefix: h, listboxId: _ } = e, v = i, b = yl(n.length, s, e.searchable), x = _ ?? p ?? "option-select-listbox", S = t === "single" ? e.value.length > 0 ? [e.value] : [] : e.value, C = t === "multi" ? e.maxItems : void 0, w = t === "multi" && C !== void 0 && S.length >= C, [T, E] = a(""), [D, O] = a(!1), [k, A] = a(0), [j, M] = a(null), N = u(null), P = u(null), F = u(null), I = u(null), ee = () => {
7248
7267
  let e = P.current;
7249
7268
  if (e === null) return null;
7250
- let t = e.getBoundingClientRect(), n = window.innerHeight - t.bottom - Tl, r = t.top - Tl, i = n >= Math.min(wl, r) || n >= 120, a = Math.max(96, Math.min(wl, i ? n : r)), o = Math.max(Tl, Math.min(t.left, window.innerWidth - t.width - Tl));
7269
+ let t = e.getBoundingClientRect(), n = window.innerHeight - t.bottom - El, r = t.top - El, i = n >= Math.min(Tl, r) || n >= 120, a = Math.max(96, Math.min(Tl, i ? n : r)), o = Math.max(El, Math.min(t.left, window.innerWidth - t.width - El));
7251
7270
  return i ? {
7252
- top: t.bottom + Cl,
7271
+ top: t.bottom + wl,
7253
7272
  left: o,
7254
7273
  width: t.width,
7255
7274
  maxHeight: a,
7256
7275
  placement: "below"
7257
7276
  } : {
7258
- top: Math.max(Tl, t.top - Cl - a),
7277
+ top: Math.max(El, t.top - wl - a),
7259
7278
  left: o,
7260
7279
  width: t.width,
7261
7280
  maxHeight: a,
7262
7281
  placement: "above"
7263
7282
  };
7264
- }, { selectedOptions: te } = m(() => _l(n, S), [n, S]), ne = m(() => gl(n, T), [n, T]), re = Sl(s, T, n), L = xl(s, l !== void 0), R = m(() => {
7283
+ }, { selectedOptions: te } = m(() => vl(n, S), [n, S]), ne = m(() => _l(n, T), [n, T]), re = Cl(s, T, n), L = Sl(s, l !== void 0), R = m(() => {
7265
7284
  let e = ne.map((e, t) => ({
7266
7285
  kind: "option",
7267
7286
  opt: e,
7268
7287
  index: t
7269
7288
  }));
7270
7289
  if (re) {
7271
- let t = yl(T);
7290
+ let t = bl(T);
7272
7291
  t !== null && e.push({
7273
7292
  kind: "use-query",
7274
7293
  draft: t
@@ -7338,7 +7357,7 @@ function kl(e) {
7338
7357
  else if (n.key === "ArrowUp") n.preventDefault(), O(!0), A((e) => ce === 0 ? 0 : (e - 1 + ce) % ce);
7339
7358
  else if (n.key === "Enter") {
7340
7359
  if (n.preventDefault(), re && k === R.length) {
7341
- let e = yl(T);
7360
+ let e = bl(T);
7342
7361
  e !== null && ie(e);
7343
7362
  return;
7344
7363
  }
@@ -7349,7 +7368,7 @@ function kl(e) {
7349
7368
  let e = R[k];
7350
7369
  if (e) se(e);
7351
7370
  else if (s) {
7352
- let e = yl(T);
7371
+ let e = bl(T);
7353
7372
  e !== null && ie(e);
7354
7373
  }
7355
7374
  } else n.key === "Escape" ? O(!1) : n.key === "Backspace" && T === "" && t === "multi" && e.value.length > 0 && e.onChange(e.value.slice(0, -1));
@@ -7409,12 +7428,12 @@ function kl(e) {
7409
7428
  className: ["flex h-3.5 w-3.5 shrink-0 items-center justify-center rounded border", a ? "border-primary bg-primary text-white" : "border-border"].join(" "),
7410
7429
  children: a && /* @__PURE__ */ H(Zt, { className: "h-2.5 w-2.5" })
7411
7430
  }),
7412
- /* @__PURE__ */ H(Ol, { opt: i }),
7431
+ /* @__PURE__ */ H(kl, { opt: i }),
7413
7432
  /* @__PURE__ */ H("span", {
7414
7433
  className: "min-w-0 flex-1 truncate text-foreground",
7415
7434
  children: i.label
7416
7435
  }),
7417
- i.badge !== void 0 && i.badge.length > 0 ? /* @__PURE__ */ H(ll, {
7436
+ i.badge !== void 0 && i.badge.length > 0 ? /* @__PURE__ */ H(ul, {
7418
7437
  variant: "default",
7419
7438
  children: i.badge
7420
7439
  }) : null
@@ -7427,12 +7446,12 @@ function kl(e) {
7427
7446
  "data-testid": p,
7428
7447
  children: [
7429
7448
  d !== void 0 && d.length > 0 && /* @__PURE__ */ H("label", {
7430
- className: El,
7449
+ className: Dl,
7431
7450
  children: d
7432
7451
  }),
7433
7452
  t === "multi" && te.length > 0 && /* @__PURE__ */ H("div", {
7434
7453
  className: "flex flex-wrap gap-1 mb-1.5",
7435
- children: te.map((e) => /* @__PURE__ */ H(ml, {
7454
+ children: te.map((e) => /* @__PURE__ */ H(hl, {
7436
7455
  label: e.label,
7437
7456
  ...e.iconUrl === void 0 ? {} : { iconUrl: e.iconUrl },
7438
7457
  ...e.iconId === void 0 ? {} : { iconId: e.iconId },
@@ -7442,7 +7461,7 @@ function kl(e) {
7442
7461
  }),
7443
7462
  t === "single" && te.length > 0 && /* @__PURE__ */ H("div", {
7444
7463
  className: "flex flex-wrap gap-1 mb-1.5",
7445
- children: te.map((e) => /* @__PURE__ */ H(ml, {
7464
+ children: te.map((e) => /* @__PURE__ */ H(hl, {
7446
7465
  label: e.label,
7447
7466
  ...e.iconUrl === void 0 ? {} : { iconUrl: e.iconUrl },
7448
7467
  ...e.iconId === void 0 ? {} : { iconId: e.iconId },
@@ -7453,7 +7472,7 @@ function kl(e) {
7453
7472
  ref: (e) => {
7454
7473
  P.current = e;
7455
7474
  },
7456
- className: pl + (v ? " opacity-50" : ""),
7475
+ className: ml + (v ? " opacity-50" : ""),
7457
7476
  children: [
7458
7477
  /* @__PURE__ */ H(fi, { className: "h-3.5 w-3.5 shrink-0 text-foreground-subtle" }),
7459
7478
  /* @__PURE__ */ H("input", {
@@ -7495,7 +7514,7 @@ function kl(e) {
7495
7514
  "aria-controls": x,
7496
7515
  disabled: v,
7497
7516
  className: [
7498
- pl,
7517
+ ml,
7499
7518
  "w-full justify-between text-xs text-foreground",
7500
7519
  v ? "opacity-50 cursor-not-allowed" : "cursor-pointer"
7501
7520
  ].join(" "),
@@ -7531,7 +7550,7 @@ function kl(e) {
7531
7550
  ].join(" "),
7532
7551
  onMouseEnter: () => A(ge),
7533
7552
  onClick: () => {
7534
- let e = yl(T);
7553
+ let e = bl(T);
7535
7554
  if (e !== null) {
7536
7555
  l?.(e), E(""), O(!1);
7537
7556
  return;
@@ -7542,7 +7561,7 @@ function kl(e) {
7542
7561
  })]
7543
7562
  }), document.body),
7544
7563
  f !== void 0 && f.length > 0 && /* @__PURE__ */ H("p", {
7545
- className: Dl,
7564
+ className: Ol,
7546
7565
  children: f
7547
7566
  })
7548
7567
  ]
@@ -7550,12 +7569,12 @@ function kl(e) {
7550
7569
  }
7551
7570
  //#endregion
7552
7571
  //#region ../ui-library/src/composites/notification-targets-options.ts
7553
- function Al(e, t) {
7572
+ function jl(e, t) {
7554
7573
  return `${e}:${t}`;
7555
7574
  }
7556
- function jl(e, t, n, r) {
7575
+ function Ml(e, t, n, r) {
7557
7576
  return e.map((e) => {
7558
- let i = e.addonId !== void 0 && e.kind !== void 0 ? t.get(Al(e.addonId, e.kind)) : void 0, a;
7577
+ let i = e.addonId !== void 0 && e.kind !== void 0 ? t.get(jl(e.addonId, e.kind)) : void 0, a;
7559
7578
  return n?.has(e.id) === !0 ? a = r : e.enabled || (a = "disabled"), {
7560
7579
  value: e.id,
7561
7580
  label: e.name,
@@ -7564,17 +7583,17 @@ function jl(e, t, n, r) {
7564
7583
  };
7565
7584
  });
7566
7585
  }
7567
- function Ml(e) {
7586
+ function Nl(e) {
7568
7587
  let t = /* @__PURE__ */ new Map();
7569
7588
  if (!Array.isArray(e)) return t;
7570
7589
  for (let n of e) {
7571
7590
  if (typeof n != "object" || !n) continue;
7572
7591
  let e = Reflect.get(n, "kind"), r = Reflect.get(n, "addonId"), i = Reflect.get(n, "iconUrl");
7573
- typeof e != "string" || typeof r != "string" || typeof i == "string" && i.length > 0 && t.set(Al(r, e), i);
7592
+ typeof e != "string" || typeof r != "string" || typeof i == "string" && i.length > 0 && t.set(jl(r, e), i);
7574
7593
  }
7575
7594
  return t;
7576
7595
  }
7577
- function Nl(e) {
7596
+ function Pl(e) {
7578
7597
  if (!Array.isArray(e)) return [];
7579
7598
  let t = [];
7580
7599
  for (let n of e) {
@@ -7593,12 +7612,12 @@ function Nl(e) {
7593
7612
  //#endregion
7594
7613
  //#region ../ui-library/src/composites/notification-targets-field.tsx
7595
7614
  i();
7596
- var Pl = "No delivery target is configured. Add one on the Targets tab first — without one the notification is rendered and thrown away.";
7597
- function Fl({ targets: e, value: t, onChange: n, disabled: r = !1, maxItems: i, testIdPrefix: a = "notification-target", emptyMessage: o = Pl, noteIds: s, noteLabel: c = "note", label: l, description: u, kindIconUrls: d }) {
7598
- let f = qs({}), p = m(() => Ml(f.data), [f.data]), h = d ?? p;
7599
- return /* @__PURE__ */ H(kl, {
7615
+ var Fl = "No delivery target is configured. Add one on the Targets tab first — without one the notification is rendered and thrown away.";
7616
+ function Il({ targets: e, value: t, onChange: n, disabled: r = !1, maxItems: i, testIdPrefix: a = "notification-target", emptyMessage: o = Fl, noteIds: s, noteLabel: c = "note", label: l, description: u, kindIconUrls: d }) {
7617
+ let f = Js({}), p = m(() => Nl(f.data), [f.data]), h = d ?? p;
7618
+ return /* @__PURE__ */ H(Al, {
7600
7619
  mode: "multi",
7601
- options: m(() => jl(e, h, s, c), [
7620
+ options: m(() => Ml(e, h, s, c), [
7602
7621
  e,
7603
7622
  h,
7604
7623
  s,
@@ -7619,11 +7638,11 @@ function Fl({ targets: e, value: t, onChange: n, disabled: r = !1, maxItems: i,
7619
7638
  listboxId: `${a}-listbox`
7620
7639
  });
7621
7640
  }
7622
- function Il({ targets: e, value: t, onChange: n, disabled: r = !1, emptyMessage: i = Pl, placeholder: a = "Select…", testId: o = "notification-target-select", label: s, description: c, kindIconUrls: l }) {
7623
- let u = qs({}), d = m(() => Ml(u.data), [u.data]), f = l ?? d;
7624
- return /* @__PURE__ */ H(kl, {
7641
+ function Ll({ targets: e, value: t, onChange: n, disabled: r = !1, emptyMessage: i = Fl, placeholder: a = "Select…", testId: o = "notification-target-select", label: s, description: c, kindIconUrls: l }) {
7642
+ let u = Js({}), d = m(() => Nl(u.data), [u.data]), f = l ?? d;
7643
+ return /* @__PURE__ */ H(Al, {
7625
7644
  mode: "single",
7626
- options: m(() => jl(e, f, void 0, "note"), [e, f]),
7645
+ options: m(() => Ml(e, f, void 0, "note"), [e, f]),
7627
7646
  value: t,
7628
7647
  onChange: n,
7629
7648
  disabled: r,
@@ -7638,7 +7657,7 @@ function Il({ targets: e, value: t, onChange: n, disabled: r = !1, emptyMessage:
7638
7657
  listboxId: `${o}-listbox`
7639
7658
  });
7640
7659
  }
7641
- function Ll({ label: e, description: t, required: n, translationFn: r, children: i }) {
7660
+ function Rl({ label: e, description: t, required: n, translationFn: r, children: i }) {
7642
7661
  return /* @__PURE__ */ U("div", {
7643
7662
  className: "space-y-1",
7644
7663
  children: [
@@ -7657,9 +7676,9 @@ function Ll({ label: e, description: t, required: n, translationFn: r, children:
7657
7676
  ]
7658
7677
  });
7659
7678
  }
7660
- function Rl({ field: e, value: t, onChange: n, disabled: r, translationFn: i }) {
7661
- let a = Js({}), o = qs({}), s = m(() => Nl(a.data), [a.data]), c = m(() => Ml(o.data), [o.data]), l = Array.isArray(t) ? t.filter((e) => typeof e == "string") : typeof t == "string" && t.length > 0 ? [t] : [], u = a.isPending || o.isPending, d = a.isError ? a.error : o.isError ? o.error : null;
7662
- return u ? /* @__PURE__ */ H(Ll, {
7679
+ function zl({ field: e, value: t, onChange: n, disabled: r, translationFn: i }) {
7680
+ let a = Ys({}), o = Js({}), s = m(() => Pl(a.data), [a.data]), c = m(() => Nl(o.data), [o.data]), l = Array.isArray(t) ? t.filter((e) => typeof e == "string") : typeof t == "string" && t.length > 0 ? [t] : [], u = a.isPending || o.isPending, d = a.isError ? a.error : o.isError ? o.error : null;
7681
+ return u ? /* @__PURE__ */ H(Rl, {
7663
7682
  label: e.label,
7664
7683
  description: e.description,
7665
7684
  required: e.required,
@@ -7668,7 +7687,7 @@ function Rl({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
7668
7687
  className: "text-[11px] text-foreground-subtle",
7669
7688
  children: "Loading targets…"
7670
7689
  })
7671
- }) : d === null ? /* @__PURE__ */ H(Fl, {
7690
+ }) : d === null ? /* @__PURE__ */ H(Il, {
7672
7691
  targets: s,
7673
7692
  value: l,
7674
7693
  onChange: (e) => n(e),
@@ -7679,7 +7698,7 @@ function Rl({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
7679
7698
  description: e.description === void 0 ? void 0 : zh(e.description, i),
7680
7699
  emptyMessage: "No delivery target is configured. Add one under Notification Center → Targets first.",
7681
7700
  testIdPrefix: `config-target-${e.key}`
7682
- }) : /* @__PURE__ */ H(Ll, {
7701
+ }) : /* @__PURE__ */ H(Rl, {
7683
7702
  label: e.label,
7684
7703
  description: e.description,
7685
7704
  required: e.required,
@@ -7690,9 +7709,9 @@ function Rl({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
7690
7709
  })
7691
7710
  });
7692
7711
  }
7693
- function zl({ field: e, value: t, onChange: n, disabled: r, translationFn: i }) {
7694
- let a = Js({}), o = qs({}), s = m(() => Nl(a.data), [a.data]), c = m(() => Ml(o.data), [o.data]), l = typeof t == "string" ? t : "", u = a.isPending || o.isPending, d = a.isError ? a.error : o.isError ? o.error : null;
7695
- return u ? /* @__PURE__ */ H(Ll, {
7712
+ function Bl({ field: e, value: t, onChange: n, disabled: r, translationFn: i }) {
7713
+ let a = Ys({}), o = Js({}), s = m(() => Pl(a.data), [a.data]), c = m(() => Nl(o.data), [o.data]), l = typeof t == "string" ? t : "", u = a.isPending || o.isPending, d = a.isError ? a.error : o.isError ? o.error : null;
7714
+ return u ? /* @__PURE__ */ H(Rl, {
7696
7715
  label: e.label,
7697
7716
  description: e.description,
7698
7717
  required: e.required,
@@ -7701,7 +7720,7 @@ function zl({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
7701
7720
  className: "text-[11px] text-foreground-subtle",
7702
7721
  children: "Loading targets…"
7703
7722
  })
7704
- }) : d === null ? /* @__PURE__ */ H(Il, {
7723
+ }) : d === null ? /* @__PURE__ */ H(Ll, {
7705
7724
  targets: s,
7706
7725
  value: l,
7707
7726
  onChange: (e) => n(e),
@@ -7711,7 +7730,7 @@ function zl({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
7711
7730
  description: e.description === void 0 ? void 0 : zh(e.description, i),
7712
7731
  emptyMessage: "No delivery target is configured. Add one under Notification Center → Targets first.",
7713
7732
  testId: `config-target-${e.key}`
7714
- }) : /* @__PURE__ */ H(Ll, {
7733
+ }) : /* @__PURE__ */ H(Rl, {
7715
7734
  label: e.label,
7716
7735
  description: e.description,
7717
7736
  required: e.required,
@@ -7725,50 +7744,50 @@ function zl({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
7725
7744
  //#endregion
7726
7745
  //#region ../ui-library/src/contexts/custom-field-renderers.tsx
7727
7746
  i();
7728
- var Bl = R("camstack:custom-field-renderers", {});
7729
- function Vl(e) {
7730
- return p(Bl)[e] ?? null;
7747
+ var Vl = R("camstack:custom-field-renderers", {});
7748
+ function Hl(e) {
7749
+ return p(Vl)[e] ?? null;
7731
7750
  }
7732
7751
  //#endregion
7733
7752
  //#region ../ui-library/src/composites/confirm-dialog.tsx
7734
7753
  i();
7735
- var Hl = R("camstack:confirm-dialog", null);
7736
- function Ul() {
7737
- let e = p(Hl);
7754
+ var Ul = R("camstack:confirm-dialog", null);
7755
+ function Wl() {
7756
+ let e = p(Ul);
7738
7757
  if (!e) throw Error("useConfirm must be used within ConfirmDialogProvider");
7739
7758
  return e;
7740
7759
  }
7741
- function Wl() {
7742
- return Ul().confirm;
7743
- }
7744
7760
  function Gl() {
7745
- return Ul().prompt;
7761
+ return Wl().confirm;
7762
+ }
7763
+ function Kl() {
7764
+ return Wl().prompt;
7746
7765
  }
7747
7766
  //#endregion
7748
7767
  //#region ../ui-library/src/contexts/device-context.tsx
7749
7768
  i();
7750
- var Kl = R("camstack:device-context", null);
7751
- function ql() {
7752
- return p(Kl)?.deviceId ?? null;
7769
+ var ql = R("camstack:device-context", null);
7770
+ function Jl() {
7771
+ return p(ql)?.deviceId ?? null;
7753
7772
  }
7754
7773
  //#endregion
7755
7774
  //#region ../ui-library/src/lib/mf-runtime-init.ts
7756
7775
  i();
7757
- function Jl(e) {
7776
+ function Yl(e) {
7758
7777
  let t = (typeof globalThis < "u" ? globalThis : void 0)?.[e];
7759
7778
  return t && typeof t == "object" ? t : {};
7760
7779
  }
7761
- var Yl = {
7780
+ var Xl = {
7762
7781
  singleton: !0,
7763
7782
  requiredVersion: !1
7764
- }, Xl = (e) => ({
7783
+ }, Zl = (e) => ({
7765
7784
  version: "0.0.0",
7766
7785
  scope: "default",
7767
7786
  lib: e,
7768
- shareConfig: Yl
7769
- }), Zl = "__mf_module_cache__";
7770
- function Ql() {
7771
- let e = globalThis, t = e[Zl];
7787
+ shareConfig: Xl
7788
+ }), Ql = "__mf_module_cache__";
7789
+ function $l() {
7790
+ let e = globalThis, t = e[Ql];
7772
7791
  if (t && typeof t == "object") {
7773
7792
  let e = t;
7774
7793
  return e.share ??= {}, e.remote ??= {}, e;
@@ -7777,59 +7796,59 @@ function Ql() {
7777
7796
  share: {},
7778
7797
  remote: {}
7779
7798
  };
7780
- return e[Zl] = n, n;
7799
+ return e[Ql] = n, n;
7781
7800
  }
7782
- function $l() {
7783
- let e = Ql();
7784
- e.share.react ??= x, e.share["react-dom"] ??= st, e.share["react-dom/client"] ??= ft, e.share["react/jsx-runtime"] ??= ot, e.share["@tanstack/react-query"] ??= ut, e.share["@trpc/client"] ??= pt, e.share["@trpc/react-query"] ??= it, e.share["@camstack/ui-library"] ??= Jl("__camstackUiLibrary"), e.share["@camstack/sdk"] ??= Jl("__camstackSdk"), e.share["@camstack/types"] ??= Jl("__camstackTypes");
7801
+ function eu() {
7802
+ let e = $l();
7803
+ e.share.react ??= x, e.share["react-dom"] ??= st, e.share["react-dom/client"] ??= ft, e.share["react/jsx-runtime"] ??= ot, e.share["@tanstack/react-query"] ??= ut, e.share["@trpc/client"] ??= pt, e.share["@trpc/react-query"] ??= it, e.share["@camstack/ui-library"] ??= Yl("__camstackUiLibrary"), e.share["@camstack/sdk"] ??= Yl("__camstackSdk"), e.share["@camstack/types"] ??= Yl("__camstackTypes");
7785
7804
  }
7786
- var eu = (e) => ({
7805
+ var tu = (e) => ({
7787
7806
  version: "0.0.0",
7788
7807
  scope: "default",
7789
7808
  get: () => e().then((e) => () => e),
7790
- shareConfig: Yl
7809
+ shareConfig: Xl
7791
7810
  });
7792
- function tu() {
7793
- let e = Ql();
7811
+ function nu() {
7812
+ let e = $l();
7794
7813
  import("./ReactKonva-DGuYUN0L.mjs").then((e) => e.t).then((t) => {
7795
7814
  e.share["react-konva"] ??= t;
7796
7815
  }), import("./lib-CVGFTwe0.mjs").then((e) => e.t).then((t) => {
7797
7816
  e.share.konva ??= t;
7798
7817
  });
7799
7818
  }
7800
- function nu() {
7801
- $l(), r() === null && (tu(), t({
7819
+ function ru() {
7820
+ eu(), r() === null && (nu(), t({
7802
7821
  name: "admin_ui_host",
7803
7822
  remotes: [],
7804
7823
  shared: {
7805
- react: Xl(() => x),
7806
- "react-dom": Xl(() => st),
7807
- "react-dom/client": Xl(() => ft),
7808
- "react/jsx-runtime": Xl(() => ot),
7809
- "@tanstack/react-query": Xl(() => ut),
7810
- "@trpc/client": Xl(() => pt),
7811
- "@trpc/react-query": Xl(() => it),
7812
- "react-konva": eu(() => import("./ReactKonva-DGuYUN0L.mjs").then((e) => e.t)),
7813
- konva: eu(() => import("./lib-CVGFTwe0.mjs").then((e) => e.t)),
7814
- "@camstack/ui-library": Xl(() => Jl("__camstackUiLibrary")),
7815
- "@camstack/sdk": Xl(() => Jl("__camstackSdk")),
7816
- "@camstack/types": Xl(() => Jl("__camstackTypes"))
7824
+ react: Zl(() => x),
7825
+ "react-dom": Zl(() => st),
7826
+ "react-dom/client": Zl(() => ft),
7827
+ "react/jsx-runtime": Zl(() => ot),
7828
+ "@tanstack/react-query": Zl(() => ut),
7829
+ "@trpc/client": Zl(() => pt),
7830
+ "@trpc/react-query": Zl(() => it),
7831
+ "react-konva": tu(() => import("./ReactKonva-DGuYUN0L.mjs").then((e) => e.t)),
7832
+ konva: tu(() => import("./lib-CVGFTwe0.mjs").then((e) => e.t)),
7833
+ "@camstack/ui-library": Zl(() => Yl("__camstackUiLibrary")),
7834
+ "@camstack/sdk": Zl(() => Yl("__camstackSdk")),
7835
+ "@camstack/types": Zl(() => Yl("__camstackTypes"))
7817
7836
  }
7818
7837
  }));
7819
7838
  }
7820
7839
  //#endregion
7821
7840
  //#region ../ui-library/src/contexts/widget-registry.tsx
7822
7841
  i();
7823
- var ru = R("camstack:widget-registry", null), iu = /* @__PURE__ */ new Map(), au = /* @__PURE__ */ new Map(), ou = /* @__PURE__ */ new Set();
7824
- function su(e, t) {
7842
+ var iu = R("camstack:widget-registry", null), au = /* @__PURE__ */ new Map(), ou = /* @__PURE__ */ new Map(), su = /* @__PURE__ */ new Set();
7843
+ function cu(e, t) {
7825
7844
  return `${e}::${t}`;
7826
7845
  }
7827
- function cu(e) {
7846
+ function lu(e) {
7828
7847
  if (!e || typeof e != "object") return !1;
7829
7848
  let t = e.default;
7830
7849
  return typeof t == "object" && !!t;
7831
7850
  }
7832
- function lu(e) {
7851
+ function uu(e) {
7833
7852
  if (!e || typeof e != "object") return typeof e;
7834
7853
  let t = e, n = Object.getPrototypeOf(t), r = n && typeof n == "object" ? n.constructor?.name : void 0;
7835
7854
  return {
@@ -7838,40 +7857,40 @@ function lu(e) {
7838
7857
  proto: typeof r == "string" ? r : void 0
7839
7858
  };
7840
7859
  }
7841
- async function uu(t, r, i) {
7842
- let a = su(t, r), o = iu.get(a);
7860
+ async function du(t, r, i) {
7861
+ let a = cu(t, r), o = au.get(a);
7843
7862
  if (o) return o;
7844
- let s = au.get(a);
7863
+ let s = ou.get(a);
7845
7864
  if (s) return s;
7846
- ou.has(t) || (nu(), n([{
7865
+ su.has(t) || (ru(), n([{
7847
7866
  name: t,
7848
7867
  entry: ie(i),
7849
7868
  type: "module"
7850
- }], { force: !1 }), ou.add(t));
7869
+ }], { force: !1 }), su.add(t));
7851
7870
  let c = e(`${t}/${r.startsWith("./") ? r.slice(2) : r}`).then((e) => {
7852
- if (!cu(e)) {
7853
- let n = lu(e);
7871
+ if (!lu(e)) {
7872
+ let n = uu(e);
7854
7873
  throw Error(`Remote ${t} (${i}) does not expose a default record on '${r}'. Got: ${JSON.stringify(n)}`);
7855
7874
  }
7856
7875
  let n = e.default;
7857
- return iu.set(a, n), au.delete(a), n;
7876
+ return au.set(a, n), ou.delete(a), n;
7858
7877
  }).catch((e) => {
7859
- throw au.delete(a), e;
7878
+ throw ou.delete(a), e;
7860
7879
  });
7861
- return au.set(a, c), c;
7880
+ return ou.set(a, c), c;
7862
7881
  }
7863
- function du(e, t) {
7864
- return iu.get(su(e, t));
7882
+ function fu(e, t) {
7883
+ return au.get(cu(e, t));
7865
7884
  }
7866
- function fu(e) {
7867
- return mu().metadata(e);
7885
+ function pu(e) {
7886
+ return hu().metadata(e);
7868
7887
  }
7869
- function pu(e, t) {
7870
- let n = hu(), r = t ?? n?.entryUrlFor(e.remoteName), [i, o] = a(0), [s, c] = a(!1);
7888
+ function mu(e, t) {
7889
+ let n = gu(), r = t ?? n?.entryUrlFor(e.remoteName), [i, o] = a(0), [s, c] = a(!1);
7871
7890
  return y(() => {
7872
- if (!r || (c(!1), du(e.remoteName, e.exposedModule))) return;
7891
+ if (!r || (c(!1), fu(e.remoteName, e.exposedModule))) return;
7873
7892
  let t = !1;
7874
- return uu(e.remoteName, e.exposedModule, r).then(() => {
7893
+ return du(e.remoteName, e.exposedModule, r).then(() => {
7875
7894
  t || o((e) => e + 1);
7876
7895
  }).catch((n) => {
7877
7896
  let i = n instanceof Error ? n.message : String(n);
@@ -7890,7 +7909,7 @@ function pu(e, t) {
7890
7909
  r
7891
7910
  ]), m(() => {
7892
7911
  if (!r || s) return;
7893
- let t = du(e.remoteName, e.exposedModule);
7912
+ let t = fu(e.remoteName, e.exposedModule);
7894
7913
  if (!t) return null;
7895
7914
  let n = e.componentKey;
7896
7915
  return n === void 0 ? Object.values(t)[0] ?? void 0 : t[n] ?? void 0;
@@ -7903,28 +7922,28 @@ function pu(e, t) {
7903
7922
  s
7904
7923
  ]);
7905
7924
  }
7906
- function mu() {
7907
- let e = hu();
7925
+ function hu() {
7926
+ let e = gu();
7908
7927
  if (!e) throw Error("useWidgetRegistry(): no <WidgetRegistryProvider> in tree");
7909
7928
  return e;
7910
7929
  }
7911
- function hu() {
7912
- return gu(ru);
7930
+ function gu() {
7931
+ return _u(iu);
7913
7932
  }
7914
- function gu(e) {
7933
+ function _u(e) {
7915
7934
  return p(e);
7916
7935
  }
7917
7936
  //#endregion
7918
7937
  //#region ../ui-library/src/hooks/use-device-autotrack.ts
7919
7938
  i();
7920
- function _u(e) {
7921
- let t = lt(), n = vc({ deviceId: e ?? 0 }, {
7939
+ function vu(e) {
7940
+ let t = lt(), n = yc({ deviceId: e ?? 0 }, {
7922
7941
  enabled: e !== null && Number.isFinite(e),
7923
7942
  refetchInterval: 5e3,
7924
7943
  retry: 1
7925
- }), r = yc({ onSuccess: () => {
7944
+ }), r = bc({ onSuccess: () => {
7926
7945
  t.invalidateQueries({ queryKey: [["ptzAutotrack"]] });
7927
- } }), i = bc({ onSuccess: () => {
7946
+ } }), i = xc({ onSuccess: () => {
7928
7947
  t.invalidateQueries({ queryKey: [["ptzAutotrack"]] });
7929
7948
  } }), a = s(async (t) => {
7930
7949
  e !== null && await r.mutateAsync({
@@ -7949,8 +7968,8 @@ function _u(e) {
7949
7968
  //#endregion
7950
7969
  //#region ../ui-library/src/composites/cap-settings/AutotrackSection.tsx
7951
7970
  i();
7952
- function vu({ deviceId: e }) {
7953
- let { status: t, isLoading: n, isPending: r, error: i, setEnabled: o, setSettings: s } = _u(Number.isFinite(e) ? e : null), [c, l] = a({
7971
+ function yu({ deviceId: e }) {
7972
+ let { status: t, isLoading: n, isPending: r, error: i, setEnabled: o, setSettings: s } = vu(Number.isFinite(e) ? e : null), [c, l] = a({
7954
7973
  targetType: "",
7955
7974
  stopDelaySeconds: 30,
7956
7975
  disappearDelaySeconds: 15
@@ -8082,7 +8101,7 @@ function vu({ deviceId: e }) {
8082
8101
  //#endregion
8083
8102
  //#region ../ui-library/src/hooks/use-devices.ts
8084
8103
  i();
8085
- function yu(e) {
8104
+ function bu(e) {
8086
8105
  let t = L(), n = m(() => e ? JSON.stringify(e) : "", [e]), [r, i] = a(() => t.listDevices(e));
8087
8106
  return y(() => {
8088
8107
  let n = () => {
@@ -8107,12 +8126,12 @@ function yu(e) {
8107
8126
  }
8108
8127
  //#endregion
8109
8128
  //#region ../ui-library/src/composites/cap-settings/camera-grid-layout.ts
8110
- var bu = .02;
8111
- function xu(e) {
8129
+ var xu = .02;
8130
+ function Su(e) {
8112
8131
  return typeof e == "object" && !!e && !Array.isArray(e);
8113
8132
  }
8114
- function Su(e) {
8115
- if (!xu(e)) return null;
8133
+ function Cu(e) {
8134
+ if (!Su(e)) return null;
8116
8135
  let { x: t, y: n, width: r, height: i } = e;
8117
8136
  return typeof t != "number" || typeof n != "number" || typeof r != "number" || typeof i != "number" || t < 0 || n < 0 || r <= 0 || i <= 0 || t + r > 1 || n + i > 1 ? null : {
8118
8137
  x: t,
@@ -8121,19 +8140,19 @@ function Su(e) {
8121
8140
  height: i
8122
8141
  };
8123
8142
  }
8124
- function Cu(e) {
8125
- if (!xu(e)) return null;
8143
+ function wu(e) {
8144
+ if (!Su(e)) return null;
8126
8145
  let t = e.deviceId;
8127
8146
  if (typeof t != "number" || !Number.isInteger(t)) return null;
8128
- let n = Su(e.source), r = Su(e.cell);
8147
+ let n = Cu(e.source), r = Cu(e.cell);
8129
8148
  return n === null || r === null ? null : {
8130
8149
  deviceId: t,
8131
8150
  source: n,
8132
8151
  cell: r
8133
8152
  };
8134
8153
  }
8135
- function wu(e) {
8136
- if (!xu(e)) return null;
8154
+ function Tu(e) {
8155
+ if (!Su(e)) return null;
8137
8156
  let t = e.profile, n = e.offered, r = e.missingSources;
8138
8157
  if (t !== "high" && t !== "mid" && t !== "low" || typeof n != "boolean" || !Array.isArray(r)) return null;
8139
8158
  let i = [];
@@ -8149,20 +8168,20 @@ function wu(e) {
8149
8168
  published: typeof e.published == "boolean" ? e.published : n
8150
8169
  };
8151
8170
  }
8152
- function Tu(e) {
8171
+ function Eu(e) {
8153
8172
  if (e === null) return null;
8154
- if (!xu(e)) return "unreadable";
8173
+ if (!Su(e)) return "unreadable";
8155
8174
  let { instanceId: t, deviceId: n, name: r, fps: i, cells: a, profiles: o } = e;
8156
8175
  if (typeof t != "string" || typeof n != "number" || typeof r != "string" || typeof i != "number" || !Array.isArray(a) || !Array.isArray(o)) return "unreadable";
8157
8176
  let s = [];
8158
8177
  for (let e of a) {
8159
- let t = Cu(e);
8178
+ let t = wu(e);
8160
8179
  if (t === null) return "unreadable";
8161
8180
  s.push(t);
8162
8181
  }
8163
8182
  let c = [];
8164
8183
  for (let e of o) {
8165
- let t = wu(e);
8184
+ let t = Tu(e);
8166
8185
  if (t === null) return "unreadable";
8167
8186
  c.push(t);
8168
8187
  }
@@ -8175,8 +8194,8 @@ function Tu(e) {
8175
8194
  profiles: c
8176
8195
  };
8177
8196
  }
8178
- function Eu(e) {
8179
- let t = Math.min(1, Math.max(bu, e.width)), n = Math.min(1, Math.max(bu, e.height));
8197
+ function Du(e) {
8198
+ let t = Math.min(1, Math.max(xu, e.width)), n = Math.min(1, Math.max(xu, e.height));
8180
8199
  return {
8181
8200
  x: Math.min(1 - t, Math.max(0, e.x)),
8182
8201
  y: Math.min(1 - n, Math.max(0, e.y)),
@@ -8184,23 +8203,23 @@ function Eu(e) {
8184
8203
  height: n
8185
8204
  };
8186
8205
  }
8187
- function Du(e, t, n) {
8188
- return Eu({
8206
+ function Ou(e, t, n) {
8207
+ return Du({
8189
8208
  ...e,
8190
8209
  x: e.x + t,
8191
8210
  y: e.y + n
8192
8211
  });
8193
8212
  }
8194
- function Ou(e, t, n, r) {
8213
+ function ku(e, t, n, r) {
8195
8214
  let i = t === "nw" || t === "w" || t === "sw", a = t === "ne" || t === "e" || t === "se", o = t === "nw" || t === "n" || t === "ne", s = t === "sw" || t === "s" || t === "se", c = e.x, l = e.x + e.width, u = e.y, d = e.y + e.height;
8196
- return i && (c = Math.min(l - bu, Math.max(0, c + n))), a && (l = Math.max(c + bu, Math.min(1, l + n))), o && (u = Math.min(d - bu, Math.max(0, u + r))), s && (d = Math.max(u + bu, Math.min(1, d + r))), Eu({
8215
+ return i && (c = Math.min(l - xu, Math.max(0, c + n))), a && (l = Math.max(c + xu, Math.min(1, l + n))), o && (u = Math.min(d - xu, Math.max(0, u + r))), s && (d = Math.max(u + xu, Math.min(1, d + r))), Du({
8197
8216
  x: c,
8198
8217
  y: u,
8199
8218
  width: l - c,
8200
8219
  height: d - u
8201
8220
  });
8202
8221
  }
8203
- function ku(e) {
8222
+ function Au(e) {
8204
8223
  if (!Number.isFinite(e) || e <= 0) return [];
8205
8224
  let t = Math.floor(e), n = Math.ceil(Math.sqrt(t)), r = Math.ceil(t / n), i = [], a = 0;
8206
8225
  for (let e = 0; e < r; e++) {
@@ -8218,12 +8237,12 @@ function ku(e) {
8218
8237
  //#endregion
8219
8238
  //#region ../ui-library/src/composites/cap-settings/CameraGridLayoutEditor.tsx
8220
8239
  i();
8221
- var Au = {
8240
+ var ju = {
8222
8241
  x: 0,
8223
8242
  y: 0,
8224
8243
  width: 1,
8225
8244
  height: 1
8226
- }, ju = 16, Mu = { type: z.Camera }, Nu = { touchAction: "none" }, Pu = "absolute flex h-6 w-6 items-center justify-center", Fu = [
8245
+ }, Mu = 16, Nu = { type: z.Camera }, Pu = { touchAction: "none" }, Fu = "absolute flex h-6 w-6 items-center justify-center", Iu = [
8227
8246
  "nw",
8228
8247
  "n",
8229
8248
  "ne",
@@ -8232,7 +8251,7 @@ var Au = {
8232
8251
  "s",
8233
8252
  "sw",
8234
8253
  "w"
8235
- ], Iu = {
8254
+ ], Lu = {
8236
8255
  nw: "-top-3 -left-3 cursor-nw-resize",
8237
8256
  n: "-top-3 left-1/2 -translate-x-1/2 cursor-n-resize",
8238
8257
  ne: "-top-3 -right-3 cursor-ne-resize",
@@ -8242,17 +8261,17 @@ var Au = {
8242
8261
  sw: "-bottom-3 -left-3 cursor-sw-resize",
8243
8262
  w: "top-1/2 -left-3 -translate-y-1/2 cursor-w-resize"
8244
8263
  };
8245
- function Lu(e) {
8264
+ function Ru(e) {
8246
8265
  e.currentTarget.setPointerCapture(e.pointerId);
8247
8266
  }
8248
- function Ru(e, t, n) {
8249
- return e.mode === "move" ? Du(e.origin, t, n) : Ou(e.origin, e.mode, t, n);
8267
+ function zu(e, t, n) {
8268
+ return e.mode === "move" ? Ou(e.origin, t, n) : ku(e.origin, e.mode, t, n);
8250
8269
  }
8251
- function zu({ deviceId: e }) {
8252
- let t = L(), n = m(() => t.listDeviceInfos(Mu), [t, yu(Mu)]), [r, i] = a(void 0), [o, c] = a(null), [l, u] = a(!1), [d, f] = a(null), [p, h] = a(0), [g, _] = a(null), v = A(t.trpcClient, e), b = s(async () => {
8270
+ function Bu({ deviceId: e }) {
8271
+ let t = L(), n = m(() => t.listDeviceInfos(Nu), [t, bu(Nu)]), [r, i] = a(void 0), [o, c] = a(null), [l, u] = a(!1), [d, f] = a(null), [p, h] = a(0), [g, _] = a(null), v = A(t.trpcClient, e), b = s(async () => {
8253
8272
  let e = v?.cameraGridLayout;
8254
8273
  if (!e) return;
8255
- let t = Tu(await e.getLayout({}));
8274
+ let t = Eu(await e.getLayout({}));
8256
8275
  i(t), c(t === null || t === "unreadable" ? null : t);
8257
8276
  }, [v]);
8258
8277
  y(() => {
@@ -8271,7 +8290,7 @@ function zu({ deviceId: e }) {
8271
8290
  if (!(o === null || !t)) {
8272
8291
  u(!0), f(null);
8273
8292
  try {
8274
- let n = Tu(await t.saveLayout({
8293
+ let n = Eu(await t.saveLayout({
8275
8294
  name: o.name,
8276
8295
  fps: o.fps,
8277
8296
  cells: o.cells.map((e) => ({ ...e })),
@@ -8330,7 +8349,7 @@ function zu({ deviceId: e }) {
8330
8349
  let t = e.currentTarget.getBoundingClientRect();
8331
8350
  if (t.width === 0 || t.height === 0 || g.target !== "cell") return;
8332
8351
  let n = (e.clientX - g.startX) / t.width, r = (e.clientY - g.startY) / t.height;
8333
- S(g.index, { cell: Ru(g, n, r) });
8352
+ S(g.index, { cell: zu(g, n, r) });
8334
8353
  };
8335
8354
  return /* @__PURE__ */ H(fe, {
8336
8355
  title: "Grid layout",
@@ -8342,7 +8361,7 @@ function zu({ deviceId: e }) {
8342
8361
  disabled: o.cells.length === 0,
8343
8362
  title: "Tile every cell over the whole canvas, leaving no gap",
8344
8363
  onClick: () => {
8345
- let e = ku(o.cells.length);
8364
+ let e = Au(o.cells.length);
8346
8365
  c({
8347
8366
  ...o,
8348
8367
  cells: o.cells.map((t, n) => ({
@@ -8376,7 +8395,7 @@ function zu({ deviceId: e }) {
8376
8395
  className: "relative w-full select-none overflow-hidden rounded border border-border bg-black",
8377
8396
  style: {
8378
8397
  aspectRatio: String(C),
8379
- ...Nu
8398
+ ...Pu
8380
8399
  },
8381
8400
  onPointerMove: w,
8382
8401
  onPointerUp: () => {
@@ -8385,7 +8404,7 @@ function zu({ deviceId: e }) {
8385
8404
  onPointerCancel: () => {
8386
8405
  _(null);
8387
8406
  },
8388
- children: [o.cells.map((e, t) => /* @__PURE__ */ H(Vu, {
8407
+ children: [o.cells.map((e, t) => /* @__PURE__ */ H(Hu, {
8389
8408
  cell: e,
8390
8409
  selected: t === p,
8391
8410
  onSelect: () => {
@@ -8408,7 +8427,7 @@ function zu({ deviceId: e }) {
8408
8427
  }),
8409
8428
  /* @__PURE__ */ U("div", {
8410
8429
  className: "grid grid-cols-4 gap-2 text-[10.5px]",
8411
- children: [/* @__PURE__ */ H(Gu, {
8430
+ children: [/* @__PURE__ */ H(Ku, {
8412
8431
  label: "FPS",
8413
8432
  value: o.fps,
8414
8433
  onChange: (e) => {
@@ -8419,15 +8438,15 @@ function zu({ deviceId: e }) {
8419
8438
  }
8420
8439
  }), /* @__PURE__ */ U("button", {
8421
8440
  type: "button",
8422
- disabled: o.cells.length >= ju,
8441
+ disabled: o.cells.length >= Mu,
8423
8442
  onClick: () => {
8424
8443
  let t = n.find((t) => t.id !== e);
8425
8444
  t && (c({
8426
8445
  ...o,
8427
8446
  cells: [...o.cells, {
8428
8447
  deviceId: t.id,
8429
- source: Au,
8430
- cell: Eu({
8448
+ source: ju,
8449
+ cell: Du({
8431
8450
  x: .1,
8432
8451
  y: .1,
8433
8452
  width: .4,
@@ -8440,7 +8459,7 @@ function zu({ deviceId: e }) {
8440
8459
  children: [/* @__PURE__ */ H(Jr, { className: "h-3 w-3" }), " Cell"]
8441
8460
  })]
8442
8461
  }),
8443
- /* @__PURE__ */ H(Bu, {
8462
+ /* @__PURE__ */ H(Vu, {
8444
8463
  offers: r.profiles,
8445
8464
  cameras: n,
8446
8465
  onToggle: (e) => {
@@ -8449,7 +8468,7 @@ function zu({ deviceId: e }) {
8449
8468
  x({ publishedProfiles: t.includes(e) ? t.filter((t) => t !== e) : [...t, e] });
8450
8469
  }
8451
8470
  }),
8452
- o.cells[p] !== void 0 && /* @__PURE__ */ H(Hu, {
8471
+ o.cells[p] !== void 0 && /* @__PURE__ */ H(Uu, {
8453
8472
  cell: o.cells[p],
8454
8473
  index: p,
8455
8474
  cameras: n.filter((t) => t.id !== e),
@@ -8467,7 +8486,7 @@ function zu({ deviceId: e }) {
8467
8486
  })
8468
8487
  });
8469
8488
  }
8470
- function Bu({ offers: e, cameras: t, onToggle: n }) {
8489
+ function Vu({ offers: e, cameras: t, onToggle: n }) {
8471
8490
  let r = (e) => t.find((t) => t.id === e)?.name ?? `#${String(e)}`;
8472
8491
  return /* @__PURE__ */ U("div", {
8473
8492
  className: "flex flex-col gap-1 rounded border border-border p-2 text-[10.5px]",
@@ -8506,16 +8525,16 @@ function Bu({ offers: e, cameras: t, onToggle: n }) {
8506
8525
  }, e.profile))]
8507
8526
  });
8508
8527
  }
8509
- function Vu({ cell: e, selected: t, onSelect: n, onDragStart: r }) {
8528
+ function Hu({ cell: e, selected: t, onSelect: n, onDragStart: r }) {
8510
8529
  let { src: i } = se(e.deviceId, { width: 640 }), a = `${String(100 / e.source.width)}% ${String(100 / e.source.height)}%`, o = e.source.width >= 1 && e.source.height >= 1 ? "center" : `${String(e.source.x / Math.max(1e-6, 1 - e.source.width) * 100)}% ${String(e.source.y / Math.max(1e-6, 1 - e.source.height) * 100)}%`;
8511
8530
  return /* @__PURE__ */ H("div", {
8512
8531
  role: "presentation",
8513
8532
  onPointerDown: (e) => {
8514
- n(), Lu(e), r("move", e);
8533
+ n(), Ru(e), r("move", e);
8515
8534
  },
8516
8535
  className: `absolute cursor-move border ${t ? "border-accent" : "border-border/60"}`,
8517
8536
  style: {
8518
- ...Nu,
8537
+ ...Pu,
8519
8538
  left: `${String(e.cell.x * 100)}%`,
8520
8539
  top: `${String(e.cell.y * 100)}%`,
8521
8540
  width: `${String(e.cell.width * 100)}%`,
@@ -8525,18 +8544,18 @@ function Vu({ cell: e, selected: t, onSelect: n, onDragStart: r }) {
8525
8544
  backgroundPosition: o,
8526
8545
  backgroundRepeat: "no-repeat"
8527
8546
  },
8528
- children: t && Fu.map((e) => /* @__PURE__ */ H("div", {
8547
+ children: t && Iu.map((e) => /* @__PURE__ */ H("div", {
8529
8548
  role: "presentation",
8530
8549
  onPointerDown: (t) => {
8531
- t.stopPropagation(), Lu(t), r(e, t);
8550
+ t.stopPropagation(), Ru(t), r(e, t);
8532
8551
  },
8533
- className: `${Pu} ${Iu[e]}`,
8534
- style: Nu,
8552
+ className: `${Fu} ${Lu[e]}`,
8553
+ style: Pu,
8535
8554
  children: /* @__PURE__ */ H("span", { className: "h-2.5 w-2.5 bg-accent" })
8536
8555
  }, e))
8537
8556
  });
8538
8557
  }
8539
- function Hu({ cell: e, index: t, cameras: n, onChange: r, onRemove: i }) {
8558
+ function Uu({ cell: e, index: t, cameras: n, onChange: r, onRemove: i }) {
8540
8559
  return /* @__PURE__ */ U("div", {
8541
8560
  className: "flex flex-col gap-2 rounded border border-border p-2 text-[10.5px]",
8542
8561
  children: [
@@ -8569,7 +8588,7 @@ function Hu({ cell: e, index: t, cameras: n, onChange: r, onRemove: i }) {
8569
8588
  }, e.id))
8570
8589
  })]
8571
8590
  }),
8572
- /* @__PURE__ */ H(Uu, {
8591
+ /* @__PURE__ */ H(Wu, {
8573
8592
  deviceId: e.deviceId,
8574
8593
  source: e.source,
8575
8594
  onChange: (e) => {
@@ -8583,11 +8602,11 @@ function Hu({ cell: e, index: t, cameras: n, onChange: r, onRemove: i }) {
8583
8602
  "y",
8584
8603
  "width",
8585
8604
  "height"
8586
- ].map((t) => /* @__PURE__ */ H(Wu, {
8605
+ ].map((t) => /* @__PURE__ */ H(Gu, {
8587
8606
  label: `Crop ${t}`,
8588
8607
  value: e.source[t],
8589
8608
  onChange: (n) => {
8590
- r({ source: Eu({
8609
+ r({ source: Du({
8591
8610
  ...e.source,
8592
8611
  [t]: n
8593
8612
  }) });
@@ -8597,11 +8616,11 @@ function Hu({ cell: e, index: t, cameras: n, onChange: r, onRemove: i }) {
8597
8616
  ]
8598
8617
  });
8599
8618
  }
8600
- function Uu({ deviceId: e, source: t, onChange: n }) {
8619
+ function Wu({ deviceId: e, source: t, onChange: n }) {
8601
8620
  let { src: r } = se(e, { width: 640 }), [i, o] = a(null), [s, c] = a(null), l = (e) => {
8602
8621
  if (i === null) return;
8603
8622
  let t = e.currentTarget.getBoundingClientRect();
8604
- t.width === 0 || t.height === 0 || n(Ru({
8623
+ t.width === 0 || t.height === 0 || n(zu({
8605
8624
  ...i,
8606
8625
  index: 0,
8607
8626
  target: "source"
@@ -8618,7 +8637,7 @@ function Uu({ deviceId: e, source: t, onChange: n }) {
8618
8637
  type: "button",
8619
8638
  disabled: u,
8620
8639
  onClick: () => {
8621
- n(Au);
8640
+ n(ju);
8622
8641
  },
8623
8642
  className: "flex items-center gap-1 rounded border border-border px-1.5 py-0.5 uppercase disabled:opacity-40",
8624
8643
  children: [/* @__PURE__ */ H(br, { className: "h-3 w-3" }), " Whole frame"]
@@ -8627,7 +8646,7 @@ function Uu({ deviceId: e, source: t, onChange: n }) {
8627
8646
  className: "relative w-full select-none overflow-hidden rounded border border-border bg-black",
8628
8647
  style: {
8629
8648
  aspectRatio: String(s ?? 16 / 9),
8630
- ...Nu
8649
+ ...Pu
8631
8650
  },
8632
8651
  onPointerMove: l,
8633
8652
  onPointerUp: () => {
@@ -8653,7 +8672,7 @@ function Uu({ deviceId: e, source: t, onChange: n }) {
8653
8672
  /* @__PURE__ */ H("div", {
8654
8673
  role: "presentation",
8655
8674
  onPointerDown: (e) => {
8656
- Lu(e), o({
8675
+ Ru(e), o({
8657
8676
  mode: "move",
8658
8677
  startX: e.clientX,
8659
8678
  startY: e.clientY,
@@ -8662,7 +8681,7 @@ function Uu({ deviceId: e, source: t, onChange: n }) {
8662
8681
  },
8663
8682
  className: "absolute cursor-move border border-accent",
8664
8683
  style: {
8665
- ...Nu,
8684
+ ...Pu,
8666
8685
  left: `${String(t.x * 100)}%`,
8667
8686
  top: `${String(t.y * 100)}%`,
8668
8687
  width: `${String(t.width * 100)}%`,
@@ -8671,18 +8690,18 @@ function Uu({ deviceId: e, source: t, onChange: n }) {
8671
8690
  backgroundSize: `${String(100 / t.width)}% ${String(100 / t.height)}%`,
8672
8691
  backgroundPosition: t.width >= 1 && t.height >= 1 ? "center" : `${String(t.x / Math.max(1e-6, 1 - t.width) * 100)}% ${String(t.y / Math.max(1e-6, 1 - t.height) * 100)}%`
8673
8692
  },
8674
- children: Fu.map((e) => /* @__PURE__ */ H("div", {
8693
+ children: Iu.map((e) => /* @__PURE__ */ H("div", {
8675
8694
  role: "presentation",
8676
8695
  onPointerDown: (n) => {
8677
- n.stopPropagation(), Lu(n), o({
8696
+ n.stopPropagation(), Ru(n), o({
8678
8697
  mode: e,
8679
8698
  startX: n.clientX,
8680
8699
  startY: n.clientY,
8681
8700
  origin: t
8682
8701
  });
8683
8702
  },
8684
- className: `${Pu} ${Iu[e]}`,
8685
- style: Nu,
8703
+ className: `${Fu} ${Lu[e]}`,
8704
+ style: Pu,
8686
8705
  children: /* @__PURE__ */ H("span", { className: "h-2.5 w-2.5 bg-accent" })
8687
8706
  }, e))
8688
8707
  })
@@ -8690,7 +8709,7 @@ function Uu({ deviceId: e, source: t, onChange: n }) {
8690
8709
  })]
8691
8710
  });
8692
8711
  }
8693
- function Wu({ label: e, value: t, onChange: n }) {
8712
+ function Gu({ label: e, value: t, onChange: n }) {
8694
8713
  let r = Math.round(t * 100) / 100;
8695
8714
  return /* @__PURE__ */ U("label", {
8696
8715
  className: "flex flex-col gap-0.5",
@@ -8718,12 +8737,12 @@ function Wu({ label: e, value: t, onChange: n }) {
8718
8737
  let t = Number(e.target.value);
8719
8738
  Number.isFinite(t) && n(t);
8720
8739
  },
8721
- style: Nu,
8740
+ style: Pu,
8722
8741
  className: "h-5 w-full accent-accent"
8723
8742
  })]
8724
8743
  });
8725
8744
  }
8726
- function Gu({ label: e, value: t, step: n = 1, onChange: r }) {
8745
+ function Ku({ label: e, value: t, step: n = 1, onChange: r }) {
8727
8746
  return /* @__PURE__ */ U("label", {
8728
8747
  className: "flex flex-col gap-0.5",
8729
8748
  children: [/* @__PURE__ */ H("span", {
@@ -8757,20 +8776,20 @@ function X(e) {
8757
8776
  //#endregion
8758
8777
  //#region ../ui-library/src/composites/cap-settings/ConsumablesPanel.tsx
8759
8778
  i();
8760
- var Ku = 15, qu = {
8779
+ var qu = 15, Ju = {
8761
8780
  days: ["day", "days"],
8762
8781
  hours: ["hour", "hours"],
8763
8782
  cycles: ["cycle", "cycles"]
8764
8783
  };
8765
- function Ju(e) {
8784
+ function Yu(e) {
8766
8785
  if (e.value === null) return "—";
8767
- let [t, n] = qu[e.unit];
8786
+ let [t, n] = Ju[e.unit];
8768
8787
  return `${e.value} ${e.value === 1 ? t : n}`;
8769
8788
  }
8770
- function Yu(e) {
8771
- return e.status === "replace" || e.level !== null && e.level <= Ku;
8772
- }
8773
8789
  function Xu(e) {
8790
+ return e.status === "replace" || e.level !== null && e.level <= qu;
8791
+ }
8792
+ function Zu(e) {
8774
8793
  try {
8775
8794
  return new Date(e).toLocaleDateString(void 0, {
8776
8795
  year: "numeric",
@@ -8781,8 +8800,8 @@ function Xu(e) {
8781
8800
  return "";
8782
8801
  }
8783
8802
  }
8784
- function Zu({ item: e, busy: t, canReset: n, onReset: r }) {
8785
- let i = Yu(e), a = i ? "bg-warning" : "bg-success";
8803
+ function Qu({ item: e, busy: t, canReset: n, onReset: r }) {
8804
+ let i = Xu(e), a = i ? "bg-warning" : "bg-success";
8786
8805
  return /* @__PURE__ */ U("div", {
8787
8806
  className: `flex flex-col gap-1.5 rounded-md border p-3 ${i ? "border-warning/40 bg-warning/5" : "border-border/40 bg-surface-elevated/30"}`,
8788
8807
  children: [
@@ -8820,16 +8839,16 @@ function Zu({ item: e, busy: t, canReset: n, onReset: r }) {
8820
8839
  }),
8821
8840
  e.remaining && /* @__PURE__ */ H("span", {
8822
8841
  className: "text-[10px] font-medium tabular-nums text-foreground-subtle",
8823
- children: Ju(e.remaining)
8842
+ children: Yu(e.remaining)
8824
8843
  }),
8825
8844
  e.lastResetAt !== null && /* @__PURE__ */ U("span", {
8826
8845
  className: "text-[10px] text-foreground-subtle",
8827
- children: ["Replaced ", Xu(e.lastResetAt)]
8846
+ children: ["Replaced ", Zu(e.lastResetAt)]
8828
8847
  })
8829
8848
  ]
8830
8849
  });
8831
8850
  }
8832
- function Qu({ deviceId: e }) {
8851
+ function $u({ deviceId: e }) {
8833
8852
  let t = L(), n = Number.isFinite(e), { cap: r, slice: i, available: o } = X({
8834
8853
  trpc: t.trpcClient,
8835
8854
  deviceId: n ? e : null,
@@ -8856,7 +8875,7 @@ function Qu({ deviceId: e }) {
8856
8875
  children: "No consumables reported."
8857
8876
  }) : /* @__PURE__ */ H("div", {
8858
8877
  className: "flex flex-col gap-2",
8859
- children: d.map((e) => /* @__PURE__ */ H(Zu, {
8878
+ children: d.map((e) => /* @__PURE__ */ H(Qu, {
8860
8879
  item: e,
8861
8880
  busy: c === e.key,
8862
8881
  canReset: o,
@@ -8867,17 +8886,17 @@ function Qu({ deviceId: e }) {
8867
8886
  }
8868
8887
  //#endregion
8869
8888
  //#region ../ui-library/src/hooks/use-capability-presence.ts
8870
- function $u(e) {
8889
+ function ed(e) {
8871
8890
  return e === null ? "absent" : e.providers.length > 0 ? "present" : "absent";
8872
8891
  }
8873
- function ed(e) {
8892
+ function td(e) {
8874
8893
  let t = G.capabilities.getCapability.useQuery({ name: e });
8875
- return t.status === "pending" ? "pending" : t.status === "error" ? "unknown" : $u(t.data);
8894
+ return t.status === "pending" ? "pending" : t.status === "error" ? "unknown" : ed(t.data);
8876
8895
  }
8877
8896
  //#endregion
8878
8897
  //#region ../ui-library/src/primitives/button.tsx
8879
8898
  i();
8880
- var td = ys("inline-flex items-center justify-center rounded-md font-medium transition-colors cursor-pointer disabled:opacity-50 disabled:pointer-events-none", {
8899
+ var nd = ys("inline-flex items-center justify-center rounded-md font-medium transition-colors cursor-pointer disabled:opacity-50 disabled:pointer-events-none", {
8881
8900
  variants: {
8882
8901
  variant: {
8883
8902
  primary: "bg-primary text-primary-foreground hover:bg-primary/90",
@@ -8898,34 +8917,15 @@ var td = ys("inline-flex items-center justify-center rounded-md font-medium tran
8898
8917
  }
8899
8918
  }), Z = _(({ className: e, variant: t, size: n, ...r }, i) => /* @__PURE__ */ H("button", {
8900
8919
  ref: i,
8901
- className: Y(td({
8920
+ className: Y(nd({
8902
8921
  variant: t,
8903
8922
  size: n
8904
8923
  }), e),
8905
8924
  ...r
8906
8925
  }));
8907
8926
  //#endregion
8908
- //#region ../ui-library/src/primitives/select.tsx
8909
- Z.displayName = "Button", i();
8910
- var nd = _(({ className: e, options: t, disabled: n, ...r }, i) => /* @__PURE__ */ U("div", {
8911
- className: "relative w-full",
8912
- children: [/* @__PURE__ */ H("select", {
8913
- ref: i,
8914
- disabled: n,
8915
- className: Y("h-7 w-full px-2.5 text-xs bg-surface border border-border rounded-md text-foreground appearance-none pr-7 focus:outline-none focus:ring-1 focus:ring-primary", "disabled:opacity-50 disabled:cursor-not-allowed", e),
8916
- ...r,
8917
- children: t.map((e) => /* @__PURE__ */ H("option", {
8918
- value: e.value,
8919
- children: e.label
8920
- }, e.value))
8921
- }), /* @__PURE__ */ H("div", {
8922
- className: Y("absolute right-2 top-1/2 -translate-y-1/2 pointer-events-none text-foreground-muted", n === !0 ? "opacity-50" : ""),
8923
- children: /* @__PURE__ */ H(le, { className: "h-3.5 w-3.5" })
8924
- })]
8925
- }));
8926
- //#endregion
8927
8927
  //#region ../ui-library/src/primitives/skeleton.tsx
8928
- nd.displayName = "Select", i();
8928
+ Z.displayName = "Button", i();
8929
8929
  var rd = _(({ className: e, ...t }, n) => /* @__PURE__ */ H("div", {
8930
8930
  ref: n,
8931
8931
  className: Y("animate-pulse bg-surface-hover rounded-md h-4 w-full", e),
@@ -9425,7 +9425,7 @@ var Pd = [
9425
9425
  "high"
9426
9426
  ];
9427
9427
  function Fd({ deviceId: e, clip: t, profile: n, onProfileChange: r }) {
9428
- let i = jd(), a = kc({
9428
+ let i = jd(), a = Ac({
9429
9429
  deviceId: e,
9430
9430
  clipId: t.id,
9431
9431
  profile: n
@@ -9684,10 +9684,10 @@ function Zd({ clip: e, selected: t, onSelect: n }) {
9684
9684
  }),
9685
9685
  a.length === 0 && e.nativeTypes === void 0 ? null : /* @__PURE__ */ U("div", {
9686
9686
  className: "flex flex-wrap gap-1",
9687
- children: [a.map((e) => /* @__PURE__ */ H(ll, {
9687
+ children: [a.map((e) => /* @__PURE__ */ H(ul, {
9688
9688
  variant: "info",
9689
9689
  children: e
9690
- }, `label:${e}`)), (e.nativeTypes ?? []).map((e) => /* @__PURE__ */ H(ll, {
9690
+ }, `label:${e}`)), (e.nativeTypes ?? []).map((e) => /* @__PURE__ */ H(ul, {
9691
9691
  style: "outline",
9692
9692
  children: e
9693
9693
  }, `native:${e}`))]
@@ -9873,7 +9873,7 @@ function hf({ silent: e }) {
9873
9873
  });
9874
9874
  }
9875
9875
  function gf({ deviceId: e }) {
9876
- let [t, n] = a(() => /* @__PURE__ */ new Date()), [r, i] = a(() => ld(/* @__PURE__ */ new Date(), Date.now())), [o, s] = a(null), [c, l] = a(""), [u, d] = a(1), [f, p] = a(null), [h, g] = a("low"), _ = ed("videoclips"), v = m(() => ld(t, Date.now()), [t]), b = md(r.toMs - r.fromMs), x = Qs({
9876
+ let [t, n] = a(() => /* @__PURE__ */ new Date()), [r, i] = a(() => ld(/* @__PURE__ */ new Date(), Date.now())), [o, s] = a(null), [c, l] = a(""), [u, d] = a(1), [f, p] = a(null), [h, g] = a("low"), _ = td("videoclips"), v = m(() => ld(t, Date.now()), [t]), b = md(r.toMs - r.fromMs), x = $s({
9877
9877
  deviceId: e,
9878
9878
  since: r.fromMs,
9879
9879
  until: r.toMs,
@@ -9885,7 +9885,7 @@ function gf({ deviceId: e }) {
9885
9885
  ]), C = o === null ? void 0 : S.find((e) => e.index === o), w = m(() => sf(r, C === void 0 ? null : {
9886
9886
  startMs: C.startMs,
9887
9887
  endMs: C.endMs
9888
- }), [r, C]), T = of(w), E = Oc({ deviceId: e }), D = E.data ?? [], O = m(() => c === "" ? D.find((e) => e.addonId !== void 0)?.addonId ?? "" : c, [c, D]), k = Dc({
9888
+ }), [r, C]), T = of(w), E = kc({ deviceId: e }), D = E.data ?? [], O = m(() => c === "" ? D.find((e) => e.addonId !== void 0)?.addonId ?? "" : c, [c, D]), k = Oc({
9889
9889
  deviceId: e,
9890
9890
  since: w.fromMs,
9891
9891
  until: w.toMs,
@@ -9974,7 +9974,7 @@ function gf({ deviceId: e }) {
9974
9974
  }),
9975
9975
  /* @__PURE__ */ H("div", {
9976
9976
  className: "w-60",
9977
- children: /* @__PURE__ */ H(nd, {
9977
+ children: /* @__PURE__ */ H(Ms, {
9978
9978
  id: "clips-provider",
9979
9979
  options: j,
9980
9980
  value: O,
@@ -10169,11 +10169,11 @@ function jf({ sources: e, tracked: t }) {
10169
10169
  className: "text-foreground",
10170
10170
  children: e.name ?? `Device ${e.deviceId}`
10171
10171
  }),
10172
- /* @__PURE__ */ H(ll, {
10172
+ /* @__PURE__ */ H(ul, {
10173
10173
  variant: Af[e.health],
10174
10174
  children: kf[e.health]
10175
10175
  }),
10176
- t?.includes(e.deviceId) === !0 && /* @__PURE__ */ H(ll, {
10176
+ t?.includes(e.deviceId) === !0 && /* @__PURE__ */ H(ul, {
10177
10177
  variant: "info",
10178
10178
  children: "Tracked events"
10179
10179
  }),
@@ -10190,7 +10190,7 @@ function Mf({ row: e }) {
10190
10190
  return t === null ? null : /* @__PURE__ */ U("div", {
10191
10191
  className: "flex flex-wrap items-center gap-2 text-[10px] text-foreground-subtle",
10192
10192
  children: [
10193
- /* @__PURE__ */ H(ll, {
10193
+ /* @__PURE__ */ H(ul, {
10194
10194
  variant: t.state === "active" ? "success" : t.state === "inactive" ? "warning" : "default",
10195
10195
  children: t.state === "active" ? "Active" : t.state === "inactive" ? "Inactive" : "Unknown"
10196
10196
  }),
@@ -10213,7 +10213,7 @@ function Nf({ sources: e, tracked: t }) {
10213
10213
  children: [/* @__PURE__ */ H("span", {
10214
10214
  className: "text-foreground",
10215
10215
  children: e.name ?? `Device ${e.deviceId}`
10216
- }), t?.includes(e.deviceId) === !0 && /* @__PURE__ */ H(ll, {
10216
+ }), t?.includes(e.deviceId) === !0 && /* @__PURE__ */ H(ul, {
10217
10217
  variant: "info",
10218
10218
  children: "Tracked events"
10219
10219
  })]
@@ -10251,10 +10251,10 @@ function Ff({ options: e, tracked: t, nameOf: n, onToggle: r }) {
10251
10251
  });
10252
10252
  }
10253
10253
  function If({ deviceId: e, row: t, onSaved: n, readOnly: r = !1 }) {
10254
- let i = Te[t.slot].descriptor, o = t.value.deviceIds, s = Cf(t.value), c = t.impliedSources ?? [], l = c.map((e) => e.deviceId), u = t.sources.filter((e) => e.health === "unavailable").map((e) => e.deviceId), [d, f] = a(!1), [p, m] = a(o), [h, g] = a(s ?? []), [_, v] = a(""), [y, b] = a(null), x = Vs({
10254
+ let i = Te[t.slot].descriptor, o = t.value.deviceIds, s = Cf(t.value), c = t.impliedSources ?? [], l = c.map((e) => e.deviceId), u = t.sources.filter((e) => e.health === "unavailable").map((e) => e.deviceId), [d, f] = a(!1), [p, m] = a(o), [h, g] = a(s ?? []), [_, v] = a(""), [y, b] = a(null), x = Hs({
10255
10255
  deviceId: e,
10256
10256
  slotRef: t.slotRef
10257
- }, { enabled: d }), S = Hs(), C = x.data?.candidates ?? [], w = (e) => C.find((t) => t.deviceId === e)?.name ?? t.sources.find((t) => t.deviceId === e)?.name ?? c.find((t) => t.deviceId === e)?.name ?? `Device ${e}`, T = (e) => {
10257
+ }, { enabled: d }), S = Us(), C = x.data?.candidates ?? [], w = (e) => C.find((t) => t.deviceId === e)?.name ?? t.sources.find((t) => t.deviceId === e)?.name ?? c.find((t) => t.deviceId === e)?.name ?? `Device ${e}`, T = (e) => {
10258
10258
  m(yf(p, e, i.cardinality)), g(Df(h, e, l));
10259
10259
  }, E = () => {
10260
10260
  m(o), g(s ?? []), b(null), f(!0);
@@ -10425,7 +10425,7 @@ function If({ deviceId: e, row: t, onSaved: n, readOnly: r = !1 }) {
10425
10425
  //#endregion
10426
10426
  //#region ../ui-library/src/composites/extensions/ExtensionsPanel.tsx
10427
10427
  function Lf({ deviceId: e, slots: t, title: n, readOnly: r = !1 }) {
10428
- let i = Bs({ deviceId: e }), a = vf({
10428
+ let i = Vs({ deviceId: e }), a = vf({
10429
10429
  status: i.status,
10430
10430
  data: i.data,
10431
10431
  error: i.error
@@ -10471,7 +10471,7 @@ function Lf({ deviceId: e, slots: t, title: n, readOnly: r = !1 }) {
10471
10471
  children: [
10472
10472
  /* @__PURE__ */ U("div", {
10473
10473
  className: "flex items-center gap-2",
10474
- children: [/* @__PURE__ */ H(ll, {
10474
+ children: [/* @__PURE__ */ H(ul, {
10475
10475
  variant: "warning",
10476
10476
  children: "Unknown slot"
10477
10477
  }), /* @__PURE__ */ H("span", {
@@ -10495,7 +10495,7 @@ function Lf({ deviceId: e, slots: t, title: n, readOnly: r = !1 }) {
10495
10495
  children: [
10496
10496
  /* @__PURE__ */ U("div", {
10497
10497
  className: "flex items-center gap-2",
10498
- children: [/* @__PURE__ */ H(ll, {
10498
+ children: [/* @__PURE__ */ H(ul, {
10499
10499
  variant: "warning",
10500
10500
  children: "Unreachable"
10501
10501
  }), /* @__PURE__ */ H("span", {
@@ -11165,7 +11165,7 @@ function $f({ direction: e, icon: t, disabled: n, className: r, variant: i, onMo
11165
11165
  });
11166
11166
  }
11167
11167
  function ep({ controls: e, mode: t = "overlay", showPresets: n, showZoom: r = !0, showHome: i = !0, className: o }) {
11168
- let { move: c, startContinuous: l, stopContinuous: d, zoom: f, goHome: p, homePreset: m, goToPreset: h, savePreset: _, updatePreset: v, deletePreset: b, presets: x, options: S, busy: C, error: w } = e, T = Wl(), [E, D] = a(!1), [O, k] = a(""), A = u(null), j = u(null), [M, N] = a(null), P = t === "panel", F = r && (S?.hasZoom ?? !0), I = S?.supportsPresets ?? x.length > 0, ee = (n ?? I) && I, te = P && (S?.supportsPresets ?? !1), ne = S?.maxPresets !== void 0 && x.length >= S.maxPresets, re = s(async () => {
11168
+ let { move: c, startContinuous: l, stopContinuous: d, zoom: f, goHome: p, homePreset: m, goToPreset: h, savePreset: _, updatePreset: v, deletePreset: b, presets: x, options: S, busy: C, error: w } = e, T = Gl(), [E, D] = a(!1), [O, k] = a(""), A = u(null), j = u(null), [M, N] = a(null), P = t === "panel", F = r && (S?.hasZoom ?? !0), I = S?.supportsPresets ?? x.length > 0, ee = (n ?? I) && I, te = P && (S?.supportsPresets ?? !1), ne = S?.maxPresets !== void 0 && x.length >= S.maxPresets, re = s(async () => {
11169
11169
  let e = O.trim();
11170
11170
  !e || C || ne || await _(e) !== void 0 && k("");
11171
11171
  }, [
@@ -11706,7 +11706,7 @@ function gp({ band: e, onChange: t, onRemove: n, sensorContext: r }) {
11706
11706
  }, t);
11707
11707
  })]
11708
11708
  }),
11709
- r === void 0 ? null : /* @__PURE__ */ H(sl, {
11709
+ r === void 0 ? null : /* @__PURE__ */ H(cl, {
11710
11710
  field: mp(r),
11711
11711
  value: (e.triggers?.sensorDeviceIds ?? []).map(String),
11712
11712
  onChange: (e) => {
@@ -12196,7 +12196,7 @@ var zp = {
12196
12196
  "duplicate-name": "A collection with that name already exists."
12197
12197
  };
12198
12198
  function Bp({ value: e, onChange: t }) {
12199
- let n = uc({}), r = lc(), [i, o] = a(""), [s, c] = a(null), l = n.data ?? [], u = async () => {
12199
+ let n = dc({}), r = uc(), [i, o] = a(""), [s, c] = a(null), l = n.data ?? [], u = async () => {
12200
12200
  c(null);
12201
12201
  let e = await r.mutateAsync({ name: i });
12202
12202
  if (e.kind === "refused") {
@@ -12209,7 +12209,7 @@ function Bp({ value: e, onChange: t }) {
12209
12209
  className: "space-y-2",
12210
12210
  "data-testid": "training-collection-picker",
12211
12211
  children: [
12212
- l.length > 0 ? /* @__PURE__ */ H(nd, {
12212
+ l.length > 0 ? /* @__PURE__ */ H(Ms, {
12213
12213
  "aria-label": "Collection",
12214
12214
  value: e ?? "",
12215
12215
  options: [{
@@ -12269,7 +12269,7 @@ function Hp(e, t) {
12269
12269
  //#region ../ui-library/src/composites/training/send-frame-to-training.tsx
12270
12270
  i();
12271
12271
  function Up({ deviceId: e, epochMs: t }) {
12272
- let n = uc({}, { retry: !1 }), r = pc(), [i, o] = a(!1), [s, c] = a(null), [l, u] = a(null), [d, f] = a(null);
12272
+ let n = dc({}, { retry: !1 }), r = mc(), [i, o] = a(!1), [s, c] = a(null), [l, u] = a(null), [d, f] = a(null);
12273
12273
  if (n.isError) return null;
12274
12274
  let p = async () => {
12275
12275
  if (s === null || l === null) return;
@@ -12642,12 +12642,12 @@ function am({ deviceId: e }) {
12642
12642
  e.preventDefault();
12643
12643
  let n = t * em;
12644
12644
  oe((e) => fd(e, se, n));
12645
- }, [se]), fe = md(ae.toMs - ae.fromMs), pe = xc({
12645
+ }, [se]), fe = md(ae.toMs - ae.fromMs), pe = Sc({
12646
12646
  deviceId: e,
12647
12647
  provider: He,
12648
12648
  fromMs: ae.fromMs,
12649
12649
  toMs: ae.toMs
12650
- }), me = Qs({
12650
+ }), me = $s({
12651
12651
  deviceId: e,
12652
12652
  since: ae.fromMs,
12653
12653
  until: ae.toMs,
@@ -12656,19 +12656,19 @@ function am({ deviceId: e }) {
12656
12656
  me.data,
12657
12657
  ae.fromMs,
12658
12658
  fe
12659
- ]), ye = r === null ? void 0 : ve.find((e) => e.index === r), be = ye !== void 0, xe = ye?.startMs ?? 0, Se = ye ? Math.min(ye.endMs, ae.toMs) : 0, z = Xs({
12659
+ ]), ye = r === null ? void 0 : ve.find((e) => e.index === r), be = ye !== void 0, xe = ye?.startMs ?? 0, Se = ye ? Math.min(ye.endMs, ae.toMs) : 0, z = Zs({
12660
12660
  deviceId: e,
12661
12661
  since: xe,
12662
12662
  until: Se,
12663
12663
  limit: te,
12664
12664
  projection: "slim"
12665
- }, { enabled: be && F.has("object") }), Ce = Ys({
12665
+ }, { enabled: be && F.has("object") }), Ce = Xs({
12666
12666
  deviceId: e,
12667
12667
  since: xe,
12668
12668
  until: Se,
12669
12669
  limit: te,
12670
12670
  projection: "slim"
12671
- }, { enabled: be && F.has("motion") }), we = Zs({
12671
+ }, { enabled: be && F.has("motion") }), we = Qs({
12672
12672
  deviceId: e,
12673
12673
  since: xe,
12674
12674
  until: Se,
@@ -12908,7 +12908,7 @@ function am({ deviceId: e }) {
12908
12908
  i();
12909
12909
  var om = 1440 * 60 * 1e3;
12910
12910
  function sm({ deviceId: e }) {
12911
- let t = lt(), n = Tc({ deviceId: e }), r = Sc({ deviceId: e }), i = Gs({ deviceId: e }).data?.location ?? null, a = Ks({ deviceId: e }), o = a.status === "pending" ? "pending" : a.status === "error" ? "unknown" : a.data.entries.some((e) => e.capName === "recording-signal") ? "present" : "absent", c = Cc(), l = wc(), { data: u } = Ec(void 0, { staleTime: 3e4 }), d = m(() => xe(u ?? [], e).map((e) => e.profile), [u, e]), f = (t) => {
12911
+ let t = lt(), n = Ec({ deviceId: e }), r = Cc({ deviceId: e }), i = Ks({ deviceId: e }).data?.location ?? null, a = qs({ deviceId: e }), o = a.status === "pending" ? "pending" : a.status === "error" ? "unknown" : a.data.entries.some((e) => e.capName === "recording-signal") ? "present" : "absent", c = wc(), l = Tc(), { data: u } = Dc(void 0, { staleTime: 3e4 }), d = m(() => xe(u ?? [], e).map((e) => e.profile), [u, e]), f = (t) => {
12912
12912
  c.mutate({
12913
12913
  deviceId: e,
12914
12914
  config: t
@@ -12923,7 +12923,7 @@ function sm({ deviceId: e }) {
12923
12923
  e,
12924
12924
  t,
12925
12925
  l
12926
- ]), h = m(() => Date.now(), []), g = xc({
12926
+ ]), h = m(() => Date.now(), []), g = Sc({
12927
12927
  deviceId: e,
12928
12928
  provider: He,
12929
12929
  fromMs: h - om,
@@ -13012,10 +13012,10 @@ var cm = {
13012
13012
  "host/privacy-mask-grid": f(() => import("./PrivacyMaskSettings-DxR_4RPW.mjs").then((e) => ({ default: e.PrivacyMaskSettings }))),
13013
13013
  "host/ptz-panel": np,
13014
13014
  "host/navigation-panel": Jf,
13015
- "host/consumables-panel": Qu,
13016
- "host/ptz-autotrack": vu,
13015
+ "host/consumables-panel": $u,
13016
+ "host/ptz-autotrack": yu,
13017
13017
  "host/recording-panel": sm,
13018
- "host/camera-grid-layout": zu,
13018
+ "host/camera-grid-layout": Bu,
13019
13019
  "host/clips-browser": gf,
13020
13020
  "host/extensions-panel": Lf
13021
13021
  };
@@ -13033,7 +13033,7 @@ function lm(e) {
13033
13033
  });
13034
13034
  }
13035
13035
  function um(e) {
13036
- let { widgetId: t } = e, n = fu(t);
13036
+ let { widgetId: t } = e, n = pu(t);
13037
13037
  return n === void 0 ? /* @__PURE__ */ H(pm, {
13038
13038
  widgetId: t,
13039
13039
  reason: "unknown"
@@ -13043,7 +13043,7 @@ function um(e) {
13043
13043
  });
13044
13044
  }
13045
13045
  function dm(e) {
13046
- let { widgetId: t, host: n = "device-tab", config: r, deviceId: i, integrationId: a, instanceId: o, size: s, columns: c, rows: l, metadata: u } = e, d = pu(u.remote, u.bundleUrl), f = m(() => o ?? t, [o, t]);
13046
+ let { widgetId: t, host: n = "device-tab", config: r, deviceId: i, integrationId: a, instanceId: o, size: s, columns: c, rows: l, metadata: u } = e, d = mu(u.remote, u.bundleUrl), f = m(() => o ?? t, [o, t]);
13047
13047
  return d === null ? /* @__PURE__ */ H(fm, {}) : d === void 0 ? /* @__PURE__ */ H(pm, {
13048
13048
  widgetId: t,
13049
13049
  reason: "missing-export"
@@ -14078,35 +14078,36 @@ function Wm({ value: e, onChange: t, disabled: n }) {
14078
14078
  //#region ../ui-library/src/composites/config-form-field.tsx
14079
14079
  i();
14080
14080
  var Gm = "w-full rounded-md border border-border bg-background px-2.5 py-1.5 text-xs text-foreground focus:border-primary focus:ring-1 focus:ring-primary/30 outline-none disabled:opacity-50 disabled:cursor-not-allowed", Km = "block text-[11px] font-medium text-foreground mb-1 break-words", qm = "text-[10px] text-foreground-subtle mt-0.5 break-words";
14081
- function Jm({ label: e, description: t, required: n, span: r, children: i, translationFn: a }) {
14082
- let o = r === 2 ? "col-span-1 @[480px]:col-span-2" : r === 3 ? "col-span-1 @[480px]:col-span-2 @[880px]:col-span-3" : r === 4 ? "col-span-1 @[480px]:col-span-2 @[1140px]:col-span-4" : "col-span-1", s = zh(e, a), c = zh(t, a), l = s !== void 0 && s !== "";
14081
+ function Jm({ label: e, description: t, required: n, span: r, htmlFor: i, children: a, translationFn: o }) {
14082
+ let s = r === 2 ? "col-span-1 @[480px]:col-span-2" : r === 3 ? "col-span-1 @[480px]:col-span-2 @[880px]:col-span-3" : r === 4 ? "col-span-1 @[480px]:col-span-2 @[1140px]:col-span-4" : "col-span-1", c = zh(e, o), l = zh(t, o), u = c !== void 0 && c !== "";
14083
14083
  return /* @__PURE__ */ U("div", {
14084
- className: `${o} min-w-0`,
14084
+ className: `${s} min-w-0`,
14085
14085
  children: [
14086
- l && /* @__PURE__ */ U("label", {
14086
+ u && /* @__PURE__ */ U("label", {
14087
14087
  className: Km,
14088
- children: [s, n && /* @__PURE__ */ H("span", {
14088
+ ...i === void 0 ? {} : { htmlFor: i },
14089
+ children: [c, n && /* @__PURE__ */ H("span", {
14089
14090
  className: "text-danger ml-0.5",
14090
14091
  children: "*"
14091
14092
  })]
14092
14093
  }),
14093
- i,
14094
- c && /* @__PURE__ */ H("p", {
14094
+ a,
14095
+ l && /* @__PURE__ */ H("p", {
14095
14096
  className: qm,
14096
- children: c
14097
+ children: l
14097
14098
  })
14098
14099
  ]
14099
14100
  });
14100
14101
  }
14101
14102
  function Ym({ field: e, value: t, onChange: n, disabled: r, translationFn: i, multiline: o, children: s }) {
14102
- let [c] = a(() => et(e) && Fs(t));
14103
+ let [c] = a(() => et(e) && Is(t));
14103
14104
  return c ? /* @__PURE__ */ H(Jm, {
14104
14105
  label: "label" in e ? e.label : void 0,
14105
14106
  description: "description" in e ? e.description : void 0,
14106
14107
  required: "required" in e ? e.required : void 0,
14107
14108
  span: "span" in e ? e.span : void 0,
14108
14109
  translationFn: i,
14109
- children: /* @__PURE__ */ H(zs, {
14110
+ children: /* @__PURE__ */ H(Bs, {
14110
14111
  field: e,
14111
14112
  value: t,
14112
14113
  onChange: n,
@@ -14237,25 +14238,26 @@ function Qm({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
14237
14238
  });
14238
14239
  }
14239
14240
  function $m({ field: e, value: t, onChange: n, disabled: r, translationFn: i }) {
14240
- let a = e.options.some((e) => e.value === "");
14241
+ let a = e.options.some((e) => e.value === ""), o = [...!e.required && !a ? [{
14242
+ value: "",
14243
+ label: "— Select —"
14244
+ }] : [], ...e.options.map((e) => ({
14245
+ value: e.value,
14246
+ label: e.label
14247
+ }))], s = `config-select-${e.key}`;
14241
14248
  return /* @__PURE__ */ H(Jm, {
14242
14249
  label: e.label,
14243
14250
  description: e.description,
14244
14251
  required: e.required,
14245
14252
  span: e.span,
14253
+ htmlFor: s,
14246
14254
  translationFn: i,
14247
- children: /* @__PURE__ */ U("select", {
14248
- className: Gm,
14255
+ children: /* @__PURE__ */ H(Ms, {
14256
+ id: s,
14257
+ options: o,
14249
14258
  value: t == null ? "" : String(t),
14250
14259
  disabled: r || e.disabled,
14251
- onChange: (e) => n(e.target.value),
14252
- children: [!e.required && !a && /* @__PURE__ */ H("option", {
14253
- value: "",
14254
- children: "— Select —"
14255
- }), e.options.map((e) => /* @__PURE__ */ H("option", {
14256
- value: e.value,
14257
- children: e.label
14258
- }, e.value))]
14260
+ onChange: (e) => n(e.target.value)
14259
14261
  })
14260
14262
  });
14261
14263
  }
@@ -14322,7 +14324,7 @@ function nh({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
14322
14324
  disabled: r || e.disabled,
14323
14325
  onChange: () => o(t.value)
14324
14326
  }),
14325
- t.iconId !== void 0 && /* @__PURE__ */ H(fl, {
14327
+ t.iconId !== void 0 && /* @__PURE__ */ H(pl, {
14326
14328
  iconId: t.iconId,
14327
14329
  size: 13
14328
14330
  }),
@@ -14488,7 +14490,7 @@ function oh({ field: e, value: t, onChange: n, disabled: r, translationFn: i })
14488
14490
  required: e.required,
14489
14491
  span: e.span,
14490
14492
  translationFn: i,
14491
- children: /* @__PURE__ */ H(kl, {
14493
+ children: /* @__PURE__ */ H(Al, {
14492
14494
  mode: "multi",
14493
14495
  options: s,
14494
14496
  value: a,
@@ -14993,7 +14995,7 @@ function Ch({ field: e, value: t, onChange: n, disabled: r, translationFn: i, on
14993
14995
  });
14994
14996
  }
14995
14997
  function wh({ field: e, disabled: t, onAction: n }) {
14996
- let [r, i] = a(!1), o = Wl(), s = async () => {
14998
+ let [r, i] = a(!1), o = Gl(), s = async () => {
14997
14999
  if (!(e.confirmMessage && !await o({
14998
15000
  title: e.label,
14999
15001
  message: e.confirmMessage,
@@ -15109,7 +15111,7 @@ function Eh({ field: e, value: t, values: n, onChange: r, disabled: i, onAction:
15109
15111
  });
15110
15112
  }
15111
15113
  function Dh({ field: e, values: t, disabled: n, onAction: r }) {
15112
- let [i, o] = a(!1), [s, c] = a(null), l = Wl(), u = Gl(), d = ql(), f = async () => {
15114
+ let [i, o] = a(!1), [s, c] = a(null), l = Gl(), u = Kl(), d = Jl(), f = async () => {
15113
15115
  let n = e.prompt ? await u({
15114
15116
  title: e.prompt.title ?? e.label,
15115
15117
  ...e.prompt.message === void 0 ? {} : { message: e.prompt.message },
@@ -15166,7 +15168,7 @@ function Dh({ field: e, values: t, disabled: n, onAction: r }) {
15166
15168
  });
15167
15169
  }
15168
15170
  function Oh({ field: e, values: t, disabled: n, onAction: r }) {
15169
- let [i, o] = a(!1), [s, c] = a(null), l = Wl(), u = async () => {
15171
+ let [i, o] = a(!1), [s, c] = a(null), l = Gl(), u = async () => {
15170
15172
  if (e.confirmMessage && !await l({
15171
15173
  title: e.label,
15172
15174
  message: e.confirmMessage,
@@ -15217,7 +15219,7 @@ function Oh({ field: e, values: t, disabled: n, onAction: r }) {
15217
15219
  });
15218
15220
  }
15219
15221
  function kh({ field: e }) {
15220
- let t = ql();
15222
+ let t = Jl();
15221
15223
  return /* @__PURE__ */ H(Jm, {
15222
15224
  label: void 0,
15223
15225
  description: void 0,
@@ -15279,7 +15281,7 @@ function Mh({ name: e }) {
15279
15281
  }
15280
15282
  }
15281
15283
  function Nh({ action: e, fieldKey: t, value: n, onAction: r }) {
15282
- let i = Wl(), [o, s] = a(!1), c = e.variant === "danger" ? "text-danger hover:bg-danger/10 border-danger/30" : e.variant === "primary" ? "text-primary hover:bg-primary/10 border-primary/30" : "text-foreground-subtle hover:text-foreground hover:bg-surface-hover border-border";
15284
+ let i = Gl(), [o, s] = a(!1), c = e.variant === "danger" ? "text-danger hover:bg-danger/10 border-danger/30" : e.variant === "primary" ? "text-primary hover:bg-primary/10 border-primary/30" : "text-foreground-subtle hover:text-foreground hover:bg-surface-hover border-border";
15283
15285
  return /* @__PURE__ */ H("button", {
15284
15286
  type: "button",
15285
15287
  onClick: async () => {
@@ -15420,7 +15422,7 @@ function Lh({ field: e, values: t, onChange: n, disabled: r, translationFn: i, o
15420
15422
  translationFn: i
15421
15423
  });
15422
15424
  if (!Ih(e, t, s)) return null;
15423
- let l = t[e.key], u = l === void 0 ? "default" in e ? e.default : void 0 : l, d = (t) => n(e.key, t), f = Vl(e.type);
15425
+ let l = t[e.key], u = l === void 0 ? "default" in e ? e.default : void 0 : l, d = (t) => n(e.key, t), f = Hl(e.type);
15424
15426
  switch (e.type) {
15425
15427
  case "text": return /* @__PURE__ */ H(Ym, {
15426
15428
  field: e,
@@ -15549,28 +15551,28 @@ function Lh({ field: e, values: t, onChange: n, disabled: r, translationFn: i, o
15549
15551
  disabled: r,
15550
15552
  translationFn: i
15551
15553
  });
15552
- case "device-select": return /* @__PURE__ */ H(ol, {
15554
+ case "device-select": return /* @__PURE__ */ H(sl, {
15553
15555
  field: e,
15554
15556
  value: u,
15555
15557
  onChange: d,
15556
15558
  disabled: r,
15557
15559
  translationFn: i
15558
15560
  });
15559
- case "device-multiselect": return /* @__PURE__ */ H(sl, {
15561
+ case "device-multiselect": return /* @__PURE__ */ H(cl, {
15560
15562
  field: e,
15561
15563
  value: u,
15562
15564
  onChange: d,
15563
15565
  disabled: r,
15564
15566
  translationFn: i
15565
15567
  });
15566
- case "notification-target-select": return /* @__PURE__ */ H(zl, {
15568
+ case "notification-target-select": return /* @__PURE__ */ H(Bl, {
15567
15569
  field: e,
15568
15570
  value: u,
15569
15571
  onChange: d,
15570
15572
  disabled: r,
15571
15573
  translationFn: i
15572
15574
  });
15573
- case "notification-target-multiselect": return /* @__PURE__ */ H(Rl, {
15575
+ case "notification-target-multiselect": return /* @__PURE__ */ H(zl, {
15574
15576
  field: e,
15575
15577
  value: u,
15576
15578
  onChange: d,
@@ -16058,7 +16060,7 @@ function _g({ value: e, className: t, ...n }) {
16058
16060
  "aria-selected": o,
16059
16061
  "aria-controls": `tabpanel-${e}`,
16060
16062
  tabIndex: o ? 0 : -1,
16061
- className: Y("h-7 shrink-0 whitespace-nowrap text-xs px-3 transition-colors", a === "pills" ? o ? "rounded-md bg-primary/10 font-medium text-primary" : "rounded-md text-foreground-muted hover:bg-surface-hover hover:text-foreground" : o ? "border-b-2 border-primary text-foreground font-medium" : "text-foreground-muted hover:text-foreground", t),
16063
+ className: Y("inline-flex h-7 shrink-0 items-center justify-center gap-1.5 whitespace-nowrap text-xs px-3 transition-colors", a === "pills" ? o ? "rounded-md bg-primary/10 font-medium text-primary" : "rounded-md text-foreground-muted hover:bg-surface-hover hover:text-foreground" : o ? "border-b-2 border-primary text-foreground font-medium" : "text-foreground-muted hover:text-foreground", t),
16062
16064
  onClick: () => i(e),
16063
16065
  ...n
16064
16066
  });
@@ -18723,7 +18725,7 @@ function Ly(e) {
18723
18725
  return e === "home" ? "Home" : e === "not_home" ? "Away" : e.charAt(0).toUpperCase() + e.slice(1);
18724
18726
  }
18725
18727
  function Ry({ trpc: e, device: t }) {
18726
- let n = t.role == null ? void 0 : jy[t.role], r = ky(t.role), { data: i } = Us({}, { staleTime: 6e4 }), a = A(e, t.id), o = C(a !== null && n !== void 0 ? n.getSliceHandle(a.state) : void 0), s = C(a !== null && n?.kind === "numeric" ? a.state.enumSensor : void 0), c = C(a !== null && r ? a.state.binary : void 0), l = r && n?.kind === "numeric" && !Ay(o, n.field) && c !== void 0, u = l ? Oy : n, d = l ? c : o;
18728
+ let n = t.role == null ? void 0 : jy[t.role], r = ky(t.role), { data: i } = Ws({}, { staleTime: 6e4 }), a = A(e, t.id), o = C(a !== null && n !== void 0 ? n.getSliceHandle(a.state) : void 0), s = C(a !== null && n?.kind === "numeric" ? a.state.enumSensor : void 0), c = C(a !== null && r ? a.state.binary : void 0), l = r && n?.kind === "numeric" && !Ay(o, n.field) && c !== void 0, u = l ? Oy : n, d = l ? c : o;
18727
18729
  if (u === void 0 || d === void 0) return null;
18728
18730
  if (u.kind === "numeric") {
18729
18731
  if (!My(d)) return null;
@@ -19171,7 +19173,7 @@ function Xy(e) {
19171
19173
  };
19172
19174
  }
19173
19175
  function Zy({ trpc: e, deviceId: t }) {
19174
- let { data: n } = Gs({ deviceId: t }, { staleTime: 6e4 });
19176
+ let { data: n } = Ks({ deviceId: t }, { staleTime: 6e4 });
19175
19177
  return n === void 0 ? null : /* @__PURE__ */ H(Ry, {
19176
19178
  trpc: e,
19177
19179
  device: Xy(n)
@@ -19212,7 +19214,7 @@ function ib({ percent: e }) {
19212
19214
  });
19213
19215
  }
19214
19216
  function ab({ trpc: e, device: t }) {
19215
- let n = t.role == null ? jy["temperature-sensor"] : jy[t.role], r = ky(t.role), { data: i } = Us({}, { staleTime: 6e4 }), a = A(e, t.id), o = C(a !== null && n !== void 0 ? n.getSliceHandle(a.state) : void 0), s = C(a !== null && r ? a.state.binary : void 0), c = C(a !== null && !r ? a.state.binary : void 0), l = r && n?.kind === "numeric" && !Ay(o, n.field) && s !== void 0, u = l ? Oy : n, d = l ? s : o;
19217
+ let n = t.role == null ? jy["temperature-sensor"] : jy[t.role], r = ky(t.role), { data: i } = Ws({}, { staleTime: 6e4 }), a = A(e, t.id), o = C(a !== null && n !== void 0 ? n.getSliceHandle(a.state) : void 0), s = C(a !== null && r ? a.state.binary : void 0), c = C(a !== null && !r ? a.state.binary : void 0), l = r && n?.kind === "numeric" && !Ay(o, n.field) && s !== void 0, u = l ? Oy : n, d = l ? s : o;
19216
19218
  if (u === void 0 || d === void 0) return /* @__PURE__ */ U("div", {
19217
19219
  className: "flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4 min-h-[96px]",
19218
19220
  children: [/* @__PURE__ */ H("span", {
@@ -19323,7 +19325,7 @@ function ab({ trpc: e, device: t }) {
19323
19325
  });
19324
19326
  }
19325
19327
  function ob({ trpc: e, deviceId: t }) {
19326
- let { data: n } = Gs({ deviceId: t }, { staleTime: 6e4 });
19328
+ let { data: n } = Ks({ deviceId: t }, { staleTime: 6e4 });
19327
19329
  return n === void 0 ? null : /* @__PURE__ */ H(ab, {
19328
19330
  trpc: e,
19329
19331
  device: n
@@ -28573,7 +28575,7 @@ function Bj({ filters: e, onFiltersChange: t, typeOptions: n, zoneOptions: r, lo
28573
28575
  children: [
28574
28576
  s !== void 0 && /* @__PURE__ */ H(Lj, { grouping: s }),
28575
28577
  /* @__PURE__ */ U("div", {
28576
- className: pl,
28578
+ className: ml,
28577
28579
  children: [/* @__PURE__ */ H(fi, { className: "h-3.5 w-3.5 shrink-0 text-foreground-subtle" }), /* @__PURE__ */ H("input", {
28578
28580
  type: "text",
28579
28581
  value: f,
@@ -28862,7 +28864,7 @@ function fM({ devices: e, listState: t, fleet: n, value: r, onChange: i, emptyMe
28862
28864
  w.length === 0 ? /* @__PURE__ */ H("span", {
28863
28865
  className: "text-[11px] text-foreground-subtle",
28864
28866
  children: u ?? (o ? `Every ${c} — no restriction` : "None selected")
28865
- }) : T.shown.map((e) => /* @__PURE__ */ H(ml, {
28867
+ }) : T.shown.map((e) => /* @__PURE__ */ H(hl, {
28866
28868
  testId: `picker-chip-${String(e.id)}`,
28867
28869
  label: e.label,
28868
28870
  warning: e.removed,
@@ -29419,7 +29421,7 @@ function JM({ boxes: e, selectedKey: t, onSelect: n, onChange: r, onAccept: i, o
29419
29421
  /* @__PURE__ */ U("div", {
29420
29422
  className: "flex items-center gap-2 flex-wrap",
29421
29423
  children: [
29422
- /* @__PURE__ */ H(nd, {
29424
+ /* @__PURE__ */ H(Ms, {
29423
29425
  className: "w-28",
29424
29426
  "aria-label": "Class",
29425
29427
  value: e.macroClass,
@@ -29432,15 +29434,15 @@ function JM({ boxes: e, selectedKey: t, onSelect: n, onChange: r, onAccept: i, o
29432
29434
  n !== void 0 && r(e.key, { macroClass: n });
29433
29435
  }
29434
29436
  }),
29435
- e.draft && /* @__PURE__ */ H(ll, {
29437
+ e.draft && /* @__PURE__ */ H(ul, {
29436
29438
  variant: "warning",
29437
29439
  children: "draft"
29438
29440
  }),
29439
- e.kind === "model_error" && /* @__PURE__ */ H(ll, {
29441
+ e.kind === "model_error" && /* @__PURE__ */ H(ul, {
29440
29442
  variant: "danger",
29441
29443
  children: "model error"
29442
29444
  }),
29443
- u !== null && /* @__PURE__ */ H(ll, {
29445
+ u !== null && /* @__PURE__ */ H(ul, {
29444
29446
  variant: "info",
29445
29447
  children: u
29446
29448
  }),
@@ -29588,7 +29590,7 @@ var $M = [
29588
29590
  "malformed-answer": "The AI answered in a shape that cannot be trusted, so nothing was drawn."
29589
29591
  };
29590
29592
  function rN({ frame: e, history: t, detector: n, schema: r, setNotice: i }) {
29591
- let o = sc({}, { retry: !1 }), s = nc(), c = cc(), [l, d] = a("teacher"), f = m(() => ZM(r, n.kind === "resolved" ? n.modelId : void 0), [r, n]), [p, h] = a(null), g = f.find((e) => e.modelId === p) ?? f[0], [_, v] = a(XM), [y, b] = a(null), x = (o.data ?? []).find((e) => e.id === y) ?? o.data?.[0], [S, C] = a(eN), [w, T] = a(!1), [E, D] = a(!1), O = u(t.editor);
29593
+ let o = cc({}, { retry: !1 }), s = rc(), c = lc(), [l, d] = a("teacher"), f = m(() => ZM(r, n.kind === "resolved" ? n.modelId : void 0), [r, n]), [p, h] = a(null), g = f.find((e) => e.modelId === p) ?? f[0], [_, v] = a(XM), [y, b] = a(null), x = (o.data ?? []).find((e) => e.id === y) ?? o.data?.[0], [S, C] = a(eN), [w, T] = a(!1), [E, D] = a(!1), O = u(t.editor);
29592
29594
  O.current = t.editor;
29593
29595
  let k = l !== "llm", A = l !== "teacher", j = n.kind === "resolved" && g !== void 0, M = x !== void 0 && S.length > 0, N = (!k || j) && (!A || M), P = async () => {
29594
29596
  if (n.kind !== "resolved" || g === void 0) return "";
@@ -29667,7 +29669,7 @@ function rN({ frame: e, history: t, detector: n, schema: r, setNotice: i }) {
29667
29669
  className: "font-semibold text-foreground",
29668
29670
  children: "Assist"
29669
29671
  }),
29670
- /* @__PURE__ */ H(nd, {
29672
+ /* @__PURE__ */ H(Ms, {
29671
29673
  className: "w-36",
29672
29674
  "aria-label": "Assist engine",
29673
29675
  value: l,
@@ -29705,7 +29707,7 @@ function rN({ frame: e, history: t, detector: n, schema: r, setNotice: i }) {
29705
29707
  }) : /* @__PURE__ */ U("div", {
29706
29708
  className: "flex items-center gap-2 flex-wrap",
29707
29709
  children: [
29708
- /* @__PURE__ */ H(nd, {
29710
+ /* @__PURE__ */ H(Ms, {
29709
29711
  className: "flex-1 min-w-40",
29710
29712
  "aria-label": "Larger detector",
29711
29713
  value: g?.modelId ?? "",
@@ -29742,7 +29744,7 @@ function rN({ frame: e, history: t, detector: n, schema: r, setNotice: i }) {
29742
29744
  }) : /* @__PURE__ */ U("div", {
29743
29745
  className: "space-y-1.5",
29744
29746
  children: [
29745
- /* @__PURE__ */ H(nd, {
29747
+ /* @__PURE__ */ H(Ms, {
29746
29748
  "aria-label": "AI profile",
29747
29749
  value: x?.id ?? "",
29748
29750
  options: (o.data ?? []).map((e) => ({
@@ -30615,16 +30617,16 @@ var eP = "person", tP = {
30615
30617
  "no-model": "No object-detection model on that accelerator can be resolved for this camera."
30616
30618
  };
30617
30619
  function nP({ frames: e, activeFrameId: t, onActiveFrame: n, onFramesChanged: r, onSaved: i, setNotice: o }) {
30618
- let c = e.find((e) => e.frameId === t), l = c?.deviceId ?? null, d = XN(() => OM([], [])), { editor: f, setEditor: p, resetEditor: h, selectOnly: g } = d, _ = IN(), v = rc({ frameIds: [t] }), b = tc({ frameId: t }), x = nc(), S = ic(), C = oc(), w = _c({ deviceIds: l === null ? [] : [l] }, {
30620
+ let c = e.find((e) => e.frameId === t), l = c?.deviceId ?? null, d = XN(() => OM([], [])), { editor: f, setEditor: p, resetEditor: h, selectOnly: g } = d, _ = IN(), v = ic({ frameIds: [t] }), b = nc({ frameId: t }), x = rc(), S = ac(), C = sc(), w = vc({ deviceIds: l === null ? [] : [l] }, {
30619
30621
  enabled: l !== null,
30620
30622
  staleTime: 3e4
30621
- }), T = w.data?.[0]?.detection?.nodeId ?? null, E = hc({ nodeId: T ?? "" }, {
30623
+ }), T = w.data?.[0]?.detection?.nodeId ?? null, E = gc({ nodeId: T ?? "" }, {
30622
30624
  enabled: T !== null,
30623
30625
  staleTime: 3e4
30624
- }), D = mc({ nodeId: T ?? "" }, {
30626
+ }), D = hc({ nodeId: T ?? "" }, {
30625
30627
  enabled: T !== null,
30626
30628
  staleTime: 3e4
30627
- }), O = gc({ deviceId: l ?? 0 }, {
30629
+ }), O = _c({ deviceId: l ?? 0 }, {
30628
30630
  enabled: l !== null,
30629
30631
  staleTime: 3e4
30630
30632
  }), k = m(() => SM({
@@ -30781,7 +30783,7 @@ function nP({ frames: e, activeFrameId: t, onActiveFrame: n, onFramesChanged: r,
30781
30783
  className: "text-xs font-semibold text-foreground flex-1",
30782
30784
  children: "Subjects"
30783
30785
  }),
30784
- c?.origin === "recording" && /* @__PURE__ */ H(ll, {
30786
+ c?.origin === "recording" && /* @__PURE__ */ H(ul, {
30785
30787
  variant: "info",
30786
30788
  children: "from the recording"
30787
30789
  }),
@@ -31016,7 +31018,7 @@ function iP({ collections: e, isLoading: t, selectedId: n, onSelect: r, onCreate
31016
31018
  },
31017
31019
  children: e.name
31018
31020
  }),
31019
- /* @__PURE__ */ H(ll, { children: e.frameCount }),
31021
+ /* @__PURE__ */ H(ul, { children: e.frameCount }),
31020
31022
  /* @__PURE__ */ H(Z, {
31021
31023
  variant: "ghost",
31022
31024
  size: "sm",
@@ -31124,7 +31126,7 @@ function pP(e) {
31124
31126
  return e ?? "all";
31125
31127
  }
31126
31128
  function mP({ filter: e, onChange: t, cameraItems: n, camerasListState: r, collections: i, collectionsPending: o }) {
31127
- let s = ac(m(() => ({
31129
+ let s = oc(m(() => ({
31128
31130
  ...e.workState === void 0 ? {} : { workState: e.workState },
31129
31131
  ...e.deviceIds.length > 0 ? { deviceIds: [...e.deviceIds] } : {},
31130
31132
  ...e.collectionId === void 0 ? {} : { collectionId: e.collectionId },
@@ -31196,7 +31198,7 @@ function mP({ filter: e, onChange: t, cameraItems: n, camerasListState: r, colle
31196
31198
  }),
31197
31199
  /* @__PURE__ */ H("div", {
31198
31200
  className: "w-full min-w-0 sm:w-52",
31199
- children: /* @__PURE__ */ H(nd, {
31201
+ children: /* @__PURE__ */ H(Ms, {
31200
31202
  "aria-label": "Collection",
31201
31203
  "data-testid": "corpus-collection-filter",
31202
31204
  value: e.collectionId ?? "",
@@ -31275,7 +31277,7 @@ var gP = [
31275
31277
  100
31276
31278
  ];
31277
31279
  function _P({ frame: e, cameraName: t, onOpen: n }) {
31278
- let r = tc({ frameId: e.frameId }), i = hP(e.workState), a = r.data === void 0 ? void 0 : `data:image/jpeg;base64,${r.data.base64}`;
31280
+ let r = nc({ frameId: e.frameId }), i = hP(e.workState), a = r.data === void 0 ? void 0 : `data:image/jpeg;base64,${r.data.base64}`;
31279
31281
  return /* @__PURE__ */ U("button", {
31280
31282
  type: "button",
31281
31283
  className: "group flex min-w-0 flex-col overflow-hidden rounded-md border border-border bg-surface text-left hover:border-primary/40 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary/40",
@@ -31292,7 +31294,7 @@ function _P({ frame: e, cameraName: t, onOpen: n }) {
31292
31294
  className: "h-full w-full object-cover"
31293
31295
  }), /* @__PURE__ */ H("div", {
31294
31296
  className: "absolute left-1 top-1",
31295
- children: /* @__PURE__ */ H(ll, {
31297
+ children: /* @__PURE__ */ H(ul, {
31296
31298
  variant: i.variant,
31297
31299
  children: i.label
31298
31300
  })
@@ -31577,7 +31579,7 @@ function zP() {
31577
31579
  defaultSize: 50
31578
31580
  }), [i, o] = a(null), c = s((e) => {
31579
31581
  t(e), FP(e);
31580
- }, []), l = Ws({
31582
+ }, []), l = Gs({
31581
31583
  projection: "slim",
31582
31584
  isCamera: !0
31583
31585
  }), u = m(() => {
@@ -31589,7 +31591,7 @@ function zP() {
31589
31591
  name: e.name,
31590
31592
  type: e.type,
31591
31593
  location: typeof e.location == "string" ? e.location : null
31592
- })), [l.data]), f = Zj(l), p = ec({}), h = $s(RP(e, n)), g = uc({}), _ = lc(), v = dc(), b = fc();
31594
+ })), [l.data]), f = Zj(l), p = tc({}), h = ec(RP(e, n)), g = dc({}), _ = uc(), v = fc(), b = pc();
31593
31595
  y(() => {
31594
31596
  let t = h.data?.total;
31595
31597
  if (t === void 0) return;
@@ -31982,7 +31984,7 @@ function oF(e, t, n = {}) {
31982
31984
  //#region src/page/ResultPanel.tsx
31983
31985
  i();
31984
31986
  function sF({ job: e, trpc: t, onChanged: n, cameraName: r }) {
31985
- let i = Wl(), o = oF(() => t.training.getJobResult.query({ id: e.id }), [e.id, e.state]), s = oF(async () => (await t.deviceManager.listAll.query({ slim: !0 })).filter((e) => e.type === "camera"), []), [c, l] = a([]), [u, d] = a(!1), [f, p] = a(null), m = async (e) => {
31987
+ let i = Gl(), o = oF(() => t.training.getJobResult.query({ id: e.id }), [e.id, e.state]), s = oF(async () => (await t.deviceManager.listAll.query({ slim: !0 })).filter((e) => e.type === "camera"), []), [c, l] = a([]), [u, d] = a(!1), [f, p] = a(null), m = async (e) => {
31986
31988
  d(!0), p(null);
31987
31989
  try {
31988
31990
  await e(), n();
@@ -32064,7 +32066,7 @@ function sF({ job: e, trpc: t, onChanged: n, cameraName: r }) {
32064
32066
  e.canary !== null && /* @__PURE__ */ U("p", {
32065
32067
  className: "text-sm text-foreground",
32066
32068
  children: [
32067
- /* @__PURE__ */ H(ll, {
32069
+ /* @__PURE__ */ H(ul, {
32068
32070
  variant: "success",
32069
32071
  children: "Canary"
32070
32072
  }),
@@ -32230,11 +32232,11 @@ function fF({ job: e, trpc: t, onChanged: n, cameraName: r, collectionName: i })
32230
32232
  className: "font-semibold text-foreground",
32231
32233
  children: e.name
32232
32234
  }),
32233
- /* @__PURE__ */ H(ll, {
32235
+ /* @__PURE__ */ H(ul, {
32234
32236
  variant: tF(e.state),
32235
32237
  children: VP[e.state]
32236
32238
  }),
32237
- e.stage !== null && !UP(e.state) && /* @__PURE__ */ H(ll, {
32239
+ e.stage !== null && !UP(e.state) && /* @__PURE__ */ H(ul, {
32238
32240
  variant: "info",
32239
32241
  children: e.stage
32240
32242
  }),
@@ -32351,7 +32353,7 @@ function mF({ job: e }) {
32351
32353
  });
32352
32354
  }
32353
32355
  function hF({ job: e, trpc: t, onChanged: n }) {
32354
- let r = Wl(), [i, o] = a(null);
32356
+ let r = Gl(), [i, o] = a(null);
32355
32357
  if (UP(e.state) || e.state === "cancelling") return null;
32356
32358
  let s = async () => {
32357
32359
  if (await r({
@@ -32415,10 +32417,10 @@ function gF({ jobs: e, trpc: t, onChanged: n, cameraName: r, collectionName: i }
32415
32417
  sortValue: (e) => e.state,
32416
32418
  render: (e) => /* @__PURE__ */ U("span", {
32417
32419
  className: "inline-flex flex-wrap items-center gap-1",
32418
- children: [/* @__PURE__ */ H(ll, {
32420
+ children: [/* @__PURE__ */ H(ul, {
32419
32421
  variant: tF(e.state),
32420
32422
  children: VP[e.state]
32421
- }), e.stage !== null && !UP(e.state) && /* @__PURE__ */ H(ll, {
32423
+ }), e.stage !== null && !UP(e.state) && /* @__PURE__ */ H(ul, {
32422
32424
  variant: "info",
32423
32425
  children: e.stage
32424
32426
  })]
@@ -32725,7 +32727,7 @@ function kF(e) {
32725
32727
  return t;
32726
32728
  }
32727
32729
  function AF({ trpc: e, providers: t, baseModels: n, collections: r, cameraName: i, onStarted: o, onClose: s }) {
32728
- let c = Wl(), { nodes: l } = Aa(), u = m(() => l.filter((e) => e.isOnline).map((e) => e.id), [l]), d = u.join("\0"), [f, p] = a(TF), [h, g] = a(""), [_, v] = a(""), [b, x] = a(""), [S, C] = a(null), [w, T] = a(!1), [E, D] = a(!1), [O, k] = a(!1), A = oF(async () => {
32730
+ let c = Gl(), { nodes: l } = Aa(), u = m(() => l.filter((e) => e.isOnline).map((e) => e.id), [l]), d = u.join("\0"), [f, p] = a(TF), [h, g] = a(""), [_, v] = a(""), [b, x] = a(""), [S, C] = a(null), [w, T] = a(!1), [E, D] = a(!1), [O, k] = a(!1), A = oF(async () => {
32729
32731
  if (n.length === 0) return {
32730
32732
  models: [],
32731
32733
  clusterRootModelIds: []
@@ -32849,7 +32851,7 @@ function AF({ trpc: e, providers: t, baseModels: n, collections: r, cameraName:
32849
32851
  }) : /* @__PURE__ */ U(W, { children: [
32850
32852
  /* @__PURE__ */ U(Xh, {
32851
32853
  className: "space-y-1",
32852
- children: [/* @__PURE__ */ H("span", { children: "Provider entry" }), /* @__PURE__ */ H(nd, {
32854
+ children: [/* @__PURE__ */ H("span", { children: "Provider entry" }), /* @__PURE__ */ H(Ms, {
32853
32855
  value: f.entryId,
32854
32856
  onChange: (e) => {
32855
32857
  let n = t.find((t) => t.entryId === e.target.value);
@@ -32891,7 +32893,7 @@ function AF({ trpc: e, providers: t, baseModels: n, collections: r, cameraName:
32891
32893
  }),
32892
32894
  /* @__PURE__ */ U(Xh, {
32893
32895
  className: "space-y-1",
32894
- children: [/* @__PURE__ */ H("span", { children: "Frame work state" }), /* @__PURE__ */ H(nd, {
32896
+ children: [/* @__PURE__ */ H("span", { children: "Frame work state" }), /* @__PURE__ */ H(Ms, {
32895
32897
  value: f.workState,
32896
32898
  onChange: (e) => {
32897
32899
  let t = e.target.value;
@@ -32937,7 +32939,7 @@ function AF({ trpc: e, providers: t, baseModels: n, collections: r, cameraName:
32937
32939
  children: [
32938
32940
  /* @__PURE__ */ U(Xh, {
32939
32941
  className: "space-y-1",
32940
- children: [/* @__PURE__ */ H("span", { children: "Preset" }), /* @__PURE__ */ H(nd, {
32942
+ children: [/* @__PURE__ */ H("span", { children: "Preset" }), /* @__PURE__ */ H(Ms, {
32941
32943
  value: f.preset,
32942
32944
  onChange: (e) => L({ preset: e.target.value === "quick" ? "quick" : e.target.value === "thorough" ? "thorough" : "standard" }),
32943
32945
  options: Object.entries(xF).map(([e, t]) => ({
@@ -32957,7 +32959,7 @@ function AF({ trpc: e, providers: t, baseModels: n, collections: r, cameraName:
32957
32959
  }),
32958
32960
  /* @__PURE__ */ U(Xh, {
32959
32961
  className: "space-y-1",
32960
- children: [/* @__PURE__ */ H("span", { children: "GPU" }), /* @__PURE__ */ H(nd, {
32962
+ children: [/* @__PURE__ */ H("span", { children: "GPU" }), /* @__PURE__ */ H(Ms, {
32961
32963
  value: f.gpuType,
32962
32964
  onChange: (e) => L({ gpuType: e.target.value }),
32963
32965
  options: (I?.gpuTypes ?? []).map((e) => ({
@@ -32968,7 +32970,7 @@ function AF({ trpc: e, providers: t, baseModels: n, collections: r, cameraName:
32968
32970
  }),
32969
32971
  /* @__PURE__ */ U(Xh, {
32970
32972
  className: "space-y-1",
32971
- children: [/* @__PURE__ */ H("span", { children: "Region" }), /* @__PURE__ */ H(nd, {
32973
+ children: [/* @__PURE__ */ H("span", { children: "Region" }), /* @__PURE__ */ H(Ms, {
32972
32974
  value: f.region,
32973
32975
  onChange: (e) => L({ region: e.target.value }),
32974
32976
  options: (I?.regions ?? []).map((e) => ({
@@ -33259,7 +33261,7 @@ function BF(e, t) {
33259
33261
  Le(e);
33260
33262
  }
33261
33263
  function VF({ trpc: e, navigate: t, createRequested: n = !1, onCreateConsumed: r }) {
33262
- let i = ed("training-provider"), o = Wl(), c = LA({
33264
+ let i = td("training-provider"), o = Gl(), c = LA({
33263
33265
  editKey: "edit",
33264
33266
  newKey: "new"
33265
33267
  }), [l, d] = a(!1), [f, p] = a(null), [h, g] = a(""), [_, v] = a(""), [b, x] = a({}), [S, C] = a({ kind: "idle" }), w = u(null), T = oF(() => e.trainingProvider.describe.query({}), []), E = oF(() => e.trainingProvider.describeTypes.query({}), []), D = E.state.status === "ok" ? E.state.data : null, O = D === null ? "" : IF(D), k = u(D);
@@ -33467,7 +33469,7 @@ function VF({ trpc: e, navigate: t, createRequested: n = !1, onCreateConsumed: r
33467
33469
  key: "status",
33468
33470
  header: "Status",
33469
33471
  notSortableReason: "Badge",
33470
- render: (e) => /* @__PURE__ */ H(ll, {
33472
+ render: (e) => /* @__PURE__ */ H(ul, {
33471
33473
  variant: e.configured ? "success" : "warning",
33472
33474
  children: e.configured ? "Configured" : "Not configured"
33473
33475
  })
@@ -33568,7 +33570,7 @@ function VF({ trpc: e, navigate: t, createRequested: n = !1, onCreateConsumed: r
33568
33570
  oe ? /* @__PURE__ */ U("div", { children: [/* @__PURE__ */ H(Xh, {
33569
33571
  htmlFor: "training-provider-type",
33570
33572
  children: "Provider type"
33571
- }), /* @__PURE__ */ H(nd, {
33573
+ }), /* @__PURE__ */ H(Ms, {
33572
33574
  id: "training-provider-type",
33573
33575
  "aria-label": "Provider type",
33574
33576
  value: h,