@camstack/addon-pipeline 1.2.52 → 1.2.53

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 (36) hide show
  1. package/dist/{addon-utils-DveoBR6G.js → addon-utils-CQs-AjTJ.js} +177 -177
  2. package/dist/{addon-utils-QuxtOdK1.mjs → addon-utils-CZ2xo67g.mjs} +177 -177
  3. package/dist/audio-analyzer/index.js +2 -2
  4. package/dist/audio-analyzer/index.mjs +2 -2
  5. package/dist/detection-pipeline/index.js +3 -3
  6. package/dist/detection-pipeline/index.mjs +3 -3
  7. package/dist/{dist-gB3o0cyM.mjs → dist-B55xTTsS.mjs} +368 -5
  8. package/dist/{dist-CzFJeiG1.js → dist-D8TX_P_A.js} +368 -5
  9. package/dist/{event-loop-stall-monitor-DSPDQYjc.js → event-loop-stall-monitor-Bs6d-u_F.js} +1 -1
  10. package/dist/{event-loop-stall-monitor-PxIaVeyh.mjs → event-loop-stall-monitor-Cq_KOlfb.mjs} +1 -1
  11. package/dist/motion-wasm/index.js +1 -1
  12. package/dist/motion-wasm/index.mjs +1 -1
  13. package/dist/pipeline-runner/index.js +75 -25
  14. package/dist/pipeline-runner/index.mjs +75 -25
  15. package/dist/recorder/index.js +2 -2
  16. package/dist/recorder/index.mjs +2 -2
  17. package/dist/session-decode/decode-worker-child.js +6 -2
  18. package/dist/session-decode/decode-worker-child.mjs +6 -2
  19. package/dist/stream-broker/_stub.js +2 -2
  20. package/dist/stream-broker/{_virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-DAeBhR8B.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-C-9q6y1s.mjs} +3 -3
  21. package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-CAmiVOsA.mjs +26 -0
  22. package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-CaGsMvou.mjs +26 -0
  23. package/dist/stream-broker/{hostInit-DniAXKLy.mjs → hostInit-DiXYwnXH.mjs} +3 -3
  24. package/dist/stream-broker/index.js +2 -2
  25. package/dist/stream-broker/index.mjs +2 -2
  26. package/dist/stream-broker/remoteEntry.js +1 -1
  27. package/dist/{worker-protocol-BhhX7J4-.mjs → worker-protocol-Bol291_n.mjs} +1 -1
  28. package/dist/{worker-protocol-BQlELGzv.js → worker-protocol-C2uctCrd.js} +1 -1
  29. package/embed-dist/assets/{MaskShapeCanvas-DI4BY7W2-B1gpA9sI.js → MaskShapeCanvas-DI4BY7W2-CXHeTkIT.js} +1 -1
  30. package/embed-dist/assets/{MotionZonesSettings-NcxxQN8r-DV6vvNDq.js → MotionZonesSettings-NcxxQN8r-De5VKf09.js} +1 -1
  31. package/embed-dist/assets/{PrivacyMaskSettings-APgPLF7p-BmUdRoZ9.js → PrivacyMaskSettings-APgPLF7p-Z7dsjOG5.js} +1 -1
  32. package/embed-dist/assets/{index-DsGzhGCW.js → index-NJB31mpg.js} +12 -12
  33. package/embed-dist/index.html +1 -1
  34. package/package.json +1 -1
  35. package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-Bl9zivOk.mjs +0 -26
  36. package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-Czrsozsg.mjs +0 -26
@@ -3,9 +3,9 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../chunk-emK7D4bc.js");
6
- const require_dist = require("../dist-CzFJeiG1.js");
7
- const require_event_loop_stall_monitor = require("../event-loop-stall-monitor-DSPDQYjc.js");
8
- const require_worker_protocol = require("../worker-protocol-BQlELGzv.js");
6
+ const require_dist = require("../dist-D8TX_P_A.js");
7
+ const require_event_loop_stall_monitor = require("../event-loop-stall-monitor-Bs6d-u_F.js");
8
+ const require_worker_protocol = require("../worker-protocol-C2uctCrd.js");
9
9
  const require_hub_hostname = require("../hub-hostname-DAJXlOgV.js");
10
10
  const require_lazy_sharp = require("../lazy-sharp-CcYuXtsa.js");
11
11
  const require_remote_restream = require("../remote-restream-CO36Sr30.js");
@@ -1106,6 +1106,7 @@ function startSessionDecodePump(deps) {
1106
1106
  break;
1107
1107
  }
1108
1108
  try {
1109
+ if (deps.shouldMaterializeFrame && !deps.shouldMaterializeFrame()) continue;
1109
1110
  const decoded = await toDecodedFrame(frame, format);
1110
1111
  const image = frame.image;
1111
1112
  const cropFn = image.nativeCrop;
@@ -3137,15 +3138,8 @@ var PipelineRunner = class {
3137
3138
  * (the FrameQueue implementation is latest-only and ignores maxSize
3138
3139
  * anyway — see `frame-queue.ts` — so the field is effectively a
3139
3140
  * metadata hint for observability).
3140
- * - `targetLoadPercent` / `minThrottledFps`: stored on `this.config` (read
3141
- * by `getLimits()`), but NOT re-fed into the live `FrameGovernor` — the
3142
- * governor is built once, at construction, from the config snapshot
3143
- * passed to the constructor. A hot patch to either knob changes what
3144
- * `getLimits()` reports but does not change live admission pacing until
3145
- * the runner is reconstructed. (Rebuilding the governor live is a
3146
- * follow-up, not in scope here — `maxConcurrentInferences` has the same
3147
- * gap: the semaphore resizes live but the governor's budget calc keeps
3148
- * the construction-time value.)
3141
+ * - `targetLoadPercent` / `minThrottledFps` and inference concurrency:
3142
+ * rebuild the live governor and immediately recompute admission intervals.
3149
3143
  *
3150
3144
  * Only keys present in the patch are overwritten; unspecified keys
3151
3145
  * retain their current value. Any illegal combination (e.g.
@@ -3161,6 +3155,12 @@ var PipelineRunner = class {
3161
3155
  };
3162
3156
  if (next.maxConcurrentInferences !== this.config.maxConcurrentInferences) this.semaphore.resize(next.maxConcurrentInferences);
3163
3157
  this.config = next;
3158
+ this.governor = new FrameGovernor({
3159
+ targetLoadPercent: next.targetLoadPercent,
3160
+ minThrottledFps: next.minThrottledFps,
3161
+ maxConcurrentInferences: next.maxConcurrentInferences
3162
+ });
3163
+ this.recomputeGovernor();
3164
3164
  }
3165
3165
  /** Read the current tuning fields for diagnostics / tests. */
3166
3166
  getLimits() {
@@ -3254,17 +3254,36 @@ var PipelineRunner = class {
3254
3254
  * saving; do not turn it back into `void` for tidiness.
3255
3255
  */
3256
3256
  enqueueDetectionFrame(deviceId, frame, handle) {
3257
+ if (!this.reserveDetectionFrame(deviceId)) return false;
3258
+ return this.enqueueReservedDetectionFrame(deviceId, frame, handle);
3259
+ }
3260
+ /**
3261
+ * Reserve adaptive admission before a session-decode frame is materialized.
3262
+ * This is intentionally pixel-free: the pump can skip `toBuffer()` entirely
3263
+ * when the frame is outside the governor interval, avoiding RGB conversion,
3264
+ * IPC and retention work. Raw arrivals are counted here, before the gate, so
3265
+ * recomputation never feeds the throttled output rate back in as source FPS.
3266
+ */
3267
+ reserveDetectionFrame(deviceId, now = Date.now()) {
3257
3268
  const state = this.cameras.get(deviceId);
3258
3269
  if (!state) return false;
3259
3270
  this.arrivalCounts.set(deviceId, (this.arrivalCounts.get(deviceId) ?? 0) + 1);
3260
3271
  if (state.phase !== "active") return false;
3261
3272
  const interval = this.governor.minIntervalMs(deviceId);
3262
3273
  if (interval > 0) {
3263
- const last = this.lastAdmittedAt.get(deviceId) ?? 0;
3264
- const now = Date.now();
3265
- if (now - last < interval) return false;
3274
+ if (now - (this.lastAdmittedAt.get(deviceId) ?? 0) < interval) return false;
3266
3275
  this.lastAdmittedAt.set(deviceId, now);
3267
3276
  }
3277
+ return true;
3278
+ }
3279
+ /**
3280
+ * Queue a frame whose admission was already reserved synchronously through
3281
+ * {@link reserveDetectionFrame}. Kept separate so the ordinary public path
3282
+ * cannot accidentally count one source frame twice.
3283
+ */
3284
+ enqueueReservedDetectionFrame(deviceId, frame, handle) {
3285
+ const state = this.cameras.get(deviceId);
3286
+ if (!state || state.phase !== "active") return false;
3268
3287
  frame._enqueuedAt = Date.now();
3269
3288
  state.detectionQueue.enqueue({
3270
3289
  frame,
@@ -5650,21 +5669,44 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends require_dist.BaseAdd
5650
5669
  * no second dial, no second decode, no GPU). Mirrors the shm shared-motion
5651
5670
  * seam (`subscribeMotionFrames` `shared` branch).
5652
5671
  */
5653
- enqueueSharedDetectionFrame(deviceId, frame, handle) {
5672
+ enqueueSharedDetectionFrame(deviceId, frame, handle, reservation) {
5654
5673
  const runner = this.runner;
5655
5674
  if (!runner) return false;
5656
- const admitted = runner.enqueueDetectionFrame(deviceId, frame, handle);
5657
- const sink = this.sharedMotionSinks.get(deviceId);
5658
- if (sink) {
5659
- const now = this.sharedSinkNow();
5660
- if (now - sink.lastMotionEnqueueTs >= sink.minIntervalMs) {
5661
- sink.lastMotionEnqueueTs = now;
5662
- runner.enqueueMotionFrame(deviceId, rgbFrameToGrayFrame(frame), void 0);
5675
+ const admitted = reservation ? reservation.detection && runner.enqueueReservedDetectionFrame(deviceId, frame, handle) : runner.enqueueDetectionFrame(deviceId, frame, handle);
5676
+ if (reservation?.motion) runner.enqueueMotionFrame(deviceId, rgbFrameToGrayFrame(frame), void 0);
5677
+ else if (!reservation) {
5678
+ const sink = this.sharedMotionSinks.get(deviceId);
5679
+ if (sink) {
5680
+ const now = this.sharedSinkNow();
5681
+ if (now - sink.lastMotionEnqueueTs >= sink.minIntervalMs) {
5682
+ sink.lastMotionEnqueueTs = now;
5683
+ runner.enqueueMotionFrame(deviceId, rgbFrameToGrayFrame(frame), void 0);
5684
+ }
5663
5685
  }
5664
5686
  }
5665
5687
  return admitted;
5666
5688
  }
5667
5689
  /**
5690
+ * Reserve all consumers of one lazy RGB frame before materializing pixels.
5691
+ * Detection follows the adaptive governor; shared motion keeps its independent
5692
+ * cadence so throttling inference cannot starve the analyzer.
5693
+ */
5694
+ reserveSharedDetectionFrame(deviceId) {
5695
+ const detection = this.runner?.reserveDetectionFrame(deviceId) ?? false;
5696
+ const sink = this.sharedMotionSinks.get(deviceId);
5697
+ if (!sink) return {
5698
+ detection,
5699
+ motion: false
5700
+ };
5701
+ const now = this.sharedSinkNow();
5702
+ const motion = now - sink.lastMotionEnqueueTs >= sink.minIntervalMs;
5703
+ if (motion) sink.lastMotionEnqueueTs = now;
5704
+ return {
5705
+ detection,
5706
+ motion
5707
+ };
5708
+ }
5709
+ /**
5668
5710
  * Epic C P1 detection path for a flagged camera: decode `rgb` in a
5669
5711
  * per-session forked worker and feed the runner's detection queue INLINE (no
5670
5712
  * `FrameHandle`), exactly like the shared shm path. Teardown stops the pump
@@ -5717,6 +5759,7 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends require_dist.BaseAdd
5717
5759
  streamId: config.detectionStreamId,
5718
5760
  codec: source.codec
5719
5761
  } });
5762
+ let reservation = null;
5720
5763
  return startSessionDecodePump({
5721
5764
  fork: this.forkDecodeWorkerWithLease,
5722
5765
  logger: log,
@@ -5725,12 +5768,19 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends require_dist.BaseAdd
5725
5768
  fps: config.detectionFps,
5726
5769
  format: "rgb"
5727
5770
  },
5771
+ shouldMaterializeFrame: () => {
5772
+ reservation = this.reserveSharedDetectionFrame(config.deviceId);
5773
+ return reservation.detection || reservation.motion;
5774
+ },
5728
5775
  acquireSpawnSlot: this.buildDecodeSpawnAcquire(log, "detect"),
5729
5776
  onEnded: () => this.handleDetectionDecodeEnded(config.deviceId),
5730
5777
  onDecodedFrame: (frame, nativeCrop) => {
5731
- const handle = retainedFrames?.write(config.deviceId, frame) ?? void 0;
5778
+ const current = reservation;
5779
+ reservation = null;
5780
+ if (!current) return;
5781
+ const handle = current.detection ? retainedFrames?.write(config.deviceId, frame) ?? void 0 : void 0;
5732
5782
  if (handle && nativeCrop) this.nativeCropRegistry.register(handle, nativeCrop, config.deviceId);
5733
- if (this.enqueueSharedDetectionFrame(config.deviceId, frame, handle)) nativeCrop?.markInferred();
5783
+ if (this.enqueueSharedDetectionFrame(config.deviceId, frame, handle, current)) nativeCrop?.markInferred();
5734
5784
  }
5735
5785
  });
5736
5786
  }
@@ -1,6 +1,6 @@
1
- import { A as defineCustomActions, Dt as object, Et as number, G as pipelineRunnerCapability, H as pickDetailCropConvention, O as customAction, St as boolean, Tt as literal, U as pickNativeLeaseOverride, bt as _enum, et as errMsg, ht as nodePin, j as deriveDetailCropRect, jt as EventCategory, kt as string, ot as BaseAddon, s as DEFAULT_DETAIL_CROP_CONVENTION, u as DEVICE_BACKEND_TO_FORMAT, ut as createEvent, wt as lazy, xt as array } from "../dist-gB3o0cyM.mjs";
2
- import { c as getStepDefinition, t as attributeStall } from "../event-loop-stall-monitor-PxIaVeyh.mjs";
3
- import { a as nativeLeaseSettingEnv, t as isWorkerReply } from "../worker-protocol-BhhX7J4-.mjs";
1
+ import { A as defineCustomActions, Dt as object, Et as number, G as pipelineRunnerCapability, H as pickDetailCropConvention, O as customAction, St as boolean, Tt as literal, U as pickNativeLeaseOverride, bt as _enum, et as errMsg, ht as nodePin, j as deriveDetailCropRect, jt as EventCategory, kt as string, ot as BaseAddon, s as DEFAULT_DETAIL_CROP_CONVENTION, u as DEVICE_BACKEND_TO_FORMAT, ut as createEvent, wt as lazy, xt as array } from "../dist-B55xTTsS.mjs";
2
+ import { c as getStepDefinition, t as attributeStall } from "../event-loop-stall-monitor-Cq_KOlfb.mjs";
3
+ import { a as nativeLeaseSettingEnv, t as isWorkerReply } from "../worker-protocol-Bol291_n.mjs";
4
4
  import { t as resolveHubHostname } from "../hub-hostname-cCknRYKj.mjs";
5
5
  import { t as getSharp } from "../lazy-sharp-B-mb8uWx.mjs";
6
6
  import { n as profileForStreamId, t as isRemoteRestream } from "../remote-restream-BeHi78PZ.mjs";
@@ -1099,6 +1099,7 @@ function startSessionDecodePump(deps) {
1099
1099
  break;
1100
1100
  }
1101
1101
  try {
1102
+ if (deps.shouldMaterializeFrame && !deps.shouldMaterializeFrame()) continue;
1102
1103
  const decoded = await toDecodedFrame(frame, format);
1103
1104
  const image = frame.image;
1104
1105
  const cropFn = image.nativeCrop;
@@ -3129,15 +3130,8 @@ var PipelineRunner = class {
3129
3130
  * (the FrameQueue implementation is latest-only and ignores maxSize
3130
3131
  * anyway — see `frame-queue.ts` — so the field is effectively a
3131
3132
  * metadata hint for observability).
3132
- * - `targetLoadPercent` / `minThrottledFps`: stored on `this.config` (read
3133
- * by `getLimits()`), but NOT re-fed into the live `FrameGovernor` — the
3134
- * governor is built once, at construction, from the config snapshot
3135
- * passed to the constructor. A hot patch to either knob changes what
3136
- * `getLimits()` reports but does not change live admission pacing until
3137
- * the runner is reconstructed. (Rebuilding the governor live is a
3138
- * follow-up, not in scope here — `maxConcurrentInferences` has the same
3139
- * gap: the semaphore resizes live but the governor's budget calc keeps
3140
- * the construction-time value.)
3133
+ * - `targetLoadPercent` / `minThrottledFps` and inference concurrency:
3134
+ * rebuild the live governor and immediately recompute admission intervals.
3141
3135
  *
3142
3136
  * Only keys present in the patch are overwritten; unspecified keys
3143
3137
  * retain their current value. Any illegal combination (e.g.
@@ -3153,6 +3147,12 @@ var PipelineRunner = class {
3153
3147
  };
3154
3148
  if (next.maxConcurrentInferences !== this.config.maxConcurrentInferences) this.semaphore.resize(next.maxConcurrentInferences);
3155
3149
  this.config = next;
3150
+ this.governor = new FrameGovernor({
3151
+ targetLoadPercent: next.targetLoadPercent,
3152
+ minThrottledFps: next.minThrottledFps,
3153
+ maxConcurrentInferences: next.maxConcurrentInferences
3154
+ });
3155
+ this.recomputeGovernor();
3156
3156
  }
3157
3157
  /** Read the current tuning fields for diagnostics / tests. */
3158
3158
  getLimits() {
@@ -3246,17 +3246,36 @@ var PipelineRunner = class {
3246
3246
  * saving; do not turn it back into `void` for tidiness.
3247
3247
  */
3248
3248
  enqueueDetectionFrame(deviceId, frame, handle) {
3249
+ if (!this.reserveDetectionFrame(deviceId)) return false;
3250
+ return this.enqueueReservedDetectionFrame(deviceId, frame, handle);
3251
+ }
3252
+ /**
3253
+ * Reserve adaptive admission before a session-decode frame is materialized.
3254
+ * This is intentionally pixel-free: the pump can skip `toBuffer()` entirely
3255
+ * when the frame is outside the governor interval, avoiding RGB conversion,
3256
+ * IPC and retention work. Raw arrivals are counted here, before the gate, so
3257
+ * recomputation never feeds the throttled output rate back in as source FPS.
3258
+ */
3259
+ reserveDetectionFrame(deviceId, now = Date.now()) {
3249
3260
  const state = this.cameras.get(deviceId);
3250
3261
  if (!state) return false;
3251
3262
  this.arrivalCounts.set(deviceId, (this.arrivalCounts.get(deviceId) ?? 0) + 1);
3252
3263
  if (state.phase !== "active") return false;
3253
3264
  const interval = this.governor.minIntervalMs(deviceId);
3254
3265
  if (interval > 0) {
3255
- const last = this.lastAdmittedAt.get(deviceId) ?? 0;
3256
- const now = Date.now();
3257
- if (now - last < interval) return false;
3266
+ if (now - (this.lastAdmittedAt.get(deviceId) ?? 0) < interval) return false;
3258
3267
  this.lastAdmittedAt.set(deviceId, now);
3259
3268
  }
3269
+ return true;
3270
+ }
3271
+ /**
3272
+ * Queue a frame whose admission was already reserved synchronously through
3273
+ * {@link reserveDetectionFrame}. Kept separate so the ordinary public path
3274
+ * cannot accidentally count one source frame twice.
3275
+ */
3276
+ enqueueReservedDetectionFrame(deviceId, frame, handle) {
3277
+ const state = this.cameras.get(deviceId);
3278
+ if (!state || state.phase !== "active") return false;
3260
3279
  frame._enqueuedAt = Date.now();
3261
3280
  state.detectionQueue.enqueue({
3262
3281
  frame,
@@ -5642,21 +5661,44 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends BaseAddon {
5642
5661
  * no second dial, no second decode, no GPU). Mirrors the shm shared-motion
5643
5662
  * seam (`subscribeMotionFrames` `shared` branch).
5644
5663
  */
5645
- enqueueSharedDetectionFrame(deviceId, frame, handle) {
5664
+ enqueueSharedDetectionFrame(deviceId, frame, handle, reservation) {
5646
5665
  const runner = this.runner;
5647
5666
  if (!runner) return false;
5648
- const admitted = runner.enqueueDetectionFrame(deviceId, frame, handle);
5649
- const sink = this.sharedMotionSinks.get(deviceId);
5650
- if (sink) {
5651
- const now = this.sharedSinkNow();
5652
- if (now - sink.lastMotionEnqueueTs >= sink.minIntervalMs) {
5653
- sink.lastMotionEnqueueTs = now;
5654
- runner.enqueueMotionFrame(deviceId, rgbFrameToGrayFrame(frame), void 0);
5667
+ const admitted = reservation ? reservation.detection && runner.enqueueReservedDetectionFrame(deviceId, frame, handle) : runner.enqueueDetectionFrame(deviceId, frame, handle);
5668
+ if (reservation?.motion) runner.enqueueMotionFrame(deviceId, rgbFrameToGrayFrame(frame), void 0);
5669
+ else if (!reservation) {
5670
+ const sink = this.sharedMotionSinks.get(deviceId);
5671
+ if (sink) {
5672
+ const now = this.sharedSinkNow();
5673
+ if (now - sink.lastMotionEnqueueTs >= sink.minIntervalMs) {
5674
+ sink.lastMotionEnqueueTs = now;
5675
+ runner.enqueueMotionFrame(deviceId, rgbFrameToGrayFrame(frame), void 0);
5676
+ }
5655
5677
  }
5656
5678
  }
5657
5679
  return admitted;
5658
5680
  }
5659
5681
  /**
5682
+ * Reserve all consumers of one lazy RGB frame before materializing pixels.
5683
+ * Detection follows the adaptive governor; shared motion keeps its independent
5684
+ * cadence so throttling inference cannot starve the analyzer.
5685
+ */
5686
+ reserveSharedDetectionFrame(deviceId) {
5687
+ const detection = this.runner?.reserveDetectionFrame(deviceId) ?? false;
5688
+ const sink = this.sharedMotionSinks.get(deviceId);
5689
+ if (!sink) return {
5690
+ detection,
5691
+ motion: false
5692
+ };
5693
+ const now = this.sharedSinkNow();
5694
+ const motion = now - sink.lastMotionEnqueueTs >= sink.minIntervalMs;
5695
+ if (motion) sink.lastMotionEnqueueTs = now;
5696
+ return {
5697
+ detection,
5698
+ motion
5699
+ };
5700
+ }
5701
+ /**
5660
5702
  * Epic C P1 detection path for a flagged camera: decode `rgb` in a
5661
5703
  * per-session forked worker and feed the runner's detection queue INLINE (no
5662
5704
  * `FrameHandle`), exactly like the shared shm path. Teardown stops the pump
@@ -5709,6 +5751,7 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends BaseAddon {
5709
5751
  streamId: config.detectionStreamId,
5710
5752
  codec: source.codec
5711
5753
  } });
5754
+ let reservation = null;
5712
5755
  return startSessionDecodePump({
5713
5756
  fork: this.forkDecodeWorkerWithLease,
5714
5757
  logger: log,
@@ -5717,12 +5760,19 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends BaseAddon {
5717
5760
  fps: config.detectionFps,
5718
5761
  format: "rgb"
5719
5762
  },
5763
+ shouldMaterializeFrame: () => {
5764
+ reservation = this.reserveSharedDetectionFrame(config.deviceId);
5765
+ return reservation.detection || reservation.motion;
5766
+ },
5720
5767
  acquireSpawnSlot: this.buildDecodeSpawnAcquire(log, "detect"),
5721
5768
  onEnded: () => this.handleDetectionDecodeEnded(config.deviceId),
5722
5769
  onDecodedFrame: (frame, nativeCrop) => {
5723
- const handle = retainedFrames?.write(config.deviceId, frame) ?? void 0;
5770
+ const current = reservation;
5771
+ reservation = null;
5772
+ if (!current) return;
5773
+ const handle = current.detection ? retainedFrames?.write(config.deviceId, frame) ?? void 0 : void 0;
5724
5774
  if (handle && nativeCrop) this.nativeCropRegistry.register(handle, nativeCrop, config.deviceId);
5725
- if (this.enqueueSharedDetectionFrame(config.deviceId, frame, handle)) nativeCrop?.markInferred();
5775
+ if (this.enqueueSharedDetectionFrame(config.deviceId, frame, handle, current)) nativeCrop?.markInferred();
5726
5776
  }
5727
5777
  });
5728
5778
  }
@@ -1,7 +1,7 @@
1
1
  const require_chunk = require("../chunk-emK7D4bc.js");
2
- const require_dist = require("../dist-CzFJeiG1.js");
2
+ const require_dist = require("../dist-D8TX_P_A.js");
3
3
  const require_hub_hostname = require("../hub-hostname-DAJXlOgV.js");
4
- const require_addon_utils = require("../addon-utils-DveoBR6G.js");
4
+ const require_addon_utils = require("../addon-utils-CQs-AjTJ.js");
5
5
  let node_crypto = require("node:crypto");
6
6
  let node_child_process = require("node:child_process");
7
7
  let node_fs = require("node:fs");
@@ -1,6 +1,6 @@
1
- import { K as recordingCapability, M as deriveRecordingMode, Ot as record, X as storageEvictableCapability, _ as OpsLogEntrySchema, b as RecordingConfigSchema, c as DEFAULT_EVENTS_BAND_BUFFER_SEC, d as EVENT_PAD_MS, dt as hydrateSchema, et as errMsg, ht as nodePin, jt as EventCategory, kt as string, lt as DeviceType, ot as BaseAddon, p as ExportRecordSchema, q as recordingExportCapability, vt as selectAssignedProfileSlots, xt as array } from "../dist-gB3o0cyM.mjs";
1
+ import { K as recordingCapability, M as deriveRecordingMode, Ot as record, X as storageEvictableCapability, _ as OpsLogEntrySchema, b as RecordingConfigSchema, c as DEFAULT_EVENTS_BAND_BUFFER_SEC, d as EVENT_PAD_MS, dt as hydrateSchema, et as errMsg, ht as nodePin, jt as EventCategory, kt as string, lt as DeviceType, ot as BaseAddon, p as ExportRecordSchema, q as recordingExportCapability, vt as selectAssignedProfileSlots, xt as array } from "../dist-B55xTTsS.mjs";
2
2
  import { t as resolveHubHostname } from "../hub-hostname-cCknRYKj.mjs";
3
- import { n as createFileDataPlaneHandler, s as parseRangeHeader, t as contentTypeFor } from "../addon-utils-QuxtOdK1.mjs";
3
+ import { n as createFileDataPlaneHandler, s as parseRangeHeader, t as contentTypeFor } from "../addon-utils-CZ2xo67g.mjs";
4
4
  import { randomUUID } from "node:crypto";
5
5
  import { spawn } from "node:child_process";
6
6
  import { createReadStream, promises, realpathSync } from "node:fs";
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_chunk = require("../chunk-emK7D4bc.js");
3
- const require_worker_protocol = require("../worker-protocol-BQlELGzv.js");
3
+ const require_worker_protocol = require("../worker-protocol-C2uctCrd.js");
4
4
  let node_url = require("node:url");
5
5
  let node_fs = require("node:fs");
6
6
  node_fs = require_chunk.__toESM(node_fs);
@@ -235,6 +235,8 @@ var FrameSlot = class {
235
235
  */
236
236
  reserved = null;
237
237
  pendingPull = false;
238
+ /** Timestamp of the last frame admitted by the FPS throttle. */
239
+ lastPublishedAt = null;
238
240
  /** Frames dropped by the `minIntervalMs` throttle (never entered the slot). */
239
241
  throttledCount = 0;
240
242
  /** Frames dropped by latest-wins (an unpulled slot frame superseded before delivery). */
@@ -256,11 +258,12 @@ var FrameSlot = class {
256
258
  * frame simply waits in the slot for the next `pull`.
257
259
  */
258
260
  publish(frame, timestamp, minIntervalMs) {
259
- if (minIntervalMs > 0 && this.slot && timestamp - this.slot.timestamp < minIntervalMs) {
261
+ if (minIntervalMs > 0 && this.lastPublishedAt !== null && timestamp - this.lastPublishedAt < minIntervalMs) {
260
262
  this.throttledCount++;
261
263
  frame.free();
262
264
  return null;
263
265
  }
266
+ this.lastPublishedAt = timestamp;
264
267
  const previous = this.slot;
265
268
  const frameId = this.nextFrameId++;
266
269
  this.slot = {
@@ -302,6 +305,7 @@ var FrameSlot = class {
302
305
  this.slot = null;
303
306
  this.reserved?.frame.free();
304
307
  this.reserved = null;
308
+ this.lastPublishedAt = null;
305
309
  }
306
310
  reserveSlot() {
307
311
  const held = this.slot;
@@ -1,4 +1,4 @@
1
- import { i as formatNativeLeaseKnobs, n as isWorkerRequest, o as resolveNativeLeaseKnobs, r as logLevelForLine } from "../worker-protocol-BhhX7J4-.mjs";
1
+ import { i as formatNativeLeaseKnobs, n as isWorkerRequest, o as resolveNativeLeaseKnobs, r as logLevelForLine } from "../worker-protocol-Bol291_n.mjs";
2
2
  import { pathToFileURL } from "node:url";
3
3
  import * as fs from "node:fs";
4
4
  import * as path$1 from "node:path";
@@ -231,6 +231,8 @@ var FrameSlot = class {
231
231
  */
232
232
  reserved = null;
233
233
  pendingPull = false;
234
+ /** Timestamp of the last frame admitted by the FPS throttle. */
235
+ lastPublishedAt = null;
234
236
  /** Frames dropped by the `minIntervalMs` throttle (never entered the slot). */
235
237
  throttledCount = 0;
236
238
  /** Frames dropped by latest-wins (an unpulled slot frame superseded before delivery). */
@@ -252,11 +254,12 @@ var FrameSlot = class {
252
254
  * frame simply waits in the slot for the next `pull`.
253
255
  */
254
256
  publish(frame, timestamp, minIntervalMs) {
255
- if (minIntervalMs > 0 && this.slot && timestamp - this.slot.timestamp < minIntervalMs) {
257
+ if (minIntervalMs > 0 && this.lastPublishedAt !== null && timestamp - this.lastPublishedAt < minIntervalMs) {
256
258
  this.throttledCount++;
257
259
  frame.free();
258
260
  return null;
259
261
  }
262
+ this.lastPublishedAt = timestamp;
260
263
  const previous = this.slot;
261
264
  const frameId = this.nextFrameId++;
262
265
  this.slot = {
@@ -298,6 +301,7 @@ var FrameSlot = class {
298
301
  this.slot = null;
299
302
  this.reserved?.frame.free();
300
303
  this.reserved = null;
304
+ this.lastPublishedAt = null;
301
305
  }
302
306
  reserveSlot() {
303
307
  const held = this.slot;
@@ -1,8 +1,8 @@
1
- import { a as e, c as t, d as n, i as r, l as i, n as a, o, r as s, s as c, t as l, u } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-Czrsozsg.mjs";
1
+ import { a as e, c as t, d as n, i as r, l as i, n as a, o, r as s, s as c, t as l, u } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-CaGsMvou.mjs";
2
2
  import { a as d, i as f, n as p, o as m, r as h, t as g } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare__react__loadShare__.js-C9j-2lBe.mjs";
3
3
  import { n as _, r as v, t as y } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-XO0-Pyu6.mjs";
4
4
  import { n as b, t as x } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-BO7TIbJV.mjs";
5
- import { t as S } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-Bl9zivOk.mjs";
5
+ import { t as S } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-CAmiVOsA.mjs";
6
6
  //#region ../../node_modules/lucide-react/dist/esm/shared/src/utils.js
7
7
  var C = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), w = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), T = (e) => {
8
8
  let t = w(e);
@@ -3,7 +3,7 @@ import "./dist-CYZr2fwk.mjs";
3
3
  var e = {
4
4
  "@camstack/sdk": {
5
5
  name: "@camstack/sdk",
6
- version: "1.2.10",
6
+ version: "1.2.11",
7
7
  scope: ["default"],
8
8
  loaded: !1,
9
9
  from: "addon_stream_broker_widgets",
@@ -18,7 +18,7 @@ var e = {
18
18
  },
19
19
  "@camstack/types": {
20
20
  name: "@camstack/types",
21
- version: "1.2.51",
21
+ version: "1.2.55",
22
22
  scope: ["default"],
23
23
  loaded: !1,
24
24
  from: "addon_stream_broker_widgets",
@@ -33,7 +33,7 @@ var e = {
33
33
  },
34
34
  "@camstack/ui-library": {
35
35
  name: "@camstack/ui-library",
36
- version: "1.2.36",
36
+ version: "1.2.38",
37
37
  scope: ["default"],
38
38
  loaded: !1,
39
39
  from: "addon_stream_broker_widgets",
@@ -0,0 +1,26 @@
1
+ //#region \0virtual:mf:__mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js
2
+ var e = "__mf_init__virtual:mf:__mfe_internal__addon_stream_broker_widgets__mf_v__runtimeInit__mf_v__.js__", t = globalThis[e];
3
+ if (!t) {
4
+ let n, r, i = new Promise((e, t) => {
5
+ n = e, r = t;
6
+ });
7
+ t = globalThis[e] = {
8
+ initPromise: i,
9
+ initResolve: n,
10
+ initReject: r
11
+ };
12
+ }
13
+ var n = t.initPromise, r = "__mf_module_cache__";
14
+ globalThis[r] ||= {
15
+ share: {},
16
+ remote: {}
17
+ }, globalThis[r].share ||= {}, globalThis[r].remote ||= {};
18
+ var i = globalThis[r], a, o = (e) => {
19
+ e.ACCESSORY_LABEL, e.ALEXA_EGRESS_PROFILE, e.ALL_CAPABILITY_DEFINITIONS, e.APPLE_SA_TO_MACRO, e.AUDIO_ANALYSIS_CAP_NAME, e.AUDIO_BACKEND_CHOICES, e.AUDIO_MACRO_LABELS, e.AUDIO_PRESETS, e.AccessoriesStatusSchema, e.AccessoryKind, e.AddBrokerInputSchema, e.AddonAutoUpdateSchema, e.AddonListItemSchema, e.AddonPageDeclarationSchema, e.AddonPageInfoSchema, e.AdoptionAdoptInputSchema, e.AdoptionAdoptResultSchema, e.AdoptionCandidateResultSchema, e.AdoptionFilterSchema, e.AdoptionGetCandidateInputSchema, e.AdoptionJobSchema, e.AdoptionJobStateSchema, e.AdoptionListCandidatesInputSchema, e.AdoptionListCandidatesOutputSchema, e.AdoptionOutcomeSchema, e.AdoptionReleaseInputSchema, e.AdoptionStatusSchema, e.AgentLoadSummarySchema, e.AirQualitySensorStatusSchema, e.AlarmArmModeSchema, e.AlarmPanelStatusSchema, e.AlarmStateSchema, e.AlertSchema, e.AlertSeveritySchema, e.AlertSourceSchema, e.AlertStatusSchema, e.AmbientLightSensorStatusSchema, e.ApiKeyRecordSchema, e.ApiKeySummarySchema, e.ArchiveEntrySchema, e.ArchiveManifestSchema, e.AttachmentMediaTypeSchema, e.AttachmentSchema, e.AudioAnalysisResultSchema, e.AudioAnalysisSettingsSchema, e.AudioChunkInputSchema, e.AudioClassSummarySchema, e.AudioClassificationLabelSchema, e.AudioClassificationResultSchema, e.AudioCodecInfoSchema, e.AudioDecodeSessionConfigSchema, e.AudioEncodeSchema, e.AudioEncodeSessionConfigSchema, e.AudioEncodedChunkSchema, e.AudioEventSchema, e.AudioLevelSchema, e.AudioMetricsHistoryPointSchema, e.AudioMetricsHistorySchema, e.AudioMetricsSnapshotSchema, e.AudioPcmChunkSchema, e.AuthResultSchema, e.AutoUpdateSettingsSchema, e.AutomationActionSchema, e.AutomationConditionOperatorSchema, e.AutomationConditionSchema, e.AutomationControlStatusSchema, e.AutomationRecipeSchema, e.AutomationTriggerSchema, e.AvailableIntegrationTypeSchema, e.BACKEND_TO_FORMAT, e.BASE_LIVE_EGRESS_PROFILE, e.BATTERY_DEVICE_PROFILE, e.BacklightModeSchema, e.BackupDestinationInfoSchema, e.BackupEntrySchema, e.BaseAddon, e.BaseDevice, e.BaseDeviceProvider, e.BatteryStatusSchema, e.BinaryStatusSchema, e.BoundingBoxSchema, e.BrightnessStatusSchema, e.BrokerAddInputSchema, e.BrokerAudioClientSchema, e.BrokerClientsSchema, e.BrokerConnectionDetailsSchema, e.BrokerConsumerAttributionSchema, e.BrokerConsumerKindSchema, e.BrokerDecodedClientSchema, e.BrokerEncodedClientSchema, e.BrokerGetStateInputSchema, e.BrokerInfoSchema, e.BrokerProviderInfoSchema, e.BrokerPublishInputSchema, e.BrokerRegistryStatusSchema, e.BrokerRtspClientSchema, e.BrokerStatsSchema, e.BrokerStatusEnum, e.BrokerStatusSchema, e.BrokerSubscribeInputSchema, e.BrokerSubscribeResultSchema, e.BrokerTestConnectionResultSchema, e.BrokerUnsubscribeInputSchema, e.CAMERA_SWITCH_CATALOG, e.CAMERA_SWITCH_ORDER, e.CAM_PROFILE_ORDER, e.CAPABILITY_NAMES, e.CAPABILITY_ROUTER_KEYS, e.CAP_NAMES_WITH_STATUS, e.CAP_NODE_PIN_CONTEXT_KEY, e.CAP_PROVIDER_KIND_MAP, e.COCO_80_LABELS, e.COCO_TO_MACRO, e.CONNECTION_TEST_TIMEOUT_MS, e.CORE_BLOCKS_ADDON_ID, e.CORE_BLOCK_ADDON_PREFIX, e.CamProfileSchema, e.CamStreamDescriptorSchema, e.CamStreamKindSchema, e.CamStreamResolutionSchema, e.CameraAssignmentStatusSchema, e.CameraAudioStatusSchema, e.CameraBrokerProfileSchema, e.CameraBrokerStatusSchema, e.CameraCredentialsSchema, e.CameraCredentialsStatusSchema, e.CameraDecoderShmSchema, e.CameraDecoderStatusSchema, e.CameraDetectionPhaseSchema, e.CameraDetectionProvisioningSchema, e.CameraDetectionProvisioningStateSchema, e.CameraDetectionStatusSchema, e.CameraMetricsSchema, e.CameraMetricsWithDeviceIdSchema, e.CameraMotionStatusSchema, e.CameraRecordingModeSchema, e.CameraRecordingStatusSchema, e.CameraSourceStatusSchema, e.CameraSourceStreamSchema, e.CameraStatusDegradationReasonSchema, e.CameraStatusDegradationSchema, e.CameraStatusSchema, e.CameraStatusStageSchema, e.CameraStreamSchema, e.CameraSwitchAuthoritySchema, e.CameraSwitchGroupSchema, e.CameraSwitchIdSchema, e.CameraSwitchSchema, e.CameraSwitchUnavailableReasonSchema, e.CandidateQueryFilterSchema, e.CapScopeSchema, e.CapabilityBindingsSchema, e.CarbonMonoxideStatusSchema, e.ChargingStatus, e.ClientNetworkStatsSchema, e.ClimateControlStatusSchema, e.ClipPlaybackSchema, e.ClipSchema, e.ClusterAddonNodeDeploymentSchema, e.ClusterAddonStatusEntrySchema, e.CollectionColumnSchema, e.CollectionIndexSchema, e.ColorStatusSchema, e.ConfigEntrySchema, e.ConfigSectionWithValuesSchema, e.ConfigTabDeclarationSchema, e.ConnectionTestDescriptorSchema, e.ConnectionTestInputSchema, e.ConnectionTestOutcomeSchema, e.ConnectivityStatusSchema, e.ConsumableItemSchema, e.ConsumablesStatusSchema, e.ContactStatusSchema, e.ControlKindSchema, e.ControlStatusSchema, e.ConvertArtifactSchema, e.ConvertResultSchema, e.ConvertTargetSchema, e.CoreBlockCompileResultSchema, e.CoreBlockInputSchema, e.CoreBlockPlacementSchema, e.CoreBlockSchema, e.CoreBlockStatusSchema, e.CoverStateSchema, e.CoverStatusSchema, e.CreateApiKeyInputSchema, e.CreateApiKeyResultSchema, e.CreateIntegrationInputSchema, e.CreateScopedTokenInputSchema, e.CreateScopedTokenResultSchema, e.CreateUserInputSchema, e.CustomActionInputSchema, e.CustomModelDescriptorSchema, e.DATAPLANE_SECRET_HEADER, e.DECLARED_DEVICE_SWEEP_LIMIT, e.DECLARED_INTEGRATION_FIXED_KEY, e.DEFAULT_ADDON_PLACEMENT, e.DEFAULT_AUDIO_ANALYZER_CONFIG, e.DEFAULT_DECODER_HWACCEL_CONFIG, e.DEFAULT_DETAIL_CROP_CONVENTION, e.DEFAULT_EVENTS_BAND_BUFFER_SEC, e.DEFAULT_EVENT_COLOR, e.DEFAULT_FEATURES, e.DEFAULT_NATIVE_LEASE_SETTINGS, e.DEFAULT_RETENTION, e.DEFAULT_SCRUB_THUMBNAIL_PRESET, e.DETAIL_CROP_PADDING_FIELD, e.DETAIL_CROP_PADDING_KEY, e.DETAIL_CROP_SECTION_ID, e.DETAIL_CROP_SQUARE_KEY, e.DETECTION_PIPELINE_CAP_NAME, e.DEVICE_BACKEND_TO_FORMAT, e.DEVICE_CAP_NAMES, e.DEVICE_PROFILES, e.DEVICE_SCOPED_CAPS, e.DEVICE_SETTINGS_CONTRIBUTION_METHODS, e.DEVICE_STATE_READERS, e.DEVICE_STATUS_METHOD, e.DEVICE_TYPE_CONTROL_KIND, e.DEVICE_TYPE_INFO, e.DataStoreEngineInfoSchema, e.DayNightModeSchema, e.DayNightOptionsSchema, e.DayNightSettingsPatchSchema, e.DayNightStatusSchema, e.DeclaredDevices, e.DecodedAudioChunkSchema, e.DecodedFrameSchema, e.DecoderSessionConfigSchema, e.DecoderStatsSchema, e.DeleteIntegrationResultSchema, e.DetailCropConventionSchema, e.DetectionSourceSchema, e.DeviceCodeSeveritySchema, e.DeviceConfig, e.DeviceDiscoveryStatusSchema, e.DeviceExportExposeInputSchema, e.DeviceExportStatusSchema, e.DeviceExportUnexposeInputSchema, e.DeviceFeature, e.DeviceInfoSchema, e.DeviceNetworkStatsSchema, e.DeviceRole, e.DeviceRuntimeState, e.DeviceStatusSchema, e.DeviceType, e.DiscoveredChildDeviceSchema, e.DiscoveredChildStatusSchema, e.DiscoveredDeviceSchema, e.DiscoveredTargetSchema, e.DisposerChain, e.DoorbellPressEventSchema, e.DoorbellStatusSchema, e.EVENTFUL_CAP_NAMES, e.EVENT_KIND_BY_CAP, e.EVENT_PAD_MS, e.EVENT_TAXONOMY, e.EXPRESSION_BUILTINS, e.EXPRESSION_BUILTIN_NAMES, e.EXPRESSION_COMPILE_CACHE_CAPACITY, e.EXPRESSION_IDENTIFIER_RE, e.EXPRESSION_INJECTED_NOW, e.EgressEncodeSchema, e.EgressRateControlSchema, e.EgressTranscodeRequestSchema, e.EgressTranscodeSchema, e.ElementConfigStore, e.EmbeddingInfoSchema, e.EmbeddingResultSchema, e.EncodeProfileSchema, e.EncodedPacketSchema, e.EnrichedWidgetMetadataSchema, e.EnumSensorDateTimeFormatSchema, e.EnumSensorStatusSchema, e.EventCategory, e.EventEmitterStatusSchema, e.EventFireSchema, e.EventItemSchema, e.EventKindCategorySchema, e.EventKindDescriptorSchema, e.EventKindIconSchema, e.EventKindSchema, e.EventKindsForDeviceSchema, e.EventMediaArtifactSchema, e.EventMediaCoverageSchema, e.EventMediaKindSchema, e.EventMediaProductionSchema, e.EventSourceType, e.ExportDownloadSchema, e.ExportOptionsSchema, e.ExportRecordSchema, e.ExportSetupFieldSchema, e.ExportSetupSchema, e.ExportSpeedSchema, e.ExportStateSchema, e.ExportTimelapseSchema, e.ExposedDeviceSchema, e.ExposureModeSchema, e.ExpressionBindingSourceSchema, e.ExpressionEvalError, e.ExpressionFieldBindingSchema, e.ExpressionGlobalBindingSchema, e.ExpressionLiteralBindingSchema, e.ExpressionParseError, e.ExpressionSourceSchema, e.FanControlStatusSchema, e.FanDirectionSchema, e.FeatureManifestSchema, e.FeatureProbeStatusSchema, e.FloodStatusSchema, e.Fmp4BoxSplitter, e.FrameHandleFormatSchema, e.FrameHandleSchema, e.FrameInputSchema, e.GasStatusSchema, e.GetStreamWithCodecInputSchema, e.GlobalMetricsSchema, e.HAP_AUDIO_BASE, e.HAP_AUDIO_BITRATE_KBPS, e.HAP_AUDIO_VBV_KBITS, e.HAP_KEYFRAME_INTERVAL_SEC, e.HF_BASE_URL, e.HF_REPO, e.HWACCEL_OPTIONS, e.HealthStatusSchema, e.HistoryPointSchema, e.HistoryResolutionEnum, e.HumidifierStatusSchema, e.HumiditySensorStatusSchema, e.HvacModeSchema, e.ImageContractSchema, e.ImageContractStateSchema, e.ImageRotateSchema, e.ImageSettingsOptionsSchema, e.ImageSettingsPatchSchema, e.ImageSettingsStatusSchema, e.ImageStatusSchema, e.IngestOwnerSchema, e.InstalledPackageSchema, e.IntegrationLiteSchema, e.IntegrationWithStateSchema, e.IntercomAbilitySchema, e.IntercomStatusSchema, e.KNOWN_CAP_NAMES, e.KeyEventSchema, e.LOG_LEVEL_RANK, e.LabelAttributionSchema, e.LabelDefinitionSchema, e.LabelTierSchema, e.LawnMowerActivitySchema, e.LawnMowerControlStatusSchema, e.LinkedDeviceSchema, e.LinkedDevicesModeSchema, e.LlmDefaultSchema, e.LlmDefaultSelectorSchema, e.LlmErrorCodeSchema, e.LlmGenerateBaseInputSchema, e.LlmGenerateErrSchema, e.LlmGenerateOkSchema, e.LlmGenerateResultSchema, e.LlmImageSchema, e.LlmNodeModelSchema, e.LlmProfileKindDescriptorSchema, e.LlmProfileKindSchema, e.LlmProfileSchema, e.LlmRuntimeCompleteInputSchema, e.LlmRuntimeDiskUsageSchema, e.LlmRuntimeNodeSchema, e.LlmRuntimeStatusSchema, e.LlmUsageRollupSchema, e.LlmUsageSchema, e.LocateSegmentResultSchema, e.LocationStatSchema, e.LockControlStatusSchema, e.LockStateSchema, e.LogEntrySchema, e.LogLevelSchema, e.LogStreamEntrySchema, e.LoginMethodContributionSchema, e.LoginStageEnum, e.MACRO_LABELS, e.MAX_CONDITION_DEPTH, e.MAX_CONDITION_LEAVES, e.MAX_EXPRESSION_AST_NODES, e.MAX_EXPRESSION_BINDINGS, e.MAX_EXPRESSION_CALL_ARGS, e.MAX_EXPRESSION_EVAL_STEPS, e.MAX_EXPRESSION_SOURCE_LENGTH, e.METHOD_ACCESS_MAP, e.MODEL_FORMATS, e.MOTION_TRIGGER_FEATURE, e.ManagedModelCatalogEntrySchema, e.ManagedModelRefSchema, e.ManagedRuntimeConfigSchema, e.MaskGridDimsSchema, e.MaskGridShapeSchema, e.MaskLineShapeSchema, e.MaskPointSchema, e.MaskPolygonShapeSchema, e.MaskPolygonVerticesSchema, e.MaskRectShapeSchema, e.MaskShapeKindSchema, e.MaskShapeSchema, e.MediaFileInfoSchema, e.MediaFileSchema, e.MediaPlayerRepeatSchema, e.MediaPlayerStateSchema, e.MediaPlayerStatusSchema, e.MeshPeerSchema, e.MeshStatusSchema, e.MethodAccessSchema, e.ModelCatalogEntrySchema, e.ModelConvertInputSchema, e.ModelConvertMetadataSchema, e.ModelDistributeInputSchema, e.ModelDistributeResultSchema, e.ModelExtraFileSchema, e.ModelFormatEntrySchema, e.ModelFormatsSchema, e.ModelSubstitutionSchema, e.ModelVariantGroupSchema, e.MotionAnalysisResultSchema, e.MotionEventSchema, e.MotionOnMotionChangedDataSchema, e.MotionRegionSchema, e.MotionSourceEnum, e.MotionSourcesSchema, e.MotionStatusSchema, e.MotionTriggerRuntimeStateSchema, e.MotionTriggerStatusSchema, e.MotionZoneOptionsSchema, e.MotionZonePatchSchema, e.MotionZoneRegionSchema, e.MotionZoneStatusSchema, e.MqttBrokerStatusSchema, e.MutationFilterSchema, e.NATIVE_LEASE_ACTIVITY_FIELD, e.NATIVE_LEASE_ACTIVITY_KEY, e.NATIVE_LEASE_ADMISSION_FIELD, e.NATIVE_LEASE_ADMISSION_KEY, e.NATIVE_LEASE_BUDGET_FIELD, e.NATIVE_LEASE_BUDGET_KEY, e.NATIVE_LEASE_SECTION_ID, e.NATIVE_LEASE_TTL_FIELD, e.NATIVE_LEASE_TTL_KEY, e.NC_BASE_CONDITION_KEYS, e.NC_CONDITION_CATALOG, e.NC_HISTORY_LIMIT_DEFAULT, e.NC_HISTORY_LIMIT_MAX, e.NC_MAX_PER_TRACK_IMMEDIATE, e.NC_SNOOZE_MAX_MINUTES, e.NC_TAXONOMY, e.NativeCropBboxSchema, e.NativeCropRefSchema, e.NativeCropResultSchema, e.NativeDetectionSchema, e.NativeLeaseAdmissionSchema, e.NativeLeaseSettingsSchema, e.NativeObjectClassEnum, e.NativeObjectDetectionRuntimeStateSchema, e.NativeObjectDetectionStatusSchema, e.NcAlarmConfigSchema, e.NcAlarmModeCoverageSchema, e.NcAlarmSettingsPatchSchema, e.NcAlarmSettingsSchema, e.NcConditionDescriptorSchema, e.NcConditionsSchema, e.NcCrossingSchema, e.NcDeliverySchema, e.NcDeviceStateConditionSchema, e.NcHistoryEntrySchema, e.NcHistoryFilterSchema, e.NcHistoryRecordKindSchema, e.NcHistoryStatusSchema, e.NcHistorySubjectSchema, e.NcMediaFrameSchema, e.NcMediaPolicySchema, e.NcOccupancyConditionSchema, e.NcPlateMatcherSchema, e.NcRuleActionSchema, e.NcRuleActionSequenceSchema, e.NcRuleActionsSchema, e.NcRuleInputSchema, e.NcRuleNotificationButtonSchema, e.NcRulePatchSchema, e.NcRuleSchema, e.NcRuleTargetSchema, e.NcScheduleSchema, e.NcScheduleWindowSchema, e.NcSnoozeInputSchema, e.NcSnoozeSchema, e.NcSnoozeScopeSchema, e.NcSnoozeSuppressedSchema, e.NcTaxonomyEntrySchema, e.NcTaxonomySchema, e.NcTestResultSchema, e.NcThrottleGranularitySchema, e.NcThrottleSchema, e.NcZoneConditionSchema, e.NetworkAccessStatusSchema, e.NetworkAddressSchema, e.NetworkEndpointSchema, e.NotificationActionIconSchema, e.NotificationActionSchema, e.NotificationFormatSchema, e.NotificationSchema, e.NotifierStatusSchema, e.NumericSensorStatusSchema, e.OPS_LOG_DEFAULT_LIMIT, e.OPS_LOG_RING_DEFAULT_MAX, e.OauthIntegrationDescriptorSchema, e.ObjectEventSchema, e.OpsLogDomainSchema, e.OpsLogEntrySchema, e.OpsLogOpSchema, e.OpsLogQueryInputSchema, e.OpsLogReasonSchema, e.OrchestratorMetricsSchema, e.OsdOverlayKindEnum, e.OsdOverlayPatchSchema, e.OsdOverlaySchema, e.OsdPositionEnum, e.OsdRenderOutcomeEnum, e.OsdRenderResultSchema, e.OsdSlotBindingSchema, e.OsdSlotViewSchema, e.OsdSourceOptionSchema, e.OsdSourceSchema, e.OsdSourceValueTypeEnum, e.OsdStatusSchema, e.PET_FEEDER_MANUAL_FEED_MAX, e.PET_FEEDER_MANUAL_FEED_MIN, e.PIPELINE_FLOW_CAPABILITY_NAMES, e.PIPELINE_OWNER_CAPABILITY_NAMES, e.PRIVACY_MASK_CAP_NAME, e.PROVIDER_KIND_CAP_NAMES, e.PYTHON_SCRIPT, e.PackageUpdateSchema, e.PackageVersionInfoSchema, e.PasskeyLoginMethodSchema, e.PasskeySummarySchema, e.PcmSampleFormatSchema, e.PerScopeBreakdownSchema, e.PetFeederStatusSchema, e.PickStreamPreferencesSchema, e.PickStreamRequirementsSchema, e.PickedCamStreamSchema, e.PipelineAssignmentSchema, e.PipelineDefaultStepSchema, e.PipelineEngineChoiceSchema, e.PipelineRunResultBridge, e.PipelineStepInputSchema, e.PipelineValidationIssueSchema, e.PipelineValidationResultSchema, e.PlaceholderReasonSchema, e.PolygonPointSchema, e.PowerMeterStatusSchema, e.PresenceStatusSchema, e.PressureSensorStatusSchema, e.PrivacyMaskOptionsSchema, e.PrivacyMaskPatchSchema, e.PrivacyMaskRegionSchema, e.PrivacyMaskShapeSchema, e.PrivacyMaskStatusSchema, e.ProfileRtspEntrySchema, e.ProfileSlotSchema, e.ProfileSlotStatusSchema, e.ProviderStatusSchema, e.PtzAutotrackRuntimeStateSchema, e.PtzAutotrackSettingsSchema, e.PtzAutotrackStatusSchema, e.PtzAutotrackTargetOptionSchema, e.PtzMoveCommandSchema, e.PtzOptionsSchema, e.PtzPositionSchema, e.PtzPresetSchema, e.PtzStatusSchema, e.QueryFilterSchema, e.RATE_CONTROL_RELAXED, e.RATE_CONTROL_TIGHT, e.REACHABILITY_FAILURES_TO_OFFLINE, e.REACHABILITY_POLL_INTERVAL_MS, e.REACHABILITY_PROBE_TIMEOUT_MS, e.RECOGNITION_TYPES, e.RESERVED_BINDING_NAMES, e.RUNTIME_DEFAULTS, e.RUNTIME_TO_FORMAT, e.RawStateResultSchema, e.ReadGopBytesResultSchema, e.ReadSegmentBytesResultSchema, e.ReadinessRegistry, e.ReadinessTimeoutError, e.RecentTracksPageSchema, e.RecentTracksQueryInput, e.RecordingAvailabilitySchema, e.RecordingBandModeSchema, e.RecordingBandSchema, e.RecordingBandTriggersSchema, e.RecordingConfigSchema, e.RecordingDaysSchema, e.RecordingDeviceUsageSchema, e.RecordingLocationUsageSchema, e.RecordingManifestSchema, e.RecordingRangeSchema, e.RecordingRetentionSchema, e.RecordingStatusSchema, e.RecordingStorageModeSchema, e.RecordingStorageUsageSchema, e.RecordingTriggersSchema, e.RecordingWeekdaySchema, e.RedirectLoginMethodSchema, e.RelocateFootageInputSchema, e.RelocateJobSchema, e.RelocateJobStateSchema, e.RelocateMediaInputSchema, e.RenderedAsSchema, e.ReportMotionInputSchema, e.RetrainAnnotationDraftSchema, e.RetrainAnnotationKindSchema, e.RetrainAnnotationSchema, e.RetrainAnnotationSourceSchema, e.RetrainAssistResultSchema, e.RetrainAssistSubjectSchema, e.RetrainCopyRefusalSchema, e.RetrainFrameCandidateSchema, e.RetrainFrameListSchema, e.RetrainFrameSchema, e.RetrainFrameSelectionSchema, e.RetrainMacroClassSchema, e.RetrainStatusSchema, e.RetrainTrackSchema, e.RetrainTransitionResultSchema, e.RingBuffer, e.RtpSourceSchema, e.RtspRestreamEntrySchema, e.RunnerCameraConfigSchema, e.RunnerCameraDeviceUIFields, e.RunnerFrameSourceSchema, e.RunnerInferenceDeviceSchema, e.RunnerLocalLoadSchema, e.RunnerLocalMetricsSchema, e.SCOPE_PRESETS, e.SCRUB_THUMBNAIL_PRESETS, e.SCRUB_THUMBNAIL_PRESET_LABELS, e.SCRUB_THUMBNAIL_PRESET_ORDER, e.SENSOR_FEATURES, e.SENSOR_MAP, e.SOURCE_INFO_METADATA_KEY, e.STREAM_PROFILE_META, e.STREAM_QUALITY_LABELS, e.SUB_DETECTION_TYPES, e.SYSTEM_CAP_NAMES, e.SceneCheckSchema, e.SceneConditionSchema, e.SceneMonitorSchema, e.SceneMonitorStateSchema, e.SceneMonitorStatusSchema, e.SceneReferenceSchema, e.ScopedTokenSchema, e.ScopedTokenSummarySchema, e.ScoredObjectEventSchema, e.ScriptRunnerStatusSchema, e.ScrubThumbnailPresetSchema, e.SearchResultSchema, e.SendEmailInputSchema, e.SendEmailResultSchema, e.SendResultSchema, e.SensorEventSchema, e.ServerBootModeSchema, e.ServerPackageStatusSchema, e.ServerRollbackInfoSchema, e.ServerUpdateActionResultSchema, e.ServerUpdateCheckResultSchema, e.ServerUpdateStateSchema, e.SettingsPatchSchema, e.SettingsRecordSchema, e.SettingsSchemaWithValuesSchema, e.SettingsUpdateResultSchema, e.ShmRingStatsSchema, e.SmokeStatusSchema, e.SmtpStatusSchema, e.SnapshotImageSchema, e.SourceInfoSchema, e.SpatialDetectionSchema, e.SsoBridgeClaimsSchema, e.StartEmbeddedInputSchema, e.StationaryObjectSchema, e.StorageAbortUploadInputSchema, e.StorageBeginDownloadInputSchema, e.StorageBeginDownloadResultSchema, e.StorageBeginUploadInputSchema, e.StorageBeginUploadResultSchema, e.StorageEndDownloadInputSchema, e.StorageFinalizeUploadInputSchema, e.StorageLocationDeclarationSchema, e.StorageLocationRefSchema, e.StorageLocationSchema, e.StorageLocationTypeSchema, e.StorageProviderInfoSchema, e.StorageReadChunkInputSchema, e.StorageTestLocationResultSchema, e.StorageWriteChunkInputSchema, e.StreamCodecSchema, e.StreamFormatSchema, e.StreamNetworkStatsSchema, e.StreamParamsOptionsSchema, e.StreamParamsStatusSchema, e.StreamProfileConfigSchema, e.StreamProfileOptionsSchema, e.StreamProfilePatchSchema, e.StreamProfileSchema, e.StreamSourceEntrySchema, e.StreamSourceSchema, e.SubscribeAudioChunksInputSchema, e.SubscribeAudioChunksResultSchema, e.SubscribeFramesInputSchema, e.SubscribeFramesResultSchema, e.SwitchStatusSchema, e.SystemMetricsSchema, e.SystemMirror, e.TAXONOMY_COLORS, e.TIMEZONES, e.TRANSCODE_DOWN_MAX_BITRATE_KBPS, e.TRANSCODE_DOWN_MAX_HEIGHT, e.TamperStatusSchema, e.TankStatusSchema, e.TargetKindCapsSchema, e.TargetKindLevelSchema, e.TargetKindSchema, e.TargetSchema, e.TemperatureSensorStatusSchema, e.TerminalProfileInfoSchema, e.TerminalSessionInfoSchema, e.TestConnectionResultSchema, e.TestConnectionStatusEnum, e.TestResultSchema, e.TimelapseRuleInputSchema, e.TimelapseRulePatchSchema, e.TimelapseRuleSchema, e.TimelapseTemplateSchema, e.ToastSchema, e.TokenScopeSchema, e.TopologyNodeSchema, e.TopologyProcessSchema, e.TopologyServiceSchema, e.TrackCascadeCountsSchema, e.TrackEnvelopeSchema, e.TrackFlagsPatchSchema, e.TrackFlagsSchema, e.TrackProjectionSchema, e.TrackSchema, e.TrackSourceSchema, e.TrackStateSchema, e.TrackZoneFilterSchema, e.TrackedDetectionSchema, e.TrainingExportDeviceTotalsSchema, e.TrainingExportSummarySchema, e.TurnServerSchema, e.UNIT_TABLE, e.UnifiedBrokerInfoSchema, e.UnitConversionError, e.UpdateIntegrationInputSchema, e.UpdateStatusSchema, e.UpdateUserInputSchema, e.UserRecordSchema, e.UserSummarySchema, e.VacuumControlStatusSchema, e.VacuumStateSchema, e.ValveStateSchema, e.ValveStatusSchema, e.VectorDeclareIndexInputSchema, e.VectorDeleteByFilterInputSchema, e.VectorDeleteInputSchema, e.VectorDeleteResultSchema, e.VectorFilterSchema, e.VectorGetInputSchema, e.VectorGetResultSchema, e.VectorItemSchema, e.VectorMatchSchema, e.VectorMetadataSchema, e.VectorMetricSchema, e.VectorQueryInputSchema, e.VectorQueryResultSchema, e.VectorStatsInputSchema, e.VectorStatsResultSchema, e.VectorUpsertInputSchema, e.VectorUpsertResultSchema, e.VibrationStatusSchema, e.VideoEncodeSchema, e.WEBRTC_EGRESS_PROFILE, e.WELL_KNOWN_TABS, e.WELL_KNOWN_TAB_MAP, e.WaterHeaterStatusSchema, e.WeatherStatusSchema, e.WebrtcStreamChoiceSchema, e.WebrtcStreamTargetSchema, e.WhiteBalanceModeSchema, e.WidgetHostEnum, e.WidgetLoginMethodSchema, e.WidgetMetadataSchema, e.WidgetRemoteSchema, e.WidgetSizeEnum, e.YAMNET_TO_MACRO, e.ZoneCrossingDirectionSchema, e.ZoneCrossingSchema, e.ZoneKindEnum, e.ZoneRuleModeEnum, e.ZoneRuleSchema, e.ZoneRuleStageEnum, e.ZoneRulesArraySchema, e.ZoneSchema, e.ZoneScopeBreakdownSchema, e.accessoriesCapability, e.accessoryStableId, e.addonPagesCapability, e.addonPagesSourceCapability, e.addonRoutesCapability, e.addonSettingsCapability, e.addonWidgetsCapability, e.addonWidgetsSourceCapability, e.addonsCapability, e.adminUiCapability, e.airQualitySensorCapability, e.alarmPanelCapability, e.alertsCapability, e.ambientLightSensorCapability, e.asBoolean, e.asJsonArray, e.asJsonObject, e.asNumber, e.asString, e.audioAnalysisCapability, e.audioAnalyzerCapability, e.audioCodecCapability, e.audioMetricsCapability, e.audioPlanFromEncodeProfile, e.authProviderCapability, e.autoAssignProfiles, e.automationControlCapability, e.backupCapability, e.bareAddonId, e.batteryCapability, e.bestLocationMatch, e.binaryCapability, e.bindAddonActions, e.brightnessCapability, e.brokerCapability, e.buildAddonRouteProvider, e.buildAudioArgs, e.buildEventKindDescriptor, e.buildFfmpegArgs, e.buildInputArgs, e.buildModelVariantGroups, e.buildNcTaxonomy, e.buildStreamParamsConfigSchema, e.buildVideoArgs, e.buttonCapability, e.cameraCredentialsCapability, e.cameraPipelineConfigCapability, e.cameraStreamsCapability, e.canConvertUnit, e.canonicalEgressPlan, e.carbonMonoxideCapability, e.cellsToRects, e.classifyBearerPrincipal, e.classifyStream, e.classifyStreams, e.climateControlCapability, e.collectHydratedFieldEntries, e.collectHydratedFieldValues, e.colorCapability, e.colorForKind, e.compileExpression, e.compileExpressionSafe, e.conditionDepth, e.connectionTestCapability, e.connectivityCapability, e.consumablesCapability, e.contactCapability, e.controlCapability, e.convertUnit, e.coreBlockAddonId, e.coreBlockIdFromAddonId, e.coreBlocksCapability, e.cosineSimilarity, e.countConditionLeaves, e.coverCapability, e.createDeviceProxy, e.createDurableState, e.createEvent, e.createExpressionScope, e.createHwAccelCache, e.createLazyTrpcSource, e.createMirrorSource, e.createRuntimeStateBridge, e.createSliceHandle, e.createSystemProxy, e.customAction, e.customModelRegistryCapability, e.dataStoreProviderCapability, e.dayNightCapability, e.declarationOwnerNodeId, e.decodeVectorBase64, e.decoderCapability, e.defaultDeviceFor, e.defineCustomActions, e.deriveCameraSwitches, e.deriveDetailCropRect, e.deriveRecordingMode, e.describeModelVariant, e.detectionPipelineCapability, e.deviceAdoptionCapability, e.deviceBackendToFormat, e.deviceCustomAction, e.deviceDiscoveryCapability, e.deviceExportCapability, e.deviceManagerCapability, e.deviceMatchesProfile, e.deviceOpsCapability, e.deviceProviderCapability, e.deviceStateCapability, e.deviceStatusCapability, e.doorbellCapability, e.egressTranscodeSharingKey, e.egressTransportFromRequest, e.embeddingEncoderCapability, e.emitDownForOwnedCaps, e.emitReadiness, e.encodeProfileFromStreamShape, e.encodeVectorBase64, e.enumSensorCapability, e.enumerateInferenceDevices, e.enumerateItemArrayFields, e.enumerateSchemaFields, e.errMsg, e.evaluateAst, e.evaluateExpressionSource, e.evaluateZoneRules, e.event, e.eventEmitterCapability, e.eventsCapability, e.expandCapMethods, e.extractNestedAddonId, e.extractSourceInfoFromMetadata, e.faceGalleryCapability, e.fanControlCapability, e.featureProbeCapability, e.filesystemBrowseCapability, e.findTimezone, e.floodCapability, e.formatForBackend, e.formatForRuntime, e.gasCapability, e.generateAutomationBlock, e.getAudioMacroClassIds, e.getByPath, e.getCapsByProviderKind, e.getTaxonomyEntry, e.hasMotionTrigger, e.hfModelUrl, e.htmlToText, e.humidifierCapability, e.humiditySensorCapability, e.hydrateSchema, e.imageCapability, e.imageSettingsCapability, e.integrationsCapability, e.intercomCapability, e.invocationFromEncodeProfile, e.isAgentOnlyPlacement, e.isArrayOutputSchema, e.isBaseConditionKey, e.isCollectionArrayMethod, e.isDeployableToAgent, e.isDeviceConfigCap, e.isDeviceScopedCap, e.isEvent, e.isNode, e.isObjectInput, e.isSameAddonId, e.isScheduleActive, e.isSoftwareDecode, e.isVoidInput, e.jobKindSchema, e.kebabToCamel, e.knownValues, e.lawnMowerControlCapability, e.lifecycleJobSchema, e.lifecycleJobScopeSchema, e.lifecycleJobStateSchema, e.lifecycleTaskSchema, e.llmCapability, e.llmRuntimeCapability, e.localNetworkCapability, e.locationSimilarity, e.lockControlCapability, e.logBannerArgs, e.logDestinationCapability, e.logLevelAtMost, e.loginMethodCapability, e.looseSchema, e.makeProfileBrokerId, a = e.makeSourceBrokerId, e.mapAudioLabelToMacro, e.markdownToHtmlLite, e.markdownToText, e.maskUrlCredentials, e.mediaPlayerCapability, e.mergeSourceInfo, e.meshNetworkCapability, e.method, e.methodAccessForHttpMethod, e.metricsProviderCapability, e.modelConvertCapability, e.modelDistributorCapability, e.modelFormatForRuntime, e.motionCapability, e.motionDetectionCapability, e.motionTriggerCapability, e.motionZonesCapability, e.mqttBrokerCapability, e.nativeObjectDetectionCapability, e.networkAccessCapability, e.networkQualityCapability, e.nodePin, e.nodesCapability, e.normalizeAddonInitResult, e.normalizeUnit, e.notificationOutputCapability, e.notificationRulesCapability, e.notifierCapability, e.numericSensorCapability, e.oauthIntegrationCapability, e.objectInputDeclaresAddonId, e.osdCapability, e.osdManagerCapability, e.parseCameraStreamConfig, e.parseExpression, e.parseJsonArray, e.parseJsonObject, e.parseJsonUnknown, e.parseProfileBrokerId, e.parseStreamParamsFormPatch, e.petFeederCapability, e.pickAccessoryControl, e.pickDetailCropConvention, e.pickNativeLeaseOverride, e.pickPreferredRtspEntry, e.pickVideoEncoder, e.pickerForCondition, e.pipelineAnalyticsCapability, e.pipelineExecutorCapability, e.pipelineOrchestratorCapability, e.pipelineRunnerCapability, e.plateGalleryCapability, e.platformProbeCapability, e.powerMeterCapability, e.prepareNotification, e.presenceCapability, e.pressureSensorCapability, e.principalMayReachAddon, e.privacyMaskCapability, e.procedureAuthKey, e.ptzAutotrackCapability, e.ptzCapability, e.pythonScriptForBackend, e.readDetailCropConvention, e.readDeviceStateFrom, e.readNativeLeaseOverride, e.readNodePin, e.readinessKey, e.rebootCapability, e.recordingCapability, e.recordingExportCapability, e.rectsToCells, e.requiresPython, e.resolveAddonExecution, e.resolveAddonGroup, e.resolveAddonPlacement, e.resolveAddonRuntime, e.resolveCapMount, e.resolveDetectionRuntime, e.resolveDeviceControlKind, e.resolveDeviceProfile, e.resolveEgressDecodeHwAccel, e.resolveFormat, e.resolveHydratedFieldValue, e.resolveModelFormat, e.resolveMutate, e.resolveRunnerId, e.resolveScrubThumbnailGeometry, e.resolveVariantModelId, e.runInferenceStep, e.runtimeDevices, e.sceneMonitorCapability, e.scopeKey, e.scopesAllowAddon, e.scopesAllowDeviceCap, e.scoreRuntimes, e.scriptRunnerCapability, e.selectAssignedProfileSlots, e.serverManagementCapability, e.setByPath, e.settingsStoreCapability, e.sleep, e.sleepCancellable, e.smokeCapability, e.smtpProviderCapability, e.snapshotCapability, e.ssoBridgeCapability, e.startReachabilityPoll, e.stateVocabularyFor, e.storageCapability, e.storageEvictableCapability, e.storageProviderCapability, e.streamBrokerCapability, e.streamCatalogCapability, e.streamParamsCapability, e.streamPixels, e.streamQualityLabel, e.subKindsOf, e.summarisePrivacyAudio, e.supportedRuntimes, e.switchCapability, e.switchedOffIds, e.synthesizeSourceInfo, e.systemCapability, e.tamperCapability, e.taskLogEntrySchema, e.taskPhaseSchema, e.taskTargetSchema, e.temperatureSensorCapability, e.terminalSessionCapability, e.textToHtml, e.toDeviceSummary, e.toExpressionValue, e.toNodeId, e.toStreamSourceEntry, e.toastCapability, e.tokenize, e.transcodeBody, e.tryConvertUnit, e.turnProviderCapability, e.unitDimension, e.unitsForDimension, e.updateCapability, e.userManagementCapability, e.userPasskeysCapability, e.vacuumControlCapability, e.validateExpressionSource, e.validateRecipeBounds, e.valveCapability, e.vectorDimFromBase64, e.vectorStoreCapability, e.vibrationCapability, e.videoclipsCapability, e.viewerUiCapability, e.waterHeaterCapability, e.weatherCapability, e.webrtcClientHintsSchema, e.webrtcSessionCapability, e.wiringAddonHealthSchema, e.wiringHealthSnapshotSchema, e.wiringNodeHealthSchema, e.wiringProbeKindSchema, e.wiringProbeResultSchema, e.zodEntriesToConfigUI, e.zoneAnalyticsCapability, e.zoneRulesCapability, e.zonesCapability, e.default;
20
+ }, s = i.share["default:@camstack/types"];
21
+ s === void 0 ? n.then(() => {
22
+ if (s = i.share["default:@camstack/types"], s === void 0) throw Error("[Module Federation] Shared module @camstack/types was imported before federation bootstrap finished.");
23
+ o(s);
24
+ }) : o(s);
25
+ //#endregion
26
+ export { a as t };