@camstack/addon-pipeline 1.2.90 → 1.2.94
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{addon-utils-yc-chXuC.js → addon-utils-DnUCCZVx.js} +1 -1
- package/dist/audio-analyzer/index.js +2 -2
- package/dist/audio-analyzer/index.mjs +1 -1
- package/dist/detection-pipeline/index.js +4 -4
- package/dist/detection-pipeline/index.mjs +2 -2
- package/dist/{dist-n4Nbnxx5.js → dist-BbRv3bM2.js} +139 -22
- package/dist/{dist-BJYwWEZ9.mjs → dist-XbrYiMV3.mjs} +134 -23
- package/dist/{event-loop-stall-monitor-BiPffk0D.mjs → event-loop-stall-monitor-CFWrOZ6G.mjs} +1 -1
- package/dist/{event-loop-stall-monitor-DG7QY00k.js → event-loop-stall-monitor-D9hqbc68.js} +1 -1
- package/dist/{lazy-sharp-EoSOHgoj.js → lazy-sharp-U0EtN7_C.js} +1 -1
- package/dist/motion-wasm/index.js +2 -2
- package/dist/motion-wasm/index.mjs +1 -1
- package/dist/pipeline-runner/index.js +195 -14
- package/dist/pipeline-runner/index.mjs +194 -13
- package/dist/recorder/index.js +655 -84
- package/dist/recorder/index.mjs +654 -83
- package/dist/session-decode/decode-worker-child.js +4 -4
- package/dist/session-decode/decode-worker-child.mjs +3 -3
- package/dist/stream-broker/_stub.js +2 -2
- package/dist/stream-broker/{_virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-CsrMZYLB.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-BNOPhQ-y.mjs} +2 -2
- package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-DMyOrQHq.mjs +26 -0
- package/dist/stream-broker/{_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-DgivrPsH.mjs → _virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-DsIi4G5Q.mjs} +1 -1
- package/dist/stream-broker/{hostInit-DoFovQmc.mjs → hostInit-DCV2-mSi.mjs} +2 -2
- package/dist/stream-broker/index.js +194 -30
- package/dist/stream-broker/index.mjs +194 -30
- package/dist/stream-broker/remoteEntry.js +1 -1
- package/dist/{worker-protocol-DjuxhGo3.js → worker-protocol-CNC-ZcU3.js} +1 -1
- package/dist/{worker-protocol-XZ1e36rM.mjs → worker-protocol-D0ewr67U.mjs} +1 -1
- package/package.json +3 -2
- package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-DNSELPGi.mjs +0 -26
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as __toESM, t as __commonJSMin } from "../chunk-DnnnRqeS.mjs";
|
|
2
|
-
import { A as createHwAccelCache, At as
|
|
2
|
+
import { A as createHwAccelCache, At as literal, C as RingBuffer, Dt as boolean, Et as array, Ft as union, It as EventCategory, Mt as object, Nt as record, O as batteryCapability, Ot as discriminatedUnion, P as deriveBatteryPresence, Pt as string, Q as resolveEgressDecodeHwAccel, R as egressTranscodeSharingKey, St as parseProfileBrokerId, T as addonWidgetsSourceCapability, Tt as _enum, W as maskUrlCredentials, _t as isEvent, at as errMsg, b as RATE_CONTROL_TIGHT, bt as nodePin, ct as buildFfmpegArgs$1, dt as BaseAddon, ft as CAM_PROFILE_ORDER, ht as createEvent, i as BatteryStatusSchema, it as webrtcSessionCapability, jt as number, k as cameraStreamsCapability, lt as invocationFromEncodeProfile, mt as DeviceType, nt as streamBrokerCapability, ot as AUDIO_PRESETS, p as EncodeProfileSchema, pt as DeviceFeature, st as Fmp4BoxSplitter, ut as isSoftwareDecode, vt as makeProfileBrokerId, y as RATE_CONTROL_RELAXED, yt as makeSourceBrokerId, z as egressTransportFromRequest } from "../dist-XbrYiMV3.mjs";
|
|
3
3
|
import { n as profileForStreamId, r as parseRestreamPath } from "../remote-restream-Ci7RXNGb.mjs";
|
|
4
4
|
import { createRequire } from "node:module";
|
|
5
5
|
import * as crypto$1 from "node:crypto";
|
|
@@ -1293,6 +1293,36 @@ function buildDerivedTranscodeArgs(input) {
|
|
|
1293
1293
|
audio
|
|
1294
1294
|
};
|
|
1295
1295
|
}
|
|
1296
|
+
//#endregion
|
|
1297
|
+
//#region src/stream-broker/fill-empty-profile-slots.ts
|
|
1298
|
+
/**
|
|
1299
|
+
* When `assignProfile` locks `auto: false` (putting a derived on `low`), a
|
|
1300
|
+
* later catalog blip can empty the other slots. Auto-rank must not overwrite
|
|
1301
|
+
* the operator's slot, but EMPTY slots should still take unused eligible
|
|
1302
|
+
* natives — otherwise the camera stays dark until someone clicks the
|
|
1303
|
+
* dropdowns again (618 / 1438).
|
|
1304
|
+
*/
|
|
1305
|
+
function fillEmptyProfileSlots(current, autoRanked) {
|
|
1306
|
+
const used = /* @__PURE__ */ new Set();
|
|
1307
|
+
for (const profile of CAM_PROFILE_ORDER) {
|
|
1308
|
+
const id = current[profile];
|
|
1309
|
+
if (id) used.add(id);
|
|
1310
|
+
}
|
|
1311
|
+
const ranked = [];
|
|
1312
|
+
for (const profile of CAM_PROFILE_ORDER) {
|
|
1313
|
+
const id = autoRanked[profile];
|
|
1314
|
+
if (id && !ranked.includes(id)) ranked.push(id);
|
|
1315
|
+
}
|
|
1316
|
+
const next = { ...current };
|
|
1317
|
+
for (const profile of CAM_PROFILE_ORDER) {
|
|
1318
|
+
if (next[profile]) continue;
|
|
1319
|
+
const candidate = ranked.find((id) => !used.has(id));
|
|
1320
|
+
if (!candidate) continue;
|
|
1321
|
+
next[profile] = candidate;
|
|
1322
|
+
used.add(candidate);
|
|
1323
|
+
}
|
|
1324
|
+
return next;
|
|
1325
|
+
}
|
|
1296
1326
|
/**
|
|
1297
1327
|
* Ceiling for a configured pre-roll.
|
|
1298
1328
|
*
|
|
@@ -13710,8 +13740,7 @@ var TranscodePipelineManager = class {
|
|
|
13710
13740
|
const outputArgs = input.outputArgs ?? [];
|
|
13711
13741
|
const audioEgress = input.audioEgress === true;
|
|
13712
13742
|
const sourceStream = input.profile !== void 0 ? this.resolveTargetedStream(input.deviceId, input.profile) : input.targetResolution !== void 0 ? this.pickClosestSource(input.deviceId, input.targetResolution) ?? this.firstPublished(input.deviceId) : this.firstPublished(input.deviceId);
|
|
13713
|
-
if (input.profile === void 0
|
|
13714
|
-
if (!sourceStream || !sourceStream.url) throw new Error(`getStreamWithCodec: no assigned source for device ${input.deviceId}`);
|
|
13743
|
+
if (!sourceStream) throw new Error(input.profile === void 0 ? `getStreamWithCodec: no published stream for device ${input.deviceId}` : `getStreamWithCodec: no assigned source for device ${input.deviceId}`);
|
|
13715
13744
|
const sourceCodec = normaliseCodec(sourceStream.codec);
|
|
13716
13745
|
const outResolution = input.targetResolution ?? sourceStream.resolution ?? {
|
|
13717
13746
|
width: 1280,
|
|
@@ -13896,11 +13925,17 @@ var TranscodePipelineManager = class {
|
|
|
13896
13925
|
* Throws when the profile has no assignment or the assigned source is not
|
|
13897
13926
|
* currently published — a targeted request must not silently fall back to
|
|
13898
13927
|
* a different source.
|
|
13928
|
+
*
|
|
13929
|
+
* Publication is "in the catalog", NOT `!!stream.url`. A `derived:*` stream
|
|
13930
|
+
* is broker-owned metadata with no camera pull URL; consumers ride the
|
|
13931
|
+
* broker restream (`resolveSourceUrl`), and the broker starts the transcode
|
|
13932
|
+
* feeder on demand. Requiring a catalog `url` made recording/WebRTC throw
|
|
13933
|
+
* `not published` for a live derived assignment (618, 2026-08-17).
|
|
13899
13934
|
*/
|
|
13900
13935
|
resolveTargetedStream(deviceId, profile) {
|
|
13901
13936
|
const camStreamId = this.resolveProfileSource?.(deviceId, profile) ?? null;
|
|
13902
13937
|
if (!camStreamId) throw new Error(`getStreamWithCodec: profile "${profile}" has no assigned source for device ${deviceId}`);
|
|
13903
|
-
const stream = this.cameraStreamLookup(deviceId).find((s) => s.camStreamId === camStreamId
|
|
13938
|
+
const stream = this.cameraStreamLookup(deviceId).find((s) => s.camStreamId === camStreamId);
|
|
13904
13939
|
if (!stream) throw new Error(`getStreamWithCodec: profile "${profile}" source "${camStreamId}" not published for device ${deviceId}`);
|
|
13905
13940
|
return stream;
|
|
13906
13941
|
}
|
|
@@ -14566,6 +14601,10 @@ var StreamBrokerManager = class StreamBrokerManager {
|
|
|
14566
14601
|
return this.transcodeManager;
|
|
14567
14602
|
}
|
|
14568
14603
|
async getStreamWithCodec(input) {
|
|
14604
|
+
if (input.profile !== void 0) {
|
|
14605
|
+
const camStreamId = this.assignments.get(input.deviceId)?.map[input.profile];
|
|
14606
|
+
if (camStreamId) await this.ensureDerivedReady(input.deviceId, camStreamId);
|
|
14607
|
+
}
|
|
14569
14608
|
const source = await this.getTranscodeManager().acquire(input);
|
|
14570
14609
|
if (input.hostname !== void 0 && input.hostname.length > 0) return {
|
|
14571
14610
|
...source,
|
|
@@ -15232,8 +15271,14 @@ var StreamBrokerManager = class StreamBrokerManager {
|
|
|
15232
15271
|
*/
|
|
15233
15272
|
async ensureBrokerForWebrtcSession(deviceId, brokerId, camStreamId, tier) {
|
|
15234
15273
|
if (this.disabledDevices.has(deviceId)) return;
|
|
15235
|
-
if (this.brokers.has(brokerId)) return;
|
|
15236
15274
|
if (this.remoteBrokerAdapters.has(brokerId)) return;
|
|
15275
|
+
if (camStreamId !== void 0) {
|
|
15276
|
+
if ((this.cameraStreams.get(deviceId)?.get(camStreamId))?.kind === "derived") {
|
|
15277
|
+
await this.ensureDerivedReady(deviceId, camStreamId);
|
|
15278
|
+
if (this.brokers.has(brokerId)) return;
|
|
15279
|
+
}
|
|
15280
|
+
}
|
|
15281
|
+
if (this.brokers.has(brokerId)) return;
|
|
15237
15282
|
if (camStreamId === void 0) return;
|
|
15238
15283
|
const published = this.cameraStreams.get(deviceId)?.get(camStreamId);
|
|
15239
15284
|
if (published !== void 0 && published.kind !== "derived") {
|
|
@@ -15588,7 +15633,16 @@ var StreamBrokerManager = class StreamBrokerManager {
|
|
|
15588
15633
|
camStreamId: input.sourceCamStreamId
|
|
15589
15634
|
} : void 0);
|
|
15590
15635
|
if (!derivedSource || !encodeProfile) throw new Error("kind: 'derived' requires a source (profile|camStream) + encodeProfile");
|
|
15591
|
-
|
|
15636
|
+
const existingDerived = this.cameraStreams.get(deviceId)?.get(camStreamId);
|
|
15637
|
+
if (existingDerived) {
|
|
15638
|
+
this.cameraStreams.get(deviceId)?.set(camStreamId, {
|
|
15639
|
+
...existingDerived,
|
|
15640
|
+
derivedSource,
|
|
15641
|
+
encodeProfile
|
|
15642
|
+
});
|
|
15643
|
+
await this.ensureDerivedReady(deviceId, camStreamId);
|
|
15644
|
+
return { success: true };
|
|
15645
|
+
}
|
|
15592
15646
|
if (derivedSource.kind === "camStream") {
|
|
15593
15647
|
const sourceBrokerId = brokerIdFor(deviceId, derivedSource.camStreamId);
|
|
15594
15648
|
if (!this.brokers.has(sourceBrokerId)) throw new Error(`SOURCE_NOT_FOUND: ${sourceBrokerId}`);
|
|
@@ -15614,11 +15668,14 @@ var StreamBrokerManager = class StreamBrokerManager {
|
|
|
15614
15668
|
order,
|
|
15615
15669
|
deviceFeatures: deviceFeaturesArr,
|
|
15616
15670
|
autoEligible: input.autoEligible ?? false,
|
|
15617
|
-
brokerOwned: true
|
|
15671
|
+
brokerOwned: true,
|
|
15672
|
+
derivedSource,
|
|
15673
|
+
encodeProfile
|
|
15618
15674
|
};
|
|
15619
15675
|
derivedStreamMap.set(camStreamId, derivedCam);
|
|
15620
15676
|
await this.ensureBroker(deviceId, camStreamId);
|
|
15621
15677
|
this.attachDerivedFeeder(deviceId, camStreamId, derivedSource, encodeProfile);
|
|
15678
|
+
await this.reconcileAutoAssignment(deviceId, "publish", true);
|
|
15622
15679
|
this.emitCamStreamsChanged(deviceId);
|
|
15623
15680
|
return { success: true };
|
|
15624
15681
|
}
|
|
@@ -17779,14 +17836,15 @@ var StreamBrokerManager = class StreamBrokerManager {
|
|
|
17779
17836
|
*
|
|
17780
17837
|
* Streams marked `autoEligible: false` are skipped — they remain
|
|
17781
17838
|
* published (visible + manually assignable via `assignProfile`) but
|
|
17782
|
-
* never become the default. If every stream is non-eligible the
|
|
17783
|
-
*
|
|
17784
|
-
*
|
|
17839
|
+
* never become the default. If every stream is non-eligible the map
|
|
17840
|
+
* stays empty: ranking ineligible streams (a derived that beat the
|
|
17841
|
+
* catalog to boot) parked a transcode on `high` and left the natives
|
|
17842
|
+
* around it (618, 2026-08-17).
|
|
17785
17843
|
*/
|
|
17786
17844
|
computeInitialAssignment(streams) {
|
|
17787
|
-
if (streams.length === 0) return {};
|
|
17788
17845
|
const eligible = streams.filter((s) => s.autoEligible);
|
|
17789
|
-
|
|
17846
|
+
if (eligible.length === 0) return {};
|
|
17847
|
+
const ranked = [...eligible].toSorted((a, b) => {
|
|
17790
17848
|
const aPx = a.resolution ? a.resolution.width * a.resolution.height : -1;
|
|
17791
17849
|
const bPx = b.resolution ? b.resolution.width * b.resolution.height : -1;
|
|
17792
17850
|
if (aPx !== bPx) return bPx - aPx;
|
|
@@ -17809,13 +17867,19 @@ var StreamBrokerManager = class StreamBrokerManager {
|
|
|
17809
17867
|
* `publishCameraStream` so a multi-stream catalog publish can upsert
|
|
17810
17868
|
* every stream first and rank ONCE (no transient intermediate
|
|
17811
17869
|
* assignment). When the device's assignment is operator-locked
|
|
17812
|
-
* (`auto === false`)
|
|
17870
|
+
* (`auto === false`) occupied slots stay put (a derived on `low` must
|
|
17871
|
+
* not be kicked off). Empty slots refill from unused natives when the
|
|
17872
|
+
* device has a derived stream (618 / 1438) or the whole map is empty —
|
|
17873
|
+
* a camera without deriveds still honours an operator unassign.
|
|
17813
17874
|
*/
|
|
17814
17875
|
async reconcileAutoAssignment(deviceId, reason, streamAdded = false) {
|
|
17815
17876
|
const current = this.assignments.get(deviceId);
|
|
17816
17877
|
const streams = [...this.cameraStreams.get(deviceId)?.values() ?? []].toSorted((a, b) => a.order - b.order);
|
|
17817
17878
|
const isAuto = current?.auto ?? true;
|
|
17818
|
-
const
|
|
17879
|
+
const ranked = this.computeInitialAssignment(streams);
|
|
17880
|
+
const hasDerived = streams.some((s) => s.kind === "derived");
|
|
17881
|
+
const lockedEmpty = current !== void 0 && !isAuto && CAM_PROFILE_ORDER.every((profile) => current.map[profile] === void 0);
|
|
17882
|
+
const newMap = !current ? ranked : isAuto ? this.wouldChangeAutoMap(current.map, streams) ? ranked : current.map : hasDerived || lockedEmpty ? fillEmptyProfileSlots(current.map, ranked) : current.map;
|
|
17819
17883
|
await this.applyAssignmentUpdate(deviceId, newMap, {
|
|
17820
17884
|
auto: isAuto,
|
|
17821
17885
|
reason,
|
|
@@ -18214,6 +18278,10 @@ var StreamBrokerManager = class StreamBrokerManager {
|
|
|
18214
18278
|
if (!existingToken) this.rtspProvider.persistTokens();
|
|
18215
18279
|
await this.fanOutRegistration(deviceId, brokerId, cam, broker);
|
|
18216
18280
|
this.syncProfileRestreamers(deviceId);
|
|
18281
|
+
if (cam.kind === "derived") {
|
|
18282
|
+
const def = this.resolveDerivedDef(deviceId, camStreamId);
|
|
18283
|
+
if (def) this.attachDerivedFeeder(deviceId, camStreamId, def.source, def.encodeProfile);
|
|
18284
|
+
}
|
|
18217
18285
|
}
|
|
18218
18286
|
/**
|
|
18219
18287
|
* Tear down the broker for a `(deviceId, camStreamId)` pair. No-op
|
|
@@ -18245,6 +18313,40 @@ var StreamBrokerManager = class StreamBrokerManager {
|
|
|
18245
18313
|
this.syncProfileRestreamers(deviceId);
|
|
18246
18314
|
}
|
|
18247
18315
|
/**
|
|
18316
|
+
* Ensure a derived stream's push broker exists AND its transcode feeder is
|
|
18317
|
+
* attached. Consumers (recording `getStreamWithCodec`, WebRTC session setup,
|
|
18318
|
+
* profile restream DESCRIBE) address the PROFILE; the broker is responsible
|
|
18319
|
+
* for starting the derived. No-op for non-derived camStreams.
|
|
18320
|
+
*/
|
|
18321
|
+
async ensureDerivedReady(deviceId, camStreamId) {
|
|
18322
|
+
if ((this.cameraStreams.get(deviceId)?.get(camStreamId))?.kind !== "derived") return;
|
|
18323
|
+
const def = this.resolveDerivedDef(deviceId, camStreamId);
|
|
18324
|
+
if (!def) return;
|
|
18325
|
+
await this.ensureBroker(deviceId, camStreamId);
|
|
18326
|
+
this.attachDerivedFeeder(deviceId, camStreamId, def.source, def.encodeProfile);
|
|
18327
|
+
}
|
|
18328
|
+
/**
|
|
18329
|
+
* Source + encode profile for a derived camStream. Prefers the fields stored
|
|
18330
|
+
* on the catalog entry at publish; falls back to the persisted device
|
|
18331
|
+
* override (`derivedStreams[<name>]`) so a consumer can re-attach after a
|
|
18332
|
+
* broker release even if the in-memory record predates those fields.
|
|
18333
|
+
*/
|
|
18334
|
+
resolveDerivedDef(deviceId, camStreamId) {
|
|
18335
|
+
const published = this.cameraStreams.get(deviceId)?.get(camStreamId);
|
|
18336
|
+
if (published?.derivedSource && published.encodeProfile) return {
|
|
18337
|
+
source: published.derivedSource,
|
|
18338
|
+
encodeProfile: published.encodeProfile
|
|
18339
|
+
};
|
|
18340
|
+
if (!camStreamId.startsWith("derived:")) return null;
|
|
18341
|
+
const name = camStreamId.slice(8);
|
|
18342
|
+
const def = this.deviceOverrides.get(deviceId)?.derivedStreams?.[name];
|
|
18343
|
+
if (!def?.source || !def.encodeProfile) return null;
|
|
18344
|
+
return {
|
|
18345
|
+
source: def.source,
|
|
18346
|
+
encodeProfile: def.encodeProfile
|
|
18347
|
+
};
|
|
18348
|
+
}
|
|
18349
|
+
/**
|
|
18248
18350
|
* Attach the on-demand transcode-feeder lifecycle to a freshly-minted derived
|
|
18249
18351
|
* push broker. The feeder runs ONLY while the derived broker is consumed — it
|
|
18250
18352
|
* is spawned on the broker's demand edge (`onDemandChange(true)`) and torn
|
|
@@ -25001,6 +25103,22 @@ var RecordedFeeder = class {
|
|
|
25001
25103
|
}
|
|
25002
25104
|
};
|
|
25003
25105
|
//#endregion
|
|
25106
|
+
//#region src/stream-broker/recorded/playback-profile-fallback.ts
|
|
25107
|
+
/**
|
|
25108
|
+
* Recorded playback is pinned to one profile (no adaptive ladder). When the
|
|
25109
|
+
* viewer asks for `mid` (auto/adaptive default) but the camera only kept
|
|
25110
|
+
* `high` — typical of events-mode — locate must try the other tiers before
|
|
25111
|
+
* reporting a gap.
|
|
25112
|
+
*/
|
|
25113
|
+
var PLAYBACK_PROFILE_FALLBACK_ORDER = [
|
|
25114
|
+
"high",
|
|
25115
|
+
"mid",
|
|
25116
|
+
"low"
|
|
25117
|
+
];
|
|
25118
|
+
function profileSearchOrder(requested) {
|
|
25119
|
+
return [requested, ...PLAYBACK_PROFILE_FALLBACK_ORDER.filter((p) => p !== requested)];
|
|
25120
|
+
}
|
|
25121
|
+
//#endregion
|
|
25004
25122
|
//#region src/stream-broker/recorded/timeline-session.ts
|
|
25005
25123
|
/**
|
|
25006
25124
|
* Per-viewer coordinator over one broker WebRTC session. Owns the playback mode
|
|
@@ -25047,17 +25165,14 @@ var TimelineSession = class {
|
|
|
25047
25165
|
async handleControl(msg) {
|
|
25048
25166
|
this.emitLiveProfile();
|
|
25049
25167
|
switch (msg.t) {
|
|
25050
|
-
case "playRecorded":
|
|
25051
|
-
|
|
25052
|
-
this.profile = msg.profile;
|
|
25053
|
-
await (this.mode === "recorded" && this.feeder && !profileChanged ? this.feeder : this.enterRecorded()).seek(msg.epoch, { travelFromMs: this.lastPositionMs });
|
|
25168
|
+
case "playRecorded":
|
|
25169
|
+
await this.playAt(msg.epoch, msg.profile, { travelFromMs: this.lastPositionMs });
|
|
25054
25170
|
break;
|
|
25055
|
-
}
|
|
25056
25171
|
case "seek":
|
|
25057
|
-
await
|
|
25172
|
+
await this.playAt(msg.epoch, this.profile, { travelFromMs: this.lastPositionMs });
|
|
25058
25173
|
break;
|
|
25059
25174
|
case "scrubCommit":
|
|
25060
|
-
await
|
|
25175
|
+
await this.playAt(msg.epoch, this.profile);
|
|
25061
25176
|
break;
|
|
25062
25177
|
case "scrubStart":
|
|
25063
25178
|
(this.mode === "recorded" && this.feeder ? this.feeder : this.enterRecorded()).beginScrub();
|
|
@@ -25103,6 +25218,29 @@ var TimelineSession = class {
|
|
|
25103
25218
|
this.feeder = feeder;
|
|
25104
25219
|
return feeder;
|
|
25105
25220
|
}
|
|
25221
|
+
/**
|
|
25222
|
+
* Play recorded footage at `epochMs`. If `locate` is wired and the requested
|
|
25223
|
+
* profile has no segment, try high → mid → low so events-mode cameras that
|
|
25224
|
+
* only kept one tier still play.
|
|
25225
|
+
*/
|
|
25226
|
+
async playAt(epochMs, requestedProfile, opts) {
|
|
25227
|
+
const profile = await this.resolveProfile(requestedProfile, epochMs);
|
|
25228
|
+
const profileChanged = profile !== this.profile;
|
|
25229
|
+
this.profile = profile;
|
|
25230
|
+
const feeder = this.mode === "recorded" && this.feeder && !profileChanged ? this.feeder : this.enterRecorded();
|
|
25231
|
+
if (opts) await feeder.seek(epochMs, opts);
|
|
25232
|
+
else await feeder.seek(epochMs);
|
|
25233
|
+
}
|
|
25234
|
+
async resolveProfile(requested, epochMs) {
|
|
25235
|
+
const locate = this.deps.locate;
|
|
25236
|
+
if (!locate) return requested;
|
|
25237
|
+
for (const profile of profileSearchOrder(requested)) if ((await locate({
|
|
25238
|
+
deviceId: this.deps.deviceId,
|
|
25239
|
+
profile,
|
|
25240
|
+
epochMs
|
|
25241
|
+
})).kind === "segment") return profile;
|
|
25242
|
+
return requested;
|
|
25243
|
+
}
|
|
25106
25244
|
goLive() {
|
|
25107
25245
|
this.feeder?.dispose();
|
|
25108
25246
|
this.feeder = null;
|
|
@@ -32778,6 +32916,30 @@ async function demuxSegmentAudioOpusPreferJs(bytes, opts = {}) {
|
|
|
32778
32916
|
}
|
|
32779
32917
|
}
|
|
32780
32918
|
//#endregion
|
|
32919
|
+
//#region src/stream-broker/webrtc/prefer-live-adaptive-candidates.ts
|
|
32920
|
+
function isDerivedBrokerId(brokerId) {
|
|
32921
|
+
const slash = brokerId.indexOf("/");
|
|
32922
|
+
if (slash < 0) return false;
|
|
32923
|
+
return brokerId.slice(slash + 1).startsWith("derived:");
|
|
32924
|
+
}
|
|
32925
|
+
/**
|
|
32926
|
+
* Adaptive live walks every registered broker for a device. When no profile
|
|
32927
|
+
* slot is bound, Map insertion order wins — and a derived materialized at
|
|
32928
|
+
* boot is often first, so the picture attaches to a transcode whose source
|
|
32929
|
+
* profile is empty (618, 2026-08-17).
|
|
32930
|
+
*
|
|
32931
|
+
* Prefer brokers that currently own a profile tier. If none do, drop
|
|
32932
|
+
* unassigned deriveds so a native pull can win. If the derived is the only
|
|
32933
|
+
* broker, keep it (better a stream than a throw).
|
|
32934
|
+
*/
|
|
32935
|
+
function preferLiveAdaptiveCandidates(candidates) {
|
|
32936
|
+
if (candidates.length <= 1) return [...candidates];
|
|
32937
|
+
const assigned = candidates.filter((c) => c.tier !== null);
|
|
32938
|
+
if (assigned.length > 0) return assigned;
|
|
32939
|
+
const natives = candidates.filter((c) => !isDerivedBrokerId(c.brokerId));
|
|
32940
|
+
return natives.length > 0 ? natives : [...candidates];
|
|
32941
|
+
}
|
|
32942
|
+
//#endregion
|
|
32781
32943
|
//#region src/stream-broker/webrtc/broker-webrtc-server.ts
|
|
32782
32944
|
/**
|
|
32783
32945
|
* Broker-integrated WebRTC server.
|
|
@@ -33733,6 +33895,7 @@ var BrokerWebrtcServer = class {
|
|
|
33733
33895
|
timeline = new TimelineSession({
|
|
33734
33896
|
session,
|
|
33735
33897
|
deviceId,
|
|
33898
|
+
locate: locateRecorded,
|
|
33736
33899
|
...initialLiveProfile !== null ? { initialLiveProfile } : {},
|
|
33737
33900
|
warm: readGop ? (profile, epochMs) => {
|
|
33738
33901
|
warmFragment({
|
|
@@ -34102,12 +34265,13 @@ var BrokerWebrtcServer = class {
|
|
|
34102
34265
|
broker
|
|
34103
34266
|
});
|
|
34104
34267
|
}
|
|
34105
|
-
|
|
34106
|
-
if (
|
|
34268
|
+
const pool = preferLiveAdaptiveCandidates(candidates);
|
|
34269
|
+
if (pool.length === 0) return `${deviceKey}/high`;
|
|
34270
|
+
if (pool.length === 1) return pool[0].brokerId;
|
|
34107
34271
|
const adaptiveDeviceIdTag = Number(deviceKey.split("/")[0]);
|
|
34108
34272
|
const deviceIdTag = Number.isFinite(adaptiveDeviceIdTag) ? { tags: { deviceId: adaptiveDeviceIdTag } } : {};
|
|
34109
34273
|
if (hints.prefersTier === "high" || hints.prefersTier === "mid" || hints.prefersTier === "low") {
|
|
34110
|
-
const explicit =
|
|
34274
|
+
const explicit = pool.find((c) => c.tier === hints.prefersTier);
|
|
34111
34275
|
if (explicit) {
|
|
34112
34276
|
this.logger.info("Adaptive source selected (prefersTier exact)", {
|
|
34113
34277
|
...deviceIdTag,
|
|
@@ -34121,7 +34285,7 @@ var BrokerWebrtcServer = class {
|
|
|
34121
34285
|
return explicit.brokerId;
|
|
34122
34286
|
}
|
|
34123
34287
|
for (const tier of SMALLEST_FIRST_TIER_PREFERENCE) {
|
|
34124
|
-
const match =
|
|
34288
|
+
const match = pool.find((c) => c.tier === tier);
|
|
34125
34289
|
if (match) {
|
|
34126
34290
|
this.logger.info("Adaptive source selected (prefersTier fallback → smallest available)", {
|
|
34127
34291
|
...deviceIdTag,
|
|
@@ -34138,7 +34302,7 @@ var BrokerWebrtcServer = class {
|
|
|
34138
34302
|
}
|
|
34139
34303
|
if (!(hints.viewportWidth !== void 0 || hints.viewportHeight !== void 0 || hints.downlinkMbps !== void 0)) {
|
|
34140
34304
|
for (const tier of TIER_PREFERENCE) {
|
|
34141
|
-
const match =
|
|
34305
|
+
const match = pool.find((c) => c.tier === tier);
|
|
34142
34306
|
if (match) {
|
|
34143
34307
|
this.logger.info("Adaptive source selected (no client hints — tier preference)", {
|
|
34144
34308
|
...deviceIdTag,
|
|
@@ -34151,12 +34315,12 @@ var BrokerWebrtcServer = class {
|
|
|
34151
34315
|
return match.brokerId;
|
|
34152
34316
|
}
|
|
34153
34317
|
}
|
|
34154
|
-
return
|
|
34318
|
+
return pool[0].brokerId;
|
|
34155
34319
|
}
|
|
34156
|
-
let bestId =
|
|
34157
|
-
let bestTier =
|
|
34320
|
+
let bestId = pool[0].brokerId;
|
|
34321
|
+
let bestTier = pool[0].tier;
|
|
34158
34322
|
let bestScore = Infinity;
|
|
34159
|
-
for (const c of
|
|
34323
|
+
for (const c of pool) {
|
|
34160
34324
|
const score = scoreBroker(c.tier, c.broker, hints);
|
|
34161
34325
|
const cRank = c.tier ? TIER_PREFERENCE.indexOf(c.tier) : TIER_PREFERENCE.length;
|
|
34162
34326
|
const bestRank = bestTier ? TIER_PREFERENCE.indexOf(bestTier) : TIER_PREFERENCE.length;
|
|
@@ -30,7 +30,7 @@ async function d(e) {
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
async function f() {
|
|
33
|
-
return l ||= d(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-
|
|
33
|
+
return l ||= d(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-BNOPhQ-y.mjs")).catch((e) => {
|
|
34
34
|
throw l = void 0, e;
|
|
35
35
|
}), l;
|
|
36
36
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as NativeLeaseSettingsSchema, g as NativeLeaseAdmissionSchema, u as DEFAULT_NATIVE_LEASE_SETTINGS } from "./dist-
|
|
1
|
+
import { _ as NativeLeaseSettingsSchema, g as NativeLeaseAdmissionSchema, u as DEFAULT_NATIVE_LEASE_SETTINGS } from "./dist-XbrYiMV3.mjs";
|
|
2
2
|
//#region src/session-decode/native-lease-config.ts
|
|
3
3
|
/**
|
|
4
4
|
* Resolution of the native-frame hold / tile knobs for one decode worker.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-pipeline",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.94",
|
|
4
4
|
"description": "Pipeline bundle — runner, detection, motion, audio + stream broker. Multi-entry npm package shipping pipeline addons under a single bundle.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|
|
@@ -168,7 +168,8 @@
|
|
|
168
168
|
"entry": "./dist/stream-broker/index.js",
|
|
169
169
|
"execution": {
|
|
170
170
|
"placement": "any-node",
|
|
171
|
-
"heapProfile": "heavy"
|
|
171
|
+
"heapProfile": "heavy",
|
|
172
|
+
"maxOldSpaceMb": 2048
|
|
172
173
|
},
|
|
173
174
|
"capabilities": [
|
|
174
175
|
{
|
|
@@ -1,26 +0,0 @@
|
|
|
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.ACCESS_ROLES, 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.BATTERY_UNREACHABLE_AFTER_MS, e.BOOT_RECOVERY_BACKOFF_MS, 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_RUNTIME_STATE_DURABILITY, e.DEFAULT_SCRUB_THUMBNAIL_PRESET, e.DEFAULT_TIMELAPSE_PREVIEW_TEXT, e.DETAIL_CROP_PADDING_FIELD, e.DETAIL_CROP_PADDING_KEY, e.DETAIL_CROP_SECTION_ID, e.DETAIL_CROP_SQUARE_KEY, e.DETECTION_MACRO_CLASSES, 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.DeviceSelectorSchema, 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.EXPORT_DENSE_MAX_RANGES, 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.ExportBytesSchema, e.ExportDenseRangeSchema, e.ExportDenseSchema, 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.HfModelResolutionSchema, 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.LlmDownloadProgressSchema, e.LlmErrorCodeSchema, e.LlmGenerateBaseInputSchema, e.LlmGenerateErrSchema, e.LlmGenerateOkSchema, e.LlmGenerateResultSchema, e.LlmImageSchema, e.LlmNodeModelSchema, e.LlmProfileKindDescriptorSchema, e.LlmProfileKindSchema, e.LlmProfileSchema, e.LlmRetryPolicySchema, e.LlmRuntimeCompleteInputSchema, e.LlmRuntimeDiskUsageSchema, e.LlmRuntimeNodeSchema, e.LlmRuntimeStatusSchema, e.LlmTimeoutDefaults, 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.METHOD_DEVICE_SELECTORS, e.MODEL_FORMATS, e.MOTION_TRIGGER_FEATURE, e.ManagedModelCatalogEntrySchema, e.ManagedModelExtraFileSchema, 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_HOLD_FIELD, e.NATIVE_LEASE_HOLD_KEY, e.NATIVE_LEASE_SECTION_ID, e.NATIVE_LEASE_TILE_BUDGET_FIELD, e.NATIVE_LEASE_TILE_BUDGET_KEY, e.NC_ALARM_SYSTEM_EVENT_KINDS, e.NC_AUDIO_DBFS_FLOOR, e.NC_AUDIO_DB_MAX, e.NC_AUDIO_DB_MIN, e.NC_AUDIO_DB_OFFERED, e.NC_AUDIO_DB_STEP, e.NC_AUDIO_DEFAULTS, e.NC_AUDIO_HIT_PERCENT_MAX, e.NC_AUDIO_HIT_PERCENT_MIN, e.NC_AUDIO_SAMPLING_MAX_SEC, e.NC_AUDIO_SAMPLING_MIN_SEC, e.NC_AUTHORABLE_SYSTEM_EVENT_KINDS, e.NC_BASE_CONDITION_KEYS, e.NC_CONDITION_CATALOG, e.NC_CONFIRM_DEFAULT_MAX_IMAGE_PX, e.NC_CONFIRM_DEFAULT_TIMEOUT_MS, e.NC_CONFIRM_MAX_TIMEOUT_MS, e.NC_CONFIRM_MIN_TIMEOUT_MS, e.NC_DEFAULT_SNOOZE_MINUTES, 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.NcAlarmSkipReasonSchema, e.NcAlarmSkippedDeviceSchema, e.NcAudioConditionSchema, e.NcConditionDescriptorSchema, e.NcConditionsSchema, e.NcConfirmExpectSchema, e.NcConfirmSchema, 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.NcSceneConditionSchema, e.NcScheduleSchema, e.NcScheduleWindowSchema, e.NcSnoozeInputSchema, e.NcSnoozeSchema, e.NcSnoozeScopeSchema, e.NcSnoozeSuppressedSchema, e.NcSystemEventConditionSchema, e.NcSystemEventKindSchema, 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.RECORDING_EXPORT_MAX_READ_BYTES, e.RESERVED_BINDING_NAMES, e.RESTORED_CAP_NAMES, e.RUNTIME_DEFAULTS, e.RUNTIME_STATE_POLICY, 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.RecordingRebalanceInputSchema, e.RecordingRebalanceMoveSchema, e.RecordingRebalancePlanSchema, e.RecordingRebalanceSkipReasonSchema, e.RecordingRebalanceSkipSchema, e.RecordingRetentionSchema, e.RecordingStatusSchema, e.RecordingStorageModeSchema, e.RecordingStorageUsageSchema, e.RecordingTriggersSchema, e.RecordingWeekdaySchema, e.RedirectLoginMethodSchema, e.RelocateFootageClassSchema, 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.SCENE_CONDITIONS, e.SCENE_CONFIRM_DEFAULT_MAX_IMAGE_PX, e.SCENE_CONFIRM_DEFAULT_TIMEOUT_MS, e.SCENE_DEFAULT_ANCHOR_THRESHOLD, e.SCENE_DEFAULT_CHECK_INTERVAL_SEC, e.SCENE_DEFAULT_OBSERVATION_SPACING_SEC, e.SCENE_DEFAULT_QUIET_SECONDS, e.SCENE_DEFAULT_UNCOVERED_POLICY, e.SCENE_DIVERGED, e.SCENE_RESET_RECAPTURES, 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.SYSTEM_SCOPE_DEVICE_METHODS, e.SceneCheckSchema, e.SceneConditionSchema, e.SceneConfirmSchema, e.SceneMonitorSchema, e.SceneMonitorStateSchema, e.SceneMonitorStatusSchema, e.SceneReferenceSchema, e.SceneUnavailableSchema, e.SceneUncoveredPolicySchema, e.SceneVerdictSchema, 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.SetSiteLocationInputSchema, e.SettingsPatchSchema, e.SettingsRecordSchema, e.SettingsSchemaWithValuesSchema, e.SettingsUpdateResultSchema, e.ShmRingStatsSchema, e.SiteLocationSchema, e.SiteLocationSourceSchema, e.SiteLocationStatusSchema, 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.StorageMigrationClassSchema, e.StorageMigrationDestinationsSchema, e.StorageMigrationFootageMoveInputSchema, e.StorageMigrationInputSchema, e.StorageMigrationJobSchema, e.StorageMigrationLeaseInputSchema, e.StorageMigrationMediaMoveInputSchema, e.StorageMigrationMoveSchema, e.StorageMigrationParticipantSchema, e.StorageMigrationPhaseSchema, e.StorageMigrationPlanSchema, 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.TIMELAPSE_DENSE_FLOOR_SEC, 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.TerminalInstanceInfoSchema, e.TerminalLegacyCameraSchema, e.TerminalOutputBatchSchema, e.TerminalOutputEventSchema, 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.VISIT_MERGE_GAP_MS, 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.assertTimelapseCadences, e.audioAnalysisCapability, e.audioAnalyzerCapability, e.audioCodecCapability, e.audioIsFailClosed, e.audioLabelChoices, e.audioMetricsCapability, e.audioModeOf, e.audioOrDefaults, 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.buildRoleScopes, 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.composeSwitchedOff, 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.deriveBatteryPresence, e.deriveCameraSwitches, e.deriveDetailCropRect, e.deriveRecordingMode, e.describeModelVariant, e.detectAccessRole, e.detectionPipelineCapability, e.deviceAdoptionCapability, e.deviceBackendToFormat, e.deviceCustomAction, e.deviceDiscoveryCapability, e.deviceExportCapability, e.deviceManagerCapability, e.deviceMatchesProfile, e.deviceOpsCapability, e.deviceProviderCapability, e.deviceSelectorMatches, 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.isAudioLabelSelected, e.isBaseConditionKey, e.isBatteryPresenceFault, e.isCollectionArrayMethod, e.isDeployableToAgent, e.isDetectionMacroClass, e.isDeviceConfigCap, e.isDeviceScopedCap, e.isEvent, e.isIsolatedBuiltin, e.isNode, e.isObjectInput, e.isRestoredCap, 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.normalizeAudioLabel, e.normalizeTokenScopes, 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.patchAudio, 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.readTimelapseGeneratedAt, 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.resolveViewableDeviceIds, e.roleSpec, e.runInferenceStep, e.runtimeDevices, e.runtimeStatePolicyFor, e.sceneMonitorCapability, e.scopeInherits, 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.storageMigrationCapability, e.storageProviderCapability, e.streamBrokerCapability, e.streamCatalogCapability, e.streamParamsCapability, e.streamPixels, e.streamQualityLabel, e.subKindsOf, e.summarisePrivacyAudio, e.summarizeEffectiveScope, 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.toggleAudioLabel, 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 };
|