@camstack/types 0.1.38 → 0.1.40

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.
Files changed (87) hide show
  1. package/dist/addon/base-addon.d.ts +2 -2
  2. package/dist/addon/base-addon.d.ts.map +1 -1
  3. package/dist/capabilities/addon-settings.cap.d.ts +1 -0
  4. package/dist/capabilities/addon-settings.cap.d.ts.map +1 -1
  5. package/dist/capabilities/addons.cap.d.ts +187 -1
  6. package/dist/capabilities/addons.cap.d.ts.map +1 -1
  7. package/dist/capabilities/alerts.cap.d.ts +5 -5
  8. package/dist/capabilities/audio-analyzer.cap.d.ts +2 -2
  9. package/dist/capabilities/camera-pipeline-config.cap.d.ts +43 -0
  10. package/dist/capabilities/camera-pipeline-config.cap.d.ts.map +1 -0
  11. package/dist/capabilities/index.d.ts +11 -4
  12. package/dist/capabilities/index.d.ts.map +1 -1
  13. package/dist/capabilities/local-network.cap.d.ts +1 -1
  14. package/dist/capabilities/mask-shape.d.ts +99 -0
  15. package/dist/capabilities/mask-shape.d.ts.map +1 -0
  16. package/dist/capabilities/mesh-network.cap.d.ts +3 -3
  17. package/dist/capabilities/motion-zones.cap.d.ts +94 -13
  18. package/dist/capabilities/motion-zones.cap.d.ts.map +1 -1
  19. package/dist/capabilities/mqtt-broker.cap.d.ts +3 -3
  20. package/dist/capabilities/native-object-detection.cap.d.ts +73 -3
  21. package/dist/capabilities/native-object-detection.cap.d.ts.map +1 -1
  22. package/dist/capabilities/network-access.cap.d.ts +7 -7
  23. package/dist/capabilities/nodes.cap.d.ts +22 -0
  24. package/dist/capabilities/nodes.cap.d.ts.map +1 -1
  25. package/dist/capabilities/oauth-integration.cap.d.ts +4 -2
  26. package/dist/capabilities/oauth-integration.cap.d.ts.map +1 -1
  27. package/dist/capabilities/pipeline-runner.cap.d.ts +2 -0
  28. package/dist/capabilities/pipeline-runner.cap.d.ts.map +1 -1
  29. package/dist/capabilities/privacy-mask.cap.d.ts +206 -0
  30. package/dist/capabilities/privacy-mask.cap.d.ts.map +1 -0
  31. package/dist/capabilities/schemas/detection-shared.d.ts +14 -1
  32. package/dist/capabilities/schemas/detection-shared.d.ts.map +1 -1
  33. package/dist/capabilities/sso-bridge.cap.d.ts +3 -3
  34. package/dist/capabilities/stream-catalog.cap.d.ts +82 -0
  35. package/dist/capabilities/stream-catalog.cap.d.ts.map +1 -0
  36. package/dist/capabilities/user-management.cap.d.ts +20 -20
  37. package/dist/capabilities/webrtc-session.cap.d.ts +34 -0
  38. package/dist/capabilities/webrtc-session.cap.d.ts.map +1 -1
  39. package/dist/enums/event-category.d.ts +28 -1
  40. package/dist/enums/event-category.d.ts.map +1 -1
  41. package/dist/generated/addon-api.d.ts +1257 -655
  42. package/dist/generated/addon-api.d.ts.map +1 -1
  43. package/dist/generated/cap-status-types.d.ts +3 -1
  44. package/dist/generated/cap-status-types.d.ts.map +1 -1
  45. package/dist/generated/capability-router-map.d.ts +11 -2
  46. package/dist/generated/capability-router-map.d.ts.map +1 -1
  47. package/dist/generated/device-local-state.d.ts +6 -0
  48. package/dist/generated/device-local-state.d.ts.map +1 -1
  49. package/dist/generated/device-proxy.d.ts +8 -0
  50. package/dist/generated/device-proxy.d.ts.map +1 -1
  51. package/dist/generated/method-access-map.d.ts +1 -1
  52. package/dist/generated/method-access-map.d.ts.map +1 -1
  53. package/dist/generated/system-proxy.d.ts +1 -1
  54. package/dist/generated/system-proxy.d.ts.map +1 -1
  55. package/dist/health/wiring-health.d.ts +136 -0
  56. package/dist/health/wiring-health.d.ts.map +1 -0
  57. package/dist/{index-CgPd35k5.mjs → index-C2zzIDdX.mjs} +851 -428
  58. package/dist/index-C2zzIDdX.mjs.map +1 -0
  59. package/dist/{index-BblD92Si.js → index-DnpdVFKv.js} +480 -57
  60. package/dist/index-DnpdVFKv.js.map +1 -0
  61. package/dist/index.d.ts +2 -0
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/index.js +209 -8
  64. package/dist/index.js.map +1 -1
  65. package/dist/index.mjs +520 -319
  66. package/dist/index.mjs.map +1 -1
  67. package/dist/interfaces/addon.d.ts +1 -1
  68. package/dist/interfaces/addon.d.ts.map +1 -1
  69. package/dist/interfaces/capability.d.ts +17 -0
  70. package/dist/interfaces/capability.d.ts.map +1 -1
  71. package/dist/interfaces/event-bus.d.ts +70 -1
  72. package/dist/interfaces/event-bus.d.ts.map +1 -1
  73. package/dist/interfaces/stream-broker.d.ts +21 -1
  74. package/dist/interfaces/stream-broker.d.ts.map +1 -1
  75. package/dist/node.js +1 -1
  76. package/dist/node.mjs +1 -1
  77. package/dist/readiness/readiness-registry.d.ts.map +1 -1
  78. package/dist/schemas/auth-records.d.ts +4 -4
  79. package/dist/types/io.d.ts +13 -1
  80. package/dist/types/io.d.ts.map +1 -1
  81. package/dist/utils/mask-url.d.ts +14 -6
  82. package/dist/utils/mask-url.d.ts.map +1 -1
  83. package/dist/utils/privacy-grid-raster.d.ts +48 -0
  84. package/dist/utils/privacy-grid-raster.d.ts.map +1 -0
  85. package/package.json +1 -1
  86. package/dist/index-BblD92Si.js.map +0 -1
  87. package/dist/index-CgPd35k5.mjs.map +0 -1
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
- import { h as hydrateSchema, e as errMsg, z as zonesCapability, a as zoneRulesCapability, b as zoneAnalyticsCapability, s as switchCapability, c as streamParamsCapability, p as ptzAutotrackCapability, m as motionZonesCapability, d as motionTriggerCapability, f as motionCapability, g as featureProbeCapability, i as doorbellCapability, j as deviceStatusCapability, k as deviceDiscoveryCapability, l as cameraStreamsCapability, n as brightnessCapability, o as batteryCapability, q as audioMetricsCapability, r as deviceProviderCapability, t as accessoriesCapability, u as addonPagesCapability, v as addonPagesSourceCapability, w as addonRoutesCapability, x as addonSettingsCapability, y as addonWidgetsCapability, A as addonWidgetsSourceCapability, B as addonsCapability, C as adminUiCapability, D as advancedNotifierCapability, E as alertsCapability, F as audioAnalysisCapability, G as audioAnalyzerCapability, H as audioCodecCapability, I as authProviderCapability, J as backupCapability, K as cameraCredentialsCapability, L as decoderCapability, M as detectionPipelineCapability, N as deviceExportCapability, O as deviceManagerCapability, P as deviceOpsCapability, Q as deviceStateCapability, R as embeddingEncoderCapability, S as eventsCapability, T as integrationsCapability, U as intercomCapability, V as localNetworkCapability, W as logDestinationCapability, X as meshNetworkCapability, Y as metricsProviderCapability, Z as motionDetectionCapability, _ as mqttBrokerCapability, $ as nativeObjectDetectionCapability, a0 as networkAccessCapability, a1 as networkQualityCapability, a2 as nodesCapability, a3 as notificationOutputCapability, a4 as oauthIntegrationCapability, a5 as osdCapability, a6 as pipelineAnalyticsCapability, a7 as pipelineExecutorCapability, a8 as pipelineOrchestratorCapability, a9 as pipelineRunnerCapability, aa as platformProbeCapability, ab as ptzCapability, ac as rebootCapability, ad as recordingCapability, ae as recordingEngineCapability, af as restreamerCapability, ag as settingsStoreCapability, ah as smtpProviderCapability, ai as snapshotCapability, aj as snapshotProviderCapability, ak as ssoBridgeCapability, al as storageCapability, am as storageProviderCapability, an as streamBrokerCapability, ao as streamingEngineCapability, ap as systemCapability, aq as toastCapability, ar as turnProviderCapability, as as userManagementCapability, at as userPasskeysCapability, au as webrtcCapability, av as webrtcSessionCapability } from "./index-CgPd35k5.mjs";
2
- import { aw, ax, ay, az, aA, aB, aC, aD, aE, aF, aG, aH, aI, aJ, aK, aL, aM, aN, aO, aP, aQ, aR, aS, aT, aU, aV, aW, aX, aY, aZ, a_, a$, b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, ba, bb, bc, bd, be, bf, bg, bh, bi, bj, bk, bl, bm, bn, bo, bp, bq, br, bs, bt, bu, bv, bw, bx, by, bz, bA, bB, bC, bD, bE, bF, bG, bH, bI, bJ, bK, bL, bM, bN, bO, bP, bQ, bR, bS, bT, bU, bV, bW, bX, bY, bZ, b_, b$, c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, ca, cb, cc, cd, ce, cf, cg, ch, ci, cj, ck, cl, cm, cn, co, cp, cq, cr, cs, ct, cu, cv, cw, cx, cy, cz, cA, cB, cC, cD, cE, cF, cG, cH, cI, cJ, cK, cL, cM, cN, cO, cP, cQ, cR, cS, cT, cU, cV, cW, cX, cY, cZ, c_, c$, d0, d1, d2, d3, d4, d5, d6, d7, d8, d9, da, db, dc, dd, de, df, dg, dh, di, dj, dk, dl, dm, dn, dp, dq, dr, ds, dt, du, dv, dw, dx, dy, dz, dA, dB, dC, dD, dE, dF, dG, dH, dI, dJ, dK, dL, dM, dN, dO, dP, dQ, dR, dS, dT, dU, dV, dW, dX, dY, dZ, d_, d$, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, ea, eb, ec, ed, ee, ef, eg, eh, ei, ej, ek, el, em, en, eo, ep, eq, er, es, et, eu, ev, ew, ex, ey, ez, eA, eB, eC, eD, eE, eF, eG, eH, eI, eJ, eK, eL, eM, eN, eO, eP, eQ, eR, eS, eT, eU, eV, eW, eX, eY, eZ, e_, e$, f0, f1, f2, f3, f4, f5, f6 } from "./index-CgPd35k5.mjs";
1
+ import { h as hydrateSchema, e as errMsg, z as zonesCapability, a as zoneRulesCapability, b as zoneAnalyticsCapability, s as switchCapability, c as streamParamsCapability, p as ptzAutotrackCapability, d as privacyMaskCapability, n as nativeObjectDetectionCapability, m as motionZonesCapability, f as motionTriggerCapability, g as motionCapability, i as featureProbeCapability, j as doorbellCapability, k as deviceStatusCapability, l as deviceDiscoveryCapability, o as cameraStreamsCapability, q as brightnessCapability, r as batteryCapability, t as audioMetricsCapability, u as deviceProviderCapability, v as accessoriesCapability, w as addonPagesCapability, x as addonPagesSourceCapability, y as addonRoutesCapability, A as addonSettingsCapability, B as addonWidgetsCapability, C as addonWidgetsSourceCapability, D as addonsCapability, E as adminUiCapability, F as advancedNotifierCapability, G as alertsCapability, H as audioAnalysisCapability, I as audioAnalyzerCapability, J as audioCodecCapability, K as authProviderCapability, L as backupCapability, M as cameraCredentialsCapability, N as cameraPipelineConfigCapability, O as decoderCapability, P as detectionPipelineCapability, Q as deviceExportCapability, R as deviceManagerCapability, S as deviceOpsCapability, T as deviceStateCapability, U as embeddingEncoderCapability, V as eventsCapability, W as integrationsCapability, X as intercomCapability, Y as localNetworkCapability, Z as logDestinationCapability, _ as meshNetworkCapability, $ as metricsProviderCapability, a0 as motionDetectionCapability, a1 as mqttBrokerCapability, a2 as networkAccessCapability, a3 as networkQualityCapability, a4 as nodesCapability, a5 as notificationOutputCapability, a6 as oauthIntegrationCapability, a7 as osdCapability, a8 as pipelineAnalyticsCapability, a9 as pipelineExecutorCapability, aa as pipelineOrchestratorCapability, ab as pipelineRunnerCapability, ac as platformProbeCapability, ad as ptzCapability, ae as rebootCapability, af as recordingCapability, ag as recordingEngineCapability, ah as restreamerCapability, ai as settingsStoreCapability, aj as smtpProviderCapability, ak as snapshotCapability, al as snapshotProviderCapability, am as ssoBridgeCapability, an as storageCapability, ao as storageProviderCapability, ap as streamBrokerCapability, aq as streamCatalogCapability, ar as streamingEngineCapability, as as systemCapability, at as toastCapability, au as turnProviderCapability, av as userManagementCapability, aw as userPasskeysCapability, ax as webrtcCapability, ay as webrtcSessionCapability } from "./index-C2zzIDdX.mjs";
2
+ import { az, aA, aB, aC, aD, aE, aF, aG, aH, aI, aJ, aK, aL, aM, aN, aO, aP, aQ, aR, aS, aT, aU, aV, aW, aX, aY, aZ, a_, a$, b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, ba, bb, bc, bd, be, bf, bg, bh, bi, bj, bk, bl, bm, bn, bo, bp, bq, br, bs, bt, bu, bv, bw, bx, by, bz, bA, bB, bC, bD, bE, bF, bG, bH, bI, bJ, bK, bL, bM, bN, bO, bP, bQ, bR, bS, bT, bU, bV, bW, bX, bY, bZ, b_, b$, c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, ca, cb, cc, cd, ce, cf, cg, ch, ci, cj, ck, cl, cm, cn, co, cp, cq, cr, cs, ct, cu, cv, cw, cx, cy, cz, cA, cB, cC, cD, cE, cF, cG, cH, cI, cJ, cK, cL, cM, cN, cO, cP, cQ, cR, cS, cT, cU, cV, cW, cX, cY, cZ, c_, c$, d0, d1, d2, d3, d4, d5, d6, d7, d8, d9, da, db, dc, dd, de, df, dg, dh, di, dj, dk, dl, dm, dn, dp, dq, dr, ds, dt, du, dv, dw, dx, dy, dz, dA, dB, dC, dD, dE, dF, dG, dH, dI, dJ, dK, dL, dM, dN, dO, dP, dQ, dR, dS, dT, dU, dV, dW, dX, dY, dZ, d_, d$, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, ea, eb, ec, ed, ee, ef, eg, eh, ei, ej, ek, el, em, en, eo, ep, eq, er, es, et, eu, ev, ew, ex, ey, ez, eA, eB, eC, eD, eE, eF, eG, eH, eI, eJ, eK, eL, eM, eN, eO, eP, eQ, eR, eS, eT, eU, eV, eW, eX, eY, eZ, e_, e$, f0, f1, f2, f3, f4, f5, f6, f7, f8, f9, fa, fb, fc, fd, fe, ff, fg, fh, fi, fj, fk, fl, fm, fn, fo, fp, fq, fr, fs, ft, fu, fv } from "./index-C2zzIDdX.mjs";
3
3
  import { z } from "zod";
4
4
  class DisposerChain {
5
5
  disposers = [];
@@ -19,10 +19,10 @@ class DisposerChain {
19
19
  * (sync) — this matches the “register-after-shutdown” edge case where
20
20
  * an addon's late initialization races with kernel restart.
21
21
  */
22
- add(fn) {
22
+ add(fn2) {
23
23
  if (this.disposed) {
24
24
  try {
25
- const result = fn();
25
+ const result = fn2();
26
26
  if (result && typeof result.then === "function") {
27
27
  ;
28
28
  result.catch((err) => this.onError(err, -1));
@@ -32,9 +32,9 @@ class DisposerChain {
32
32
  }
33
33
  return () => void 0;
34
34
  }
35
- this.disposers.push(fn);
35
+ this.disposers.push(fn2);
36
36
  return () => {
37
- const idx = this.disposers.indexOf(fn);
37
+ const idx = this.disposers.indexOf(fn2);
38
38
  if (idx >= 0) this.disposers.splice(idx, 1);
39
39
  };
40
40
  }
@@ -57,9 +57,9 @@ class DisposerChain {
57
57
  const drain = this.disposers.slice().reverse();
58
58
  this.disposers = [];
59
59
  for (let i = 0; i < drain.length; i++) {
60
- const fn = drain[i];
60
+ const fn2 = drain[i];
61
61
  try {
62
- const result = fn();
62
+ const result = fn2();
63
63
  if (result && typeof result.then === "function") {
64
64
  await result;
65
65
  }
@@ -153,6 +153,7 @@ var EventCategory = /* @__PURE__ */ ((EventCategory2) => {
153
153
  EventCategory2["StreamBrokerOnCamStreamDemand"] = "stream-broker.onCamStreamDemand";
154
154
  EventCategory2["StreamBrokerOnCamStreamIdle"] = "stream-broker.onCamStreamIdle";
155
155
  EventCategory2["StreamBrokerOnRequestStreamSourceRefresh"] = "stream-broker.onRequestStreamSourceRefresh";
156
+ EventCategory2["StreamParamsChanged"] = "stream-params.changed";
156
157
  EventCategory2["DeviceStateChanged"] = "device.state-changed";
157
158
  EventCategory2["BatteryOnStatusChanged"] = "battery.onStatusChanged";
158
159
  EventCategory2["DoorbellOnPressed"] = "doorbell.onPressed";
@@ -200,6 +201,7 @@ var EventCategory = /* @__PURE__ */ ((EventCategory2) => {
200
201
  EventCategory2["NetworkTunnelStarted"] = "network.tunnel.started";
201
202
  EventCategory2["NetworkTunnelStopped"] = "network.tunnel.stopped";
202
203
  EventCategory2["LocalNetworkChanged"] = "network.local.changed";
204
+ EventCategory2["MeshNetworkChanged"] = "network.mesh.changed";
203
205
  EventCategory2["BackupCompleted"] = "backup.completed";
204
206
  EventCategory2["BackupRestored"] = "backup.restored";
205
207
  EventCategory2["NotificationDispatched"] = "notification.dispatched";
@@ -210,6 +212,7 @@ var EventCategory = /* @__PURE__ */ ((EventCategory2) => {
210
212
  EventCategory2["DeviceAwake"] = "device.awake";
211
213
  EventCategory2["DeviceSleeping"] = "device.sleeping";
212
214
  EventCategory2["RetentionCleanup"] = "retention.cleanup";
215
+ EventCategory2["AddonsBulkUpdateProgress"] = "addons.bulk-update-progress";
213
216
  return EventCategory2;
214
217
  })(EventCategory || {});
215
218
  function isEvent(event, category) {
@@ -362,7 +365,7 @@ class BaseAddon {
362
365
  }
363
366
  // ── Settings schemas (override to provide UI) ─────────────────────────
364
367
  /** Override to provide global-level settings UI schema. */
365
- globalSettingsSchema() {
368
+ globalSettingsSchema(_cap) {
366
369
  return null;
367
370
  }
368
371
  /** Override to provide device-level settings UI schema. */
@@ -376,8 +379,8 @@ class BaseAddon {
376
379
  // blob and every addon used exactly one of them; the distinction was
377
380
  // never semantically load-bearing. `global` won because it was the
378
381
  // widely-used one and the name reads naturally (per-node addon config).
379
- async getGlobalSettings(overlay) {
380
- const schema = this.globalSettingsSchema();
382
+ async getGlobalSettings(overlay, cap) {
383
+ const schema = this.globalSettingsSchema(cap);
381
384
  if (!schema) return { sections: [] };
382
385
  const raw = await this._ctx?.settings?.readAddonStore() ?? {};
383
386
  return hydrateSchema(schema, overlay ? { ...raw, ...overlay } : raw);
@@ -882,6 +885,14 @@ class ReadinessRegistry {
882
885
  cleanup();
883
886
  reject(new ReadinessTimeoutError(capName, scope, this.now() - start));
884
887
  }, timeoutMs);
888
+ const PENDING_LOG_INTERVAL_MS = 3e4;
889
+ const pendingLogTimer = setInterval(() => {
890
+ if (settled) return;
891
+ this.logger?.warn(
892
+ `readiness: still awaiting ${capName} (${scopeKey(scope)}) after ${this.now() - start}ms`
893
+ );
894
+ }, PENDING_LOG_INTERVAL_MS);
895
+ if (typeof pendingLogTimer.unref === "function") pendingLogTimer.unref();
885
896
  const onAbort = () => {
886
897
  if (settled) return;
887
898
  settled = true;
@@ -892,6 +903,7 @@ class ReadinessRegistry {
892
903
  function cleanup() {
893
904
  unsubscribe();
894
905
  if (timer !== null) clearTimeout(timer);
906
+ clearInterval(pendingLogTimer);
895
907
  opts.signal?.removeEventListener("abort", onAbort);
896
908
  }
897
909
  });
@@ -1485,10 +1497,10 @@ function pythonScriptForBackend(backend) {
1485
1497
  function requiresPython(runtime) {
1486
1498
  return runtime === "coreml" || runtime === "pytorch" || runtime === "openvino";
1487
1499
  }
1488
- async function runInferenceStep(fn, timeoutMs) {
1500
+ async function runInferenceStep(fn2, timeoutMs) {
1489
1501
  const t0 = performance.now();
1490
1502
  try {
1491
- const output = timeoutMs !== void 0 ? await withTimeout(fn(), timeoutMs) : await fn();
1503
+ const output = timeoutMs !== void 0 ? await withTimeout(fn2(), timeoutMs) : await fn2();
1492
1504
  return {
1493
1505
  output,
1494
1506
  durationMs: roundMs(performance.now() - t0),
@@ -1934,6 +1946,8 @@ const DEVICE_LOCAL_STATE_CAPS = {
1934
1946
  motion: motionCapability,
1935
1947
  motionTrigger: motionTriggerCapability,
1936
1948
  motionZones: motionZonesCapability,
1949
+ nativeObjectDetection: nativeObjectDetectionCapability,
1950
+ privacyMask: privacyMaskCapability,
1937
1951
  ptzAutotrack: ptzAutotrackCapability,
1938
1952
  streamParams: streamParamsCapability,
1939
1953
  switch: switchCapability,
@@ -2818,10 +2832,10 @@ function createDeviceProxy(api, binding, opts) {
2818
2832
  function callLeaf(capProp, method, kind, merged, push) {
2819
2833
  const leaf = typedApi[capProp]?.[method];
2820
2834
  if (!leaf) throw new Error(`DeviceProxy: api has no '${capProp}.${method}'`);
2821
- const fn = leaf;
2822
- if (kind === "mutation") return fn.mutate(merged);
2823
- if (kind === "subscription") return fn.subscribe(merged, push);
2824
- return fn.query(merged);
2835
+ const fn2 = leaf;
2836
+ if (kind === "mutation") return fn2.mutate(merged);
2837
+ if (kind === "subscription") return fn2.subscribe(merged, push);
2838
+ return fn2.query(merged);
2825
2839
  }
2826
2840
  function dispatch(capName, capProp, method, kind, input, push) {
2827
2841
  const entry = binding.entries.find((e) => e.capName === capName);
@@ -2923,6 +2937,7 @@ function createDeviceProxy(api, binding, opts) {
2923
2937
  getStatus: (input) => dispatch("motion-zones", "motionZones", "getStatus", "query", input)
2924
2938
  };
2925
2939
  const nativeObjectDetectionInterface = {
2940
+ setEnabled: (input) => dispatch("native-object-detection", "nativeObjectDetection", "setEnabled", "mutation", input),
2926
2941
  getStatus: (input) => dispatch("native-object-detection", "nativeObjectDetection", "getStatus", "query", input)
2927
2942
  };
2928
2943
  const osdInterface = {
@@ -2943,6 +2958,11 @@ function createDeviceProxy(api, binding, opts) {
2943
2958
  getDeviceLiveContribution: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "getDeviceLiveContribution", "query", input),
2944
2959
  applyDeviceSettingsPatch: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "applyDeviceSettingsPatch", "mutation", input)
2945
2960
  };
2961
+ const privacyMaskInterface = {
2962
+ getOptions: (input) => dispatch("privacy-mask", "privacyMask", "getOptions", "query", input),
2963
+ setMask: (input) => dispatch("privacy-mask", "privacyMask", "setMask", "mutation", input),
2964
+ getStatus: (input) => dispatch("privacy-mask", "privacyMask", "getStatus", "query", input)
2965
+ };
2946
2966
  const ptzInterface = {
2947
2967
  move: (input) => dispatch("ptz", "ptz", "move", "mutation", input),
2948
2968
  continuousMove: (input) => dispatch("ptz", "ptz", "continuousMove", "mutation", input),
@@ -2979,6 +2999,9 @@ function createDeviceProxy(api, binding, opts) {
2979
2999
  getDeviceLiveContribution: (input) => dispatch("snapshot", "snapshot", "getDeviceLiveContribution", "query", input),
2980
3000
  applyDeviceSettingsPatch: (input) => dispatch("snapshot", "snapshot", "applyDeviceSettingsPatch", "mutation", input)
2981
3001
  };
3002
+ const streamCatalogInterface = {
3003
+ getCatalog: (input) => dispatch("stream-catalog", "streamCatalog", "getCatalog", "query", input)
3004
+ };
2982
3005
  const streamParamsInterface = {
2983
3006
  getOptions: (input) => dispatch("stream-params", "streamParams", "getOptions", "query", input),
2984
3007
  setProfile: (input) => dispatch("stream-params", "streamParams", "setProfile", "mutation", input),
@@ -2994,6 +3017,8 @@ function createDeviceProxy(api, binding, opts) {
2994
3017
  createSession: (input) => dispatch("webrtc-session", "webrtcSession", "createSession", "mutation", input),
2995
3018
  handleOffer: (input) => dispatch("webrtc-session", "webrtcSession", "handleOffer", "mutation", input),
2996
3019
  handleAnswer: (input) => dispatch("webrtc-session", "webrtcSession", "handleAnswer", "mutation", input),
3020
+ addIceCandidate: (input) => dispatch("webrtc-session", "webrtcSession", "addIceCandidate", "mutation", input),
3021
+ getIceCandidates: (input) => dispatch("webrtc-session", "webrtcSession", "getIceCandidates", "query", input),
2997
3022
  closeSession: (input) => dispatch("webrtc-session", "webrtcSession", "closeSession", "mutation", input),
2998
3023
  hasAdaptiveBitrate: (input) => dispatch("webrtc-session", "webrtcSession", "hasAdaptiveBitrate", "query", input)
2999
3024
  };
@@ -3017,6 +3042,11 @@ function createDeviceProxy(api, binding, opts) {
3017
3042
  getDeviceSettings: (input) => dispatchSystem("addonSettings", "getDeviceSettings", "query", input),
3018
3043
  updateDeviceSettings: (input) => dispatchSystem("addonSettings", "updateDeviceSettings", "mutation", input)
3019
3044
  };
3045
+ const cameraPipelineConfigInterface = {
3046
+ getDeviceSettingsContribution: (input) => dispatchSystem("cameraPipelineConfig", "getDeviceSettingsContribution", "query", input),
3047
+ getDeviceLiveContribution: (input) => dispatchSystem("cameraPipelineConfig", "getDeviceLiveContribution", "query", input),
3048
+ applyDeviceSettingsPatch: (input) => dispatchSystem("cameraPipelineConfig", "applyDeviceSettingsPatch", "mutation", input)
3049
+ };
3020
3050
  const deviceExportInterface = {
3021
3051
  getDeviceSettingsContribution: (input) => dispatchSystem("deviceExport", "getDeviceSettingsContribution", "query", input),
3022
3052
  getDeviceLiveContribution: (input) => dispatchSystem("deviceExport", "getDeviceLiveContribution", "query", input),
@@ -3123,6 +3153,8 @@ function createDeviceProxy(api, binding, opts) {
3123
3153
  motion: createSliceHandle(stateSource, binding.deviceId, "motion"),
3124
3154
  motionTrigger: createSliceHandle(stateSource, binding.deviceId, "motion-trigger"),
3125
3155
  motionZones: createSliceHandle(stateSource, binding.deviceId, "motion-zones"),
3156
+ nativeObjectDetection: createSliceHandle(stateSource, binding.deviceId, "native-object-detection"),
3157
+ privacyMask: createSliceHandle(stateSource, binding.deviceId, "privacy-mask"),
3126
3158
  ptzAutotrack: createSliceHandle(stateSource, binding.deviceId, "ptz-autotrack"),
3127
3159
  streamParams: createSliceHandle(stateSource, binding.deviceId, "stream-params"),
3128
3160
  switch: createSliceHandle(stateSource, binding.deviceId, "switch"),
@@ -3152,11 +3184,13 @@ function createDeviceProxy(api, binding, opts) {
3152
3184
  nativeObjectDetection: nativeObjectDetectionInterface,
3153
3185
  osd: osdInterface,
3154
3186
  pipelineAnalytics: pipelineAnalyticsInterface,
3187
+ privacyMask: privacyMaskInterface,
3155
3188
  ptz: ptzInterface,
3156
3189
  ptzAutotrack: ptzAutotrackInterface,
3157
3190
  reboot: rebootInterface,
3158
3191
  recording: recordingInterface,
3159
3192
  snapshot: snapshotInterface,
3193
+ streamCatalog: streamCatalogInterface,
3160
3194
  streamParams: streamParamsInterface,
3161
3195
  switch: switchInterface,
3162
3196
  webrtcSession: webrtcSessionInterface,
@@ -3164,6 +3198,7 @@ function createDeviceProxy(api, binding, opts) {
3164
3198
  zoneRules: zoneRulesInterface,
3165
3199
  zones: zonesInterface,
3166
3200
  addonSettings: addonSettingsInterface,
3201
+ cameraPipelineConfig: cameraPipelineConfigInterface,
3167
3202
  deviceExport: deviceExportInterface,
3168
3203
  deviceManager: deviceManagerInterface,
3169
3204
  deviceState: deviceStateInterface,
@@ -3230,10 +3265,10 @@ function createSystemProxy(api) {
3230
3265
  function dispatch(capProp, method, kind, input, push) {
3231
3266
  const leaf = typedApi[capProp]?.[method];
3232
3267
  if (!leaf) throw new Error(`SystemProxy: api has no '${capProp}.${method}'`);
3233
- const fn = leaf;
3234
- if (kind === "mutation") return fn.mutate(input);
3235
- if (kind === "subscription") return fn.subscribe(input, push);
3236
- return fn.query(input);
3268
+ const fn2 = leaf;
3269
+ if (kind === "mutation") return fn2.mutate(input);
3270
+ if (kind === "subscription") return fn2.subscribe(input, push);
3271
+ return fn2.query(input);
3237
3272
  }
3238
3273
  const addonPagesInterface = {
3239
3274
  listPages: (input) => dispatch("addonPages", "listPages", "query", input)
@@ -3259,6 +3294,10 @@ function createSystemProxy(api) {
3259
3294
  listCapabilityProviders: (input) => dispatch("addons", "listCapabilityProviders", "query", input),
3260
3295
  setCapabilityProviderEnabled: (input) => dispatch("addons", "setCapabilityProviderEnabled", "mutation", input),
3261
3296
  updateFrameworkPackage: (input) => dispatch("addons", "updateFrameworkPackage", "mutation", input),
3297
+ startBulkUpdate: (input) => dispatch("addons", "startBulkUpdate", "mutation", input),
3298
+ getBulkUpdateState: (input) => dispatch("addons", "getBulkUpdateState", "query", input),
3299
+ cancelBulkUpdate: (input) => dispatch("addons", "cancelBulkUpdate", "mutation", input),
3300
+ listActiveBulkUpdates: (input) => dispatch("addons", "listActiveBulkUpdates", "query", input),
3262
3301
  getVersions: (input) => dispatch("addons", "getVersions", "query", input),
3263
3302
  restartAddon: (input) => dispatch("addons", "restartAddon", "mutation", input),
3264
3303
  retryLoad: (input) => dispatch("addons", "retryLoad", "mutation", input),
@@ -4655,6 +4694,7 @@ const CAPABILITY_NAMES = {
4655
4694
  battery: "battery",
4656
4695
  brightness: "brightness",
4657
4696
  cameraCredentials: "camera-credentials",
4697
+ cameraPipelineConfig: "camera-pipeline-config",
4658
4698
  cameraStreams: "camera-streams",
4659
4699
  decoder: "decoder",
4660
4700
  detectionPipeline: "detection-pipeline",
@@ -4692,6 +4732,7 @@ const CAPABILITY_NAMES = {
4692
4732
  pipelineOrchestrator: "pipeline-orchestrator",
4693
4733
  pipelineRunner: "pipeline-runner",
4694
4734
  platformProbe: "platform-probe",
4735
+ privacyMask: "privacy-mask",
4695
4736
  ptz: "ptz",
4696
4737
  ptzAutotrack: "ptz-autotrack",
4697
4738
  reboot: "reboot",
@@ -4706,6 +4747,7 @@ const CAPABILITY_NAMES = {
4706
4747
  storage: "storage",
4707
4748
  storageProvider: "storage-provider",
4708
4749
  streamBroker: "stream-broker",
4750
+ streamCatalog: "stream-catalog",
4709
4751
  streamParams: "stream-params",
4710
4752
  streamingEngine: "streaming-engine",
4711
4753
  switch: "switch",
@@ -4741,6 +4783,7 @@ const CAPABILITY_ROUTER_KEYS = [
4741
4783
  { key: "battery", name: "battery" },
4742
4784
  { key: "brightness", name: "brightness" },
4743
4785
  { key: "cameraCredentials", name: "camera-credentials" },
4786
+ { key: "cameraPipelineConfig", name: "camera-pipeline-config" },
4744
4787
  { key: "cameraStreams", name: "camera-streams" },
4745
4788
  { key: "decoder", name: "decoder" },
4746
4789
  { key: "detectionPipeline", name: "detection-pipeline" },
@@ -4778,6 +4821,7 @@ const CAPABILITY_ROUTER_KEYS = [
4778
4821
  { key: "pipelineOrchestrator", name: "pipeline-orchestrator" },
4779
4822
  { key: "pipelineRunner", name: "pipeline-runner" },
4780
4823
  { key: "platformProbe", name: "platform-probe" },
4824
+ { key: "privacyMask", name: "privacy-mask" },
4781
4825
  { key: "ptz", name: "ptz" },
4782
4826
  { key: "ptzAutotrack", name: "ptz-autotrack" },
4783
4827
  { key: "reboot", name: "reboot" },
@@ -4792,6 +4836,7 @@ const CAPABILITY_ROUTER_KEYS = [
4792
4836
  { key: "storage", name: "storage" },
4793
4837
  { key: "storageProvider", name: "storage-provider" },
4794
4838
  { key: "streamBroker", name: "stream-broker" },
4839
+ { key: "streamCatalog", name: "stream-catalog" },
4795
4840
  { key: "streamParams", name: "stream-params" },
4796
4841
  { key: "streamingEngine", name: "streaming-engine" },
4797
4842
  { key: "switch", name: "switch" },
@@ -4827,6 +4872,7 @@ const ALL_CAPABILITY_DEFINITIONS = [
4827
4872
  batteryCapability,
4828
4873
  brightnessCapability,
4829
4874
  cameraCredentialsCapability,
4875
+ cameraPipelineConfigCapability,
4830
4876
  cameraStreamsCapability,
4831
4877
  decoderCapability,
4832
4878
  detectionPipelineCapability,
@@ -4864,6 +4910,7 @@ const ALL_CAPABILITY_DEFINITIONS = [
4864
4910
  pipelineOrchestratorCapability,
4865
4911
  pipelineRunnerCapability,
4866
4912
  platformProbeCapability,
4913
+ privacyMaskCapability,
4867
4914
  ptzCapability,
4868
4915
  ptzAutotrackCapability,
4869
4916
  rebootCapability,
@@ -4878,6 +4925,7 @@ const ALL_CAPABILITY_DEFINITIONS = [
4878
4925
  storageCapability,
4879
4926
  storageProviderCapability,
4880
4927
  streamBrokerCapability,
4928
+ streamCatalogCapability,
4881
4929
  streamParamsCapability,
4882
4930
  streamingEngineCapability,
4883
4931
  switchCapability,
@@ -4909,6 +4957,7 @@ const CAP_NAMES_WITH_STATUS = [
4909
4957
  "mqtt-broker",
4910
4958
  "native-object-detection",
4911
4959
  "osd",
4960
+ "privacy-mask",
4912
4961
  "ptz",
4913
4962
  "ptz-autotrack",
4914
4963
  "snapshot",
@@ -4921,10 +4970,12 @@ const METHOD_ACCESS_MAP = Object.freeze({
4921
4970
  "addonRoutes.getRoutes": { capName: "addon-routes", capScope: "system", addonId: null, access: "view" },
4922
4971
  "addonRoutes.invoke": { capName: "addon-routes", capScope: "system", addonId: null, access: "create" },
4923
4972
  "addons.applyAutoUpdateToAll": { capName: "addons", capScope: "system", addonId: null, access: "create" },
4973
+ "addons.cancelBulkUpdate": { capName: "addons", capScope: "system", addonId: null, access: "create" },
4924
4974
  "addons.custom": { capName: "addons", capScope: "system", addonId: null, access: "create" },
4925
4975
  "addons.forceRefresh": { capName: "addons", capScope: "system", addonId: null, access: "create" },
4926
4976
  "addons.getAddonAutoUpdate": { capName: "addons", capScope: "system", addonId: null, access: "view" },
4927
4977
  "addons.getAutoUpdateSettings": { capName: "addons", capScope: "system", addonId: null, access: "view" },
4978
+ "addons.getBulkUpdateState": { capName: "addons", capScope: "system", addonId: null, access: "view" },
4928
4979
  "addons.getLastRestart": { capName: "addons", capScope: "system", addonId: null, access: "view" },
4929
4980
  "addons.getLogs": { capName: "addons", capScope: "system", addonId: null, access: "view" },
4930
4981
  "addons.getVersions": { capName: "addons", capScope: "system", addonId: null, access: "view" },
@@ -4932,6 +4983,7 @@ const METHOD_ACCESS_MAP = Object.freeze({
4932
4983
  "addons.installPackage": { capName: "addons", capScope: "system", addonId: null, access: "create" },
4933
4984
  "addons.isWorkspaceAvailable": { capName: "addons", capScope: "system", addonId: null, access: "view" },
4934
4985
  "addons.list": { capName: "addons", capScope: "system", addonId: null, access: "view" },
4986
+ "addons.listActiveBulkUpdates": { capName: "addons", capScope: "system", addonId: null, access: "view" },
4935
4987
  "addons.listCapabilityProviders": { capName: "addons", capScope: "system", addonId: null, access: "view" },
4936
4988
  "addons.listFrameworkPackages": { capName: "addons", capScope: "system", addonId: null, access: "view" },
4937
4989
  "addons.listPackages": { capName: "addons", capScope: "system", addonId: null, access: "view" },
@@ -4947,6 +4999,7 @@ const METHOD_ACCESS_MAP = Object.freeze({
4947
4999
  "addons.setAddonAutoUpdate": { capName: "addons", capScope: "system", addonId: null, access: "create" },
4948
5000
  "addons.setAutoUpdateSettings": { capName: "addons", capScope: "system", addonId: null, access: "create" },
4949
5001
  "addons.setCapabilityProviderEnabled": { capName: "addons", capScope: "system", addonId: null, access: "create" },
5002
+ "addons.startBulkUpdate": { capName: "addons", capScope: "system", addonId: null, access: "create" },
4950
5003
  "addons.uninstallPackage": { capName: "addons", capScope: "system", addonId: null, access: "delete" },
4951
5004
  "addons.updateFrameworkPackage": { capName: "addons", capScope: "system", addonId: null, access: "create" },
4952
5005
  "addons.updatePackage": { capName: "addons", capScope: "system", addonId: null, access: "create" },
@@ -5159,6 +5212,7 @@ const METHOD_ACCESS_MAP = Object.freeze({
5159
5212
  "mqttBroker.startEmbeddedBroker": { capName: "mqtt-broker", capScope: "system", addonId: null, access: "create" },
5160
5213
  "mqttBroker.stopEmbeddedBroker": { capName: "mqtt-broker", capScope: "system", addonId: null, access: "create" },
5161
5214
  "mqttBroker.testConnection": { capName: "mqtt-broker", capScope: "system", addonId: null, access: "create" },
5215
+ "nativeObjectDetection.setEnabled": { capName: "native-object-detection", capScope: "device", addonId: null, access: "create" },
5162
5216
  "networkAccess.getEndpoint": { capName: "network-access", capScope: "system", addonId: null, access: "view" },
5163
5217
  "networkAccess.getStatus": { capName: "network-access", capScope: "system", addonId: null, access: "view" },
5164
5218
  "networkAccess.listEndpoints": { capName: "network-access", capScope: "system", addonId: null, access: "view" },
@@ -5275,6 +5329,8 @@ const METHOD_ACCESS_MAP = Object.freeze({
5275
5329
  "platformProbe.refreshHardwareEncoders": { capName: "platform-probe", capScope: "system", addonId: null, access: "create" },
5276
5330
  "platformProbe.resolveHwAccel": { capName: "platform-probe", capScope: "system", addonId: null, access: "view" },
5277
5331
  "platformProbe.resolveInferenceConfig": { capName: "platform-probe", capScope: "system", addonId: null, access: "view" },
5332
+ "privacyMask.getOptions": { capName: "privacy-mask", capScope: "device", addonId: null, access: "view" },
5333
+ "privacyMask.setMask": { capName: "privacy-mask", capScope: "device", addonId: null, access: "create" },
5278
5334
  "ptz.continuousMove": { capName: "ptz", capScope: "device", addonId: null, access: "create" },
5279
5335
  "ptz.deletePreset": { capName: "ptz", capScope: "device", addonId: null, access: "delete" },
5280
5336
  "ptz.getOptions": { capName: "ptz", capScope: "device", addonId: null, access: "view" },
@@ -5397,6 +5453,7 @@ const METHOD_ACCESS_MAP = Object.freeze({
5397
5453
  "streamBroker.unassignProfile": { capName: "stream-broker", capScope: "system", addonId: null, access: "create" },
5398
5454
  "streamBroker.unsubscribeAudioChunks": { capName: "stream-broker", capScope: "system", addonId: null, access: "create" },
5399
5455
  "streamBroker.unsubscribeFrames": { capName: "stream-broker", capScope: "system", addonId: null, access: "create" },
5456
+ "streamCatalog.getCatalog": { capName: "stream-catalog", capScope: "device", addonId: null, access: "view" },
5400
5457
  "streamingEngine.getStreamUrl": { capName: "streaming-engine", capScope: "system", addonId: null, access: "view" },
5401
5458
  "streamingEngine.listStreams": { capName: "streaming-engine", capScope: "system", addonId: null, access: "view" },
5402
5459
  "streamingEngine.registerStream": { capName: "streaming-engine", capScope: "system", addonId: null, access: "create" },
@@ -5454,8 +5511,10 @@ const METHOD_ACCESS_MAP = Object.freeze({
5454
5511
  "webrtc.registerStream": { capName: "webrtc", capScope: "system", addonId: null, access: "create" },
5455
5512
  "webrtc.supportsStream": { capName: "webrtc", capScope: "system", addonId: null, access: "view" },
5456
5513
  "webrtc.unregisterStream": { capName: "webrtc", capScope: "system", addonId: null, access: "delete" },
5514
+ "webrtcSession.addIceCandidate": { capName: "webrtc-session", capScope: "device", addonId: null, access: "create" },
5457
5515
  "webrtcSession.closeSession": { capName: "webrtc-session", capScope: "device", addonId: null, access: "create" },
5458
5516
  "webrtcSession.createSession": { capName: "webrtc-session", capScope: "device", addonId: null, access: "create" },
5517
+ "webrtcSession.getIceCandidates": { capName: "webrtc-session", capScope: "device", addonId: null, access: "view" },
5459
5518
  "webrtcSession.handleAnswer": { capName: "webrtc-session", capScope: "device", addonId: null, access: "create" },
5460
5519
  "webrtcSession.handleOffer": { capName: "webrtc-session", capScope: "device", addonId: null, access: "create" },
5461
5520
  "webrtcSession.hasAdaptiveBitrate": { capName: "webrtc-session", capScope: "device", addonId: null, access: "view" },
@@ -5511,6 +5570,7 @@ const KNOWN_CAP_NAMES = [
5511
5570
  "motion-trigger",
5512
5571
  "motion-zones",
5513
5572
  "mqtt-broker",
5573
+ "native-object-detection",
5514
5574
  "network-access",
5515
5575
  "network-quality",
5516
5576
  "nodes",
@@ -5522,6 +5582,7 @@ const KNOWN_CAP_NAMES = [
5522
5582
  "pipeline-orchestrator",
5523
5583
  "pipeline-runner",
5524
5584
  "platform-probe",
5585
+ "privacy-mask",
5525
5586
  "ptz",
5526
5587
  "ptz-autotrack",
5527
5588
  "reboot",
@@ -5536,6 +5597,7 @@ const KNOWN_CAP_NAMES = [
5536
5597
  "storage",
5537
5598
  "storage-provider",
5538
5599
  "stream-broker",
5600
+ "stream-catalog",
5539
5601
  "stream-params",
5540
5602
  "streaming-engine",
5541
5603
  "switch",
@@ -5564,13 +5626,16 @@ const DEVICE_CAP_NAMES = [
5564
5626
  "motion-detection",
5565
5627
  "motion-trigger",
5566
5628
  "motion-zones",
5629
+ "native-object-detection",
5567
5630
  "osd",
5568
5631
  "pipeline-analytics",
5632
+ "privacy-mask",
5569
5633
  "ptz",
5570
5634
  "ptz-autotrack",
5571
5635
  "reboot",
5572
5636
  "recording",
5573
5637
  "snapshot",
5638
+ "stream-catalog",
5574
5639
  "stream-params",
5575
5640
  "switch",
5576
5641
  "webrtc-session",
@@ -5688,13 +5753,42 @@ function getCapsByProviderKind(kind) {
5688
5753
  }
5689
5754
  return out;
5690
5755
  }
5756
+ const CREDENTIAL_PARAM_PATTERNS = [
5757
+ /^user$/i,
5758
+ /^usr$/i,
5759
+ /^username$/i,
5760
+ /^password$/i,
5761
+ /^pwd$/i,
5762
+ /^pass$/i,
5763
+ /^passwd$/i,
5764
+ /^secret$/i,
5765
+ /^token$/i,
5766
+ /^auth$/i,
5767
+ /^auth[_-]?token$/i,
5768
+ /^bearer$/i,
5769
+ /^api[_-]?key$/i,
5770
+ /^access[_-]?token$/i,
5771
+ /^refresh[_-]?token$/i
5772
+ ];
5773
+ function isCredentialParam(name) {
5774
+ return CREDENTIAL_PARAM_PATTERNS.some((re) => re.test(name));
5775
+ }
5691
5776
  function maskUrlCredentials(rawUrl) {
5692
5777
  try {
5693
5778
  const u = new URL(rawUrl);
5694
- if (!u.username && !u.password) return rawUrl;
5695
- u.username = "";
5696
- u.password = "";
5697
- return u.toString();
5779
+ let touched = false;
5780
+ if (u.username || u.password) {
5781
+ u.username = "";
5782
+ u.password = "";
5783
+ touched = true;
5784
+ }
5785
+ for (const key of [...u.searchParams.keys()]) {
5786
+ if (isCredentialParam(key)) {
5787
+ u.searchParams.set(key, "***");
5788
+ touched = true;
5789
+ }
5790
+ }
5791
+ return touched ? u.toString() : rawUrl;
5698
5792
  } catch {
5699
5793
  return rawUrl;
5700
5794
  }
@@ -5732,6 +5826,86 @@ class RingBuffer {
5732
5826
  return result;
5733
5827
  }
5734
5828
  }
5829
+ function rectsToCells(rects, gridWidth, gridHeight) {
5830
+ const total = gridWidth * gridHeight;
5831
+ if (total <= 0 || rects.length === 0) {
5832
+ return new Array(Math.max(0, total)).fill(false);
5833
+ }
5834
+ const cells = new Array(total).fill(false);
5835
+ for (let row = 0; row < gridHeight; row++) {
5836
+ for (let col = 0; col < gridWidth; col++) {
5837
+ const cx2 = (col + 0.5) / gridWidth;
5838
+ const cy2 = (row + 0.5) / gridHeight;
5839
+ for (const rect of rects) {
5840
+ if (cx2 >= rect.x && cx2 <= rect.x + rect.w && cy2 >= rect.y && cy2 <= rect.y + rect.h) {
5841
+ cells[row * gridWidth + col] = true;
5842
+ break;
5843
+ }
5844
+ }
5845
+ }
5846
+ }
5847
+ return cells;
5848
+ }
5849
+ function cellsToRects(cells, gridWidth, gridHeight, maxRegions) {
5850
+ if (gridWidth <= 0 || gridHeight <= 0 || maxRegions <= 0) return [];
5851
+ const expected = gridWidth * gridHeight;
5852
+ const grid = new Array(expected).fill(false);
5853
+ const copyLen = Math.min(cells.length, expected);
5854
+ for (let i = 0; i < copyLen; i++) {
5855
+ grid[i] = cells[i] === true;
5856
+ }
5857
+ const blocks = [];
5858
+ const pending = [];
5859
+ for (let row = 0; row <= gridHeight; row++) {
5860
+ const rowRuns = [];
5861
+ if (row < gridHeight) {
5862
+ let runStart = -1;
5863
+ for (let col = 0; col <= gridWidth; col++) {
5864
+ const active = col < gridWidth && grid[row * gridWidth + col] === true;
5865
+ if (active && runStart === -1) {
5866
+ runStart = col;
5867
+ } else if (!active && runStart !== -1) {
5868
+ rowRuns.push({ colStart: runStart, colEnd: col - 1 });
5869
+ runStart = -1;
5870
+ }
5871
+ }
5872
+ }
5873
+ const matched = /* @__PURE__ */ new Set();
5874
+ const nextPending = [];
5875
+ for (const pb of pending) {
5876
+ const idx = rowRuns.findIndex(
5877
+ (r) => r.colStart === pb.colStart && r.colEnd === pb.colEnd
5878
+ );
5879
+ if (idx >= 0) {
5880
+ nextPending.push(pb);
5881
+ matched.add(idx);
5882
+ } else {
5883
+ blocks.push({ ...pb, rowEnd: row - 1 });
5884
+ }
5885
+ }
5886
+ for (let i = 0; i < rowRuns.length; i++) {
5887
+ if (!matched.has(i)) {
5888
+ const rr = rowRuns[i];
5889
+ nextPending.push({ colStart: rr.colStart, colEnd: rr.colEnd, rowStart: row });
5890
+ }
5891
+ }
5892
+ pending.length = 0;
5893
+ for (const p of nextPending) pending.push(p);
5894
+ }
5895
+ if (blocks.length === 0) return [];
5896
+ const sorted = blocks.slice().sort((a, b) => {
5897
+ const aArea = (a.colEnd - a.colStart + 1) * (a.rowEnd - a.rowStart + 1);
5898
+ const bArea = (b.colEnd - b.colStart + 1) * (b.rowEnd - b.rowStart + 1);
5899
+ return bArea - aArea;
5900
+ });
5901
+ const kept = maxRegions > 0 ? sorted.slice(0, maxRegions) : sorted;
5902
+ return kept.map((block) => ({
5903
+ x: block.colStart / gridWidth,
5904
+ y: block.rowStart / gridHeight,
5905
+ w: (block.colEnd - block.colStart + 1) / gridWidth,
5906
+ h: (block.rowEnd - block.rowStart + 1) / gridHeight
5907
+ }));
5908
+ }
5735
5909
  function bindAddonActions(api, addonId, catalog) {
5736
5910
  const out = {};
5737
5911
  for (const action of Object.keys(catalog)) {
@@ -5743,335 +5917,352 @@ function bindAddonActions(api, addonId, catalog) {
5743
5917
  return out;
5744
5918
  }
5745
5919
  export {
5746
- aw as ACCESSORY_LABEL,
5920
+ az as ACCESSORY_LABEL,
5747
5921
  ALL_CAPABILITY_DEFINITIONS,
5748
- ax as APPLE_SA_TO_MACRO,
5749
- ay as AUDIO_BACKEND_CHOICES,
5750
- az as AUDIO_MACRO_LABELS,
5751
- aA as AccessoriesStatusSchema,
5752
- aB as AccessoryKind,
5753
- aC as AddBrokerInputSchema,
5754
- aD as AddonAutoUpdateSchema,
5755
- aE as AddonListItemSchema,
5756
- aF as AddonPageDeclarationSchema,
5757
- aG as AddonPageInfoSchema,
5758
- aH as AgentLoadSummarySchema,
5759
- aI as AlertSchema,
5760
- aJ as AlertSeveritySchema,
5761
- aK as AlertSourceSchema,
5762
- aL as AlertStatusSchema,
5763
- aM as ApiKeyRecordSchema,
5764
- aN as ApiKeySummarySchema,
5765
- aO as ArchiveEntrySchema,
5766
- aP as ArchiveManifestSchema,
5767
- aQ as AudioAnalysisResultSchema,
5768
- aR as AudioAnalysisSettingsSchema,
5769
- aS as AudioChunkInputSchema,
5770
- aT as AudioClassSummarySchema,
5771
- aU as AudioClassificationLabelSchema,
5772
- aV as AudioClassificationResultSchema,
5773
- aW as AudioCodecInfoSchema,
5774
- aX as AudioDecodeSessionConfigSchema,
5775
- aY as AudioEncodeSessionConfigSchema,
5776
- aZ as AudioEncodedChunkSchema,
5777
- a_ as AudioEventSchema,
5778
- a$ as AudioLevelSchema,
5779
- b0 as AudioMetricsHistoryPointSchema,
5780
- b1 as AudioMetricsHistorySchema,
5781
- b2 as AudioMetricsSnapshotSchema,
5782
- b3 as AudioPcmChunkSchema,
5783
- b4 as AuthResultSchema,
5784
- b5 as AutoUpdateSettingsSchema,
5785
- b6 as AvailableIntegrationTypeSchema,
5922
+ aA as APPLE_SA_TO_MACRO,
5923
+ aB as AUDIO_BACKEND_CHOICES,
5924
+ aC as AUDIO_MACRO_LABELS,
5925
+ aD as AccessoriesStatusSchema,
5926
+ aE as AccessoryKind,
5927
+ aF as AddBrokerInputSchema,
5928
+ aG as AddonAutoUpdateSchema,
5929
+ aH as AddonListItemSchema,
5930
+ aI as AddonPageDeclarationSchema,
5931
+ aJ as AddonPageInfoSchema,
5932
+ aK as AgentLoadSummarySchema,
5933
+ aL as AlertSchema,
5934
+ aM as AlertSeveritySchema,
5935
+ aN as AlertSourceSchema,
5936
+ aO as AlertStatusSchema,
5937
+ aP as ApiKeyRecordSchema,
5938
+ aQ as ApiKeySummarySchema,
5939
+ aR as ArchiveEntrySchema,
5940
+ aS as ArchiveManifestSchema,
5941
+ aT as AudioAnalysisResultSchema,
5942
+ aU as AudioAnalysisSettingsSchema,
5943
+ aV as AudioChunkInputSchema,
5944
+ aW as AudioClassSummarySchema,
5945
+ aX as AudioClassificationLabelSchema,
5946
+ aY as AudioClassificationResultSchema,
5947
+ aZ as AudioCodecInfoSchema,
5948
+ a_ as AudioDecodeSessionConfigSchema,
5949
+ a$ as AudioEncodeSessionConfigSchema,
5950
+ b0 as AudioEncodedChunkSchema,
5951
+ b1 as AudioEventSchema,
5952
+ b2 as AudioLevelSchema,
5953
+ b3 as AudioMetricsHistoryPointSchema,
5954
+ b4 as AudioMetricsHistorySchema,
5955
+ b5 as AudioMetricsSnapshotSchema,
5956
+ b6 as AudioPcmChunkSchema,
5957
+ b7 as AuthResultSchema,
5958
+ b8 as AutoUpdateSettingsSchema,
5959
+ b9 as AvailableIntegrationTypeSchema,
5786
5960
  BACKEND_TO_FORMAT,
5787
- b7 as BATTERY_DEVICE_PROFILE,
5788
- b8 as BackupDestinationInfoSchema,
5789
- b9 as BackupEntrySchema,
5961
+ ba as BATTERY_DEVICE_PROFILE,
5962
+ bb as BackupDestinationInfoSchema,
5963
+ bc as BackupEntrySchema,
5790
5964
  BaseAddon,
5791
5965
  BaseDevice,
5792
5966
  BaseDeviceProvider,
5793
- ba as BatteryStatusSchema,
5794
- bb as BoundingBoxSchema,
5795
- bc as BrightnessStatusSchema,
5796
- bd as BrokerAudioClientSchema,
5797
- be as BrokerClientsSchema,
5798
- bf as BrokerConnectionDetailsSchema,
5799
- bg as BrokerDecodedClientSchema,
5800
- bh as BrokerInfoSchema,
5801
- bi as BrokerRtspClientSchema,
5802
- bj as BrokerStatsSchema,
5803
- bk as BrokerStatusSchema,
5804
- bl as CAM_PROFILE_ORDER,
5967
+ bd as BatteryStatusSchema,
5968
+ be as BoundingBoxSchema,
5969
+ bf as BrightnessStatusSchema,
5970
+ bg as BrokerAudioClientSchema,
5971
+ bh as BrokerClientsSchema,
5972
+ bi as BrokerConnectionDetailsSchema,
5973
+ bj as BrokerDecodedClientSchema,
5974
+ bk as BrokerInfoSchema,
5975
+ bl as BrokerRtspClientSchema,
5976
+ bm as BrokerStatsSchema,
5977
+ bn as BrokerStatusSchema,
5978
+ bo as CAM_PROFILE_ORDER,
5805
5979
  CAPABILITY_NAMES,
5806
5980
  CAPABILITY_ROUTER_KEYS,
5807
5981
  CAP_NAMES_WITH_STATUS,
5808
5982
  CAP_PROVIDER_KIND_MAP,
5809
5983
  COCO_80_LABELS,
5810
5984
  COCO_TO_MACRO,
5811
- bm as CamProfileSchema,
5812
- bn as CamStreamKindSchema,
5813
- bo as CamStreamResolutionSchema,
5814
- bp as CameraCredentialsSchema,
5815
- bq as CameraCredentialsStatusSchema,
5816
- br as CameraMetricsSchema,
5817
- bs as CameraMetricsWithDeviceIdSchema,
5818
- bt as CameraStreamSchema,
5819
- bu as CapScopeSchema,
5820
- bv as CapabilityBindingsSchema,
5821
- bw as ChargingStatus,
5822
- bx as ClientNetworkStatsSchema,
5823
- by as ClusterAddonNodeDeploymentSchema,
5824
- bz as ClusterAddonStatusEntrySchema,
5825
- bA as CollectionColumnSchema,
5826
- bB as CollectionIndexSchema,
5827
- bC as ConfigEntrySchema,
5828
- bD as ConfigSectionWithValuesSchema,
5829
- bE as ConfigTabDeclarationSchema,
5830
- bF as CreateApiKeyInputSchema,
5831
- bG as CreateApiKeyResultSchema,
5832
- bH as CreateIntegrationInputSchema,
5833
- bI as CreateScopedTokenInputSchema,
5834
- bJ as CreateScopedTokenResultSchema,
5835
- bK as CreateUserInputSchema,
5836
- bL as CustomActionInputSchema,
5985
+ bp as CamProfileSchema,
5986
+ bq as CamStreamDescriptorSchema,
5987
+ br as CamStreamKindSchema,
5988
+ bs as CamStreamResolutionSchema,
5989
+ bt as CameraCredentialsSchema,
5990
+ bu as CameraCredentialsStatusSchema,
5991
+ bv as CameraMetricsSchema,
5992
+ bw as CameraMetricsWithDeviceIdSchema,
5993
+ bx as CameraStreamSchema,
5994
+ by as CapScopeSchema,
5995
+ bz as CapabilityBindingsSchema,
5996
+ bA as ChargingStatus,
5997
+ bB as ClientNetworkStatsSchema,
5998
+ bC as ClusterAddonNodeDeploymentSchema,
5999
+ bD as ClusterAddonStatusEntrySchema,
6000
+ bE as CollectionColumnSchema,
6001
+ bF as CollectionIndexSchema,
6002
+ bG as ConfigEntrySchema,
6003
+ bH as ConfigSectionWithValuesSchema,
6004
+ bI as ConfigTabDeclarationSchema,
6005
+ bJ as CreateApiKeyInputSchema,
6006
+ bK as CreateApiKeyResultSchema,
6007
+ bL as CreateIntegrationInputSchema,
6008
+ bM as CreateScopedTokenInputSchema,
6009
+ bN as CreateScopedTokenResultSchema,
6010
+ bO as CreateUserInputSchema,
6011
+ bP as CustomActionInputSchema,
5837
6012
  DEFAULT_ADDON_PLACEMENT,
5838
- bM as DEFAULT_AUDIO_ANALYZER_CONFIG,
5839
- bN as DEFAULT_DECODER_HWACCEL_CONFIG,
6013
+ bQ as DEFAULT_AUDIO_ANALYZER_CONFIG,
6014
+ bR as DEFAULT_DECODER_HWACCEL_CONFIG,
5840
6015
  DEFAULT_FEATURES,
5841
6016
  DEFAULT_LOCATION_SUBDIRS,
5842
6017
  DEFAULT_RETENTION,
5843
6018
  DEVICE_CAP_NAMES,
5844
- bO as DEVICE_PROFILES,
5845
- bP as DEVICE_SETTINGS_CONTRIBUTION_METHODS,
5846
- bQ as DEVICE_STATUS_METHOD,
6019
+ bS as DEVICE_PROFILES,
6020
+ bT as DEVICE_SETTINGS_CONTRIBUTION_METHODS,
6021
+ bU as DEVICE_STATUS_METHOD,
5847
6022
  DEVICE_TYPE_INFO,
5848
- bR as DecodedAudioChunkSchema,
5849
- bS as DecodedFrameSchema,
5850
- bT as DecoderAssignmentSchema,
5851
- bU as DecoderSessionConfigSchema,
5852
- bV as DecoderStatsSchema,
5853
- bW as DeleteIntegrationResultSchema,
5854
- bX as DetectorOutputSchema,
6023
+ bV as DecodedAudioChunkSchema,
6024
+ bW as DecodedFrameSchema,
6025
+ bX as DecoderAssignmentSchema,
6026
+ bY as DecoderSessionConfigSchema,
6027
+ bZ as DecoderStatsSchema,
6028
+ b_ as DeleteIntegrationResultSchema,
6029
+ b$ as DetectorOutputSchema,
5855
6030
  DeviceConfig,
5856
- bY as DeviceDiscoveryStatusSchema,
5857
- bZ as DeviceExportExposeInputSchema,
5858
- b_ as DeviceExportStatusSchema,
5859
- b$ as DeviceExportUnexposeInputSchema,
5860
- c0 as DeviceFeature,
5861
- c1 as DeviceInfoSchema,
5862
- c2 as DeviceNetworkStatsSchema,
5863
- c3 as DeviceRole,
6031
+ c0 as DeviceDiscoveryStatusSchema,
6032
+ c1 as DeviceExportExposeInputSchema,
6033
+ c2 as DeviceExportStatusSchema,
6034
+ c3 as DeviceExportUnexposeInputSchema,
6035
+ c4 as DeviceFeature,
6036
+ c5 as DeviceInfoSchema,
6037
+ c6 as DeviceNetworkStatsSchema,
6038
+ c7 as DeviceRole,
5864
6039
  DeviceRuntimeState,
5865
- c4 as DeviceStatusSchema,
5866
- c5 as DeviceType,
5867
- c6 as DiscoveredChildDeviceSchema,
5868
- c7 as DiscoveredChildStatusSchema,
5869
- c8 as DiscoveredDeviceSchema,
6040
+ c8 as DeviceStatusSchema,
6041
+ c9 as DeviceType,
6042
+ ca as DiscoveredChildDeviceSchema,
6043
+ cb as DiscoveredChildStatusSchema,
6044
+ cc as DiscoveredDeviceSchema,
5870
6045
  DisposerChain,
5871
- c9 as DoorbellPressEventSchema,
5872
- ca as DoorbellStatusSchema,
6046
+ cd as DoorbellPressEventSchema,
6047
+ ce as DoorbellStatusSchema,
5873
6048
  ElementConfigStore,
5874
- cb as EmbeddingInfoSchema,
5875
- cc as EmbeddingResultSchema,
5876
- cd as EncodedPacketSchema,
5877
- ce as EnrichedWidgetMetadataSchema,
6049
+ cf as EmbeddingInfoSchema,
6050
+ cg as EmbeddingResultSchema,
6051
+ ch as EncodedPacketSchema,
6052
+ ci as EnrichedWidgetMetadataSchema,
5878
6053
  EventCategory,
5879
- cf as EventItemSchema,
5880
- cg as EventKindSchema,
6054
+ cj as EventItemSchema,
6055
+ ck as EventKindSchema,
5881
6056
  EventSourceType,
5882
- ch as ExportSetupFieldSchema,
5883
- ci as ExportSetupSchema,
5884
- cj as ExposedDeviceSchema,
5885
- ck as ExposedResourceSchema,
5886
- cl as FeatureManifestSchema,
5887
- cm as FeatureProbeStatusSchema,
5888
- cn as FrameHandleFormatSchema,
5889
- co as FrameHandleSchema,
5890
- cp as FrameInputSchema,
5891
- cq as GetStreamWithCodecInputSchema,
5892
- cr as GlobalMetricsSchema,
6057
+ cl as ExportSetupFieldSchema,
6058
+ cm as ExportSetupSchema,
6059
+ cn as ExposedDeviceSchema,
6060
+ co as ExposedResourceSchema,
6061
+ cp as FeatureManifestSchema,
6062
+ cq as FeatureProbeStatusSchema,
6063
+ cr as FrameHandleFormatSchema,
6064
+ cs as FrameHandleSchema,
6065
+ ct as FrameInputSchema,
6066
+ cu as GetStreamWithCodecInputSchema,
6067
+ cv as GlobalMetricsSchema,
5893
6068
  HF_BASE_URL,
5894
6069
  HF_REPO,
5895
- cs as HWACCEL_OPTIONS,
5896
- ct as HealthStatusSchema,
5897
- cu as HistoryPointSchema,
5898
- cv as HistoryResolutionEnum,
5899
- cw as InstalledPackageSchema,
5900
- cx as IntegrationLiteSchema,
5901
- cy as IntegrationWithStateSchema,
5902
- cz as IntercomAbilitySchema,
5903
- cA as IntercomStatusSchema,
6070
+ cw as HWACCEL_OPTIONS,
6071
+ cx as HealthStatusSchema,
6072
+ cy as HistoryPointSchema,
6073
+ cz as HistoryResolutionEnum,
6074
+ cA as InstalledPackageSchema,
6075
+ cB as IntegrationLiteSchema,
6076
+ cC as IntegrationWithStateSchema,
6077
+ cD as IntercomAbilitySchema,
6078
+ cE as IntercomStatusSchema,
5904
6079
  KNOWN_CAP_NAMES,
5905
- cB as LocationStatSchema,
5906
- cC as LogEntrySchema,
5907
- cD as LogLevelSchema,
5908
- cE as LogStreamEntrySchema,
6080
+ cF as LocationStatSchema,
6081
+ cG as LogEntrySchema,
6082
+ cH as LogLevelSchema,
6083
+ cI as LogStreamEntrySchema,
5909
6084
  MACRO_LABELS,
5910
6085
  METHOD_ACCESS_MAP,
5911
- cF as MODEL_FORMATS,
5912
- cG as MediaFileSchema,
5913
- cH as MeshPeerSchema,
5914
- cI as MeshStatusSchema,
5915
- cJ as MethodAccessSchema,
5916
- cK as MotionAnalysisResultSchema,
5917
- cL as MotionEventSchema,
5918
- cM as MotionOnMotionChangedDataSchema,
5919
- cN as MotionRegionSchema,
5920
- cO as MotionSourceEnum,
5921
- cP as MotionSourcesSchema,
5922
- cQ as MotionStatusSchema,
5923
- cR as MotionTriggerRuntimeStateSchema,
5924
- cS as MotionTriggerStatusSchema,
5925
- cT as MotionZoneOptionsSchema,
5926
- cU as MotionZonePatchSchema,
5927
- cV as MotionZoneStatusSchema,
5928
- cW as MqttBrokerStatusSchema,
5929
- cX as NativeDetectionSchema,
5930
- cY as NativeObjectClassEnum,
5931
- cZ as NativeObjectDetectionStatusSchema,
5932
- c_ as NetworkAccessStatusSchema,
5933
- c$ as NetworkAddressSchema,
5934
- d0 as NetworkEndpointSchema,
5935
- d1 as NotificationHistoryEntrySchema,
5936
- d2 as NotificationRuleSchema,
5937
- d3 as NotificationSchema,
5938
- d4 as OauthIntegrationDescriptorSchema,
5939
- d5 as ObjectEventSchema,
5940
- d6 as OrchestratorMetricsSchema,
5941
- d7 as OsdOverlayKindEnum,
5942
- d8 as OsdOverlayPatchSchema,
5943
- d9 as OsdOverlaySchema,
5944
- da as OsdPositionEnum,
5945
- db as OsdStatusSchema,
5946
- dc as PIPELINE_FLOW_CAPABILITY_NAMES,
5947
- dd as PIPELINE_OWNER_CAPABILITY_NAMES,
6086
+ cJ as MODEL_FORMATS,
6087
+ cK as MaskGridDimsSchema,
6088
+ cL as MaskGridShapeSchema,
6089
+ cM as MaskLineShapeSchema,
6090
+ cN as MaskPointSchema,
6091
+ cO as MaskPolygonShapeSchema,
6092
+ cP as MaskPolygonVerticesSchema,
6093
+ cQ as MaskRectShapeSchema,
6094
+ cR as MaskShapeKindSchema,
6095
+ cS as MaskShapeSchema,
6096
+ cT as MediaFileSchema,
6097
+ cU as MeshPeerSchema,
6098
+ cV as MeshStatusSchema,
6099
+ cW as MethodAccessSchema,
6100
+ cX as MotionAnalysisResultSchema,
6101
+ cY as MotionEventSchema,
6102
+ cZ as MotionOnMotionChangedDataSchema,
6103
+ c_ as MotionRegionSchema,
6104
+ c$ as MotionSourceEnum,
6105
+ d0 as MotionSourcesSchema,
6106
+ d1 as MotionStatusSchema,
6107
+ d2 as MotionTriggerRuntimeStateSchema,
6108
+ d3 as MotionTriggerStatusSchema,
6109
+ d4 as MotionZoneOptionsSchema,
6110
+ d5 as MotionZonePatchSchema,
6111
+ d6 as MotionZoneRegionSchema,
6112
+ d7 as MotionZoneStatusSchema,
6113
+ d8 as MqttBrokerStatusSchema,
6114
+ d9 as NativeDetectionSchema,
6115
+ da as NativeObjectClassEnum,
6116
+ db as NativeObjectDetectionRuntimeStateSchema,
6117
+ dc as NativeObjectDetectionStatusSchema,
6118
+ dd as NetworkAccessStatusSchema,
6119
+ de as NetworkAddressSchema,
6120
+ df as NetworkEndpointSchema,
6121
+ dg as NotificationHistoryEntrySchema,
6122
+ dh as NotificationRuleSchema,
6123
+ di as NotificationSchema,
6124
+ dj as OauthIntegrationDescriptorSchema,
6125
+ dk as ObjectEventSchema,
6126
+ dl as OrchestratorMetricsSchema,
6127
+ dm as OsdOverlayKindEnum,
6128
+ dn as OsdOverlayPatchSchema,
6129
+ dp as OsdOverlaySchema,
6130
+ dq as OsdPositionEnum,
6131
+ dr as OsdStatusSchema,
6132
+ ds as PIPELINE_FLOW_CAPABILITY_NAMES,
6133
+ dt as PIPELINE_OWNER_CAPABILITY_NAMES,
5948
6134
  PROVIDER_KIND_CAP_NAMES,
5949
6135
  PYTHON_SCRIPT,
5950
- de as PackageUpdateSchema,
5951
- df as PackageVersionInfoSchema,
5952
- dg as PasskeySummarySchema,
5953
- dh as PcmSampleFormatSchema,
5954
- di as PerScopeBreakdownSchema,
5955
- dj as PipelineAssignmentSchema,
5956
- dk as PipelineDefaultStepSchema,
5957
- dl as PipelineEngineChoiceSchema,
5958
- dm as PipelineRunResultBridge,
5959
- dn as PipelineStepInputSchema,
5960
- dp as PlaceholderReasonSchema,
5961
- dq as PolygonPointSchema,
5962
- dr as ProfileSlotSchema,
5963
- ds as ProfileSlotStatusSchema,
5964
- dt as ProviderStatusSchema,
5965
- du as PtzAutotrackRuntimeStateSchema,
5966
- dv as PtzAutotrackSettingsSchema,
5967
- dw as PtzAutotrackStatusSchema,
5968
- dx as PtzAutotrackTargetOptionSchema,
5969
- dy as PtzMoveCommandSchema,
5970
- dz as PtzPositionSchema,
5971
- dA as PtzPresetSchema,
5972
- dB as PtzStatusSchema,
5973
- dC as QueryFilterSchema,
6136
+ du as PackageUpdateSchema,
6137
+ dv as PackageVersionInfoSchema,
6138
+ dw as PasskeySummarySchema,
6139
+ dx as PcmSampleFormatSchema,
6140
+ dy as PerScopeBreakdownSchema,
6141
+ dz as PipelineAssignmentSchema,
6142
+ dA as PipelineDefaultStepSchema,
6143
+ dB as PipelineEngineChoiceSchema,
6144
+ dC as PipelineRunResultBridge,
6145
+ dD as PipelineStepInputSchema,
6146
+ dE as PlaceholderReasonSchema,
6147
+ dF as PolygonPointSchema,
6148
+ dG as PrivacyMaskOptionsSchema,
6149
+ dH as PrivacyMaskPatchSchema,
6150
+ dI as PrivacyMaskRegionSchema,
6151
+ dJ as PrivacyMaskShapeSchema,
6152
+ dK as PrivacyMaskStatusSchema,
6153
+ dL as ProfileSlotSchema,
6154
+ dM as ProfileSlotStatusSchema,
6155
+ dN as ProviderStatusSchema,
6156
+ dO as PtzAutotrackRuntimeStateSchema,
6157
+ dP as PtzAutotrackSettingsSchema,
6158
+ dQ as PtzAutotrackStatusSchema,
6159
+ dR as PtzAutotrackTargetOptionSchema,
6160
+ dS as PtzMoveCommandSchema,
6161
+ dT as PtzPositionSchema,
6162
+ dU as PtzPresetSchema,
6163
+ dV as PtzStatusSchema,
6164
+ dW as QueryFilterSchema,
5974
6165
  RECOGNITION_TYPES,
5975
6166
  RUNTIME_DEFAULTS,
5976
6167
  RUNTIME_TO_FORMAT,
5977
6168
  ReadinessRegistry,
5978
6169
  ReadinessTimeoutError,
5979
- dD as RegisteredStreamSchema,
5980
- dE as ReportMotionInputSchema,
6170
+ dX as RegisteredStreamSchema,
6171
+ dY as ReportMotionInputSchema,
5981
6172
  RingBuffer,
5982
- dF as RtpSourceSchema,
5983
- dG as RtspRestreamEntrySchema,
5984
- dH as RunnerCameraConfigSchema,
5985
- dI as RunnerCameraDeviceUIFields,
5986
- dJ as RunnerLocalLoadSchema,
5987
- dK as RunnerLocalMetricsSchema,
6173
+ dZ as RtpSourceSchema,
6174
+ d_ as RtspRestreamEntrySchema,
6175
+ d$ as RunnerCameraConfigSchema,
6176
+ e0 as RunnerCameraDeviceUIFields,
6177
+ e1 as RunnerLocalLoadSchema,
6178
+ e2 as RunnerLocalMetricsSchema,
5988
6179
  SCOPE_PRESETS,
5989
- dL as STORAGE_LOCATION_CARDINALITY,
6180
+ e3 as STORAGE_LOCATION_CARDINALITY,
5990
6181
  STORAGE_LOCATION_TYPES,
5991
6182
  STREAM_PROFILE_META,
5992
6183
  STREAM_QUALITY_LABELS,
5993
6184
  SUB_DETECTION_TYPES,
5994
6185
  SYSTEM_CAP_NAMES,
5995
- dM as ScopedTokenSchema,
5996
- dN as ScopedTokenSummarySchema,
5997
- dO as SearchResultSchema,
5998
- dP as SegmentSchema,
5999
- dQ as SendEmailInputSchema,
6000
- dR as SendEmailResultSchema,
6001
- dS as SettingsPatchSchema,
6002
- dT as SettingsRecordSchema,
6003
- dU as SettingsSchemaWithValuesSchema,
6004
- dV as SettingsUpdateResultSchema,
6005
- dW as ShmRingStatsSchema,
6006
- dX as SmtpStatusSchema,
6007
- dY as SnapshotImageSchema,
6008
- dZ as SpatialDetectionSchema,
6009
- d_ as SsoBridgeClaimsSchema,
6010
- d$ as StartEmbeddedInputSchema,
6011
- e0 as StorageAbortUploadInputSchema,
6012
- e1 as StorageBeginDownloadInputSchema,
6013
- e2 as StorageBeginDownloadResultSchema,
6014
- e3 as StorageBeginUploadInputSchema,
6015
- e4 as StorageBeginUploadResultSchema,
6016
- e5 as StorageEndDownloadInputSchema,
6017
- e6 as StorageFinalizeUploadInputSchema,
6018
- e7 as StorageLocationRefSchema,
6019
- e8 as StorageLocationSchema,
6020
- e9 as StorageLocationTypeSchema,
6021
- ea as StorageProviderInfoSchema,
6022
- eb as StorageReadChunkInputSchema,
6023
- ec as StorageTestLocationResultSchema,
6024
- ed as StorageWriteChunkInputSchema,
6025
- ee as StreamFormatSchema,
6026
- ef as StreamInfoSchema,
6027
- eg as StreamNetworkStatsSchema,
6028
- eh as StreamParamsOptionsSchema,
6029
- ei as StreamParamsStatusSchema,
6030
- ej as StreamProfileConfigSchema,
6031
- ek as StreamProfileOptionsSchema,
6032
- el as StreamProfilePatchSchema,
6033
- em as StreamProfileSchema,
6034
- en as StreamSourceEntrySchema,
6035
- eo as StreamSourceSchema,
6036
- ep as SubscribeAudioChunksInputSchema,
6037
- eq as SubscribeAudioChunksResultSchema,
6038
- er as SubscribeFramesInputSchema,
6039
- es as SubscribeFramesResultSchema,
6040
- et as SwitchStatusSchema,
6041
- eu as SystemMetricsSchema,
6186
+ e4 as ScopedTokenSchema,
6187
+ e5 as ScopedTokenSummarySchema,
6188
+ e6 as SearchResultSchema,
6189
+ e7 as SegmentSchema,
6190
+ e8 as SendEmailInputSchema,
6191
+ e9 as SendEmailResultSchema,
6192
+ ea as SettingsPatchSchema,
6193
+ eb as SettingsRecordSchema,
6194
+ ec as SettingsSchemaWithValuesSchema,
6195
+ ed as SettingsUpdateResultSchema,
6196
+ ee as ShmRingStatsSchema,
6197
+ ef as SmtpStatusSchema,
6198
+ eg as SnapshotImageSchema,
6199
+ eh as SpatialDetectionSchema,
6200
+ ei as SsoBridgeClaimsSchema,
6201
+ ej as StartEmbeddedInputSchema,
6202
+ ek as StorageAbortUploadInputSchema,
6203
+ el as StorageBeginDownloadInputSchema,
6204
+ em as StorageBeginDownloadResultSchema,
6205
+ en as StorageBeginUploadInputSchema,
6206
+ eo as StorageBeginUploadResultSchema,
6207
+ ep as StorageEndDownloadInputSchema,
6208
+ eq as StorageFinalizeUploadInputSchema,
6209
+ er as StorageLocationRefSchema,
6210
+ es as StorageLocationSchema,
6211
+ et as StorageLocationTypeSchema,
6212
+ eu as StorageProviderInfoSchema,
6213
+ ev as StorageReadChunkInputSchema,
6214
+ ew as StorageTestLocationResultSchema,
6215
+ ex as StorageWriteChunkInputSchema,
6216
+ ey as StreamFormatSchema,
6217
+ ez as StreamInfoSchema,
6218
+ eA as StreamNetworkStatsSchema,
6219
+ eB as StreamParamsOptionsSchema,
6220
+ eC as StreamParamsStatusSchema,
6221
+ eD as StreamProfileConfigSchema,
6222
+ eE as StreamProfileOptionsSchema,
6223
+ eF as StreamProfilePatchSchema,
6224
+ eG as StreamProfileSchema,
6225
+ eH as StreamSourceEntrySchema,
6226
+ eI as StreamSourceSchema,
6227
+ eJ as SubscribeAudioChunksInputSchema,
6228
+ eK as SubscribeAudioChunksResultSchema,
6229
+ eL as SubscribeFramesInputSchema,
6230
+ eM as SubscribeFramesResultSchema,
6231
+ eN as SwitchStatusSchema,
6232
+ eO as SystemMetricsSchema,
6042
6233
  SystemMirror,
6043
- ev as TestConnectionResultSchema,
6044
- ew as ToastSchema,
6045
- ex as TokenScopeSchema,
6046
- ey as TopologyNodeSchema,
6047
- ez as TopologyProcessSchema,
6048
- eA as TopologyServiceSchema,
6049
- eB as TrackSchema,
6050
- eC as TrackStateSchema,
6051
- eD as TrackedDetectionSchema,
6052
- eE as TurnServerSchema,
6053
- eF as UpdateIntegrationInputSchema,
6054
- eG as UpdateUserInputSchema,
6055
- eH as UserRecordSchema,
6056
- eI as UserSummarySchema,
6057
- eJ as WELL_KNOWN_TABS,
6058
- eK as WELL_KNOWN_TAB_MAP,
6059
- eL as WebrtcStreamChoiceSchema,
6060
- eM as WebrtcStreamTargetSchema,
6061
- eN as WidgetHostEnum,
6062
- eO as WidgetMetadataSchema,
6063
- eP as WidgetRemoteSchema,
6064
- eQ as WidgetSizeEnum,
6065
- eR as YAMNET_TO_MACRO,
6066
- eS as ZoneKindEnum,
6067
- eT as ZoneRuleModeEnum,
6068
- eU as ZoneRuleSchema,
6069
- eV as ZoneRuleStageEnum,
6070
- eW as ZoneRulesArraySchema,
6071
- eX as ZoneSchema,
6072
- eY as ZoneScopeBreakdownSchema,
6234
+ eP as TestConnectionResultSchema,
6235
+ eQ as ToastSchema,
6236
+ eR as TokenScopeSchema,
6237
+ eS as TopologyNodeSchema,
6238
+ eT as TopologyProcessSchema,
6239
+ eU as TopologyServiceSchema,
6240
+ eV as TrackSchema,
6241
+ eW as TrackStateSchema,
6242
+ eX as TrackedDetectionSchema,
6243
+ eY as TurnServerSchema,
6244
+ eZ as UpdateIntegrationInputSchema,
6245
+ e_ as UpdateUserInputSchema,
6246
+ e$ as UserRecordSchema,
6247
+ f0 as UserSummarySchema,
6248
+ f1 as WELL_KNOWN_TABS,
6249
+ f2 as WELL_KNOWN_TAB_MAP,
6250
+ f3 as WebrtcStreamChoiceSchema,
6251
+ f4 as WebrtcStreamTargetSchema,
6252
+ f5 as WidgetHostEnum,
6253
+ f6 as WidgetMetadataSchema,
6254
+ f7 as WidgetRemoteSchema,
6255
+ f8 as WidgetSizeEnum,
6256
+ f9 as YAMNET_TO_MACRO,
6257
+ fa as ZoneKindEnum,
6258
+ fb as ZoneRuleModeEnum,
6259
+ fc as ZoneRuleSchema,
6260
+ fd as ZoneRuleStageEnum,
6261
+ fe as ZoneRulesArraySchema,
6262
+ ff as ZoneSchema,
6263
+ fg as ZoneScopeBreakdownSchema,
6073
6264
  accessoriesCapability,
6074
- eZ as accessoryStableId,
6265
+ fh as accessoryStableId,
6075
6266
  addonPagesCapability,
6076
6267
  addonPagesSourceCapability,
6077
6268
  addonRoutesCapability,
@@ -6100,7 +6291,9 @@ export {
6100
6291
  buildAddonRouteProvider,
6101
6292
  buildStreamParamsConfigSchema,
6102
6293
  cameraCredentialsCapability,
6294
+ cameraPipelineConfigCapability,
6103
6295
  cameraStreamsCapability,
6296
+ cellsToRects,
6104
6297
  classifyStream,
6105
6298
  classifyStreams,
6106
6299
  cosineSimilarity,
@@ -6118,7 +6311,7 @@ export {
6118
6311
  deviceDiscoveryCapability,
6119
6312
  deviceExportCapability,
6120
6313
  deviceManagerCapability,
6121
- e_ as deviceMatchesProfile,
6314
+ fi as deviceMatchesProfile,
6122
6315
  deviceOpsCapability,
6123
6316
  deviceProviderCapability,
6124
6317
  deviceStateCapability,
@@ -6129,13 +6322,13 @@ export {
6129
6322
  emitReadiness,
6130
6323
  errMsg,
6131
6324
  evaluateZoneRules,
6132
- e$ as event,
6325
+ fj as event,
6133
6326
  eventsCapability,
6134
- f0 as expandCapMethods,
6327
+ fk as expandCapMethods,
6135
6328
  featureProbeCapability,
6136
6329
  formatForBackend,
6137
6330
  formatForRuntime,
6138
- f1 as getAudioMacroClassIds,
6331
+ fl as getAudioMacroClassIds,
6139
6332
  getCapsByProviderKind,
6140
6333
  hfModelUrl,
6141
6334
  hydrateSchema,
@@ -6143,14 +6336,14 @@ export {
6143
6336
  intercomCapability,
6144
6337
  isAgentOnlyPlacement,
6145
6338
  isDeployableToAgent,
6146
- f2 as isDeviceConfigCap,
6339
+ fm as isDeviceConfigCap,
6147
6340
  isEvent,
6148
6341
  localNetworkCapability,
6149
6342
  logDestinationCapability,
6150
- f3 as mapAudioLabelToMacro,
6343
+ fn as mapAudioLabelToMacro,
6151
6344
  maskUrlCredentials,
6152
6345
  meshNetworkCapability,
6153
- f4 as method,
6346
+ fo as method,
6154
6347
  metricsProviderCapability,
6155
6348
  motionCapability,
6156
6349
  motionDetectionCapability,
@@ -6175,6 +6368,7 @@ export {
6175
6368
  pipelineOrchestratorCapability,
6176
6369
  pipelineRunnerCapability,
6177
6370
  platformProbeCapability,
6371
+ privacyMaskCapability,
6178
6372
  ptzAutotrackCapability,
6179
6373
  ptzCapability,
6180
6374
  pythonScriptForBackend,
@@ -6182,13 +6376,14 @@ export {
6182
6376
  rebootCapability,
6183
6377
  recordingCapability,
6184
6378
  recordingEngineCapability,
6379
+ rectsToCells,
6185
6380
  requiresPython,
6186
6381
  resolveAddonExecution,
6187
6382
  resolveAddonGroup,
6188
6383
  resolveAddonPlacement,
6189
6384
  resolveAddonRuntime,
6190
6385
  resolveDetectionRuntime,
6191
- f5 as resolveDeviceProfile,
6386
+ fp as resolveDeviceProfile,
6192
6387
  resolveModelFormat,
6193
6388
  resolveRunnerId,
6194
6389
  restreamerCapability,
@@ -6202,6 +6397,7 @@ export {
6202
6397
  storageCapability,
6203
6398
  storageProviderCapability,
6204
6399
  streamBrokerCapability,
6400
+ streamCatalogCapability,
6205
6401
  streamParamsCapability,
6206
6402
  streamPixels,
6207
6403
  streamQualityLabel,
@@ -6215,8 +6411,13 @@ export {
6215
6411
  userManagementCapability,
6216
6412
  userPasskeysCapability,
6217
6413
  webrtcCapability,
6218
- f6 as webrtcClientHintsSchema,
6414
+ fq as webrtcClientHintsSchema,
6219
6415
  webrtcSessionCapability,
6416
+ fr as wiringAddonHealthSchema,
6417
+ fs as wiringHealthSnapshotSchema,
6418
+ ft as wiringNodeHealthSchema,
6419
+ fu as wiringProbeKindSchema,
6420
+ fv as wiringProbeResultSchema,
6220
6421
  zodEntriesToConfigUI,
6221
6422
  zoneAnalyticsCapability,
6222
6423
  zoneRulesCapability,